lots of fixes, new music stuff
[distro-setup] / distro-end
index e07ab789b46583fdccb294eba1b7f679df651464..6efe7bf347e92816a728bcde8520d804867380bc 100755 (executable)
@@ -672,52 +672,47 @@ EOF
 client-to-client
 EOF
 
-    # sullivan d8
-    sd /etc/openvpn/client-config-hole/sd8 <<'EOF'
-ifconfig-push 10.5.5.41 255.255.255.0
-EOF
-    # hsieh d8
-    sd /etc/openvpn/client-config-hole/hd8 <<'EOF'
-ifconfig-push 10.5.5.42 255.255.255.0
-EOF
-
-    sd /etc/openvpn/client-config-hole/onep9 <<'EOF'
-ifconfig-push 10.5.5.14 255.255.255.0
+    sd /etc/openvpn/client-config-hole/kd <<'EOF'
+ifconfig-push 10.5.5.2 255.255.255.0
 EOF
-    sd /etc/openvpn/client-config-hole/bo <<'EOF'
-ifconfig-push 10.5.5.13 255.255.255.0
+    sd /etc/openvpn/client-config-hole/tp <<'EOF'
+ifconfig-push 10.5.5.3 255.255.255.0
 EOF
-    sd /etc/openvpn/client-config-hole/sy <<'EOF'
-ifconfig-push 10.5.5.12 255.255.255.0
+    sd /etc/openvpn/client-config-hole/frodo <<'EOF'
+ifconfig-push 10.5.5.5 255.255.255.0
 EOF
-    sd /etc/openvpn/client-config-hole/kw <<'EOF'
-ifconfig-push 10.5.5.9 255.255.255.0
+    sd /etc/openvpn/client-config-hole/x2 <<'EOF'
+ifconfig-push 10.5.5.7 255.255.255.0
 EOF
     sd /etc/openvpn/client-config-hole/x3 <<'EOF'
 ifconfig-push 10.5.5.8 255.255.255.0
 EOF
-    sd /etc/openvpn/client-config-hole/x2 <<'EOF'
-ifconfig-push 10.5.5.7 255.255.255.0
-EOF
-    sd /etc/openvpn/client-config-hole/wclient <<'EOF'
-ifconfig-push 10.5.5.6 255.255.255.0
+    sd /etc/openvpn/client-config-hole/kw <<'EOF'
+ifconfig-push 10.5.5.9 255.255.255.0
 EOF
-    sd /etc/openvpn/client-config-hole/frodo <<'EOF'
-ifconfig-push 10.5.5.5 255.255.255.0
+    sd /etc/openvpn/client-config-hole/sy <<'EOF'
+ifconfig-push 10.5.5.12 255.255.255.0
 EOF
-    sd /etc/openvpn/client-config-hole/amy <<'EOF'
-ifconfig-push 10.5.5.3 255.255.255.0
+    sd /etc/openvpn/client-config-hole/bo <<'EOF'
+ifconfig-push 10.5.5.13 255.255.255.0
 EOF
-    sd /etc/openvpn/client-config-hole/kd <<'EOF'
-ifconfig-push 10.5.5.2 255.255.255.0
+    sd /etc/openvpn/client-config-hole/onep9 <<'EOF'
+ifconfig-push 10.5.5.14 255.255.255.0
 EOF
+    # todo: add x8?
+
 
-    # for adding to current system:
-    #vpn-mk-client-cert -s "" -n hole 72.14.176.105
-    # adding to remove system 107,
-    #vpn-mk-client-cert -s "" -n hole -c 10.2.0.107 -b hd8 iankelling.org
+    # for adding cert to system with /p
+    #
+    # host=frodo
+    #mkc /p/c/machine_specific/$host/filesystem/etc/openvpn/client
+    #vpn-mk-client-cert -b $host -n hole -r  iankelling.org
+    #s chown -R iank:iank .
+    #
+    # example of adding to remote system 107,
+    # vpn-mk-client-cert -n hole -c 10.2.0.107 -b hd8 iankelling.org
     #
-    # for wireguard hole vpn
+    # for wireguard hole vpn, use function:
     # wghole
 
     # requested from linode via a support ticket.
@@ -1070,6 +1065,22 @@ esac
 # dependent packages.
 pi ${pall[@]} $(apt-cache search ruby[.0-9]+-doc| awk '{print $1}') $($src/distro-pkgs)
 
+# schroot service will restart schroot sessions after reboot.
+# I dont want that.
+pi-nostart schroot
+
+# fix systemd unit failure. i dont know of any actual impact
+# other than systemd showing in degraded state. So, we dont bother
+# fixing the current state, let it fix on the next reboot.
+# https://gitlab.com/cjwatson/binfmt-support/-/commit/54f0e1af8a
+tmp=$(systemctl cat binfmt-support.service | grep ^After=)
+if [[ $tmp != *systemd-binfmt.service* ]]; then
+  s u /etc/systemd/system/binfmt-support.service.d/override.conf <<EOF
+[Unit]
+$tmp systemd-binfmt.service
+EOF
+fi
+
 
 # commented, not worth the hassle i think.
 #seru enable psd
@@ -1102,45 +1113,6 @@ sudo rm -fv /etc/apt/sources.list.d/iridium-browser.list
 # esac
 
 
-### begin home vpn server setup
-
-
-# # this section done initially to make persistent keys.
-# # Also note, I temporarily set /etc/hosts so my host was
-# # b8.nz when running this, since the vpn client config
-# # generator assumes we need to go to that server to get
-# # server keys.
-# vpn-server-setup -rds
-# s cp -r --parents /etc/openvpn/easy-rsa/keys /p/c/filesystem
-# s chown -R 1000:1000 /p/c/filesystem/etc/openvpn/easy-rsa/keys
-# # kw = kgpe work machine.
-# for host in x2 x3 kw; do
-# vpn-mk-client-cert -b $host -n home b8.nz 1196
-# dir=/p/c/machine_specific/$host/filesystem/etc/openvpn/client
-# mkdir -p $dir
-# s bash -c "cp /etc/openvpn/client/home* $dir"
-#     # note: /etc/update-resolv-conf-home also exists for all systems with /p
-# done
-
-# key already exists, so this won't generate one, just the configs.
-# m vpn-server-setup -rds
-# sudo tee -a /etc/openvpn/server/server.conf <<'EOF'
-# push "dhcp-option DNS 10.0.0.1"
-# push "route 10.0.0.0 255.255.0.0"
-# client-connect /a/bin/distro-setup/vpn-client-connect
-# EOF
-# sudo sed -i --follow-symlinks 's/10.8./10.9./g;s/^\s*port\s.*/port 1196/' /etc/openvpn/server/server.conf
-
-# if [[ $HOSTNAME == tp ]]; then
-#   if [[ -e /lib/systemd/system/openvpn-server@.service ]]; then
-#     vpn_service=openvpn-server@server
-#   else
-#     vpn_service=openvpn@server
-#   fi
-#   sgo $vpn_service
-# fi
-### end vpn server setup
-
 ##### rss2email
 if mountpoint /p &>/dev/null; then
   # note, see bashrc for more documentation.
@@ -1218,10 +1190,6 @@ if [[ -e /p/c/machine_specific/$HOSTNAME/filesystem/etc/openvpn/client/hole.crt
   sgo openvpn-client@hole
 fi
 
-if [[ $HOSTNAME == frodo ]]; then
-  vpn-mk-client-cert -b frodo -n hole iankelling.org
-fi
-
 ############# begin syncthing setup ###########
 case $HOSTNAME in
   kd|frodo)
@@ -1516,7 +1484,7 @@ case $HOSTNAME in
     ;;
 esac
 
-mkdir -p $tdir
+sudo mkdir -p $tdir
 
 # adapted from /var/lib/dpkg/info/transmission-daemon.postinst
 # 450 seems likely to be unused. we need to specify one or else
@@ -1566,7 +1534,7 @@ ser stop transmission-daemon
 f=$tdir/transmission-daemon
 for d in $tdir/partial-torrents $tdir/torrents $f; do
   if [[ ! -d $d ]]; then
-    mkdir $d
+    sudo mkdir -p $d
   fi
   sudo chown -R debian-transmission:user2 $d
 done
@@ -1815,15 +1783,15 @@ DEVICESCAN -a -o on -S on -n standby,q $sched \
 
 ########### misc stuff
 
+# pressing tab after sdf here:
+# scp sdfbash: set +o noglob: command not found
+# in t11, bash 5.1.16. this fixes it.
+sudo sed -ri 's/([[:space:]]*)(\$reset)$/\1set +o noglob #$reset/' /usr/share/bash-completion/bash_completion
+
 rm -fv /home/iank/.mpv/watch_later
 rm -rf /home/iank/.mpv
 
 
-if [[ $HOSTNAME != frodo ]]; then
-  # remove. i moved this into dns
-  echo | s cedit hole /etc/hosts ||:
-fi
-
 if [[ ! -e ~/.local/bin/pip ]]; then
   tmp=$(mktemp)
   wget -O$tmp https://bootstrap.pypa.io/get-pip.py
@@ -1831,6 +1799,20 @@ if [[ ! -e ~/.local/bin/pip ]]; then
   hash -r
 fi
 
+# notes about barrier
+# run barrier, do the gui config,
+# setup the 2 screens, using hostnames for the new screen.
+# save the server config
+# $HOME/.local/share/barrier/.barrier.conf
+# per the man page.
+#
+# ssl errors, resolved via advice here: https://github.com/debauchee/barrier/issues/231
+# BARRIER_SSL_PATH=~/.local/share/barrier/SSL/
+# mkdir -p "${BARRIER_SSL_PATH}"
+# openssl req -x509 -nodes -days 365 -subj /CN=Barrier -newkey rsa:4096 -keyout ${BARRIER_SSL_PATH}/Barrier.pem -out ${BARRIER_SSL_PATH}/Barrier.pem
+# ran on both machines.
+# When pressing start in the gui, the cli options used are printed to the console,
+# they are useful. So on server, just run barriers, client run barrierc SERVER_IP
 
 ### begin timetrap setup
 if mountpoint /p &>/dev/null; then
@@ -1893,13 +1875,13 @@ sudo fc-cache
 pi desktop-file-utils
 m /a/bin/distro-setup/mymimes
 
-
-# stop autopoping windows when i plug in an android phone.
-# dbus-launch makes this work within an ssh connection, otherwise you get this message,
-# with still 0 exit code.
-# dconf-WARNING **: failed to commit changes to dconf: Cannot autolaunch D-Bus without X11 $DISPLAY
-m dbus-launch gsettings set org.gnome.desktop.media-handling automount-open false
-
+if type -p dbus-launch >/dev/null; then
+  # stop autopoping windows when i plug in an android phone.
+  # dbus-launch makes this work within an ssh connection, otherwise you get this message,
+  # with still 0 exit code.
+  # dconf-WARNING **: failed to commit changes to dconf: Cannot autolaunch D-Bus without X11 $DISPLAY
+  m dbus-launch gsettings set org.gnome.desktop.media-handling automount-open false
+fi
 
 # on grub upgrade, we get prompts unless we do this
 devs=()
@@ -1986,8 +1968,6 @@ EOF
 esac
 
 case $HOSTNAME in
-  # frodo needs upgrade first.
-  frodo) : ;;
   # todo, for limiting node exporter http,
   # either use iptables or, in
   # /etc/default/prometheus-node-exporter
@@ -2031,16 +2011,18 @@ esac
 
 ### begin nagios ###
 
-pi nagios4
-s rm /etc/apache2/conf-enabled/nagios4-cgi.conf
+case $HOSTNAME in
+  kd)
+    pi nagios4
+    s rm -fv /etc/apache2/conf-enabled/nagios4-cgi.conf
 
-# to add a password for admin:
-# htdigest /etc/nagios4/htdigest.users Nagios4 iank
-# now using the same pass as prometheus
+    # to add a password for admin:
+    # htdigest /etc/nagios4/htdigest.users Nagios4 iank
+    # now using the same pass as prometheus
 
-# nagstamon auth settings, set to digest instead of basic.
+    # nagstamon auth settings, set to digest instead of basic.
 
-web-conf -p 3005 - apache2 i.b8.nz <<'EOF'
+    web-conf -p 3005 - apache2 i.b8.nz <<'EOF'
 # adapted from /etc/apache2/conf-enabled/nagios4-cgi.conf
 
 ScriptAlias /cgi-bin/nagios4 /usr/lib/cgi-bin/nagios4
@@ -2088,7 +2070,8 @@ Alias /nagios4 /usr/share/nagios4/htdocs
     Options    +ExecCGI
 </Directory>
 EOF
-
+    ;;
+esac
 
 # when you alter a service through the web, it changes vars in /var/lib/nagios4/status.dat. for example:
 # notifications_enabled=1
@@ -2096,13 +2079,13 @@ EOF
 
 # in the default config, we have these definitions
 
-     # 11 define command {
-     #  2 define contact {
-     #  1 define contactgroup {
-     #  9 define host {
-     #  4 define hostgroup {
-     # 23 define service {
-     #  5 define timeperiod {
+# 11 define command {
+#  2 define contact {
+#  1 define contactgroup {
+#  9 define host {
+#  4 define hostgroup {
+# 23 define service {
+#  5 define timeperiod {
 
 
 # on klaxon
@@ -2121,6 +2104,21 @@ EOF
 
 ### end nagios ###
 
+### begin bitcoin ###
+
+case $HOSTNAME in
+  sy)
+    f=$dir/bitcoin.conf
+    sudo install -m 0755 -o root -g root -t /usr/bin /a/opt/bitcoin-23.0/bin/*
+    sgo bitcoind
+    sudo usermod -a -G bitcoin iank
+    # todo, link in wallet. see
+    # /a/bin/ds/disabled/bitcoin
+    ;;
+esac
+
+### end bitcoin
+
 
 end_msg <<'EOF'
 In mate settings settings, change scrolling to two-finger,
@@ -2156,7 +2154,7 @@ lnf -T /a/opt ~/src
 pi tor
 m /a/bin/buildscripts/tor-browser
 # one root command needed to install
-s ln -sf /a/opt/tor-browser_en-US/Browser/start-tor-browser /usr/local/bin
+s ln -sf /a/opt/tor-browser/Browser/start-tor-browser /usr/local/bin
 
 
 # nfs server