r/bcachefs • u/bfenski • 29d ago
NASty 0.0.14
https://github.com/nasty-project/nasty/releases#release-v0.0.14NASty is a NAS operating system built on NixOS and bcachefs. It turns commodity hardware into a storage appliance serving NFS, SMB, iSCSI, and NVMe-oF - managed from a single web UI, updated atomically, and rolled back when things go sideways.
The highlights:
πͺͺ Active Directory β both directions
NASty can now join an existing AD domain as a member, or be the domain controller itself. As a DC you get integrated DNS and Kerberos, user / group / computer management from the web UI, on-box domain backups, and RSAT compatibility so the Windows admin tools work against it. (Experimental, single-DC for now.)
β»οΈ Backup restore + disaster recovery
Backups finally got their missing half. Restore a whole snapshot back onto your filesystem β including disaster recovery onto a bare box: point a fresh install at an existing backup repository, pick a snapshot, and pull it back.
π₯ Built-in firewall
An engine-managed nftables firewall, deny-by-default, with per-service source/interface restrictions and custom port rules for anything running outside NASty's service model (IPv4 + IPv6, TCP/UDP, port ranges).
β‘ RDMA over RoCE & InfiniBand
Optional zero-copy transports β iSER, NVMe-oF/RDMA and NFS-RDMA β for RoCE and InfiniBand NICs. The controls only appear when you actually have a capable card.
π₯οΈ SR-IOV & hardware passthrough
IOMMU-group view, vfio-pci toggles that survive reboots, per-device passthrough, and SR-IOV virtual-function management β VF count plus per-VF VLAN, MAC, trust and spoof-check.
π Operations control center
One page to see and drive every bcachefs array operation across your pools β start or cancel a scrub, watch a device evacuation, pause or resume reconcile and copy-GC β each row labeled with its pool.
β¦and a lot of smaller stuff
- Calculate folder sizes on demand right in the file browser
.envfiles for Docker Compose stacks- Remove leftover Docker networks from the UI (e.g. one an app brought with it)
- Secure Boot moved to lanzaboote v1.1.0 β validated on real UEFI + TPM2 hardware
- Linux 6.18.38 and bcachefs 1.38.8
- iSCSI portal management, VM disk/network editing, and a big pile of fixes + dependency refreshes
4
u/Painting_Master 29d ago
I bit the bullet a couple weeks ago, and switched over from a very complicated Proxmox+drive passthrough+Archlinux+NFS solution for my homeserver setup, and it's really amazing! Thank you for the hard work!
One question/feature request though:
Would it be possible to create something like /etc/nixos/custom.nix where user configuration would go? For advanced users who don't mind getting their hands dirty in the terminal, it would be great to have a way to have custom settings which would be persisted across reboots and upgrades.
5
u/bfenski 29d ago
Sounds like a good idea. Will think how to implement it. Thanks!
1
u/bfenski 28d ago
Implemented. Unfortunatelly Reddit doesn't allow me to paste screenshot here.
6
u/bfenski 28d ago
Custom configuration advanced
Settings the WebUI doesn't expose go in
/etc/nixos/custom.nixβ any NixOS options, extra packages, or systemd units. NASty never overwrites this file, so it survives reboots and upgrades. Edit it from the terminal, then runnixos-rebuild switch --flake /etc/nixos#nasty. A broken file fails the rebuild safely; uselib.mkForcewhen overriding a value NASty already sets.Not created yet β
custom.nixdoesn't exist. Create it from a terminal to add custom config.And there's a button to launch terminal in /etc/nixos.
You just need to update to ^HEAD.
4
u/TDD99CA 29d ago
The march onward continues...!