# Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page, on # https://search.nixos.org/options and in the NixOS manual (`nixos-help`). { config, lib, pkgs, ... }: { imports = [ ./hardware.nix ]; # Configure Nix nix.settings = { experimental-features = [ "nix-command" "flakes" ]; substituters = [ "https://cache.games01.kb-one.de" ]; trusted-public-keys = [ "cache.game01.kb-one.de:XcqI+uobV7EoTKuRmnzYup/+oSfn8uLwnsiQFp8dk/g=" ]; }; # nixpkgs.config.allowUnsupportedSystem = true; nixpkgs.config.allowUnfree = true; # Use the GRUB 2 boot loader. boot.loader.grub.enable = true; # Define on which hard drive you want to install Grub. boot.loader.grub.device = "/dev/sda"; # or "nodev" for efi only networking.hostName = "Rubtrm"; # Define your hostname. networking.networkmanager.enable = true; # Set your time zone. time.timeZone = "Europe/Amsterdam"; # Select internationalisation properties. i18n.defaultLocale = "en_US.UTF-8"; console = { font = "Lat2-Terminus16"; keyMap = lib.mkForce "de"; useXkbConfig = true; # use xkb.options in tty. }; # Enable the X11 windowing system. services.xserver.enable = true; services.xserver.videoDrivers = [ "modesetting" "fbdev" "vesa" "intel_drv" "intel-media-sdk" ]; # Enable Desktop Environment. services.displayManager.sddm.enable = true; # services.displayManager.sddm.wayland.enable = true; # services.xserver.displayManager.lightdm.enable = true; # services.desktopManager.plasma6.enable = true; # services.xserver.desktopManager.plasma5.enable = true; services.xserver.desktopManager.xfce.enable = true; # services.xserver.desktopManager.lxqt.enable = true; # Configure keymap in X11 services.xserver.xkb = { layout = "de"; variant = ""; }; # Enable sound with pipewire. hardware.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; # Define a user account. Don't forget to set a password with ‘passwd’. users.users.kb = { isNormalUser = true; description = "kB"; extraGroups = [ "wheel" "networkmanager" "input" ]; packages = with pkgs; [ tree internal.numen ]; }; # List packages installed in system profile. To search, run: # $ nix search wget environment.systemPackages = with pkgs; [ vim wget git btop fastfetch ]; # Some programs need SUID wrappers, can be configured further or are # started in user sessions. # programs.mtr.enable = true; # programs.gnupg.agent = { # enable = true; # enableSSHSupport = true; # }; # Enable the OpenSSH daemon. # services.openssh.enable = true; # Open ports in the firewall. # networking.firewall.allowedTCPPorts = [ ... ]; # networking.firewall.allowedUDPPorts = [ ... ]; # Needed for dotool to act on numen voice commands services.udev.extraRules = '' KERNEL=="uinput", GROUP="input", MODE="0660", OPTIONS+="static_node=uinput" ''; # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, system.stateVersion = "24.05"; # Did you read the comment? }