From 7130bcec7e26c68216c0f30624c1710e7e5b922d Mon Sep 17 00:00:00 2001 From: TomaSajt <62384384+TomaSajt@users.noreply.github.com> Date: Mon, 28 Apr 2025 19:38:23 +0200 Subject: [PATCH 1/2] electron-fiddle: 0.36.6 -> 0.36.6-unstable-2025-07-17, bump electron (cherry picked from commit 1e3e107fb7df82a6c00e9cb929fdf1cfc1853af6) --- pkgs/by-name/el/electron-fiddle/package.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/el/electron-fiddle/package.nix b/pkgs/by-name/el/electron-fiddle/package.nix index 0848072bc5eb9..43e2699a7c6dd 100644 --- a/pkgs/by-name/el/electron-fiddle/package.nix +++ b/pkgs/by-name/el/electron-fiddle/package.nix @@ -1,13 +1,13 @@ { buildFHSEnv, - electron_33, + electron_36, fetchFromGitHub, fetchYarnDeps, fetchurl, git, lib, makeDesktopItem, - nodejs_20, + nodejs, stdenvNoCC, util-linux, yarnBuildHook, @@ -17,17 +17,17 @@ let pname = "electron-fiddle"; - version = "0.36.5"; - electron = electron_33; - nodejs = nodejs_20; + version = "0.36.5-unstable-2025-07-17"; src = fetchFromGitHub { owner = "electron"; repo = "fiddle"; - tag = "v${version}"; - hash = "sha256-Fo7rXnufJ26WijnplWswdeCGJitkvTDboOggUfrz1Hw="; + rev = "0f3cd3007a336562a3c49ce95469022e6a729121"; # a revision that uses electron_36 instead of electron_33 + hash = "sha256-1q8bDpEPrQNbngrGZj6/AQFFo06ED6uJ4Z/XVg6KNXw="; }; + electron = electron_36; + # As of https://github.com/electron/fiddle/pull/1316 this is fetched # from the network and has no stable hash. Grab an old version from # the repository. @@ -42,7 +42,7 @@ let offlineCache = fetchYarnDeps { yarnLock = "${src}/yarn.lock"; - hash = "sha256-eZ/g2cP6M0zWhF14go0sIC+UuzTo9Gl4KsPBGzJU3FQ="; + hash = "sha256-n6rzi4VohVaX+IIE1NITDsxXGyw0Z6Fx1WJb15YT9Sg="; }; nativeBuildInputs = [ From 69a6e5e50d600d5be1150e1f5980e61825aeff91 Mon Sep 17 00:00:00 2001 From: TomaSajt <62384384+TomaSajt@users.noreply.github.com> Date: Sun, 3 Aug 2025 19:44:38 +0200 Subject: [PATCH 2/2] electron-fiddle: 0.36.5-unstable-2025-07-17 -> 0.37.2 (cherry picked from commit 1b33b9cfac81653ba14293675d99fa60b6833098) --- .../dont-use-initial-releases-json.patch | 32 +++++++++++++++++++ pkgs/by-name/el/electron-fiddle/package.nix | 27 ++++++---------- 2 files changed, 41 insertions(+), 18 deletions(-) create mode 100644 pkgs/by-name/el/electron-fiddle/dont-use-initial-releases-json.patch diff --git a/pkgs/by-name/el/electron-fiddle/dont-use-initial-releases-json.patch b/pkgs/by-name/el/electron-fiddle/dont-use-initial-releases-json.patch new file mode 100644 index 0000000000000..fce56ea3ef875 --- /dev/null +++ b/pkgs/by-name/el/electron-fiddle/dont-use-initial-releases-json.patch @@ -0,0 +1,32 @@ +diff --git a/src/main/versions.ts b/src/main/versions.ts +index 501ba1a..0c11ff7 100644 +--- a/src/main/versions.ts ++++ b/src/main/versions.ts +@@ -5,7 +5,6 @@ import { IpcMainInvokeEvent, app } from 'electron'; + import fs from 'fs-extra'; + + import { ipcMainManager } from './ipc'; +-import releases from '../../static/releases.json'; + import { InstallState, Version } from '../interfaces'; + import { IpcEvents } from '../ipc-events'; + +@@ -72,7 +71,6 @@ export async function fetchVersions(): Promise { + + export async function setupVersions() { + knownVersions = await ElectronVersions.create({ +- initialVersions: releases, + paths: { + versionsCache: path.join(app.getPath('userData'), 'releases.json'), + }, +diff --git a/tools/fetch-releases.ts b/tools/fetch-releases.ts +index 744b814..94fd971 100644 +--- a/tools/fetch-releases.ts ++++ b/tools/fetch-releases.ts +@@ -6,6 +6,7 @@ import { ElectronVersions } from '@electron/fiddle-core'; + const file = path.join(__dirname, '..', 'static', 'releases.json'); + + export async function populateReleases() { ++ return; + const elves = await ElectronVersions.create({ ignoreCache: true }); + const releases = elves.versions.map(({ version }) => + elves.getReleaseInfo(version), diff --git a/pkgs/by-name/el/electron-fiddle/package.nix b/pkgs/by-name/el/electron-fiddle/package.nix index 43e2699a7c6dd..1670b582f8770 100644 --- a/pkgs/by-name/el/electron-fiddle/package.nix +++ b/pkgs/by-name/el/electron-fiddle/package.nix @@ -3,7 +3,6 @@ electron_36, fetchFromGitHub, fetchYarnDeps, - fetchurl, git, lib, makeDesktopItem, @@ -17,32 +16,26 @@ let pname = "electron-fiddle"; - version = "0.36.5-unstable-2025-07-17"; + version = "0.37.2"; src = fetchFromGitHub { owner = "electron"; repo = "fiddle"; - rev = "0f3cd3007a336562a3c49ce95469022e6a729121"; # a revision that uses electron_36 instead of electron_33 - hash = "sha256-1q8bDpEPrQNbngrGZj6/AQFFo06ED6uJ4Z/XVg6KNXw="; + tag = "v${version}"; + hash = "sha256-e9PLgkqWBNLBw7uuNpPluOQ6+aGLYQLyTzcLa+LMOzs="; }; electron = electron_36; - # As of https://github.com/electron/fiddle/pull/1316 this is fetched - # from the network and has no stable hash. Grab an old version from - # the repository. - releasesJson = fetchurl { - url = "https://raw.githubusercontent.com/electron/fiddle/v0.32.4~18/static/releases.json"; - hash = "sha256-1sxd3eJ6/WjXS6XQbrgKUTNUmrhuc1dAvy+VAivGErg="; - }; - unwrapped = stdenvNoCC.mkDerivation { pname = "${pname}-unwrapped"; inherit version src; + patches = [ ./dont-use-initial-releases-json.patch ]; + offlineCache = fetchYarnDeps { - yarnLock = "${src}/yarn.lock"; - hash = "sha256-n6rzi4VohVaX+IIE1NITDsxXGyw0Z6Fx1WJb15YT9Sg="; + inherit src; + hash = "sha256-mB8WG6tX204u6AJ8qLbWrA+pSN3oDihHqj0t3bWcuAI="; }; nativeBuildInputs = [ @@ -67,9 +60,7 @@ let # force @electron/packager to use our electron instead of downloading it, even if it is a different version substituteInPlace node_modules/@electron/packager/dist/packager.js \ - --replace-fail 'await this.getElectronZipPath(downloadOpts)' '"electron.zip"' - - ln -s ${releasesJson} static/releases.json + --replace-fail 'await this.getElectronZipPath(downloadOpts)' '"electron.zip"' ''; yarnBuildScript = "package"; @@ -105,7 +96,7 @@ let in buildFHSEnv { inherit pname version; - runScript = "${electron}/bin/electron ${unwrapped}/lib/electron-fiddle/resources/app.asar"; + runScript = "${lib.getExe electron} ${unwrapped}/lib/electron-fiddle/resources/app.asar"; extraInstallCommands = '' mkdir -p "$out/share/icons/hicolor/scalable/apps"