about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/tools/electron/version.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/tools/electron/version.patch')
-rw-r--r--nixpkgs/pkgs/development/tools/electron/version.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/electron/version.patch b/nixpkgs/pkgs/development/tools/electron/version.patch
new file mode 100644
index 000000000000..6edb64a23eaf
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/electron/version.patch
@@ -0,0 +1,42 @@
+diff --git a/electron/BUILD.gn b/electron/BUILD.gn
+index c905891eb8..f2cf11fe88 100644
+--- a/electron/BUILD.gn
++++ b/electron/BUILD.gn
+@@ -111,8 +111,6 @@ electron_version = exec_script("script/print-version.py",
+                                [],
+                                "trim string",
+                                [
+-                                 ".git/packed-refs",
+-                                 ".git/HEAD",
+                                  "script/lib/get-version.js",
+                                ])
+ 
+diff --git a/electron/script/lib/get-version.js b/electron/script/lib/get-version.js
+index 45a120482b..ddaf8ab60e 100644
+--- a/electron/script/lib/get-version.js
++++ b/electron/script/lib/get-version.js
+@@ -1,22 +1 @@
+-const { spawnSync } = require('node:child_process');
+-const path = require('node:path');
+-
+-module.exports.getElectronVersion = () => {
+-  // Find the nearest tag to the current HEAD
+-  // This is equivilant to our old logic of "use a value in package.json" for the following reasons
+-  //
+-  // 1. Whenever we updated the package.json we ALSO pushed a tag with the same version
+-  // 2. Whenever we _reverted_ a bump all we actually did was push a commit that deleted the tag and changed the version number back
+-  //
+-  // The only difference in the "git describe" technique is that technically a commit can "change" it's version
+-  // number if a tag is created / removed retroactively.  i.e. the first time a commit is pushed it will be 1.2.3
+-  // and after the tag is made rebuilding the same commit will result in it being 1.2.4
+-  const output = spawnSync('git', ['describe', '--tags', '--abbrev=0'], {
+-    cwd: path.resolve(__dirname, '..', '..')
+-  });
+-  if (output.status !== 0) {
+-    console.error(output.stderr);
+-    throw new Error('Failed to get current electron version');
+-  }
+-  return output.stdout.toString().trim().replace(/^v/g, '');
+-};
++module.exports.getElectronVersion = () => "@version@";
+