Commit Graph

  • cbdbce7a41 refactor(setup-network): let netplan own the AP switch — update config and apply before wpa_cli master Justin Oros 2026-04-23 12:16:40 -07:00
  • bbf1d8b79a fix(setup-network): use remove_network instead of disable_network and drop interface bounce to prevent AP fallback Justin Oros 2026-04-23 12:11:12 -07:00
  • 436906582c fix(setup-network): move netplan file selection before Proceed prompt so it isn't missed on SSH drop Justin Oros 2026-04-23 11:57:04 -07:00
  • a01f4aa11c fix(setup-network): prompt user to choose netplan file when multiple configs exist Justin Oros 2026-04-23 11:54:03 -07:00
  • d61f7e4512 fix(setup-network): update all netplan files containing access-points, not just the first one Justin Oros 2026-04-23 11:49:01 -07:00
  • 337d238d7f fix(setup-network): bounce interface and force DHCP renew after AP switch to restore connectivity Justin Oros 2026-04-23 11:43:39 -07:00
  • ff5cb104f8 fix(setup-network): collect all user input before switching AP to prevent SSH session drop mid-prompt Justin Oros 2026-04-23 11:39:10 -07:00
  • 5d9e0f579c setup-network.sh: add Change Wireless Network option using iw/wpa_cli/wpa_passphrase for systemd-networkd on Armbian Justin Oros 2026-04-23 11:32:47 -07:00
  • 2bd8711db3 health-check.sh: show human-readable used/total disk usage instead of percentage Justin Oros 2026-04-22 09:50:44 -07:00
  • 2928285143 health-check.sh: fix total disk usage label to show root filesystem instead of empty mount point Justin Oros 2026-04-22 09:47:25 -07:00
  • f9d0717b71 health-check.sh: add total disk usage summary line to disk space section Justin Oros 2026-04-22 09:45:30 -07:00
  • 518f54394c health-check.sh: only check last 60 seconds of autossh logs for tunnel failures to avoid false positives from old log entries Justin Oros 2026-04-22 08:52:15 -07:00
  • defb4fdaa3 onboard-spoke.sh: use script-based rclone mount with sleep 90 for reliable boot ordering, add per-spoke mount log Justin Oros 2026-04-20 22:27:10 -07:00
  • c7c5d2bf8d setup-opds.sh: replace fixed sleep watchdog with retry loop that restarts dir2opds until books are visible inside container Justin Oros 2026-04-20 22:26:28 -07:00
  • 85def22fca setup-opds.sh: add bind-propagation=shared to dir2opds mount for FUSE mount visibility inside container Justin Oros 2026-04-20 21:41:46 -07:00
  • 80d5f1d1fd setup-opds.sh: use --mount type=bind instead of -v for FUSE mount propagation into dir2opds container Justin Oros 2026-04-20 21:22:27 -07:00
  • 56e0fc38c0 onboard-spoke.sh: use full path to rclone in crontab mount command to ensure it works at boot Justin Oros 2026-04-20 20:56:45 -07:00
  • 1c6e12e2d6 setup-opds.sh: add boot watchdog cron to restart dir2opds if books mount is empty after reboot Justin Oros 2026-04-20 20:45:54 -07:00
  • 40d24158b6 onboard-spoke.sh: add --allow-non-empty to rclone mount command to prevent mount failure after reboot Justin Oros 2026-04-20 20:43:00 -07:00
  • 5bc33b28f4 syncthing.sh: show folder label alongside folder ID in pending folders display and selection menu Justin Oros 2026-04-20 19:04:12 -07:00
  • 21a1c7e922 setup-opds.sh: replace hardcoded books path with dynamic spoke mount listing Justin Oros 2026-04-20 16:08:31 -07:00
  • 4586a0f598 setup-opds.sh: add -hide-dot-files flag to dir2opds to filter macOS metadata files and Syncthing folders Justin Oros 2026-04-20 15:01:41 -07:00
  • 2999c464fa setup-opds.sh: add firewall port warning before starting Caddy Justin Oros 2026-04-20 14:53:44 -07:00
  • dfa3c1ce6d setup-opds.sh: add reconfigure option to update existing OPDS setup, improve Caddyfile generation for auto and manual SSL Justin Oros 2026-04-20 14:45:08 -07:00
  • 9dc2b221d3 setup-opds.sh: prompt user to install Docker if not found, using same approach as setup-spoke.sh Justin Oros 2026-04-20 14:40:32 -07:00
  • 89e84c41c1 hub/setup-opds.sh: add OPDS server setup script with dir2opds and Caddy running in Docker on shared network, with SSL and auth options Justin Oros 2026-04-20 14:37:10 -07:00
  • 2d2b19b2db syncthing.sh: add ignored folder display and un-ignore option to pending folders menu Justin Oros 2026-04-20 13:19:37 -07:00
  • 78d4373c0d syncthing.sh: add pending folders support to option 1, allowing acceptance of incoming folder offers Justin Oros 2026-04-20 13:08:29 -07:00
  • 132d15357c health-check.sh: filter Docker overlay mounts from disk space check Justin Oros 2026-04-20 09:54:47 -07:00
  • 8acfc3269a health-check.sh: filter Docker overlay mounts from disk space check Justin Oros 2026-04-20 09:37:42 -07:00
  • ad15498bb9 health-check.sh: add disk space check with OK/WARN/FAIL thresholds at 80% and 90% Justin Oros 2026-04-20 09:33:36 -07:00
  • dea8d2df4d add sleep to prevent rclone before fuse mod, and add performance caching rclone-tweaks finn 2026-04-20 00:40:38 -07:00
  • 8a7fe7b4de setup-network.sh: back up and remove conflicting netplan files before writing static IP config Justin Oros 2026-04-19 22:45:24 -07:00
  • e3a12c0f6e health-check.sh: remove union remote check Justin Oros 2026-04-19 22:39:04 -07:00
  • a8b10a1814 health-check.sh: check hub user's crontab instead of root's when running as root Justin Oros 2026-04-19 22:36:46 -07:00
  • 92a2af8c5c health-check.sh: auto-detect hub user home directory when running as root Justin Oros 2026-04-19 22:35:42 -07:00
  • a5cf3d1f8b health-check.sh: only show docker and Syncthing checks on spokes, not hubs Justin Oros 2026-04-19 22:34:21 -07:00
  • ebb366e4bc chmod +x health-check.sh Justin Oros 2026-04-19 22:31:10 -07:00
  • 84b3b7ce1d health-check.sh: fix spoke detection to check for running autossh container instead of compose.yaml presence Justin Oros 2026-04-19 22:29:02 -07:00
  • 86688c43c7 setup-hub.sh: use fuse3 for apt systems Justin Oros 2026-04-19 22:26:11 -07:00
  • 972dbef11c setup-hub.sh: change AllowTcpForwarding from local to yes to allow reverse tunnels from spokes Justin Oros 2026-04-19 22:11:02 -07:00
  • e55ab898ef setup-spoke.sh: show current hostname as default in hostname prompt Justin Oros 2026-04-19 22:01:53 -07:00
  • 81d0bebd5e setup-spoke.sh: write hub host key to root's known_hosts during keyscan to prevent host key prompt during tunnel test Justin Oros 2026-04-19 21:58:29 -07:00
  • 6fe164a6ae setup-network.sh: add IPv4/IPv6 preference options to network setup menu Justin Oros 2026-04-19 21:49:13 -07:00
  • b76e890857 setup-spoke.sh: print exact authorized_keys command with public key when displaying hub key instructions Justin Oros 2026-04-19 21:32:23 -07:00
  • 4e2f17266a compose.yaml: bind Syncthing web UI to all interfaces instead of localhost only Justin Oros 2026-04-19 21:12:40 -07:00
  • 0af3c30f79 setup-hub.sh: change password auth disable default to N Justin Oros 2026-04-19 20:58:50 -07:00
  • b0e63a2e01 syncthing.sh: replace python3 XML parsing with grep/sed for API key extraction since Syncthing container has no python3 Justin Oros 2026-04-19 15:50:41 -07:00
  • 22eced7607 health-check.sh: fix duplicate autossh_container variable declaration in check_spoke Justin Oros 2026-04-19 15:44:21 -07:00
  • 58c641d603 health-check.sh: auto-detects hub/spoke role and reports status of Docker, SSH, Syncthing, autossh tunnel, rclone mounts, and crontab entries Justin Oros 2026-04-19 15:41:50 -07:00
  • 1cc50f8ff0 compose.yaml, setup-spoke.sh: replace named Docker volume with host directory for syncthing config, reset compose.yaml to generic placeholders, remove volume permission fix step Justin Oros 2026-04-19 15:35:13 -07:00
  • 97aff6a741 onboard-spoke.sh: replace printf with python3 to correctly write rclone remote config with real newlines Justin Oros 2026-04-19 15:04:39 -07:00
  • eaff38477c onboard-spoke.sh: restore union remote, rclone test, registry, auto-mount, and completion sections lost during rewrite Justin Oros 2026-04-19 14:43:05 -07:00
  • e2ed499e58 onboard-spoke.sh: adopt Finn's cleaner tunnel verification flow, remove key selection prompt, add TCP pre-check before keyscan Justin Oros 2026-04-19 14:38:10 -07:00
  • 48ba67e351 setup-spoke.sh: fix syncthing-config volume ownership before starting containers Justin Oros 2026-04-19 14:22:49 -07:00
  • 5941f95b00 slight addition to pre key verification section onboard-spoke-logic finn 2026-04-19 14:18:52 -07:00
  • 747c8a81d8 Merge remote-tracking branch 'origin/master' into onboard-spoke-logic finn 2026-04-19 14:18:21 -07:00
  • 5a9e55b673 setup-spoke.sh: replace manual hub instructions with onboard-spoke.sh next step prompt Justin Oros 2026-04-19 14:09:30 -07:00
  • e5bdf95dcf setup-spoke.sh: replace ~ with full paths and clarify hub user in completion message Justin Oros 2026-04-19 14:07:17 -07:00
  • 1f4e8555da Merge branch 'master' into onboard-spoke-logic finn 2026-04-19 14:05:54 -07:00
  • 56325a1b06 changed onboard-spoke flow finn 2026-04-19 14:04:12 -07:00
  • 0553420d04 setup-spoke.sh: add docker-cli to apt install list Justin Oros 2026-04-19 14:00:25 -07:00
  • 4cdddd649d setup-spoke.sh: add option to choose existing key from ~/.ssh/ in SSH key setup menu Justin Oros 2026-04-19 13:52:29 -07:00
  • 0fd7d94d58 setup-spoke.sh: redirect find_free_port warn output to stderr to prevent contamination of TUNNEL_PORT variable Justin Oros 2026-04-19 13:46:07 -07:00
  • f3c9cf2344 setup-spoke.sh: change password auth disable default to N and add warning to wait until after onboard-spoke.sh Justin Oros 2026-04-19 13:14:52 -07:00
  • f486795154 onboard-spoke.sh: add key selection prompt for tunnel auth, use explicit -i flag for all SSH calls, clarify hub key installation header Justin Oros 2026-04-19 13:05:29 -07:00
  • fe3f2c5b77 Update readme Justin Oros 2026-04-19 12:52:40 -07:00
  • 4e1e9282ac setup-spoke.sh: use docker.io and docker-compose instead of docker-compose-plugin for apt installs Justin Oros 2026-04-19 12:37:19 -07:00
  • 07f4601bad setup-spoke.sh: replace docker.io apt install with Docker official install script to fix docker-compose-plugin availability Justin Oros 2026-04-19 11:45:07 -07:00
  • 9bdd12ebbd onboard-spoke.sh: add rclone auto-mount via crontab @reboot entry and immediate mount on onboarding Justin Oros 2026-04-19 11:40:47 -07:00
  • d3a6d406d8 setup-hub.sh: change AllowTcpForwarding from yes to local to restrict forwarding to local connections only Justin Oros 2026-04-19 11:26:15 -07:00
  • e74c9b45d5 etup-hub.sh: change GatewayPorts from yes to no for improved security Justin Oros 2026-04-19 11:21:52 -07:00
  • 600f6044ce setup-network.sh: add menu with hostname change and static IP options, fix SSID extraction quoting using heredoc Justin Oros 2026-04-19 11:03:56 -07:00
  • 2fe94dfe9d setup-hub.sh: remove unnecessary sudo/wheel group membership for hub user Justin Oros 2026-04-19 10:36:32 -07:00
  • b735c58446 Update readme Justin Oros 2026-04-18 22:04:23 -07:00
  • 524321fa97 Update readme Justin Oros 2026-04-18 21:50:28 -07:00
  • e9c1daccce onboard-spoke.sh: replace raise SystemExit with sys.exit(0) in union duplicate check Justin Oros 2026-04-18 21:47:55 -07:00
  • 6db5e9769e onboard-spoke.sh: replace grep -A5 union duplicate check with python3 for reliable section parsing Justin Oros 2026-04-18 21:46:48 -07:00
  • c75b29a5ea onboard-spoke.sh: fix upstream construction for empty path with tag, replace fragile sed range with python3 for reliable union upstream append Justin Oros 2026-04-18 21:45:02 -07:00
  • 92b74d8f67 onboard-spoke.sh: add upstream access mode prompt (ro, nc, writeback) when creating or joining a union remote Justin Oros 2026-04-18 21:43:24 -07:00
  • 1d4e25b6a5 syncthing.sh: auto-unshare folder from all devices before removal if shared Justin Oros 2026-04-18 21:21:24 -07:00
  • 0c784a672c syncthing.sh: fix remaining shell variable interpolation in python3 -c strings across add_device_by_pending, remove_device, and unshare_folder Justin Oros 2026-04-18 21:18:04 -07:00
  • 410def45c3 syncthing.sh: fix grep -oP portability, add curl error messages, pass shell vars as sys.argv to prevent python injection Justin Oros 2026-04-18 21:15:46 -07:00
  • f1d818eae6 syncthing.sh: store container name as global ST_CONTAINER Justin Oros 2026-04-18 21:13:34 -07:00
  • 5017af57c9 syncthing.sh: List available folders when on Add a folder Justin Oros 2026-04-18 21:12:47 -07:00
  • 9e4fba591a compose.yaml, setup-spoke.sh: scope syncthing mount to data directory only, move config/certs to named Docker volume, syncthing.sh: update add folder path example Justin Oros 2026-04-18 21:08:22 -07:00
  • 982b8a8641 syncthing.sh, README.md: change syncthing menu to 0-based indexing Justin Oros 2026-04-18 18:57:36 -07:00
  • c2aec56490 README.md: document syncthing.sh, update architecture, directory structure, script docs, backups, security, and troubleshooting sections Justin Oros 2026-04-18 18:50:43 -07:00
  • e4db257f53 syncthing.sh: fix remaining f-string backslash escape in remove_folder Justin Oros 2026-04-18 18:44:59 -07:00
  • b2932286d0 syncthing.sh: fix Python f-string backslash escaping in all python3 -c blocks Justin Oros 2026-04-18 18:42:00 -07:00
  • 866f8af073 chmod +x syncthing.sh Justin Oros 2026-04-18 18:39:48 -07:00
  • e6720804dc syncthing.sh: new script for managing Syncthing devices and folders via REST API with interactive menu Justin Oros 2026-04-18 18:36:01 -07:00
  • 63197799b8 setup-hub.sh: fix sed delimiter for PasswordAuthentication/PubkeyAuthentication, guard authorized_keys creation, setup-spoke.sh: fix sed delimiter, validate spoke name charset, make find_free_port vars local, offboard-spoke.sh: validate spoke name charset, setup-network.sh: replace brittle SSID grep with python3 regex Justin Oros 2026-04-18 14:39:01 -07:00
  • 128b41ede9 setup-hub.sh: fix sed delimiter and add file dep, onboard-spoke.sh: fix rclone append newline guard and keyscan key-type dedup, offboard-spoke.sh: fix crontab empty check and add timestamped backup, setup-network.sh: replace single bak with timestamped backup, compose.yaml: replace syncthing host network with explicit port bindings Justin Oros 2026-04-18 14:31:10 -07:00
  • f3792a38fc setup-spoke.sh: fix port scan range and user@host sed regex, offboard/onboard-spoke.sh: fix registry grep-v empty-output clobber, setup-network.sh: fix wifi password colon handling Justin Oros 2026-04-18 14:25:24 -07:00
  • e450456638 spoke/setup-spoke.sh Fix check_permissions to check group bits; fix ssh-keyscan dedup to iterate per key type; fix HUB_USER@HUB_HOST sed regex to handle trailing whitespace hub/offboard-spoke.sh Drop root requirement; fix crontab running as root; fix registry .tmp not cleaned on failure hub/onboard-spoke.sh Fix registry .tmp not cleaned on failure; chmod 600 key immediately after generation hub/setup-hub.sh Check permissions on existing SSH private keys in setup Justin Oros 2026-04-18 14:12:05 -07:00
  • d925cd944a onboard-spoke.sh: remove comment syntax from manual key instructions setup-spoke.sh, setup-network.sh: fix check_permissions false alarm on pubkeys, TUNNEL_UP boolean comparison, DNS_YAML trailing newline, backup file guard Justin Oros 2026-04-18 14:07:02 -07:00
  • 74e1a9d1a0 offboard-spoke.sh: run as root, remove sudo from python3 install Justin Oros 2026-04-18 14:04:24 -07:00
  • 535c8a47cb fix hardcoded armbian hub key name in setup instructions; init KEY_NAME Justin Oros 2026-04-18 13:54:22 -07:00
  • 1b4a2c7ab5 fix hardcoded syncthing PUID/PGID in compose.yaml sed Justin Oros 2026-04-18 13:47:12 -07:00