All Projects → nix-community → Nixos Generators

nix-community / Nixos Generators

Licence: mit
Collection of image builders [[email protected]]

Projects that are alternatives of or similar to Nixos Generators

django-nixos
NixOS/NixOps configuration for Django
Stars: ✭ 21 (-94.08%)
Mutual labels:  nix, nixos
dotnix
Shackled within an elaborate prison of my own design.
Stars: ✭ 35 (-90.14%)
Mutual labels:  nix, nixos
microvm.nix
NixOS MicroVMs
Stars: ✭ 136 (-61.69%)
Mutual labels:  nix, nixos
nixcrates
DEPRECATED reads rust-lang/crates.io-index and outputs nix expressions into fractalide/nix-crates-index
Stars: ✭ 14 (-96.06%)
Mutual labels:  nix, nixos
Cachix
Command line client for Nix binary cache hosting:
Stars: ✭ 322 (-9.3%)
Mutual labels:  nixos, nix
nix-new-rails-app
Initialize Rails applications using Nix and development environments (nix-shell)
Stars: ✭ 27 (-92.39%)
Mutual labels:  nix, nixos
dotfiles
My NixOS dotfiles
Stars: ✭ 21 (-94.08%)
Mutual labels:  nix, nixos
dotfiles
Dotfiles for my NixOS system based on Dracula theme
Stars: ✭ 39 (-89.01%)
Mutual labels:  nix, nixos
Morph
NixOS deployment tool
Stars: ✭ 303 (-14.65%)
Mutual labels:  nixos, nix
dconf2nix
🐾 Convert Dconf files (e.g. Gnome Shell) to Nix, as expected by Home Manager
Stars: ✭ 51 (-85.63%)
Mutual labels:  nix, nixos
nixos-on-arm
Cross Compiling NixOS to ARM as a replacement for Yocto
Stars: ✭ 129 (-63.66%)
Mutual labels:  nix, nixos
Nix.dev
An opinionated guide for developers wanting to get things done with Nix.
Stars: ✭ 300 (-15.49%)
Mutual labels:  nixos, nix
nixos-config
My NixOS configuration
Stars: ✭ 23 (-93.52%)
Mutual labels:  nix, nixos
nix-bash-completions
Bash completion for the Nix command line tools
Stars: ✭ 39 (-89.01%)
Mutual labels:  nix, nixos
high-quality-nix-content
GitHub repository containing highest quality Nix/NixOS content
Stars: ✭ 88 (-75.21%)
Mutual labels:  nix, nixos
nixexprs
nix stuff
Stars: ✭ 13 (-96.34%)
Mutual labels:  nix, nixos
nix-config
NixOS configuration (also on WSL)
Stars: ✭ 51 (-85.63%)
Mutual labels:  nix, nixos
dotfiles
No place like ~. Nix. All. The. Things.
Stars: ✭ 48 (-86.48%)
Mutual labels:  nix, nixos
system
Declarative NixOS system configuration for all my machines
Stars: ✭ 14 (-96.06%)
Mutual labels:  nix, nixos
tix
[WIP] A type system for nix
Stars: ✭ 59 (-83.38%)
Mutual labels:  nix, nixos

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
amazon Amazon EC2 image
azure Microsoft azure image (Generation 1 / VHD)
cloudstack qcow2 image for cloudstack
do Digital Ocean image
gce Google Compute image
hyperv Hyper-V Image (Generation 2 / VHDX)
install-iso Installer ISO
install-iso-hyperv Installer ISO with enabled hyper-v support
iso ISO
kexec kexec tarball (extract to / and run /kexec_nixos)
kexec-bundle same as before, but it's just an executable
lxc create a tarball which is importable as an lxc container, use together with lxc-metadata
lxc-metadata the necessary metadata for the lxc image to start, usage: lxc image import $(nixos-generate -f lxc-metadata) $(nixos-generate -f lxc)
openstack qcow2 image for openstack
qcow qcow2 image
raw raw image with bios/mbr
raw-efi raw image with efi support
sd-aarch64 Like sd-aarch64-installer, but does not use default installer image config.
sd-aarch64-installer create an installer sd card for aarch64. For cross compiling use --system aarch64-linux and read the cross-compile section.
vagrant-virtualbox VirtualBox image for Vagrant
virtualbox virtualbox VM
vm only used as a qemu-kvm runner
vm-bootloader same as vm, but uses a real bootloader instead of netbooting
vm-nogui same as vm, but without a GUI
vmware VMWare image (VMDK)

Usage

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

select a specific nixpkgs channel

adds ability to select a specific channel version.

example:

nix-shell --command './nixos-generate -f iso -I nixpkgs=channel:nixos-19.09'

Using a particular nixpkgs

To use features found in a different nixpkgs (for instance the Digital Ocean image was recently merged in nixpkgs):

NIX_PATH=nixpkgs=../nixpkgs nixos-generate -f do

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 MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].