

I’m a ~/tmp man myself.


I’m a ~/tmp man myself.


Maybe not a service in the typical sense, but setting up your router+server to route your home network traffic through a VPN is a fun project.
My router (MikroTik) supports WireGuard, so I can use it with Mullvad for the whole house—but wg is demanding and it’s a slow router, so while it can NAT at ~1Gbps, it can’t do WireGuard at more than ~90Mbps. So, I set up WireGuard/Mullvad on a little SBC with a fast processor, and have my router use that instead. Using policy based routing and/or mangling, I can have different VLANs/subnets/individual hosts selectively routed through the VPN.
It’s a fun exercise, not sure I implemented it in a smart way, but it works :)


IIRC UT2K4 shipped with a Linux port on the install media.
In college around the time this came out, there were beefy Linux machines in one of the libraries. You could ssh into them for homework, but you could also physically access them. Xenon, with Nvidia Quadro gfx is my recollection.
So, I would rsync the game to /tmp (no root access of course, and home quota was too small), walk over and enjoy it on high end hardware. Fun stuff!


640k 780k ought to be enough for anybody…


If you search around you might find free ones. Oracle has/had a free tier (though it’s Oracle, so…).


Sadly not really. I use the free tier Oracle, which honestly has worked very well, but I’m not going to recommend using Oracle aside to say that it functionally works for me.
If I were to switch I would probably go to racknerd.


Yes, but you can run multiple VPS, from different providers, simultaneously.
What I like is that while it does depend on an external provider, it doesn’t depend on a specific external provider. Any VPS with a public IPv4 would work.


VPS+VPN (WireGuard for me), with Tailscale as an emergency alternative, has worked very well for me. Knock on wood the only outages have been my own fault.


VPS+VPN, this is what I do.
VPS has public IP and runs WireGuard “server”* and a reverse proxy (and fail2ban…). Reverse proxy points to my home computer over the WireGuard link. No open ports on my home router.
For private facing/LAN-only services I just don’t have an entry in the VPS reverse proxy. DNS on the router points everything to my local server, so if at home I access everything directly. To access internal services remotely requires VPN (i.e., WireGuard to the VPS).
Works well; I have a tiny free tier VPS but even so, no complaints.
*Yes I know there are no wg clients or servers, only peers, but it plays a server-likr role.


I used Photoprism years ago, so my knowledge is probably pretty outdated.
My experience of Photoprism was that mobile was not tightly integrated. At the time I used Syncthing to sync photos — it worked ok for me, but I wasn’t going to set it up on my partner’s phone, for example.
Immich Just Works on both mobile and desktop. Multi user is great, sharing is great, and the local ML and face detection work remarkably well.
Whatever works for you is the best of course! Immich fits the bill for me, and it was very much worth it for me to “buy” it.
xscreensaver of course! Note that this is not an option on Windows—jwz hates Microsoft, and any xscreensaver port to Windows is against his wishes.
I use yabai and sketchybar for a tiling WM feel. It’s nowhere as nice as my preferred i3, but it’s ok. Unfortunately it often breaks with major OS updates, so I’m sure to hold back updating my system until yabai is working.
IIRC sshfs will work on macOS but it’s more work to install. Worth it if allowed by your IT policies and your work can benefit from it.
Vim, tmux, and the usual *NIX stuff you might want.
The coreutils are not the GNU coreutils you typically find on a Linux system, so you may find a few differences. I believe sed is slightly different, and the flags for ls must be before the filename arguments, but I’ve found it’s mostly silly stuff like that (I used zsh before using macOS, so no problem there).


Regarding DNS servers, what router do you have? Some routers have simple enough DNS capabilities — I have a MikroTik, and have it set up with DNS entries for internal services (including wildcard). Publicly accessible services just use my registrar’s DNS (namecheap — no complaints).


On low end CPUs you can max out the CPU before maxing out network—if you want to get fancy, you can use rsync over an unencrypted remote shell like rsh, but I would only do this if the computers were directly connected to each other by one Ethernet cable.


If you’re running it via docker compose it’s trivial to upgrade, and there are no breaking changes. Pull, down, up, you’re done.


Frigate is pretty good, too. I’ve only been running it for a few months but I’m very happy with it.
Though, technically that leaves you more at risk of ransomeware or something that overwrites your data.
I rsync as well, but use snapshotting on the remote drives. So, a bad rsync would suck but shouldn’t really result in data loss. Ransomware on my local+remote server would of course be very bad…
I do something similar — I have a raspberry pi and a HD, with daily rsync and snapshots (monthly retained indefinitely, weekly retained for a month, daily retained for a week). It’s at family’s house, connected to my home via WireGuard via a VPS. Tailscale (or anything really) would also work here.
It’s a great setup! Just have some watchdog reboot if it can’t talk to home (a simple cronjob with ping -c1 home.lan || reboot or similar).
Even our “slow” 35Mbps upload speed is way more than enough for incremental rsyncs of my Immich library. The initial sync was done in person, though.
I got one from goHardDrive on eBay (link). It was cheap enough, looks flawless, and knock on wood has been working fine.
Googling around, the brand gets…mixed reviews. My use case is such that of this drive fails it’s not a big deal.


I’ve honestly never understood people who feel the need to “replace” Spotify. … Spotify has never made sense for my use-case.
I don’t know how to say this, but…you have extremely uncommon use-cases:
…during those times, my phone is either fully turned off (so I’ll use an MP3 player), or it’s in Airplane Mode.
Many people listen to music on stereos and don’t necessarily want a device plugged in, so
I just download the music I like to my device and listen to it via VLC.
either doesn’t work or is substantially less convenient than e.g. casting from a phone.
Not hating on your setup at all, but it’s very niche, in my experience.
ncis useful. For example: if you have a disk image downloaded on computer A but want to write it to an SD card on computer B, you can run something likeuser@B: nc -l 1234 | pv > /dev/$sdcardAnd
user@A: nc B.local 1234 < /path/to/image.img(I may have syntax messed up–also don’t transfer sensitive information this way!)
Similarly, no need to store a compressed file if you’re going to uncompress it as soon as you download it—just pipe
wgetorcurltotarorxzor whatever.I once burnt a CD of a Linux ISO by
wgeting directly tocdrecord. It was actually kinda useful because it was on a laptop that was running out of HD space. Luckily the University Internet was fast and the CD was successfully burnt :)