bin.nix (1320B)
1 { lib, stdenv, fetchfromgh, undmg, python3Packages, qutebrowser }: 2 3 stdenv.mkDerivation (finalAttrs: { 4 pname = "qutebrowser-bin"; 5 version = "3.1.0"; 6 7 src = fetchfromgh { 8 owner = "qutebrowser"; 9 repo = "qutebrowser"; 10 name = "qutebrowser-${finalAttrs.version}.dmg"; 11 hash = "sha256-AvuuwUnxMcr2ekZ/O1FL/4IizV1aTMhXNrbf1SwNY7U="; 12 version = "v${finalAttrs.version}"; 13 }; 14 15 sourceRoot = "."; 16 17 nativeBuildInputs = [ undmg python3Packages.wrapPython ]; 18 19 installPhase = '' 20 runHook preInstall 21 22 mkdir -p $out/Applications 23 cp -r *.app $out/Applications 24 25 runHook postInstall 26 ''; 27 28 postInstall = '' 29 tar -C $out/Applications/qutebrowser.app/Contents/Resources \ 30 --strip-components=2 -xvzf ${qutebrowser.src} \ 31 qutebrowser-${qutebrowser.version}/misc/userscripts/qute-pass 32 33 buildPythonPath ${python3Packages.tldextract}; 34 patchPythonScript $out/Applications/qutebrowser.app/Contents/Resources/userscripts/qute-pass 35 ''; 36 37 passthru.userscripts = "${finalAttrs.finalPackage}/Applications/qutebrowser.app/Contents/Resources/userscripts"; 38 39 meta = with lib; 40 qutebrowser.meta // { 41 sourceProvenance = with sourceTypes; [ binaryNativeCode ]; 42 maintainers = [ maintainers.sikmir ]; 43 platforms = [ "x86_64-darwin" ]; 44 skip.ci = true; 45 }; 46 })