world: init

This commit is contained in:
Bloxx12 2025-05-15 11:22:57 +02:00
commit 9fbc6e83ba
Signed by: faukah
SSH key fingerprint: SHA256:Uj2AXqvtdCA4hn5Hq0ZonhIAyUqI1q4w2sMG3Z1TH7E
9 changed files with 192 additions and 2 deletions

View file

@ -61,4 +61,8 @@ in {
system = "aarch64-linux"; system = "aarch64-linux";
hostname = "tower"; hostname = "tower";
}; };
world = mkSystem {
system = "x86_64-linux";
hostname = "world";
};
} }

View file

@ -0,0 +1,51 @@
{
lib,
pkgs,
...
}: {
# Time Zone
time.timeZone = "Europe/Zurich";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
console.keyMap = "uk";
security.polkit.enable = true;
programs.nix-ld.enable = false;
boot.kernelPackages = pkgs.linuxPackages_xanmod_latest;
services = {
fstrim.enable = lib.mkDefault true;
thermald.enable = true;
};
modules = {
desktops.hyprland.enable = true;
system = {
boot.systemd-boot.enable = true;
impermanence.enable = false;
hardware = {
intel.enable = true;
};
programs = {
editors = {
helix.enable = true;
};
terminals = {
foot.enable = true;
};
};
};
services = {
kanata.enable = true;
};
other = {
system.username = "cr";
};
programs = {
ssh.enable = true;
btop.enable = true;
nh.enable = true;
thunar.enable = true;
};
};
system.stateVersion = "23.11";
}

8
hosts/world/default.nix Normal file
View file

@ -0,0 +1,8 @@
_: {
imports = [
./configuration.nix
./programs.nix
./hardware-configuration.nix
./hardware
];
}

View file

@ -0,0 +1,33 @@
{
config = {
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/10318654-ed20-43f6-885d-35366a427581";
fileSystems = {
"/boot" = {
device = "/dev/disk/by-uuid/5D7D-FC52";
fsType = "vfat";
};
"/" = {
device = "/dev/disk/by-uuid/e353013b-8ac7-40ed-80f2-ddbea21b8d5e";
fsType = "btrfs";
options = ["compress=zstd" "noatime"];
};
"/nix" = {
device = "/dev/disk/by-uuid/e353013b-8ac7-40ed-80f2-ddbea21b8d5e";
fsType = "btrfs";
options = ["subvol=nix" "compress=zstd" "noatime"];
};
"/home" = {
device = "/dev/disk/by-uuid/e353013b-8ac7-40ed-80f2-ddbea21b8d5e";
fsType = "btrfs";
options = ["subvol=home" "compress=zstd" "noatime"];
};
};
# swapDevices = [
# {
# device = "/swap/swapfile";
# size = (1024 * 16) + (1024 * 2);
# }
# ];
};
}

View file

@ -0,0 +1,35 @@
{
config,
lib,
modulesPath,
...
}: {
imports = [
# (modulesPath + "/installer/cd-dvd/installation-cd-minimal.nix")
(modulesPath + "/installer/scan/not-detected.nix")
];
boot = {
initrd = {
availableKernelModules = ["xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
kernelModules = [];
};
kernelModules = ["kvm-intel"];
blacklistedKernelModules = ["nouveau" "nvidia" "nvidia_drm" "nvidia_modeset"];
kernelParams = ["mem_sleep_default=deep"];
extraModulePackages = [];
extraModprobeConfig = ''
blacklist nouveau
options nouveau modeset=0
'';
};
# Earlier font setup
console.earlySetup = true;
# Enable firmware updates via `fwupdmgr`.
services.fwupd.enable = lib.mkDefault true;
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -0,0 +1 @@
_: {imports = [./monitors.nix];}

View file

@ -0,0 +1,16 @@
_: {
modules.system.hardware.monitors = {
eDP-1 = {
resolution = {
x = 1920;
y = 1080;
};
scale = 1;
refreshRate = 60;
position = {
x = 1920;
y = 0;
};
};
};
}

42
hosts/world/programs.nix Normal file
View file

@ -0,0 +1,42 @@
{
self,
pkgs,
...
}: {
environment.systemPackages = builtins.attrValues {
inherit
(pkgs)
calc
comma
difftastic
evince
eza
gcc
gh
grc
gparted
git
httpie
imagemagick
img2pdf
imv
inetutils
jujutsu
just
lazygit
libtool
librewolf
linuxHeaders
mpv
networkmanagerapplet
microfetch
nmap
pfetch
polkit
ripgrep
smartmontools
util-linux
wireguard-tools
;
};
}

View file

@ -4,7 +4,7 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (lib.modules) mkForce; inherit (lib.modules) mkForce mkDefault;
inherit (lib.options) mkOption mkEnableOption; inherit (lib.options) mkOption mkEnableOption;
inherit (lib.types) int; inherit (lib.types) int;
@ -52,7 +52,7 @@ in {
}; };
loader = { loader = {
efi.canTouchEfiVariables = true; efi.canTouchEfiVariables = true;
timeout = cfg.timeout; timeout = mkDefault cfg.timeout;
systemd-boot = { systemd-boot = {
enable = cfg.systemd-boot.enable; enable = cfg.systemd-boot.enable;
# INFO: Leaving this enabled is a security vulneratibility, # INFO: Leaving this enabled is a security vulneratibility,