Generates fingerprints for electron version detection by downloading electron releases and generating checksums of the files contained in each release.
Go to file
github-actions[bot] c71c3d62ad 2022.4.29 2022-04-29 19:03:26 +00:00
.github Force-trigger build again 2022-04-30 00:32:11 +05:30
hashes Update Electron Fingerprints 2022-04-29 19:03:24 +00:00
lookup Update Electron Fingerprints 2022-04-29 19:03:24 +00:00
.editorconfig new releases 2022-03-05 14:02:50 +05:30
.gitignore New release 2022-01-13 12:29:02 +05:30
.npmignore ignore Makefile for npm package 2022-02-21 21:02:52 +05:30
HACKING.md Automatically publish to self NPM repository 2022-03-31 13:19:08 +05:30
LICENSE Initial commit 💥 2021-07-15 23:50:42 +05:30
README.md Fix auto-publishing 2022-04-16 18:37:13 +05:30
index.js Move lookup tables to separate directory 2021-07-18 17:18:41 +05:30
package-lock.json 2022.4.29 2022-04-29 19:03:26 +00:00
package.json 2022.4.29 2022-04-29 19:03:26 +00:00
test.js [tests] fix tests 2022-03-31 13:19:08 +05:30
update.php New Electron releases 2022-03-25 12:19:02 +05:30

README.md

electron-fingerprints Zero Dependencies

Generates fingerprints for electron version detection by downloading electron releases and generating checksums (sha1 hashes) of the files contained in each release. Published as a lookup table on the GitHub NPM Registry.

why

You can use this to guess which electron version is being used in a given application. A given electron version is (almost always) tightly bound to a node and chrome release as well, so you get a better sense of what the application is running.

Written as the backend for which-electon.

install

See the GitHub documentation to configure the GitHub Packages NPM Registry.

Install from the command line:

npm install @captn3m0/electron-fingerprints@2022.3.31

Install via package.json:

"@captn3m0/electron-fingerprints": "2022.3.31"

usage

This is just the raw data files, see which-electron for a usable package. The lookup.json file is published as the @captn3m0/electron-fingerprints package on the GitHub NPM Package Registry. Programmatic usage is still possible:

const lookup = require("@captn3m0/electron-fingerprints");
// baf786083f482c1f035e50e105b5f7475af1e00b = sha1(ffmpeg.dll)
lookup["win32-x64"]["baf786083f482c1f035e50e105b5f7475af1e00b"];
// ["v1.4.3", "v1.4.4", "v1.4.5"]

You can sort or filter the returned versions if needed. If you'd like to access the raw data, see HACKING.md for a schema description.

supported releases

All Stable electron releases for the following architectures are fingerprinted:

  • linux-x64
  • linux-arm64
  • darwin-x64 (Mac OS)
  • win32-x64 (Windows)
  • win32-arm64 (Windows)
  • darwin-arm64 (Apple Silicon)

A list of release fingerprints is under the hashes directory. Releases made when Electron was still called atom-shell are not supported (Before April 2015).

versioning

Releases are versioned by YYYY.MM.DD format.

license

Released under WTFPL.