about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-20 16:10:21 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-20 16:14:26 +0200
commit368cb6b0d25db2ae23be42ad51584de059997e51 (patch)
tree3282e45d3ebced63c8498a47e83a255c35de620b
parentrefactor(hm): Rename to `modules/home` (diff)
downloadnixos-config-368cb6b0d25db2ae23be42ad51584de059997e51.tar.gz
nixos-config-368cb6b0d25db2ae23be42ad51584de059997e51.zip
refactor(sys): Modularize and move to `modules/system` or `pkgs`
-rwxr-xr-xmodules/system/boot/boot_pictures/gnu.png (renamed from sys/boot/boot_pictures/gnu.png)bin327518 -> 327518 bytes
-rwxr-xr-xmodules/system/boot/boot_pictures/gnulin_emb_1.png (renamed from sys/boot/boot_pictures/gnulin_emb_1.png)bin207444 -> 207444 bytes
-rwxr-xr-xmodules/system/boot/boot_pictures/gnulin_emb_2.png (renamed from sys/boot/boot_pictures/gnulin_emb_2.png)bin208347 -> 208347 bytes
-rw-r--r--modules/system/boot/default.nix129
-rw-r--r--modules/system/boot/iso_entry/archlive_iso.nix (renamed from sys/boot/archlive_iso.nix)0
-rw-r--r--modules/system/boot/iso_entry/signing_key.nix (renamed from sys/boot/signing_key.nix)0
-rw-r--r--modules/system/cleanup/default.nix18
-rw-r--r--modules/system/default.nix26
-rw-r--r--modules/system/disks/default.nix (renamed from sys/disks/default.nix)18
-rw-r--r--modules/system/disks/fstrim.nix (renamed from sys/disks/fstrim.nix)0
-rw-r--r--modules/system/disks/hibernate.nix (renamed from sys/disks/hibernate.nix)1
-rw-r--r--modules/system/documentation/default.nix24
-rw-r--r--modules/system/fonts/default.nix55
-rw-r--r--modules/system/fonts/emoji_font.xml (renamed from sys/font/font.xml)0
-rw-r--r--modules/system/hardware/default.nix68
-rw-r--r--modules/system/impermanence/default.nix55
-rw-r--r--modules/system/libvirtd/default.nix (renamed from sys/libvirtd/default.nix)0
-rw-r--r--modules/system/locale/default.nix (renamed from sys/locale/default.nix)18
-rw-r--r--modules/system/locale/keymaps/dvorak_modified.xkb (renamed from sys/locale/keymaps/dvorak_modified.xkb)0
-rw-r--r--modules/system/locale/keymaps/us_modified.xkb (renamed from sys/locale/keymaps/us_modified.xkb)0
-rw-r--r--modules/system/networking/default.nix81
-rw-r--r--modules/system/polkit/default.nix14
-rw-r--r--modules/system/power/default.nix33
-rw-r--r--modules/system/secrets/default.nix82
-rw-r--r--modules/system/secrets/lf/cd_paths (renamed from sys/secrets/lf/cd_paths)0
-rw-r--r--modules/system/secrets/nheko/conf.apzu (renamed from sys/secrets/nheko/conf.apzu)0
-rw-r--r--modules/system/secrets/nheko/conf.isimud (renamed from sys/secrets/nheko/conf.isimud)0
-rw-r--r--modules/system/secrets/nheko/conf.tiamat (renamed from sys/secrets/nheko/conf.tiamat)0
-rw-r--r--modules/system/secrets/secrets.nix (renamed from sys/secrets/secrets.nix)0
-rw-r--r--modules/system/secrets/serverphone/ca.key (renamed from sys/secrets/serverphone/ca.key)0
-rw-r--r--modules/system/secrets/serverphone/server.key (renamed from sys/secrets/serverphone/server.key)0
-rw-r--r--modules/system/secrets/taskserver/ca.cert (renamed from sys/secrets/taskserver/ca.cert)0
-rw-r--r--modules/system/secrets/taskserver/credentials (renamed from sys/secrets/taskserver/credentials)0
-rw-r--r--modules/system/secrets/taskserver/private.key (renamed from sys/secrets/taskserver/private.key)0
-rw-r--r--modules/system/secrets/taskserver/public.cert (renamed from sys/secrets/taskserver/public.cert)0
-rwxr-xr-xmodules/system/secrets/update.sh (renamed from sys/secrets/update.sh)0
-rw-r--r--modules/system/services/adb/default.nix (renamed from sys/svcs/adb/default.nix)0
-rw-r--r--modules/system/services/backup/default.nix (renamed from sys/svcs/backup/default.nix)11
-rw-r--r--modules/system/services/dconf/default.nix7
-rw-r--r--modules/system/services/default.nix (renamed from sys/svcs/default.nix)4
-rw-r--r--modules/system/services/fwupd/default.nix14
-rw-r--r--modules/system/services/issue_file/default.nix (renamed from sys/svcs/getty/default.nix)13
-rw-r--r--modules/system/services/nix/default.nix (renamed from sys/svcs/nix/default.nix)1
-rw-r--r--modules/system/services/openssh/default.nix (renamed from sys/svcs/openssh/default.nix)0
-rw-r--r--modules/system/services/postgresql/default.nix17
-rw-r--r--modules/system/services/printing/default.nix45
-rw-r--r--modules/system/services/scanning/default.nix25
-rw-r--r--modules/system/services/serverphone/certificates/ca.crt (renamed from sys/svcs/serverphone/certificates/ca.crt)0
-rw-r--r--modules/system/services/serverphone/certificates/server.crt (renamed from sys/svcs/serverphone/certificates/server.crt)0
-rw-r--r--modules/system/services/serverphone/default.nix (renamed from sys/svcs/serverphone/default.nix)0
l---------modules/system/services/serverphone/keys/key_1 (renamed from sys/svcs/serverphone/keys/key_1)0
l---------modules/system/services/serverphone/keys/key_2 (renamed from sys/svcs/serverphone/keys/key_2)0
-rw-r--r--modules/system/services/snapper/default.nix53
-rw-r--r--modules/system/services/steam/default.nix (renamed from sys/svcs/steam/default.nix)8
-rw-r--r--modules/system/services/swaylock/default.nix (renamed from sys/svcs/swaylock/default.nix)0
-rw-r--r--modules/system/services/xdg/default.nix (renamed from sys/svcs/xdg/default.nix)0
-rwxr-xr-xmodules/system/services/xdg/scripts/lf_wrapper.sh (renamed from sys/svcs/xdg/scripts/lf_wrapper.sh)0
-rwxr-xr-xmodules/system/services/xdg/scripts/ranger_wrapper.sh (renamed from sys/svcs/xdg/scripts/ranger_wrapper.sh)0
-rw-r--r--modules/system/sound/default.nix38
-rw-r--r--modules/system/tempfiles/default.nix20
-rw-r--r--modules/system/users/default.nix50
-rw-r--r--modules/system/version/default.nix19
-rw-r--r--modules/system/waydroid/default.nix (renamed from sys/waydroid/default.nix)1
-rw-r--r--pkgs/default.nix (renamed from sys/nixpkgs/default.nix)5
-rw-r--r--pkgs/sources/comments/.envrc (renamed from sys/nixpkgs/pkgs/comments/.envrc)0
-rw-r--r--pkgs/sources/comments/.gitignore (renamed from sys/nixpkgs/pkgs/comments/.gitignore)0
-rw-r--r--pkgs/sources/comments/Cargo.lock (renamed from sys/nixpkgs/pkgs/comments/Cargo.lock)0
-rw-r--r--pkgs/sources/comments/Cargo.toml (renamed from sys/nixpkgs/pkgs/comments/Cargo.toml)0
-rw-r--r--pkgs/sources/comments/comments.nix (renamed from sys/nixpkgs/pkgs/comments/comments.nix)0
-rw-r--r--pkgs/sources/comments/default.nix (renamed from sys/nixpkgs/pkgs/comments/default.nix)0
-rw-r--r--pkgs/sources/comments/flake.lock (renamed from sys/nixpkgs/pkgs/comments/flake.lock)0
-rw-r--r--pkgs/sources/comments/flake.nix (renamed from sys/nixpkgs/pkgs/comments/flake.nix)0
-rw-r--r--pkgs/sources/comments/src/info_json.rs (renamed from sys/nixpkgs/pkgs/comments/src/info_json.rs)0
-rw-r--r--pkgs/sources/comments/src/main.rs (renamed from sys/nixpkgs/pkgs/comments/src/main.rs)0
-rwxr-xr-xpkgs/sources/comments/update.sh (renamed from sys/nixpkgs/pkgs/comments/update.sh)0
-rw-r--r--pkgs/sources/default.nix (renamed from sys/nixpkgs/pkgs/default.nix)5
-rw-r--r--pkgs/sources/generate_moz_extension/.envrc (renamed from sys/nixpkgs/pkgs/generate_moz_extension/.envrc)0
-rw-r--r--pkgs/sources/generate_moz_extension/.gitignore (renamed from sys/nixpkgs/pkgs/generate_moz_extension/.gitignore)0
-rw-r--r--pkgs/sources/generate_moz_extension/Cargo.lock (renamed from sys/nixpkgs/pkgs/generate_moz_extension/Cargo.lock)0
-rw-r--r--pkgs/sources/generate_moz_extension/Cargo.toml (renamed from sys/nixpkgs/pkgs/generate_moz_extension/Cargo.toml)0
-rw-r--r--pkgs/sources/generate_moz_extension/default.nix (renamed from sys/nixpkgs/pkgs/generate_moz_extension/default.nix)0
-rwxr-xr-xpkgs/sources/generate_moz_extension/examples/generate_extensions.sh (renamed from sys/nixpkgs/pkgs/generate_moz_extension/examples/generate_extensions.sh)0
-rw-r--r--pkgs/sources/generate_moz_extension/flake.lock (renamed from sys/nixpkgs/pkgs/generate_moz_extension/flake.lock)0
-rw-r--r--pkgs/sources/generate_moz_extension/flake.nix (renamed from sys/nixpkgs/pkgs/generate_moz_extension/flake.nix)0
-rw-r--r--pkgs/sources/generate_moz_extension/generate_firefox_extensions.nix (renamed from sys/nixpkgs/pkgs/generate_moz_extension/generate_firefox_extensions.nix)0
-rw-r--r--pkgs/sources/generate_moz_extension/res/generate_extensions.py (renamed from sys/nixpkgs/pkgs/generate_moz_extension/res/generate_extensions.py)0
-rw-r--r--pkgs/sources/generate_moz_extension/res/reference.json (renamed from sys/nixpkgs/pkgs/generate_moz_extension/res/reference.json)0
-rw-r--r--pkgs/sources/generate_moz_extension/res/test.json (renamed from sys/nixpkgs/pkgs/generate_moz_extension/res/test.json)0
-rw-r--r--pkgs/sources/generate_moz_extension/src/main.rs (renamed from sys/nixpkgs/pkgs/generate_moz_extension/src/main.rs)0
-rw-r--r--pkgs/sources/generate_moz_extension/src/types.rs (renamed from sys/nixpkgs/pkgs/generate_moz_extension/src/types.rs)0
-rwxr-xr-xpkgs/sources/generate_moz_extension/update.sh (renamed from sys/nixpkgs/pkgs/generate_moz_extension/update.sh)0
-rw-r--r--pkgs/sources/lf-make-map/.envrc (renamed from sys/nixpkgs/pkgs/lf-make-map/.envrc)0
-rw-r--r--pkgs/sources/lf-make-map/.gitignore (renamed from sys/nixpkgs/pkgs/lf-make-map/.gitignore)0
-rw-r--r--pkgs/sources/lf-make-map/Cargo.lock (renamed from sys/nixpkgs/pkgs/lf-make-map/Cargo.lock)0
-rw-r--r--pkgs/sources/lf-make-map/Cargo.toml (renamed from sys/nixpkgs/pkgs/lf-make-map/Cargo.toml)0
-rw-r--r--pkgs/sources/lf-make-map/README.md (renamed from sys/nixpkgs/pkgs/lf-make-map/README.md)0
-rw-r--r--pkgs/sources/lf-make-map/default.nix (renamed from sys/nixpkgs/pkgs/lf-make-map/default.nix)0
-rw-r--r--pkgs/sources/lf-make-map/flake.lock (renamed from sys/nixpkgs/pkgs/lf-make-map/flake.lock)0
-rw-r--r--pkgs/sources/lf-make-map/flake.nix (renamed from sys/nixpkgs/pkgs/lf-make-map/flake.nix)0
-rw-r--r--pkgs/sources/lf-make-map/lf_make_map.nix (renamed from sys/nixpkgs/pkgs/lf-make-map/lf_make_map.nix)0
-rw-r--r--pkgs/sources/lf-make-map/src/cli.rs (renamed from sys/nixpkgs/pkgs/lf-make-map/src/cli.rs)0
-rw-r--r--pkgs/sources/lf-make-map/src/main.rs (renamed from sys/nixpkgs/pkgs/lf-make-map/src/main.rs)0
-rw-r--r--pkgs/sources/lf-make-map/src/mapping/map_tree/display.rs (renamed from sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/display.rs)0
-rw-r--r--pkgs/sources/lf-make-map/src/mapping/map_tree/iterator.rs (renamed from sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/iterator.rs)0
-rw-r--r--pkgs/sources/lf-make-map/src/mapping/map_tree/lf_mapping.rs (renamed from sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/lf_mapping.rs)0
-rw-r--r--pkgs/sources/lf-make-map/src/mapping/map_tree/mod.rs (renamed from sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/mod.rs)0
-rw-r--r--pkgs/sources/lf-make-map/src/mapping/mod.rs (renamed from sys/nixpkgs/pkgs/lf-make-map/src/mapping/mod.rs)0
-rwxr-xr-xpkgs/sources/lf-make-map/update.sh (renamed from sys/nixpkgs/pkgs/lf-make-map/update.sh)0
-rw-r--r--pkgs/sources/plgs-pkgs/README.md (renamed from sys/nixpkgs/pkgs/plgs-pkgs/README.md)0
-rw-r--r--pkgs/sources/plgs-pkgs/check.nix (renamed from sys/nixpkgs/pkgs/plgs-pkgs/check.nix)0
-rw-r--r--pkgs/sources/plgs-pkgs/default.nix (renamed from sys/nixpkgs/pkgs/plgs-pkgs/default.nix)0
-rw-r--r--pkgs/sources/plgs-pkgs/overrides.nix (renamed from sys/nixpkgs/pkgs/plgs-pkgs/overrides.nix)0
-rw-r--r--pkgs/sources/plgs-pkgs/plugins/.plugins.json (renamed from sys/nixpkgs/pkgs/plgs-pkgs/plugins/.plugins.json)0
-rw-r--r--pkgs/sources/plgs-pkgs/plugins/blacklist.txt (renamed from sys/nixpkgs/pkgs/plgs-pkgs/plugins/blacklist.txt)0
-rw-r--r--pkgs/sources/plgs-pkgs/plugins/default.nix (renamed from sys/nixpkgs/pkgs/plgs-pkgs/plugins/default.nix)0
-rw-r--r--pkgs/sources/plgs-pkgs/plugins/manifest.txt (renamed from sys/nixpkgs/pkgs/plgs-pkgs/plugins/manifest.txt)0
-rw-r--r--pkgs/sources/plgs-pkgs/plugins/plugins.md (renamed from sys/nixpkgs/pkgs/plgs-pkgs/plugins/plugins.md)0
-rw-r--r--pkgs/sources/plgs-pkgs/plugins/whitelist.txt (renamed from sys/nixpkgs/pkgs/plgs-pkgs/plugins/whitelist.txt)0
-rwxr-xr-xpkgs/sources/plgs-pkgs/update.sh (renamed from sys/nixpkgs/pkgs/plgs-pkgs/update.sh)0
-rw-r--r--pkgs/sources/scripts/default.nix (renamed from sys/nixpkgs/pkgs/scripts/default.nix)46
-rwxr-xr-xpkgs/sources/scripts/source/apps/aumo.sh (renamed from sys/nixpkgs/pkgs/scripts/source/apps/aumo.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/apps/con2pdf.sh (renamed from sys/nixpkgs/pkgs/scripts/source/apps/con2pdf.sh)0
-rw-r--r--pkgs/sources/scripts/source/apps/fupdate.1.md (renamed from sys/nixpkgs/pkgs/scripts/source/apps/fupdate.1.md)0
-rwxr-xr-xpkgs/sources/scripts/source/apps/fupdate.sh (renamed from sys/nixpkgs/pkgs/scripts/source/apps/fupdate.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/apps/git-edit-index.sh (renamed from sys/nixpkgs/pkgs/scripts/source/apps/git-edit-index.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/small_functions/brightness.sh80
-rwxr-xr-xpkgs/sources/scripts/source/small_functions/nato.py (renamed from sys/nixpkgs/pkgs/scripts/source/small_functions/nato.py)0
-rwxr-xr-xpkgs/sources/scripts/source/small_functions/screenshot_persistent.sh (renamed from sys/nixpkgs/pkgs/scripts/source/small_functions/screenshot_persistent.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/small_functions/screenshot_temporary.sh (renamed from sys/nixpkgs/pkgs/scripts/source/small_functions/screenshot_temporary.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/small_functions/update-sys.sh (renamed from sys/nixpkgs/pkgs/scripts/source/small_functions/update-sys.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/neorg_id_function.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/neorg_id_function.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/add.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/add.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/context.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/context.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/dmenu.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/dmenu.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/f_start.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/f_start.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/f_stop.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/f_stop.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/list.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/list.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/project.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/project.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/review.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/review.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/utils.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/utils.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/functions/workspace.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/workspace.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/neorg/sh/main.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/main.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/spodi/sh/download.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/spodi/sh/download.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/spodi/sh/update.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/spodi/sh/update.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/spodi/spodi.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/spodi/spodi.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/specific/ytcc/description.sh (renamed from sys/nixpkgs/pkgs/scripts/source/specific/ytcc/description.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/battery.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/battery.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/hibernate.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/hibernate.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/ll.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/ll.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/lock.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/lock.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/lyrics.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/lyrics.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/mpc-fav.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/mpc-fav.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/mpc-rm.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/mpc-rm.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/mpc.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/mpc.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/show.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/show.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/sort_song.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/sort_song.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/virsh-del.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/virsh-del.sh)0
-rwxr-xr-xpkgs/sources/scripts/source/wrappers/yti.sh (renamed from sys/nixpkgs/pkgs/scripts/source/wrappers/yti.sh)0
-rw-r--r--pkgs/sources/snap-sync-forked/default.nix (renamed from sys/nixpkgs/pkgs/snap-sync-forked/default.nix)0
-rwxr-xr-xpkgs/sources/snap-sync-forked/snap-sync-forked.sh (renamed from sys/nixpkgs/pkgs/snap-sync-forked/snap-sync-forked.sh)0
-rw-r--r--pkgs/sources/tree-sitter-yts/.editorconfig (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/.editorconfig)0
-rw-r--r--pkgs/sources/tree-sitter-yts/.envrc (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/.envrc)0
-rw-r--r--pkgs/sources/tree-sitter-yts/.gitignore (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/.gitignore)0
-rw-r--r--pkgs/sources/tree-sitter-yts/Cargo.toml (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/Cargo.toml)0
-rw-r--r--pkgs/sources/tree-sitter-yts/binding.gyp (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/binding.gyp)0
-rw-r--r--pkgs/sources/tree-sitter-yts/bindings/node/binding.cc (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/bindings/node/binding.cc)0
-rw-r--r--pkgs/sources/tree-sitter-yts/bindings/node/index.js (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/bindings/node/index.js)0
-rw-r--r--pkgs/sources/tree-sitter-yts/bindings/rust/build.rs (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/bindings/rust/build.rs)0
-rw-r--r--pkgs/sources/tree-sitter-yts/bindings/rust/lib.rs (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/bindings/rust/lib.rs)0
-rw-r--r--pkgs/sources/tree-sitter-yts/corpus/comments.txt (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/corpus/comments.txt)0
-rw-r--r--pkgs/sources/tree-sitter-yts/corpus/comments_correct.txt (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/corpus/comments_correct.txt)0
-rw-r--r--pkgs/sources/tree-sitter-yts/corpus/duration.txt (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/corpus/duration.txt)0
-rw-r--r--pkgs/sources/tree-sitter-yts/corpus/url.txt (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/corpus/url.txt)0
-rw-r--r--pkgs/sources/tree-sitter-yts/default.nix (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/default.nix)0
-rw-r--r--pkgs/sources/tree-sitter-yts/flake.lock (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/flake.lock)0
-rw-r--r--pkgs/sources/tree-sitter-yts/flake.nix (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/flake.nix)0
-rw-r--r--pkgs/sources/tree-sitter-yts/grammar.js (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/grammar.js)0
-rw-r--r--pkgs/sources/tree-sitter-yts/highlight.yts (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/highlight.yts)0
-rw-r--r--pkgs/sources/tree-sitter-yts/package.json (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/package.json)0
-rw-r--r--pkgs/sources/tree-sitter-yts/package.nix (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/package.nix)0
-rw-r--r--pkgs/sources/tree-sitter-yts/queries/highlights.scm (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/queries/highlights.scm)0
-rw-r--r--pkgs/sources/tree-sitter-yts/src/grammar.json (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/src/grammar.json)0
-rw-r--r--pkgs/sources/tree-sitter-yts/src/node-types.json (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/src/node-types.json)0
-rw-r--r--pkgs/sources/tree-sitter-yts/src/parser.c (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/src/parser.c)0
-rw-r--r--pkgs/sources/tree-sitter-yts/src/tree_sitter/parser.h (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/src/tree_sitter/parser.h)0
-rw-r--r--pkgs/sources/tree-sitter-yts/treefmt.toml (renamed from sys/nixpkgs/pkgs/tree-sitter-yts/treefmt.toml)0
-rwxr-xr-xpkgs/sources/update_pkgs.sh (renamed from sys/nixpkgs/pkgs/update_pkgs.sh)0
-rw-r--r--pkgs/sources/update_vim_plugins/.envrc (renamed from sys/nixpkgs/pkgs/update_vim_plugins/.envrc)0
-rwxr-xr-xpkgs/sources/update_vim_plugins/check-duplicates.sh (renamed from sys/nixpkgs/pkgs/update_vim_plugins/check-duplicates.sh)0
-rw-r--r--pkgs/sources/update_vim_plugins/default.nix (renamed from sys/nixpkgs/pkgs/update_vim_plugins/default.nix)0
-rw-r--r--pkgs/sources/update_vim_plugins/flake.lock (renamed from sys/nixpkgs/pkgs/update_vim_plugins/flake.lock)0
-rw-r--r--pkgs/sources/update_vim_plugins/flake.nix (renamed from sys/nixpkgs/pkgs/update_vim_plugins/flake.nix)0
-rw-r--r--pkgs/sources/update_vim_plugins/package.nix (renamed from sys/nixpkgs/pkgs/update_vim_plugins/package.nix)0
-rw-r--r--pkgs/sources/update_vim_plugins/poetry.lock (renamed from sys/nixpkgs/pkgs/update_vim_plugins/poetry.lock)0
-rw-r--r--pkgs/sources/update_vim_plugins/pyproject.toml (renamed from sys/nixpkgs/pkgs/update_vim_plugins/pyproject.toml)0
-rwxr-xr-xpkgs/sources/update_vim_plugins/update.sh (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update.sh)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/__init__.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/__init__.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/__main__.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/__main__.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/cleanup.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/cleanup.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/helpers.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/helpers.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/nix.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/nix.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/plugin.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/plugin.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/spec.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/spec.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/tests/__init__.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/__init__.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/tests/fixtures.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/fixtures.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_nix.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/test_nix.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_plugin.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/test_plugin.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_spec.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/test_spec.py)0
-rw-r--r--pkgs/sources/update_vim_plugins/update_vim_plugins/update.py (renamed from sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/update.py)0
-rwxr-xr-xpkgs/sources/yt/.env (renamed from sys/nixpkgs/pkgs/yt/.env)0
-rw-r--r--pkgs/sources/yt/.envrc (renamed from sys/nixpkgs/pkgs/yt/.envrc)0
-rw-r--r--pkgs/sources/yt/.gitignore (renamed from sys/nixpkgs/pkgs/yt/.gitignore)0
-rw-r--r--pkgs/sources/yt/Cargo.lock (renamed from sys/nixpkgs/pkgs/yt/Cargo.lock)0
-rw-r--r--pkgs/sources/yt/Cargo.toml (renamed from sys/nixpkgs/pkgs/yt/Cargo.toml)0
-rw-r--r--pkgs/sources/yt/default.nix (renamed from sys/nixpkgs/pkgs/yt/default.nix)0
-rw-r--r--pkgs/sources/yt/flake.lock (renamed from sys/nixpkgs/pkgs/yt/flake.lock)0
-rw-r--r--pkgs/sources/yt/flake.nix (renamed from sys/nixpkgs/pkgs/yt/flake.nix)0
-rw-r--r--pkgs/sources/yt/src/bin/yt/main.rs (renamed from sys/nixpkgs/pkgs/yt/src/bin/yt/main.rs)0
-rw-r--r--pkgs/sources/yt/src/bin/ytc/args.rs (renamed from sys/nixpkgs/pkgs/yt/src/bin/ytc/args.rs)0
-rw-r--r--pkgs/sources/yt/src/bin/ytc/main.rs (renamed from sys/nixpkgs/pkgs/yt/src/bin/ytc/main.rs)0
-rw-r--r--pkgs/sources/yt/src/bin/yts/args.rs (renamed from sys/nixpkgs/pkgs/yt/src/bin/yts/args.rs)0
-rw-r--r--pkgs/sources/yt/src/bin/yts/main.rs (renamed from sys/nixpkgs/pkgs/yt/src/bin/yts/main.rs)0
-rw-r--r--pkgs/sources/yt/src/constants.rs (renamed from sys/nixpkgs/pkgs/yt/src/constants.rs)0
-rw-r--r--pkgs/sources/yt/src/downloader.rs (renamed from sys/nixpkgs/pkgs/yt/src/downloader.rs)0
-rw-r--r--pkgs/sources/yt/src/help.str (renamed from sys/nixpkgs/pkgs/yt/src/help.str)0
-rw-r--r--pkgs/sources/yt/src/lib.rs (renamed from sys/nixpkgs/pkgs/yt/src/lib.rs)0
-rw-r--r--pkgs/sources/yt/todo1
-rwxr-xr-xpkgs/sources/yt/update.sh (renamed from sys/nixpkgs/pkgs/yt/update.sh)0
-rw-r--r--pkgs/sources/yt/yt.nix (renamed from sys/nixpkgs/pkgs/yt/yt.nix)0
-rw-r--r--pkgs/sources/yt/ytc.nix (renamed from sys/nixpkgs/pkgs/yt/ytc.nix)0
-rw-r--r--pkgs/sources/yt/yts.nix (renamed from sys/nixpkgs/pkgs/yt/yts.nix)0
-rw-r--r--sys/boot/default.nix117
-rw-r--r--sys/default.nix28
-rw-r--r--sys/documentation/default.nix15
-rw-r--r--sys/font/default.nix38
-rw-r--r--sys/git_revision/default.nix8
-rw-r--r--sys/hardware/default.nix44
-rw-r--r--sys/impermanence/default.nix41
-rw-r--r--sys/network/default.nix51
-rw-r--r--sys/options/default.nix26
-rw-r--r--sys/options/secret.nixbin25 -> 0 bytes
-rw-r--r--sys/polkit/default.nix3
-rw-r--r--sys/power/default.nix19
-rw-r--r--sys/secrets/default.nix77
-rw-r--r--sys/sound/default.nix26
-rw-r--r--sys/svcs/dconf/default.nix10
-rw-r--r--sys/svcs/fwupd/default.nix3
-rw-r--r--sys/svcs/postgresql/default.nix5
-rw-r--r--sys/svcs/printing/default.nix31
-rw-r--r--sys/svcs/scanning/default.nix12
-rw-r--r--sys/svcs/snapper/default.nix41
-rw-r--r--sys/tempfiles/default.nix6
-rw-r--r--sys/users/default.nix45
253 files changed, 1034 insertions, 697 deletions
diff --git a/sys/boot/boot_pictures/gnu.png b/modules/system/boot/boot_pictures/gnu.png
index d07dee3e..d07dee3e 100755
--- a/sys/boot/boot_pictures/gnu.png
+++ b/modules/system/boot/boot_pictures/gnu.png
Binary files differdiff --git a/sys/boot/boot_pictures/gnulin_emb_1.png b/modules/system/boot/boot_pictures/gnulin_emb_1.png
index 483f2681..483f2681 100755
--- a/sys/boot/boot_pictures/gnulin_emb_1.png
+++ b/modules/system/boot/boot_pictures/gnulin_emb_1.png
Binary files differdiff --git a/sys/boot/boot_pictures/gnulin_emb_2.png b/modules/system/boot/boot_pictures/gnulin_emb_2.png
index 48cd6ad7..48cd6ad7 100755
--- a/sys/boot/boot_pictures/gnulin_emb_2.png
+++ b/modules/system/boot/boot_pictures/gnulin_emb_2.png
Binary files differdiff --git a/modules/system/boot/default.nix b/modules/system/boot/default.nix
new file mode 100644
index 00000000..1e6fa99b
--- /dev/null
+++ b/modules/system/boot/default.nix
@@ -0,0 +1,129 @@
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}: let
+  cfg = config.soispha.boot;
+in {
+  options.soispha.boot = {
+    enable = lib.mkEnableOption "Bootloader configuration";
+    # TODO: Add this option <2024-05-16>
+    # enableIsoEntry = lib.mkEnableOption "an tails iso boot entry";
+  };
+
+  config = lib.mkIf cfg.enable (
+    # let
+    # cfg = config.boot.loader.systemd-boot;
+    # inherit (config.boot.loader) efi;
+    #
+    # esa = n: lib.strings.escapeShellArg n;
+    #
+    # bootMountPoint =
+    #   if cfg.xbootldrMountPoint != null
+    #   then cfg.xbootldrMountPoint
+    #   else efi.efiSysMountPoint;
+    #
+    # nixosDir = "/EFI/nixos";
+    #
+    # # FIXME: This system has two big problems:
+    # # 1. It does not updated files, which still have the same name
+    # # 2. It forgets about files, which were 'deleted' in this configuration (these just
+    # #    stay on disk forever) <2024-05-11>
+    # copyExtraFiles = ''
+    #   echo "[systemd-boot] copying files to ${bootMountPoint}"
+    #   empty_file=$(mktemp)
+    #
+    #   ${lib.concatStrings (lib.mapAttrsToList (n: v:
+    #     /*
+    #     bash
+    #     */
+    #     ''
+    #       if ! [ -e ${esa "${bootMountPoint}/${n}"} ]; then
+    #         install -Dp "${v}" ${esa "${bootMountPoint}/${n}"}
+    #         install -D "$empty_file" ${esa "${bootMountPoint}/${nixosDir}/.extra-files/${n}"}
+    #       fi
+    #     '')
+    #   cfg.extraFiles)}
+    #
+    #   ${lib.concatStrings (lib.mapAttrsToList (n: v:
+    #     /*
+    #     bash
+    #     */
+    #     ''
+    #       # if ! [ -e ${esa "${bootMountPoint}/loader/entries/${n}"} ]; then
+    #         install -Dp "${pkgs.writeText n v}" ${esa "${bootMountPoint}/loader/entries/${n}"}
+    #         install -D "$empty_file" ${esa "${bootMountPoint}/${nixosDir}/.extra-files/loader/entries/${n}"}
+    #       # fi
+    #     '')
+    #   cfg.extraEntries)}
+    # '';
+    # in
+    {
+      # FIXME: Reactviate this whole iso thing when a disko redeploy is done.
+      # (and switch to tails instead of arch) <2024-05-12>
+      #
+      # system.activationScripts = {
+      #   copyExtraFilesForBoot = copyExtraFiles;
+      # };
+
+      boot = {
+        initrd = {
+          kernelModules = ["nvme" "btrfs"];
+        };
+
+        kernelPackages = pkgs.linuxPackages_latest;
+
+        lanzaboote = {
+          enable = true;
+          pkiBundle = "/etc/secureboot";
+
+          settings = {
+            # Disable editing the kernel command line (which could allow someone to become root)
+            editor = false;
+          };
+        };
+
+        loader = {
+          systemd-boot = {
+            # Lanzaboote currently replaces the systemd-boot module.
+            # This setting is usually set to true in configuration.nix
+            # generated at installation time. So we force it to false
+            # for now.
+            enable = false;
+
+            # extraEntries = {
+            #   "live.conf" = ''
+            #     title Archlinux Live ISO
+            #     linux /live/vmlinuz-linux
+            #     initrd /live/initramfs-linux.img
+            #     options img_dev=${config.soispha.disks.disk} img_loop=/archlinux.iso copytoram
+            #   '';
+            # };
+            #
+            # extraFiles = let
+            #   iso = import ./archlive_iso.nix {inherit pkgs;};
+            # in {
+            #   "archlinux.iso" = "${iso}/archlinux.iso";
+            #   "live/initramfs-linux.img" = "${iso}/live/initramfs-linux.img";
+            #   "live/vmlinuz-linux" = "${iso}/live/vmlinuz-linux";
+            # };
+          };
+
+          grub = {
+            enable = false;
+            # theme = pkgs.nixos-grub2-theme;
+            splashImage = ./boot_pictures/gnu.png;
+            efiSupport = true;
+            device = "nodev"; # only for efi
+          };
+
+          efi = {
+            canTouchEfiVariables = true;
+            efiSysMountPoint = "/boot";
+          };
+        };
+      };
+    }
+  );
+}
diff --git a/sys/boot/archlive_iso.nix b/modules/system/boot/iso_entry/archlive_iso.nix
index d19a4a87..d19a4a87 100644
--- a/sys/boot/archlive_iso.nix
+++ b/modules/system/boot/iso_entry/archlive_iso.nix
diff --git a/sys/boot/signing_key.nix b/modules/system/boot/iso_entry/signing_key.nix
index 788447be..788447be 100644
--- a/sys/boot/signing_key.nix
+++ b/modules/system/boot/iso_entry/signing_key.nix
diff --git a/modules/system/cleanup/default.nix b/modules/system/cleanup/default.nix
new file mode 100644
index 00000000..4e192f7d
--- /dev/null
+++ b/modules/system/cleanup/default.nix
@@ -0,0 +1,18 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.cleanup;
+in {
+  # remove all the bloat, which NixOS installs by default
+  options.soispha.cleanup = {
+    enable = lib.mkEnableOption "avoiding of nixos' default installed packages";
+  };
+
+  config = lib.mkIf cfg.enable {
+    environment = {
+      defaultPackages = lib.mkForce [];
+    };
+  };
+}
diff --git a/modules/system/default.nix b/modules/system/default.nix
new file mode 100644
index 00000000..0eef0b7f
--- /dev/null
+++ b/modules/system/default.nix
@@ -0,0 +1,26 @@
+{config, ...}: let
+  cfg = config.soispha;
+in {
+  imports = [
+    ./boot
+    ./cleanup
+    ./disks
+    ./documentation
+    ./fonts
+    ./hardware
+    ./impermanence
+    ./locale
+    ./networking
+    ./polkit
+    ./power
+    ./secrets
+    ./services
+    ./sound
+    ./tempfiles
+    ./users
+    ./version
+    ./waydroid
+  ];
+  options = {};
+  config = {};
+}
diff --git a/sys/disks/default.nix b/modules/system/disks/default.nix
index 2283db96..c0e5bcfd 100644
--- a/sys/disks/default.nix
+++ b/modules/system/disks/default.nix
@@ -14,29 +14,25 @@
 in {
   options.soispha.disks = {
     enable = lib.mkEnableOption "disk setup with disko";
+
     disk = lib.mkOption {
       type = lib.types.path;
       example = lib.literalExpression "/dev/disk/by-uuid/0442cb6d-f13a-4635-b487-fa76189774c5";
-      description = ''
-        The disk used for installing the OS.
-      '';
-    };
-    ssd = lib.mkOption {
-      type = lib.types.bool;
-      example = lib.literalExpression "true";
-      default = false;
-      description = lib.mdDoc "Enable ssd specific improvements, like trim";
+      description = "The disk used for installing the OS.";
     };
+
+    ssd = lib.mkEnableOption "ssd specific improvements, like trim";
+
     swap = {
       uuid = lib.mkOption {
         type = lib.types.str;
         example = lib.literalExpression "d1d20ae7-3d8a-44da-86da-677dbbb10c89";
-        description = lib.mdDoc "The uuid of the swapfile";
+        description = "The uuid of the swapfile";
       };
       resumeOffset = lib.mkOption {
         type = lib.types.str;
         example = lib.literalExpression "134324224";
-        description = lib.mdDoc "The resume offset of the swapfile";
+        description = "The resume offset of the swapfile";
       };
     };
   };
diff --git a/sys/disks/fstrim.nix b/modules/system/disks/fstrim.nix
index 6daeb65e..6daeb65e 100644
--- a/sys/disks/fstrim.nix
+++ b/modules/system/disks/fstrim.nix
diff --git a/sys/disks/hibernate.nix b/modules/system/disks/hibernate.nix
index ad7ca12c..a50e5b57 100644
--- a/sys/disks/hibernate.nix
+++ b/modules/system/disks/hibernate.nix
@@ -12,6 +12,7 @@
         ExecStart = "${pkgs.bash}/bin/bash -c \"${pkgs.util-linux}/bin/swapon /swap/swapfile && ${pkgs.util-linux}/bin/swapoff /dev/zram0\"";
       };
     };
+
     hibernate-resume = {
       wantedBy = ["systemd-hibernate.service"];
       unitConfig = {
diff --git a/modules/system/documentation/default.nix b/modules/system/documentation/default.nix
new file mode 100644
index 00000000..0e998d6c
--- /dev/null
+++ b/modules/system/documentation/default.nix
@@ -0,0 +1,24 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.documentation;
+in {
+  options.soispha.documentation = {
+    enable = lib.mkEnableOption "documentation";
+  };
+  config = lib.mkIf cfg.enable {
+    documentation = {
+      nixos = {
+        includeAllModules = true;
+
+        enable = true;
+      };
+      dev = {
+        # Add man pages aimed at developers (I guess c library stuff, and the like)
+        enable = true;
+      };
+    };
+  };
+}
diff --git a/modules/system/fonts/default.nix b/modules/system/fonts/default.nix
new file mode 100644
index 00000000..fa99c1f3
--- /dev/null
+++ b/modules/system/fonts/default.nix
@@ -0,0 +1,55 @@
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}: let
+  cfg = config.soispha.fonts;
+in {
+  options.soispha.fonts = {
+    enable = lib.mkEnableOption "fonts";
+
+    fonts = lib.mkOption {
+      type = lib.types.listOf lib.types.path;
+      example = lib.literalExpression ''["SourceCodePro" "Overpass" "FiraCode"]'';
+      default = [
+        "SourceCodePro"
+        "Overpass"
+      ];
+      description = "The nerd-fonts to install";
+    };
+
+    enableEmoji = lib.mkEnableOpiton "emoji font support";
+  };
+
+  config = lib.mkIf cfg.enable {
+    fonts = {
+      packages = let
+        nerdFont = pkgs.nerdfonts.override {
+          inherit (cfg) fonts;
+        };
+      in
+        [
+          nerdFont
+        ]
+        ++ (with pkgs; [liberation_ttf])
+        ++ lib.optional cfg.enableEmoji pkgs.noto-fonts-emoji;
+
+      fontconfig = {
+        # NOTE: This is responsible for color emoji support <2023-08-28>
+        # WARNING: This could lead to broken font rendering, if the emoji font is used as
+        # a fallback for normal characters <2024-05-16>
+        localConf = lib.mkIf cfg.enableEmoji (builtins.readFile ./emoji_font.xml);
+
+        defaultFonts = {
+          serif = lib.mkForce ["Liberation Serif"] ++ lib.optional cfg.enableEmoji "Noto Color Emoji";
+          sansSerif = lib.mkForce ["Overpass Nerd Font Propo"] ++ lib.optional cfg.enableEmoji "Noto Color Emoji";
+          monospace = lib.mkForce ["SauceCodePro Nerd Font Mono"] ++ lib.optional cfg.enableEmoji "Noto Color Emoji";
+          emoji = lib.mkIf cfg.enableEmoji (lib.mkForce ["Noto Color Emoji"]);
+        };
+        allowType1 = false;
+        allowBitmaps = false;
+      };
+    };
+  };
+}
diff --git a/sys/font/font.xml b/modules/system/fonts/emoji_font.xml
index f3f6bb3e..f3f6bb3e 100644
--- a/sys/font/font.xml
+++ b/modules/system/fonts/emoji_font.xml
diff --git a/modules/system/hardware/default.nix b/modules/system/hardware/default.nix
new file mode 100644
index 00000000..acf9fb2e
--- /dev/null
+++ b/modules/system/hardware/default.nix
@@ -0,0 +1,68 @@
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}: let
+  cfg = config.soispha.hardware;
+in {
+  options.soispha.hardware = {
+    enable = lib.mkEnableOption "udev rules for devices I use";
+    moonlander = {
+      enableLiveTraining = lib.mkEnableOption "udev rules for live training";
+      enableFlashing = lib.mkEnableOption "udev rules for firmware flashing";
+    };
+  };
+
+  config = lib.mkIf cfg.enable {
+    hardware = {
+      keyboard.zsa.enable = false;
+      nitrokey.enable = true;
+
+      # TODO: Remove this once I know, that it is no longer necessary <2024-05-16>
+      onlykey.enable = true;
+
+      opengl = {
+        enable = true;
+        extraPackages = builtins.attrValues {
+          inherit
+            (pkgs)
+            vaapiVdpau
+            libvdpau-va-gl
+            ;
+        };
+      };
+    };
+
+    # TODO: Remove the support for the old keyboards <2024-05-16>
+    services.udev.extraRules =
+      lib.mkIf cfg.moonlander.enableLiveTraining ''
+        # Rules for Oryx web flashing and live training
+        KERNEL=="hidraw*", ATTRS{idVendor}=="16c0", MODE="0664", GROUP="plugdev"
+        KERNEL=="hidraw*", ATTRS{idVendor}=="3297", MODE="0664", GROUP="plugdev"
+
+        # Legacy rules for live training over webusb (Not needed for firmware v21+)
+          # Rule for all ZSA keyboards
+          SUBSYSTEM=="usb", ATTR{idVendor}=="3297", GROUP="plugdev"
+          # Rule for the Moonlander
+          SUBSYSTEM=="usb", ATTR{idVendor}=="3297", ATTR{idProduct}=="1969", GROUP="plugdev"
+          # Rule for the Ergodox EZ
+          SUBSYSTEM=="usb", ATTR{idVendor}=="feed", ATTR{idProduct}=="1307", GROUP="plugdev"
+          # Rule for the Planck EZ
+          SUBSYSTEM=="usb", ATTR{idVendor}=="feed", ATTR{idProduct}=="6060", GROUP="plugdev"
+      ''
+      + lib.mkIf cfg.moonlander.enableFlashing
+      ''
+        # Wally Flashing rules for the Ergodox EZ
+        ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", ENV{ID_MM_DEVICE_IGNORE}="1"
+        ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", ENV{MTP_NO_PROBE}="1"
+        SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789ABCD]?", MODE:="0666"
+        KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", MODE:="0666"
+
+        # Wally Flashing rules for the Moonlander and Planck EZ
+        SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", \
+            MODE:="0666", \
+            SYMLINK+="stm32_dfu"
+      '';
+  };
+}
diff --git a/modules/system/impermanence/default.nix b/modules/system/impermanence/default.nix
new file mode 100644
index 00000000..dca30083
--- /dev/null
+++ b/modules/system/impermanence/default.nix
@@ -0,0 +1,55 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.impermanence;
+in {
+  options.soispha.impermanence = {
+    enable = lib.mkEnableOption "persisting directories and files with impermanence";
+
+    directories = lib.mkOption {
+      type = lib.types.listOf lib.types.str;
+      default =
+        [
+          "/etc/nixos"
+          "/var/log"
+          "/var/lib/systemd"
+        ]
+        ++ lib.optional config.networking.networkmanager.enable "/etc/NetworkManager"
+        ++ lib.optional config.boot.lanzaboote.enable "/etc/secureboot"
+        ++ lib.optional config.hardware.bluetooth.enable "/var/lib/bluetooth"
+        ++ lib.optional config.virtualisation.waydroid.enable "/var/lib/waydroid"
+        ++ lib.optional config.services.postgresql.enable "/var/lib/postgresql";
+
+      defaultText = lib.literalExpression ''
+        [
+          "/etc/nixos"
+          "/var/log"
+          "/var/lib/systemd"
+        ]
+        ++ lib.optional config.networking.networkmanager.enable "/etc/NetworkManager"
+        ++ lib.optional config.boot.lanzaboote.enable "/etc/secureboot"
+        ++ lib.optional config.hardware.bluetooth.enable "/var/lib/bluetooth"
+        ++ lib.optional config.virtualisation.waydroid.enable "/var/lib/waydroid"
+        ++ lib.optional config.services.postgresql.enable "/var/lib/postgresql"
+      '';
+      description = "The directories to persist";
+    };
+  };
+
+  config = lib.mkIf cfg.enable {
+    # needed for the hm impermanence config
+    programs.fuse.userAllowOther = true;
+
+    environment.persistence = {
+      "/srv" = {
+        hideMounts = true;
+        inherit (cfg) directories;
+        files = [
+          "/etc/machine-id"
+        ];
+      };
+    };
+  };
+}
diff --git a/sys/libvirtd/default.nix b/modules/system/libvirtd/default.nix
index 5c519550..5c519550 100644
--- a/sys/libvirtd/default.nix
+++ b/modules/system/libvirtd/default.nix
diff --git a/sys/locale/default.nix b/modules/system/locale/default.nix
index 7912b45b..10569216 100644
--- a/sys/locale/default.nix
+++ b/modules/system/locale/default.nix
@@ -6,19 +6,27 @@
   cfg = config.soispha.locale;
 in {
   options.soispha.locale = {
-    enable = lib.mkEnableOption (lib.mdDoc "locale");
+    enable = lib.mkEnableOption "locale setup";
+
     keyMap = lib.mkOption {
       type = lib.types.str;
       example = "us";
       default = "dvorak";
+      description = "The console key map language to use";
+    };
+
+    timeZone = lib.mkOption {
+      type = lib.types.str;
+      default = "Europe/Berlin";
+      description = "The time zone to use";
     };
   };
 
   config = lib.mkIf cfg.enable {
-    # Set your time zone.
-    time.timeZone = "Europe/Berlin";
+    time = {
+      inherit (cfg) timeZone;
+    };
 
-    # Select internationalisation properties.
     i18n = {
       defaultLocale = "en_CA.UTF-8";
       extraLocaleSettings = {
@@ -35,7 +43,7 @@ in {
 
     services.xserver.xkb.extraLayouts = {
       "us-modified" = {
-        description = "standard us with german and swedish extra chars.";
+        description = "standard us with caps as compose key.";
         languages = ["eng" "swe" "deu"];
         symbolsFile = ./keymaps/us_modified.xkb;
       };
diff --git a/sys/locale/keymaps/dvorak_modified.xkb b/modules/system/locale/keymaps/dvorak_modified.xkb
index 63f5d4fb..63f5d4fb 100644
--- a/sys/locale/keymaps/dvorak_modified.xkb
+++ b/modules/system/locale/keymaps/dvorak_modified.xkb
diff --git a/sys/locale/keymaps/us_modified.xkb b/modules/system/locale/keymaps/us_modified.xkb
index 6299a5e9..6299a5e9 100644
--- a/sys/locale/keymaps/us_modified.xkb
+++ b/modules/system/locale/keymaps/us_modified.xkb
diff --git a/modules/system/networking/default.nix b/modules/system/networking/default.nix
new file mode 100644
index 00000000..aaaab782
--- /dev/null
+++ b/modules/system/networking/default.nix
@@ -0,0 +1,81 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.networking;
+in {
+  options.soispha.networking = {
+    enable = lib.mkEnableOption "networking";
+
+    networkManager = {
+      enable = lib.mkEnableOption "NetworkManager";
+    };
+
+    hostName = lib.mkOption {
+      type = lib.types.str;
+      example = "apzu";
+      description = "The name of the host";
+    };
+  };
+
+  config =
+    lib.mkIf cfg.enable {
+      systemd.network = {
+        networks = {
+          "tap0" = {
+            name = "tap0";
+            bridge = [
+              "virbr0"
+            ];
+          };
+          "enp4s0" = {
+            name = "enp4s0";
+            networkConfig = {
+              DHCP = "yes";
+              DNSOverTLS = "yes";
+              DNSSEC = "yes";
+            };
+            bridge = [
+              "virbr0"
+            ];
+          };
+        };
+
+        netdevs = {
+          "tap0" = {
+            netdevConfig = {
+              Name = "tap0";
+              Kind = "tap";
+            };
+            tapConfig = {
+              User = "${config.users.users.soispha.uid}";
+              Group = "libvirtd";
+            };
+          };
+          "virbr0" = {
+            netdevConfig = {
+              Name = "br0";
+              Kind = "bridge";
+            };
+          };
+        };
+      };
+    }
+    // lib.mkIf cfg.networkManager.enable {
+      networking = {
+        networkmanager = {
+          enable = true;
+          dns = "default";
+          wifi = {
+            powersave = true;
+          };
+        };
+        inherit (cfg) hostName;
+      };
+
+      users.users.soispha.extraGroups = [
+        "networkmanager" # allows to configure networkmanager as this user
+      ];
+    };
+}
diff --git a/modules/system/polkit/default.nix b/modules/system/polkit/default.nix
new file mode 100644
index 00000000..fb13505b
--- /dev/null
+++ b/modules/system/polkit/default.nix
@@ -0,0 +1,14 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.polkit;
+in {
+  options.soispha.polkit = {
+    enable = lib.mkEnableOption "polkit";
+  };
+  config = lib.mkIf cfg.enable {
+    security.polkit.enable = true;
+  };
+}
diff --git a/modules/system/power/default.nix b/modules/system/power/default.nix
new file mode 100644
index 00000000..13013879
--- /dev/null
+++ b/modules/system/power/default.nix
@@ -0,0 +1,33 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.power;
+in {
+  options.soispha.power = {
+    enable = lib.mkEnableOption "power optimizations";
+  };
+
+  config = lib.mkIf cfg.enable {
+    # see this for reference: https://github.com/NixOS/nixpkgs/issues/211345
+    services = {
+      # conflicts with tlp
+      power-profiles-daemon.enable = false;
+
+      thermald.enable = true;
+
+      tlp = {
+        enable = true;
+        settings = {
+          CPU_BOOST_ON_AC = 1;
+          CPU_BOOST_ON_BAT = 0;
+          CPU_SCALING_GOVERNOR_ON_AC = "performance";
+          CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
+          SATA_LINKPWR_ON_AC = "max_performance";
+          SATA_LINKPWR_ON_BAT = "min_power";
+        };
+      };
+    };
+  };
+}
diff --git a/modules/system/secrets/default.nix b/modules/system/secrets/default.nix
new file mode 100644
index 00000000..bbfaf9c1
--- /dev/null
+++ b/modules/system/secrets/default.nix
@@ -0,0 +1,82 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  inherit (config.networking) hostName;
+  # mkFakeSecret = secretName: {
+  #   name = secretName;
+  #   value = {
+  #     path = "/dev/null";
+  #   };
+  # };
+  # fakeSecrets =
+  #   builtins.listToAttrs (lib.debug.traceValSeqN 2 (builtins.map mkFakeSecret
+  #       (lib.debug.traceValSeqN 2 (builtins.attrNames secrets))));
+  cfg = config.soispha.secrets;
+in {
+  options.soispha.secrets = {
+    enable = lib.mkEnableOption "secrets through agenix";
+  };
+
+  config = lib.mkIf cfg.enable {
+    age = {
+      secrets = {
+        # TODO: Remove this, as I'm no longer using nheko <2024-05-16>
+        nheko = {
+          file = ./nheko/conf. + hostName;
+          mode = "700";
+          owner = "soispha";
+          group = "users";
+        };
+
+        lf_cd_paths = {
+          file = ./lf/cd_paths;
+          mode = "700";
+          owner = "soispha";
+          group = "users";
+        };
+
+        # FIXME: Reactive when serverphone is merged in tree again <2024-05-11>
+        #
+        # serverphoneCa = {
+        #   file = ./serverphone/ca.key;
+        #   mode = "700";
+        #   owner = "serverphone";
+        #   group = "serverphone";
+        # };
+        # serverphoneServer = {
+        #   file = ./serverphone/server.key;
+        #   mode = "700";
+        #   owner = "serverphone";
+        #   group = "serverphone";
+        # };
+
+        taskserverPrivate = {
+          file = ./taskserver/private.key;
+          mode = "700";
+          owner = "soispha";
+          group = "users";
+        };
+        taskserverPublic = {
+          file = ./taskserver/public.cert;
+          mode = "700";
+          owner = "soispha";
+          group = "users";
+        };
+        taskserverCA = {
+          file = ./taskserver/ca.cert;
+          mode = "700";
+          owner = "soispha";
+          group = "users";
+        };
+        taskserverCredentials = {
+          file = ./taskserver/credentials;
+          mode = "700";
+          owner = "soispha";
+          group = "users";
+        };
+      };
+    };
+  };
+}
diff --git a/sys/secrets/lf/cd_paths b/modules/system/secrets/lf/cd_paths
index fff32c61..fff32c61 100644
--- a/sys/secrets/lf/cd_paths
+++ b/modules/system/secrets/lf/cd_paths
diff --git a/sys/secrets/nheko/conf.apzu b/modules/system/secrets/nheko/conf.apzu
index a4f704ea..a4f704ea 100644
--- a/sys/secrets/nheko/conf.apzu
+++ b/modules/system/secrets/nheko/conf.apzu
diff --git a/sys/secrets/nheko/conf.isimud b/modules/system/secrets/nheko/conf.isimud
index ef6c52b6..ef6c52b6 100644
--- a/sys/secrets/nheko/conf.isimud
+++ b/modules/system/secrets/nheko/conf.isimud
diff --git a/sys/secrets/nheko/conf.tiamat b/modules/system/secrets/nheko/conf.tiamat
index 51cab7df..51cab7df 100644
--- a/sys/secrets/nheko/conf.tiamat
+++ b/modules/system/secrets/nheko/conf.tiamat
diff --git a/sys/secrets/secrets.nix b/modules/system/secrets/secrets.nix
index cd6447b7..cd6447b7 100644
--- a/sys/secrets/secrets.nix
+++ b/modules/system/secrets/secrets.nix
diff --git a/sys/secrets/serverphone/ca.key b/modules/system/secrets/serverphone/ca.key
index d49c5395..d49c5395 100644
--- a/sys/secrets/serverphone/ca.key
+++ b/modules/system/secrets/serverphone/ca.key
diff --git a/sys/secrets/serverphone/server.key b/modules/system/secrets/serverphone/server.key
index a2720406..a2720406 100644
--- a/sys/secrets/serverphone/server.key
+++ b/modules/system/secrets/serverphone/server.key
diff --git a/sys/secrets/taskserver/ca.cert b/modules/system/secrets/taskserver/ca.cert
index 203d62a8..203d62a8 100644
--- a/sys/secrets/taskserver/ca.cert
+++ b/modules/system/secrets/taskserver/ca.cert
diff --git a/sys/secrets/taskserver/credentials b/modules/system/secrets/taskserver/credentials
index f3aaf502..f3aaf502 100644
--- a/sys/secrets/taskserver/credentials
+++ b/modules/system/secrets/taskserver/credentials
diff --git a/sys/secrets/taskserver/private.key b/modules/system/secrets/taskserver/private.key
index 5afecdaf..5afecdaf 100644
--- a/sys/secrets/taskserver/private.key
+++ b/modules/system/secrets/taskserver/private.key
diff --git a/sys/secrets/taskserver/public.cert b/modules/system/secrets/taskserver/public.cert
index 1cf9b5f0..1cf9b5f0 100644
--- a/sys/secrets/taskserver/public.cert
+++ b/modules/system/secrets/taskserver/public.cert
diff --git a/sys/secrets/update.sh b/modules/system/secrets/update.sh
index edc4ae8a..edc4ae8a 100755
--- a/sys/secrets/update.sh
+++ b/modules/system/secrets/update.sh
diff --git a/sys/svcs/adb/default.nix b/modules/system/services/adb/default.nix
index 4055dbb1..4055dbb1 100644
--- a/sys/svcs/adb/default.nix
+++ b/modules/system/services/adb/default.nix
diff --git a/sys/svcs/backup/default.nix b/modules/system/services/backup/default.nix
index 91433bf9..705dcf23 100644
--- a/sys/svcs/backup/default.nix
+++ b/modules/system/services/backup/default.nix
@@ -9,16 +9,18 @@
     ${pkgs.snap-sync-forked}/bin/snap-sync-forked --UUID "${cfg.backupDiskUuid}" --noconfirm;
     ${pkgs.util-linux}/bin/umount "/run/media/${cfg.backupDiskUuid}";
   '';
-  cfg = config.soispha.fs.backup;
+
+  cfg = config.soispha.backup;
 in {
-  options.soispha.fs.backup = {
-    enable = lib.mkEnableOption (lib.mdDoc "backups with snap-sync");
+  options.soispha.backup = {
+    enable = lib.mkEnableOption "backups with my forked snap-sync";
     backupDiskUuid = lib.mkOption {
       type = lib.types.str;
       example = lib.literalExpression "d1d20ae7-3d8a-44da-86da-677dbbb10c89";
-      description = lib.mdDoc "The UUID of the backup disk";
+      description = "The UUID of the backup disk";
     };
   };
+
   config = lib.mkIf cfg.enable {
     systemd = {
       services.backup = {
@@ -31,6 +33,7 @@ in {
           ExecStart = "${backup-script}/bin/backsnap";
         };
       };
+
       timers.backup = {
         wantedBy = ["timers.target"];
         unitConfig = {
diff --git a/modules/system/services/dconf/default.nix b/modules/system/services/dconf/default.nix
new file mode 100644
index 00000000..f6598a9b
--- /dev/null
+++ b/modules/system/services/dconf/default.nix
@@ -0,0 +1,7 @@
+{...}: {
+  # needed to make home-manager play nice with some apps. See:
+  # https://nix-community.github.io/home-manager/index.xhtml#_why_do_i_get_an_error_message_about_literal_ca_desrt_dconf_literal_or_literal_dconf_service_literal
+  programs.dconf.enable = true;
+  # FIXME: This should also be parameterized. <2024-05-16>
+}
+# vim: nolinebreak nowrap textwidth=0
diff --git a/sys/svcs/default.nix b/modules/system/services/default.nix
index 56a16055..76ef26e2 100644
--- a/sys/svcs/default.nix
+++ b/modules/system/services/default.nix
@@ -1,16 +1,16 @@
 {...}: {
   imports = [
+    #./serverphone
     ./adb
     ./backup
     ./dconf
     ./fwupd
-    ./getty
+    ./issue_file
     ./nix
     ./openssh
     ./postgresql
     ./printing
     ./scanning
-    #./serverphone
     ./snapper
     ./steam
     ./swaylock
diff --git a/modules/system/services/fwupd/default.nix b/modules/system/services/fwupd/default.nix
new file mode 100644
index 00000000..5ad4f467
--- /dev/null
+++ b/modules/system/services/fwupd/default.nix
@@ -0,0 +1,14 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.services.fwupd;
+in {
+  options.soispha.services.fwupd = {
+    enable = lib.mkEnableOption "fwupd";
+  };
+  config = lib.mkIf cfg.enable {
+    services.fwupd.enable = true;
+  };
+}
diff --git a/sys/svcs/getty/default.nix b/modules/system/services/issue_file/default.nix
index 7e8a4e46..930be1d9 100644
--- a/sys/svcs/getty/default.nix
+++ b/modules/system/services/issue_file/default.nix
@@ -1,10 +1,7 @@
-{
-  lib,
-  config,
-  ...
-}: {
-  services.getty = {
-    greetingLine = lib.mkForce ''
+{config, ...}: {
+  environment.etc.issue = {
+    # Friendly greeting on the virtual consoles.
+    text = ''
       [?25l[?7l                                           
                 ▗▄▄▄       ▗▄▄▄▄    ▄▄▄▖         
                 ▜███▙       ▜███▙  ▟███▛         
@@ -27,7 +24,7 @@
                ▟███▛  ▜███▙       ▜███▙          
                ▝▀▀▀    ▀▀▀▀▘       ▀▀▀▘          
                                                  
-        NixOS ${config.system.nixos.label} 
+       NixOS ${config.system.nixos.label} 
         --------------
       
         date: \d
diff --git a/sys/svcs/nix/default.nix b/modules/system/services/nix/default.nix
index 5766fcdd..65fc7273 100644
--- a/sys/svcs/nix/default.nix
+++ b/modules/system/services/nix/default.nix
@@ -1,5 +1,6 @@
 {
   pkgs,
+
   # flakes
   nixpkgs_as_input,
   templates,
diff --git a/sys/svcs/openssh/default.nix b/modules/system/services/openssh/default.nix
index b733dbe7..b733dbe7 100644
--- a/sys/svcs/openssh/default.nix
+++ b/modules/system/services/openssh/default.nix
diff --git a/modules/system/services/postgresql/default.nix b/modules/system/services/postgresql/default.nix
new file mode 100644
index 00000000..c47a235c
--- /dev/null
+++ b/modules/system/services/postgresql/default.nix
@@ -0,0 +1,17 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.services.postgresql;
+in {
+  options.soispha.services.postgresql = {
+    enable = lib.mkEnableOption "postgresql";
+  };
+
+  config = lib.mkIf cfg.enable {
+    services.postgresql = {
+      enable = true;
+    };
+  };
+}
diff --git a/modules/system/services/printing/default.nix b/modules/system/services/printing/default.nix
new file mode 100644
index 00000000..85d15b16
--- /dev/null
+++ b/modules/system/services/printing/default.nix
@@ -0,0 +1,45 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.services.printing;
+in {
+  options.soispha.services.printing = {
+    enable = lib.mkEnableOption "default printing configuration";
+  };
+
+  config = lib.mkIf cfg.enable {
+    services.avahi = {
+      enable = true;
+      nssmdns4 = true;
+      nssmdns6 = true;
+      openFirewall = true;
+    };
+
+    services.printing = {
+      enable = true;
+      startWhenNeeded = true;
+      webInterface = true;
+
+      # deletes `/var/cache/cups`, `/var/lib/cups` and `/var/spool/cups` on cups startup
+      stateless = true;
+
+      drivers = [];
+    };
+
+    hardware = {
+      printers = {
+        ensurePrinters = [
+          {
+            name = "Brother";
+            description = "Brother DCP-9022CDW";
+            model = "everywhere";
+            deviceUri = "dnssd://Brother%20DCP-9022CDW._ipp._tcp.local/?uuid=e3248000-80ce-11db-8000-30055c773bcf";
+          }
+        ];
+        ensureDefaultPrinter = "Brother";
+      };
+    };
+  };
+}
diff --git a/modules/system/services/scanning/default.nix b/modules/system/services/scanning/default.nix
new file mode 100644
index 00000000..dda507fa
--- /dev/null
+++ b/modules/system/services/scanning/default.nix
@@ -0,0 +1,25 @@
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}: let
+  cfg = config.soispha.services.scanning;
+in {
+  options.soispha.services.scanning = {
+    enable = lib.mkEnableOption "default scanning configuration";
+  };
+
+  config = lib.mkIf cfg.enable {
+    hardware = {
+      sane = {
+        enable = true;
+        extraBackends = [pkgs.sane-airscan];
+      };
+    };
+
+    users.users.soispha.extraGroups = [
+      "scanner" # for permission to access the scanner.
+    ];
+  };
+}
diff --git a/sys/svcs/serverphone/certificates/ca.crt b/modules/system/services/serverphone/certificates/ca.crt
index 7a4ae6f9..7a4ae6f9 100644
--- a/sys/svcs/serverphone/certificates/ca.crt
+++ b/modules/system/services/serverphone/certificates/ca.crt
diff --git a/sys/svcs/serverphone/certificates/server.crt b/modules/system/services/serverphone/certificates/server.crt
index f994cdc8..f994cdc8 100644
--- a/sys/svcs/serverphone/certificates/server.crt
+++ b/modules/system/services/serverphone/certificates/server.crt
diff --git a/sys/svcs/serverphone/default.nix b/modules/system/services/serverphone/default.nix
index 20125a75..20125a75 100644
--- a/sys/svcs/serverphone/default.nix
+++ b/modules/system/services/serverphone/default.nix
diff --git a/sys/svcs/serverphone/keys/key_1 b/modules/system/services/serverphone/keys/key_1
index 67720882..67720882 120000
--- a/sys/svcs/serverphone/keys/key_1
+++ b/modules/system/services/serverphone/keys/key_1
diff --git a/sys/svcs/serverphone/keys/key_2 b/modules/system/services/serverphone/keys/key_2
index 24df7207..24df7207 120000
--- a/sys/svcs/serverphone/keys/key_2
+++ b/modules/system/services/serverphone/keys/key_2
diff --git a/modules/system/services/snapper/default.nix b/modules/system/services/snapper/default.nix
new file mode 100644
index 00000000..bf8201a4
--- /dev/null
+++ b/modules/system/services/snapper/default.nix
@@ -0,0 +1,53 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.services.snapper;
+in {
+  options.soispha.services.snapper = {
+    enable = lib.mkEnableOption "snapper config";
+  };
+
+  config = lib.mkIf cfg.enable {
+    services.snapper = {
+      configs = {
+        srv = {
+          SUBVOLUME = "/srv";
+          FSTYPE = "btrfs";
+          # users and groups allowed to work with config
+          ALLOW_GROUPS = ["wheel"];
+
+          # sync users and groups from ALLOW_USERS and ALLOW_GROUPS to .snapshots
+          # directory
+          SYNC_ACL = true;
+
+          # run daily number cleanup
+          NUMBER_CLEANUP = false;
+
+          # limit for number cleanup
+          NUMBER_MIN_AGE = 1800;
+          NUMBER_LIMIT = 50;
+          NUMBER_LIMIT_IMPORTANT = 10;
+
+          # create hourly snapshots
+          TIMELINE_CREATE = true;
+
+          # cleanup hourly snapshots after some time
+          TIMELINE_CLEANUP = true;
+
+          # limits for timeline cleanup
+          TIMELINE_MIN_AGE = 1800;
+          TIMELINE_LIMIT_HOURLY = 7;
+          TIMELINE_LIMIT_DAILY = 3;
+          TIMELINE_LIMIT_WEEKLY = 2;
+          TIMELINE_LIMIT_MONTHLY = 0;
+          TIMELINE_LIMIT_YEARLY = 2;
+
+          # cleanup empty pre-post-pairs
+          EMPTY_PRE_POST_CLEANUP = true;
+        };
+      };
+    };
+  };
+}
diff --git a/sys/svcs/steam/default.nix b/modules/system/services/steam/default.nix
index 54091493..6e507fd9 100644
--- a/sys/svcs/steam/default.nix
+++ b/modules/system/services/steam/default.nix
@@ -7,16 +7,16 @@
   cfg = config.soispha.services.steam;
 in {
   options.soispha.services.steam = {
-    enable = lib.mkOption {
-      default = false;
-      description = lib.mdDoc "Steam";
-    };
+    enable = lib.mkEnableOption "Stream";
   };
+
   config = lib.mkIf cfg.enable {
     programs.steam = {
       enable = true;
     };
+
     environment.systemPackages = [
+      # TODO: Why is this package needed? <2024-05-16>
       pkgs.wineWowPackages.waylandFull
     ];
   };
diff --git a/sys/svcs/swaylock/default.nix b/modules/system/services/swaylock/default.nix
index 6cbcef28..6cbcef28 100644
--- a/sys/svcs/swaylock/default.nix
+++ b/modules/system/services/swaylock/default.nix
diff --git a/sys/svcs/xdg/default.nix b/modules/system/services/xdg/default.nix
index 5140a832..5140a832 100644
--- a/sys/svcs/xdg/default.nix
+++ b/modules/system/services/xdg/default.nix
diff --git a/sys/svcs/xdg/scripts/lf_wrapper.sh b/modules/system/services/xdg/scripts/lf_wrapper.sh
index 16603fe4..16603fe4 100755
--- a/sys/svcs/xdg/scripts/lf_wrapper.sh
+++ b/modules/system/services/xdg/scripts/lf_wrapper.sh
diff --git a/sys/svcs/xdg/scripts/ranger_wrapper.sh b/modules/system/services/xdg/scripts/ranger_wrapper.sh
index e148bf19..e148bf19 100755
--- a/sys/svcs/xdg/scripts/ranger_wrapper.sh
+++ b/modules/system/services/xdg/scripts/ranger_wrapper.sh
diff --git a/modules/system/sound/default.nix b/modules/system/sound/default.nix
new file mode 100644
index 00000000..f49cf95a
--- /dev/null
+++ b/modules/system/sound/default.nix
@@ -0,0 +1,38 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.sound;
+in {
+  options.soispha.sound = {
+    enable = lib.mkEnableOption "sound based on pipewire";
+  };
+
+  config = lib.mkIf cfg.enable {
+    sound.enable = true;
+    hardware.pulseaudio.enable = false;
+    security.rtkit.enable = true;
+
+    services.pipewire = {
+      enable = true;
+      alsa.enable = true;
+      alsa.support32Bit = true;
+      pulse.enable = true;
+      jack.enable = true;
+    };
+
+    # TODO: Find a better way to set the default volume <2024-03-10>
+    #
+    # environment.etc.pipewire-pulse-config = {
+    #   target = "pipewire/pipewire-pulse.conf.d/pipewire-pulse-config.conf";
+    #   text = ''
+    #     # Extra scripts can be started here. Setup in default.pa can be moved in
+    #     # a script or in pulse.cmd below
+    #     context.exec = [
+    #         { path = "${pkgs.pulseaudio}/bin/pactl"        args = "set-sink-volume 0 13%" }
+    #     ]
+    #   '';
+    # };
+  };
+}
diff --git a/modules/system/tempfiles/default.nix b/modules/system/tempfiles/default.nix
new file mode 100644
index 00000000..fa17f112
--- /dev/null
+++ b/modules/system/tempfiles/default.nix
@@ -0,0 +1,20 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.temfiles;
+in {
+  options.soispha.tempfiles = {
+    enable = lib.mkEnableOption "systemd tempfiles generation";
+  };
+
+  config = lib.mkIf cfg.enable {
+    systemd.tmpfiles.rules = [
+      # TODO: Find a way to move this file to the lf home manager config.
+      #
+      # This file is needed to trash stuff on the root ('/') temp file system.
+      "d /.Trash 1777 root root"
+    ];
+  };
+}
diff --git a/modules/system/users/default.nix b/modules/system/users/default.nix
new file mode 100644
index 00000000..a44df7e8
--- /dev/null
+++ b/modules/system/users/default.nix
@@ -0,0 +1,50 @@
+{
+  config,
+  pkgs,
+  lib,
+  ...
+}: let
+  cfg = config.soispha.users;
+in {
+  options.soispha.users = {
+    enable = lib.mkEnableOption "user set-up for soispha";
+    hashedPassword = lib.mkOption {
+      type = lib.types.str;
+      example = lib.literalExpression "$y$jFT$ONrCqZIJKB7engmfA4orD/$0GO58/wV5wrYWj0cyONhyujZPjFmbT0XKtx2AvXLG0B";
+      description = "The hashed password of the user";
+    };
+    groups = lib.mkOption {
+      type = lib.types.listOf lib.types.str;
+      default = ["wheel"];
+      description = "The groups the soispha user should be part of";
+    };
+
+    # Although deprecated, this helps with old udev rules, that still use this group.
+    # TODO: Try to find a way to remove this option (i.e. set it always to false).
+    enableDeprecatedPlugdev = lib.mkEnableOption "the deprecated plugdev group for the user";
+  };
+
+  config = lib.mkIf cfg.enable {
+    # Ensure that the default shell of the user is actually enabled.
+    programs.zsh.enable = true;
+
+    users = {
+      mutableUsers = false;
+
+      users.soispha = {
+        isNormalUser = true;
+        home = "/home/soispha";
+        createHome = true;
+        shell = pkgs.zsh;
+        initialHashedPassword = cfg.hashedPassword;
+        extraGroups = cfg.groups ++ lib.optional cfg.enableDeprecatedPlugdev "plugdev";
+
+        uid = 1000;
+        openssh.authorizedKeys.keys = [
+          # TODO: This should be parameterized. <2024-05-16>
+          "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIME4ZVa+IoZf6T3U08JG93i6QIAJ4amm7mkBzO14JSkz"
+        ];
+      };
+    };
+  };
+}
diff --git a/modules/system/version/default.nix b/modules/system/version/default.nix
new file mode 100644
index 00000000..77cada14
--- /dev/null
+++ b/modules/system/version/default.nix
@@ -0,0 +1,19 @@
+{
+  config,
+  lib,
+  self,
+  ...
+}: let
+  cfg = config.soispha.version;
+in {
+  options.soispha.version = {
+    enable = lib.mkEnableOption "storing the git revision in /etc/nixos_git_rev";
+  };
+  config = lib.mkIf cfg.enable {
+    environment.etc.nixos_git_rev = {
+      text = builtins.toString (self.longRev
+        or self.lastModified
+        or "unknown");
+    };
+  };
+}
diff --git a/sys/waydroid/default.nix b/modules/system/waydroid/default.nix
index 09c388a6..4680db63 100644
--- a/sys/waydroid/default.nix
+++ b/modules/system/waydroid/default.nix
@@ -1,4 +1,5 @@
 {...}: {
   # FIXME: Running `waydroid session start` causes all fuse mounts instances to coredump <2023-09-02>
+  #        Thus this setting must be false.
   virtualisation.waydroid.enable = false;
 }
diff --git a/sys/nixpkgs/default.nix b/pkgs/default.nix
index 7fd640d1..38c58a95 100644
--- a/sys/nixpkgs/default.nix
+++ b/pkgs/default.nix
@@ -3,9 +3,10 @@
   system,
   overlays ? [],
   sysLib,
-  config,
+  homeConfig,
+  nixosConfig,
 }: let
-  additionalPackages = (import ./pkgs) {inherit config sysLib;};
+  additionalPackages = (import ./pkgs) {inherit homeConfig nixosConfig sysLib;};
   complete_overlays = overlays ++ additionalPackages;
 in {
   # TODO: inheriting system here is discouraged, localSystem or hostSystem should be inspected
diff --git a/sys/nixpkgs/pkgs/comments/.envrc b/pkgs/sources/comments/.envrc
index 2b5fbb29..2b5fbb29 100644
--- a/sys/nixpkgs/pkgs/comments/.envrc
+++ b/pkgs/sources/comments/.envrc
diff --git a/sys/nixpkgs/pkgs/comments/.gitignore b/pkgs/sources/comments/.gitignore
index c84fa049..c84fa049 100644
--- a/sys/nixpkgs/pkgs/comments/.gitignore
+++ b/pkgs/sources/comments/.gitignore
diff --git a/sys/nixpkgs/pkgs/comments/Cargo.lock b/pkgs/sources/comments/Cargo.lock
index 54f19c46..54f19c46 100644
--- a/sys/nixpkgs/pkgs/comments/Cargo.lock
+++ b/pkgs/sources/comments/Cargo.lock
diff --git a/sys/nixpkgs/pkgs/comments/Cargo.toml b/pkgs/sources/comments/Cargo.toml
index 3ae3aa4c..3ae3aa4c 100644
--- a/sys/nixpkgs/pkgs/comments/Cargo.toml
+++ b/pkgs/sources/comments/Cargo.toml
diff --git a/sys/nixpkgs/pkgs/comments/comments.nix b/pkgs/sources/comments/comments.nix
index e8a33bff..e8a33bff 100644
--- a/sys/nixpkgs/pkgs/comments/comments.nix
+++ b/pkgs/sources/comments/comments.nix
diff --git a/sys/nixpkgs/pkgs/comments/default.nix b/pkgs/sources/comments/default.nix
index 6205dcbe..6205dcbe 100644
--- a/sys/nixpkgs/pkgs/comments/default.nix
+++ b/pkgs/sources/comments/default.nix
diff --git a/sys/nixpkgs/pkgs/comments/flake.lock b/pkgs/sources/comments/flake.lock
index 50494465..50494465 100644
--- a/sys/nixpkgs/pkgs/comments/flake.lock
+++ b/pkgs/sources/comments/flake.lock
diff --git a/sys/nixpkgs/pkgs/comments/flake.nix b/pkgs/sources/comments/flake.nix
index f5e44a65..f5e44a65 100644
--- a/sys/nixpkgs/pkgs/comments/flake.nix
+++ b/pkgs/sources/comments/flake.nix
diff --git a/sys/nixpkgs/pkgs/comments/src/info_json.rs b/pkgs/sources/comments/src/info_json.rs
index eca4fae3..eca4fae3 100644
--- a/sys/nixpkgs/pkgs/comments/src/info_json.rs
+++ b/pkgs/sources/comments/src/info_json.rs
diff --git a/sys/nixpkgs/pkgs/comments/src/main.rs b/pkgs/sources/comments/src/main.rs
index 6e4f72e9..6e4f72e9 100644
--- a/sys/nixpkgs/pkgs/comments/src/main.rs
+++ b/pkgs/sources/comments/src/main.rs
diff --git a/sys/nixpkgs/pkgs/comments/update.sh b/pkgs/sources/comments/update.sh
index e500bb23..e500bb23 100755
--- a/sys/nixpkgs/pkgs/comments/update.sh
+++ b/pkgs/sources/comments/update.sh
diff --git a/sys/nixpkgs/pkgs/default.nix b/pkgs/sources/default.nix
index 633d2f7e..4668d735 100644
--- a/sys/nixpkgs/pkgs/default.nix
+++ b/pkgs/sources/default.nix
@@ -1,12 +1,13 @@
 {
-  config,
+  homeConfig,
+  nixosConfig,
   sysLib,
 }: let
   comments = import ./comments;
   generate_firefox_extensions = import ./generate_moz_extension;
   lf_make_map = import ./lf-make-map;
   nvim_plugs = import ./plgs-pkgs;
-  scripts = import ./scripts {inherit sysLib config;};
+  scripts = import ./scripts {inherit sysLib homeConfig nixosConfig;};
   snap-sync-forked = (import ./snap-sync-forked) {inherit sysLib;};
   update_vim_plugins = import ./update_vim_plugins;
   yt = import ./yt;
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/.envrc b/pkgs/sources/generate_moz_extension/.envrc
index 3550a30f..3550a30f 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/.envrc
+++ b/pkgs/sources/generate_moz_extension/.envrc
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/.gitignore b/pkgs/sources/generate_moz_extension/.gitignore
index f717ddd7..f717ddd7 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/.gitignore
+++ b/pkgs/sources/generate_moz_extension/.gitignore
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/Cargo.lock b/pkgs/sources/generate_moz_extension/Cargo.lock
index c0a83aa8..c0a83aa8 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/Cargo.lock
+++ b/pkgs/sources/generate_moz_extension/Cargo.lock
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/Cargo.toml b/pkgs/sources/generate_moz_extension/Cargo.toml
index e7d44db4..e7d44db4 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/Cargo.toml
+++ b/pkgs/sources/generate_moz_extension/Cargo.toml
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/default.nix b/pkgs/sources/generate_moz_extension/default.nix
index be734eee..be734eee 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/default.nix
+++ b/pkgs/sources/generate_moz_extension/default.nix
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/examples/generate_extensions.sh b/pkgs/sources/generate_moz_extension/examples/generate_extensions.sh
index 96802992..96802992 100755
--- a/sys/nixpkgs/pkgs/generate_moz_extension/examples/generate_extensions.sh
+++ b/pkgs/sources/generate_moz_extension/examples/generate_extensions.sh
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/flake.lock b/pkgs/sources/generate_moz_extension/flake.lock
index 741a8ad1..741a8ad1 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/flake.lock
+++ b/pkgs/sources/generate_moz_extension/flake.lock
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/flake.nix b/pkgs/sources/generate_moz_extension/flake.nix
index 5575f90b..5575f90b 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/flake.nix
+++ b/pkgs/sources/generate_moz_extension/flake.nix
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/generate_firefox_extensions.nix b/pkgs/sources/generate_moz_extension/generate_firefox_extensions.nix
index abd95c77..abd95c77 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/generate_firefox_extensions.nix
+++ b/pkgs/sources/generate_moz_extension/generate_firefox_extensions.nix
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/res/generate_extensions.py b/pkgs/sources/generate_moz_extension/res/generate_extensions.py
index ee8cc966..ee8cc966 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/res/generate_extensions.py
+++ b/pkgs/sources/generate_moz_extension/res/generate_extensions.py
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/res/reference.json b/pkgs/sources/generate_moz_extension/res/reference.json
index f46ea8ec..f46ea8ec 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/res/reference.json
+++ b/pkgs/sources/generate_moz_extension/res/reference.json
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/res/test.json b/pkgs/sources/generate_moz_extension/res/test.json
index daa1d19a..daa1d19a 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/res/test.json
+++ b/pkgs/sources/generate_moz_extension/res/test.json
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/src/main.rs b/pkgs/sources/generate_moz_extension/src/main.rs
index bde986a3..bde986a3 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/src/main.rs
+++ b/pkgs/sources/generate_moz_extension/src/main.rs
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/src/types.rs b/pkgs/sources/generate_moz_extension/src/types.rs
index b830fe0d..b830fe0d 100644
--- a/sys/nixpkgs/pkgs/generate_moz_extension/src/types.rs
+++ b/pkgs/sources/generate_moz_extension/src/types.rs
diff --git a/sys/nixpkgs/pkgs/generate_moz_extension/update.sh b/pkgs/sources/generate_moz_extension/update.sh
index e500bb23..e500bb23 100755
--- a/sys/nixpkgs/pkgs/generate_moz_extension/update.sh
+++ b/pkgs/sources/generate_moz_extension/update.sh
diff --git a/sys/nixpkgs/pkgs/lf-make-map/.envrc b/pkgs/sources/lf-make-map/.envrc
index c8c56659..c8c56659 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/.envrc
+++ b/pkgs/sources/lf-make-map/.envrc
diff --git a/sys/nixpkgs/pkgs/lf-make-map/.gitignore b/pkgs/sources/lf-make-map/.gitignore
index cb87f36f..cb87f36f 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/.gitignore
+++ b/pkgs/sources/lf-make-map/.gitignore
diff --git a/sys/nixpkgs/pkgs/lf-make-map/Cargo.lock b/pkgs/sources/lf-make-map/Cargo.lock
index 16af6e03..16af6e03 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/Cargo.lock
+++ b/pkgs/sources/lf-make-map/Cargo.lock
diff --git a/sys/nixpkgs/pkgs/lf-make-map/Cargo.toml b/pkgs/sources/lf-make-map/Cargo.toml
index da9881fd..da9881fd 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/Cargo.toml
+++ b/pkgs/sources/lf-make-map/Cargo.toml
diff --git a/sys/nixpkgs/pkgs/lf-make-map/README.md b/pkgs/sources/lf-make-map/README.md
index 0c57cede..0c57cede 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/README.md
+++ b/pkgs/sources/lf-make-map/README.md
diff --git a/sys/nixpkgs/pkgs/lf-make-map/default.nix b/pkgs/sources/lf-make-map/default.nix
index 8ff4c624..8ff4c624 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/default.nix
+++ b/pkgs/sources/lf-make-map/default.nix
diff --git a/sys/nixpkgs/pkgs/lf-make-map/flake.lock b/pkgs/sources/lf-make-map/flake.lock
index 611392df..611392df 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/flake.lock
+++ b/pkgs/sources/lf-make-map/flake.lock
diff --git a/sys/nixpkgs/pkgs/lf-make-map/flake.nix b/pkgs/sources/lf-make-map/flake.nix
index dc8c24cc..dc8c24cc 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/flake.nix
+++ b/pkgs/sources/lf-make-map/flake.nix
diff --git a/sys/nixpkgs/pkgs/lf-make-map/lf_make_map.nix b/pkgs/sources/lf-make-map/lf_make_map.nix
index afb067b8..afb067b8 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/lf_make_map.nix
+++ b/pkgs/sources/lf-make-map/lf_make_map.nix
diff --git a/sys/nixpkgs/pkgs/lf-make-map/src/cli.rs b/pkgs/sources/lf-make-map/src/cli.rs
index a398e451..a398e451 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/src/cli.rs
+++ b/pkgs/sources/lf-make-map/src/cli.rs
diff --git a/sys/nixpkgs/pkgs/lf-make-map/src/main.rs b/pkgs/sources/lf-make-map/src/main.rs
index aaf79b20..aaf79b20 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/src/main.rs
+++ b/pkgs/sources/lf-make-map/src/main.rs
diff --git a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/display.rs b/pkgs/sources/lf-make-map/src/mapping/map_tree/display.rs
index 65302e1e..65302e1e 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/display.rs
+++ b/pkgs/sources/lf-make-map/src/mapping/map_tree/display.rs
diff --git a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/iterator.rs b/pkgs/sources/lf-make-map/src/mapping/map_tree/iterator.rs
index 4364bb2b..4364bb2b 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/iterator.rs
+++ b/pkgs/sources/lf-make-map/src/mapping/map_tree/iterator.rs
diff --git a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/lf_mapping.rs b/pkgs/sources/lf-make-map/src/mapping/map_tree/lf_mapping.rs
index 6d9c7a0d..6d9c7a0d 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/lf_mapping.rs
+++ b/pkgs/sources/lf-make-map/src/mapping/map_tree/lf_mapping.rs
diff --git a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/mod.rs b/pkgs/sources/lf-make-map/src/mapping/map_tree/mod.rs
index 35e6d91d..35e6d91d 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/map_tree/mod.rs
+++ b/pkgs/sources/lf-make-map/src/mapping/map_tree/mod.rs
diff --git a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/mod.rs b/pkgs/sources/lf-make-map/src/mapping/mod.rs
index 114fdca0..114fdca0 100644
--- a/sys/nixpkgs/pkgs/lf-make-map/src/mapping/mod.rs
+++ b/pkgs/sources/lf-make-map/src/mapping/mod.rs
diff --git a/sys/nixpkgs/pkgs/lf-make-map/update.sh b/pkgs/sources/lf-make-map/update.sh
index a0a029f4..a0a029f4 100755
--- a/sys/nixpkgs/pkgs/lf-make-map/update.sh
+++ b/pkgs/sources/lf-make-map/update.sh
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/README.md b/pkgs/sources/plgs-pkgs/README.md
index e8169951..e8169951 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/README.md
+++ b/pkgs/sources/plgs-pkgs/README.md
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/check.nix b/pkgs/sources/plgs-pkgs/check.nix
index ad23e2c7..ad23e2c7 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/check.nix
+++ b/pkgs/sources/plgs-pkgs/check.nix
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/default.nix b/pkgs/sources/plgs-pkgs/default.nix
index 0f7cd485..0f7cd485 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/default.nix
+++ b/pkgs/sources/plgs-pkgs/default.nix
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/overrides.nix b/pkgs/sources/plgs-pkgs/overrides.nix
index e03a78b1..e03a78b1 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/overrides.nix
+++ b/pkgs/sources/plgs-pkgs/overrides.nix
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/.plugins.json b/pkgs/sources/plgs-pkgs/plugins/.plugins.json
index 9331bc8f..9331bc8f 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/.plugins.json
+++ b/pkgs/sources/plgs-pkgs/plugins/.plugins.json
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/blacklist.txt b/pkgs/sources/plgs-pkgs/plugins/blacklist.txt
index 8b137891..8b137891 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/blacklist.txt
+++ b/pkgs/sources/plgs-pkgs/plugins/blacklist.txt
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/default.nix b/pkgs/sources/plgs-pkgs/plugins/default.nix
index df09e446..df09e446 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/default.nix
+++ b/pkgs/sources/plgs-pkgs/plugins/default.nix
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/manifest.txt b/pkgs/sources/plgs-pkgs/plugins/manifest.txt
index 615083c8..615083c8 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/manifest.txt
+++ b/pkgs/sources/plgs-pkgs/plugins/manifest.txt
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/plugins.md b/pkgs/sources/plgs-pkgs/plugins/plugins.md
index 4f73f811..4f73f811 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/plugins.md
+++ b/pkgs/sources/plgs-pkgs/plugins/plugins.md
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/whitelist.txt b/pkgs/sources/plgs-pkgs/plugins/whitelist.txt
index e69de29b..e69de29b 100644
--- a/sys/nixpkgs/pkgs/plgs-pkgs/plugins/whitelist.txt
+++ b/pkgs/sources/plgs-pkgs/plugins/whitelist.txt
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/update.sh b/pkgs/sources/plgs-pkgs/update.sh
index 6a0d3452..6a0d3452 100755
--- a/sys/nixpkgs/pkgs/plgs-pkgs/update.sh
+++ b/pkgs/sources/plgs-pkgs/update.sh
diff --git a/sys/nixpkgs/pkgs/scripts/default.nix b/pkgs/sources/scripts/default.nix
index 5279b241..09c8d411 100644
--- a/sys/nixpkgs/pkgs/scripts/default.nix
+++ b/pkgs/sources/scripts/default.nix
@@ -1,6 +1,7 @@
 {
   sysLib,
-  config,
+  homeConfig,
+  nixosConfig,
 }: [
   (
     final: prev: let
@@ -45,7 +46,6 @@
         '';
 
       ## Begin of shell scripts
-
       aumo-scr = write_shell {
         name = "aumo";
         path = "apps";
@@ -65,6 +65,14 @@
         dependencies = [];
       };
 
+      brightness-scr = lib.mkIf nixosConfig.soispha.laptop.enable (write_shell {
+        name = "brightness";
+        path = "small_functions";
+        generateCompletions = true;
+        dependencies = [];
+        replacementStrings = {BACKLIGHT_NAME = nixosConfig.soispha.laptop.backlight;};
+      });
+
       con2pdf-scr = sysLib.writeShellScript {
         name = "con2pdf";
         src = ./source/apps/con2pdf.sh;
@@ -125,7 +133,7 @@
             git
             gnused
             # $EDITOR
-            
+
             ;
         };
       };
@@ -247,13 +255,13 @@
         generateCompletions = true;
         replacementStrings = {
           DEFAULT_NEORG_PROJECT_DIR =
-            config.programs.nixvim.plugins.neorg.modules."core.dirman".config.workspaces.projects;
-          HOME_TASKRC = "${config.xdg.configHome}/task/home-manager-taskrc";
-          NEORG_REVIEW_PATH = "${config.xdg.dataHome}/neorg/review";
-          ALL_PROJECTS_NEWLINE = "${config.soispha.taskwarrior.projects.projects_newline}";
-          ALL_PROJECTS_COMMA = "${config.soispha.taskwarrior.projects.projects_comma}";
-          ALL_PROJECTS_PIPE = "${config.soispha.taskwarrior.projects.projects_pipe}";
-          ALL_WORKSPACES = "${lib.strings.concatStringsSep "|" (builtins.attrNames config.programs.nixvim.plugins.neorg.modules."core.dirman".config.workspaces)}";
+            homeConfig.programs.nixvim.plugins.neorg.modules."core.dirman".config.workspaces.projects;
+          HOME_TASKRC = "${homeConfig.xdg.configHome}/task/home-manager-taskrc";
+          NEORG_REVIEW_PATH = "${homeConfig.xdg.dataHome}/neorg/review";
+          ALL_PROJECTS_NEWLINE = "${homeConfig.soispha.taskwarrior.projects.projects_newline}";
+          ALL_PROJECTS_COMMA = "${homeConfig.soispha.taskwarrior.projects.projects_comma}";
+          ALL_PROJECTS_PIPE = "${homeConfig.soispha.taskwarrior.projects.projects_pipe}";
+          ALL_WORKSPACES = "${lib.strings.concatStringsSep "|" (builtins.attrNames homeConfig.programs.nixvim.plugins.neorg.modules."core.dirman".config.workspaces)}";
           ID_GENERATION_FUNCTION = "${sysLib.writeShellScript {
             name = "neorg_id_function";
             src = ./source/specific/neorg/neorg_id_function.sh;
@@ -324,8 +332,8 @@
         ];
         generateCompletions = true;
         replacementStrings = {
-          XDG_CACHE_HOME = config.xdg.cacheHome;
-          XDG_MUSIC_DIR = config.xdg.userDirs.music;
+          XDG_CACHE_HOME = homeConfig.xdg.cacheHome;
+          XDG_MUSIC_DIR = homeConfig.xdg.userDirs.music;
         };
       };
 
@@ -365,6 +373,7 @@
         # llp = llp-scr; # TODO: see above
         aumo = aumo-scr;
         battery = battery-scr;
+        brightness = brightness-scr;
         con2pdf = con2pdf-scr;
         description = description-scr;
         fupdate = fupdate-scr;
@@ -373,9 +382,9 @@
         ll = ll-scr;
         lock = lock-scr;
         lyrics = lyrics-scr;
+        mpc = mpc-scr;
         mpc-fav = mpc-fav-scr;
         mpc-rm = mpc-rm-scr;
-        mpc = mpc-scr;
         nato = nato-scr;
         neorg = neorg-scr;
         screenshot_persistent = screenshot_persistent-scr;
@@ -390,3 +399,14 @@
     }
   )
 ]
+
+
+    pkgs = import nixpkgs (import ./sys/nixpkgs {
+      inherit (nixpkgs) lib;
+      inherit system sysLib;
+
+      # FIXME: Don't unconditionally use tiamat here <2024-02-24>
+      homeConfig = self.nixosConfigurations.tiamat.config.home-manager.users.soispha;
+      nixosConfig = self.nixosConfigurations.tiamat.config;
+      overlays = [];
+    });
diff --git a/sys/nixpkgs/pkgs/scripts/source/apps/aumo.sh b/pkgs/sources/scripts/source/apps/aumo.sh
index 84d39deb..84d39deb 100755
--- a/sys/nixpkgs/pkgs/scripts/source/apps/aumo.sh
+++ b/pkgs/sources/scripts/source/apps/aumo.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/apps/con2pdf.sh b/pkgs/sources/scripts/source/apps/con2pdf.sh
index 08bf8998..08bf8998 100755
--- a/sys/nixpkgs/pkgs/scripts/source/apps/con2pdf.sh
+++ b/pkgs/sources/scripts/source/apps/con2pdf.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/apps/fupdate.1.md b/pkgs/sources/scripts/source/apps/fupdate.1.md
index 710e8fb7..710e8fb7 100644
--- a/sys/nixpkgs/pkgs/scripts/source/apps/fupdate.1.md
+++ b/pkgs/sources/scripts/source/apps/fupdate.1.md
diff --git a/sys/nixpkgs/pkgs/scripts/source/apps/fupdate.sh b/pkgs/sources/scripts/source/apps/fupdate.sh
index 4322610a..4322610a 100755
--- a/sys/nixpkgs/pkgs/scripts/source/apps/fupdate.sh
+++ b/pkgs/sources/scripts/source/apps/fupdate.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/apps/git-edit-index.sh b/pkgs/sources/scripts/source/apps/git-edit-index.sh
index e73dc53c..e73dc53c 100755
--- a/sys/nixpkgs/pkgs/scripts/source/apps/git-edit-index.sh
+++ b/pkgs/sources/scripts/source/apps/git-edit-index.sh
diff --git a/pkgs/sources/scripts/source/small_functions/brightness.sh b/pkgs/sources/scripts/source/small_functions/brightness.sh
new file mode 100755
index 00000000..a7272279
--- /dev/null
+++ b/pkgs/sources/scripts/source/small_functions/brightness.sh
@@ -0,0 +1,80 @@
+#!/usr/bin/env dash
+
+# shellcheck source=/dev/null
+SHELL_LIBRARY_VERSION="2.1.2" . %SHELL_LIBRARY_PATH
+
+help() {
+    cat <<EOF
+This is a system brightness manager
+
+USAGE:
+    $NAME up [VALUE] | down [VALUE]
+
+OPTIONS:
+    --help   | -h
+                                Output this help and exit.
+
+    --version   | -v
+                                Output the version and exit.
+
+COMMANDS:
+    up [VALUE]
+                                Increase the brightness by VALUE or 5%.
+
+    down [VALUE]
+                                Decrease the brightness by VALUE or 5%.
+
+ARGUMENTS:
+    VALUE := [[seq 0 100]]
+                                The amount to increase/decrease the brightness. In percentage
+EOF
+}
+
+BACKLIGHT="/sys/class/%BACKLIGHT_NAME"
+
+brightness() {
+    offset="$1"
+
+    max="$(cat $BACKLIGHT/max_brightness)"
+    cur="$(cat $BACKLIGHT/brightness)"
+    percentage="$(echo | awk --assign=cur="$cur" --assign=max="$max" '{printf cur / max}')"
+
+    new="$(echo | awk --assign=per="$percentage" --assign=offset="$offset" '{printf per + (offset / 10)}')"
+
+    output="$(echo | awk --assign=new="$new" --assign=max="$max" '{printf max * new}')"
+
+    msg "echo \"$output\" > $BACKLIGHT/brightness"
+}
+
+for arg in "$@"; do
+    case "$arg" in
+    "--help" | "-h")
+        help
+        exit 0
+        ;;
+    "--version" | "-v")
+        version
+        exit 0
+        ;;
+    esac
+done
+
+case "$1" in
+"up")
+    shift 1
+    value="5"
+    [ -n "$1" ] && value="$1"
+    brightness "+$value"
+    ;;
+"down")
+    shift 1
+    value="-5"
+    [ -n "$1" ] && value="$1"
+    brightness "-$value"
+    ;;
+*)
+    die "The command '$1' does not exist! See '--help' for a list"
+    ;;
+esac
+
+# vim: ft=sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/small_functions/nato.py b/pkgs/sources/scripts/source/small_functions/nato.py
index e9d15f56..e9d15f56 100755
--- a/sys/nixpkgs/pkgs/scripts/source/small_functions/nato.py
+++ b/pkgs/sources/scripts/source/small_functions/nato.py
diff --git a/sys/nixpkgs/pkgs/scripts/source/small_functions/screenshot_persistent.sh b/pkgs/sources/scripts/source/small_functions/screenshot_persistent.sh
index 4308b8d2..4308b8d2 100755
--- a/sys/nixpkgs/pkgs/scripts/source/small_functions/screenshot_persistent.sh
+++ b/pkgs/sources/scripts/source/small_functions/screenshot_persistent.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/small_functions/screenshot_temporary.sh b/pkgs/sources/scripts/source/small_functions/screenshot_temporary.sh
index 8968ca79..8968ca79 100755
--- a/sys/nixpkgs/pkgs/scripts/source/small_functions/screenshot_temporary.sh
+++ b/pkgs/sources/scripts/source/small_functions/screenshot_temporary.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/small_functions/update-sys.sh b/pkgs/sources/scripts/source/small_functions/update-sys.sh
index d28247f6..d28247f6 100755
--- a/sys/nixpkgs/pkgs/scripts/source/small_functions/update-sys.sh
+++ b/pkgs/sources/scripts/source/small_functions/update-sys.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/neorg_id_function.sh b/pkgs/sources/scripts/source/specific/neorg/neorg_id_function.sh
index 865ecacf..865ecacf 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/neorg_id_function.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/neorg_id_function.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/add.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/add.sh
index 5a830a10..5a830a10 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/add.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/add.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/context.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/context.sh
index 7095847d..7095847d 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/context.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/context.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/dmenu.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/dmenu.sh
index 5a138982..5a138982 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/dmenu.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/dmenu.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/f_start.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/f_start.sh
index 2423dd44..2423dd44 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/f_start.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/f_start.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/f_stop.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/f_stop.sh
index e4ff0b94..e4ff0b94 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/f_stop.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/f_stop.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/list.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/list.sh
index 10659457..10659457 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/list.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/list.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/project.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/project.sh
index 64591850..64591850 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/project.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/project.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/review.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/review.sh
index a0a9ab8d..a0a9ab8d 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/review.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/review.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/utils.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/utils.sh
index c3843e8e..c3843e8e 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/utils.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/utils.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/workspace.sh b/pkgs/sources/scripts/source/specific/neorg/sh/functions/workspace.sh
index d5eb2fca..d5eb2fca 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/functions/workspace.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/functions/workspace.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/main.sh b/pkgs/sources/scripts/source/specific/neorg/sh/main.sh
index 559351b9..559351b9 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/neorg/sh/main.sh
+++ b/pkgs/sources/scripts/source/specific/neorg/sh/main.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/spodi/sh/download.sh b/pkgs/sources/scripts/source/specific/spodi/sh/download.sh
index fe9746c8..fe9746c8 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/spodi/sh/download.sh
+++ b/pkgs/sources/scripts/source/specific/spodi/sh/download.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/spodi/sh/update.sh b/pkgs/sources/scripts/source/specific/spodi/sh/update.sh
index a289cf58..a289cf58 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/spodi/sh/update.sh
+++ b/pkgs/sources/scripts/source/specific/spodi/sh/update.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/spodi/spodi.sh b/pkgs/sources/scripts/source/specific/spodi/spodi.sh
index 475fd48a..475fd48a 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/spodi/spodi.sh
+++ b/pkgs/sources/scripts/source/specific/spodi/spodi.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/specific/ytcc/description.sh b/pkgs/sources/scripts/source/specific/ytcc/description.sh
index ae9107b9..ae9107b9 100755
--- a/sys/nixpkgs/pkgs/scripts/source/specific/ytcc/description.sh
+++ b/pkgs/sources/scripts/source/specific/ytcc/description.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/battery.sh b/pkgs/sources/scripts/source/wrappers/battery.sh
index e650ba5d..e650ba5d 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/battery.sh
+++ b/pkgs/sources/scripts/source/wrappers/battery.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/hibernate.sh b/pkgs/sources/scripts/source/wrappers/hibernate.sh
index 30868fd1..30868fd1 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/hibernate.sh
+++ b/pkgs/sources/scripts/source/wrappers/hibernate.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/ll.sh b/pkgs/sources/scripts/source/wrappers/ll.sh
index f689ba44..f689ba44 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/ll.sh
+++ b/pkgs/sources/scripts/source/wrappers/ll.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/lock.sh b/pkgs/sources/scripts/source/wrappers/lock.sh
index 3101ef9a..3101ef9a 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/lock.sh
+++ b/pkgs/sources/scripts/source/wrappers/lock.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/lyrics.sh b/pkgs/sources/scripts/source/wrappers/lyrics.sh
index 02a147c8..02a147c8 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/lyrics.sh
+++ b/pkgs/sources/scripts/source/wrappers/lyrics.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/mpc-fav.sh b/pkgs/sources/scripts/source/wrappers/mpc-fav.sh
index 795a4875..795a4875 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/mpc-fav.sh
+++ b/pkgs/sources/scripts/source/wrappers/mpc-fav.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/mpc-rm.sh b/pkgs/sources/scripts/source/wrappers/mpc-rm.sh
index 94e0634b..94e0634b 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/mpc-rm.sh
+++ b/pkgs/sources/scripts/source/wrappers/mpc-rm.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/mpc.sh b/pkgs/sources/scripts/source/wrappers/mpc.sh
index 5aae5cdb..5aae5cdb 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/mpc.sh
+++ b/pkgs/sources/scripts/source/wrappers/mpc.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/show.sh b/pkgs/sources/scripts/source/wrappers/show.sh
index ae2bdb13..ae2bdb13 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/show.sh
+++ b/pkgs/sources/scripts/source/wrappers/show.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/sort_song.sh b/pkgs/sources/scripts/source/wrappers/sort_song.sh
index e2978507..e2978507 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/sort_song.sh
+++ b/pkgs/sources/scripts/source/wrappers/sort_song.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/virsh-del.sh b/pkgs/sources/scripts/source/wrappers/virsh-del.sh
index c3de5484..c3de5484 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/virsh-del.sh
+++ b/pkgs/sources/scripts/source/wrappers/virsh-del.sh
diff --git a/sys/nixpkgs/pkgs/scripts/source/wrappers/yti.sh b/pkgs/sources/scripts/source/wrappers/yti.sh
index a69ffa74..a69ffa74 100755
--- a/sys/nixpkgs/pkgs/scripts/source/wrappers/yti.sh
+++ b/pkgs/sources/scripts/source/wrappers/yti.sh
diff --git a/sys/nixpkgs/pkgs/snap-sync-forked/default.nix b/pkgs/sources/snap-sync-forked/default.nix
index 5b086a5a..5b086a5a 100644
--- a/sys/nixpkgs/pkgs/snap-sync-forked/default.nix
+++ b/pkgs/sources/snap-sync-forked/default.nix
diff --git a/sys/nixpkgs/pkgs/snap-sync-forked/snap-sync-forked.sh b/pkgs/sources/snap-sync-forked/snap-sync-forked.sh
index 3d9c1ac9..3d9c1ac9 100755
--- a/sys/nixpkgs/pkgs/snap-sync-forked/snap-sync-forked.sh
+++ b/pkgs/sources/snap-sync-forked/snap-sync-forked.sh
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/.editorconfig b/pkgs/sources/tree-sitter-yts/.editorconfig
index 919c78fa..919c78fa 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/.editorconfig
+++ b/pkgs/sources/tree-sitter-yts/.editorconfig
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/.envrc b/pkgs/sources/tree-sitter-yts/.envrc
index 3550a30f..3550a30f 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/.envrc
+++ b/pkgs/sources/tree-sitter-yts/.envrc
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/.gitignore b/pkgs/sources/tree-sitter-yts/.gitignore
index c4e2e389..c4e2e389 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/.gitignore
+++ b/pkgs/sources/tree-sitter-yts/.gitignore
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/Cargo.toml b/pkgs/sources/tree-sitter-yts/Cargo.toml
index 5287c420..5287c420 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/Cargo.toml
+++ b/pkgs/sources/tree-sitter-yts/Cargo.toml
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/binding.gyp b/pkgs/sources/tree-sitter-yts/binding.gyp
index b05038b4..b05038b4 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/binding.gyp
+++ b/pkgs/sources/tree-sitter-yts/binding.gyp
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/bindings/node/binding.cc b/pkgs/sources/tree-sitter-yts/bindings/node/binding.cc
index a042be54..a042be54 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/bindings/node/binding.cc
+++ b/pkgs/sources/tree-sitter-yts/bindings/node/binding.cc
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/bindings/node/index.js b/pkgs/sources/tree-sitter-yts/bindings/node/index.js
index 32179742..32179742 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/bindings/node/index.js
+++ b/pkgs/sources/tree-sitter-yts/bindings/node/index.js
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/bindings/rust/build.rs b/pkgs/sources/tree-sitter-yts/bindings/rust/build.rs
index c6061f09..c6061f09 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/bindings/rust/build.rs
+++ b/pkgs/sources/tree-sitter-yts/bindings/rust/build.rs
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/bindings/rust/lib.rs b/pkgs/sources/tree-sitter-yts/bindings/rust/lib.rs
index f1868b2d..f1868b2d 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/bindings/rust/lib.rs
+++ b/pkgs/sources/tree-sitter-yts/bindings/rust/lib.rs
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/corpus/comments.txt b/pkgs/sources/tree-sitter-yts/corpus/comments.txt
index 0070baf8..0070baf8 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/corpus/comments.txt
+++ b/pkgs/sources/tree-sitter-yts/corpus/comments.txt
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/corpus/comments_correct.txt b/pkgs/sources/tree-sitter-yts/corpus/comments_correct.txt
index 40cdab7d..40cdab7d 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/corpus/comments_correct.txt
+++ b/pkgs/sources/tree-sitter-yts/corpus/comments_correct.txt
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/corpus/duration.txt b/pkgs/sources/tree-sitter-yts/corpus/duration.txt
index 59476b98..59476b98 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/corpus/duration.txt
+++ b/pkgs/sources/tree-sitter-yts/corpus/duration.txt
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/corpus/url.txt b/pkgs/sources/tree-sitter-yts/corpus/url.txt
index 1ae3d106..1ae3d106 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/corpus/url.txt
+++ b/pkgs/sources/tree-sitter-yts/corpus/url.txt
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/default.nix b/pkgs/sources/tree-sitter-yts/default.nix
index 7e15481c..7e15481c 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/default.nix
+++ b/pkgs/sources/tree-sitter-yts/default.nix
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/flake.lock b/pkgs/sources/tree-sitter-yts/flake.lock
index bff9f1fa..bff9f1fa 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/flake.lock
+++ b/pkgs/sources/tree-sitter-yts/flake.lock
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/flake.nix b/pkgs/sources/tree-sitter-yts/flake.nix
index 1b6f8ab0..1b6f8ab0 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/flake.nix
+++ b/pkgs/sources/tree-sitter-yts/flake.nix
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/grammar.js b/pkgs/sources/tree-sitter-yts/grammar.js
index 655f6dea..655f6dea 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/grammar.js
+++ b/pkgs/sources/tree-sitter-yts/grammar.js
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/highlight.yts b/pkgs/sources/tree-sitter-yts/highlight.yts
index 319ee95c..319ee95c 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/highlight.yts
+++ b/pkgs/sources/tree-sitter-yts/highlight.yts
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/package.json b/pkgs/sources/tree-sitter-yts/package.json
index 2511ccb7..2511ccb7 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/package.json
+++ b/pkgs/sources/tree-sitter-yts/package.json
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/package.nix b/pkgs/sources/tree-sitter-yts/package.nix
index fe9a7326..fe9a7326 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/package.nix
+++ b/pkgs/sources/tree-sitter-yts/package.nix
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/queries/highlights.scm b/pkgs/sources/tree-sitter-yts/queries/highlights.scm
index 674cbf18..674cbf18 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/queries/highlights.scm
+++ b/pkgs/sources/tree-sitter-yts/queries/highlights.scm
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/src/grammar.json b/pkgs/sources/tree-sitter-yts/src/grammar.json
index a35a5464..a35a5464 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/src/grammar.json
+++ b/pkgs/sources/tree-sitter-yts/src/grammar.json
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/src/node-types.json b/pkgs/sources/tree-sitter-yts/src/node-types.json
index 1a63a552..1a63a552 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/src/node-types.json
+++ b/pkgs/sources/tree-sitter-yts/src/node-types.json
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/src/parser.c b/pkgs/sources/tree-sitter-yts/src/parser.c
index ded5c342..ded5c342 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/src/parser.c
+++ b/pkgs/sources/tree-sitter-yts/src/parser.c
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/src/tree_sitter/parser.h b/pkgs/sources/tree-sitter-yts/src/tree_sitter/parser.h
index 972913cf..972913cf 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/src/tree_sitter/parser.h
+++ b/pkgs/sources/tree-sitter-yts/src/tree_sitter/parser.h
diff --git a/sys/nixpkgs/pkgs/tree-sitter-yts/treefmt.toml b/pkgs/sources/tree-sitter-yts/treefmt.toml
index 3d604b40..3d604b40 100644
--- a/sys/nixpkgs/pkgs/tree-sitter-yts/treefmt.toml
+++ b/pkgs/sources/tree-sitter-yts/treefmt.toml
diff --git a/sys/nixpkgs/pkgs/update_pkgs.sh b/pkgs/sources/update_pkgs.sh
index be1573c6..be1573c6 100755
--- a/sys/nixpkgs/pkgs/update_pkgs.sh
+++ b/pkgs/sources/update_pkgs.sh
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/.envrc b/pkgs/sources/update_vim_plugins/.envrc
index 3550a30f..3550a30f 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/.envrc
+++ b/pkgs/sources/update_vim_plugins/.envrc
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/check-duplicates.sh b/pkgs/sources/update_vim_plugins/check-duplicates.sh
index 781b8aeb..781b8aeb 100755
--- a/sys/nixpkgs/pkgs/update_vim_plugins/check-duplicates.sh
+++ b/pkgs/sources/update_vim_plugins/check-duplicates.sh
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/default.nix b/pkgs/sources/update_vim_plugins/default.nix
index 7f0b3f0d..7f0b3f0d 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/default.nix
+++ b/pkgs/sources/update_vim_plugins/default.nix
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/flake.lock b/pkgs/sources/update_vim_plugins/flake.lock
index 50494465..50494465 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/flake.lock
+++ b/pkgs/sources/update_vim_plugins/flake.lock
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/flake.nix b/pkgs/sources/update_vim_plugins/flake.nix
index ef440af0..ef440af0 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/flake.nix
+++ b/pkgs/sources/update_vim_plugins/flake.nix
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/package.nix b/pkgs/sources/update_vim_plugins/package.nix
index e74a29b1..e74a29b1 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/package.nix
+++ b/pkgs/sources/update_vim_plugins/package.nix
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/poetry.lock b/pkgs/sources/update_vim_plugins/poetry.lock
index f4764b42..f4764b42 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/poetry.lock
+++ b/pkgs/sources/update_vim_plugins/poetry.lock
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/pyproject.toml b/pkgs/sources/update_vim_plugins/pyproject.toml
index 38caf76d..38caf76d 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/pyproject.toml
+++ b/pkgs/sources/update_vim_plugins/pyproject.toml
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update.sh b/pkgs/sources/update_vim_plugins/update.sh
index 1bad12a9..1bad12a9 100755
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update.sh
+++ b/pkgs/sources/update_vim_plugins/update.sh
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/__init__.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/__init__.py
index e69de29b..e69de29b 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/__init__.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/__init__.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/__main__.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/__main__.py
index a8d9e06f..a8d9e06f 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/__main__.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/__main__.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/cleanup.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/cleanup.py
index fd313ed0..fd313ed0 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/cleanup.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/cleanup.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/helpers.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/helpers.py
index 8a28b0e8..8a28b0e8 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/helpers.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/helpers.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/nix.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/nix.py
index 66a8df4c..66a8df4c 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/nix.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/nix.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/plugin.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/plugin.py
index 8334ad53..8334ad53 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/plugin.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/plugin.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/spec.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/spec.py
index 0f2fb29c..0f2fb29c 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/spec.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/spec.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/__init__.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/__init__.py
index e69de29b..e69de29b 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/__init__.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/__init__.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/fixtures.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/fixtures.py
index 75dd251a..75dd251a 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/fixtures.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/fixtures.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/test_nix.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_nix.py
index 46e59f76..46e59f76 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/test_nix.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_nix.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/test_plugin.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_plugin.py
index 32377e24..32377e24 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/test_plugin.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_plugin.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/test_spec.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_spec.py
index 2b9a1d24..2b9a1d24 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/tests/test_spec.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_spec.py
diff --git a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/update.py b/pkgs/sources/update_vim_plugins/update_vim_plugins/update.py
index 7eb3eeb4..7eb3eeb4 100644
--- a/sys/nixpkgs/pkgs/update_vim_plugins/update_vim_plugins/update.py
+++ b/pkgs/sources/update_vim_plugins/update_vim_plugins/update.py
diff --git a/sys/nixpkgs/pkgs/yt/.env b/pkgs/sources/yt/.env
index 8018a738..8018a738 100755
--- a/sys/nixpkgs/pkgs/yt/.env
+++ b/pkgs/sources/yt/.env
diff --git a/sys/nixpkgs/pkgs/yt/.envrc b/pkgs/sources/yt/.envrc
index 3550a30f..3550a30f 100644
--- a/sys/nixpkgs/pkgs/yt/.envrc
+++ b/pkgs/sources/yt/.envrc
diff --git a/sys/nixpkgs/pkgs/yt/.gitignore b/pkgs/sources/yt/.gitignore
index c84fa049..c84fa049 100644
--- a/sys/nixpkgs/pkgs/yt/.gitignore
+++ b/pkgs/sources/yt/.gitignore
diff --git a/sys/nixpkgs/pkgs/yt/Cargo.lock b/pkgs/sources/yt/Cargo.lock
index ef2a53fd..ef2a53fd 100644
--- a/sys/nixpkgs/pkgs/yt/Cargo.lock
+++ b/pkgs/sources/yt/Cargo.lock
diff --git a/sys/nixpkgs/pkgs/yt/Cargo.toml b/pkgs/sources/yt/Cargo.toml
index 7c17d20b..7c17d20b 100644
--- a/sys/nixpkgs/pkgs/yt/Cargo.toml
+++ b/pkgs/sources/yt/Cargo.toml
diff --git a/sys/nixpkgs/pkgs/yt/default.nix b/pkgs/sources/yt/default.nix
index 32396051..32396051 100644
--- a/sys/nixpkgs/pkgs/yt/default.nix
+++ b/pkgs/sources/yt/default.nix
diff --git a/sys/nixpkgs/pkgs/yt/flake.lock b/pkgs/sources/yt/flake.lock
index 50494465..50494465 100644
--- a/sys/nixpkgs/pkgs/yt/flake.lock
+++ b/pkgs/sources/yt/flake.lock
diff --git a/sys/nixpkgs/pkgs/yt/flake.nix b/pkgs/sources/yt/flake.nix
index 561b1c0d..561b1c0d 100644
--- a/sys/nixpkgs/pkgs/yt/flake.nix
+++ b/pkgs/sources/yt/flake.nix
diff --git a/sys/nixpkgs/pkgs/yt/src/bin/yt/main.rs b/pkgs/sources/yt/src/bin/yt/main.rs
index 37348834..37348834 100644
--- a/sys/nixpkgs/pkgs/yt/src/bin/yt/main.rs
+++ b/pkgs/sources/yt/src/bin/yt/main.rs
diff --git a/sys/nixpkgs/pkgs/yt/src/bin/ytc/args.rs b/pkgs/sources/yt/src/bin/ytc/args.rs
index 8b2d6a61..8b2d6a61 100644
--- a/sys/nixpkgs/pkgs/yt/src/bin/ytc/args.rs
+++ b/pkgs/sources/yt/src/bin/ytc/args.rs
diff --git a/sys/nixpkgs/pkgs/yt/src/bin/ytc/main.rs b/pkgs/sources/yt/src/bin/ytc/main.rs
index b38157df..b38157df 100644
--- a/sys/nixpkgs/pkgs/yt/src/bin/ytc/main.rs
+++ b/pkgs/sources/yt/src/bin/ytc/main.rs
diff --git a/sys/nixpkgs/pkgs/yt/src/bin/yts/args.rs b/pkgs/sources/yt/src/bin/yts/args.rs
index 56989421..56989421 100644
--- a/sys/nixpkgs/pkgs/yt/src/bin/yts/args.rs
+++ b/pkgs/sources/yt/src/bin/yts/args.rs
diff --git a/sys/nixpkgs/pkgs/yt/src/bin/yts/main.rs b/pkgs/sources/yt/src/bin/yts/main.rs
index 7398db61..7398db61 100644
--- a/sys/nixpkgs/pkgs/yt/src/bin/yts/main.rs
+++ b/pkgs/sources/yt/src/bin/yts/main.rs
diff --git a/sys/nixpkgs/pkgs/yt/src/constants.rs b/pkgs/sources/yt/src/constants.rs
index 5e233656..5e233656 100644
--- a/sys/nixpkgs/pkgs/yt/src/constants.rs
+++ b/pkgs/sources/yt/src/constants.rs
diff --git a/sys/nixpkgs/pkgs/yt/src/downloader.rs b/pkgs/sources/yt/src/downloader.rs
index e915700d..e915700d 100644
--- a/sys/nixpkgs/pkgs/yt/src/downloader.rs
+++ b/pkgs/sources/yt/src/downloader.rs
diff --git a/sys/nixpkgs/pkgs/yt/src/help.str b/pkgs/sources/yt/src/help.str
index 130fe42a..130fe42a 100644
--- a/sys/nixpkgs/pkgs/yt/src/help.str
+++ b/pkgs/sources/yt/src/help.str
diff --git a/sys/nixpkgs/pkgs/yt/src/lib.rs b/pkgs/sources/yt/src/lib.rs
index b089c1a2..b089c1a2 100644
--- a/sys/nixpkgs/pkgs/yt/src/lib.rs
+++ b/pkgs/sources/yt/src/lib.rs
diff --git a/pkgs/sources/yt/todo b/pkgs/sources/yt/todo
new file mode 100644
index 00000000..3f22042c
--- /dev/null
+++ b/pkgs/sources/yt/todo
@@ -0,0 +1 @@
+subtitles
diff --git a/sys/nixpkgs/pkgs/yt/update.sh b/pkgs/sources/yt/update.sh
index e500bb23..e500bb23 100755
--- a/sys/nixpkgs/pkgs/yt/update.sh
+++ b/pkgs/sources/yt/update.sh
diff --git a/sys/nixpkgs/pkgs/yt/yt.nix b/pkgs/sources/yt/yt.nix
index aaa971c3..aaa971c3 100644
--- a/sys/nixpkgs/pkgs/yt/yt.nix
+++ b/pkgs/sources/yt/yt.nix
diff --git a/sys/nixpkgs/pkgs/yt/ytc.nix b/pkgs/sources/yt/ytc.nix
index dff5bcf8..dff5bcf8 100644
--- a/sys/nixpkgs/pkgs/yt/ytc.nix
+++ b/pkgs/sources/yt/ytc.nix
diff --git a/sys/nixpkgs/pkgs/yt/yts.nix b/pkgs/sources/yt/yts.nix
index 9a8b172e..9a8b172e 100644
--- a/sys/nixpkgs/pkgs/yt/yts.nix
+++ b/pkgs/sources/yt/yts.nix
diff --git a/sys/boot/default.nix b/sys/boot/default.nix
deleted file mode 100644
index e5d05f31..00000000
--- a/sys/boot/default.nix
+++ /dev/null
@@ -1,117 +0,0 @@
-{
-  pkgs,
-  lib,
-  config,
-  ...
-}: let
-  cfg = config.boot.loader.systemd-boot;
-  inherit (config.boot.loader) efi;
-
-  esa = n: lib.strings.escapeShellArg n;
-
-  bootMountPoint =
-    if cfg.xbootldrMountPoint != null
-    then cfg.xbootldrMountPoint
-    else efi.efiSysMountPoint;
-
-  nixosDir = "/EFI/nixos";
-
-  # FIXME: This system has two big problems:
-  # 1. It does not updated files, which still have the same name
-  # 2. It forgets about files, which were 'deleted' in this configuration (these just
-  #    stay on disk forever) <2024-05-11>
-  copyExtraFiles = ''
-    echo "[systemd-boot] copying files to ${bootMountPoint}"
-    empty_file=$(mktemp)
-
-    ${lib.concatStrings (lib.mapAttrsToList (n: v:
-      /*
-      bash
-      */
-      ''
-        if ! [ -e ${esa "${bootMountPoint}/${n}"} ]; then
-          install -Dp "${v}" ${esa "${bootMountPoint}/${n}"}
-          install -D "$empty_file" ${esa "${bootMountPoint}/${nixosDir}/.extra-files/${n}"}
-        fi
-      '')
-    cfg.extraFiles)}
-
-    ${lib.concatStrings (lib.mapAttrsToList (n: v:
-      /*
-      bash
-      */
-      ''
-        # if ! [ -e ${esa "${bootMountPoint}/loader/entries/${n}"} ]; then
-          install -Dp "${pkgs.writeText n v}" ${esa "${bootMountPoint}/loader/entries/${n}"}
-          install -D "$empty_file" ${esa "${bootMountPoint}/${nixosDir}/.extra-files/loader/entries/${n}"}
-        # fi
-      '')
-    cfg.extraEntries)}
-  '';
-in {
-  # FIXME: Reactviate this whole iso thing when a disko redeploy is done.
-  # (and switch to tails instead of arch)<2024-05-12>
-  # system.activationScripts = {
-  #   copyExtraFilesForBoot = copyExtraFiles;
-  # };
-
-  boot = {
-    initrd = {
-      #compressor = "lz4";
-      #compressorArgs = ["-9"];
-      kernelModules = ["nvme" "btrfs"];
-    };
-
-    kernelPackages = pkgs.linuxPackages_latest;
-
-    lanzaboote = {
-      enable = true;
-      pkiBundle = "/etc/secureboot";
-
-      settings = {
-        # Disable editing the kernel command line (which could allow someone to become root)
-        editor = false;
-      };
-    };
-
-    loader = {
-      systemd-boot = {
-        # Lanzaboote currently replaces the systemd-boot module.
-        # This setting is usually set to true in configuration.nix
-        # generated at installation time. So we force it to false
-        # for now.
-        enable = false;
-
-        extraEntries = {
-          "live.conf" = ''
-            title Archlinux Live ISO
-            linux /live/vmlinuz-linux
-            initrd /live/initramfs-linux.img
-            options img_dev=${config.soispha.disks.disk} img_loop=/archlinux.iso copytoram
-          '';
-        };
-
-        extraFiles = let
-          iso = import ./archlive_iso.nix {inherit pkgs;};
-        in {
-          "archlinux.iso" = "${iso}/archlinux.iso";
-          "live/initramfs-linux.img" = "${iso}/live/initramfs-linux.img";
-          "live/vmlinuz-linux" = "${iso}/live/vmlinuz-linux";
-        };
-      };
-
-      grub = {
-        enable = false;
-        # theme = pkgs.nixos-grub2-theme;
-        splashImage = ./boot_pictures/gnu.png;
-        efiSupport = true;
-        device = "nodev"; # only for efi
-      };
-
-      efi = {
-        canTouchEfiVariables = true;
-        efiSysMountPoint = "/boot";
-      };
-    };
-  };
-}
diff --git a/sys/default.nix b/sys/default.nix
deleted file mode 100644
index 68a24892..00000000
--- a/sys/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{lib, ...}: {
-  imports = [
-    #./nixpkgs already at flake level imported
-    ./boot
-    ./disks
-    ./documentation
-    ./font
-    ./git_revision
-    ./hardware
-    ./impermanence
-    ./libvirtd
-    ./locale
-    ./network
-    ./options
-    ./polkit
-    ./power
-    ./secrets
-    ./sound
-    ./svcs
-    ./tempfiles
-    ./users
-    ./waydroid
-  ];
-  # remove all the bloat, which NixOS installs by default
-  environment = {
-    defaultPackages = lib.mkForce [];
-  };
-}
diff --git a/sys/documentation/default.nix b/sys/documentation/default.nix
deleted file mode 100644
index 6e7f4912..00000000
--- a/sys/documentation/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{...}: {
-  documentation = {
-    nixos = {
-      # TODO: Enable this, when the build is no longer local (i.e. I've access to a remote build server) <2023-08-28>
-      includeAllModules = true;
-
-      # I don't use this, and it has a considerable build time.
-      enable = false;
-    };
-    dev = {
-      # Add man pages aimed at developers (I guess c library stuff, and the like)
-      enable = true;
-    };
-  };
-}
diff --git a/sys/font/default.nix b/sys/font/default.nix
deleted file mode 100644
index cdbf03cf..00000000
--- a/sys/font/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{
-  pkgs,
-  lib,
-  ...
-}: let
-  nerdFont = pkgs.nerdfonts.override {
-    fonts = [
-      "SourceCodePro"
-      "Overpass"
-      "FiraCode"
-    ];
-  };
-in {
-  fonts = {
-    packages = [
-      nerdFont
-      pkgs.noto-fonts-emoji
-    ];
-    fontconfig = {
-      # NOTE: This is responsible for color emoji support <2023-08-28> -->
-      /*
-      WARNING: This [link](https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/111#note_630720)
-               contains some discussion about, the below code. But it's down right now.
-               <2023-08-28>
-      */
-      localConf = builtins.readFile ./font.xml;
-      defaultFonts = {
-        # FIXME: Add a serif font <2023-08-28>
-        serif = [];
-        sansSerif = lib.mkForce ["Overpass Nerd Font Propo"];
-        monospace = lib.mkForce ["SauceCodePro Nerd Font Mono" "Noto Color Emoji"];
-        emoji = lib.mkForce ["Noto Color Emoji"];
-      };
-      allowType1 = false;
-      allowBitmaps = false;
-    };
-  };
-}
diff --git a/sys/git_revision/default.nix b/sys/git_revision/default.nix
deleted file mode 100644
index c0a8bf72..00000000
--- a/sys/git_revision/default.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{self, ...}: {
-  environment.etc.nixos_git_rev = {
-    text = builtins.toString (self.longRev
-      or self.dirtyShortRev
-      or self.lastModified
-      or "unknown");
-  };
-}
diff --git a/sys/hardware/default.nix b/sys/hardware/default.nix
deleted file mode 100644
index 28d70d99..00000000
--- a/sys/hardware/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{pkgs, ...}: {
-  hardware = {
-    keyboard.zsa.enable = false;
-    onlykey.enable = true;
-    nitrokey.enable = true;
-
-    opengl = {
-      enable = true;
-      extraPackages = builtins.attrValues {
-        inherit
-          (pkgs)
-          vaapiVdpau
-          libvdpau-va-gl
-          ;
-      };
-    };
-  };
-  services.udev.extraRules = ''
-    # Rules for Oryx web flashing and live training
-    KERNEL=="hidraw*", ATTRS{idVendor}=="16c0", MODE="0664", GROUP="plugdev"
-    KERNEL=="hidraw*", ATTRS{idVendor}=="3297", MODE="0664", GROUP="plugdev"
-
-    # Legacy rules for live training over webusb (Not needed for firmware v21+)
-      # Rule for all ZSA keyboards
-      SUBSYSTEM=="usb", ATTR{idVendor}=="3297", GROUP="plugdev"
-      # Rule for the Moonlander
-      SUBSYSTEM=="usb", ATTR{idVendor}=="3297", ATTR{idProduct}=="1969", GROUP="plugdev"
-      # Rule for the Ergodox EZ
-      SUBSYSTEM=="usb", ATTR{idVendor}=="feed", ATTR{idProduct}=="1307", GROUP="plugdev"
-      # Rule for the Planck EZ
-      SUBSYSTEM=="usb", ATTR{idVendor}=="feed", ATTR{idProduct}=="6060", GROUP="plugdev"
-
-    # Wally Flashing rules for the Ergodox EZ
-    ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", ENV{ID_MM_DEVICE_IGNORE}="1"
-    ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", ENV{MTP_NO_PROBE}="1"
-    SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789ABCD]?", MODE:="0666"
-    KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", MODE:="0666"
-
-    # Wally Flashing rules for the Moonlander and Planck EZ
-    SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", \
-        MODE:="0666", \
-        SYMLINK+="stm32_dfu"
-  '';
-}
diff --git a/sys/impermanence/default.nix b/sys/impermanence/default.nix
deleted file mode 100644
index d116f45f..00000000
--- a/sys/impermanence/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{
-  config,
-  lib,
-  ...
-}: let
-  cfg = config.soispha.impermanence;
-  directories =
-    [
-      "/etc/nixos"
-      "/var/log"
-      "/var/lib/systemd"
-    ]
-    ++ lib.optional config.networking.networkmanager.enable "/etc/NetworkManager"
-    ++ lib.optional config.boot.lanzaboote.enable "/etc/secureboot"
-    ++ lib.optional config.hardware.bluetooth.enable "/var/lib/bluetooth"
-    ++ lib.optional config.virtualisation.waydroid.enable "/var/lib/waydroid"
-    ++ lib.optional config.services.postgresql.enable "/var/lib/postgresql";
-in {
-  options.soispha.impermanence = {
-    enable = lib.mkOption {
-      type = lib.types.bool;
-      default = true;
-      description = lib.mdDoc "Disk setup with disko";
-    };
-  };
-
-  config = lib.mkIf cfg.enable {
-    # needed for the hm impermanence config
-    programs.fuse.userAllowOther = true;
-
-    environment.persistence = {
-      "/srv" = {
-        hideMounts = true;
-        inherit directories;
-        files = [
-          "/etc/machine-id"
-        ];
-      };
-    };
-  };
-}
diff --git a/sys/network/default.nix b/sys/network/default.nix
deleted file mode 100644
index 9c570f3b..00000000
--- a/sys/network/default.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{
-  config,
-  lib,
-  ...
-}:
-{
-  systemd.network = {
-    networks = {
-      "tap0" = {
-        name = "tap0";
-        bridge = [
-          "virbr0"
-        ];
-      };
-      "enp4s0" = {
-        name = "enp4s0";
-        networkConfig = {
-          DHCP = "yes";
-          DNSOverTLS = "yes";
-          DNSSEC = "yes";
-        };
-        bridge = [
-          "virbr0"
-        ];
-      };
-    };
-    netdevs = {
-      "tap0" = {
-        netdevConfig = {
-          Name = "tap0";
-          Kind = "tap";
-        };
-        tapConfig = {
-          User = "${config.users.users.soispha.uid}";
-          Group = "libvirtd";
-        };
-      };
-      "virbr0" = {
-        netdevConfig = {
-          Name = "br0";
-          Kind = "bridge";
-        };
-      };
-    };
-  };
-}
-// lib.mkIf config.networking.networkmanager.enable {
-  users.users.soispha.extraGroups = [
-    "networkmanager" # allows to configure networkmanager as this user
-  ];
-}
diff --git a/sys/options/default.nix b/sys/options/default.nix
deleted file mode 100644
index 72ebc4fb..00000000
--- a/sys/options/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{
-  lib,
-  config,
-  ...
-}: let
-  cfg = config.soispha;
-in {
-  options.soispha = {
-    laptop = {
-      enable = lib.mkEnableOption "Laptop improvemens";
-      backlight = lib.mkOption {
-        type = lib.types.str;
-        example = lib.mdDoc "intel_backlight";
-        description = lib.mdDoc "Which backlight to query for the screen brightness";
-      };
-    };
-    secrets = {
-      #enable = lib.mkEnableOption "Secrets through agenix";
-      enable = lib.mkOption {
-        type = lib.types.bool;
-        default = true;
-        description = lib.mdDoc "Enable secrets through agenix";
-      };
-    };
-  };
-}
diff --git a/sys/options/secret.nix b/sys/options/secret.nix
deleted file mode 100644
index 06b1bc21..00000000
--- a/sys/options/secret.nix
+++ /dev/null
Binary files differdiff --git a/sys/polkit/default.nix b/sys/polkit/default.nix
deleted file mode 100644
index 9de68f35..00000000
--- a/sys/polkit/default.nix
+++ /dev/null
@@ -1,3 +0,0 @@
-{...}: {
-  security.polkit.enable = true;
-}
diff --git a/sys/power/default.nix b/sys/power/default.nix
deleted file mode 100644
index d20a97f2..00000000
--- a/sys/power/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{...}: {
-  # see this for reference: https://github.com/NixOS/nixpkgs/issues/211345
-  services = {
-    # conflicts with tlp
-    power-profiles-daemon.enable = false;
-    thermald.enable = true;
-    tlp = {
-      enable = true;
-      settings = {
-        CPU_BOOST_ON_AC = 1;
-        CPU_BOOST_ON_BAT = 0;
-        CPU_SCALING_GOVERNOR_ON_AC = "performance";
-        CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
-        SATA_LINKPWR_ON_AC = "max_performance";
-        SATA_LINKPWR_ON_BAT = "min_power";
-      };
-    };
-  };
-}
diff --git a/sys/secrets/default.nix b/sys/secrets/default.nix
deleted file mode 100644
index 35be53fb..00000000
--- a/sys/secrets/default.nix
+++ /dev/null
@@ -1,77 +0,0 @@
-{
-  config,
-  lib,
-  ...
-}: let
-  inherit (config.networking) hostName;
-  # mkFakeSecret = secretName: {
-  #   name = secretName;
-  #   value = {
-  #     path = "/dev/null";
-  #   };
-  # };
-  # fakeSecrets =
-  #   builtins.listToAttrs (lib.debug.traceValSeqN 2 (builtins.map mkFakeSecret
-  #       (lib.debug.traceValSeqN 2 (builtins.attrNames secrets))));
-in {
-  config =
-    lib.mkIf config.soispha.secrets.enable
-    {
-      age = {
-        secrets = {
-          nheko = {
-            file = ./nheko/conf. + hostName;
-            mode = "700";
-            owner = "soispha";
-            group = "users";
-          };
-          lf_cd_paths = {
-            file = ./lf/cd_paths;
-            mode = "700";
-            owner = "soispha";
-            group = "users";
-          };
-
-          # FIXME: Reactive when serverphone is merged in tree again <2024-05-11>
-          #
-          # serverphoneCa = {
-          #   file = ./serverphone/ca.key;
-          #   mode = "700";
-          #   owner = "serverphone";
-          #   group = "serverphone";
-          # };
-          # serverphoneServer = {
-          #   file = ./serverphone/server.key;
-          #   mode = "700";
-          #   owner = "serverphone";
-          #   group = "serverphone";
-          # };
-
-          taskserverPrivate = {
-            file = ./taskserver/private.key;
-            mode = "700";
-            owner = "soispha";
-            group = "users";
-          };
-          taskserverPublic = {
-            file = ./taskserver/public.cert;
-            mode = "700";
-            owner = "soispha";
-            group = "users";
-          };
-          taskserverCA = {
-            file = ./taskserver/ca.cert;
-            mode = "700";
-            owner = "soispha";
-            group = "users";
-          };
-          taskserverCredentials = {
-            file = ./taskserver/credentials;
-            mode = "700";
-            owner = "soispha";
-            group = "users";
-          };
-        };
-      };
-    };
-}
diff --git a/sys/sound/default.nix b/sys/sound/default.nix
deleted file mode 100644
index 49e4fa83..00000000
--- a/sys/sound/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{...}: {
-  # Enable sound with pipewire.
-  sound.enable = true;
-  hardware.pulseaudio.enable = false;
-  security.rtkit.enable = true;
-
-  services.pipewire = {
-    enable = true;
-    alsa.enable = true;
-    alsa.support32Bit = true;
-    pulse.enable = true;
-    jack.enable = true;
-  };
-
-  # TODO: Is this even needed? <2024-03-10>
-  # environment.etc.pipewire-pulse-config = {
-  #   target = "pipewire/pipewire-pulse.conf.d/pipewire-pulse-config.conf";
-  #   text = ''
-  #     # Extra scripts can be started here. Setup in default.pa can be moved in
-  #     # a script or in pulse.cmd below
-  #     context.exec = [
-  #         { path = "${pkgs.pulseaudio}/bin/pactl"        args = "set-sink-volume 0 13%" }
-  #     ]
-  #   '';
-  # };
-}
diff --git a/sys/svcs/dconf/default.nix b/sys/svcs/dconf/default.nix
deleted file mode 100644
index db35208e..00000000
--- a/sys/svcs/dconf/default.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{
-  config,
-  lib,
-  pkgs,
-  ...
-}: {
-  # needed to make home-manager play nice with some apps. See:
-  # https://nix-community.github.io/home-manager/index.html#_why_do_i_get_an_error_message_about_literal_ca_desrt_dconf_literal_or_literal_dconf_service_literal
-  programs.dconf.enable = true;
-}
diff --git a/sys/svcs/fwupd/default.nix b/sys/svcs/fwupd/default.nix
deleted file mode 100644
index 999ca72b..00000000
--- a/sys/svcs/fwupd/default.nix
+++ /dev/null
@@ -1,3 +0,0 @@
-{...}: {
-  services.fwupd.enable = true;
-}
diff --git a/sys/svcs/postgresql/default.nix b/sys/svcs/postgresql/default.nix
deleted file mode 100644
index 09cca2ef..00000000
--- a/sys/svcs/postgresql/default.nix
+++ /dev/null
@@ -1,5 +0,0 @@
-{config, ...}: {
-  services.postgresql = {
-    enable = !config.soispha.laptop.enable;
-  };
-}
diff --git a/sys/svcs/printing/default.nix b/sys/svcs/printing/default.nix
deleted file mode 100644
index ea197bbf..00000000
--- a/sys/svcs/printing/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{...}: {
-  services.avahi = {
-    enable = true;
-    nssmdns4 = true;
-    nssmdns6 = true;
-    openFirewall = true;
-  };
-  services.printing = {
-    enable = true;
-    startWhenNeeded = true;
-    webInterface = true;
-
-    # deletes `/var/cache/cups`, `/var/lib/cups` and `/var/spool/cups` on cups startup
-    stateless = true;
-
-    drivers = [];
-  };
-  hardware = {
-    printers = {
-      ensurePrinters = [
-        {
-          name = "Brother";
-          description = "Brother DCP-9022CDW";
-          model = "everywhere";
-          deviceUri = "dnssd://Brother%20DCP-9022CDW._ipp._tcp.local/?uuid=e3248000-80ce-11db-8000-30055c773bcf";
-        }
-      ];
-      ensureDefaultPrinter = "Brother";
-    };
-  };
-}
diff --git a/sys/svcs/scanning/default.nix b/sys/svcs/scanning/default.nix
deleted file mode 100644
index 6621e08f..00000000
--- a/sys/svcs/scanning/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{pkgs, ...}: {
-  hardware = {
-    sane = {
-      enable = true;
-      extraBackends = [pkgs.sane-airscan];
-    };
-  };
-
-  users.users.soispha.extraGroups = [
-    "scanner" # for permission to access the scanner.
-  ];
-}
diff --git a/sys/svcs/snapper/default.nix b/sys/svcs/snapper/default.nix
deleted file mode 100644
index 41e4b381..00000000
--- a/sys/svcs/snapper/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{...}: {
-  services.snapper = {
-    configs = {
-      srv = {
-        SUBVOLUME = "/srv";
-        FSTYPE = "btrfs";
-        # users and groups allowed to work with config
-        ALLOW_GROUPS = ["wheel"];
-
-        # sync users and groups from ALLOW_USERS and ALLOW_GROUPS to .snapshots
-        # directory
-        SYNC_ACL = true;
-
-        # run daily number cleanup
-        NUMBER_CLEANUP = false;
-
-        # limit for number cleanup
-        NUMBER_MIN_AGE = 1800;
-        NUMBER_LIMIT = 50;
-        NUMBER_LIMIT_IMPORTANT = 10;
-
-        # create hourly snapshots
-        TIMELINE_CREATE = true;
-
-        # cleanup hourly snapshots after some time
-        TIMELINE_CLEANUP = true;
-
-        # limits for timeline cleanup
-        TIMELINE_MIN_AGE = 1800;
-        TIMELINE_LIMIT_HOURLY = 7;
-        TIMELINE_LIMIT_DAILY = 3;
-        TIMELINE_LIMIT_WEEKLY = 2;
-        TIMELINE_LIMIT_MONTHLY = 0;
-        TIMELINE_LIMIT_YEARLY = 2;
-
-        # cleanup empty pre-post-pairs
-        EMPTY_PRE_POST_CLEANUP = true;
-      };
-    };
-  };
-}
diff --git a/sys/tempfiles/default.nix b/sys/tempfiles/default.nix
deleted file mode 100644
index 2d48b02e..00000000
--- a/sys/tempfiles/default.nix
+++ /dev/null
@@ -1,6 +0,0 @@
-{config, ...}: {
-  systemd.tmpfiles.rules = [
-    # this file is needed to trash stuff on the temp fs
-    "d /.Trash 1777 root root" # TODO: move this to the lf config
-  ];
-}
diff --git a/sys/users/default.nix b/sys/users/default.nix
deleted file mode 100644
index 46e489a3..00000000
--- a/sys/users/default.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-{
-  config,
-  pkgs,
-  lib,
-  ...
-}: let
-  cfg = config.soispha.users;
-in {
-  options.soispha.users = {
-    # enable = lib.mkEnableOption (lib.mdDoc "users");
-    hashedPassword = lib.mkOption {
-      type = lib.types.str;
-      example = lib.literalExpression "$y$jFT$ONrCqZIJKB7engmfA4orD/$0GO58/wV5wrYWj0cyONhyujZPjFmbT0XKtx2AvXLG0B";
-      default = "$y$jFT$ONrCqZIJKB7engmfA4orD/$0GO58/wV5wrYWj0cyONhyujZPjFmbT0XKtx2AvXLG0B";
-      description = lib.mdDoc "Hashed password for the user";
-    };
-  };
-
-  config = {
-    # I was told, that this solves some nasty problems:
-    programs.zsh.enable = true;
-
-    users = {
-      groups = {
-        plugdev.members = ["soispha"];
-      };
-      mutableUsers = false;
-      users.soispha = {
-        isNormalUser = true;
-        home = "/home/soispha";
-        createHome = true;
-        shell = pkgs.zsh;
-        initialHashedPassword = cfg.hashedPassword;
-        extraGroups = [
-          "plugdev" # although deprecated, this helps with old udev rules, that still use this group. TODO: check for an open issue
-          "wheel"
-        ];
-        uid = 1000;
-        openssh.authorizedKeys.keys = [
-          "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIME4ZVa+IoZf6T3U08JG93i6QIAJ4amm7mkBzO14JSkz"
-        ];
-      };
-    };
-  };
-}