From 5d8c2ed208be0957f23e8205fc7d15de7b4aee69 Mon Sep 17 00:00:00 2001 From: zimbatm Date: Wed, 19 Apr 2017 00:25:42 +0100 Subject: [PATCH] NIXOS_IMPORT option Allow to boot and configure the machine in one go --- README.md | 15 +++++++++++++++ nixos-infect | 1 + 2 files changed, 16 insertions(+) diff --git a/README.md b/README.md index c1b9587..acb5a45 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,21 @@ Potential tweaks: - `/etc/nixos/networking.nix`, networking settings determined at runtime tweak if no ipv6, different number of adapters, etc. +```yaml +#cloud-config +write_files: +- path: /etc/nixos/host.nix + permissions: '0644' + content: | + {pkgs, ...}: + { + environment.systemPackages = with pkgs; [ vim ]; + } +runcmd: + - curl https://raw.githubusercontent.com/elitak/nixos-infect/master/nixos-infect | NIXOS_IMPORT=./host.nix NIX_CHANNEL=nixos-17.03 bash 2>&1 | tee /tmp/infect.log + +``` + Motivation for this script: nixos-assimilate should supplant this script entirely, if it's ever completed. nixos-in-place was quite broken when I tried it, and also took a pretty janky approach that was substantially more diff --git a/nixos-infect b/nixos-infect index 09244f2..b4238cd 100755 --- a/nixos-infect +++ b/nixos-infect @@ -15,6 +15,7 @@ makeConf() { imports = [ ./hardware-configuration.nix ./networking.nix # generated at runtime by nixos-infect + $NIXOS_IMPORT ]; boot.cleanTmpDir = true;