5 ms·
I think NixOS would benefit from easily accessible collection of opinionated modules/profiles/configurations with minimal set of options. Something like gnome-d
by suchar 5y ago
I think NixOS would benefit from easily accessible collection of opinionated modules/profiles/configurations with minimal set of options. Something like gnome-desktop / sway-desktop / etc. Gnome actually does pretty good job here.
The point is: currently my NixOS and Home Manager configurations have over 2k LOC total. When you search for configurations on GitHub/Google you are likely to find complex ones. For example, quick search for "nixos gnome" (Google) gives me link to NixOS Wiki (which describes only Gnome part) and blog post (https://gvolpe.com/blog/gnome3-on-nixos/ https://gvolpe.com/blog/gnome3-on-nixos/) which is useful but links to really huge configuration (https://github.com/gvolpe/nix-config https://github.com/gvolpe/nix-config) that is overwhelming to any beginner.
Great example of such approach is nixos-hardware (https://github.com/NixOS/nixos-hardware https://github.com/NixOS/nixos-hardware) which provides one-line configuration covering hardware quirks.
- Kiboneu 5y agoYes, that's how I learned nixos -- moderately on the sparse documentation, highly on other people's code. I was shy on the #nixos channel. Now I have a working setup which spans all of my computers and servers (I also have autodeployment scripts for aws and netboot). I use the devos flake as a template, check this out: https://github.com/divnix/devos https://github.com/divnix/devos
- easygenes 5y agoThe NixOS wiki has a good comparison page for templates like devos: https://nixos.wiki/wiki/Comparison_of_NixOS_setups https://nixos.wiki/wiki/Comparison_of_NixOS_setups This is the other big one (most stars): https://github.com/hlissner/dotfiles https://github.com/hlissner/dotfiles
- Apaec 5y agoHome Manager always seems like a unnecessary layer though. Why is it needed if you already control everything with NixOS?
- opan 5y agoIt's for the user packages. This way you can keep the system profile lean for fast updates of the kernel and such, and then update firefox and other things separately. With Guix they have had manifests for a while, which are integrated into Guix proper and are like the package half of Home Manager (not the config stuff). I only keep a handful of things installed as system packages, and then I have probably 100 or more things in my manifest.scm file. As my user I apply this manifest and it will install or remove things as needed. No root privileges needed.
- Apaec 5y ago> This way you can keep the system profile lean for fast updates of the kernel and such, and then update firefox and other things separately That makes a lot of sense. Right now a nixos-rebuild is really slow for me as I have a big configuration.nix file. I guess Home Manager could help in this case, will dig into it.
- soraminazuki 5y agoWith Home Manager, you can share configuration between NixOS, non NixOS Linux distros, and macOS.
- suchar 5y agoMy primary use-case for Home Manager is dotfiles management. This way I can keep them consistent across all machines and development containers (managed with NixOS declarative containers, so Home Manager configuration is applied on container startup).
- domenkozar 5y agoThat's the goal of https://nix.dev https://nix.dev, you can subscribe for future updates!
- jtojnar 5y agoGNOME is even documented in the manuals nowadays (https://nixos.org/manual/nixos/stable/#chap-gnome https://nixos.org/manual/nixos/stable/#chap-gnome). Unfortunately, Google does not really like single-page documentation.