HASH dd074ecbd43e
DATE 2025-03-11
SUBJECT ooksmicro: adjustemnts to support ooksmicro
FILES 12 CHANGED
HASH dd074ecbd43e
DATE 2025-03-11
SUBJECT ooksmicro: adjustemnts to support
ooksmicro
FILES 12 CHANGED
┌─ .gitignore ───────────────────────────────────────────────────────────────┐
│ diff --git a/.gitignore b/.gitignore │
│ index 55738f8..a1a0c83 100644 │
│ --- a/.gitignore │
│ +++ b/.gitignore │
│ @@ -1,2 +1,3 @@ │
│ repodump.xml │
│ CLAUDE.md │
│ +result │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ .gitignore ─────────────────────────┐
│ diff --git a/.gitignore b/.gitignore │
│ index 55738f8..a1a0c83 100644 │
│ --- a/.gitignore │
│ +++ b/.gitignore │
│ @@ -1,2 +1,3 @@ │
│ repodump.xml │
│ CLAUDE.md │
│ +result │
└──────────────────────────────────────────────┘
┌─ hosts/ooksmicro/default.nix ──────────────────────────────────────────────┐
│ diff --git a/hosts/ooksmicro/default.nix b/hosts/ooksmicro/default.nix │
│ new file mode 100644 │
│ index 0000000..a36b652 │
│ --- /dev/null │
│ +++ b/hosts/ooksmicro/default.nix │
│ @@ -0,0 +1,43 @@ │
│ +{ │
│ + pkgs, │
│ + lib, │
│ + ... │
│ +}: { │
│ + imports = [ │
│ + ./file-system.nix │
│ + ./hardware.nix │
│ + ]; │
│ + │
│ + ooknet = { │
│ + host = { │
│ + admin = { │
│ + name = "ooks"; │
│ + shell = "fish"; │
│ + homeManager = true; │
│ + }; │
│ + }; │
│ + workstation = { │
│ + environment = "hyprland"; │
│ + theme = "minimal"; │
│ + default.terminal = "foot"; │
│ + }; │
│ + console = { │
│ + profile = "standard"; │
│ + }; │
│ + }; │
│ + boot = { │
│ + kernelPackages = pkgs.linuxPackages_latest; │
│ + kernelParams = ["fbcon=rotate:1"]; │
│ + initrd.availableKernelModules = ["battery" "sdhci_pci"]; │
│ + }; │
│ + services = { │
│ + tlp.enable = true; │
│ + upower.enable = true; │
│ + thermald.enable = true; │
│ + power-profiles-daemon.enable = false; │
│ + logind.lidSwitch = "suspend"; │
│ + }; │
│ + powerManagement.powertop.enable = true; │
│ + hardware.cpu.intel.updateMicrocode = true; │
│ + system.stateVersion = lib.mkDefault "23.11"; │
│ +} │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ hosts/ooksmicro/default.nix ────────┐
│ diff --git a/hosts/ooksmicro/default.nix b/h │
│ osts/ooksmicro/default.nix │
│ new file mode 100644 │
│ index 0000000..a36b652 │
│ --- /dev/null │
│ +++ b/hosts/ooksmicro/default.nix │
│ @@ -0,0 +1,43 @@ │
│ +{ │
│ + pkgs, │
│ + lib, │
│ + ... │
│ +}: { │
│ + imports = [ │
│ + ./file-system.nix │
│ + ./hardware.nix │
│ + ]; │
│ + │
│ + ooknet = { │
│ + host = { │
│ + admin = { │
│ + name = "ooks"; │
│ + shell = "fish"; │
│ + homeManager = true; │
│ + }; │
│ + }; │
│ + workstation = { │
│ + environment = "hyprland"; │
│ + theme = "minimal"; │
│ + default.terminal = "foot"; │
│ + }; │
│ + console = { │
│ + profile = "standard"; │
│ + }; │
│ + }; │
│ + boot = { │
│ + kernelPackages = pkgs.linuxPackages_lat │
│ est; │
│ + kernelParams = ["fbcon=rotate:1"]; │
│ + initrd.availableKernelModules = ["batte │
│ ry" "sdhci_pci"]; │
│ + }; │
│ + services = { │
│ + tlp.enable = true; │
│ + upower.enable = true; │
│ + thermald.enable = true; │
│ + power-profiles-daemon.enable = false; │
│ + logind.lidSwitch = "suspend"; │
│ + }; │
│ + powerManagement.powertop.enable = true; │
│ + hardware.cpu.intel.updateMicrocode = true │
│ ; │
│ + system.stateVersion = lib.mkDefault "23.1 │
│ 1"; │
│ +} │
└──────────────────────────────────────────────┘
┌─ hosts/ooksmicro/file-system.nix ──────────────────────────────────────────┐
│ diff --git a/hosts/ooksmicro/file-system.nix b/hosts/ooksmicro/file-system.nix │
│ new file mode 100644 │
│ index 0000000..cd2d6dc │
│ --- /dev/null │
│ +++ b/hosts/ooksmicro/file-system.nix │
│ @@ -0,0 +1,40 @@ │
│ +{ │
│ + boot.initrd.luks.devices."cryptnix".device = "/dev/disk/by-uuid/ebb040ca-3c92-4 │
│ 45a-acce-94b9e1c774d0"; │
│ + │
│ + fileSystems = { │
│ + "/" = { │
│ + device = "/dev/disk/by-uuid/4b6f64b1-64f2-47c2-b69d-49b441d88b49"; │
│ + fsType = "btrfs"; │
│ + options = ["subvol=root"]; │
│ + }; │
│ + │
│ + "/nix" = { │
│ + device = "/dev/disk/by-uuid/4b6f64b1-64f2-47c2-b69d-49b441d88b49"; │
│ + fsType = "btrfs"; │
│ + options = ["subvol=nix"]; │
│ + }; │
│ + │
│ + "/persist" = { │
│ + device = "/dev/disk/by-uuid/4b6f64b1-64f2-47c2-b69d-49b441d88b49"; │
│ + fsType = "btrfs"; │
│ + options = ["subvol=persist"]; │
│ + }; │
│ + │
│ + "/swap" = { │
│ + device = "/dev/disk/by-uuid/4b6f64b1-64f2-47c2-b69d-49b441d88b49"; │
│ + fsType = "btrfs"; │
│ + options = ["subvol=swap"]; │
│ + }; │
│ + │
│ + "/boot" = { │
│ + device = "/dev/disk/by-uuid/9A75-6622"; │
│ + fsType = "vfat"; │
│ + }; │
│ + }; │
│ + swapDevices = [ │
│ + { │
│ + device = "/swap/swapfile"; │
│ + size = 4 * 1024; │
│ + } │
│ + ]; │
│ +} │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ hosts/ooksmicro/file-system.nix ────┐
│ diff --git a/hosts/ooksmicro/file-system.nix │
│ b/hosts/ooksmicro/file-system.nix │
│ new file mode 100644 │
│ index 0000000..cd2d6dc │
│ --- /dev/null │
│ +++ b/hosts/ooksmicro/file-system.nix │
│ @@ -0,0 +1,40 @@ │
│ +{ │
│ + boot.initrd.luks.devices."cryptnix".devic │
│ e = "/dev/disk/by-uuid/ebb040ca-3c92-445a-ac │
│ ce-94b9e1c774d0"; │
│ + │
│ + fileSystems = { │
│ + "/" = { │
│ + device = "/dev/disk/by-uuid/4b6f64b1- │
│ 64f2-47c2-b69d-49b441d88b49"; │
│ + fsType = "btrfs"; │
│ + options = ["subvol=root"]; │
│ + }; │
│ + │
│ + "/nix" = { │
│ + device = "/dev/disk/by-uuid/4b6f64b1- │
│ 64f2-47c2-b69d-49b441d88b49"; │
│ + fsType = "btrfs"; │
│ + options = ["subvol=nix"]; │
│ + }; │
│ + │
│ + "/persist" = { │
│ + device = "/dev/disk/by-uuid/4b6f64b1- │
│ 64f2-47c2-b69d-49b441d88b49"; │
│ + fsType = "btrfs"; │
│ + options = ["subvol=persist"]; │
│ + }; │
│ + │
│ + "/swap" = { │
│ + device = "/dev/disk/by-uuid/4b6f64b1- │
│ 64f2-47c2-b69d-49b441d88b49"; │
│ + fsType = "btrfs"; │
│ + options = ["subvol=swap"]; │
│ + }; │
│ + │
│ + "/boot" = { │
│ + device = "/dev/disk/by-uuid/9A75-6622 │
│ "; │
│ + fsType = "vfat"; │
│ + }; │
│ + }; │
│ + swapDevices = [ │
│ + { │
│ + device = "/swap/swapfile"; │
│ + size = 4 * 1024; │
│ + } │
│ + ]; │
│ +} │
└──────────────────────────────────────────────┘
┌─ hosts/ooksmicro/hardware.nix ─────────────────────────────────────────────┐
│ diff --git a/hosts/ooksmicro/hardware.nix b/hosts/ooksmicro/hardware.nix │
│ new file mode 100644 │
│ index 0000000..1bd82cd │
│ --- /dev/null │
│ +++ b/hosts/ooksmicro/hardware.nix │
│ @@ -0,0 +1,20 @@ │
│ +{ │
│ + ooknet.hardware = { │
│ + features = [ │
│ + "bluetooth" │
│ + "backlight" │
│ + "ssd" │
│ + "audio" │
│ + "video" │
│ + ]; │
│ + monitors = [ │
│ + { │
│ + primary = true; │
│ + name = "DSI-1"; │
│ + width = 720; │
│ + height = 1280; │
│ + transform = 3; │
│ + } │
│ + ]; │
│ + }; │
│ +} │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ hosts/ooksmicro/hardware.nix ───────┐
│ diff --git a/hosts/ooksmicro/hardware.nix b/ │
│ hosts/ooksmicro/hardware.nix │
│ new file mode 100644 │
│ index 0000000..1bd82cd │
│ --- /dev/null │
│ +++ b/hosts/ooksmicro/hardware.nix │
│ @@ -0,0 +1,20 @@ │
│ +{ │
│ + ooknet.hardware = { │
│ + features = [ │
│ + "bluetooth" │
│ + "backlight" │
│ + "ssd" │
│ + "audio" │
│ + "video" │
│ + ]; │
│ + monitors = [ │
│ + { │
│ + primary = true; │
│ + name = "DSI-1"; │
│ + width = 720; │
│ + height = 1280; │
│ + transform = 3; │
│ + } │
│ + ]; │
│ + }; │
│ +} │
└──────────────────────────────────────────────┘
┌─ modules/nixos/base/admin.nix ─────────────────────────────────────────────┐
│ diff --git a/modules/nixos/base/admin.nix b/modules/nixos/base/admin.nix │
│ index f3c5a61..b146e4e 100644 │
│ --- a/modules/nixos/base/admin.nix │
│ +++ b/modules/nixos/base/admin.nix │
│ @@ -5,6 +5,7 @@ │
│ }: let │
│ inherit (config.ooknet.host) admin; │
│ inherit (config.ooknet.secrets) keys; │
│ + inherit (config.age) secrets; │
│ │
│ ifTheyExist = groups: builtins.filter (group: builtins.hasAttr group config.use │
│ rs.groups) groups; │
│ in { │
│ @@ -12,7 +13,7 @@ in { │
│ users.users.${admin.name} = { │
│ isNormalUser = true; │
│ shell = pkgs.${admin.shell}; │
│ - initialHashedPassword = "$y$j9T$l4Wje1zgcrPIM5G4BRAT6.$AKHmE2MvJLLiipYnwGsl │
│ jxbD0QmqYtHGlKht0kLLI87"; │
│ + initialHashedPassword = ""; │
│ openssh.authorizedKeys.keys = [keys.users."${admin.name}"]; │
│ createHome = true; │
│ home = "/home/${admin.name}"; │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ modules/nixos/base/admin.nix ───────┐
│ diff --git a/modules/nixos/base/admin.nix b/ │
│ modules/nixos/base/admin.nix │
│ index f3c5a61..b146e4e 100644 │
│ --- a/modules/nixos/base/admin.nix │
│ +++ b/modules/nixos/base/admin.nix │
│ @@ -5,6 +5,7 @@ │
│ }: let │
│ inherit (config.ooknet.host) admin; │
│ inherit (config.ooknet.secrets) keys; │
│ + inherit (config.age) secrets; │
│ │
│ ifTheyExist = groups: builtins.filter (gr │
│ oup: builtins.hasAttr group config.users.gro │
│ ups) groups; │
│ in { │
│ @@ -12,7 +13,7 @@ in { │
│ users.users.${admin.name} = { │
│ isNormalUser = true; │
│ shell = pkgs.${admin.shell}; │
│ - initialHashedPassword = "$y$j9T$l4Wje │
│ 1zgcrPIM5G4BRAT6.$AKHmE2MvJLLiipYnwGsljxbD0Q │
│ mqYtHGlKht0kLLI87"; │
│ + initialHashedPassword = ""; │
│ openssh.authorizedKeys.keys = [keys.u │
│ sers."${admin.name}"]; │
│ createHome = true; │
│ home = "/home/${admin.name}"; │
└──────────────────────────────────────────────┘
┌─ modules/nixos/base/nix.nix ───────────────────────────────────────────────┐
│ diff --git a/modules/nixos/base/nix.nix b/modules/nixos/base/nix.nix │
│ index 2e06c36..6f5ec4b 100644 │
│ --- a/modules/nixos/base/nix.nix │
│ +++ b/modules/nixos/base/nix.nix │
│ @@ -65,7 +65,7 @@ in { │
│ nixpkgs = { │
│ config.allowUnfree = true; │
│ # why are we doing this │
│ - overlays = [ │
│ + overlays = mkIf (role == "workstation") [ │
│ # zellij status bar plugin │
│ (_final: prev: { │
│ zjstatus = inputs.zjstatus.packages.${prev.system}.default; │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ modules/nixos/base/nix.nix ─────────┐
│ diff --git a/modules/nixos/base/nix.nix b/mo │
│ dules/nixos/base/nix.nix │
│ index 2e06c36..6f5ec4b 100644 │
│ --- a/modules/nixos/base/nix.nix │
│ +++ b/modules/nixos/base/nix.nix │
│ @@ -65,7 +65,7 @@ in { │
│ nixpkgs = { │
│ config.allowUnfree = true; │
│ # why are we doing this │
│ - overlays = [ │
│ + overlays = mkIf (role == "workstation") │
│ [ │
│ # zellij status bar plugin │
│ (_final: prev: { │
│ zjstatus = inputs.zjstatus.packages │
│ .${prev.system}.default; │
└──────────────────────────────────────────────┘
┌─ modules/nixos/base/options.nix ───────────────────────────────────────────┐
│ diff --git a/modules/nixos/base/options.nix b/modules/nixos/base/options.nix │
│ index 0b3078f..2aa473a 100644 │
│ --- a/modules/nixos/base/options.nix │
│ +++ b/modules/nixos/base/options.nix │
│ @@ -36,10 +36,10 @@ in { │
│ default = "ooks-generic"; │
│ }; │
│ type = mkOption { │
│ - type = enum ["vm" "desktop" "laptop"]; │
│ + type = enum ["vm" "desktop" "laptop" "iso"]; │
│ }; │
│ role = mkOption { │
│ - type = enum ["workstation" "server" "installer"]; │
│ + type = enum ["workstation" "server" "installer" "live"]; │
│ }; │
│ │
│ syncthing = { │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ modules/nixos/base/options.nix ─────┐
│ diff --git a/modules/nixos/base/options.nix │
│ b/modules/nixos/base/options.nix │
│ index 0b3078f..2aa473a 100644 │
│ --- a/modules/nixos/base/options.nix │
│ +++ b/modules/nixos/base/options.nix │
│ @@ -36,10 +36,10 @@ in { │
│ default = "ooks-generic"; │
│ }; │
│ type = mkOption { │
│ - type = enum ["vm" "desktop" "laptop"] │
│ ; │
│ + type = enum ["vm" "desktop" "laptop" │
│ "iso"]; │
│ }; │
│ role = mkOption { │
│ - type = enum ["workstation" "server" " │
│ installer"]; │
│ + type = enum ["workstation" "server" " │
│ installer" "live"]; │
│ }; │
│ │
│ syncthing = { │
└──────────────────────────────────────────────┘
┌─ modules/nixos/base/tailscale.nix ─────────────────────────────────────────┐
│ diff --git a/modules/nixos/base/tailscale.nix b/modules/nixos/base/tailscale.nix │
│ index 26ab237..65eaba7 100644 │
│ --- a/modules/nixos/base/tailscale.nix │
│ +++ b/modules/nixos/base/tailscale.nix │
│ @@ -3,6 +3,7 @@ │
│ lib, │
│ ... │
│ }: let │
│ + inherit (lib) mkIf; │
│ inherit (lib.lists) concatLists optionals; │
│ inherit (config.ooknet) host; │
│ inherit (config.ooknet.host) admin; │
│ @@ -19,7 +20,7 @@ in { │
│ permitCertUid = "root"; │
│ │
│ # authentication key for auto connect service │
│ - authKeyFile = config.age.secrets.tailscale-auth.path; │
│ + authKeyFile = mkIf (host.role != "installer") config.age.secrets.tailscale-au │
│ th.path; │
│ │
│ # flags to pass to the auto-connect service │
│ extraUpFlags = concatLists [ │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ modules/nixos/base/tailscale.nix ───┐
│ diff --git a/modules/nixos/base/tailscale.ni │
│ x b/modules/nixos/base/tailscale.nix │
│ index 26ab237..65eaba7 100644 │
│ --- a/modules/nixos/base/tailscale.nix │
│ +++ b/modules/nixos/base/tailscale.nix │
│ @@ -3,6 +3,7 @@ │
│ lib, │
│ ... │
│ }: let │
│ + inherit (lib) mkIf; │
│ inherit (lib.lists) concatLists optionals │
│ ; │
│ inherit (config.ooknet) host; │
│ inherit (config.ooknet.host) admin; │
│ @@ -19,7 +20,7 @@ in { │
│ permitCertUid = "root"; │
│ │
│ # authentication key for auto connect s │
│ ervice │
│ - authKeyFile = config.age.secrets.tailsc │
│ ale-auth.path; │
│ + authKeyFile = mkIf (host.role != "insta │
│ ller") config.age.secrets.tailscale-auth.pat │
│ h; │
│ │
│ # flags to pass to the auto-connect ser │
│ vice │
│ extraUpFlags = concatLists [ │
└──────────────────────────────────────────────┘
┌─ modules/nixos/hardware/gpu/amd.nix ───────────────────────────────────────┐
│ diff --git a/modules/nixos/hardware/gpu/amd.nix b/modules/nixos/hardware/gpu/amd.n │
│ ix │
│ index 619cddc..cb3ec1d 100644 │
│ --- a/modules/nixos/hardware/gpu/amd.nix │
│ +++ b/modules/nixos/hardware/gpu/amd.nix │
│ @@ -5,7 +5,7 @@ │
│ ... │
│ }: let │
│ inherit (config.ooknet.hardware) gpu; │
│ - inherit (lib) getExe mkMerge mkIf mkDefault; │
│ + inherit (lib) mkMerge mkIf mkDefault; │
│ inherit (builtins) attrValues; │
│ in { │
│ config = mkIf (gpu.type == "amd") (mkMerge [ │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ ...es/nixos/hardware/gpu/amd.nix ───┐
│ diff --git a/modules/nixos/hardware/gpu/amd. │
│ nix b/modules/nixos/hardware/gpu/amd.nix │
│ index 619cddc..cb3ec1d 100644 │
│ --- a/modules/nixos/hardware/gpu/amd.nix │
│ +++ b/modules/nixos/hardware/gpu/amd.nix │
│ @@ -5,7 +5,7 @@ │
│ ... │
│ }: let │
│ inherit (config.ooknet.hardware) gpu; │
│ - inherit (lib) getExe mkMerge mkIf mkDefau │
│ lt; │
│ + inherit (lib) mkMerge mkIf mkDefault; │
│ inherit (builtins) attrValues; │
│ in { │
│ config = mkIf (gpu.type == "amd") (mkMerg │
│ e [ │
└──────────────────────────────────────────────┘
┌─ modules/nixos/workstation/programs/default.nix ───────────────────────────┐
│ diff --git a/modules/nixos/workstation/programs/default.nix b/modules/nixos/workst │
│ ation/programs/default.nix │
│ index b8be726..b4ba4da 100644 │
│ --- a/modules/nixos/workstation/programs/default.nix │
│ +++ b/modules/nixos/workstation/programs/default.nix │
│ @@ -3,6 +3,6 @@ │
│ ./1password.nix │
│ ./dconf.nix │
│ ./kdeconnect.nix │
│ - ./waydroid.nix │
│ + # ./waydroid.nix │
│ ]; │
│ } │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ ...kstation/programs/default.nix ───┐
│ diff --git a/modules/nixos/workstation/progr │
│ ams/default.nix b/modules/nixos/workstation/ │
│ programs/default.nix │
│ index b8be726..b4ba4da 100644 │
│ --- a/modules/nixos/workstation/programs/def │
│ ault.nix │
│ +++ b/modules/nixos/workstation/programs/def │
│ ault.nix │
│ @@ -3,6 +3,6 @@ │
│ ./1password.nix │
│ ./dconf.nix │
│ ./kdeconnect.nix │
│ - ./waydroid.nix │
│ + # ./waydroid.nix │
│ ]; │
│ } │
└──────────────────────────────────────────────┘
┌─ outputs/hosts/installer.nix ──────────────────────────────────────────────┐
│ diff --git a/outputs/hosts/installer.nix b/outputs/hosts/installer.nix │
│ index ffb6654..663264b 100644 │
│ --- a/outputs/hosts/installer.nix │
│ +++ b/outputs/hosts/installer.nix │
│ @@ -10,7 +10,8 @@ in { │
│ inherit withSystem; │
│ system = "x86_64-linux"; │
│ hostname = "ooksinstall"; │
│ - installer = true; │
│ + type = "iso"; │
│ + role = "installer"; │
│ }; │
│ }; │
│ } │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ outputs/hosts/installer.nix ────────┐
│ diff --git a/outputs/hosts/installer.nix b/o │
│ utputs/hosts/installer.nix │
│ index ffb6654..663264b 100644 │
│ --- a/outputs/hosts/installer.nix │
│ +++ b/outputs/hosts/installer.nix │
│ @@ -10,7 +10,8 @@ in { │
│ inherit withSystem; │
│ system = "x86_64-linux"; │
│ hostname = "ooksinstall"; │
│ - installer = true; │
│ + type = "iso"; │
│ + role = "installer"; │
│ }; │
│ }; │
│ } │
└──────────────────────────────────────────────┘
┌─ outputs/hosts/workstations.nix ───────────────────────────────────────────┐
│ diff --git a/outputs/hosts/workstations.nix b/outputs/hosts/workstations.nix │
│ index 829b99c..cde88ad 100644 │
│ --- a/outputs/hosts/workstations.nix │
│ +++ b/outputs/hosts/workstations.nix │
│ @@ -12,6 +12,12 @@ in { │
│ hostname = "ookst480s"; │
│ type = "laptop"; │
│ }; │
│ + ooksmicro = mkWorkstation { │
│ + inherit withSystem; │
│ + system = "x86_64-linux"; │
│ + hostname = "ooksmicro"; │
│ + type = "laptop"; │
│ + }; │
│ ooksx1 = mkWorkstation { │
│ inherit withSystem; │
│ system = "x86_64-linux"; │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ outputs/hosts/workstations.nix ─────┐
│ diff --git a/outputs/hosts/workstations.nix │
│ b/outputs/hosts/workstations.nix │
│ index 829b99c..cde88ad 100644 │
│ --- a/outputs/hosts/workstations.nix │
│ +++ b/outputs/hosts/workstations.nix │
│ @@ -12,6 +12,12 @@ in { │
│ hostname = "ookst480s"; │
│ type = "laptop"; │
│ }; │
│ + ooksmicro = mkWorkstation { │
│ + inherit withSystem; │
│ + system = "x86_64-linux"; │
│ + hostname = "ooksmicro"; │
│ + type = "laptop"; │
│ + }; │
│ ooksx1 = mkWorkstation { │
│ inherit withSystem; │
│ system = "x86_64-linux"; │
└──────────────────────────────────────────────┘
[ BACK TO LOG ]
──────────────────────────────────────────────────────────────────────────────────────
OOKNET
────────────────────────────────────────────────
OOKNET