about summary refs log tree commit diff
path: root/pkgs/applications/video/kodi
diff options
context:
space:
mode:
authorAaron Andersen <aaron@fosslib.net>2021-03-10 08:16:10 -0500
committerAaron Andersen <aaron@fosslib.net>2021-03-11 20:35:54 -0500
commitce0621ec4f8b2de17ed8e4c96f8a295336989c50 (patch)
tree19f8d2457fea24fbf380c8ab148b5ef2b9d36957 /pkgs/applications/video/kodi
parent587a8b28370ea46b8fdc3bd74d8017e2681e9982 (diff)
kodi: introduce kodi.withPackages to replace kodiPackages.kodiWithAddons
Diffstat (limited to 'pkgs/applications/video/kodi')
-rw-r--r--pkgs/applications/video/kodi/default.nix14
-rw-r--r--pkgs/applications/video/kodi/wrapper.nix11
2 files changed, 16 insertions, 9 deletions
diff --git a/pkgs/applications/video/kodi/default.nix b/pkgs/applications/video/kodi/default.nix
new file mode 100644
index 0000000000000..55ba84cc454c1
--- /dev/null
+++ b/pkgs/applications/video/kodi/default.nix
@@ -0,0 +1,14 @@
+{ callPackage, ... } @ args:
+let
+  unwrapped = callPackage ./unwrapped.nix (removeAttrs args [ "callPackage" ]);
+  kodiPackages = callPackage ./packages.nix { kodi = unwrapped; };
+in
+  unwrapped.overrideAttrs (oldAttrs: {
+    passthru = oldAttrs.passthru // {
+      packages = kodiPackages;
+      withPackages = func: callPackage ./wrapper.nix {
+        kodi = unwrapped;
+        addons = kodiPackages.requiredKodiAddons (func kodiPackages);
+      };
+    };
+  })
diff --git a/pkgs/applications/video/kodi/wrapper.nix b/pkgs/applications/video/kodi/wrapper.nix
index d4844703b6b88..2b4abbb500aff 100644
--- a/pkgs/applications/video/kodi/wrapper.nix
+++ b/pkgs/applications/video/kodi/wrapper.nix
@@ -1,9 +1,7 @@
 { lib, makeWrapper, buildEnv, kodi, addons }:
 
-let
-  drvName = builtins.parseDrvName kodi.name;
-in buildEnv {
-  name = "${drvName.name}-with-addons-${drvName.version}";
+buildEnv {
+  name = "${kodi.name}-env";
 
   paths = [ kodi ] ++ addons;
   pathsToLink = [ "/share" ];
@@ -22,9 +20,4 @@ in buildEnv {
             (plugin: plugin.extraRuntimeDependencies or []) addons)}"
     done
   '';
-
-  meta = kodi.meta // {
-    description = kodi.meta.description
-                + " (with addons: ${lib.concatMapStringsSep ", " (x: x.name) addons})";
-  };
 }