nixos/configuration.nix
2026-07-03 11:13:43 +02:00

112 lines
2.7 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ config, pkgs, ... }:
{
imports = [
./hardware-configuration.nix
./easyroam.nix
./stylix.nix
./nixvim.nix
];
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.kernelPackages = pkgs.linuxPackages;
nix.settings.experimental-features = [
"nix-command"
"flakes"
];
nix.package = pkgs.lixPackageSets.stable.lix;
nix.settings.trusted-users = [ "lucy" ];
networking.hostName = "nixos"; # Define your hostname.
networking.networkmanager.enable = true;
networking.networkmanager.wifi.powersave = false;
networking.wireless.enable = true;
time.timeZone = "Europe/Berlin";
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";
};
services.xserver.enable = true;
services.displayManager.gdm.enable = true;
services.desktopManager.gnome.enable = true;
services.xserver.xkb = {
layout = "eu";
variant = "";
};
security.doas.enable = true;
security.sudo.enable = false;
security.doas.extraRules = [
{
users = [
"lucy"
"root"
];
groups = [ "wheel" ];
keepEnv = true;
persist = true; # Optional, only require password verification a single time
}
];
programs.bash.interactiveShellInit = ''
complete -F _command doas
'';
# Enable CUPS to print documents.
services.printing.enable = true;
# Enable sound with pipewire.
services.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
# Enable touchpad support (enabled default in most desktopManager).
services.libinput.enable = true;
hardware.opentabletdriver = {
enable = true;
daemon.enable = true;
};
# Define a user account. Don't forget to set a password with ‘passwd’.
fonts.packages = with pkgs; [
noto-fonts
noto-fonts-cjk-sans
noto-fonts-color-emoji
iosevka
nerd-fonts.symbols-only
];
users.users."lucy" = {
isNormalUser = true;
description = "lucy";
extraGroups = [
"networkmanager"
"wheel"
];
};
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
git
clang-tools
gcc
cargo
gnomeExtensions.user-themes
gnomeExtensions.blur-my-shell
];
# DO NOT CHANGE!!
system.stateVersion = "26.05"; # Did you read the comment?
}