{ config, pkgs, inputs, ... }: { imports = [ ./programs/kakoune.nix ./programs/pastebin.nix ]; nix = { package = pkgs.nixFlakes; extraOptions = '' experimental-features = nix-command flakes ''; }; nixpkgs.overlays = [ inputs.nur.overlay ]; networking.networkmanager.enable = true; time.timeZone = "Europe/Amsterdam"; i18n.defaultLocale = "en_US.UTF-8"; i18n.extraLocaleSettings = { LC_ADDRESS = "nl_NL.UTF-8"; LC_IDENTIFICATION = "nl_NL.UTF-8"; LC_MEASUREMENT = "nl_NL.UTF-8"; LC_MONETARY = "nl_NL.UTF-8"; LC_NAME = "nl_NL.UTF-8"; LC_NUMERIC = "nl_NL.UTF-8"; LC_PAPER = "nl_NL.UTF-8"; LC_TELEPHONE = "nl_NL.UTF-8"; LC_TIME = "nl_NL.UTF-8"; }; services.xserver.enable = true; services.xserver.displayManager.gdm.enable = true; services.xserver.desktopManager.gnome.enable = true; services.logind.lidSwitchExternalPower = "ignore"; services.fwupd.enable = true; services.xserver = { xkb.layout = "us"; xkb.variant = "euro"; }; services.printing.enable = true; sound.enable = true; hardware.pulseaudio.enable = false; security.rtkit.enable = true; services.pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; }; nixpkgs.config.packageOverrides = pkgs: { vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; }; }; hardware.opengl = { enable = true; extraPackages = with pkgs; [ intel-media-driver # LIBVA_DRIVER_NAME=iHD vaapiIntel # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium) vaapiVdpau libvdpau-va-gl ]; }; users.users.steph = { isNormalUser = true; description = "Steph"; extraGroups = [ "networkmanager" "wheel" "dialout" "podman" "docker" ]; packages = with pkgs; [ ]; }; networking.firewall.allowedTCPPorts = [ 8080 ]; networking.extraHosts = '' 86.95.92.180 apprise.prod.gaiaplant.app 192.145.59.184 marshallingyard.steph.tools ''; services.avahi.enable = false; virtualisation.podman.enable = true; virtualisation.docker.enable = true; nixpkgs.config.allowUnfree = true; fonts.packages = with pkgs; [ (nerdfonts.override { fonts = [ "FiraCode" "DroidSansMono" ]; }) noto-fonts noto-fonts-cjk noto-fonts-emoji inter google-fonts vistafonts ]; environment.systemPackages = with pkgs; [ podman docker-compose fprintd libfprint-2-tod1-vfs0090 udev usbutils gnome.gnome-tweaks gnomeExtensions.tray-icons-reloaded gnomeExtensions.clipboard-history gnomeExtensions.alphabetical-app-grid gnomeExtensions.caffeine aspell aspellDicts.en aspellDicts.nl gnome.networkmanager-openvpn ]; services.udev.packages = with pkgs; [ gnome.gnome-settings-daemon android-udev-rules ]; services.fprintd.enable = true; services.power-profiles-daemon.enable = true; services.tlp.enable = false; system.stateVersion = "22.05"; # Did you read the comment? systemd.services."99setbacklight" = let set-backlight-script = (pkgs.writeShellApplication { name = "set-backlight-script"; text = '' for d in /sys/class/backlight/*; do cd "$d" echo $(( $(cat max_brightness) / 2)) > brightness done ''; }); in { enable = true; after = ["systemd-backlight@.service"]; description = "bar"; unitConfig = { Type = "simple"; }; serviceConfig = { ExecStart = "${set-backlight-script}/bin/set-backlight-script"; }; wantedBy = [ "multi-user.target" ]; }; }