Dotfiles powered by Nix™, plus a package overlay and a library of utility functions.
- Xray vless-tcp-xtls-reality tproxy configuration
- Using haumea:
- to generate lists and trees of modules for
home
andnixos
- as a module system for
lib
- to generate lists and trees of modules for
I try to make the repo structure as close to that of nixpkgs as possible, differing from it only when it makes sense.
Each part of this repo (home
, lib
, nixos
, pkgs
) has a subflake that can
be used as flake input by specifying a directory like this:
github:Weathercold/nixfiles?dir=home
nixfiles/
├ home/ home configurations
│ ├ configurations/ top-level home configurations
│ │ ├ weathercold/ my configurations
│ │ ├ custom.nix example configuration
│ │ └ _options.nix configuration abstraction
│ └ modules/ home modules
│ ├ profiles/ top-level home modules**
│ ├ accounts/, programs/, services/, ...
│ └ themes/ **
├ nixos/ nixos configurations
│ ├ configurations/ top-level nixos configurations
│ │ ├ nixos-inspiron.nix, ... my configurations
│ │ └ _options.nix configuration abstraction
│ └ modules/ nixos modules
│ ├ profiles/ top-level nixos modules**
│ ├ config/, i18n/, programs/, ...
│ └ hardware/, themes/ **
├ pkgs/ package repository (by-name)
└ lib/ library of shared expressions
├ modules/ shared modules
└ src/ shared functions
**: external modules exposed with self.nixosModules
and self.homeModules
.
They are effective on import by default, but can be disabled with
config.abszero.enableExternalModulesByDefault
.
nixfiles/flake.nix
├ home/flake-module.nix
│ ├ configurations/custom.nix, ...
│ └ configurations/weathercold/nixos-inspiron.nix
│ ├ ../_options.nix
│ └ _base.nix
│ └ ../../modules/profiles/full.nix
│ └ base.nix
│ └ ../accounts/*, ../programs/*, ../services/*, ...
├ lib/default.nix
│ └ src/*
├ nixos/flake-module.nix
│ └ configurations/nixos-inspiron.nix
│ ├ _options.nix
│ ├ ../modules/hardware/dell-inspiron-7405.nix
│ └ ../modules/profiles/full.nix
│ ├ ../hardware/halo65.nix, ...
│ └ base.nix
│ └ ../config/*, ../i18n/*, ../programs/*, ...
└ pkgs/flake-module.nix
└ default.nix
└ aa/*, ab/*, ...