Skip to content

feat: add type-nas configuration with ZFS and paperless-ngx#283

Merged
funkymonkeymonk merged 4 commits into
mainfrom
feat/type-nas
Jun 6, 2026
Merged

feat: add type-nas configuration with ZFS and paperless-ngx#283
funkymonkeymonk merged 4 commits into
mainfrom
feat/type-nas

Conversation

@funkymonkeymonk

@funkymonkeymonk funkymonkeymonk commented Apr 29, 2026

Copy link
Copy Markdown
Owner

Summary

Adds a new cattle configuration type-nas for Network Attached Storage with:

Features

  • ZFS storage pool with automatic scrubbing and snapshots
  • paperless-ngx document management (port 28981)
  • ZFS datasets for paperless, data, backup, and media
  • Sanoid snapshots (24 hourly, 30 daily, 3 monthly)

Disk Layout

  • Boot disk (ext4) for OS on /dev/sda
  • ZFS pool "tank" on /dev/sdb (configurable for mirrors, RAIDZ)

Deployment

# Generate hardware config on target
nixos-facter > /etc/nixos/facter.json

# Deploy
sudo nixos-rebuild switch --flake github:funkymonkeymonk/nix#type-nas --impure

Files Added

  • disk-configs/zfs-nas.nix - ZFS pool configuration
  • targets/type-nas/default.nix - NAS services (paperless, ZFS tools)
  • Updated flake.nix with type-nas NixOS configuration

Testing

  • Lint checks pass
  • NixOS evaluation succeeds
  • Disko validation passes
  • All foundation tests pass
  • Build NixOS - type-nas passes

Changes in this update

  • Merged latest main (fixes merge conflicts)
  • Removed incorrect microvm.nixosModules.microvm import from type-nas config (caused networking.hostId conflict)
  • Restored missing zero config modules (disko, desktop machine type, ghostty terminfo) lost during conflict resolution

…as config (conflicting hostId), restore missing zero config modules (disko, desktop, ghostty)
@funkymonkeymonk funkymonkeymonk merged commit 116c9e4 into main Jun 6, 2026
28 checks passed
@funkymonkeymonk funkymonkeymonk deleted the feat/type-nas branch June 6, 2026 14:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant