This repository has been archived on 2026-03-10. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
nixos/hosts/magicman/configuration.nix
Torjus Håkestad 4f1c7dc0bb
All checks were successful
Run nix flake check / flake-check (push) Successful in 2m6s
system: extract shared configuration from host configs
Extract duplicated configuration from gunter and magicman into shared
system modules. This eliminates ~116 lines of duplication and fixes a
malformed gdm.wayland config in magicman.

New shared modules:
- boot.nix: systemd-boot, EFI, common kernel params
- networking.nix: NetworkManager, nftables, firewall base
- hyprland.nix: System-level Hyprland and display manager
- xdg.nix: XDG session variables and portal setup
- nix-config.nix: Nix daemon settings, binary caches, trusted users
- nixpkgs-config.nix: allowUnfree and kernel packages default

Updated modules:
- locale.nix: Added timezone configuration

Benefits:
- Reduces duplication: net reduction of 53 lines
- Magicman gains custom cache substituters for faster builds
- Fixes malformed gdm.wayland config in magicman
- Both hosts use identical base configuration
- Host-specific config clearly stands out

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-31 09:44:05 +01:00

83 lines
1.8 KiB
Nix

{
pkgs,
...
}:
{
imports = [ ./hardware-configuration.nix ];
# Bootloader stuff
boot.kernelParams = [
"acpi_backlight=native"
"video=efifb:nobgrt"
"loglevel=3"
"rd.udev.log_level=3"
];
boot.loader.systemd-boot.configurationLimit = 3;
boot.initrd.systemd.enable = true;
boot.plymouth = {
enable = true;
themePackages = with pkgs; [ catppuccin-plymouth ];
theme = "catppuccin-macchiato";
extraConfig = ''
UseFirmwareBackground=false
'';
};
# Networking stuff
networking.hostName = "magicman"; # Define your hostname.
hardware = {
enableRedistributableFirmware = true;
enableAllFirmware = true;
# Enable opengl
graphics = {
enable = true;
extraPackages = with pkgs; [
intel-media-driver
libva-vdpau-driver
libvdpau-va-gl
];
};
};
# Bluetooth stuff
services.blueman.enable = true;
hardware.bluetooth.enable = true;
services.pipewire.wireplumber.extraConfig = {
"monitor.bluez.properties" = {
"bluez5.enable-sbc-xq" = true;
"bluez5.enable-msbc" = true;
"bluez5.enable-hw-volume" = true;
"bluez5.roles" = [
"hsp_hs"
"hsp_ag"
"hfp_hf"
"hfp_ag"
];
};
};
# TRIM
services.fstrim.enable = true;
programs.steam.enable = true;
# Install system-wide packages
environment.systemPackages = with pkgs; [
vim
wget
curl
git
];
# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
# and migrated your data accordingly.
#
# For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
system.stateVersion = "23.11"; # Did you read the comment?
}