https://github.com/qemus/fiano
Tool for modifying UEFI firmware
https://github.com/qemus/fiano
uefi uefi-development uefi-firmware uefi-utilities uefi-utils
Last synced: 6 days ago
JSON representation
Tool for modifying UEFI firmware
- Host: GitHub
- URL: https://github.com/qemus/fiano
- Owner: qemus
- License: mit
- Created: 2025-09-29T00:26:51.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2026-05-12T11:48:55.000Z (about 1 month ago)
- Last Synced: 2026-05-12T13:34:16.311Z (about 1 month ago)
- Topics: uefi, uefi-development, uefi-firmware, uefi-utilities, uefi-utils
- Language: Dockerfile
- Homepage:
- Size: 67.4 KB
- Stars: 2
- Watchers: 0
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: readme.md
- License: license.md
Awesome Lists containing this project
README
Fiano
[![Build]][build_url]
[![Version]][release_url]
[![Size]][release_url]
Prebuilt multi-platform binaries of [Fiano](https://github.com/linuxboot/fiano), a tool for modifying UEFI firmware.
## UTK: Generic UEFI tool kit meant to handle rom images
Example usage:
```
# For a comprehensive list of commands
utk -h
# Display the image in a compact table form:
utk winterfell.rom table
# Summarize everything in JSON:
utk winterfell.rom json
# List information about a single file in JSON (using regex):
utk winterfell.rom find Shell
# Dump an EFI file to an ffs
utk winterfell.rom dump DxeCore dxecore.ffs
# Insert an EFI file into an FV near another Dxe
utk winterfell.rom insert_before Shell dxecore.ffs save inserted.rom
utk winterfell.rom insert_after Shell dxecore.ffs save inserted.rom
# Insert an EFI file into an FV at the front or the end
# "Shell" is just a means of specifying the FV that contains Shell
utk winterfell.rom insert_front Shell dxecore.ffs save inserted.rom
utk winterfell.rom insert_end Shell dxecore.ffs save inserted.rom
# Remove a file and pad the firmware volume to maintain offsets for the following files
utk winterfell.rom remove_pad Shell save removed.rom
# Remove two files by their GUID without padding and replace shell with Linux:
utk winterfell.rom \
remove 12345678-9abc-def0-1234-567890abcdef \
remove 23830293-3029-3823-0922-328328330939 \
replace_pe32 Shell linux.efi \
save winterfell2.rom
# Extract everything into a directory:
utk winterfell.rom extract winterfell/
# Re-assemble the directory into an image:
utk winterfell/ save winterfell2.rom
```
## Stars 🌟
[](https://starchart.cc/qemus/fiano)
[build_url]: https://github.com/qemus/fiano/
[release_url]: https://github.com/qemus/fiano/releases
[Build]: https://github.com/qemus/fiano/actions/workflows/build.yml/badge.svg
[Size]: https://img.shields.io/badge/size-4.14_MB-steelblue?style=flat&color=066da5
[Version]: https://img.shields.io/github/v/tag/qemus/fiano?label=version&sort=semver&color=066da5