From 9421fae9fc9b57d973d73023daf173a22797e1ee Mon Sep 17 00:00:00 2001 From: Amadej Kastelic Date: Sun, 14 Sep 2025 09:43:56 +0200 Subject: [PATCH] folo: 0.7.0 -> 1.10.0 https://github.com/RSSNext/Folo/releases/tag/desktop%2Fv1.10.0 (cherry picked from commit 3d49a50e1bd25deea860a6589de5d6f16fce91df) --- pkgs/by-name/fo/folo/package.nix | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/pkgs/by-name/fo/folo/package.nix b/pkgs/by-name/fo/folo/package.nix index 811774cfc4a0..2f8def3e036d 100644 --- a/pkgs/by-name/fo/folo/package.nix +++ b/pkgs/by-name/fo/folo/package.nix @@ -7,7 +7,7 @@ makeDesktopItem, makeWrapper, nodejs, - pnpm_10_29_2, + pnpm_11, fetchPnpmDeps, pnpmConfigHook, stdenv, @@ -15,19 +15,19 @@ stdenv.mkDerivation rec { pname = "folo"; - version = "0.6.3"; + version = "1.10.0"; src = fetchFromGitHub { owner = "RSSNext"; repo = "Folo"; - tag = "v${version}"; - hash = "sha256-huVk5KcsepDwtdWMm9pvn31GE1felbH1pR3mGqlSWRs="; + tag = "desktop/v${version}"; + hash = "sha256-+k09Psuf6Bvjoc9Z1O0u2v44IIsaSQF1QbjJM6cWlUw="; }; nativeBuildInputs = [ nodejs pnpmConfigHook - pnpm_10_29_2 + pnpm_11 makeWrapper imagemagick ]; @@ -37,10 +37,11 @@ stdenv.mkDerivation rec { pname version src + pnpmInstallFlags ; - pnpm = pnpm_10_29_2; + pnpm = pnpm_11; fetcherVersion = 3; - hash = "sha256-EP7bpbJUcKmHm7KMlKc0Fz2u0niQ3jC7YN/9pp7vucE="; + hash = "sha256-dF0nnBBpJaFq6MYCZVMMt4D85EWDv8zsGEbVnyhP0kE="; }; env = { @@ -68,6 +69,16 @@ stdenv.mkDerivation rec { dontCheckForBrokenSymlinks = true; + # Several build scripts import transitive dependencies directly (e.g. + # ast-kit from unplugin-ast). + pnpmInstallFlags = [ "--shamefully-hoist" ]; + + postPatch = '' + # pnpm 11 verifies node_modules before every `pnpm run` which conflicts + # with --shamefully-hoist + echo 'verifyDepsBeforeRun: false' >> pnpm-workspace.yaml + ''; + desktopItem = makeDesktopItem { name = "folo"; desktopName = "Folo"; @@ -87,13 +98,13 @@ stdenv.mkDerivation rec { # Build desktop app. cd apps/desktop - pnpm --offline --no-inline-css build:electron-vite + pnpm run build:electron-vite cd ../.. # Remove dev dependencies. CI=true pnpm --ignore-scripts prune --prod # Clean up broken symlinks left behind by `pnpm prune` - find node_modules/.bin -xtype l -delete + [ -d node_modules/.bin ] && find node_modules/.bin -xtype l -delete runHook postBuild '';