Public part of my dotfiles.
  • Nix 43.3%
  • Python 40.1%
  • Shell 13.8%
  • JavaScript 1.1%
  • Vim script 1%
  • Other 0.7%
Find a file
Geoffrey “Frogeye” Preud'homme bffcbfc00a
All checks were successful
/ eval-cranberry (push) Successful in 44s
/ eval-curacao (push) Successful in 56s
/ build-cranberry (push) Successful in 9s
/ build-curacao (push) Successful in 14s
/ build (cranberry) (push) Successful in 0s
/ build (curacao) (push) Successful in 0s
Not really sure what's up with the hashes of things
2026-06-16 13:24:33 +02:00
.forgejo/workflows Fix building the wrong configuration 2026-05-29 21:08:01 +02:00
common Use pkgs.fetchurl 2026-05-30 23:57:22 +02:00
cranberry Misc fixes 2026-06-15 00:33:29 +02:00
curacao Keylogging 2026-05-06 11:13:58 +02:00
hm Not really sure what's up with the hashes of things 2026-06-16 13:24:33 +02:00
morton Add morton 2025-03-15 04:42:23 +01:00
nod Upgrade to 25.05 2025-05-20 01:09:33 +02:00
os Don't create a project folder in my home plz 2026-06-09 16:20:44 +02:00
pindakaas sway 2025-05-29 18:34:46 +02:00
sprinkles nod: More fixes 2025-04-24 20:22:39 +02:00
unprocessed Manual fixes to Python file 2025-05-09 00:28:33 +02:00
.gitignore Fix OS scripts for flakes 2024-02-17 23:35:53 +01:00
build_os.sh Fix OS scripts for flakes 2024-02-17 23:35:53 +01:00
flake.lock Not really sure what's up with the hashes of things 2026-06-16 13:24:33 +02:00
flake.nix stylix: Use 26.05 release 2026-06-09 17:52:00 +02:00
install_os.sh install: Fixed 2024-06-12 23:47:20 +02:00
options.nix Upgrade to 26.05 2026-05-29 19:48:41 +02:00
README.md nod: Flake test 2024-01-16 22:39:29 +01:00

Geoffrey Frogeye's dotfiles

This repo holds most of my systems configuration. It is built on top of the Nix ecosystem

Directory structure

  • os, hm, nod: Re-usable configuration for NixOS, home-manager, Nix-on-Droid respectively
    • <module-name>: Module. Used to separate configuration in separate logical units.
      • default.nix: Entrypoint for that module. Contains Nix configuration for the module.
      • <other file>: Extra files: scripts to be installed, or ... whatever.
    • default.nix: Entrypoint for that system. Import all the modules.
    • <other file>: Files non-conforming to the structure above because I'm hurrying to have everything working before cleaning.
  • dk: Re-usable configuration for disko
    • <name>.nix: Partitionning scheme configuration. Don't assume a specific context, it will be imported as Disko and NixOS config.
  • options.nix: Definition of options exposed to all systems (even though if not relevant for all, it's for simplicity sake).
  • <profile-name> (e.g. curacao): Configurations for my different devices
    • options.nix: Common options configuration. Don't assume a specific context (for reasons unclear, I'm sure I can do something with that).
    • hardware.nix: NixOS configuration for that specific device.
    • dk.nix: Partitionning configuration. Import a top-level dk scheme, adding disks ids and other configuration required.
    • os.nix, hm.nix, nod.nix: Entrypoint for the device/system configuration. Imports the above files (last two only for NixOS) and contains configuration specific to this combination.
  • <profile-name>_<media> (e.g. pindakaas_sd): Alternate configuration for a device. Used to test a configuration without altering the "main" one.
    • options.nix: Same as above. Can be a symlink.
    • hardware.nix: Same as above. Should be a symlink.
    • dk.nix: Same as above. Should not be a symlink.
    • os.nix, hm.nix, nod.nix: Same as above. Should not be a symlink.

Scripts

They all have a -h flag.

Extensions

There's some things I'm not putting in this public repo: work-related things, and other sensitive things that probably shouldn't be public. Those are stored in extensions, i.e. repos with a similar structure to this one, and ultimately importing things from it. This is why you might see options not being seemingly used.