Advanced installation
This guide is intended for users who’d like to install Determinate on these platforms:
For instructions on installing Determinate on a fleet of machines using Mobile Device Management (MDM), see our dedicated MDM guide.
Install on NixOS
Determinate Systems offers both Amazon Machine Images (AMIs) and ISO images running NixOS with Determinate Nix pre-installed.
If you’re a NixOS user, you can set up Determinate using the nixosModules.default module output from the determinate flake.
Here’s an example NixOS configuration:
{
inputs.determinate.url = "https://flakehub.com/f/DeterminateSystems/determinate/*";
inputs.nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0";
outputs = { determinate, nixpkgs, ... }: {
nixosConfigurations.my-workstation = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
# Load the Determinate module
determinate.nixosModules.default
];
};
};
}If you don’t yet have a NixOS configuration, we recommend creating one using one of Determinate Nix’s flake templates:
nix flake init --template "https://flakehub.com/f/DeterminateSystems/flake-templates/0#nixos"Follow the instructions in the welcome text to get started.
Then pass two extra flags when you run nixos-rebuild for the initial configuration switchover:
sudo nixos-rebuild \
--option extra-substituters https://install.determinate.systems \
--option extra-trusted-public-keys cache.flakehub.com-3:hJuILl5sVK4iKm86JzgdXW12Y2Hwd5G07qKtHTOcDCM= \
--flake ... \
switchThese flags configure Nix to use install.determinate.systems as an additional binary cache for Nix so that you don’t have to build Determinate Nix yourself.
If you’re using a version of Determinate Nix older than version 3.6.0, you can pass --option extra-substituters https://install.determinate.systems to upgrade to v3.6.0 or after without building.
Once you’re on Determinate Nix version 3.6.0 or later, however, you don’t need to configure any extra substituters to upgrade.