For educational reasons I've decided to create my own CA. Here is what I learned.
Lets get some context first.
Short version: I strongly do not recommend using any of these providers. You are, of course, free to use whatever you like. My TL;DR advice: Roll your own and use Algo or Streisand. For messaging & voice, use Signal. For increased anonymity, use Tor for desktop (though recognize that doing so may actually put you at greater risk), and Onion Browser for mobile.
This mini-rant came on the heels of an interesting twitter discussion: https://twitter.com/kennwhite/status/591074055018582016
| #!/bin/bash | |
| # for every named image | |
| docker images | sed "1d" | cut -d " " -f1 | sort -n | uniq | grep -v '^<none>$' | | |
| while read f ; do | |
| # pull latest image, skip pruning if can't pull | |
| if ! docker pull "$f" ; then continue ; fi | |
| # get latest image id | |
| IMAGE_ID=`docker images "$f" | sed "1d;2q" | sed 's/^[^ ]* *[^ ]* *//;s/ .*$//'` | |
| if [ "x$IMAGE_ID" == "x" ] ; then continue ; fi |
| #!/bin/bash | |
| makeLink() { | |
| SOURCE="$1" | |
| TARGET="$2" | |
| [ -d "${TARGET}" ] && return | |
| ls -d "${SOURCE}"* &>/dev/null || return | |
| cmd /c mklink /d "${TARGET}" $(ls -d "${SOURCE}"* 2>/dev/null | sort -V | tail -n 1 | sed 's/\//\\/g') | |
| } |
| #!/bin/bash | |
| EMAIL="[email protected]" | |
| DEVEL=false | |
| # clean downloaded packages if none pending for dist-upgrade | |
| if ! $DEVEL ; then apt-get --assume-no dist-upgrade && apt-get clean ; fi | |
| # update, upgrade, autoremove | |
| apt-get --assume-yes update |
| #!/bin/bash | |
| PKG="$1" | |
| for f in stable testing unstable experimental ; do | |
| echo -n "$f - " | |
| apt-cache show $PKG/$f 2>/dev/null | grep "Version:" || echo | |
| done |
| #!/bin/bash | |
| # painting2sprites - A simple script to read an ORA, resize and trim output PNGs. | |
| INPUT_FILE="$1" | |
| OUTPUT_DIR="$2" | |
| RESIZE_SCALE="25%" | |
| if [ "$2" == "" ]; then |
| ### CYGWIN | |
| # Sublime Text 3 | |
| # https://cygwin.com/cygwin-ug-net/using-effectively.html | |
| # https://scotch.io/tutorials/open-sublime-text-from-the-command-line-using-subl-exe-windows | |
| # https://stackoverflow.com/questions/7131670/make-bash-alias-that-takes-parameter | |
| sublimetext() { | |
| "C:/Program Files/Sublime Text 3/subl.exe" "$(cygpath -pw "$1")" $* |
| #!/usr/bin/awk -E | |
| BEGIN { | |
| if ( ARGV[1] == "" ) { | |
| print "Usage: grep-block <regexp> [file1 file2 ...]" | |
| exit | |
| } | |
| search = ARGV[1] | |
| print "-" search "-" | |
| ARGV[1]="" |