about summary refs log tree commit diff stats
path: root/pkgs
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-23 13:26:22 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-23 13:26:22 +0200
commit204731c0a69136c9cebcb54f1afecf5145e26bbe (patch)
treefc9132e5dc74e4a8e1327cdd411839a90f9410aa /pkgs
parentrefactor(sys): Modularize and move to `modules/system` or `pkgs` (diff)
downloadnixos-config-204731c0a69136c9cebcb54f1afecf5145e26bbe.tar.gz
nixos-config-204731c0a69136c9cebcb54f1afecf5145e26bbe.zip
refactor(pkgs): Categorize into `by-name` shards
This might not be the perfect way to organize a package set --
especially if the set is not nearly the size of nixpkgs -- but it is
_at_ least a way of organization.
Diffstat (limited to '')
-rw-r--r--pkgs/by-name-overlay.nix70
-rwxr-xr-xpkgs/by-name/au/aumo/aumo.sh (renamed from pkgs/sources/scripts/source/apps/aumo.sh)0
-rw-r--r--pkgs/by-name/au/aumo/package.nix17
-rwxr-xr-xpkgs/by-name/ba/battery/battery.sh (renamed from pkgs/sources/scripts/source/wrappers/battery.sh)0
-rw-r--r--pkgs/by-name/ba/battery/package.nix9
-rwxr-xr-xpkgs/by-name/br/brightness/brightness.sh (renamed from pkgs/sources/scripts/source/small_functions/brightness.sh)0
-rw-r--r--pkgs/by-name/br/brightness/package.nix14
-rw-r--r--pkgs/by-name/co/comments/.envrc (renamed from pkgs/sources/comments/.envrc)0
-rw-r--r--pkgs/by-name/co/comments/.gitignore (renamed from pkgs/sources/comments/.gitignore)0
-rw-r--r--pkgs/by-name/co/comments/Cargo.lock (renamed from pkgs/sources/comments/Cargo.lock)0
-rw-r--r--pkgs/by-name/co/comments/Cargo.toml (renamed from pkgs/sources/comments/Cargo.toml)0
-rw-r--r--pkgs/by-name/co/comments/flake.lock (renamed from pkgs/sources/comments/flake.lock)0
-rw-r--r--pkgs/by-name/co/comments/flake.nix (renamed from pkgs/sources/comments/flake.nix)0
-rw-r--r--pkgs/by-name/co/comments/package.nix (renamed from pkgs/sources/comments/comments.nix)0
-rw-r--r--pkgs/by-name/co/comments/src/info_json.rs (renamed from pkgs/sources/comments/src/info_json.rs)0
-rw-r--r--pkgs/by-name/co/comments/src/main.rs (renamed from pkgs/sources/comments/src/main.rs)0
-rwxr-xr-xpkgs/by-name/co/comments/update.sh (renamed from pkgs/sources/comments/update.sh)0
-rwxr-xr-xpkgs/by-name/co/con2pdf/con2pdf.sh (renamed from pkgs/sources/scripts/source/apps/con2pdf.sh)0
-rw-r--r--pkgs/by-name/co/con2pdf/package.nix33
-rwxr-xr-xpkgs/by-name/de/description/description.sh (renamed from pkgs/sources/scripts/source/specific/ytcc/description.sh)0
-rw-r--r--pkgs/by-name/de/description/package.nix20
-rw-r--r--pkgs/by-name/fu/fupdate/fupdate.1.md (renamed from pkgs/sources/scripts/source/apps/fupdate.1.md)0
-rwxr-xr-xpkgs/by-name/fu/fupdate/fupdate.sh (renamed from pkgs/sources/scripts/source/apps/fupdate.sh)0
-rw-r--r--pkgs/by-name/fu/fupdate/package.nix29
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/.envrc (renamed from pkgs/sources/generate_moz_extension/.envrc)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/.gitignore (renamed from pkgs/sources/generate_moz_extension/.gitignore)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/Cargo.lock (renamed from pkgs/sources/generate_moz_extension/Cargo.lock)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/Cargo.toml (renamed from pkgs/sources/generate_moz_extension/Cargo.toml)0
-rwxr-xr-xpkgs/by-name/ge/generate_moz_extension/examples/generate_extensions.sh (renamed from pkgs/sources/generate_moz_extension/examples/generate_extensions.sh)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/flake.lock (renamed from pkgs/sources/generate_moz_extension/flake.lock)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/flake.nix (renamed from pkgs/sources/generate_moz_extension/flake.nix)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/package.nix (renamed from pkgs/sources/generate_moz_extension/generate_firefox_extensions.nix)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/res/generate_extensions.py (renamed from pkgs/sources/generate_moz_extension/res/generate_extensions.py)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/res/reference.json (renamed from pkgs/sources/generate_moz_extension/res/reference.json)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/res/test.json (renamed from pkgs/sources/generate_moz_extension/res/test.json)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/src/main.rs (renamed from pkgs/sources/generate_moz_extension/src/main.rs)0
-rw-r--r--pkgs/by-name/ge/generate_moz_extension/src/types.rs (renamed from pkgs/sources/generate_moz_extension/src/types.rs)0
-rwxr-xr-xpkgs/by-name/ge/generate_moz_extension/update.sh (renamed from pkgs/sources/generate_moz_extension/update.sh)0
-rwxr-xr-xpkgs/by-name/gi/git-edit-index/git-edit-index.sh (renamed from pkgs/sources/scripts/source/apps/git-edit-index.sh)0
-rw-r--r--pkgs/by-name/gi/git-edit-index/package.nix19
-rwxr-xr-xpkgs/by-name/hi/hibernate/hibernate.sh (renamed from pkgs/sources/scripts/source/wrappers/hibernate.sh)0
-rw-r--r--pkgs/by-name/hi/hibernate/package.nix15
-rw-r--r--pkgs/by-name/lf/lf-make-map/.envrc (renamed from pkgs/sources/lf-make-map/.envrc)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/.gitignore (renamed from pkgs/sources/lf-make-map/.gitignore)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/Cargo.lock (renamed from pkgs/sources/lf-make-map/Cargo.lock)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/Cargo.toml (renamed from pkgs/sources/lf-make-map/Cargo.toml)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/README.md (renamed from pkgs/sources/lf-make-map/README.md)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/flake.lock (renamed from pkgs/sources/lf-make-map/flake.lock)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/flake.nix (renamed from pkgs/sources/lf-make-map/flake.nix)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/package.nix (renamed from pkgs/sources/lf-make-map/lf_make_map.nix)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/src/cli.rs (renamed from pkgs/sources/lf-make-map/src/cli.rs)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/src/main.rs (renamed from pkgs/sources/lf-make-map/src/main.rs)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/display.rs (renamed from pkgs/sources/lf-make-map/src/mapping/map_tree/display.rs)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/iterator.rs (renamed from pkgs/sources/lf-make-map/src/mapping/map_tree/iterator.rs)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/lf_mapping.rs (renamed from pkgs/sources/lf-make-map/src/mapping/map_tree/lf_mapping.rs)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/mod.rs (renamed from pkgs/sources/lf-make-map/src/mapping/map_tree/mod.rs)0
-rw-r--r--pkgs/by-name/lf/lf-make-map/src/mapping/mod.rs (renamed from pkgs/sources/lf-make-map/src/mapping/mod.rs)0
-rwxr-xr-xpkgs/by-name/lf/lf-make-map/update.sh (renamed from pkgs/sources/lf-make-map/update.sh)0
-rwxr-xr-xpkgs/by-name/ll/ll/ll.sh (renamed from pkgs/sources/scripts/source/wrappers/ll.sh)0
-rw-r--r--pkgs/by-name/ll/ll/package.nix9
-rwxr-xr-xpkgs/by-name/lo/lock/lock.sh (renamed from pkgs/sources/scripts/source/wrappers/lock.sh)0
-rw-r--r--pkgs/by-name/lo/lock/package.nix15
-rwxr-xr-xpkgs/by-name/ly/lyrics/lyrics.sh (renamed from pkgs/sources/scripts/source/wrappers/lyrics.sh)0
-rw-r--r--pkgs/by-name/ly/lyrics/package.nix21
-rwxr-xr-xpkgs/by-name/mp/mpc-fav/mpc-fav.sh (renamed from pkgs/sources/scripts/source/wrappers/mpc-fav.sh)0
-rw-r--r--pkgs/by-name/mp/mpc-fav/package.nix13
-rwxr-xr-xpkgs/by-name/mp/mpc-rm/mpc-rm.sh (renamed from pkgs/sources/scripts/source/wrappers/mpc-rm.sh)0
-rw-r--r--pkgs/by-name/mp/mpc-rm/package.nix15
-rwxr-xr-xpkgs/by-name/mp/mpc/mpc.sh (renamed from pkgs/sources/scripts/source/wrappers/mpc.sh)0
-rw-r--r--pkgs/by-name/mp/mpc/package.nix17
-rwxr-xr-xpkgs/by-name/na/nato/nato.py (renamed from pkgs/sources/scripts/source/small_functions/nato.py)0
-rw-r--r--pkgs/by-name/na/nato/package.nix34
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/add.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/add.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/context.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/context.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/dmenu.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/dmenu.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/f_start.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/f_start.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/f_stop.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/f_stop.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/list.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/list.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/project.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/project.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/review.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/review.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/utils.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/utils.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/functions/workspace.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/functions/workspace.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/main.sh (renamed from pkgs/sources/scripts/source/specific/neorg/sh/main.sh)0
-rwxr-xr-xpkgs/by-name/ne/neorg/neorg_id_function.sh (renamed from pkgs/sources/scripts/source/specific/neorg/neorg_id_function.sh)0
-rw-r--r--pkgs/by-name/ne/neorg/package.nix69
-rw-r--r--pkgs/by-name/sc/screenshot_persistent/package.nix23
-rwxr-xr-xpkgs/by-name/sc/screenshot_persistent/screenshot_persistent.sh (renamed from pkgs/sources/scripts/source/small_functions/screenshot_persistent.sh)0
-rw-r--r--pkgs/by-name/sc/screenshot_temporary/package.nix17
-rwxr-xr-xpkgs/by-name/sc/screenshot_temporary/screenshot_temporary.sh (renamed from pkgs/sources/scripts/source/small_functions/screenshot_temporary.sh)0
-rw-r--r--pkgs/by-name/sh/show/package.nix15
-rwxr-xr-xpkgs/by-name/sh/show/show.sh (renamed from pkgs/sources/scripts/source/wrappers/show.sh)0
-rw-r--r--pkgs/by-name/sn/snap-sync-forked/package.nix36
-rwxr-xr-xpkgs/by-name/sn/snap-sync-forked/snap-sync-forked.sh (renamed from pkgs/sources/snap-sync-forked/snap-sync-forked.sh)0
-rw-r--r--pkgs/by-name/so/sort_song/package.nix17
-rwxr-xr-xpkgs/by-name/so/sort_song/sort_song.sh (renamed from pkgs/sources/scripts/source/wrappers/sort_song.sh)0
-rw-r--r--pkgs/by-name/sp/spodi/package.nix39
-rwxr-xr-xpkgs/by-name/sp/spodi/sh/download.sh (renamed from pkgs/sources/scripts/source/specific/spodi/sh/download.sh)0
-rwxr-xr-xpkgs/by-name/sp/spodi/sh/update.sh (renamed from pkgs/sources/scripts/source/specific/spodi/sh/update.sh)0
-rwxr-xr-xpkgs/by-name/sp/spodi/spodi.sh (renamed from pkgs/sources/scripts/source/specific/spodi/spodi.sh)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/.editorconfig (renamed from pkgs/sources/tree-sitter-yts/.editorconfig)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/.envrc (renamed from pkgs/sources/tree-sitter-yts/.envrc)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/.gitignore (renamed from pkgs/sources/tree-sitter-yts/.gitignore)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/Cargo.toml (renamed from pkgs/sources/tree-sitter-yts/Cargo.toml)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/binding.gyp (renamed from pkgs/sources/tree-sitter-yts/binding.gyp)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/bindings/node/binding.cc (renamed from pkgs/sources/tree-sitter-yts/bindings/node/binding.cc)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/bindings/node/index.js (renamed from pkgs/sources/tree-sitter-yts/bindings/node/index.js)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/bindings/rust/build.rs (renamed from pkgs/sources/tree-sitter-yts/bindings/rust/build.rs)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/bindings/rust/lib.rs (renamed from pkgs/sources/tree-sitter-yts/bindings/rust/lib.rs)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/corpus/comments.txt (renamed from pkgs/sources/tree-sitter-yts/corpus/comments.txt)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/corpus/comments_correct.txt (renamed from pkgs/sources/tree-sitter-yts/corpus/comments_correct.txt)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/corpus/duration.txt (renamed from pkgs/sources/tree-sitter-yts/corpus/duration.txt)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/corpus/url.txt (renamed from pkgs/sources/tree-sitter-yts/corpus/url.txt)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/flake.lock (renamed from pkgs/sources/tree-sitter-yts/flake.lock)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/flake.nix (renamed from pkgs/sources/tree-sitter-yts/flake.nix)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/grammar.js (renamed from pkgs/sources/tree-sitter-yts/grammar.js)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/highlight.yts (renamed from pkgs/sources/tree-sitter-yts/highlight.yts)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/package.json (renamed from pkgs/sources/tree-sitter-yts/package.json)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/package.nix59
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/queries/highlights.scm (renamed from pkgs/sources/tree-sitter-yts/queries/highlights.scm)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/src/grammar.json (renamed from pkgs/sources/tree-sitter-yts/src/grammar.json)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/src/node-types.json (renamed from pkgs/sources/tree-sitter-yts/src/node-types.json)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/src/parser.c (renamed from pkgs/sources/tree-sitter-yts/src/parser.c)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/src/tree_sitter/parser.h (renamed from pkgs/sources/tree-sitter-yts/src/tree_sitter/parser.h)0
-rw-r--r--pkgs/by-name/tr/tree-sitter-yts/treefmt.toml (renamed from pkgs/sources/tree-sitter-yts/treefmt.toml)0
-rw-r--r--pkgs/by-name/up/update-sys/package.nix29
-rwxr-xr-xpkgs/by-name/up/update-sys/update-sys.sh (renamed from pkgs/sources/scripts/source/small_functions/update-sys.sh)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/.envrc (renamed from pkgs/sources/update_vim_plugins/.envrc)0
-rwxr-xr-xpkgs/by-name/up/update-vim-plugins/check-duplicates.sh (renamed from pkgs/sources/update_vim_plugins/check-duplicates.sh)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/flake.lock (renamed from pkgs/sources/update_vim_plugins/flake.lock)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/flake.nix (renamed from pkgs/sources/update_vim_plugins/flake.nix)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/package.nix (renamed from pkgs/sources/update_vim_plugins/package.nix)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/poetry.lock (renamed from pkgs/sources/update_vim_plugins/poetry.lock)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/pyproject.toml (renamed from pkgs/sources/update_vim_plugins/pyproject.toml)0
-rwxr-xr-xpkgs/by-name/up/update-vim-plugins/update.sh (renamed from pkgs/sources/update_vim_plugins/update.sh)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/__init__.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/__init__.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/__main__.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/__main__.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/cleanup.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/cleanup.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/helpers.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/helpers.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/nix.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/nix.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/plugin.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/plugin.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/spec.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/spec.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/__init__.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/tests/__init__.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/fixtures.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/tests/fixtures.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/test_nix.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_nix.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/test_plugin.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_plugin.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/test_spec.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_spec.py)0
-rw-r--r--pkgs/by-name/up/update-vim-plugins/update_vim_plugins/update.py (renamed from pkgs/sources/update_vim_plugins/update_vim_plugins/update.py)0
-rwxr-xr-xpkgs/by-name/update_pkgs.sh (renamed from pkgs/sources/update_pkgs.sh)0
-rw-r--r--pkgs/by-name/vi/vim-plugins/README.md (renamed from pkgs/sources/plgs-pkgs/README.md)0
-rw-r--r--pkgs/by-name/vi/vim-plugins/check.nix (renamed from pkgs/sources/plgs-pkgs/check.nix)0
-rw-r--r--pkgs/by-name/vi/vim-plugins/overrides.nix (renamed from pkgs/sources/plgs-pkgs/overrides.nix)0
-rw-r--r--pkgs/by-name/vi/vim-plugins/package.nix19
-rw-r--r--pkgs/by-name/vi/vim-plugins/plugins/.plugins.json (renamed from pkgs/sources/plgs-pkgs/plugins/.plugins.json)0
-rw-r--r--pkgs/by-name/vi/vim-plugins/plugins/blacklist.txt (renamed from pkgs/sources/plgs-pkgs/plugins/blacklist.txt)0
-rw-r--r--pkgs/by-name/vi/vim-plugins/plugins/default.nix (renamed from pkgs/sources/plgs-pkgs/plugins/default.nix)0
-rw-r--r--pkgs/by-name/vi/vim-plugins/plugins/manifest.txt (renamed from pkgs/sources/plgs-pkgs/plugins/manifest.txt)0
-rw-r--r--pkgs/by-name/vi/vim-plugins/plugins/plugins.md (renamed from pkgs/sources/plgs-pkgs/plugins/plugins.md)0
-rw-r--r--pkgs/by-name/vi/vim-plugins/plugins/whitelist.txt (renamed from pkgs/sources/plgs-pkgs/plugins/whitelist.txt)0
-rwxr-xr-xpkgs/by-name/vi/vim-plugins/update.sh (renamed from pkgs/sources/plgs-pkgs/update.sh)0
-rw-r--r--pkgs/by-name/vi/virsh-del/package.nix13
-rwxr-xr-xpkgs/by-name/vi/virsh-del/virsh-del.sh (renamed from pkgs/sources/scripts/source/wrappers/virsh-del.sh)0
-rwxr-xr-xpkgs/by-name/yt/yt/.env (renamed from pkgs/sources/yt/.env)0
-rw-r--r--pkgs/by-name/yt/yt/.envrc (renamed from pkgs/sources/yt/.envrc)0
-rw-r--r--pkgs/by-name/yt/yt/.gitignore (renamed from pkgs/sources/yt/.gitignore)0
-rw-r--r--pkgs/by-name/yt/yt/Cargo.lock (renamed from pkgs/sources/yt/Cargo.lock)0
-rw-r--r--pkgs/by-name/yt/yt/Cargo.toml (renamed from pkgs/sources/yt/Cargo.toml)0
-rw-r--r--pkgs/by-name/yt/yt/flake.lock (renamed from pkgs/sources/yt/flake.lock)0
-rw-r--r--pkgs/by-name/yt/yt/flake.nix (renamed from pkgs/sources/yt/flake.nix)0
-rw-r--r--pkgs/by-name/yt/yt/package.nix44
-rw-r--r--pkgs/by-name/yt/yt/src/bin/yt/main.rs (renamed from pkgs/sources/yt/src/bin/yt/main.rs)0
-rw-r--r--pkgs/by-name/yt/yt/src/bin/ytc/args.rs (renamed from pkgs/sources/yt/src/bin/ytc/args.rs)0
-rw-r--r--pkgs/by-name/yt/yt/src/bin/ytc/main.rs (renamed from pkgs/sources/yt/src/bin/ytc/main.rs)0
-rw-r--r--pkgs/by-name/yt/yt/src/bin/yts/args.rs (renamed from pkgs/sources/yt/src/bin/yts/args.rs)0
-rw-r--r--pkgs/by-name/yt/yt/src/bin/yts/main.rs (renamed from pkgs/sources/yt/src/bin/yts/main.rs)0
-rw-r--r--pkgs/by-name/yt/yt/src/constants.rs (renamed from pkgs/sources/yt/src/constants.rs)0
-rw-r--r--pkgs/by-name/yt/yt/src/downloader.rs (renamed from pkgs/sources/yt/src/downloader.rs)0
-rw-r--r--pkgs/by-name/yt/yt/src/help.str (renamed from pkgs/sources/yt/src/help.str)0
-rw-r--r--pkgs/by-name/yt/yt/src/lib.rs (renamed from pkgs/sources/yt/src/lib.rs)0
-rw-r--r--pkgs/by-name/yt/yt/todo (renamed from pkgs/sources/yt/todo)0
-rwxr-xr-xpkgs/by-name/yt/yt/update.sh (renamed from pkgs/sources/yt/update.sh)0
-rw-r--r--pkgs/by-name/yt/yt/yt.nix (renamed from pkgs/sources/yt/yt.nix)0
-rw-r--r--pkgs/by-name/yt/yt/ytc.nix (renamed from pkgs/sources/yt/ytc.nix)0
-rw-r--r--pkgs/by-name/yt/yt/yts.nix (renamed from pkgs/sources/yt/yts.nix)0
-rw-r--r--pkgs/by-name/yt/yti/package.nix17
-rwxr-xr-xpkgs/by-name/yt/yti/yti.sh (renamed from pkgs/sources/scripts/source/wrappers/yti.sh)0
-rw-r--r--pkgs/default.nix28
-rw-r--r--pkgs/flake.nix22
-rw-r--r--pkgs/overlay.nix16
-rw-r--r--pkgs/sources/comments/default.nix18
-rw-r--r--pkgs/sources/default.nix27
-rw-r--r--pkgs/sources/generate_moz_extension/default.nix16
-rw-r--r--pkgs/sources/lf-make-map/default.nix12
-rw-r--r--pkgs/sources/plgs-pkgs/default.nix15
-rw-r--r--pkgs/sources/scripts/default.nix412
-rw-r--r--pkgs/sources/snap-sync-forked/default.nix24
-rw-r--r--pkgs/sources/tree-sitter-yts/default.nix11
-rw-r--r--pkgs/sources/tree-sitter-yts/package.nix63
-rw-r--r--pkgs/sources/update_vim_plugins/default.nix17
-rw-r--r--pkgs/sources/yt/default.nix51
199 files changed, 793 insertions, 686 deletions
diff --git a/pkgs/by-name-overlay.nix b/pkgs/by-name-overlay.nix
new file mode 100644
index 00000000..7eb3d239
--- /dev/null
+++ b/pkgs/by-name-overlay.nix
@@ -0,0 +1,70 @@
+# Adapted from this: https://github.com/NixOS/nixpkgs/blob/1814b56453c91192f6d5a6276079948f9fe96c18/pkgs/top-level/by-name-overlay.nix
+{
+  lib,
+  sysLib,
+  pkgs,
+  baseDirectory,
+}:
+# This file turns the pkgs/by-name directory (see its README.md for more info) into an overlay that adds all the defined packages.
+# No validity checks are done here,
+# instead this file is optimised for performance,
+# and validity checks are done by CI on PRs.
+let
+  # FIXME: Check if we override something in the set <2024-05-22>
+  callPackage = lib.callPackageWith (pkgs // myPkgs // {inherit sysLib;});
+  inherit lib;
+
+  inherit
+    (builtins)
+    readDir
+    ;
+
+  inherit
+    (lib.attrsets)
+    mapAttrs
+    mapAttrsToList
+    mergeAttrsList
+    ;
+
+  # Package files for a single shard
+  # Type: String -> String -> AttrsOf Path
+  namesForShard = shard: type:
+    if type != "directory"
+    then
+      # Ignore all non-directories. Technically only README.md is allowed as a file in the base directory, so we could alternatively:
+      # - Assume that README.md is the only file and change the condition to `shard == "README.md"` for a minor performance improvement.
+      #   This would however cause very poor error messages if there's other files.
+      # - Ensure that README.md is the only file, throwing a better error message if that's not the case.
+      #   However this would make for a poor code architecture, because one type of error would have to be duplicated in the validity checks and here.
+      # Additionally in either of those alternatives, we would have to duplicate the hardcoding of "README.md"
+      {}
+    else
+      mapAttrs
+      (name: _: baseDirectory + "/${shard}/${name}/package.nix")
+      (readDir (baseDirectory + "/${shard}"));
+
+  # The attribute set mapping names to the package files defining them
+  # This is defined up here in order to allow reuse of the value (it's kind of expensive to compute)
+  # if the overlay has to be applied multiple times
+  packageFiles = mergeAttrsList (mapAttrsToList namesForShard (readDir baseDirectory));
+  myPkgs =
+    mapAttrs
+    (_: path: callPackage path {})
+    packageFiles;
+in
+  # # TODO: Consider optimising this using `builtins.deepSeq packageFiles`,
+  # # which could free up the above thunks and reduce GC times.
+  # # Currently this would be hard to measure until we have more packages
+  # # and ideally https://github.com/NixOS/nix/pull/8895
+  # self: super:
+  #   {
+  #     # This attribute is necessary to allow CI to ensure that all packages defined in `pkgs/by-name`
+  #     # don't have an overriding definition in `all-packages.nix` with an empty (`{ }`) second `callPackage` argument.
+  #     # It achieves that with an overlay that modifies both `callPackage` and this attribute to signal whether `callPackage` is used
+  #     # and whether it's defined by this file here or `all-packages.nix`.
+  #     # TODO: This can be removed once `pkgs/by-name` can handle custom `callPackage` arguments without `all-packages.nix` (or any other way of achieving the same result).
+  #     # Because at that point the code in ./stage.nix can be changed to not allow definitions in `all-packages.nix` to override ones from `pkgs/by-name` anymore and throw an error if that happens instead.
+  #     _internalCallByNamePackageFile = file: self.callPackage file {};
+  #   }
+  #   //
+  myPkgs
diff --git a/pkgs/sources/scripts/source/apps/aumo.sh b/pkgs/by-name/au/aumo/aumo.sh
index 84d39deb..84d39deb 100755
--- a/pkgs/sources/scripts/source/apps/aumo.sh
+++ b/pkgs/by-name/au/aumo/aumo.sh
diff --git a/pkgs/by-name/au/aumo/package.nix b/pkgs/by-name/au/aumo/package.nix
new file mode 100644
index 00000000..20054bb5
--- /dev/null
+++ b/pkgs/by-name/au/aumo/package.nix
@@ -0,0 +1,17 @@
+{
+  sysLib,
+  udisks,
+  findutils,
+  rofi,
+}:
+sysLib.writeShellScript {
+  name = "aumo";
+  src = ./aumo.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    udisks
+    findutils
+    rofi
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/battery.sh b/pkgs/by-name/ba/battery/battery.sh
index e650ba5d..e650ba5d 100755
--- a/pkgs/sources/scripts/source/wrappers/battery.sh
+++ b/pkgs/by-name/ba/battery/battery.sh
diff --git a/pkgs/by-name/ba/battery/package.nix b/pkgs/by-name/ba/battery/package.nix
new file mode 100644
index 00000000..9c0e194b
--- /dev/null
+++ b/pkgs/by-name/ba/battery/package.nix
@@ -0,0 +1,9 @@
+{sysLib}:
+sysLib.writeShellScript {
+  name = "battery";
+  src = ./battery.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+  ];
+}
diff --git a/pkgs/sources/scripts/source/small_functions/brightness.sh b/pkgs/by-name/br/brightness/brightness.sh
index a7272279..a7272279 100755
--- a/pkgs/sources/scripts/source/small_functions/brightness.sh
+++ b/pkgs/by-name/br/brightness/brightness.sh
diff --git a/pkgs/by-name/br/brightness/package.nix b/pkgs/by-name/br/brightness/package.nix
new file mode 100644
index 00000000..c2e31a0c
--- /dev/null
+++ b/pkgs/by-name/br/brightness/package.nix
@@ -0,0 +1,14 @@
+{
+  sysLib,
+  backlightName ? "intel_backlight", # nixosConfig.soispha.laptop.backlight
+}:
+sysLib.writeShellScript {
+  name = "brightness";
+  src = ./brightness.sh;
+  generateCompletions = true;
+  keepPath = false;
+
+  replacementStrings = {BACKLIGHT_NAME = backlightName;};
+
+  dependencies = [];
+}
diff --git a/pkgs/sources/comments/.envrc b/pkgs/by-name/co/comments/.envrc
index 2b5fbb29..2b5fbb29 100644
--- a/pkgs/sources/comments/.envrc
+++ b/pkgs/by-name/co/comments/.envrc
diff --git a/pkgs/sources/comments/.gitignore b/pkgs/by-name/co/comments/.gitignore
index c84fa049..c84fa049 100644
--- a/pkgs/sources/comments/.gitignore
+++ b/pkgs/by-name/co/comments/.gitignore
diff --git a/pkgs/sources/comments/Cargo.lock b/pkgs/by-name/co/comments/Cargo.lock
index 54f19c46..54f19c46 100644
--- a/pkgs/sources/comments/Cargo.lock
+++ b/pkgs/by-name/co/comments/Cargo.lock
diff --git a/pkgs/sources/comments/Cargo.toml b/pkgs/by-name/co/comments/Cargo.toml
index 3ae3aa4c..3ae3aa4c 100644
--- a/pkgs/sources/comments/Cargo.toml
+++ b/pkgs/by-name/co/comments/Cargo.toml
diff --git a/pkgs/sources/comments/flake.lock b/pkgs/by-name/co/comments/flake.lock
index 50494465..50494465 100644
--- a/pkgs/sources/comments/flake.lock
+++ b/pkgs/by-name/co/comments/flake.lock
diff --git a/pkgs/sources/comments/flake.nix b/pkgs/by-name/co/comments/flake.nix
index f5e44a65..f5e44a65 100644
--- a/pkgs/sources/comments/flake.nix
+++ b/pkgs/by-name/co/comments/flake.nix
diff --git a/pkgs/sources/comments/comments.nix b/pkgs/by-name/co/comments/package.nix
index e8a33bff..e8a33bff 100644
--- a/pkgs/sources/comments/comments.nix
+++ b/pkgs/by-name/co/comments/package.nix
diff --git a/pkgs/sources/comments/src/info_json.rs b/pkgs/by-name/co/comments/src/info_json.rs
index eca4fae3..eca4fae3 100644
--- a/pkgs/sources/comments/src/info_json.rs
+++ b/pkgs/by-name/co/comments/src/info_json.rs
diff --git a/pkgs/sources/comments/src/main.rs b/pkgs/by-name/co/comments/src/main.rs
index 6e4f72e9..6e4f72e9 100644
--- a/pkgs/sources/comments/src/main.rs
+++ b/pkgs/by-name/co/comments/src/main.rs
diff --git a/pkgs/sources/comments/update.sh b/pkgs/by-name/co/comments/update.sh
index e500bb23..e500bb23 100755
--- a/pkgs/sources/comments/update.sh
+++ b/pkgs/by-name/co/comments/update.sh
diff --git a/pkgs/sources/scripts/source/apps/con2pdf.sh b/pkgs/by-name/co/con2pdf/con2pdf.sh
index 08bf8998..08bf8998 100755
--- a/pkgs/sources/scripts/source/apps/con2pdf.sh
+++ b/pkgs/by-name/co/con2pdf/con2pdf.sh
diff --git a/pkgs/by-name/co/con2pdf/package.nix b/pkgs/by-name/co/con2pdf/package.nix
new file mode 100644
index 00000000..8eb994fd
--- /dev/null
+++ b/pkgs/by-name/co/con2pdf/package.nix
@@ -0,0 +1,33 @@
+{
+  sysLib,
+  writeText,
+  # dependencies
+  sane-backends,
+  imagemagick,
+  coreutils,
+  fd,
+}:
+sysLib.writeShellScript {
+  name = "con2pdf";
+  src = ./con2pdf.sh;
+  generateCompletions = true;
+  keepPath = false;
+  dependencies = [
+    sane-backends
+    imagemagick
+    coreutils
+    fd
+  ];
+  replacementStrings = {
+    DEVICE_FUNCTION =
+      # This is here, because escaping the whole function, to use it in the shell script
+      # directly just isn't possible
+      writeText "DEVICE_FUNCTION"
+      /*
+      bash
+      */
+      ''
+        scanimage -L | awk 'BEGIN { FS = "`" } { gsub(/'.*/, "", $2); print $2 }'
+      '';
+  };
+}
diff --git a/pkgs/sources/scripts/source/specific/ytcc/description.sh b/pkgs/by-name/de/description/description.sh
index ae9107b9..ae9107b9 100755
--- a/pkgs/sources/scripts/source/specific/ytcc/description.sh
+++ b/pkgs/by-name/de/description/description.sh
diff --git a/pkgs/by-name/de/description/package.nix b/pkgs/by-name/de/description/package.nix
new file mode 100644
index 00000000..568ffcac
--- /dev/null
+++ b/pkgs/by-name/de/description/package.nix
@@ -0,0 +1,20 @@
+{
+  sysLib,
+  # dependencies
+  jq,
+  fmt,
+  less,
+  locale,
+}:
+sysLib.writeShellScript {
+  name = "description";
+  src = ./description.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    jq
+    fmt
+    less
+    locale
+  ];
+}
diff --git a/pkgs/sources/scripts/source/apps/fupdate.1.md b/pkgs/by-name/fu/fupdate/fupdate.1.md
index 710e8fb7..710e8fb7 100644
--- a/pkgs/sources/scripts/source/apps/fupdate.1.md
+++ b/pkgs/by-name/fu/fupdate/fupdate.1.md
diff --git a/pkgs/sources/scripts/source/apps/fupdate.sh b/pkgs/by-name/fu/fupdate/fupdate.sh
index 4322610a..4322610a 100755
--- a/pkgs/sources/scripts/source/apps/fupdate.sh
+++ b/pkgs/by-name/fu/fupdate/fupdate.sh
diff --git a/pkgs/by-name/fu/fupdate/package.nix b/pkgs/by-name/fu/fupdate/package.nix
new file mode 100644
index 00000000..259d1c03
--- /dev/null
+++ b/pkgs/by-name/fu/fupdate/package.nix
@@ -0,0 +1,29 @@
+{
+  sysLib,
+  dash,
+  nix,
+  gnugrep,
+  fd,
+  coreutils,
+  bat, # used by batgrep
+  bat-extras,
+  gnused, # required by batgrep
+  git, # needed to fetch through git
+}:
+sysLib.writeShellScript {
+  name = "fupdate";
+  src = ./fupdate.sh;
+  generateCompletions = true;
+  keepPath = true;
+  dependencies = [
+    dash
+    nix
+    gnugrep
+    fd
+    coreutils
+    bat # used by batgrep
+    bat-extras.batgrep
+    gnused # required by batgrep
+    git # needed to fetch through git
+  ];
+}
diff --git a/pkgs/sources/generate_moz_extension/.envrc b/pkgs/by-name/ge/generate_moz_extension/.envrc
index 3550a30f..3550a30f 100644
--- a/pkgs/sources/generate_moz_extension/.envrc
+++ b/pkgs/by-name/ge/generate_moz_extension/.envrc
diff --git a/pkgs/sources/generate_moz_extension/.gitignore b/pkgs/by-name/ge/generate_moz_extension/.gitignore
index f717ddd7..f717ddd7 100644
--- a/pkgs/sources/generate_moz_extension/.gitignore
+++ b/pkgs/by-name/ge/generate_moz_extension/.gitignore
diff --git a/pkgs/sources/generate_moz_extension/Cargo.lock b/pkgs/by-name/ge/generate_moz_extension/Cargo.lock
index c0a83aa8..c0a83aa8 100644
--- a/pkgs/sources/generate_moz_extension/Cargo.lock
+++ b/pkgs/by-name/ge/generate_moz_extension/Cargo.lock
diff --git a/pkgs/sources/generate_moz_extension/Cargo.toml b/pkgs/by-name/ge/generate_moz_extension/Cargo.toml
index e7d44db4..e7d44db4 100644
--- a/pkgs/sources/generate_moz_extension/Cargo.toml
+++ b/pkgs/by-name/ge/generate_moz_extension/Cargo.toml
diff --git a/pkgs/sources/generate_moz_extension/examples/generate_extensions.sh b/pkgs/by-name/ge/generate_moz_extension/examples/generate_extensions.sh
index 96802992..96802992 100755
--- a/pkgs/sources/generate_moz_extension/examples/generate_extensions.sh
+++ b/pkgs/by-name/ge/generate_moz_extension/examples/generate_extensions.sh
diff --git a/pkgs/sources/generate_moz_extension/flake.lock b/pkgs/by-name/ge/generate_moz_extension/flake.lock
index 741a8ad1..741a8ad1 100644
--- a/pkgs/sources/generate_moz_extension/flake.lock
+++ b/pkgs/by-name/ge/generate_moz_extension/flake.lock
diff --git a/pkgs/sources/generate_moz_extension/flake.nix b/pkgs/by-name/ge/generate_moz_extension/flake.nix
index 5575f90b..5575f90b 100644
--- a/pkgs/sources/generate_moz_extension/flake.nix
+++ b/pkgs/by-name/ge/generate_moz_extension/flake.nix
diff --git a/pkgs/sources/generate_moz_extension/generate_firefox_extensions.nix b/pkgs/by-name/ge/generate_moz_extension/package.nix
index abd95c77..abd95c77 100644
--- a/pkgs/sources/generate_moz_extension/generate_firefox_extensions.nix
+++ b/pkgs/by-name/ge/generate_moz_extension/package.nix
diff --git a/pkgs/sources/generate_moz_extension/res/generate_extensions.py b/pkgs/by-name/ge/generate_moz_extension/res/generate_extensions.py
index ee8cc966..ee8cc966 100644
--- a/pkgs/sources/generate_moz_extension/res/generate_extensions.py
+++ b/pkgs/by-name/ge/generate_moz_extension/res/generate_extensions.py
diff --git a/pkgs/sources/generate_moz_extension/res/reference.json b/pkgs/by-name/ge/generate_moz_extension/res/reference.json
index f46ea8ec..f46ea8ec 100644
--- a/pkgs/sources/generate_moz_extension/res/reference.json
+++ b/pkgs/by-name/ge/generate_moz_extension/res/reference.json
diff --git a/pkgs/sources/generate_moz_extension/res/test.json b/pkgs/by-name/ge/generate_moz_extension/res/test.json
index daa1d19a..daa1d19a 100644
--- a/pkgs/sources/generate_moz_extension/res/test.json
+++ b/pkgs/by-name/ge/generate_moz_extension/res/test.json
diff --git a/pkgs/sources/generate_moz_extension/src/main.rs b/pkgs/by-name/ge/generate_moz_extension/src/main.rs
index bde986a3..bde986a3 100644
--- a/pkgs/sources/generate_moz_extension/src/main.rs
+++ b/pkgs/by-name/ge/generate_moz_extension/src/main.rs
diff --git a/pkgs/sources/generate_moz_extension/src/types.rs b/pkgs/by-name/ge/generate_moz_extension/src/types.rs
index b830fe0d..b830fe0d 100644
--- a/pkgs/sources/generate_moz_extension/src/types.rs
+++ b/pkgs/by-name/ge/generate_moz_extension/src/types.rs
diff --git a/pkgs/sources/generate_moz_extension/update.sh b/pkgs/by-name/ge/generate_moz_extension/update.sh
index e500bb23..e500bb23 100755
--- a/pkgs/sources/generate_moz_extension/update.sh
+++ b/pkgs/by-name/ge/generate_moz_extension/update.sh
diff --git a/pkgs/sources/scripts/source/apps/git-edit-index.sh b/pkgs/by-name/gi/git-edit-index/git-edit-index.sh
index e73dc53c..e73dc53c 100755
--- a/pkgs/sources/scripts/source/apps/git-edit-index.sh
+++ b/pkgs/by-name/gi/git-edit-index/git-edit-index.sh
diff --git a/pkgs/by-name/gi/git-edit-index/package.nix b/pkgs/by-name/gi/git-edit-index/package.nix
new file mode 100644
index 00000000..8ac085bf
--- /dev/null
+++ b/pkgs/by-name/gi/git-edit-index/package.nix
@@ -0,0 +1,19 @@
+{
+  sysLib,
+  git,
+  gnused,
+}:
+sysLib.writeShellScript {
+  name = "git-edit-index";
+  src = ./git-edit-index.sh;
+  generateCompletions = true;
+
+  # `git-edit-index` starts neovim, wich might want to shell out from
+  keepPath = true;
+
+  dependencies = [
+    git
+    gnused
+    # $EDITOR
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/hibernate.sh b/pkgs/by-name/hi/hibernate/hibernate.sh
index 30868fd1..30868fd1 100755
--- a/pkgs/sources/scripts/source/wrappers/hibernate.sh
+++ b/pkgs/by-name/hi/hibernate/hibernate.sh
diff --git a/pkgs/by-name/hi/hibernate/package.nix b/pkgs/by-name/hi/hibernate/package.nix
new file mode 100644
index 00000000..24754f09
--- /dev/null
+++ b/pkgs/by-name/hi/hibernate/package.nix
@@ -0,0 +1,15 @@
+{
+  sysLib,
+  systemd,
+  taskwarrior,
+}:
+sysLib.writeShellScript {
+  name = "hibernate";
+  src = ./hibernate.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    systemd
+    taskwarrior
+  ];
+}
diff --git a/pkgs/sources/lf-make-map/.envrc b/pkgs/by-name/lf/lf-make-map/.envrc
index c8c56659..c8c56659 100644
--- a/pkgs/sources/lf-make-map/.envrc
+++ b/pkgs/by-name/lf/lf-make-map/.envrc
diff --git a/pkgs/sources/lf-make-map/.gitignore b/pkgs/by-name/lf/lf-make-map/.gitignore
index cb87f36f..cb87f36f 100644
--- a/pkgs/sources/lf-make-map/.gitignore
+++ b/pkgs/by-name/lf/lf-make-map/.gitignore
diff --git a/pkgs/sources/lf-make-map/Cargo.lock b/pkgs/by-name/lf/lf-make-map/Cargo.lock
index 16af6e03..16af6e03 100644
--- a/pkgs/sources/lf-make-map/Cargo.lock
+++ b/pkgs/by-name/lf/lf-make-map/Cargo.lock
diff --git a/pkgs/sources/lf-make-map/Cargo.toml b/pkgs/by-name/lf/lf-make-map/Cargo.toml
index da9881fd..da9881fd 100644
--- a/pkgs/sources/lf-make-map/Cargo.toml
+++ b/pkgs/by-name/lf/lf-make-map/Cargo.toml
diff --git a/pkgs/sources/lf-make-map/README.md b/pkgs/by-name/lf/lf-make-map/README.md
index 0c57cede..0c57cede 100644
--- a/pkgs/sources/lf-make-map/README.md
+++ b/pkgs/by-name/lf/lf-make-map/README.md
diff --git a/pkgs/sources/lf-make-map/flake.lock b/pkgs/by-name/lf/lf-make-map/flake.lock
index 611392df..611392df 100644
--- a/pkgs/sources/lf-make-map/flake.lock
+++ b/pkgs/by-name/lf/lf-make-map/flake.lock
diff --git a/pkgs/sources/lf-make-map/flake.nix b/pkgs/by-name/lf/lf-make-map/flake.nix
index dc8c24cc..dc8c24cc 100644
--- a/pkgs/sources/lf-make-map/flake.nix
+++ b/pkgs/by-name/lf/lf-make-map/flake.nix
diff --git a/pkgs/sources/lf-make-map/lf_make_map.nix b/pkgs/by-name/lf/lf-make-map/package.nix
index afb067b8..afb067b8 100644
--- a/pkgs/sources/lf-make-map/lf_make_map.nix
+++ b/pkgs/by-name/lf/lf-make-map/package.nix
diff --git a/pkgs/sources/lf-make-map/src/cli.rs b/pkgs/by-name/lf/lf-make-map/src/cli.rs
index a398e451..a398e451 100644
--- a/pkgs/sources/lf-make-map/src/cli.rs
+++ b/pkgs/by-name/lf/lf-make-map/src/cli.rs
diff --git a/pkgs/sources/lf-make-map/src/main.rs b/pkgs/by-name/lf/lf-make-map/src/main.rs
index aaf79b20..aaf79b20 100644
--- a/pkgs/sources/lf-make-map/src/main.rs
+++ b/pkgs/by-name/lf/lf-make-map/src/main.rs
diff --git a/pkgs/sources/lf-make-map/src/mapping/map_tree/display.rs b/pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/display.rs
index 65302e1e..65302e1e 100644
--- a/pkgs/sources/lf-make-map/src/mapping/map_tree/display.rs
+++ b/pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/display.rs
diff --git a/pkgs/sources/lf-make-map/src/mapping/map_tree/iterator.rs b/pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/iterator.rs
index 4364bb2b..4364bb2b 100644
--- a/pkgs/sources/lf-make-map/src/mapping/map_tree/iterator.rs
+++ b/pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/iterator.rs
diff --git a/pkgs/sources/lf-make-map/src/mapping/map_tree/lf_mapping.rs b/pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/lf_mapping.rs
index 6d9c7a0d..6d9c7a0d 100644
--- a/pkgs/sources/lf-make-map/src/mapping/map_tree/lf_mapping.rs
+++ b/pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/lf_mapping.rs
diff --git a/pkgs/sources/lf-make-map/src/mapping/map_tree/mod.rs b/pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/mod.rs
index 35e6d91d..35e6d91d 100644
--- a/pkgs/sources/lf-make-map/src/mapping/map_tree/mod.rs
+++ b/pkgs/by-name/lf/lf-make-map/src/mapping/map_tree/mod.rs
diff --git a/pkgs/sources/lf-make-map/src/mapping/mod.rs b/pkgs/by-name/lf/lf-make-map/src/mapping/mod.rs
index 114fdca0..114fdca0 100644
--- a/pkgs/sources/lf-make-map/src/mapping/mod.rs
+++ b/pkgs/by-name/lf/lf-make-map/src/mapping/mod.rs
diff --git a/pkgs/sources/lf-make-map/update.sh b/pkgs/by-name/lf/lf-make-map/update.sh
index a0a029f4..a0a029f4 100755
--- a/pkgs/sources/lf-make-map/update.sh
+++ b/pkgs/by-name/lf/lf-make-map/update.sh
diff --git a/pkgs/sources/scripts/source/wrappers/ll.sh b/pkgs/by-name/ll/ll/ll.sh
index f689ba44..f689ba44 100755
--- a/pkgs/sources/scripts/source/wrappers/ll.sh
+++ b/pkgs/by-name/ll/ll/ll.sh
diff --git a/pkgs/by-name/ll/ll/package.nix b/pkgs/by-name/ll/ll/package.nix
new file mode 100644
index 00000000..4c13b40e
--- /dev/null
+++ b/pkgs/by-name/ll/ll/package.nix
@@ -0,0 +1,9 @@
+{sysLib}:
+sysLib.writeShellScript {
+  name = "ll";
+  src = ./ll.sh;
+  generateCompletions = false;
+
+  # `ll` must be able to change the path of the running shell.
+  wrap = false;
+}
diff --git a/pkgs/sources/scripts/source/wrappers/lock.sh b/pkgs/by-name/lo/lock/lock.sh
index 3101ef9a..3101ef9a 100755
--- a/pkgs/sources/scripts/source/wrappers/lock.sh
+++ b/pkgs/by-name/lo/lock/lock.sh
diff --git a/pkgs/by-name/lo/lock/package.nix b/pkgs/by-name/lo/lock/package.nix
new file mode 100644
index 00000000..0e6e38d0
--- /dev/null
+++ b/pkgs/by-name/lo/lock/package.nix
@@ -0,0 +1,15 @@
+{
+  sysLib,
+  taskwarrior,
+  swaylock,
+}:
+sysLib.writeShellScript {
+  name = "lock";
+  src = ./lock.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    taskwarrior
+    swaylock
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/lyrics.sh b/pkgs/by-name/ly/lyrics/lyrics.sh
index 02a147c8..02a147c8 100755
--- a/pkgs/sources/scripts/source/wrappers/lyrics.sh
+++ b/pkgs/by-name/ly/lyrics/lyrics.sh
diff --git a/pkgs/by-name/ly/lyrics/package.nix b/pkgs/by-name/ly/lyrics/package.nix
new file mode 100644
index 00000000..041eed96
--- /dev/null
+++ b/pkgs/by-name/ly/lyrics/package.nix
@@ -0,0 +1,21 @@
+{
+  sysLib,
+  exiftool,
+  mpc-cli,
+  jq,
+  less,
+  locale, # dependency of less
+}:
+sysLib.writeShellScript {
+  name = "lyrics";
+  src = ./lyrics.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    exiftool
+    mpc-cli
+    jq
+    less
+    locale # dependency of less
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/mpc-fav.sh b/pkgs/by-name/mp/mpc-fav/mpc-fav.sh
index 795a4875..795a4875 100755
--- a/pkgs/sources/scripts/source/wrappers/mpc-fav.sh
+++ b/pkgs/by-name/mp/mpc-fav/mpc-fav.sh
diff --git a/pkgs/by-name/mp/mpc-fav/package.nix b/pkgs/by-name/mp/mpc-fav/package.nix
new file mode 100644
index 00000000..2d3a8f3f
--- /dev/null
+++ b/pkgs/by-name/mp/mpc-fav/package.nix
@@ -0,0 +1,13 @@
+{
+  sysLib,
+  mpc-cli,
+}:
+sysLib.writeShellScript {
+  name = "mpc-fav";
+  src = ./mpc-fav.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    mpc-cli
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/mpc-rm.sh b/pkgs/by-name/mp/mpc-rm/mpc-rm.sh
index 94e0634b..94e0634b 100755
--- a/pkgs/sources/scripts/source/wrappers/mpc-rm.sh
+++ b/pkgs/by-name/mp/mpc-rm/mpc-rm.sh
diff --git a/pkgs/by-name/mp/mpc-rm/package.nix b/pkgs/by-name/mp/mpc-rm/package.nix
new file mode 100644
index 00000000..6b7e2ead
--- /dev/null
+++ b/pkgs/by-name/mp/mpc-rm/package.nix
@@ -0,0 +1,15 @@
+{
+  sysLib,
+  mpc-cli,
+  trash-cli,
+}:
+sysLib.writeShellScript {
+  name = "mpc-rm";
+  src = ./mpc-rm.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    mpc-cli
+    trash-cli
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/mpc.sh b/pkgs/by-name/mp/mpc/mpc.sh
index 5aae5cdb..5aae5cdb 100755
--- a/pkgs/sources/scripts/source/wrappers/mpc.sh
+++ b/pkgs/by-name/mp/mpc/mpc.sh
diff --git a/pkgs/by-name/mp/mpc/package.nix b/pkgs/by-name/mp/mpc/package.nix
new file mode 100644
index 00000000..936aa990
--- /dev/null
+++ b/pkgs/by-name/mp/mpc/package.nix
@@ -0,0 +1,17 @@
+{
+  sysLib,
+  mpc-fav,
+  mpc-rm,
+  mpc-cli,
+}:
+sysLib.writeShellScript {
+  name = "mpc";
+  src = ./mpc.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    mpc-fav
+    mpc-rm
+    mpc-cli
+  ];
+}
diff --git a/pkgs/sources/scripts/source/small_functions/nato.py b/pkgs/by-name/na/nato/nato.py
index e9d15f56..e9d15f56 100755
--- a/pkgs/sources/scripts/source/small_functions/nato.py
+++ b/pkgs/by-name/na/nato/nato.py
diff --git a/pkgs/by-name/na/nato/package.nix b/pkgs/by-name/na/nato/package.nix
new file mode 100644
index 00000000..17fe7d1a
--- /dev/null
+++ b/pkgs/by-name/na/nato/package.nix
@@ -0,0 +1,34 @@
+{
+  lib,
+  python3,
+  runCommandLocal,
+  makeWrapper,
+}: let
+  write_python = {
+    name,
+    dependencies_system ? [],
+    dependencies_python ? _: [],
+    keepPath ? false,
+  }: let
+    src = ./${name}.py;
+    dependencies =
+      [(python3.withPackages dependencies_python)]
+      ++ dependencies_system;
+    path_setting =
+      if keepPath
+      then "--prefix PATH :"
+      else "--set PATH";
+  in
+    runCommandLocal name {
+      nativeBuildInputs = [makeWrapper] ++ dependencies;
+    }
+    ''
+      install -m755 ${src} -D "$out/bin/${name}"
+      patchShebangs "$out/bin/${name}"
+      wrapProgram "$out/bin/${name}" ${path_setting} ${lib.makeBinPath dependencies};
+    '';
+in
+  write_python {
+    name = "nato";
+    dependencies_python = ps: [];
+  }
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/add.sh b/pkgs/by-name/ne/neorg/functions/add.sh
index 5a830a10..5a830a10 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/add.sh
+++ b/pkgs/by-name/ne/neorg/functions/add.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/context.sh b/pkgs/by-name/ne/neorg/functions/context.sh
index 7095847d..7095847d 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/context.sh
+++ b/pkgs/by-name/ne/neorg/functions/context.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/dmenu.sh b/pkgs/by-name/ne/neorg/functions/dmenu.sh
index 5a138982..5a138982 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/dmenu.sh
+++ b/pkgs/by-name/ne/neorg/functions/dmenu.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/f_start.sh b/pkgs/by-name/ne/neorg/functions/f_start.sh
index 2423dd44..2423dd44 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/f_start.sh
+++ b/pkgs/by-name/ne/neorg/functions/f_start.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/f_stop.sh b/pkgs/by-name/ne/neorg/functions/f_stop.sh
index e4ff0b94..e4ff0b94 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/f_stop.sh
+++ b/pkgs/by-name/ne/neorg/functions/f_stop.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/list.sh b/pkgs/by-name/ne/neorg/functions/list.sh
index 10659457..10659457 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/list.sh
+++ b/pkgs/by-name/ne/neorg/functions/list.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/project.sh b/pkgs/by-name/ne/neorg/functions/project.sh
index 64591850..64591850 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/project.sh
+++ b/pkgs/by-name/ne/neorg/functions/project.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/review.sh b/pkgs/by-name/ne/neorg/functions/review.sh
index a0a9ab8d..a0a9ab8d 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/review.sh
+++ b/pkgs/by-name/ne/neorg/functions/review.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/utils.sh b/pkgs/by-name/ne/neorg/functions/utils.sh
index c3843e8e..c3843e8e 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/utils.sh
+++ b/pkgs/by-name/ne/neorg/functions/utils.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/functions/workspace.sh b/pkgs/by-name/ne/neorg/functions/workspace.sh
index d5eb2fca..d5eb2fca 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/functions/workspace.sh
+++ b/pkgs/by-name/ne/neorg/functions/workspace.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/sh/main.sh b/pkgs/by-name/ne/neorg/main.sh
index 559351b9..559351b9 100755
--- a/pkgs/sources/scripts/source/specific/neorg/sh/main.sh
+++ b/pkgs/by-name/ne/neorg/main.sh
diff --git a/pkgs/sources/scripts/source/specific/neorg/neorg_id_function.sh b/pkgs/by-name/ne/neorg/neorg_id_function.sh
index 865ecacf..865ecacf 100755
--- a/pkgs/sources/scripts/source/specific/neorg/neorg_id_function.sh
+++ b/pkgs/by-name/ne/neorg/neorg_id_function.sh
diff --git a/pkgs/by-name/ne/neorg/package.nix b/pkgs/by-name/ne/neorg/package.nix
new file mode 100644
index 00000000..112df35c
--- /dev/null
+++ b/pkgs/by-name/ne/neorg/package.nix
@@ -0,0 +1,69 @@
+{
+  lib,
+  sysLib,
+  # dependencies
+  cocogitto,
+  rofi,
+  libnotify,
+  taskwarrior,
+  gawk,
+  findutils,
+  # config
+  defaultNeorgProjectDir ? "/no-default-dir", # homeConfig.programs.nixvim.plugins.neorg.modules."core.dirman".config.workspaces.projects
+  allProjectsNewline ? "", # homeConfig.soispha.taskwarrior.projects.projects_newline
+  allProjectsComma ? "", # homeConfig.soispha.taskwarrior.projects.projects_comma
+  allProjectsPipe ? "", # homeConfig.soispha.taskwarrior.projects.projects_pipe
+  allWorkspaces ? "", # homeConfig.programs.nixvim.plugins.neorg.modules."core.dirman".config.workspaces
+  xdgConfigHome ? builtins.getEnv "XDG_CONFIG_HOME",
+  xdgDataHome ? builtins.getEnv "XDG_DATA_HOME",
+}:
+sysLib.writeShellScriptMultiPart {
+  name = "neorg";
+  src = ./.;
+  generateCompletions = true;
+  keepPath = true;
+
+  baseName = "main.sh";
+  cmdPrefix = "functions";
+  cmdNames = [
+    "add.sh"
+    "context.sh"
+    "dmenu.sh"
+    "f_start.sh"
+    "f_stop.sh"
+    "list.sh"
+    "project.sh"
+    "review.sh"
+    "utils.sh"
+    "workspace.sh"
+  ];
+
+  dependencies = [
+    cocogitto
+    rofi
+    libnotify
+  ];
+  replacementStrings = {
+    DEFAULT_NEORG_PROJECT_DIR = defaultNeorgProjectDir;
+    HOME_TASKRC = "${xdgConfigHome}/task/home-manager-taskrc";
+    NEORG_REVIEW_PATH = "${xdgDataHome}/neorg/review";
+
+    ALL_PROJECTS_NEWLINE = allProjectsNewline;
+    ALL_PROJECTS_COMMA = allProjectsComma;
+    ALL_PROJECTS_PIPE = allProjectsPipe;
+    ALL_WORKSPACES = "${lib.strings.concatStringsSep "|" (builtins.attrNames allWorkspaces)}";
+
+    ID_GENERATION_FUNCTION = "${sysLib.writeShellScript {
+      name = "neorg_id_function";
+      src = ./source/specific/neorg/neorg_id_function.sh;
+      dependencies = [
+        taskwarrior
+        gawk
+        findutils # source of xargs
+      ];
+    }}/bin/neorg_id_function";
+
+    # TODO: Replace the hard-coded path here with some reference <2023-10-20>
+    TASK_PROJECT_FILE = "/home/soispha/repos/nix/nixos-config/hm/soispha/conf/taskwarrior/projects/default.nix";
+  };
+}
diff --git a/pkgs/by-name/sc/screenshot_persistent/package.nix b/pkgs/by-name/sc/screenshot_persistent/package.nix
new file mode 100644
index 00000000..f79315a1
--- /dev/null
+++ b/pkgs/by-name/sc/screenshot_persistent/package.nix
@@ -0,0 +1,23 @@
+{
+  sysLib,
+  grim,
+  slurp,
+  alacritty,
+  rofi,
+  libnotify,
+  lf, # TODO: add llp
+}:
+sysLib.writeShellScript {
+  name = "screenshot_persistent";
+  src = ./screenshot_persistent.sh;
+  generateCompletions = false;
+  keepPath = true;
+  dependencies = [
+    grim
+    slurp
+    alacritty
+    rofi
+    libnotify
+    lf # TODO: add llp
+  ];
+}
diff --git a/pkgs/sources/scripts/source/small_functions/screenshot_persistent.sh b/pkgs/by-name/sc/screenshot_persistent/screenshot_persistent.sh
index 4308b8d2..4308b8d2 100755
--- a/pkgs/sources/scripts/source/small_functions/screenshot_persistent.sh
+++ b/pkgs/by-name/sc/screenshot_persistent/screenshot_persistent.sh
diff --git a/pkgs/by-name/sc/screenshot_temporary/package.nix b/pkgs/by-name/sc/screenshot_temporary/package.nix
new file mode 100644
index 00000000..f3739b01
--- /dev/null
+++ b/pkgs/by-name/sc/screenshot_temporary/package.nix
@@ -0,0 +1,17 @@
+{
+  sysLib,
+  grim,
+  slurp,
+  wl-clipboard,
+}:
+sysLib.writeShellScript {
+  name = "screenshot_temporary";
+  src = ./screenshot_temporary.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    grim
+    slurp
+    wl-clipboard
+  ];
+}
diff --git a/pkgs/sources/scripts/source/small_functions/screenshot_temporary.sh b/pkgs/by-name/sc/screenshot_temporary/screenshot_temporary.sh
index 8968ca79..8968ca79 100755
--- a/pkgs/sources/scripts/source/small_functions/screenshot_temporary.sh
+++ b/pkgs/by-name/sc/screenshot_temporary/screenshot_temporary.sh
diff --git a/pkgs/by-name/sh/show/package.nix b/pkgs/by-name/sh/show/package.nix
new file mode 100644
index 00000000..0855e1b1
--- /dev/null
+++ b/pkgs/by-name/sh/show/package.nix
@@ -0,0 +1,15 @@
+{
+  sysLib,
+  less,
+  locale,
+}:
+sysLib.writeShellScript {
+  name = "show";
+  src = ./show.sh;
+  generateCompletions = false;
+  keepPath = true; # I might want to use nvim in less (and shell escapes)
+  dependencies = [
+    less
+    locale
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/show.sh b/pkgs/by-name/sh/show/show.sh
index ae2bdb13..ae2bdb13 100755
--- a/pkgs/sources/scripts/source/wrappers/show.sh
+++ b/pkgs/by-name/sh/show/show.sh
diff --git a/pkgs/by-name/sn/snap-sync-forked/package.nix b/pkgs/by-name/sn/snap-sync-forked/package.nix
new file mode 100644
index 00000000..b3f40b24
--- /dev/null
+++ b/pkgs/by-name/sn/snap-sync-forked/package.nix
@@ -0,0 +1,36 @@
+{
+  sysLib,
+  bash,
+  btrfs-progs,
+  coreutils,
+  gawk,
+  gnugrep,
+  snapper,
+  util-linux,
+  # optional
+  libnotify,
+  openssh,
+  pv,
+  rsync,
+  sudo,
+}:
+sysLib.writeShellScript {
+  name = "snap-sync-forked";
+  src = ./snap-sync-forked.sh;
+  dependencies = [
+    bash
+    btrfs-progs
+    coreutils
+    gawk
+    gnugrep
+    snapper
+    util-linux
+
+    # optional:
+    libnotify
+    openssh
+    pv
+    rsync
+    sudo
+  ];
+}
diff --git a/pkgs/sources/snap-sync-forked/snap-sync-forked.sh b/pkgs/by-name/sn/snap-sync-forked/snap-sync-forked.sh
index 3d9c1ac9..3d9c1ac9 100755
--- a/pkgs/sources/snap-sync-forked/snap-sync-forked.sh
+++ b/pkgs/by-name/sn/snap-sync-forked/snap-sync-forked.sh
diff --git a/pkgs/by-name/so/sort_song/package.nix b/pkgs/by-name/so/sort_song/package.nix
new file mode 100644
index 00000000..f74ba57f
--- /dev/null
+++ b/pkgs/by-name/so/sort_song/package.nix
@@ -0,0 +1,17 @@
+{
+  sysLib,
+  mediainfo,
+  jq,
+  gawk,
+}:
+sysLib.writeShellScript {
+  name = "sort_song";
+  src = ./sort_song.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    mediainfo
+    jq
+    gawk
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/sort_song.sh b/pkgs/by-name/so/sort_song/sort_song.sh
index e2978507..e2978507 100755
--- a/pkgs/sources/scripts/source/wrappers/sort_song.sh
+++ b/pkgs/by-name/so/sort_song/sort_song.sh
diff --git a/pkgs/by-name/sp/spodi/package.nix b/pkgs/by-name/sp/spodi/package.nix
new file mode 100644
index 00000000..83540a21
--- /dev/null
+++ b/pkgs/by-name/sp/spodi/package.nix
@@ -0,0 +1,39 @@
+{
+  sysLib,
+  # dependencies
+  gawk,
+  expect,
+  spotdl,
+  fd,
+  coreutils,
+  # config
+  xdgCacheHome ? builtins.getEnv "XDG_CACHE_HOME",
+  xdgUserDirsMusic ? builtins.getEnv "XDG_MUSIC_HOME",
+}:
+sysLib.writeShellScriptMultiPart {
+  name = "spodi";
+  src = ./.;
+
+  generateCompletions = true;
+  keepPath = false;
+
+  baseName = "spodi.sh";
+  cmdPrefix = "sh";
+  cmdNames = [
+    "download.sh"
+    "update.sh"
+  ];
+
+  dependencies = [
+    gawk
+    expect
+    spotdl
+    fd
+    coreutils
+  ];
+
+  replacementStrings = {
+    XDG_CACHE_HOME = xdgCacheHome;
+    XDG_MUSIC_DIR = xdgUserDirsMusic;
+  };
+}
diff --git a/pkgs/sources/scripts/source/specific/spodi/sh/download.sh b/pkgs/by-name/sp/spodi/sh/download.sh
index fe9746c8..fe9746c8 100755
--- a/pkgs/sources/scripts/source/specific/spodi/sh/download.sh
+++ b/pkgs/by-name/sp/spodi/sh/download.sh
diff --git a/pkgs/sources/scripts/source/specific/spodi/sh/update.sh b/pkgs/by-name/sp/spodi/sh/update.sh
index a289cf58..a289cf58 100755
--- a/pkgs/sources/scripts/source/specific/spodi/sh/update.sh
+++ b/pkgs/by-name/sp/spodi/sh/update.sh
diff --git a/pkgs/sources/scripts/source/specific/spodi/spodi.sh b/pkgs/by-name/sp/spodi/spodi.sh
index 475fd48a..475fd48a 100755
--- a/pkgs/sources/scripts/source/specific/spodi/spodi.sh
+++ b/pkgs/by-name/sp/spodi/spodi.sh
diff --git a/pkgs/sources/tree-sitter-yts/.editorconfig b/pkgs/by-name/tr/tree-sitter-yts/.editorconfig
index 919c78fa..919c78fa 100644
--- a/pkgs/sources/tree-sitter-yts/.editorconfig
+++ b/pkgs/by-name/tr/tree-sitter-yts/.editorconfig
diff --git a/pkgs/sources/tree-sitter-yts/.envrc b/pkgs/by-name/tr/tree-sitter-yts/.envrc
index 3550a30f..3550a30f 100644
--- a/pkgs/sources/tree-sitter-yts/.envrc
+++ b/pkgs/by-name/tr/tree-sitter-yts/.envrc
diff --git a/pkgs/sources/tree-sitter-yts/.gitignore b/pkgs/by-name/tr/tree-sitter-yts/.gitignore
index c4e2e389..c4e2e389 100644
--- a/pkgs/sources/tree-sitter-yts/.gitignore
+++ b/pkgs/by-name/tr/tree-sitter-yts/.gitignore
diff --git a/pkgs/sources/tree-sitter-yts/Cargo.toml b/pkgs/by-name/tr/tree-sitter-yts/Cargo.toml
index 5287c420..5287c420 100644
--- a/pkgs/sources/tree-sitter-yts/Cargo.toml
+++ b/pkgs/by-name/tr/tree-sitter-yts/Cargo.toml
diff --git a/pkgs/sources/tree-sitter-yts/binding.gyp b/pkgs/by-name/tr/tree-sitter-yts/binding.gyp
index b05038b4..b05038b4 100644
--- a/pkgs/sources/tree-sitter-yts/binding.gyp
+++ b/pkgs/by-name/tr/tree-sitter-yts/binding.gyp
diff --git a/pkgs/sources/tree-sitter-yts/bindings/node/binding.cc b/pkgs/by-name/tr/tree-sitter-yts/bindings/node/binding.cc
index a042be54..a042be54 100644
--- a/pkgs/sources/tree-sitter-yts/bindings/node/binding.cc
+++ b/pkgs/by-name/tr/tree-sitter-yts/bindings/node/binding.cc
diff --git a/pkgs/sources/tree-sitter-yts/bindings/node/index.js b/pkgs/by-name/tr/tree-sitter-yts/bindings/node/index.js
index 32179742..32179742 100644
--- a/pkgs/sources/tree-sitter-yts/bindings/node/index.js
+++ b/pkgs/by-name/tr/tree-sitter-yts/bindings/node/index.js
diff --git a/pkgs/sources/tree-sitter-yts/bindings/rust/build.rs b/pkgs/by-name/tr/tree-sitter-yts/bindings/rust/build.rs
index c6061f09..c6061f09 100644
--- a/pkgs/sources/tree-sitter-yts/bindings/rust/build.rs
+++ b/pkgs/by-name/tr/tree-sitter-yts/bindings/rust/build.rs
diff --git a/pkgs/sources/tree-sitter-yts/bindings/rust/lib.rs b/pkgs/by-name/tr/tree-sitter-yts/bindings/rust/lib.rs
index f1868b2d..f1868b2d 100644
--- a/pkgs/sources/tree-sitter-yts/bindings/rust/lib.rs
+++ b/pkgs/by-name/tr/tree-sitter-yts/bindings/rust/lib.rs
diff --git a/pkgs/sources/tree-sitter-yts/corpus/comments.txt b/pkgs/by-name/tr/tree-sitter-yts/corpus/comments.txt
index 0070baf8..0070baf8 100644
--- a/pkgs/sources/tree-sitter-yts/corpus/comments.txt
+++ b/pkgs/by-name/tr/tree-sitter-yts/corpus/comments.txt
diff --git a/pkgs/sources/tree-sitter-yts/corpus/comments_correct.txt b/pkgs/by-name/tr/tree-sitter-yts/corpus/comments_correct.txt
index 40cdab7d..40cdab7d 100644
--- a/pkgs/sources/tree-sitter-yts/corpus/comments_correct.txt
+++ b/pkgs/by-name/tr/tree-sitter-yts/corpus/comments_correct.txt
diff --git a/pkgs/sources/tree-sitter-yts/corpus/duration.txt b/pkgs/by-name/tr/tree-sitter-yts/corpus/duration.txt
index 59476b98..59476b98 100644
--- a/pkgs/sources/tree-sitter-yts/corpus/duration.txt
+++ b/pkgs/by-name/tr/tree-sitter-yts/corpus/duration.txt
diff --git a/pkgs/sources/tree-sitter-yts/corpus/url.txt b/pkgs/by-name/tr/tree-sitter-yts/corpus/url.txt
index 1ae3d106..1ae3d106 100644
--- a/pkgs/sources/tree-sitter-yts/corpus/url.txt
+++ b/pkgs/by-name/tr/tree-sitter-yts/corpus/url.txt
diff --git a/pkgs/sources/tree-sitter-yts/flake.lock b/pkgs/by-name/tr/tree-sitter-yts/flake.lock
index bff9f1fa..bff9f1fa 100644
--- a/pkgs/sources/tree-sitter-yts/flake.lock
+++ b/pkgs/by-name/tr/tree-sitter-yts/flake.lock
diff --git a/pkgs/sources/tree-sitter-yts/flake.nix b/pkgs/by-name/tr/tree-sitter-yts/flake.nix
index 1b6f8ab0..1b6f8ab0 100644
--- a/pkgs/sources/tree-sitter-yts/flake.nix
+++ b/pkgs/by-name/tr/tree-sitter-yts/flake.nix
diff --git a/pkgs/sources/tree-sitter-yts/grammar.js b/pkgs/by-name/tr/tree-sitter-yts/grammar.js
index 655f6dea..655f6dea 100644
--- a/pkgs/sources/tree-sitter-yts/grammar.js
+++ b/pkgs/by-name/tr/tree-sitter-yts/grammar.js
diff --git a/pkgs/sources/tree-sitter-yts/highlight.yts b/pkgs/by-name/tr/tree-sitter-yts/highlight.yts
index 319ee95c..319ee95c 100644
--- a/pkgs/sources/tree-sitter-yts/highlight.yts
+++ b/pkgs/by-name/tr/tree-sitter-yts/highlight.yts
diff --git a/pkgs/sources/tree-sitter-yts/package.json b/pkgs/by-name/tr/tree-sitter-yts/package.json
index 2511ccb7..2511ccb7 100644
--- a/pkgs/sources/tree-sitter-yts/package.json
+++ b/pkgs/by-name/tr/tree-sitter-yts/package.json
diff --git a/pkgs/by-name/tr/tree-sitter-yts/package.nix b/pkgs/by-name/tr/tree-sitter-yts/package.nix
new file mode 100644
index 00000000..11ab5a8d
--- /dev/null
+++ b/pkgs/by-name/tr/tree-sitter-yts/package.nix
@@ -0,0 +1,59 @@
+# taken from nixpgks: pkgs/development/tools/parsing/tree-sitter/grammar.nix
+{
+  stdenv,
+  nodejs,
+  tree-sitter,
+  lib,
+}:
+# # Build a parser grammar and put the resulting shared object in `$out/parser`
+# {
+#   # language name
+#   language ? "yts",
+#   version ? "1.0.0",
+#   src ? ./.,
+#   location ? null,
+#   generate ? false,
+#   ...
+# } @ args:
+stdenv.mkDerivation {
+  pname = "yts-grammar";
+  version = "1.0.0";
+
+  src = ./.;
+
+  nativeBuildInputs = [nodejs tree-sitter];
+
+  CFLAGS = ["-Isrc" "-O2"];
+  CXXFLAGS = ["-Isrc" "-O2"];
+
+  stripDebugList = ["parser"];
+
+  configurePhase = ''
+    tree-sitter generate
+  '';
+
+  # When both scanner.{c,cc} exist, we should not link both since they may be the same but in
+  # different languages. Just randomly prefer C++ if that happens.
+  buildPhase = ''
+    runHook preBuild
+    if [[ -e src/scanner.cc ]]; then
+      $CXX -fPIC -c src/scanner.cc -o scanner.o $CXXFLAGS
+    elif [[ -e src/scanner.c ]]; then
+      $CC -fPIC -c src/scanner.c -o scanner.o $CFLAGS
+    fi
+    $CC -fPIC -c src/parser.c -o parser.o $CFLAGS
+    rm -rf parser
+    $CXX -shared -o parser *.o
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir $out
+    mv parser $out/
+    if [[ -d queries ]]; then
+      cp -r queries $out
+    fi
+    runHook postInstall
+  '';
+}
diff --git a/pkgs/sources/tree-sitter-yts/queries/highlights.scm b/pkgs/by-name/tr/tree-sitter-yts/queries/highlights.scm
index 674cbf18..674cbf18 100644
--- a/pkgs/sources/tree-sitter-yts/queries/highlights.scm
+++ b/pkgs/by-name/tr/tree-sitter-yts/queries/highlights.scm
diff --git a/pkgs/sources/tree-sitter-yts/src/grammar.json b/pkgs/by-name/tr/tree-sitter-yts/src/grammar.json
index a35a5464..a35a5464 100644
--- a/pkgs/sources/tree-sitter-yts/src/grammar.json
+++ b/pkgs/by-name/tr/tree-sitter-yts/src/grammar.json
diff --git a/pkgs/sources/tree-sitter-yts/src/node-types.json b/pkgs/by-name/tr/tree-sitter-yts/src/node-types.json
index 1a63a552..1a63a552 100644
--- a/pkgs/sources/tree-sitter-yts/src/node-types.json
+++ b/pkgs/by-name/tr/tree-sitter-yts/src/node-types.json
diff --git a/pkgs/sources/tree-sitter-yts/src/parser.c b/pkgs/by-name/tr/tree-sitter-yts/src/parser.c
index ded5c342..ded5c342 100644
--- a/pkgs/sources/tree-sitter-yts/src/parser.c
+++ b/pkgs/by-name/tr/tree-sitter-yts/src/parser.c
diff --git a/pkgs/sources/tree-sitter-yts/src/tree_sitter/parser.h b/pkgs/by-name/tr/tree-sitter-yts/src/tree_sitter/parser.h
index 972913cf..972913cf 100644
--- a/pkgs/sources/tree-sitter-yts/src/tree_sitter/parser.h
+++ b/pkgs/by-name/tr/tree-sitter-yts/src/tree_sitter/parser.h
diff --git a/pkgs/sources/tree-sitter-yts/treefmt.toml b/pkgs/by-name/tr/tree-sitter-yts/treefmt.toml
index 3d604b40..3d604b40 100644
--- a/pkgs/sources/tree-sitter-yts/treefmt.toml
+++ b/pkgs/by-name/tr/tree-sitter-yts/treefmt.toml
diff --git a/pkgs/by-name/up/update-sys/package.nix b/pkgs/by-name/up/update-sys/package.nix
new file mode 100644
index 00000000..8777f82d
--- /dev/null
+++ b/pkgs/by-name/up/update-sys/package.nix
@@ -0,0 +1,29 @@
+{
+  sysLib,
+  git,
+  nixos-rebuild,
+  sudo,
+  openssh,
+  coreutils,
+  mktemp,
+  gnugrep,
+  gnused,
+  systemd,
+}:
+sysLib.writeShellScript {
+  name = "update-sys";
+  src = ./update-sys.sh;
+  generateCompletions = true;
+  keepPath = false;
+  dependencies = [
+    git
+    nixos-rebuild
+    sudo
+    openssh
+    coreutils
+    mktemp
+    gnugrep
+    gnused
+    systemd
+  ];
+}
diff --git a/pkgs/sources/scripts/source/small_functions/update-sys.sh b/pkgs/by-name/up/update-sys/update-sys.sh
index d28247f6..d28247f6 100755
--- a/pkgs/sources/scripts/source/small_functions/update-sys.sh
+++ b/pkgs/by-name/up/update-sys/update-sys.sh
diff --git a/pkgs/sources/update_vim_plugins/.envrc b/pkgs/by-name/up/update-vim-plugins/.envrc
index 3550a30f..3550a30f 100644
--- a/pkgs/sources/update_vim_plugins/.envrc
+++ b/pkgs/by-name/up/update-vim-plugins/.envrc
diff --git a/pkgs/sources/update_vim_plugins/check-duplicates.sh b/pkgs/by-name/up/update-vim-plugins/check-duplicates.sh
index 781b8aeb..781b8aeb 100755
--- a/pkgs/sources/update_vim_plugins/check-duplicates.sh
+++ b/pkgs/by-name/up/update-vim-plugins/check-duplicates.sh
diff --git a/pkgs/sources/update_vim_plugins/flake.lock b/pkgs/by-name/up/update-vim-plugins/flake.lock
index 50494465..50494465 100644
--- a/pkgs/sources/update_vim_plugins/flake.lock
+++ b/pkgs/by-name/up/update-vim-plugins/flake.lock
diff --git a/pkgs/sources/update_vim_plugins/flake.nix b/pkgs/by-name/up/update-vim-plugins/flake.nix
index ef440af0..ef440af0 100644
--- a/pkgs/sources/update_vim_plugins/flake.nix
+++ b/pkgs/by-name/up/update-vim-plugins/flake.nix
diff --git a/pkgs/sources/update_vim_plugins/package.nix b/pkgs/by-name/up/update-vim-plugins/package.nix
index e74a29b1..e74a29b1 100644
--- a/pkgs/sources/update_vim_plugins/package.nix
+++ b/pkgs/by-name/up/update-vim-plugins/package.nix
diff --git a/pkgs/sources/update_vim_plugins/poetry.lock b/pkgs/by-name/up/update-vim-plugins/poetry.lock
index f4764b42..f4764b42 100644
--- a/pkgs/sources/update_vim_plugins/poetry.lock
+++ b/pkgs/by-name/up/update-vim-plugins/poetry.lock
diff --git a/pkgs/sources/update_vim_plugins/pyproject.toml b/pkgs/by-name/up/update-vim-plugins/pyproject.toml
index 38caf76d..38caf76d 100644
--- a/pkgs/sources/update_vim_plugins/pyproject.toml
+++ b/pkgs/by-name/up/update-vim-plugins/pyproject.toml
diff --git a/pkgs/sources/update_vim_plugins/update.sh b/pkgs/by-name/up/update-vim-plugins/update.sh
index 1bad12a9..1bad12a9 100755
--- a/pkgs/sources/update_vim_plugins/update.sh
+++ b/pkgs/by-name/up/update-vim-plugins/update.sh
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/__init__.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/__init__.py
index e69de29b..e69de29b 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/__init__.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/__init__.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/__main__.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/__main__.py
index a8d9e06f..a8d9e06f 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/__main__.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/__main__.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/cleanup.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/cleanup.py
index fd313ed0..fd313ed0 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/cleanup.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/cleanup.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/helpers.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/helpers.py
index 8a28b0e8..8a28b0e8 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/helpers.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/helpers.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/nix.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/nix.py
index 66a8df4c..66a8df4c 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/nix.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/nix.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/plugin.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/plugin.py
index 8334ad53..8334ad53 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/plugin.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/plugin.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/spec.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/spec.py
index 0f2fb29c..0f2fb29c 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/spec.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/spec.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/__init__.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/__init__.py
index e69de29b..e69de29b 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/__init__.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/__init__.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/fixtures.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/fixtures.py
index 75dd251a..75dd251a 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/fixtures.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/fixtures.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_nix.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/test_nix.py
index 46e59f76..46e59f76 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_nix.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/test_nix.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_plugin.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/test_plugin.py
index 32377e24..32377e24 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_plugin.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/test_plugin.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_spec.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/test_spec.py
index 2b9a1d24..2b9a1d24 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/tests/test_spec.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/tests/test_spec.py
diff --git a/pkgs/sources/update_vim_plugins/update_vim_plugins/update.py b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/update.py
index 7eb3eeb4..7eb3eeb4 100644
--- a/pkgs/sources/update_vim_plugins/update_vim_plugins/update.py
+++ b/pkgs/by-name/up/update-vim-plugins/update_vim_plugins/update.py
diff --git a/pkgs/sources/update_pkgs.sh b/pkgs/by-name/update_pkgs.sh
index be1573c6..be1573c6 100755
--- a/pkgs/sources/update_pkgs.sh
+++ b/pkgs/by-name/update_pkgs.sh
diff --git a/pkgs/sources/plgs-pkgs/README.md b/pkgs/by-name/vi/vim-plugins/README.md
index e8169951..e8169951 100644
--- a/pkgs/sources/plgs-pkgs/README.md
+++ b/pkgs/by-name/vi/vim-plugins/README.md
diff --git a/pkgs/sources/plgs-pkgs/check.nix b/pkgs/by-name/vi/vim-plugins/check.nix
index ad23e2c7..ad23e2c7 100644
--- a/pkgs/sources/plgs-pkgs/check.nix
+++ b/pkgs/by-name/vi/vim-plugins/check.nix
diff --git a/pkgs/sources/plgs-pkgs/overrides.nix b/pkgs/by-name/vi/vim-plugins/overrides.nix
index e03a78b1..e03a78b1 100644
--- a/pkgs/sources/plgs-pkgs/overrides.nix
+++ b/pkgs/by-name/vi/vim-plugins/overrides.nix
diff --git a/pkgs/by-name/vi/vim-plugins/package.nix b/pkgs/by-name/vi/vim-plugins/package.nix
new file mode 100644
index 00000000..e2e4a117
--- /dev/null
+++ b/pkgs/by-name/vi/vim-plugins/package.nix
@@ -0,0 +1,19 @@
+{
+  lib,
+  fetchurl,
+  fetchgit,
+  vimUtils,
+}: let
+  origin = import ./plugins {
+    inherit
+      (vimUtils)
+      buildVimPlugin
+      ;
+    inherit
+      lib
+      fetchurl
+      fetchgit
+      ;
+  };
+in
+  origin
diff --git a/pkgs/sources/plgs-pkgs/plugins/.plugins.json b/pkgs/by-name/vi/vim-plugins/plugins/.plugins.json
index 9331bc8f..9331bc8f 100644
--- a/pkgs/sources/plgs-pkgs/plugins/.plugins.json
+++ b/pkgs/by-name/vi/vim-plugins/plugins/.plugins.json
diff --git a/pkgs/sources/plgs-pkgs/plugins/blacklist.txt b/pkgs/by-name/vi/vim-plugins/plugins/blacklist.txt
index 8b137891..8b137891 100644
--- a/pkgs/sources/plgs-pkgs/plugins/blacklist.txt
+++ b/pkgs/by-name/vi/vim-plugins/plugins/blacklist.txt
diff --git a/pkgs/sources/plgs-pkgs/plugins/default.nix b/pkgs/by-name/vi/vim-plugins/plugins/default.nix
index df09e446..df09e446 100644
--- a/pkgs/sources/plgs-pkgs/plugins/default.nix
+++ b/pkgs/by-name/vi/vim-plugins/plugins/default.nix
diff --git a/pkgs/sources/plgs-pkgs/plugins/manifest.txt b/pkgs/by-name/vi/vim-plugins/plugins/manifest.txt
index 615083c8..615083c8 100644
--- a/pkgs/sources/plgs-pkgs/plugins/manifest.txt
+++ b/pkgs/by-name/vi/vim-plugins/plugins/manifest.txt
diff --git a/pkgs/sources/plgs-pkgs/plugins/plugins.md b/pkgs/by-name/vi/vim-plugins/plugins/plugins.md
index 4f73f811..4f73f811 100644
--- a/pkgs/sources/plgs-pkgs/plugins/plugins.md
+++ b/pkgs/by-name/vi/vim-plugins/plugins/plugins.md
diff --git a/pkgs/sources/plgs-pkgs/plugins/whitelist.txt b/pkgs/by-name/vi/vim-plugins/plugins/whitelist.txt
index e69de29b..e69de29b 100644
--- a/pkgs/sources/plgs-pkgs/plugins/whitelist.txt
+++ b/pkgs/by-name/vi/vim-plugins/plugins/whitelist.txt
diff --git a/pkgs/sources/plgs-pkgs/update.sh b/pkgs/by-name/vi/vim-plugins/update.sh
index 6a0d3452..6a0d3452 100755
--- a/pkgs/sources/plgs-pkgs/update.sh
+++ b/pkgs/by-name/vi/vim-plugins/update.sh
diff --git a/pkgs/by-name/vi/virsh-del/package.nix b/pkgs/by-name/vi/virsh-del/package.nix
new file mode 100644
index 00000000..3f27e2be
--- /dev/null
+++ b/pkgs/by-name/vi/virsh-del/package.nix
@@ -0,0 +1,13 @@
+{
+  sysLib,
+  libvirt,
+}:
+sysLib.writeShellScript {
+  name = "virsh-del";
+  src = ./virsh-del.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    libvirt
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/virsh-del.sh b/pkgs/by-name/vi/virsh-del/virsh-del.sh
index c3de5484..c3de5484 100755
--- a/pkgs/sources/scripts/source/wrappers/virsh-del.sh
+++ b/pkgs/by-name/vi/virsh-del/virsh-del.sh
diff --git a/pkgs/sources/yt/.env b/pkgs/by-name/yt/yt/.env
index 8018a738..8018a738 100755
--- a/pkgs/sources/yt/.env
+++ b/pkgs/by-name/yt/yt/.env
diff --git a/pkgs/sources/yt/.envrc b/pkgs/by-name/yt/yt/.envrc
index 3550a30f..3550a30f 100644
--- a/pkgs/sources/yt/.envrc
+++ b/pkgs/by-name/yt/yt/.envrc
diff --git a/pkgs/sources/yt/.gitignore b/pkgs/by-name/yt/yt/.gitignore
index c84fa049..c84fa049 100644
--- a/pkgs/sources/yt/.gitignore
+++ b/pkgs/by-name/yt/yt/.gitignore
diff --git a/pkgs/sources/yt/Cargo.lock b/pkgs/by-name/yt/yt/Cargo.lock
index ef2a53fd..ef2a53fd 100644
--- a/pkgs/sources/yt/Cargo.lock
+++ b/pkgs/by-name/yt/yt/Cargo.lock
diff --git a/pkgs/sources/yt/Cargo.toml b/pkgs/by-name/yt/yt/Cargo.toml
index 7c17d20b..7c17d20b 100644
--- a/pkgs/sources/yt/Cargo.toml
+++ b/pkgs/by-name/yt/yt/Cargo.toml
diff --git a/pkgs/sources/yt/flake.lock b/pkgs/by-name/yt/yt/flake.lock
index 50494465..50494465 100644
--- a/pkgs/sources/yt/flake.lock
+++ b/pkgs/by-name/yt/yt/flake.lock
diff --git a/pkgs/sources/yt/flake.nix b/pkgs/by-name/yt/yt/flake.nix
index 561b1c0d..561b1c0d 100644
--- a/pkgs/sources/yt/flake.nix
+++ b/pkgs/by-name/yt/yt/flake.nix
diff --git a/pkgs/by-name/yt/yt/package.nix b/pkgs/by-name/yt/yt/package.nix
new file mode 100644
index 00000000..84eda119
--- /dev/null
+++ b/pkgs/by-name/yt/yt/package.nix
@@ -0,0 +1,44 @@
+{
+  lib,
+  makeWrapper,
+  rustPlatform,
+  # dependencies
+  ytcc,
+  yt-dlp,
+  mpv,
+}: {
+  yt = import ./yt.nix {
+    inherit
+      lib
+      makeWrapper
+      rustPlatform
+      # dependencies
+
+      ytcc
+      yt-dlp
+      mpv
+      ;
+  };
+  yts = import ./yts.nix {
+    inherit
+      lib
+      makeWrapper
+      rustPlatform
+      # dependencies
+
+      ytcc
+      ;
+  };
+  ytc = import ./ytc.nix {
+    inherit
+      lib
+      makeWrapper
+      rustPlatform
+      # dependencies
+
+      ytcc
+      yt-dlp
+      mpv
+      ;
+  };
+}
diff --git a/pkgs/sources/yt/src/bin/yt/main.rs b/pkgs/by-name/yt/yt/src/bin/yt/main.rs
index 37348834..37348834 100644
--- a/pkgs/sources/yt/src/bin/yt/main.rs
+++ b/pkgs/by-name/yt/yt/src/bin/yt/main.rs
diff --git a/pkgs/sources/yt/src/bin/ytc/args.rs b/pkgs/by-name/yt/yt/src/bin/ytc/args.rs
index 8b2d6a61..8b2d6a61 100644
--- a/pkgs/sources/yt/src/bin/ytc/args.rs
+++ b/pkgs/by-name/yt/yt/src/bin/ytc/args.rs
diff --git a/pkgs/sources/yt/src/bin/ytc/main.rs b/pkgs/by-name/yt/yt/src/bin/ytc/main.rs
index b38157df..b38157df 100644
--- a/pkgs/sources/yt/src/bin/ytc/main.rs
+++ b/pkgs/by-name/yt/yt/src/bin/ytc/main.rs
diff --git a/pkgs/sources/yt/src/bin/yts/args.rs b/pkgs/by-name/yt/yt/src/bin/yts/args.rs
index 56989421..56989421 100644
--- a/pkgs/sources/yt/src/bin/yts/args.rs
+++ b/pkgs/by-name/yt/yt/src/bin/yts/args.rs
diff --git a/pkgs/sources/yt/src/bin/yts/main.rs b/pkgs/by-name/yt/yt/src/bin/yts/main.rs
index 7398db61..7398db61 100644
--- a/pkgs/sources/yt/src/bin/yts/main.rs
+++ b/pkgs/by-name/yt/yt/src/bin/yts/main.rs
diff --git a/pkgs/sources/yt/src/constants.rs b/pkgs/by-name/yt/yt/src/constants.rs
index 5e233656..5e233656 100644
--- a/pkgs/sources/yt/src/constants.rs
+++ b/pkgs/by-name/yt/yt/src/constants.rs
diff --git a/pkgs/sources/yt/src/downloader.rs b/pkgs/by-name/yt/yt/src/downloader.rs
index e915700d..e915700d 100644
--- a/pkgs/sources/yt/src/downloader.rs
+++ b/pkgs/by-name/yt/yt/src/downloader.rs
diff --git a/pkgs/sources/yt/src/help.str b/pkgs/by-name/yt/yt/src/help.str
index 130fe42a..130fe42a 100644
--- a/pkgs/sources/yt/src/help.str
+++ b/pkgs/by-name/yt/yt/src/help.str
diff --git a/pkgs/sources/yt/src/lib.rs b/pkgs/by-name/yt/yt/src/lib.rs
index b089c1a2..b089c1a2 100644
--- a/pkgs/sources/yt/src/lib.rs
+++ b/pkgs/by-name/yt/yt/src/lib.rs
diff --git a/pkgs/sources/yt/todo b/pkgs/by-name/yt/yt/todo
index 3f22042c..3f22042c 100644
--- a/pkgs/sources/yt/todo
+++ b/pkgs/by-name/yt/yt/todo
diff --git a/pkgs/sources/yt/update.sh b/pkgs/by-name/yt/yt/update.sh
index e500bb23..e500bb23 100755
--- a/pkgs/sources/yt/update.sh
+++ b/pkgs/by-name/yt/yt/update.sh
diff --git a/pkgs/sources/yt/yt.nix b/pkgs/by-name/yt/yt/yt.nix
index aaa971c3..aaa971c3 100644
--- a/pkgs/sources/yt/yt.nix
+++ b/pkgs/by-name/yt/yt/yt.nix
diff --git a/pkgs/sources/yt/ytc.nix b/pkgs/by-name/yt/yt/ytc.nix
index dff5bcf8..dff5bcf8 100644
--- a/pkgs/sources/yt/ytc.nix
+++ b/pkgs/by-name/yt/yt/ytc.nix
diff --git a/pkgs/sources/yt/yts.nix b/pkgs/by-name/yt/yt/yts.nix
index 9a8b172e..9a8b172e 100644
--- a/pkgs/sources/yt/yts.nix
+++ b/pkgs/by-name/yt/yt/yts.nix
diff --git a/pkgs/by-name/yt/yti/package.nix b/pkgs/by-name/yt/yti/package.nix
new file mode 100644
index 00000000..5a39512a
--- /dev/null
+++ b/pkgs/by-name/yt/yti/package.nix
@@ -0,0 +1,17 @@
+{
+  sysLib,
+  gawk,
+  expect,
+  yt-dlp,
+}:
+sysLib.writeShellScript {
+  name = "yti";
+  src = ./yti.sh;
+  generateCompletions = false;
+  keepPath = false;
+  dependencies = [
+    gawk
+    expect
+    yt-dlp
+  ];
+}
diff --git a/pkgs/sources/scripts/source/wrappers/yti.sh b/pkgs/by-name/yt/yti/yti.sh
index a69ffa74..a69ffa74 100755
--- a/pkgs/sources/scripts/source/wrappers/yti.sh
+++ b/pkgs/by-name/yt/yti/yti.sh
diff --git a/pkgs/default.nix b/pkgs/default.nix
index 38c58a95..200cc752 100644
--- a/pkgs/default.nix
+++ b/pkgs/default.nix
@@ -1,24 +1,12 @@
 {
-  lib,
-  system,
-  overlays ? [],
+  pkgs,
   sysLib,
-  homeConfig,
-  nixosConfig,
 }: let
-  additionalPackages = (import ./pkgs) {inherit homeConfig nixosConfig sysLib;};
-  complete_overlays = overlays ++ additionalPackages;
-in {
-  # TODO: inheriting system here is discouraged, localSystem or hostSystem should be inspected
-  inherit system;
-  overlays = complete_overlays;
-  config = {
-    # TODO: this fails because of the root tempsize, which should be increased
-    # contentAddressedByDefault = true;
-
-    allowUnfreePredicate = pkg:
-      builtins.elem (lib.getName pkg) [
-        "pypemicro" # required by pynitrokey
-      ];
+  files = import ./by-name-overlay.nix {
+    inherit pkgs sysLib;
+    inherit (pkgs) lib;
+    baseDirectory =
+      ./by-name;
   };
-}
+in
+  files
diff --git a/pkgs/flake.nix b/pkgs/flake.nix
new file mode 100644
index 00000000..81a143fa
--- /dev/null
+++ b/pkgs/flake.nix
@@ -0,0 +1,22 @@
+{
+  description = "My personal NUR repository";
+  inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
+  outputs = { self, nixpkgs }:
+    let
+      systems = [
+        "x86_64-linux"
+        "i686-linux"
+        "x86_64-darwin"
+        "aarch64-linux"
+        "armv6l-linux"
+        "armv7l-linux"
+      ];
+      forAllSystems = f: nixpkgs.lib.genAttrs systems (system: f system);
+    in
+    {
+      legacyPackages = forAllSystems (system: import ./default.nix {
+        pkgs = import nixpkgs { inherit system; };
+      });
+      packages = forAllSystems (system: nixpkgs.lib.filterAttrs (_: v: nixpkgs.lib.isDerivation v) self.legacyPackages.${system});
+    };
+}
diff --git a/pkgs/overlay.nix b/pkgs/overlay.nix
new file mode 100644
index 00000000..14d20fbd
--- /dev/null
+++ b/pkgs/overlay.nix
@@ -0,0 +1,16 @@
+# You can use this file as a nixpkgs overlay. This is useful in the
+# case where you don't want to add the whole NUR namespace to your
+# configuration.
+{sysLib}: self: super: let
+  nameValuePair = n: v: {
+    name = n;
+    value = v;
+  };
+  packages = import ./default.nix {
+    pkgs = super;
+    inherit sysLib;
+  };
+in
+  builtins.listToAttrs
+  (map (n: nameValuePair n packages.${n})
+    (builtins.attrNames packages))
diff --git a/pkgs/sources/comments/default.nix b/pkgs/sources/comments/default.nix
deleted file mode 100644
index 6205dcbe..00000000
--- a/pkgs/sources/comments/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-[
-  (
-    final: prev: {
-      comments = import ./comments.nix {
-        inherit
-          (prev)
-          lib
-          makeWrapper
-          rustPlatform
-          # dependencies
-          
-          less
-          coreutils
-          ;
-      };
-    }
-  )
-]
diff --git a/pkgs/sources/default.nix b/pkgs/sources/default.nix
deleted file mode 100644
index 4668d735..00000000
--- a/pkgs/sources/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{
-  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 homeConfig nixosConfig;};
-  snap-sync-forked = (import ./snap-sync-forked) {inherit sysLib;};
-  update_vim_plugins = import ./update_vim_plugins;
-  yt = import ./yt;
-  yts-grammar = import ./tree-sitter-yts;
-
-  overlays =
-    comments
-    ++ generate_firefox_extensions
-    ++ lf_make_map
-    ++ nvim_plugs
-    ++ scripts
-    ++ snap-sync-forked
-    ++ update_vim_plugins
-    ++ yt
-    ++ yts-grammar;
-in
-  overlays
diff --git a/pkgs/sources/generate_moz_extension/default.nix b/pkgs/sources/generate_moz_extension/default.nix
deleted file mode 100644
index be734eee..00000000
--- a/pkgs/sources/generate_moz_extension/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-[
-  (
-    final: prev: {
-      generate_firefox_extensions = import ./generate_firefox_extensions.nix {
-        inherit
-          (prev)
-          rustPlatform
-          # Dependencies
-          
-          openssl
-          pkg-config
-          ;
-      };
-    }
-  )
-]
diff --git a/pkgs/sources/lf-make-map/default.nix b/pkgs/sources/lf-make-map/default.nix
deleted file mode 100644
index 8ff4c624..00000000
--- a/pkgs/sources/lf-make-map/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-[
-  (
-    final: prev: {
-      lf-make-map = import ./lf_make_map.nix {
-        inherit
-          (prev)
-          rustPlatform
-          ;
-      };
-    }
-  )
-]
diff --git a/pkgs/sources/plgs-pkgs/default.nix b/pkgs/sources/plgs-pkgs/default.nix
deleted file mode 100644
index 0f7cd485..00000000
--- a/pkgs/sources/plgs-pkgs/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-[
-  (final: prev:
-    prev.lib.composeManyExtensions [
-      (self: super: let
-        origin = import ./plugins {
-          inherit (super.vimUtils) buildVimPlugin;
-          inherit (super) lib fetchurl fetchgit;
-        };
-      in {
-        vimExtraPlugins = super.lib.makeExtensible (_: super.lib.recurseIntoAttrs origin);
-      })
-    ]
-    final
-    prev)
-]
diff --git a/pkgs/sources/scripts/default.nix b/pkgs/sources/scripts/default.nix
deleted file mode 100644
index 09c8d411..00000000
--- a/pkgs/sources/scripts/default.nix
+++ /dev/null
@@ -1,412 +0,0 @@
-{
-  sysLib,
-  homeConfig,
-  nixosConfig,
-}: [
-  (
-    final: prev: let
-      inherit (prev) lib;
-
-      write_shell = {
-        name,
-        path,
-        dependencies ? [],
-        keepPath ? false,
-        completions ? false,
-      }:
-        sysLib.writeShellScript {
-          inherit name keepPath;
-          src = ./source/${path}/${name}.sh;
-          dependencies = dependencies ++ [prev.dash];
-          generateCompletions = completions;
-        };
-      write_python = {
-        name,
-        path,
-        dependencies_system ? [],
-        dependencies_python ? _: [],
-        keepPath ? false,
-      }: let
-        src = ./source/${path}/${name}.py;
-        dependencies =
-          [(prev.python3.withPackages dependencies_python)]
-          ++ dependencies_system;
-        path_setting =
-          if keepPath
-          then "--prefix PATH :"
-          else "--set PATH";
-      in
-        prev.runCommandLocal name {
-          nativeBuildInputs = [prev.makeWrapper] ++ dependencies;
-        }
-        ''
-          install -m755 ${src} -D "$out/bin/${name}"
-          patchShebangs "$out/bin/${name}"
-          wrapProgram "$out/bin/${name}" ${path_setting} ${prev.lib.makeBinPath dependencies};
-        '';
-
-      ## Begin of shell scripts
-      aumo-scr = write_shell {
-        name = "aumo";
-        path = "apps";
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            udisks
-            findutils
-            rofi
-            ;
-        };
-      };
-
-      battery-scr = write_shell {
-        name = "battery";
-        path = "wrappers";
-        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;
-        dependencies = builtins.attrValues {inherit (prev) sane-backends imagemagick coreutils fd;};
-        generateCompletions = true;
-        replacementStrings = {
-          DEVICE_FUNCTION =
-            # This is here, because escaping the whole function, to use it in the shell script
-            # directly just isn't possible
-            prev.writeText "DEVICE_FUNCTION"
-            /*
-            bash
-            */
-            ''
-              scanimage -L | awk 'BEGIN { FS = "`" } { gsub(/'.*/, "", $2); print $2 }'
-            '';
-        };
-      };
-
-      description-scr = write_shell {
-        name = "description";
-        path = "specific/ytcc";
-        dependencies = builtins.attrValues {
-          inherit (prev) jq fmt less locale;
-        };
-      };
-
-      fupdate-scr = write_shell {
-        name = "fupdate";
-        path = "apps";
-        keepPath = true;
-        completions = true;
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            dash
-            nix
-            gnugrep
-            fd
-            coreutils
-            bat # used by batgrep
-            gnused # required by batgrep
-            git # needed to fetch through git
-            ;
-          inherit (prev.bat-extras) batgrep;
-        };
-      };
-
-      git-edit-index-scr = write_shell {
-        name = "git-edit-index";
-        path = "apps";
-        completions = true;
-        # This starts neovim, wich might want to shell out
-        keepPath = true;
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            git
-            gnused
-            # $EDITOR
-
-            ;
-        };
-      };
-
-      hibernate-scr = write_shell {
-        name = "hibernate";
-        path = "wrappers";
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            systemd
-            taskwarrior
-            ;
-        };
-      };
-
-      ll-scr = sysLib.writeShellScript {
-        name = "ll";
-        src = ./source/wrappers/ll.sh;
-        wrap = false;
-      };
-
-      # TODO: this need to be replaced with a wayland alternative
-      #  llp-scr = write_shell {
-      #     name = "llp";
-      #     path = "wrappers";
-      #     dependencies = builtins.attrValues {inherit (prev) lf ueberzug;};
-      #   };
-
-      lock-scr = write_shell {
-        name = "lock";
-        path = "wrappers";
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            taskwarrior
-            swaylock
-            ;
-        };
-      };
-
-      lyrics-scr = write_shell {
-        name = "lyrics";
-        path = "wrappers";
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            exiftool
-            mpc-cli
-            jq
-            less
-            locale # dependency of less
-            ;
-        };
-      };
-
-      mpc-fav-scr = write_shell {
-        name = "mpc-fav";
-        path = "wrappers";
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            mpc-cli
-            ;
-        };
-      };
-
-      mpc-rm-scr = write_shell {
-        name = "mpc-rm";
-        path = "wrappers";
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            mpc-cli
-            trash-cli
-            ;
-        };
-      };
-
-      mpc-scr = write_shell {
-        name = "mpc";
-        path = "wrappers";
-        dependencies = [
-          mpc-fav-scr
-          mpc-rm-scr
-          prev.mpc-cli
-        ];
-      };
-
-      nato-scr = write_python {
-        name = "nato";
-        path = "small_functions";
-        dependencies_python = ps: [];
-      };
-
-      neorg-scr = sysLib.writeShellScriptMultiPart {
-        name = "neorg";
-        keepPath = true;
-        src = ./source/specific/neorg/sh;
-        baseName = "main.sh";
-        cmdPrefix = "functions";
-        cmdNames = [
-          "add.sh"
-          "context.sh"
-          "dmenu.sh"
-          "f_start.sh"
-          "f_stop.sh"
-          "list.sh"
-          "project.sh"
-          "review.sh"
-          "utils.sh"
-          "workspace.sh"
-        ];
-        dependencies = with prev; [
-          cocogitto
-          rofi
-          libnotify
-        ];
-        generateCompletions = true;
-        replacementStrings = {
-          DEFAULT_NEORG_PROJECT_DIR =
-            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;
-            dependencies = with prev; [
-              taskwarrior
-              gawk
-              findutils # xargs
-            ];
-          }}/bin/neorg_id_function";
-
-          # TODO: Replace the hard-coded path here with some reference <2023-10-20>
-          TASK_PROJECT_FILE = "/home/soispha/repos/nix/nixos-config/hm/soispha/conf/taskwarrior/projects/default.nix";
-        };
-      };
-
-      screenshot_persistent-scr = write_shell {
-        name = "screenshot_persistent";
-        path = "small_functions";
-        keepPath = true;
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            grim
-            slurp
-            alacritty
-            rofi
-            libnotify
-            lf # TODO: add llp
-            ;
-        };
-      };
-
-      screenshot_temporary-scr = write_shell {
-        name = "screenshot_temporary";
-        path = "small_functions";
-        dependencies = builtins.attrValues {inherit (prev) grim slurp wl-clipboard;};
-      };
-
-      show-scr = write_shell {
-        name = "show";
-        path = "wrappers";
-        keepPath = true; # I might want to use nvim in less (and shell escapes)
-        dependencies = builtins.attrValues {inherit (prev) less locale;};
-      };
-
-      sort_song-scr = write_shell {
-        name = "sort_song";
-        path = "wrappers";
-        dependencies = builtins.attrValues {inherit (prev) mediainfo jq gawk;};
-      };
-
-      spodi-scr = sysLib.writeShellScriptMultiPart {
-        name = "spodi";
-        keepPath = false;
-        src = ./source/specific/spodi;
-        baseName = "spodi.sh";
-        cmdPrefix = "sh";
-        cmdNames = [
-          "download.sh"
-          "update.sh"
-        ];
-        dependencies = with prev; [
-          gawk
-          expect
-          spotdl
-          fd
-          coreutils
-        ];
-        generateCompletions = true;
-        replacementStrings = {
-          XDG_CACHE_HOME = homeConfig.xdg.cacheHome;
-          XDG_MUSIC_DIR = homeConfig.xdg.userDirs.music;
-        };
-      };
-
-      update-sys-scr = write_shell {
-        name = "update-sys";
-        path = "small_functions";
-        completions = true;
-        dependencies = builtins.attrValues {
-          inherit
-            (prev)
-            git
-            nixos-rebuild
-            sudo
-            openssh
-            coreutils
-            mktemp
-            gnugrep
-            gnused
-            systemd
-            ;
-        };
-      };
-
-      virsh-del-scr = write_shell {
-        name = "virsh-del";
-        path = "wrappers";
-        dependencies = builtins.attrValues {inherit (prev) libvirt;};
-      };
-
-      yti-scr = write_shell {
-        name = "yti";
-        path = "wrappers";
-        dependencies = builtins.attrValues {inherit (prev) gawk expect yt-dlp;};
-      };
-    in {
-      scripts = {
-        # llp = llp-scr; # TODO: see above
-        aumo = aumo-scr;
-        battery = battery-scr;
-        brightness = brightness-scr;
-        con2pdf = con2pdf-scr;
-        description = description-scr;
-        fupdate = fupdate-scr;
-        git-edit-index = git-edit-index-scr;
-        hibernate = hibernate-scr;
-        ll = ll-scr;
-        lock = lock-scr;
-        lyrics = lyrics-scr;
-        mpc = mpc-scr;
-        mpc-fav = mpc-fav-scr;
-        mpc-rm = mpc-rm-scr;
-        nato = nato-scr;
-        neorg = neorg-scr;
-        screenshot_persistent = screenshot_persistent-scr;
-        screenshot_temporary = screenshot_temporary-scr;
-        show = show-scr;
-        sort_song = sort_song-scr;
-        spodi = spodi-scr;
-        update-sys = update-sys-scr;
-        virsh-del = virsh-del-scr;
-        yti = yti-scr;
-      };
-    }
-  )
-]
-
-
-    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/pkgs/sources/snap-sync-forked/default.nix b/pkgs/sources/snap-sync-forked/default.nix
deleted file mode 100644
index 5b086a5a..00000000
--- a/pkgs/sources/snap-sync-forked/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{sysLib}: [
-  (final: prev: {
-    snap-sync-forked = sysLib.writeShellScript {
-      name = "snap-sync-forked";
-      src = ./snap-sync-forked.sh;
-      dependencies = with prev; [
-        bash
-        btrfs-progs
-        coreutils
-        gawk
-        gnugrep
-        snapper
-        util-linux
-
-        # optional:
-        libnotify
-        openssh
-        pv
-        rsync
-        sudo
-      ];
-    };
-  })
-]
diff --git a/pkgs/sources/tree-sitter-yts/default.nix b/pkgs/sources/tree-sitter-yts/default.nix
deleted file mode 100644
index 7e15481c..00000000
--- a/pkgs/sources/tree-sitter-yts/default.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-  (
-    final: prev: {
-      yts-grammar = (prev.callPackage ./package.nix {}) {
-        language = "yts";
-        version = "1.0";
-        src = ./.;
-      };
-    }
-  )
-]
diff --git a/pkgs/sources/tree-sitter-yts/package.nix b/pkgs/sources/tree-sitter-yts/package.nix
deleted file mode 100644
index fe9a7326..00000000
--- a/pkgs/sources/tree-sitter-yts/package.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-# taken from nixpgks: pkgs/development/tools/parsing/tree-sitter/grammar.nix
-{
-  stdenv,
-  nodejs,
-  tree-sitter,
-  lib,
-}:
-# Build a parser grammar and put the resulting shared object in `$out/parser`
-{
-  # language name
-  language,
-  version,
-  src,
-  location ? null,
-  generate ? false,
-  ...
-} @ args:
-stdenv.mkDerivation ({
-    pname = "${language}-grammar";
-
-    inherit src version;
-
-    nativeBuildInputs = lib.optionals generate [nodejs tree-sitter];
-
-    CFLAGS = ["-Isrc" "-O2"];
-    CXXFLAGS = ["-Isrc" "-O2"];
-
-    stripDebugList = ["parser"];
-
-    configurePhase =
-      lib.optionalString (location != null) ''
-        cd ${location}
-      ''
-      + lib.optionalString generate ''
-        tree-sitter generate
-      '';
-
-    # When both scanner.{c,cc} exist, we should not link both since they may be the same but in
-    # different languages. Just randomly prefer C++ if that happens.
-    buildPhase = ''
-      runHook preBuild
-      if [[ -e src/scanner.cc ]]; then
-        $CXX -fPIC -c src/scanner.cc -o scanner.o $CXXFLAGS
-      elif [[ -e src/scanner.c ]]; then
-        $CC -fPIC -c src/scanner.c -o scanner.o $CFLAGS
-      fi
-      $CC -fPIC -c src/parser.c -o parser.o $CFLAGS
-      rm -rf parser
-      $CXX -shared -o parser *.o
-      runHook postBuild
-    '';
-
-    installPhase = ''
-      runHook preInstall
-      mkdir $out
-      mv parser $out/
-      if [[ -d queries ]]; then
-        cp -r queries $out
-      fi
-      runHook postInstall
-    '';
-  }
-  // removeAttrs args ["language" "location" "generate"])
diff --git a/pkgs/sources/update_vim_plugins/default.nix b/pkgs/sources/update_vim_plugins/default.nix
deleted file mode 100644
index 7f0b3f0d..00000000
--- a/pkgs/sources/update_vim_plugins/default.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-[
-  (
-    final: prev: {
-      update-vim-plugins = import ./package.nix {
-        inherit
-          (prev)
-          python3
-          # dependencies
-          
-          nix
-          alejandra
-          nix-prefetch-git
-          ;
-      };
-    }
-  )
-]
diff --git a/pkgs/sources/yt/default.nix b/pkgs/sources/yt/default.nix
deleted file mode 100644
index 32396051..00000000
--- a/pkgs/sources/yt/default.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-[
-  (
-    final: prev: {
-      yt = import ./yt.nix {
-        inherit
-          (prev)
-          lib
-          makeWrapper
-          rustPlatform
-          # dependencies
-          
-          ytcc
-          yt-dlp
-          mpv
-          ;
-      };
-    }
-  )
-  (
-    final: prev: {
-      yts = import ./yts.nix {
-        inherit
-          (prev)
-          lib
-          makeWrapper
-          rustPlatform
-          # dependencies
-          
-          ytcc
-          ;
-      };
-    }
-  )
-  (
-    final: prev: {
-      ytc = import ./ytc.nix {
-        inherit
-          (prev)
-          lib
-          makeWrapper
-          rustPlatform
-          # dependencies
-          
-          ytcc
-          yt-dlp
-          mpv
-          ;
-      };
-    }
-  )
-]