Skip to content

🐸 home configuration files, powered by Nix and NixOS

License

Notifications You must be signed in to change notification settings

vdemeester/home

Repository files navigation

home monorepo

home is the monorepo containing my personal tools and infrastructure. Almost everything in here is built using Nix. This README needs some updates.

  • I need to rewrite this part based on =flake.nix= and updates.
  • Explore the nixos-rebuild --build-host … --target-host … --flake .#host boot as it might remove the need for deploy-rs altogether 😈
  • I need to make a big overall on the docs.

Highlights

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 😛.

/systems

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.

/hosts

This is the configuration for each hosts. It should be as simple as enabling some profiles and some ad-hoc very specific configuration.

/modules

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

  • hardware
  • profiles
  • programs
  • services
  • virtualisation

/ops

Network and morph configuration of my infrastructure.

/users

Users configuration, for NixOS or not and using home-manager.

/modules

This is a list of modules that can be used by all users.

/{users}/default.nix

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.

/{users}/home.nix

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

Nix configurations, packages definitions, overlays.

/tools

Those are tools I have written for my personal usage.

/www

Website sources and builders/deployers.

References

Repositories

Old

Licensing

Unless otherwise stated in a subdirectory, all code is licensed under the GNU GPL v3. See COPYING for details.