home is the monorepo containing my personal tools and infrastructure. Everything in here
should be built using Nix.
It is meant to be fully reproducible (using niv for now) and position-independent, meaning
there is no moving around of
configuration.nix. For the configurations' entry points see
the individual systems, as well as default.nix.
This will be a all-time work-in-progress, so please beware that things might change dramatically or even not working anymore 😛.
This holds the configuration of my different systems. It is meant to be
position-independent, meaning there is no moving around of
configuration.nix. For the
configurations' entry points see the individual systems, as well as default.nix.
Note: to test
nix build '.#nixosConfigurations.foo.config.system.build.toplevel', or even better, to test in a VM use
nix build '.#nixosConfigurations.foo.config.system.build.vm'.
This is the configuration for each hosts. It should be as simple as enabling some profiles and some ad-hoc very specific configuration.
This is where all configuration that can be used across different system would lend. These are not system dependent and should be configurable. This contains the following "modules", a bit like how nixpkgs is organized
Users configuration, for NixOS or not and using home-manager.
This is a list of modules that can be used by all users.
Contains NixOS user specific configuration. It gets imported if the user is listed in a given configuration. It will contains the user creation information (groups, …) and can refer to a given home-manager configuration.
Contains home-manager configuration.
Note: In order to get information from Nixos, use
nixosConfig. This should be useful to
configure some modules depending on the host configuration.
Nix configurations, packages definitions, overlays.
Those are tools I have written for my personal usage.
Website sources and builders/deployers.
Unless otherwise stated in a subdirectory, all code is licensed under the GNU GPL v3. See COPYING for details.