about summary refs log tree commit diff stats
path: root/pkgs/by-name
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/by-name
parentrefactor(sys): Modularize and move to `modules/system` or `pkgs` (diff)
downloadnixos-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
185 files changed, 747 insertions, 0 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