refactor(nixos): move host configuration files -> inputs
This commit is contained in:
parent
5f3c9de7e7
commit
414a9d42b3
17 changed files with 3 additions and 2 deletions
128
inputs/system/hosts/ooks-x1/default.nix
Normal file
128
inputs/system/hosts/ooks-x1/default.nix
Normal file
|
|
@ -0,0 +1,128 @@
|
|||
|
||||
|
||||
|
||||
|
||||
{ config, inputs, pkgs, ... }:
|
||||
|
||||
# Imports
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
|
||||
{
|
||||
imports = [
|
||||
inputs.hardware.nixosModules.common-pc-ssd
|
||||
inputs.hardware.nixosModules.common-cpu-intel
|
||||
inputs.hardware.nixosModules.common-gpu-intel
|
||||
|
||||
./hardware-configuration.nix
|
||||
|
||||
../common/user/ooks
|
||||
../common/base
|
||||
../common/features/bluetooth.nix
|
||||
../common/features/greetd.nix
|
||||
|
||||
];
|
||||
|
||||
# Hostname and networking
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
|
||||
networking = {
|
||||
hostName = "ooksx1";
|
||||
networkmanager.enable = true;
|
||||
};
|
||||
|
||||
|
||||
# Printing
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
|
||||
services.printing.enable = true;
|
||||
|
||||
# Kernel
|
||||
# ------------------------------------------------------------------------------------------------
|
||||
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxKernel.packages.linux_zen;
|
||||
};
|
||||
|
||||
|
||||
# Laptop Programs
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
|
||||
powerManagement.powertop.enable = true;
|
||||
programs = {
|
||||
light.enable = true;
|
||||
dconf.enable = true;
|
||||
kdeconnect.enable = true;
|
||||
};
|
||||
|
||||
|
||||
hardware = {
|
||||
opengl = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
# gnupg
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
|
||||
programs.gnupg.agent = {
|
||||
enable = true;
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
|
||||
# Services
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
|
||||
services = {
|
||||
logind = {
|
||||
lidSwitch = "suspend";
|
||||
};
|
||||
dbus = {
|
||||
enable = true;
|
||||
packages = [ pkgs.gcr ];
|
||||
};
|
||||
auto-cpufreq = {
|
||||
enable = true;
|
||||
settings = {
|
||||
battery = {
|
||||
governor = "powersave";
|
||||
turbo = "never";
|
||||
};
|
||||
charger = {
|
||||
governor = "performance";
|
||||
turbo = "auto";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
systemd = {
|
||||
user.services.polkit-gnome-authentication-agent-1 = {
|
||||
description = "polkit-gnome-authentication-agent-1";
|
||||
wantedBy = [ "graphical-session.target" ];
|
||||
wants = [ "graphical-session.target" ];
|
||||
after = [ "graphical-session.target" ];
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
||||
Restart = "on-failure";
|
||||
RestartSec = 1;
|
||||
TimeoutStopSec = 10;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Firewall
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
|
||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||
# Or disable the firewall altogether.
|
||||
# networking.firewall.enable = false;
|
||||
|
||||
# System Version
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
|
||||
system = {
|
||||
stateVersion = "22.05";
|
||||
};
|
||||
}
|
||||
62
inputs/system/hosts/ooks-x1/hardware-configuration.nix
Normal file
62
inputs/system/hosts/ooks-x1/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/db84a41f-6094-46b1-b98a-26e03afc18e1";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" ];
|
||||
};
|
||||
|
||||
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/3ea21f10-f705-457c-8366-a8268f658ba6";
|
||||
|
||||
fileSystems."/nix" =
|
||||
{ device = "/dev/disk/by-uuid/db84a41f-6094-46b1-b98a-26e03afc18e1";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" ];
|
||||
};
|
||||
|
||||
fileSystems."/persist" =
|
||||
{ device = "/dev/disk/by-uuid/db84a41f-6094-46b1-b98a-26e03afc18e1";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=persist" ];
|
||||
};
|
||||
|
||||
fileSystems."/swap" =
|
||||
{ device = "/dev/disk/by-uuid/db84a41f-6094-46b1-b98a-26e03afc18e1";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=swap" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/45D8-8DC3";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [{
|
||||
device = "/swap/swapfile";
|
||||
size = 8196;
|
||||
}];
|
||||
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wwp0s20f0u2c2.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
40
inputs/system/hosts/ooksdesk/default.nix
Normal file
40
inputs/system/hosts/ooksdesk/default.nix
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
{ lib, config, inputs, pkgs, ... }:
|
||||
|
||||
let
|
||||
key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBn3ff3HaZHIyH4K13k8Mwqu/o7jIABJ8rANK+r2PfJk";
|
||||
in
|
||||
|
||||
{
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
||||
systemModules.host = {
|
||||
name = "ooksdesk";
|
||||
type = "desktop";
|
||||
function = [ "workstation" "gaming" ];
|
||||
admin = {
|
||||
name = "ooks";
|
||||
shell = "fish";
|
||||
sshKey = key;
|
||||
homeManager = true;
|
||||
};
|
||||
hardware = {
|
||||
cpu.type = "amd";
|
||||
cpu.amd.pstate.enable = true;
|
||||
gpu.type = "amd";
|
||||
features = [ "ssd" ];
|
||||
};
|
||||
};
|
||||
|
||||
systemModules.networking.tailscale = {
|
||||
enable = true;
|
||||
client = true;
|
||||
};
|
||||
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxPackages_xanmod_latest;
|
||||
};
|
||||
|
||||
system.stateVersion = lib.mkDefault "23.11";
|
||||
}
|
||||
58
inputs/system/hosts/ooksdesk/hardware-configuration.nix
Normal file
58
inputs/system/hosts/ooksdesk/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/629a7421-24a0-45e6-87af-031574d9d46d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" ];
|
||||
};
|
||||
|
||||
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/b5d09a8b-54a9-4f72-828c-5cceea2ec287";
|
||||
|
||||
fileSystems."/nix" =
|
||||
{ device = "/dev/disk/by-uuid/629a7421-24a0-45e6-87af-031574d9d46d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" ];
|
||||
};
|
||||
|
||||
fileSystems."/persist" =
|
||||
{ device = "/dev/disk/by-uuid/629a7421-24a0-45e6-87af-031574d9d46d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=persist" ];
|
||||
};
|
||||
|
||||
fileSystems."/swap" =
|
||||
{ device = "/dev/disk/by-uuid/629a7421-24a0-45e6-87af-031574d9d46d";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=swap" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/1D01-7040";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp8s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
34
inputs/system/hosts/ooksmedia/default.nix
Normal file
34
inputs/system/hosts/ooksmedia/default.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
{ config, inputs, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../profiles
|
||||
./nixarr.nix
|
||||
];
|
||||
|
||||
activeProfiles = ["base" "gaming"];
|
||||
|
||||
systemModules.user = {
|
||||
ooks.enable = true;
|
||||
shell = "fish";
|
||||
};
|
||||
|
||||
systemModules.hardware = {
|
||||
cpu.type = "intel";
|
||||
gpu.type = "nvidia";
|
||||
};
|
||||
|
||||
systemModules.networking.tailscale = {
|
||||
enable = true;
|
||||
server = true;
|
||||
};
|
||||
|
||||
networking = {
|
||||
hostName = "ooksmedia";
|
||||
# useDHCP = true;
|
||||
};
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxPackages_xanmod_latest;
|
||||
};
|
||||
}
|
||||
56
inputs/system/hosts/ooksmedia/hardware-configuration.nix
Normal file
56
inputs/system/hosts/ooksmedia/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/50617edf-e788-49cc-9e0c-85a2f90a5550";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" ];
|
||||
};
|
||||
|
||||
fileSystems."/nix" =
|
||||
{ device = "/dev/disk/by-uuid/50617edf-e788-49cc-9e0c-85a2f90a5550";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" ];
|
||||
};
|
||||
|
||||
fileSystems."/persist" =
|
||||
{ device = "/dev/disk/by-uuid/50617edf-e788-49cc-9e0c-85a2f90a5550";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=persist" ];
|
||||
};
|
||||
|
||||
fileSystems."/swap" =
|
||||
{ device = "/dev/disk/by-uuid/50617edf-e788-49cc-9e0c-85a2f90a5550";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=swap" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/B511-09E2";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp2s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
22
inputs/system/hosts/ooksmedia/nixarr.nix
Normal file
22
inputs/system/hosts/ooksmedia/nixarr.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{ inputs, ... }:
|
||||
|
||||
|
||||
{
|
||||
imports = [ inputs.nixarr.nixosModules.default ];
|
||||
nixarr = {
|
||||
enable = true;
|
||||
mediaDir = "/jellyfin";
|
||||
stateDir = "/var/lib/nixarr";
|
||||
mediaUsers = ["ooks"];
|
||||
|
||||
jellyfin.enable = true;
|
||||
sonarr.enable = true;
|
||||
radarr.enable = true;
|
||||
prowlarr.enable = true;
|
||||
transmission.enable = true;
|
||||
};
|
||||
fileSystems."/jellyfin" = {
|
||||
device = "/dev/disk/by-label/jellyfin";
|
||||
fsType = "btrfs";
|
||||
};
|
||||
}
|
||||
38
inputs/system/hosts/ooksmicro/default.nix
Normal file
38
inputs/system/hosts/ooksmicro/default.nix
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../profiles
|
||||
];
|
||||
|
||||
activeProfiles = ["base" "laptop"];
|
||||
|
||||
systemModules.user = {
|
||||
ooks.enable = true;
|
||||
shell.fish.enable = true;
|
||||
};
|
||||
|
||||
systemModules.laptop.power = {
|
||||
powersave = {
|
||||
minFreq = 800;
|
||||
maxFreq = 1600;
|
||||
};
|
||||
performance = {
|
||||
minFreq = 1100;
|
||||
maxFreq = 2600;
|
||||
};
|
||||
};
|
||||
|
||||
networking = {
|
||||
hostName = "ooksmicro";
|
||||
};
|
||||
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxKernel.packages.linux_zen;
|
||||
# need this due to
|
||||
kernelParams = [ "fbcon=rotate:1" ];
|
||||
# required for keyboard to work during boot
|
||||
initrd.availableKernelModules = [ "battery" ];
|
||||
};
|
||||
}
|
||||
53
inputs/system/hosts/ooksmicro/hardware-configuration.nix
Normal file
53
inputs/system/hosts/ooksmicro/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ahci" "xhci_pci" "usbhid" "usb_storage" "sd_mod" "sdhci_pci" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/385526ad-e263-495d-91eb-1f484985bd0f";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" ];
|
||||
};
|
||||
|
||||
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/fe7ea7fd-b531-4c00-8123-99f7ea855800";
|
||||
|
||||
fileSystems."/nix" =
|
||||
{ device = "/dev/disk/by-uuid/385526ad-e263-495d-91eb-1f484985bd0f";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/57C5-11E7";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
fileSystems."/persist" =
|
||||
{ device = "/dev/disk/by-uuid/385526ad-e263-495d-91eb-1f484985bd0f";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=persist" ];
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.eno1.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
43
inputs/system/hosts/ooksphone/default.nix
Normal file
43
inputs/system/hosts/ooksphone/default.nix
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{ pkgs, inputs, outputs, ... }:
|
||||
|
||||
{
|
||||
imports = [ ./modules ];
|
||||
|
||||
environment.packages = with pkgs; [
|
||||
killall
|
||||
hostname
|
||||
man
|
||||
coreutils
|
||||
];
|
||||
|
||||
environment.etcBackupExtension = ".bak";
|
||||
|
||||
system.stateVersion = "23.11";
|
||||
|
||||
nix = {
|
||||
extraOptions = ''
|
||||
experimental-features = nix-command flakes
|
||||
'';
|
||||
substituters = [
|
||||
"https://cache.nixos.org?priority=10"
|
||||
"https://helix.cachix.org"
|
||||
"https://nix-community.cachix.org"
|
||||
];
|
||||
trustedPublicKeys = [
|
||||
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||
"helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs="
|
||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||
];
|
||||
};
|
||||
|
||||
time.timeZone = "Pacific/Auckland";
|
||||
|
||||
user = {
|
||||
shell = "${pkgs.fish}/bin/fish";
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
extraSpecialArgs = { inherit inputs outputs; };
|
||||
config = import ../../../home/user/ooks/ooksphone;
|
||||
};
|
||||
}
|
||||
6
inputs/system/hosts/ooksphone/modules/default.nix
Normal file
6
inputs/system/hosts/ooksphone/modules/default.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
imports = [
|
||||
./theme.nix
|
||||
# ./openssh.nix
|
||||
];
|
||||
}
|
||||
7
inputs/system/hosts/ooksphone/modules/openssh.nix
Normal file
7
inputs/system/hosts/ooksphone/modules/openssh.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.ssh = {
|
||||
enable = true;
|
||||
startAgent = true;
|
||||
};
|
||||
}
|
||||
43
inputs/system/hosts/ooksphone/modules/theme.nix
Normal file
43
inputs/system/hosts/ooksphone/modules/theme.nix
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
fontPackage = pkgs.nerdfonts.override { fonts = [ "JetBrainsMono" ]; };
|
||||
fontPath = "/share/fonts/truetype/NerdFonts/JetBrainsMonoNerdFontMono-Regular.ttf";
|
||||
in
|
||||
|
||||
{
|
||||
terminal = {
|
||||
font = fontPackage + fontPath;
|
||||
|
||||
# Gruvbox Material Dark Soft
|
||||
colors = {
|
||||
background = "#32302F";
|
||||
foreground = "#DDC7A1";
|
||||
cursor = "#DDC7A1";
|
||||
|
||||
color0 = "#32302F"; # Black
|
||||
color8 = "#7C6F64"; # Bright Black
|
||||
|
||||
color1 = "#EA6962"; # Red
|
||||
color9 = "#EA6962"; # Bright Red
|
||||
|
||||
color2 = "#A9B665"; # Green
|
||||
color10 = "#A9B665"; # Bright Green
|
||||
|
||||
color3 = "#D8A657"; # Yellow
|
||||
color11 = "#D8A657"; # Bright Yellow
|
||||
|
||||
color4 = "#7DAEA3"; # Blue
|
||||
color12 = "#7DAEA3"; # Bright Blue
|
||||
|
||||
color5 = "#D3869B"; # Magenta
|
||||
color13 = "#D3869B"; # Bright Magenta
|
||||
|
||||
color6 = "#89B482"; # Cyan
|
||||
color14 = "#89B482"; # Bright Cyan
|
||||
|
||||
color7 = "#DDC7A1"; # White
|
||||
color15 = "#FBF1C7"; # Bright White
|
||||
};
|
||||
};
|
||||
}
|
||||
47
inputs/system/hosts/ookst480s/default.nix
Normal file
47
inputs/system/hosts/ookst480s/default.nix
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
{ inputs, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkDefault;
|
||||
key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBn3ff3HaZHIyH4K13k8Mwqu/o7jIABJ8rANK+r2PfJk";
|
||||
in
|
||||
|
||||
{
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../modules
|
||||
];
|
||||
|
||||
|
||||
systemModules.host = {
|
||||
name = "ookst480s";
|
||||
type = "laptop";
|
||||
function = [ "workstation" ];
|
||||
admin = {
|
||||
name = "ooks";
|
||||
shell = "fish";
|
||||
sshKey = key;
|
||||
homeManager = true;
|
||||
};
|
||||
hardware = {
|
||||
cpu.type = "intel";
|
||||
gpu.type = "intel";
|
||||
features = [ "bluetooth" "backlight" "battery" "ssd" ];
|
||||
battery = {
|
||||
powersave = {
|
||||
minFreq = 800;
|
||||
maxFreq = 1800;
|
||||
};
|
||||
performance = {
|
||||
minFreq = 1800;
|
||||
maxFreq = 3600;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxKernel.packages.linux_zen;
|
||||
};
|
||||
|
||||
system.stateVersion = mkDefault "23.11";
|
||||
}
|
||||
61
inputs/system/hosts/ookst480s/hardware-configuration.nix
Normal file
61
inputs/system/hosts/ookst480s/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/19e4cf0f-b5ac-4544-a44b-c017b23fd283";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" ];
|
||||
};
|
||||
|
||||
boot.initrd.luks.devices."cryptnix".device = "/dev/disk/by-uuid/014d725c-bf13-40a2-a9ab-0dd6185a95f6";
|
||||
|
||||
fileSystems."/nix" =
|
||||
{ device = "/dev/disk/by-uuid/19e4cf0f-b5ac-4544-a44b-c017b23fd283";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" ];
|
||||
};
|
||||
|
||||
fileSystems."/persist" =
|
||||
{ device = "/dev/disk/by-uuid/19e4cf0f-b5ac-4544-a44b-c017b23fd283";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=persist" ];
|
||||
};
|
||||
|
||||
fileSystems."/swap" =
|
||||
{ device = "/dev/disk/by-uuid/19e4cf0f-b5ac-4544-a44b-c017b23fd283";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=swap" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/F356-6F9C";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp61s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wwan0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue