From b7defa338dd35d4a93e9efc7cda4f1ae1026b906 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gutyina=20Gerg=C5=91?= Date: Wed, 24 Jul 2024 23:46:34 +0200 Subject: [PATCH 1/2] bruno: format with nixfmt-rfc-style --- pkgs/by-name/br/bruno/package.nix | 170 +++++++++++++++++------------- 1 file changed, 95 insertions(+), 75 deletions(-) diff --git a/pkgs/by-name/br/bruno/package.nix b/pkgs/by-name/br/bruno/package.nix index 751dc2fbc74c..a50e3f85bfb7 100644 --- a/pkgs/by-name/br/bruno/package.nix +++ b/pkgs/by-name/br/bruno/package.nix @@ -1,30 +1,29 @@ -{ lib - -, stdenv -, fetchFromGitHub -, buildNpmPackage -, nix-update-script -, electron -, writeShellScriptBin -, makeWrapper -, copyDesktopItems -, giflib -, makeDesktopItem -, pkg-config -, pixman -, cairo -, pango -, npm-lockfile-fix -, overrideSDK -, darwin +{ + lib, + stdenv, + fetchFromGitHub, + buildNpmPackage, + nix-update-script, + electron, + writeShellScriptBin, + makeWrapper, + copyDesktopItems, + giflib, + makeDesktopItem, + pkg-config, + pixman, + cairo, + pango, + npm-lockfile-fix, + overrideSDK, + darwin, }: let # fix for: https://github.com/NixOS/nixpkgs/issues/272156 - buildNpmPackage' = - buildNpmPackage.override { - stdenv = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv; - }; + buildNpmPackage' = buildNpmPackage.override { + stdenv = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv; + }; in buildNpmPackage' rec { pname = "bruno"; @@ -44,22 +43,26 @@ buildNpmPackage' rec { npmDepsHash = "sha256-157hm7h5FWuOuxoo6WTtlMPq5LcRZIsSt5NDg0pvim8="; npmFlags = [ "--legacy-peer-deps" ]; - nativeBuildInputs = [ - (writeShellScriptBin "phantomjs" "echo 2.1.1") - pkg-config - ] ++ lib.optionals (! stdenv.isDarwin) [ - makeWrapper - copyDesktopItems - ]; + nativeBuildInputs = + [ + (writeShellScriptBin "phantomjs" "echo 2.1.1") + pkg-config + ] + ++ lib.optionals (!stdenv.isDarwin) [ + makeWrapper + copyDesktopItems + ]; - buildInputs = [ - pixman - cairo - pango - ] ++ lib.optionals stdenv.isDarwin [ - darwin.apple_sdk_11_0.frameworks.CoreText - giflib - ]; + buildInputs = + [ + pixman + cairo + pango + ] + ++ lib.optionals stdenv.isDarwin [ + darwin.apple_sdk_11_0.frameworks.CoreText + giflib + ]; desktopItems = [ (makeDesktopItem { @@ -78,7 +81,7 @@ buildNpmPackage' rec { --replace-fail 'if [ "$1" == "snap" ]; then' 'exit 0; if [ "$1" == "snap" ]; then' ''; - ELECTRON_SKIP_BINARY_DOWNLOAD=1; + ELECTRON_SKIP_BINARY_DOWNLOAD = 1; dontNpmBuild = true; postBuild = '' @@ -91,27 +94,32 @@ buildNpmPackage' rec { pushd packages/bruno-electron - ${if stdenv.isDarwin then '' - cp -r ${electron}/Applications/Electron.app ./ - find ./Electron.app -name 'Info.plist' | xargs -d '\n' chmod +rw + ${ + if stdenv.isDarwin then + '' + cp -r ${electron}/Applications/Electron.app ./ + find ./Electron.app -name 'Info.plist' | xargs -d '\n' chmod +rw - substituteInPlace electron-builder-config.js \ - --replace-fail "identity: 'Anoop MD (W7LPPWA48L)'" 'identity: null' \ - --replace-fail "afterSign: 'notarize.js'," "" + substituteInPlace electron-builder-config.js \ + --replace-fail "identity: 'Anoop MD (W7LPPWA48L)'" 'identity: null' \ + --replace-fail "afterSign: 'notarize.js'," "" - npm exec electron-builder -- \ - --dir \ - --config electron-builder-config.js \ - -c.electronDist=./ \ - -c.electronVersion=${electron.version} \ - -c.npmRebuild=false - '' else '' - npm exec electron-builder -- \ - --dir \ - -c.electronDist=${electron}/libexec/electron \ - -c.electronVersion=${electron.version} \ - -c.npmRebuild=false - ''} + npm exec electron-builder -- \ + --dir \ + --config electron-builder-config.js \ + -c.electronDist=./ \ + -c.electronVersion=${electron.version} \ + -c.npmRebuild=false + '' + else + '' + npm exec electron-builder -- \ + --dir \ + -c.electronDist=${electron}/libexec/electron \ + -c.electronVersion=${electron.version} \ + -c.npmRebuild=false + '' + } popd ''; @@ -122,26 +130,31 @@ buildNpmPackage' rec { runHook preInstall - ${if stdenv.isDarwin then '' - mkdir -p $out/Applications + ${ + if stdenv.isDarwin then + '' + mkdir -p $out/Applications - cp -R packages/bruno-electron/out/**/Bruno.app $out/Applications/ - '' else '' - mkdir -p $out/opt/bruno $out/bin + cp -R packages/bruno-electron/out/**/Bruno.app $out/Applications/ + '' + else + '' + mkdir -p $out/opt/bruno $out/bin - cp -r packages/bruno-electron/dist/linux*-unpacked/{locales,resources{,.pak}} $out/opt/bruno + cp -r packages/bruno-electron/dist/linux*-unpacked/{locales,resources{,.pak}} $out/opt/bruno - makeWrapper ${lib.getExe electron} $out/bin/bruno \ - --add-flags $out/opt/bruno/resources/app.asar \ - --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \ - --set-default ELECTRON_IS_DEV 0 \ - --inherit-argv0 + makeWrapper ${lib.getExe electron} $out/bin/bruno \ + --add-flags $out/opt/bruno/resources/app.asar \ + --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \ + --set-default ELECTRON_IS_DEV 0 \ + --inherit-argv0 - for s in 16 32 48 64 128 256 512 1024; do - size=${"$"}{s}x$s - install -Dm644 $src/packages/bruno-electron/resources/icons/png/$size.png $out/share/icons/hicolor/$size/apps/bruno.png - done - ''} + for s in 16 32 48 64 128 256 512 1024; do + size=${"$"}{s}x$s + install -Dm644 $src/packages/bruno-electron/resources/icons/png/$size.png $out/share/icons/hicolor/$size/apps/bruno.png + done + '' + } runHook postInstall ''; @@ -153,7 +166,14 @@ buildNpmPackage' rec { homepage = "https://www.usebruno.com"; platforms = platforms.linux ++ platforms.darwin; license = licenses.mit; - maintainers = with maintainers; [ gepbird kashw2 lucasew mattpolzin water-sucks redyf ]; + maintainers = with maintainers; [ + gepbird + kashw2 + lucasew + mattpolzin + water-sucks + redyf + ]; mainProgram = "bruno"; }; } From 15f77eef991eb872a8480346f3e010b7fac6a07f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gutyina=20Gerg=C5=91?= Date: Thu, 20 Jun 2024 20:06:57 +0200 Subject: [PATCH 2/2] bruno: patch out giflib depdendency --- pkgs/by-name/br/bruno/package.nix | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/br/bruno/package.nix b/pkgs/by-name/br/bruno/package.nix index a50e3f85bfb7..1a2817a16d9b 100644 --- a/pkgs/by-name/br/bruno/package.nix +++ b/pkgs/by-name/br/bruno/package.nix @@ -8,7 +8,6 @@ writeShellScriptBin, makeWrapper, copyDesktopItems, - giflib, makeDesktopItem, pkg-config, pixman, @@ -61,7 +60,6 @@ buildNpmPackage' rec { ] ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk_11_0.frameworks.CoreText - giflib ]; desktopItems = [ @@ -83,6 +81,14 @@ buildNpmPackage' rec { ELECTRON_SKIP_BINARY_DOWNLOAD = 1; + # remove giflib dependency + npmRebuildFlags = [ "--ignore-scripts" ]; + preBuild = '' + substituteInPlace node_modules/canvas/binding.gyp \ + --replace-fail "'with_gif%': '