From 83fdaff9f71276d8e0b93263e2e05e1079cbabdb Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Fri, 29 Oct 2021 02:15:40 +0200 Subject: [PATCH] sharedown: Improve expression formatting The old formatting made it far too easy to add patches attribute to the let binding instead of passing it to the derivation. --- pkgs/tools/misc/sharedown/default.nix | 71 +++++++++++++-------------- 1 file changed, 35 insertions(+), 36 deletions(-) diff --git a/pkgs/tools/misc/sharedown/default.nix b/pkgs/tools/misc/sharedown/default.nix index fed2a826459a..0dd4c230566c 100644 --- a/pkgs/tools/misc/sharedown/default.nix +++ b/pkgs/tools/misc/sharedown/default.nix @@ -11,12 +11,7 @@ , chromium }: -let - binPath = lib.makeBinPath ([ - ffmpeg - yt-dlp - ]); - +stdenvNoCC.mkDerivation rec { pname = "Sharedown"; version = "2.0.0"; @@ -27,22 +22,6 @@ let sha256 = "sha256-Z6OsZvVzk//qEkl4ciNz4cQRqC2GFg0qYgmliAyz6fo="; }; - modules = yarn2nix-moretea.mkYarnModules { - name = "${pname}-modules-${version}"; - inherit pname version; - - yarnFlags = yarn2nix-moretea.defaultYarnFlags ++ [ - "--production" - ]; - - packageJSON = "${src}/package.json"; - yarnLock = ./yarn.lock; - yarnNix = ./yarndeps.nix; - }; -in -stdenvNoCC.mkDerivation rec { - inherit pname version src; - nativeBuildInputs = [ copyDesktopItems makeWrapper @@ -61,25 +40,45 @@ stdenvNoCC.mkDerivation rec { dontBuild = true; - installPhase = '' - runHook preInstall + installPhase = + let + binPath = lib.makeBinPath ([ + ffmpeg + yt-dlp + ]); - mkdir -p "$out/bin" "$out/share/Sharedown" "$out/share/applications" "$out/share/icons/hicolor/512x512/apps" + modules = yarn2nix-moretea.mkYarnModules { + name = "${pname}-modules-${version}"; + inherit pname version; - # Electron app - cp -r *.js *.json sharedownlogo.png sharedown "${modules}/node_modules" "$out/share/Sharedown" + yarnFlags = yarn2nix-moretea.defaultYarnFlags ++ [ + "--production" + ]; - # Desktop Launcher - cp build/icon.png "$out/share/icons/hicolor/512x512/apps/Sharedown.png" + packageJSON = "${src}/package.json"; + yarnLock = ./yarn.lock; + yarnNix = ./yarndeps.nix; + }; + in + '' + runHook preInstall - # Install electron wrapper script - makeWrapper "${electron}/bin/electron" "$out/bin/Sharedown" \ - --add-flags "$out/share/Sharedown" \ - --prefix PATH : "${binPath}" \ - --set PUPPETEER_EXECUTABLE_PATH "${chromium}/bin/chromium" + mkdir -p "$out/bin" "$out/share/Sharedown" "$out/share/applications" "$out/share/icons/hicolor/512x512/apps" - runHook postInstall - ''; + # Electron app + cp -r *.js *.json sharedownlogo.png sharedown "${modules}/node_modules" "$out/share/Sharedown" + + # Desktop Launcher + cp build/icon.png "$out/share/icons/hicolor/512x512/apps/Sharedown.png" + + # Install electron wrapper script + makeWrapper "${electron}/bin/electron" "$out/bin/Sharedown" \ + --add-flags "$out/share/Sharedown" \ + --prefix PATH : "${binPath}" \ + --set PUPPETEER_EXECUTABLE_PATH "${chromium}/bin/chromium" + + runHook postInstall + ''; passthru.updateScript = ./update.sh;