Automic VaultAutomic Vault

brew

Install fwup with Homebrew, apk, MacPorts, Nix, scoop

Configurable embedded Linux firmware update creator and runner. Version 1.16.0 via Homebrew; verified 2026-05-01.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install fwup

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install fwup

MacPorts ports tree · sysutils/fwup/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add fwup

Alpine Linux edge package indexes · fwup · source: dl-cdn.alpinelinux.org

Nixverified · 92%
nix profile install nixpkgs#fwup

nixpkgs package indexes · pkgs/by-name/fw/fwup/package.nix · source: api.github.com

Windows

Scoopverified · 92%
scoop install extras/fwup

Scoop official bucket manifest trees · bucket/fwup.json · source: api.github.com

overview

Package summary

Configurable embedded Linux firmware update creator and runner

Commands and aliases

  • fwup
  • img2fwup

history

Project history and usage

fwup is an embedded Linux firmware update creator and runner. It packages update logic and payloads into standard ZIP-based `.fw` archives and applies them using configurable tasks such as full image writes, A/B partition swaps, recovery updates, and trial update or failback flows.

Project history

The public repository was created in June 2014. GitHub release metadata shows 0.x releases in 2015, and the 1.x line continued through the mid-2020s.

The README describes a design focused on minimal dependencies, streaming archive processing, careful write ordering, verification, and limited scripting so that failure modes on embedded targets are easier to reason about.

Recent changelog entries show continued work on delta updates, encrypted partitions, block cache sizing, U-Boot environment handling, and package dependencies for static builds.

Adoption history

fwup is distributed through release artifacts and several package managers. The README names Homebrew for macOS, Linux packages, Chocolatey for Windows, Alpine, Buildroot, Yocto via meta-fwup, and version-manager support through asdf-fwup and mise.

The README points to the Nerves Project as a better-maintained source of examples, which reflects fwup's practical role in the Nerves embedded Elixir ecosystem and embedded Linux image update workflows.

How it is used

Users create firmware archives with a `fwup.conf` file, apply `.fw` archives to devices or image files, generate signing keys, verify or sign archives, and use `img2fwup` to convert raw images to `.fw` files.

The tool is deliberately not an update distribution service. Upstream documentation expects users to deliver `.fw` files through external media, network streams, Ansible, or other deployment tooling.

Why package nerds care

fwup matters to package maintainers because it packages firmware update policy, payloads, signing, partition manipulation, metadata, progress reporting, and failure behavior into one portable artifact format.

It is also a useful counterexample to application-level update tools: its domain is block devices, boot partitions, sparse writes, and embedded recovery flows, where package-manager semantics meet physical storage constraints.

Timeline

  • 2014: Public GitHub repository created.
  • 2015: Early 0.x releases published.
  • 2016: README notes Buildroot support included upstream since Buildroot 2016.05.
  • 2024: 1.12.0 adds features such as extended MBR partitions and Raspberry Pi tryboot support.
  • 2025: 1.13.x and 1.14.x improve delta updates and metadata handling.
  • 2026: 1.15.x and 1.16.0 improve encrypted update performance and block-cache sizing.

Related projects

  • asdf-fwup and mise support manage fwup versions with `.tool-versions` files.
  • meta-fwup supports Yocto integration, and Buildroot includes upstream support.
  • The Nerves Project and nerves_system_br are related embedded Linux users and examples.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 2 runtime dependencies.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
fwupcliglobal executable
img2fwupcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version1.16.0
manager updated2026-05-01
local dataok
upstreamnot checked
latest detectednot detected

https://github.com/fwup-home/fwup

install metadata

Package metadata

Package keybrew:fwup
Version1.16.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/fwup
Homepagehttps://github.com/fwup-home/fwup
Repositoryhttps://github.com/fwup-home/fwup
Upstream docshttps://github.com/fwup-home/fwup#readme
LicenseApache-2.0
Source archivehttps://github.com/fwup-home/fwup/releases/download/v1.16.0/fwup-1.16.0.tar.gz
Last updated2026-05-01T15:32:25Z
Pulseupdated
Dependenciesconfuse, libarchive
Build dependenciespkgconf
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namefwup
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

fwup

nix profile install nixpkgs#fwup
  • normalized package name match
  • Matched by: Fwup
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/fw/fwup/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
apk95%

fwup 1.15.0-r0

Configurable embedded Linux firmware update creator and runner

https://github.com/fwup-home/fwup

sudo apk add fwup
  • License: Apache-2.0
  • Architecture: x86_64
  • Source Package: fwup
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Fwup
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: fwup from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

fwup-bash-completion 1.15.0-r0

Bash completions for fwup

https://github.com/fwup-home/fwup

sudo apk add fwup-bash-completion
  • License: Apache-2.0
  • Architecture: x86_64
  • Source Package: fwup
  • normalized package name match
  • Matched by: Fwup
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: fwup-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

fwup-doc 1.15.0-r0

Configurable embedded Linux firmware update creator and runner (documentation)

https://github.com/fwup-home/fwup

sudo apk add fwup-doc
  • License: Apache-2.0
  • Architecture: x86_64
  • Source Package: fwup
  • normalized package name match
  • Matched by: Fwup
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: fwup-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
MacPorts95%

fwup

sudo port install fwup
  • normalized package name match
  • Matched by: Fwup
MacPorts ports tree · api.github.com · MacPorts ports tree: sysutils/fwup/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
Scoop95%

extras/fwup

scoop install extras/fwup
  • normalized package name match
  • Matched by: Fwup
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/fwup.json from https://api.github.com/repos/ScoopInstaller/Extras/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment