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.
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
.
See the GitHub documentation to configure the GitHub Packages NPM Registry.
Install from the command line:
npm install @captn3m0/electron-fingerprints
Install via package.json:
"@captn3m0/electron-fingerprints": "*"
This repository only contains the raw data files, see which-electron for a usable package. The lookup.json
files are published as the @captn3m0/electron-fingerprints
package on the GitHub NPM Package Registry as well as on GitHub Releases. 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. If you'd like to use this in a project that doesn't use NPM, you can use this repository as a git submodule and track the main
branch for updates.
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).
Releases are versioned by the date on which they were made (as per UTC).
Released under WTFPL.