-
Notifications
You must be signed in to change notification settings - Fork 32
Nix
FFmpegKitNext uses the Nix package manager to provide pinned build tools and platform-specific packages. It does not require the NixOS operating system.
Nix and NixOS are related but different:
-
Nix is the package manager used by the
nix-*.shwrappers. - NixOS is a Linux operating system built around Nix.
For documented builds, install the Nix package manager on a supported host from nixos.org/download. Use the installer command in the Nix section of that page:
- On Linux with systemd, use the Nix -> Linux -> Multi-user installation command.
- On Linux without systemd or when multi-user installation is not suitable, use the Nix -> Linux -> Single-user installation command.
- On macOS, use the Nix -> macOS -> Multi-user installation command.
Do not use the NixOS ISO downloads, NixOS AMI or NixOS installer sections for FFmpegKitNext builds. NixOS is not needed.
The Docker section on the Nix download page starts a shell from the nixos/nix image. That image is useful for trying Nix itself, but it is not a supported FFmpegKitNext Android build environment. For CI builds, use a supported macOS runner or a conventional Linux runner/container with the Nix package manager installed.
NixOS and NixOS-like Docker images do not provide the same runtime layout as conventional Linux distributions. Generic dynamically linked Linux executables may fail there unless the user maintains their own compatibility setup. This includes tools downloaded by third-party build systems, such as Android Gradle Plugin's AAPT2 binary. The Nix documentation explains this behaviour in How to run non-Nix executables.
For the current list of supported build hosts, see Host Support.
Windows builds do not use Nix. Use the MSYS2 / MinGW-w64 setup described in MinGW Toolchain.
Copyright (c) 2026 FFmpegKitNext
- Status
- Versions
- Changelog
- Project Layout
- Using
- Building
- External Libraries
- Patents
- License