40 lines
878 B
Nix
40 lines
878 B
Nix
{ lib
|
|
, stdenvNoCC
|
|
, fetchurl
|
|
, _7zz
|
|
, pname
|
|
, version
|
|
, hash
|
|
, isAarch64
|
|
, metaCommon ? { }
|
|
}:
|
|
|
|
let
|
|
pname = "losslesscut";
|
|
src = fetchurl {
|
|
url = "https://github.com/mifi/lossless-cut/releases/download/v${version}/LosslessCut-mac-${if isAarch64 then "arm64" else "x64"}.dmg";
|
|
inherit hash;
|
|
};
|
|
in
|
|
stdenvNoCC.mkDerivation {
|
|
inherit pname version src;
|
|
|
|
nativeBuildInputs = [ _7zz ];
|
|
|
|
sourceRoot = "LosslessCut.app";
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
mkdir -p "$out/Applications"
|
|
cd ..
|
|
mv "$sourceRoot" "$out/Applications"
|
|
mkdir -p "$out/bin"
|
|
ln -s "$out/Applications/$(basename "$sourceRoot")/Contents/MacOS/LosslessCut" "$out/bin/losslesscut"
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = metaCommon // (with lib; {
|
|
platforms = if isAarch64 then [ "aarch64-darwin" ] else platforms.darwin;
|
|
mainProgram = "losslesscut";
|
|
});
|
|
}
|