mirror of
https://github.com/FabricSoul/nixos-configs.git
synced 2026-02-03 22:26:24 -05:00
Merge branch 'main' of github.com:FabricSoul/nixos-configs
This commit is contained in:
commit
5414520b55
26 changed files with 1046 additions and 205 deletions
|
|
@ -22,11 +22,12 @@
|
|||
environment.systemPackages = with pkgs; [
|
||||
vim
|
||||
git
|
||||
greetd.greetd
|
||||
greetd.tuigreet
|
||||
greetd
|
||||
tuigreet
|
||||
zsh
|
||||
home-manager
|
||||
findutils
|
||||
pulseaudio
|
||||
];
|
||||
|
||||
# Enable the OpenSSH daemon
|
||||
|
|
@ -37,7 +38,7 @@
|
|||
enable = true;
|
||||
settings = {
|
||||
default_session = {
|
||||
command = "''${pkgs.greetd.tuigreet}/bin/tuigreet --time ";
|
||||
command = "''${pkgs.tuigreet}/bin/tuigreet --time";
|
||||
user = "fabric";
|
||||
};
|
||||
};
|
||||
|
|
@ -51,4 +52,12 @@
|
|||
|
||||
# This value determines the NixOS release version
|
||||
system.stateVersion = "25.05";
|
||||
|
||||
security.rtkit.enable = true;
|
||||
services.pulseaudio.enable = false;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
32
hosts/common/optional/auto-cpufreq.nix
Normal file
32
hosts/common/optional/auto-cpufreq.nix
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
{...}: {
|
||||
services.tlp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
CPU_SCALING_GOVERNOR_ON_AC = "performance";
|
||||
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
|
||||
|
||||
CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
|
||||
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
|
||||
|
||||
CPU_MIN_PERF_ON_AC = 0;
|
||||
CPU_MAX_PERF_ON_AC = 100;
|
||||
CPU_MIN_PERF_ON_BAT = 0;
|
||||
CPU_MAX_PERF_ON_BAT = 20;
|
||||
|
||||
# Optional helps save long term battery health
|
||||
START_CHARGE_THRESH_BAT0 = 40; # 40 and bellow it starts to charge
|
||||
STOP_CHARGE_THRESH_BAT0 = 80; # 80 and above it stops charging
|
||||
};
|
||||
};
|
||||
# services.auto-cpufreq.enable = true;
|
||||
# services.auto-cpufreq.settings = {
|
||||
# battery = {
|
||||
# governor = "powersave";
|
||||
# turbo = "never";
|
||||
# };
|
||||
# charger = {
|
||||
# governor = "performance";
|
||||
# turbo = "auto";
|
||||
# };
|
||||
# };
|
||||
}
|
||||
11
hosts/common/optional/kmonad.nix
Normal file
11
hosts/common/optional/kmonad.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{...}: {
|
||||
services.kmonad = {
|
||||
enable = true;
|
||||
keyboards = {
|
||||
myKMonadOutput = {
|
||||
device = "/dev/input/event0";
|
||||
config = builtins.readFile ../../../files/keyboard.kbd;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
74
hosts/solaris/default.nix
Normal file
74
hosts/solaris/default.nix
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
# hosts/solaris/default.nix
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
# Hardware configuration
|
||||
./hardware-configuration.nix
|
||||
|
||||
# Common configurations
|
||||
../common/global
|
||||
../common/optional/fcitx5.nix
|
||||
../common/optional/bluetooth.nix
|
||||
|
||||
../common/optional/kmonad.nix
|
||||
../common/optional/auto-cpufreq.nix
|
||||
];
|
||||
|
||||
# Bootloader
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.supportedFilesystems = ["nfs"];
|
||||
|
||||
# Networking
|
||||
networking = {
|
||||
hostName = "solaris";
|
||||
networkmanager.enable = true;
|
||||
useDHCP = lib.mkDefault true;
|
||||
};
|
||||
|
||||
# User configuration
|
||||
users.users.fabric = {
|
||||
isNormalUser = true;
|
||||
description = "fabric";
|
||||
extraGroups = ["networkmanager" "wheel" "video"];
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
|
||||
services.rpcbind.enable = true;
|
||||
|
||||
fileSystems."/home/fabric/nas" = {
|
||||
device = "tatara:/nas";
|
||||
fsType = "nfs";
|
||||
options = [
|
||||
"x-systemd.automount"
|
||||
"noauto"
|
||||
"x-systemd.idle-timeout=60"
|
||||
"x-systemd.device-timeout=5"
|
||||
"x-systemd.mount-timeout=5"
|
||||
"nfsvers=4" # Use NFSv4
|
||||
"hard" # Hard mount (recommended)
|
||||
"intr" # Allow interruption
|
||||
"rsize=8192" # Read size
|
||||
"wsize=8192" # Write size
|
||||
];
|
||||
};
|
||||
|
||||
# Display manager configuration
|
||||
services.displayManager.defaultSession = "dwl";
|
||||
|
||||
# Basic system packages
|
||||
environment.systemPackages = with pkgs; [
|
||||
libinput
|
||||
libnotify
|
||||
foot
|
||||
usbutils
|
||||
ntfs3g
|
||||
powertop
|
||||
];
|
||||
|
||||
powerManagement.powertop.enable = true;
|
||||
}
|
||||
45
hosts/solaris/hardware-configuration.nix
Normal file
45
hosts/solaris/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
# 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" "ehci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" "sdhci_pci"];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["acpi_cpufreq"];
|
||||
boot.extraModulePackages = [];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/cd452eaf-7765-4bc2-b5dd-a846c47701e8";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/6026-C63E";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0077" "dmask=0077"];
|
||||
};
|
||||
|
||||
swapDevices = [
|
||||
{device = "/dev/disk/by-uuid/1cc175bd-0071-4d76-a8a6-ae483ca56aac";}
|
||||
];
|
||||
|
||||
# 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.enp0s25.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
@ -10,12 +10,12 @@
|
|||
./hardware-configuration.nix
|
||||
|
||||
# Common configurations
|
||||
../common/optional/plasma.nix
|
||||
# ../common/optional/plasma.nix
|
||||
../common/global
|
||||
../common/optional/nvidia.nix
|
||||
../common/optional/docker.nix
|
||||
../common/optional/steam.nix
|
||||
../common/optional/flatpak.nix
|
||||
# ../common/optional/flatpak.nix
|
||||
../common/optional/fcitx5.nix
|
||||
../common/optional/bluetooth.nix
|
||||
../common/optional/sunshine.nix
|
||||
|
|
@ -37,7 +37,7 @@
|
|||
users.users.fabric = {
|
||||
isNormalUser = true;
|
||||
description = "fabric";
|
||||
extraGroups = ["networkmanager" "wheel" "docker"];
|
||||
extraGroups = ["networkmanager" "wheel" "docker" "video"];
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
|
||||
|
|
@ -68,9 +68,7 @@
|
|||
};
|
||||
|
||||
# Display manager configuration
|
||||
services.displayManager.defaultSession = "hyprland";
|
||||
|
||||
programs.hyprland.enable = true;
|
||||
services.displayManager.defaultSession = "dwl";
|
||||
|
||||
# Basic system packages
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
|
|
|||
|
|
@ -14,7 +14,11 @@
|
|||
|
||||
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "thunderbolt" "usb_storage" "usbhid" "sd_mod"];
|
||||
boot.initrd.kernelModules = [];
|
||||
boot.kernelModules = ["kvm-amd"];
|
||||
boot.kernelModules = ["kvm-amd" "v4l2loopback"];
|
||||
|
||||
boot.extraModulePackages = with config.boot.kernelPackages; [
|
||||
v4l2loopback
|
||||
];
|
||||
|
||||
hardware.enableRedistributableFirmware = true;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue