Skip to content

Instantly share code, notes, and snippets.

@willjasen
willjasen / systemd-dependencies-on-tailscale.md
Last active February 4, 2026 04:04
Debian systemd dependencies on Tailscale

Prologue

Some services in Debian/Ubuntu need to start after the Tailscale service is not only started/active, but has fully come up (in so much that it passes network traffic, which can take 5-10 seconds after the service starts). This is crucial when binding services solely to the Tailscale interface such that they require it to be fully operational before binding can successfully complete. Some services like the Zabbix agent may initially fail but will retry and start successfully once Tailscale is fully operational, but other services like netatalk (used for Apple file sharing) will generally fail to start or bind and will not reattempt, forcing a manual intervention of restarting that service.

To account for this, a "ExecStartPost" within the Tailscale systemd config monitors when the host can successfully ping 100.100.100.100 (the "localhost" IP within Tailscale) such that other services that depend on Tailscale won't attempt to start until the ping is successful. From there, the dependent services

@ogerardin
ogerardin / gist:014aff71b7d7aacf4bbfb3b8bbc575b7
Created July 25, 2023 14:18
Convert VMware VM to UTM (Mac)
Export VM as OVF
/Applications/VMware\ Fusion.app/Contents/Library/VMware\ OVF\ Tool/ovftool VM.vmwarevm/VM.vmx .
Convert .vmdk to .qcow2
qemu-img convert -p -f vmdk -O qcow2 VM-disk1.vmdk VM-disk1.qcow2
Create custom VM in UTM matching VM hardware
Remove default disk
Add drive / import QCOW2 file (file is copied to default UTM VM folder)
Add CD/DVD drive
@onlime
onlime / accounts.list
Last active July 17, 2025 17:21
imapsync script to migrate multiple IMAP accounts in a row
# <SRCUSER> <SRCPW> <DSTUSER> <DSTPW>