Files
nixos-conf/hosts/desktop/configuration.nix
T
KeksNino 223b012798 remove gsr-ui input + add office.nix
remove gsr-ui input as it has been merged into nixpkgs
2026-09-08 18:24:51 +02:00

206 lines
4.3 KiB
Nix

{
pkgs,
sls-steam,
options,
...
}:
{
imports = [
./boot.nix
./drives.nix
./packages.nix
./hardware-configuration.nix
../../modules/git.nix
../../modules/office.nix
../../modules/scripts.nix
../../modules/desktop/vr.nix
../../modules/virtualization.nix
../../modules/programs/nixvim/neovim.nix
];
environment.etc."libinput/local-overrides.quirks".text = ''
[No Debounce]
MatchUdevType=mouse
ModelBouncingKeys=1
'';
nix.settings.experimental-features = [
"nix-command"
"flakes"
];
xdg = {
mime.defaultApplications = {
"inode/directory" = [ "nemo.desktop" ];
"application/x-gnome-saved-search" = [ "nemo.desktop" ];
};
};
hardware.graphics.enable = true;
hardware.graphics.enable32Bit = true;
services.hardware.openrgb.enable = true;
hardware.bluetooth = {
enable = true;
powerOnBoot = false;
};
networking = {
hostName = "nixos-desktop";
networkmanager.enable = true;
firewall.enable = false;
};
# Set your time zone.
time.timeZone = "Europe/Berlin";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
console.keyMap = "de";
programs.fish.enable = true;
users.users.user = {
isNormalUser = true;
description = "user";
uid = 1000;
extraGroups = [
"networkmanager"
"wheel"
"docker"
"audio"
];
shell = pkgs.fish;
};
nixpkgs.config.allowUnfree = true;
programs.niri.enable = true;
programs.hyprland = {
enable = true;
xwayland.enable = true;
};
programs.hyprlock.enable = true;
# qt = {
# enable = true;
# platformTheme = "qt5ct";
# style = "breeze";
# };
programs.appimage = {
enable = true;
binfmt = true;
package = pkgs.appimage-run.override {
extraPkgs = pkgs: [
pkgs.zstd
];
};
};
virtualisation.docker.enable = true;
services.gvfs.enable = true;
services.goxlr-utility.enable = true;
services.flatpak.enable = true;
services.lact.enable = true;
programs.kdeconnect.enable = true;
services.rsync.enable = true;
programs.neovim.enable = true;
services.ratbagd.enable = true;
programs.nh = {
enable = true;
flake = "/home/user/nix-config";
};
programs.gamemode.enable = true;
programs.steam = {
enable = true;
protontricks.enable = true;
extraCompatPackages = with pkgs; [ proton-ge-bin ];
package = pkgs.steam.override {
extraEnv = {
LD_AUDIT = "${sls-steam.packages.${pkgs.stdenv.hostPlatform.system}.sls-steam}/library-inject.so:${
sls-steam.packages.${pkgs.stdenv.hostPlatform.system}.sls-steam
}/SLSsteam.so";
};
};
};
programs.gpu-screen-recorder = {
enable = true;
ui.enable = true;
};
programs.nix-ld = {
enable = true;
libraries =
options.programs.nix-ld.libraries.default
++ (with pkgs; [
dbus # libdbus-1.so.3
fontconfig # libfontconfig.so.1
freetype # libfreetype.so.6
glib # libglib-2.0.so.0
libGL # libGL.so.1
libxkbcommon # libxkbcommon.so.0
libx11 # libX11.so.6
wayland
krb5
qt6.qtdeclarative
qt6.qtbase
qt6.qtwayland
brotli
]);
};
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
extraConfig.pipewire = {
"98-crackling-fix" = {
"context.properties" = {
"default.clock.quantum" = 1024;
"default.clock.min-quantum" = 1024;
"default.clock.max-quantum" = 8192;
};
};
};
};
security.pam.loginLimits = [
{
domain = "@users";
item = "rtprio";
type = "-";
value = "95";
}
{
domain = "@users";
item = "memlock";
type = "-";
value = "unlimited";
}
];
system.stateVersion = "24.11";
system.autoUpgrade.enable = false;
system.autoUpgrade.allowReboot = true;
}