world: init
This commit is contained in:
parent
184253c3fe
commit
9fbc6e83ba
9 changed files with 192 additions and 2 deletions
|
@ -61,4 +61,8 @@ in {
|
||||||
system = "aarch64-linux";
|
system = "aarch64-linux";
|
||||||
hostname = "tower";
|
hostname = "tower";
|
||||||
};
|
};
|
||||||
|
world = mkSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
hostname = "world";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
51
hosts/world/configuration.nix
Normal file
51
hosts/world/configuration.nix
Normal 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
8
hosts/world/default.nix
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
_: {
|
||||||
|
imports = [
|
||||||
|
./configuration.nix
|
||||||
|
./programs.nix
|
||||||
|
./hardware-configuration.nix
|
||||||
|
./hardware
|
||||||
|
];
|
||||||
|
}
|
33
hosts/world/filesystem/default.nix
Normal file
33
hosts/world/filesystem/default.nix
Normal 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);
|
||||||
|
# }
|
||||||
|
# ];
|
||||||
|
};
|
||||||
|
}
|
35
hosts/world/hardware-configuration.nix
Normal file
35
hosts/world/hardware-configuration.nix
Normal 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;
|
||||||
|
}
|
1
hosts/world/hardware/default.nix
Normal file
1
hosts/world/hardware/default.nix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
_: {imports = [./monitors.nix];}
|
16
hosts/world/hardware/monitors.nix
Normal file
16
hosts/world/hardware/monitors.nix
Normal 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
42
hosts/world/programs.nix
Normal 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
|
||||||
|
;
|
||||||
|
};
|
||||||
|
}
|
|
@ -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,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue