about summary refs log tree commit diff
path: root/users/tazjin/nixos/arbat/default.nix
blob: ade80e7c90e7373f384ac8448e9f03b3ef38384d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
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";
}