agesafetch

Crates.ioagesafetch
lib.rsagesafetch
version2.0.1
created_at2025-02-15 19:33:34.049326+00
updated_at2025-09-06 18:05:15.088872+00
descriptionA tool for obtaining your firmware's embedded AGESA version on Linux.
homepage
repositoryhttps://gitlab.com/BVollmerhaus/agesafetch
max_upload_size
id1557043
size32,419
Benedikt Vollmerhaus (BVollmerhaus)

documentation

README

agesafetch

crates.io Version crates.io Downloads License: MIT REUSE Status

A tool for obtaining your firmware's embedded AGESA version on Linux.

Installation

AUR Version PyPI Version

Binaries

Pre-compiled and signed binaries are provided with all GitLab releases.

From Source

cargo install agesafetch

Note

By default, Cargo installs binaries in ~/.cargo/bin, so that directory must be in $PATH for agesafetch to be found. However, not all methods of privilege escalation preserve the $PATH variable, e.g. sudo with a secure_path set.

When in doubt, refer to the complete path: sudo ~/.cargo/bin/agesafetch

From PyPI

sudo pipx install --global agesafetch
# or, to run it directly without a persistent installation:
sudo pipx run agesafetch

Python Bindings

On top of the agesafetch command, the Python package also provides basic bindings for the AGESA search that you can invoke from your own code (which then also requires elevated privileges or capabilities):

import agesafetch

version: agesafetch.AGESAVersion | None = agesafetch.find_agesa_version()

Usage

agesafetch [-h]
🔒 The AGESA search requires elevated privileges or suitable capabilities.

Simply run agesafetch to invoke a search for the AGESA version in memory:

$ sudo agesafetch
:: Searching Reserved region #1 (1667 KiB)...
-> Found AGESA version: CezannePI-FP6 1.0.1.1

When run non-interactively, such as in pipes or redirections, agesafetch will automatically suppress all output except for the found version:

$ sudo agesafetch > found_version
$ cat found_version
CezannePI-FP6 1.0.1.1

Testing

agesafetch has been confirmed to work on a broad set of systems, including:

  • Various desktop motherboards:
    • B450, B550, and B650 models
    • X570, X670E, and X870E models
  • Lenovo ThinkPad P14s Gen 1 & 2 AMD
  • An assortment of EPYC-based servers

See Tested Platforms for the complete list. If you tested agesafetch on a new system and would like to add it, get in touch!

Author

Thanks To

License

This project is licensed under the MIT license. See the LICENSE file for more information.

Commit count: 82

cargo fmt