{ stdenv, zsh, config }: with stdenv.lib; let mkSymlinks = name: '' ln -s $out/libexec/mediaspace $out/bin/mediaspace.${name} ln -s $out/libexec/queue $out/bin/queue.${name} ln -s $out/libexec/queuesize $out/bin/queuesize.${name} ln -s $out/libexec/queuestatus $out/bin/queuestatus.${name} ln -s $out/libexec/update-queuesize $out/bin/update-queuesize.${name} ''; in stdenv.mkDerivation { name = "uucp-mediaserver"; src = ./scripts; phases = [ "unpackPhase" "buildPhase" "installPhase" ]; inherit (config) queueDir; inherit zsh; buildPhase = '' substituteAllInPlace mediaspace substituteAllInPlace queue substituteAllInPlace queuesize substituteAllInPlace queuestatus substituteAllInPlace update-queuesize ''; installPhase = '' mkdir -p $out/libexec install -m 755 -t $out/libexec mediaspace queue queuesize queuestatus update-queuesize mkdir -p $out/bin ${concatStringsSep "\n" (map mkSymlinks config.remoteNodes)} ''; }