[Unit] # Freezmo — dev instance (hot reload, LAN only). # # This is the working tree (~/freezmo). Everything live happens here: edits are # visible within seconds, its build folder is .next-dev (a production build can # never clobber it) and its data lives in ~/freezmo/.freezmo-dev, so test # shares, sync blobs and rate limits never touch production data. # # It binds the LAN so the phone can reach it, but nothing routes this port # through the public proxy — production stays the only public instance. # It shows a DEV badge, uses a dev favicon/theme colour, installs as # "Freezmo Dev" (separate origin, separate storage) and never registers the # production service worker. # # Install (per user, no root needed): # cp ~/freezmo/deploy/freezmo-dev.service ~/.config/systemd/user/ # systemctl --user daemon-reload # systemctl --user enable --now freezmo-dev.service # Logs: journalctl --user -u freezmo-dev -f Description=Freezmo dev instance (hot reload, LAN only) Documentation=file://%h/freezmo/README.md After=network-online.target Wants=network-online.target [Service] Type=simple WorkingDirectory=%h/freezmo Environment=NEXT_TELEMETRY_DISABLED=1 Environment=NEXT_DIST_DIR=.next-dev Environment=NEXT_PUBLIC_FREEZMO_DEV=1 Environment=SYNC_DIR=%h/freezmo/.freezmo-dev/sync Environment=PUSH_DIR=%h/freezmo/.freezmo-dev/push Environment=REPORTS_DIR=%h/freezmo/.freezmo-dev/reports Environment=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ExecStart=/bin/node %h/freezmo/node_modules/next/dist/bin/next dev -H 0.0.0.0 -p 3217 Restart=always RestartSec=2 TimeoutStartSec=0 [Install] WantedBy=default.target