Installs Bitmessage on a persistent tails partition and, if necessary, installs mixmaster.
Also configures Bitmessage so that message recipients whose address labels contain <> enclosed email addresses are automatically sent anonymous notifications through mixmaster which say: "someone is trying to communicate with you on a safer channel" (subj: "spidey sense") Instructions: Boot the Tails operating system and enable persistence, then reboot, run this script, and reboot again. Warning: Do not run this script if you already have Bitmessage installed in ~/Persistent/PyBitmessage. Warning: We won't overwrite an existing keys.dat, but remember this script is not for reinstallation/upgrading/overwriting!
This commit is contained in:
parent
d92183b198
commit
dc907f00b9
155
bitmix_tailsinstaller.sh
Executable file
155
bitmix_tailsinstaller.sh
Executable file
|
@ -0,0 +1,155 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#Bitmessage/Mixmaster Tails Installer -
|
||||||
|
#Installs Bitmessage on a persistent tails partition and, if necessary, installs mixmaster.
|
||||||
|
#Also configures Bitmessage so that message recipients whose address labels contain <> enclosed
|
||||||
|
#email addresses are automatically sent anonymous notifications through mixmaster which say:
|
||||||
|
#"someone is trying to communicate with you on a safer channel" (subj: "spidey sense")
|
||||||
|
#Instructions: Boot the Tails operating system and enable persistence, then reboot, run this script, and reboot again.
|
||||||
|
#Warning: Do not run this script if you already have Bitmessage installed in ~/Persistent/PyBitmessage.
|
||||||
|
#Warning: We won't overwrite an existing keys.dat, but remember this script is not for reinstallation/upgrading/overwriting!
|
||||||
|
|
||||||
|
|
||||||
|
echo "Bitmessage/Mixmaster Tails Installer - "
|
||||||
|
echo "Installs Bitmessage on a persistent tails partition and, if necessary, installs mixmaster."
|
||||||
|
echo "Also configures Bitmessage so that message recipients whose address labels contain <> enclosed "
|
||||||
|
echo "email addresses are automatically sent anonymous notifications through mixmaster which say:"
|
||||||
|
echo '"someone is trying to communicate with you on a safer channel" (subj: "spidey sense")'
|
||||||
|
echo
|
||||||
|
echo "#Instructions: Boot the Tails operating system and enable persistence, then reboot, run this script, and reboot again."
|
||||||
|
echo "#Warning: Do not run this script if you already have Bitmessage installed in ~/Persistent/PyBitmessage."
|
||||||
|
echo "#Warning: We won't overwrite an existing keys.dat, but remember this script is not for reinstallation/upgrading/overwriting!"
|
||||||
|
echo
|
||||||
|
read -n 1 -p "Press any key to continue..."
|
||||||
|
echo
|
||||||
|
|
||||||
|
cd /live/persistence/TailsData_unlocked/ || exit
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "Checking/enabling Dotfiles and, if necessary, "
|
||||||
|
echo "checking/enabling APT Lists and APT Packages and installing mixmaster"
|
||||||
|
echo
|
||||||
|
sudo sh -c '
|
||||||
|
mkdir -p ./dotfiles/
|
||||||
|
chmod 700 ./dotfiles/
|
||||||
|
chown amnesia:amnesia ./dotfiles/
|
||||||
|
grep "/home/amnesia source=dotfiles,link" ./persistence.conf >/dev/null 2>&1 || ( echo "/home/amnesia source=dotfiles,link" >> ./persistence.conf; );
|
||||||
|
command -v mixmaster >/dev/null 2>&1 && ( echo "Mixmaster is already installed and we assume it works."; echo; );
|
||||||
|
command -v mixmaster >/dev/null 2>&1 || (
|
||||||
|
echo; echo "Installing mixmaster"; echo;
|
||||||
|
grep mixmaster ./live-additional-software.conf >/dev/null 2>&1 || ( echo "mixmaster" >> ./live-additional-software.conf );
|
||||||
|
grep "/var/lib/apt/lists source=apt/lists" ./persistence.conf >/dev/null 2>&1 && ( apt-get -y update; );
|
||||||
|
grep "/var/lib/apt/lists source=apt/lists" ./persistence.conf >/dev/null 2>&1 || ( echo "/var/lib/apt/lists source=apt/lists" >> ./persistence.conf; );
|
||||||
|
grep "/var/cache/apt/archives source=apt/cache" ./persistence.conf >/dev/null 2>&1 && ( apt-get -y install mixmaster; );
|
||||||
|
grep "/var/cache/apt/archives source=apt/cache" ./persistence.conf >/dev/null 2>&1 || ( echo "/var/cache/apt/archives source=apt/cache" >> ./persistence.conf; );
|
||||||
|
rm -r /home/amnesia/.Mix/ >/dev/null 2>&1
|
||||||
|
);
|
||||||
|
';
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "Installing Bitmessage"
|
||||||
|
echo
|
||||||
|
git clone https://github.com/p2pmessage/PyBitmessage /home/amnesia/Persistent/PyBitmessage/
|
||||||
|
if [ -f /home/amnesia/Persistent/PyBitmessage/keys.dat ]; then exit; fi;
|
||||||
|
cat <<EOT >> /home/amnesia/Persistent/PyBitmessage/keys.dat
|
||||||
|
[bitmessagesettings]
|
||||||
|
settingsversion = 10
|
||||||
|
port = 8444
|
||||||
|
timeformat = %%a, %%d %%b %%Y %%I:%%M %%p
|
||||||
|
blackwhitelist = black
|
||||||
|
startonlogon = False
|
||||||
|
minimizetotray = False
|
||||||
|
showtraynotifications = True
|
||||||
|
startintray = False
|
||||||
|
socksproxytype = SOCKS5
|
||||||
|
sockshostname = localhost
|
||||||
|
socksport = 9150
|
||||||
|
socksauthentication = True
|
||||||
|
sockslisten = False
|
||||||
|
socksusername = bitmessage
|
||||||
|
sockspassword = bitmessage
|
||||||
|
keysencrypted = false
|
||||||
|
messagesencrypted = false
|
||||||
|
defaultnoncetrialsperbyte = 1000
|
||||||
|
defaultpayloadlengthextrabytes = 1000
|
||||||
|
minimizeonclose = false
|
||||||
|
maxacceptablenoncetrialsperbyte = 0
|
||||||
|
maxacceptablepayloadlengthextrabytes = 0
|
||||||
|
userlocale = system
|
||||||
|
useidenticons = True
|
||||||
|
identiconsuffix = PV7e9irDHhsy
|
||||||
|
replybelow = False
|
||||||
|
stopresendingafterxdays =
|
||||||
|
stopresendingafterxmonths =
|
||||||
|
namecoinrpctype = namecoind
|
||||||
|
namecoinrpchost = localhost
|
||||||
|
namecoinrpcuser =
|
||||||
|
namecoinrpcpassword =
|
||||||
|
namecoinrpcport = 8336
|
||||||
|
sendoutgoingconnections = True
|
||||||
|
maxdownloadrate = 0
|
||||||
|
maxuploadrate = 0
|
||||||
|
willinglysendtomobile = False
|
||||||
|
EOT
|
||||||
|
|
||||||
|
mkdir -p /live/persistence/TailsData_unlocked/dotfiles/.config/
|
||||||
|
cd /live/persistence/TailsData_unlocked/dotfiles/.config/
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "Creating file to autostart Bitmessage with Tor"
|
||||||
|
echo
|
||||||
|
mkdir -p ./autostart/
|
||||||
|
cat <<EOT > ./autostart/bitmessage_autostart.desktop
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Bitmessage
|
||||||
|
Type=Application
|
||||||
|
Terminal=false
|
||||||
|
Exec=bash -c "until sudo -n -u debian-tor /usr/local/sbin/tor-has-bootstrapped ; do sleep 5 ; done ; cd /home/amnesia/Persistent/PyBitmessage/ ; mixmaster-update & ./src/bitmessagemain.py"
|
||||||
|
Icon=/home/amnesia/Persistent/PyBitmessage/desktop/icon24.png
|
||||||
|
Comment[en_US.UTF-8]=Anonymous P2P Messenger
|
||||||
|
EOT
|
||||||
|
chmod 700 ./autostart/bitmessage_autostart.desktop
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "Creating file to replace Claws Mail with Bitmessage in top panel"
|
||||||
|
echo;
|
||||||
|
mkdir -p ./gnome-panel/
|
||||||
|
cat <<EOT > ./gnome-panel/bitmessage.desktop
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Bitmessage
|
||||||
|
Type=Application
|
||||||
|
Terminal=false
|
||||||
|
Exec=bash -c "cd /home/amnesia/Persistent/PyBitmessage/ ; mixmaster-update & ./src/bitmessagemain.py"
|
||||||
|
Icon=/home/amnesia/Persistent/PyBitmessage/desktop/icon24.png
|
||||||
|
Comment[en_US.UTF-8]=Anonymous P2P Messenger
|
||||||
|
EOT
|
||||||
|
chmod 700 ./gnome-panel/bitmessage.desktop
|
||||||
|
cp /home/amnesia/.config/gnome-panel/panel-default-layout.layout ./gnome-panel/
|
||||||
|
sed -i "s|\[Object claws-launcher\]|\[Object bitmessage-launcher\]|g" ./gnome-panel/panel-default-layout.layout
|
||||||
|
sed -i "s|@instance-config/location='/usr/share/applications/claws-mail\.desktop'|@instance-config/location='/live/persistence/TailsData_unlocked/dotfiles/\.config/gnome-panel/bitmessage\.desktop'|g" ./gnome-panel/panel-default-layout.layout
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "Installing persistent mixmaster config files for tails user, if necessary"
|
||||||
|
echo;
|
||||||
|
#To configure mixmaster as a Tails user create the directory /home/amnesia/.Mix/
|
||||||
|
mkdir /home/amnesia/.Mix/ || exit
|
||||||
|
#and populate it with a file called
|
||||||
|
#"mix.cfg" that contains the line "SMTPRELAY gbhpq7eihle4btsn.onion" and the location of mix node files
|
||||||
|
cat <<EOT > /home/amnesia/.Mix/mix.cfg
|
||||||
|
SMTPRELAY gbhpq7eihle4btsn.onion
|
||||||
|
PGPREMPUBASC /home/amnesia/.Mix/pubring.asc
|
||||||
|
PUBRING /home/amnesia/.Mix/pubring.mix
|
||||||
|
TYPE1LIST /home/amnesia/.Mix/rlist.txt
|
||||||
|
TYPE2REL /home/amnesia/.Mix/mlist.txt
|
||||||
|
TYPE2LIST /home/amnesia/.Mix/type2.list
|
||||||
|
EOT
|
||||||
|
#and also with a file called
|
||||||
|
#"update.conf" that contains the lines "SOURCE noreply" and "DESTINATION /home/amnesia/.Mix/"
|
||||||
|
cat <<EOT > /home/amnesia/.Mix/update.conf
|
||||||
|
SOURCE noreply
|
||||||
|
DESTINATION /home/amnesia/.Mix/
|
||||||
|
EOT
|
||||||
|
# and copy these files to make them persistent.
|
||||||
|
cp -r /home/amnesia/.Mix/ /live/persistence/TailsData_unlocked/dotfiles/.Mix/
|
||||||
|
|
||||||
|
read -n 1 -p "Please reboot to finish installation..."
|
||||||
|
|
Reference in New Issue
Block a user