Compare commits
2 Commits
feat/stars
...
bead/nixos
| Author | SHA1 | Date | |
|---|---|---|---|
| 3b10b2f7f2 | |||
| 009b84656f |
@@ -170,6 +170,7 @@ This document outlines the plan to migrate the john-endesktop server from Arch L
|
|||||||
```bash
|
```bash
|
||||||
blkid /dev/nvme0n1p5
|
blkid /dev/nvme0n1p5
|
||||||
# Note the UUID for updating hardware-configuration.nix
|
# Note the UUID for updating hardware-configuration.nix
|
||||||
|
/dev/nvme0n1p5: LABEL="nixos" UUID="5f4ad025-bfab-4aed-a933-6638348059e5" UUID_SUB="4734d820-7b8a-4b7f-853a-026021c1d204" BLOCK_SIZE="4096" TYPE="btrfs" PARTLABEL="data" PARTUUID="9ea025df-cdb7-48fd-b5d4-37cd5d8588eb"
|
||||||
```
|
```
|
||||||
|
|
||||||
8. **Copy your NixOS configuration to the server**
|
8. **Copy your NixOS configuration to the server**
|
||||||
@@ -388,11 +389,11 @@ After successful migration and 24-48 hours of stable operation:
|
|||||||
|
|
||||||
Pre-migration:
|
Pre-migration:
|
||||||
- [x] nvme0n1p5 removal from media pool complete
|
- [x] nvme0n1p5 removal from media pool complete
|
||||||
- [ ] Recent backup verified (< 24 hours)
|
- [x] Recent backup verified (< 24 hours)
|
||||||
- [ ] Maintenance window scheduled
|
- [x] Maintenance window scheduled
|
||||||
- [ ] NixOS ISO downloaded
|
- [x] NixOS ISO downloaded
|
||||||
- [ ] Bootable USB created
|
- [x] Bootable USB created
|
||||||
- [ ] NixOS config builds successfully
|
- [x] NixOS config builds successfully
|
||||||
|
|
||||||
During migration:
|
During migration:
|
||||||
- [ ] ZFS pools exported
|
- [ ] ZFS pools exported
|
||||||
|
|||||||
35
roles/common.nix
Normal file
35
roles/common.nix
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
# Common configuration shared between NixOS and Darwin
|
||||||
|
{ lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
config = {
|
||||||
|
time.timeZone = "America/Los_Angeles";
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
git
|
||||||
|
glances
|
||||||
|
pciutils
|
||||||
|
tree
|
||||||
|
usbutils
|
||||||
|
vim
|
||||||
|
];
|
||||||
|
|
||||||
|
nix = {
|
||||||
|
package = pkgs.nix;
|
||||||
|
settings = {
|
||||||
|
experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
max-jobs = "auto";
|
||||||
|
trusted-users = [ "johno" ];
|
||||||
|
substituters = [
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
gc = {
|
||||||
|
automatic = true;
|
||||||
|
options = "--delete-older-than 10d";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -7,6 +7,10 @@ let
|
|||||||
setEnvironmentPath = "${config.system.build.setEnvironment}";
|
setEnvironmentPath = "${config.system.build.setEnvironment}";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
imports = [
|
||||||
|
./common.nix
|
||||||
|
];
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
# Salt manages /etc/bashrc, /etc/zshrc, /etc/zshenv
|
# Salt manages /etc/bashrc, /etc/zshrc, /etc/zshenv
|
||||||
# nix-darwin writes to .local variants for nix-specific configuration
|
# nix-darwin writes to .local variants for nix-specific configuration
|
||||||
@@ -43,8 +47,6 @@ in
|
|||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
time.timeZone = "America/Los_Angeles";
|
|
||||||
|
|
||||||
# System preferences
|
# System preferences
|
||||||
system.defaults = {
|
system.defaults = {
|
||||||
# Custom keyboard shortcuts
|
# Custom keyboard shortcuts
|
||||||
@@ -79,42 +81,5 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
git
|
|
||||||
glances
|
|
||||||
pciutils
|
|
||||||
tree
|
|
||||||
usbutils
|
|
||||||
vim
|
|
||||||
];
|
|
||||||
|
|
||||||
nix = {
|
|
||||||
package = pkgs.nix;
|
|
||||||
# distributedBuilds = true;
|
|
||||||
# buildMachines = [{
|
|
||||||
# hostName = "z790prors.oglehome";
|
|
||||||
# system = "x86_64-linux";
|
|
||||||
# protocol = "ssh-ng";
|
|
||||||
# sshUser = "johno";
|
|
||||||
# sshKey = "/root/.ssh/id_ed25519";
|
|
||||||
# maxJobs = 3;
|
|
||||||
# speedFactor = 2;
|
|
||||||
# }];
|
|
||||||
settings = {
|
|
||||||
experimental-features = [ "nix-command" "flakes" ];
|
|
||||||
max-jobs = "auto";
|
|
||||||
trusted-users = [ "johno" ];
|
|
||||||
substituters = [
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
gc = {
|
|
||||||
automatic = true;
|
|
||||||
options = "--delete-older-than 10d";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ with lib;
|
|||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
./common.nix
|
||||||
./audio
|
./audio
|
||||||
./bluetooth
|
./bluetooth
|
||||||
./btrfs
|
./btrfs
|
||||||
@@ -31,7 +32,6 @@ with lib;
|
|||||||
LC_TELEPHONE = "en_US.UTF-8";
|
LC_TELEPHONE = "en_US.UTF-8";
|
||||||
LC_TIME = "en_US.UTF-8";
|
LC_TIME = "en_US.UTF-8";
|
||||||
};
|
};
|
||||||
time.timeZone = "America/Los_Angeles";
|
|
||||||
|
|
||||||
services.xserver.xkb = {
|
services.xserver.xkb = {
|
||||||
layout = "us";
|
layout = "us";
|
||||||
@@ -49,42 +49,7 @@ with lib;
|
|||||||
# Enable the OpenSSH daemon.
|
# Enable the OpenSSH daemon.
|
||||||
services.openssh.enable = true;
|
services.openssh.enable = true;
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
# NixOS-specific gc option (not available on Darwin)
|
||||||
git
|
nix.gc.randomizedDelaySec = "14m";
|
||||||
glances
|
|
||||||
pciutils
|
|
||||||
tree
|
|
||||||
usbutils
|
|
||||||
vim
|
|
||||||
];
|
|
||||||
|
|
||||||
nix = {
|
|
||||||
package = pkgs.nix;
|
|
||||||
# distributedBuilds = true;
|
|
||||||
# buildMachines = [{
|
|
||||||
# hostName = "z790prors.oglehome";
|
|
||||||
# system = "x86_64-linux";
|
|
||||||
# protocol = "ssh-ng";
|
|
||||||
# sshUser = "johno";
|
|
||||||
# sshKey = "/root/.ssh/id_ed25519";
|
|
||||||
# maxJobs = 3;
|
|
||||||
# speedFactor = 2;
|
|
||||||
# }];
|
|
||||||
settings = {
|
|
||||||
experimental-features = [ "nix-command" "flakes" ];
|
|
||||||
max-jobs = "auto";
|
|
||||||
trusted-users = [ "johno" ];
|
|
||||||
substituters = [
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
gc = {
|
|
||||||
automatic = true;
|
|
||||||
randomizedDelaySec = "14m";
|
|
||||||
options = "--delete-older-than 10d";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user