33 lines
1.0 KiB
Markdown
33 lines
1.0 KiB
Markdown
|
|
||
|
|
||
|
# 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
|
||
|
|
||
|
```nix
|
||
|
_: { 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)
|
||
|
```
|