NixOS configuration
Go to file
2015-06-28 14:45:23 +02:00
bin fetchgit: is_up_to_date requires rev to be a sha1 2015-06-28 14:45:23 +02:00
certs initial commit 2015-05-19 23:10:57 +02:00
infest.d rewrite infest-cac-CentOS-7-64bit 2015-06-24 15:01:23 +02:00
lib lib git: s/cd/$host/ 2015-06-19 18:34:50 +02:00
modules common nixpkgs: use types.str 2015-06-28 13:53:42 +02:00
pubkeys pubkeys: add makefu 2015-06-22 22:18:41 +02:00
.gitignore deploy: merge next 2015-05-21 23:52:06 +02:00
cac cac: push* take rsync-target as second arg 2015-06-24 19:10:41 +02:00
deploy deploy: take target as optional argument 2015-06-14 20:57:19 +02:00
infest-cac-CentOS-7-64bit.sh ... and it's not called "new-"nixos-build^_^ 2015-06-24 20:49:39 +02:00
README.md rewrite infest-cac-CentOS-7-64bit 2015-06-24 15:01:23 +02:00

Turn a Cloud at Cost CentOS-7-64bit server into NixOS

  1. Configure the system ($systemname) you'd like to install (see Configuration below).
  2. Create new server instance (either Custom or cloudpro) using "CentOS-7-64bit". Note the servername (something like c731445864-cloudpro-388922936).
  3. cac_login=xxx cac_key=yyy ./infest-cac-CentOS-7-64bit.sh servername:$servername $systename
  4. Enjoy. (ssh root@$systename)

Configuration

Configure your system in modules/$systemname See modules/cd/default.nix as an example.

Notice that modules/$systemname/networking will be autogenerated (but not committed).

secrets/$systemname/nix/foo can be accessed as <secrets/foo> from within the configuration.

You might want secrets/$systemname/rsync/etc/tinc/retiolum/rsa_key.priv.

You might want secrets/$systemname/nix/hashedPasswords.nix, which looks like

_: { users.extraUsers.root.hashedPassword = "XXX"; }

XXX can be generated with e.g.

mkpasswd -m sha-512 -S $(openssl rand -base64 16 | tr -d '+=' | head -c 16)