Installing Determinate
Determinate is an all-in-one Nix (opens in a new tab) toolchain that includes:
- Determinate Systems (opens in a new tab)' validated Nix (opens in a new tab), configured to be used with FlakeHub (opens in a new tab) and FlakeHub Cache (opens in a new tab)
- Determinate Nixd, a daemon that makes your experience of installing and using Nix (opens in a new tab) dramatically more smooth
You can install it in a variety of platform-specific ways.
Using the command line on macOS or Linux
curl --proto '=https' --tlsv1.2 -sSf -L \
https://install.determinate.systems/nix | sh -s -- install --determinate
On macOS with Determinate.pkg
Download and run the latest Determinate package from install.determinate.systems (opens in a new tab).
The Determinate package is fully signed and notarized. Re-running the installer is safe and upgrades Determinate in place.
Deploying to a fleet with Mobile Device Management (opens in a new tab) (MDM)? See Deploy Determinate with MDM.
NixOS
NixOS (opens in a new tab) users can upgrade to Determinate with the Determinate flake.
We recommend not using a follows directive for Nixpkgs (inputs.nixpkgs.follows = "nixpkgs"
) in conjunction with the Determinate flake, as it leads to cache misses for artifacts otherwise available from FlakeHub Cache (opens in a new tab).
{
inputs.determinate.url = "https://flakehub.com/f/DeterminateSystems/determinate/0.1";
inputs.nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.2405.0";
outputs = { determinate, nixpkgs, ... }: {
nixosConfigurations.my-workstation = nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; # Or another Linux system type
modules = [
# Load the Determinate module
determinate.nixosModules.default
];
};
};
}
Then rebuild your system:
nixos-rebuild switch --flake /path/to/configuration