nixpkgs/pkgs/applications/editors/jetbrains/bin/darwin.nix
2023-12-03 19:32:27 +00:00

41 lines
706 B
Nix

{ lib
, stdenvNoCC
, undmg
, ...
}:
{ meta
, pname
, product
, productShort ? product
, src
, version
, plugins ? [ ]
, buildNumber
, ...
}:
let
loname = lib.toLower productShort;
in
stdenvNoCC.mkDerivation {
inherit pname meta src version plugins;
passthru.buildNumber = buildNumber;
desktopName = product;
dontFixup = true;
installPhase = ''
runHook preInstall
APP_DIR="$out/Applications/${product}.app"
mkdir -p "$APP_DIR"
cp -Tr *.app "$APP_DIR"
mkdir -p "$out/bin"
cat << EOF > "$out/bin/${loname}"
open -na '$APP_DIR' --args "\$@"
EOF
chmod +x "$out/bin/${loname}"
runHook postInstall
'';
nativeBuildInputs = [ undmg ];
sourceRoot = ".";
}