UefiToolsPkg
This is a Tiano Core (edk2) package with various goodies. The goal was to make the UEFI environment much more useful to system hackers. It may be a reduced environment, but there's no need for it to remain a crippled one. People make the analogy of UEFI being the 21st century equivalent of DOS, yet DOS was a vastly more useful environment than UEFI is today.
Hopefully, one day this will grow into a veritable distribution of software to be productive even without a "real OS" around.
- Useful utilities for developers and admins.
- Ported UNIX tools.
- Useful libraries for developers.
- Drivers for UEFI.
- Development tools for Windows/Linux.
Other tools around the Web.
Building
Assuming you have EDK2 (http://www.tianocore.org/edk2/) all configured and capable of producing builds for your target architecture:
$ git clone --recursive https://github.com/andreiw/UefiToolsPkg.git
$ build -p UefiToolsPkg/UefiToolsPkg.dsc
To override architecture and/or toolchain:
$ build -p UefiToolsPkg/UefiToolsPkg.dsc -a PPC64
$ build -p UefiToolsPkg/UefiToolsPkg.dsc -a X64 -t GCC49
Utilities
Name | Description | Notes |
---|---|---|
FdtDump | dump system device tree to storage | README.md |
AcpiDump | dump system ACPI tables to storage | README.md |
AcpiLoader | load system ACPI tables from storage | README.md |
ShellPlatVars | set UEFI Shell variables based on platform configuration | README.md |
ShellErrVars | set UEFI Shell variables to look up EFI RETURN_STATUS values | README.md |
ShellMapVar | set %mapvar% with own current device mapping |
README.md |
MemResv | create new memory map entries | README.md |
RangeIsMapped | validates ranges in the memory map | README.md |
GopTool | check and manipulate EFI_GRAPHICS_OUTPUT_PROTOCOL instances | README.md |
SetCon | check and manipulate console device variables | README.md |
PciRom | list and save PCI ROM images | README.md |
tinycc | port of TinyCC to UEFI | README.md |
UNIX Tools
Name | Description | Notes |
---|---|---|
cat | Port of NetBSD cat | README.md |
dd | Port of NetBSD dd | README.md |
grep | Port of NetBSD grep | README.md |
ls | Port of NetBSD directory lister | README.md |
stat | Port of NetBSD stat | README.md |
Libraries
Name | Description | Notes |
---|---|---|
UtilsLib | consumed by the above utilities | None |
SoftFloatLib | port of SoftFloat-3d to UEFI | README.md |
FTSLib | port of FTS(3) routines, file hierarchy traversal | README.md |
RegexLib | port of REGEX(3) IEEE Std 1003.2-1992 regular expression routines | README.md |
StdExtLib | fixes and functionality on top of StdLib | README.md |
Drivers
What | Description | Platform | Notes |
---|---|---|---|
QemuVideoDxe | GOP driver for QEMU | OVMF, ArmVirtPkg | README.md |
Development Tools
Name | Description | Notes |
---|---|---|
gdb_uefi.py | load TianoCore symbols in gdb | README.md |
Contact Info
Andrei Warkentin (andrey.warkentin@gmail.com).