My (desired) digital setup
Machines
- They all run Debian. Likely Debian testing as stable is too old.
 
- Suckless tools for the Window Manager (
dwm), terminal (st), status monitor (slstatus). 
- A 
~/.xinitrc containing slstatus & and exec dwm commands. 
Hardware
I prefer a "usually off" approach. Only one permanently on machine, a remote RPi doing DNS, VPN and hosting git and calendar. Everything else can be turned on or powered up as I need it.
Mobile
- LineageOS without google stuff.
 
- Local CalDAV server running on remote RPi, accessable from outside only via VPN.
 
- Backup script for phone.
 
- Using 
Raccoon for installing WhatsApp. 
Coding
- Use docker build containers for everything. A base container matching the installed Debian version with basic gcc, make etc tools.
 
- Derivative containers install 
*-dev packages for headers and compiling. The base machine just has shared libraries for running. 
Git repos
- All git repos stored on a remote machine (RPi).
 
- Repos are in an unencrypted disk image, mounted loopback. Can be unmounted and backed up to NAS.
 
- Repo tool for automatically cloning all repos on a new machine.
 
VPN
- VPN daemon running on remote RPi, port forward from outside.
 
- Simple script for generating new OpenVPN profiles.
 
Calendaring
- Simple calendar daemon running on remote RPi unauthenticated and unencrypted.
 
- Accessable when running the VPN.
 
Passwords
- Simple text file for unimportant passwords.
 
- The 
pass tool for critical passwords. GPG key for pass backed up to paper using QR codes to store the data. 
- QR codes can be used to scan and reassemble GPG key from paper backup.
 
Pictures
- All pictures taken on phone or received via WhatsApp.
 
- Pictures added to 
file-store, a content addressed deduplicating store. 
- The 
file-store backed up to NAS with rsync.