feat(tazjin/nixos): bootstrap arbat (Zhaoxin CPU notebook)

Prepares the pre-installation config (before actually running the installer on
the notebook and dumping out a hardware config etc.).

Change-Id: Ia74c4bfa298738cbf8c4034c22d9f8b51c7e67e0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11765
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
This commit is contained in:
Vincent Ambo 2024-06-09 00:18:28 +03:00 committed by tazjin
parent eba19f822a
commit 73c39fe1be
4 changed files with 64 additions and 5 deletions

View file

@ -0,0 +1,62 @@
# arbat is my Unchartevice 6640MA, with a Zhaoxin CPU.
{ depot, lib, pkgs, ... }:
config:
let
mod = name: depot.path.origSrc + ("/ops/modules/" + name);
usermod = name: depot.path.origSrc + ("/users/tazjin/nixos/modules/" + name);
zdevice = device: {
inherit device;
fsType = "zfs";
};
in
{
imports = [
(usermod "chromium.nix")
(usermod "desktop.nix")
(usermod "fonts.nix")
# (usermod "hidpi.nix") # TODO(tazjin): not sure yet
(usermod "home-config.nix")
(usermod "laptop.nix")
(usermod "persistence.nix")
(usermod "physical.nix")
(pkgs.home-manager.src + "/nixos")
];
tvl.cache.enable = true;
# TODO(tazjin): hardware settings; boot settings
boot = {
loader.systemd-boot.enable = true;
supportedFilesystems = [ "zfs" ];
zfs.devNodes = "/dev/";
};
networking = {
hostName = "arbat";
hostId = "864f050b";
networkmanager.enable = true;
};
fileSystems = {
"/" = zdevice "zpool/ephemeral/root";
"/home" = zdevice "zpool/ephemeral/home";
"/persist" = zdevice "zpool/persistent/data" // { neededForBoot = true; };
"/nix" = zdevice "zpool/persistent/nix";
"/depot" = zdevice "zpool/persistent/depot";
# "/boot" = {
# device = "/dev/disk/by-uuid/2487-3908";
# fsType = "vfat";
# };
};
# TODO(tazjin): decide on this
# services.xserver.libinput.touchpad.clickMethod = "clickfinger";
# services.xserver.libinput.touchpad.tapping = false;
system.stateVersion = "24.11";
}

View file

@ -2,6 +2,7 @@
let systemFor = sys: (depot.ops.nixos.nixosFor sys).system;
in depot.nix.readTree.drvTargets {
arbatSystem = systemFor depot.users.tazjin.nixos.arbat;
camdenSystem = systemFor depot.users.tazjin.nixos.camden;
frogSystem = systemFor depot.users.tazjin.nixos.frog;
tverskoySystem = systemFor depot.users.tazjin.nixos.tverskoy;

View file

@ -10,6 +10,7 @@
# Enable power-saving features.
services.tlp.enable = true;
powerManagement.powertop.enable = true;
programs.light.enable = true;
}

View file

@ -61,10 +61,6 @@ in
hostId = "ee399356";
networkmanager.enable = true;
extraHosts = ''
10.101.240.1 wifi.silja.fi
'';
nameservers = [
"8.8.8.8"
"8.8.4.4"
@ -82,7 +78,6 @@ in
services.xserver.libinput.touchpad.tapping = false;
services.avahi.enable = true;
services.tailscale.enable = true;
powerManagement.powertop.enable = true;
system.stateVersion = "21.11";
}