Nix Wads - next level Drvs

Most of us (maybe just myself) are looking for a standard unified artifact that provides all possible options, among everything else possibly needed to operate some application; all contained within its entrypoint/flake. Less adding packages to environment.systemPackages, and more {programs,services,applications}.*.enable = true. Options should be split into contexts like: nixos, home-manager, and devshell/nixago; I’d personally alias them to host, user, iron, and add site as another.

To me a nix-wad would contain everything an application (potentially) needs, along with modules providing options for whatever context it might be used in. Potential niceties I wish might eventually be included: SELinux compliance, plugins/addons catalogs, in-store encrypted secrets, and much more I can’t currently recall.

I’d also like a mainline/official collection of basic flakes and frameworks. Obvious contenders are: nixpkgs, home-manager, and the NUR. Others I would consider are: drv-parts, flake-parts, and my favorite std. What is the best way to inherit all inputs from another flake anyway?

Lastly for my spiel… I believe it time for a neo NixOS! Definitely my goto choice for an operating system; NixOS has most others beat in many ways; that is, if you know what you’re doing. However, I believe it’s time for a major overhaul. Instead of thinking top down, we should start thinking bottom up. Every Unix system has at least one user, the root user. Therefore we should think of the system configuration as layers from: user, host, to site. This should replace the need for home-manager and absorb it. The site layer should also be basic enough to allow swapping between deployment tools.

2 Likes

May I first pose the question ‘Wad is a wad ?’

1 Like

A small mass of material, eg ‘a wad of paper’.

2 Likes

My first thought upon reading the thread title was: WAD | Doom Wiki | Fandom + Nix

:older_man:

3 Likes

As someone who has to type at least 20 characters to respond, same :slight_smile:

4-letter names, yes, I see you. Not totally sure about iron specifically, but it kind of works too

OMFG, yes! :stuck_out_tongue_closed_eyes: I have such a weird obsession with keeping sets of words the same length. Finding the right size word with sensible and thematic meaning is oh so nice. Actively use a normal, reverse, and slang dictionary while developing. Code as the art it is, should be aesthetically pleasing. Also iron is occasionally used as shorthand for environ.