~vdemeester/home

💻 systems and tools configuration monorepo
flake: update flakes
flake: make flakes build…
systems: add a versionOlder on nixos…

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~vdemeester/home
read/write
git@git.sr.ht:~vdemeester/home

You can also use your local clone with git send-email.

#Table of Contents

  1. Highlights
    1. /systems
      1. /hosts
      2. /modules
    2. /users
      1. /modules
      2. /{users}/default.nix
      3. /{users}/home.nix
    3. /nix
    4. /tools
    5. /www
  2. References
  3. Licensing

home is the monorepo containing my personal tools and infrastructure. Everything in here should be built using Nix.

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

Note: to test flakes use 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'.

#/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

#/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.