about summary refs log tree commit diff stats
path: root/pkgs/by-name/sp/spodi/package.nix
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/sp/spodi/package.nix
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/sp/spodi/package.nix39
1 files changed, 39 insertions, 0 deletions
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;
+  };
+}