# Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). { config, pkgs, lib, inputs, ... }: { imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix ../../modules/flatpak.nix ../../modules/gpg.nix #../../modules/xanmod-kernel.nix #../../modules/kernel-testing.nix ../../modules/misc/kernel.nix ../../modules/services/syncthing.nix ../../modules/support/ntfs.nix ../../modules/fh/writing.nix ../../modules/work/vpn.nix ../../modules/misc/faster-boot-time.nix #../../modules/hardware/ryzenmonitor.nix ../../modules/networkmanager.nix ]; custom = { tmpfs.enable = true; wireshark.enable = true; virt-manager.enable = true; nftables.enable = true; cli-tools.enable = true; nix = { index.enable = true; ld.enable = true; settings.enable = true; }; static-ip = { enable = true; interface = "enp42s0"; ip = "192.168.0.11"; #dns = "127.0.0.1"; dns = "192.168.0.10"; #gateway = "192.168.0.10"; }; misc = { docker.enable = true; }; services = { syncthing = { enable = true; }; }; hardware = { android.enable = true; amd-gpu.enable = true; amd-gpu.rocm.enable = true; nvidia = { enable = false; clock = { enable = true; min = 210; max = 1755; offset = 230; }; }; firmware.enable = true; ssd.enable = true; wooting.enable = true; tpm.enable = true; #tablet.enable = true; }; graphical = { audio.enable = true; code = { enable = true; android.enable = false; }; #emulators.enable = true; games = { enable = true; enablePreinstalled = true; enableVr = true; }; ime.enable = true; noise-supression.enable = true; obs.enable = true; gpu-screen-recorder-ui.enable = true; #openrgb.enable = true; sddm.enable = true; nightlight.enable = true; #plasma.enable = true; #i3.enable = true; #sway.enable = true; hyprland.enable = true; #gnome.enable = true; #cosmic.enable = true; shared.enable = true; basics.enable = true; stylix = { enable = true; base16Scheme = import ../../modules/themes/tsukasa.nix; image = ../../tsukasa.jpg; }; }; }; services.ollama = { enable = false; acceleration = "rocm"; }; virtualisation.waydroid.enable = false; systemd.user.services.scheibnkleister-presence = { description = "scheibnkleister-presence"; wantedBy = [ "graphical-session.target" ]; wants = [ "graphical-session.target" ]; after = [ "graphical-session.target" ]; serviceConfig = { Type = "simple"; ExecStart = "${pkgs.scheibnkleister-presence}/bin/scheibnkleister-presence"; Restart = "on-failure"; RestartSec = 1; TimeoutStopSec = 10; }; }; # apple shit #services.usbmuxd.enable = true; environment.systemPackages = with pkgs; [ #inputs.quickshell.packages.x86_64-linux.default #kdePackages.qtdeclarative #libimobiledevice #ifuse # optional, to mount using 'ifuse' ]; networking.firewall.allowedTCPPorts = [ 6567 ]; # mindustry networking.firewall.allowedUDPPorts = [ 6567 ]; # mindustry mainUser.layout = "de"; mainUser.variant = "us"; age.identityPaths = [ /home/kopatz/.ssh/id_rsa ]; # fix index services.xserver.extraConfig = '' Section "Monitor" Identifier "DisplayPort-1" Option "PreferredMode" "2880x1600" EndSection ''; # Bootloader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; boot.binfmt.emulatedSystems = [ "aarch64-linux" ]; networking.hostName = "kop-pc"; # Define your hostname. # Enable networking boot.initrd.systemd.network.wait-online.enable = false; systemd.network.wait-online.enable = false; #services.nscd.enableNsncd = false; #disable firewall when doing ipv6 vm stuff #networking.firewall.enable = lib.mkForce false; # Enable the X11 windowing system. services.xserver.enable = true; # Configure console keymap console.keyMap = "en"; # Enable CUPS to print documents. # disable until CVE-2024-47176, CVE-2024-47076, CVE-2024-47175, and CVE-2024-47177 is fixed services.printing.enable = false; services.printing.drivers = [ pkgs.brlaser ]; services.avahi = { enable = false; nssmdns4 = true; openFirewall = true; }; # Enable automatic login for the user. #services.xserver.displayManager.autoLogin.enable = true; #services.xserver.displayManager.autoLogin.user = "kopatz"; # Allow unfree packages nixpkgs.config.allowUnfree = true; security.pki.certificates = [ '' -----BEGIN CERTIFICATE----- MIIBjTCCATKgAwIBAgIRAMVH2+JHZ3wm2fLUlKjTYDswCgYIKoZIzj0EAwIwJDEM MAoGA1UEChMDS29wMRQwEgYDVQQDEwtLb3AgUm9vdCBDQTAeFw0yMzEyMDgxNDUx MTZaFw0zMzEyMDUxNDUxMTZaMCQxDDAKBgNVBAoTA0tvcDEUMBIGA1UEAxMLS29w IFJvb3QgQ0EwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATdZBOkNynShXipzhuX f6dUByD3chNupNWsagYC5AlPRJT9fAeHEIK/bxWkFwRtLBDopWvBu9lHahBgpHc7 y7rTo0UwQzAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBATAdBgNV HQ4EFgQU9AVtwipW5HDBLfZRH1KZCnIKCfowCgYIKoZIzj0EAwIDSQAwRgIhAMHj AipNdhQKIYPvMt/h1uW4xP3NTkitnmshM09+rIasAiEAlSalGddXDkqJBHhPD+Fr gpuVkfVkA8gQCXNs5F9TnxA= -----END CERTIFICATE----- '' ]; # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions # on your system were taken. It‘s perfectly fine and recommended to leave # this value at the release version of the first install of this system. # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). system.stateVersion = "23.05"; # Did you read the comment? }