Commit graph

19 commits

Author SHA1 Message Date
421ac61655
feat(fuchsia): add internet sharing service for 3D printer
Enables internet connection sharing from WiFi (wlo1) to Ethernet (enp34s0)
to provide network access for the 3D printer. Includes DHCP server with
static IP reservation, DNS forwarding through Pi-hole, and NAT configuration.
2025-10-30 14:57:38 +08:00
85dc419349
refactor(ssh): decentralize SSH configuration to per-host services
Restructures SSH trust relationships from global to host-specific configuration
for better locality of concern and principle of least privilege.

Changes:
- Collapse nixos/common/global/ssh/ back to ssh.nix (single-file module)
- Move internal host trust (fuchsia/viridian) to per-host services/ssh/
- Split BorgBase known hosts by repository (li9kg944 for fuchsia, r7ag7x1w for viridian)
- Add viridian SSH server config to accept backup connections from fuchsia
- Add fuchsia borgbackup passphrase for offsite backups
- Configure viridian to create /srv/borg-repo/fuchsia for remote backups

This enables the 3-2-1 backup strategy with fuchsia backing up to both viridian
(onsite) and BorgBase (offsite) with proper SSH authentication.
2025-10-07 22:33:20 +08:00
a6fa8866ac
feat(fuchsia): implement backup strategy with explicit home paths
Add snapper and borgbackup for fuchsia home directory backups:

Snapper Configuration:
- Hourly snapshots of /home/sajenim
- Retention: 24 hourly, 7 daily, 4 weekly, 12 monthly
- Stored in nested .snapshots subvolume

Borgbackup Onsite:
- Backup to viridian over SSH (local network)
- Target: ssh://viridian/srv/borg-repo/fuchsia
- Hourly backups, unencrypted, deduplicated
- Same retention as snapper

Borgbackup Offsite:
- Backup to borgbase (internet)
- Target: li9kg944@li9kg944.repo.borgbase.com:repo
- Daily backups, encrypted (repokey-blake2), deduplicated
- Retention: 7 daily, 4 weekly, 12 monthly

Explicit Home Paths (valuable user data only):
- Documents, Pictures, Videos, Music, Downloads, Academics, Notes
- Dotfiles: .ssh, .gnupg

System Persist Data:
- SSH host keys, machine-id, nixos state
- Bluetooth, NetworkManager configurations

Intentionally Excluded:
- .config (managed declaratively via home-manager)
- .repositories (cloneable from GitHub)
- .cache and build artifacts

Treats viridian as central backup server, maintaining 3-2-1 strategy
(3 copies, 2 locations, 1 offsite).

chore(viridian): remove unused inputs parameter from borgbackup offsite
2025-10-07 19:14:11 +08:00
e5d1ba38d4
remove ollama service from fuchsia host
- Remove ollama service configuration and dependencies
- Clean up traefik routing for ollama web interface
- Comment out traefik service examples for clarity
2025-09-29 18:30:59 +08:00
cf0916ca4b
setup pipewire 2025-09-01 01:47:59 +08:00
3110f787af
install cups 2025-07-06 23:46:38 +08:00
c38f58067a
opt in unfree 2025-04-30 12:18:32 +08:00
e6b6325ba6
chore: refactor 2025-03-08 14:18:46 +08:00
7203fc1ed9
refactor 2024-09-20 20:24:55 +08:00
ff455eeab5
Setup DYMO LabelWriter 5XL 2024-08-30 22:03:59 +08:00
31655bd161
remove: ollama 2024-08-11 07:53:26 +08:00
3350d19a45
fmt: alejandra 2024-08-08 09:02:42 +08:00
3de981c7dd
Refactor services 2024-07-26 09:10:12 +08:00
ed06f7e925
Refactor libinput service 2024-07-26 09:08:32 +08:00
e2deffa0ba
Refactor udev rules 2024-07-26 09:03:58 +08:00
a91a056c28
Refactor ollama service 2024-07-26 09:01:05 +08:00
89dff37210
Refactor xserver service 2024-07-26 08:58:52 +08:00
add81a71d5
Install flatpak service 2024-07-26 08:55:55 +08:00
8fdc42ee97 apply our clock settings 2024-04-01 10:04:20 +08:00