Collection of image builders [maintainer=@Lassulus]
Go to file
Lassulus 7894d6e184
Merge pull request #24 from mrVanDalo/feature/cores
nix-build: add --cores parameter
2019-03-23 17:50:16 +09:00
formats aarch64: add sd-aarch64-linux format 2019-03-22 22:44:18 +01:00
.gitignore Cleanup (#17) 2019-01-31 23:06:29 +01:00
.travis.yml Cleanup (#17) 2019-01-31 23:06:29 +01:00
configuration.nix Cleanup (#17) 2019-01-31 23:06:29 +01:00
default.nix Cleanup (#17) 2019-01-31 23:06:29 +01:00
LICENSE add license 2019-01-17 17:38:32 +01:00
Makefile Cleanup (#17) 2019-01-31 23:06:29 +01:00
nixos-generate nix-build: add --cores parameter 2019-03-22 22:57:14 +01:00
nixos-generate.nix Cleanup (#17) 2019-01-31 23:06:29 +01:00
README.md aarch64: add sd-aarch64-linux format 2019-03-22 22:44:18 +01:00

nixos-generators - one config, multiple formats

The nixos-generators project allows to take the same NixOS configuration, and generate outputs for different target formats.

Just put your stuff into the configuration.nix and then call one of the image builders.

for example:

./nixos-generate -f iso

or

./nixos-generate -f iso -c /etc/nixos/configuration.nix

it echoes the path to a iso image, which you then can flash onto an usb-stick or mount & boot in a virtual machine.

Installation

nixos-generators can be installed from source into the user profile like this:

$ nix-env -f https://github.com/nix-community/nixos-generators/archive/master.tar.gz -i

Supported formats

format description
azure Microsoft azure image
gce Google Compute Image
install-iso Installer ISO
iso ISO
kexec kexec tarball (extract to / and run /kexec_nixos)
kexec-bundle same as before, but it's just an executable
openstack qcow2 image for openstack
qcow2 qcow2 image
raw raw image
virtualbox virtualbox VM
vm only used as a qemu-kvm runner
vm-nogui same as before, but without a GUI
sd-aarch64 create sd card for aarch64. For cross compiling use --system aarch64-linux and read the cross-compile section.

Usage

Run ./nixos-generate --help for detailed usage information

Cross Compiling

To cross compile nixos images for other system you have to configure boot.binfmtMiscRegistrations on your host system.

For more details about this have a look at : clevers qemu-user.

Once you've run nixos-rebuild with theses options, you can use the --system option to create images for other architectures.

License

This project is licensed under the terms of the MIT license.