lol
1{ stdenv, buildEnv, deadbeef, makeWrapper, plugins }:
2
3let
4drv = buildEnv {
5 name = "deadbeef-with-plugins-" + (builtins.parseDrvName deadbeef.name).version;
6
7 paths = [ deadbeef ] ++ plugins;
8
9 postBuild = ''
10 # TODO: This could be avoided if buildEnv could be forced to create all directories
11 if [ -L $out/bin ]; then
12 rm $out/bin
13 mkdir $out/bin
14 for i in ${deadbeef}/bin/*; do
15 ln -s $i $out/bin
16 done
17 fi
18 wrapProgram $out/bin/deadbeef \
19 --set DEADBEEF_PLUGIN_DIR "$out/lib/deadbeef"
20 '';
21 };
22in stdenv.lib.overrideDerivation drv (x : { buildInputs = x.buildInputs ++ [ makeWrapper ]; })