Fiedka is a firmware editor app with back-ends running in WebAssembly.
Binaries are published on GitHub.
The app is based on Electron.
You need to have a Node.js runtime and npm installed.
For the back-end, you need Go version 1.21 at least.
Find them in your respective OS distribution and install them through your
package manager, e.g., yay -S go nodejs npm.
To install the dependencies, run npm install.
For DXE GUIDs, efiXplorer is used as a submodule. Do an initial checkout:
git submodule update --init --checkout
Due to targeting WebAssembly, we need to pass env vars to the go command.
Note: The go.mod file is in src/. Run Go commands in that directory.
To upgrade Fiano, one of Fiedka's core dependencies:
GOOS=js GOARCH=wasm go get github.com/linuxboot/[email protected]If you want to add a new dependency, run:
GOOS=js GOARCH=wasm go get github.com/foo-org/[email protected]Note: Running go get may leave inconsistencies in go.mod.
Afterwards, always run:
go mod tidynpm start
Clone Fiano side by side with Fiedka; i.e., have them like this:
fiano/
fiedka/
Create this symlink: ln -s go.workspace go.work
That will tell Go to use ../fiano instead of github.com/linuxboot/fiano.
Note: go.work is gitignored so that you cannot accidentally commit it.
Add this line to the bottom of src/go.mod:
replace github.com/linuxboot/fiano => ../../fiano
Be sure never to have this in a PR to Fiedka. Prefer the workspace method.
See retrage's nightly OVMF builds.
Download RELEASEX64_OVMF.fd and load it using the file picker.