let unstable = import (fetchTarball { url = "https://nixos.org/channels/nixos-unstable/nixexprs.tar.xz"; sha256 = "0k9xxn1kz32jbjzgcqxmh7czx0mrpq6zais5pzd86bii50cl40c7"; }) { }; in { modulesPath, config, lib, pkgs, ... }: { imports = [ ./hardware-configuration.nix ./disk-config.nix ]; boot = { initrd.systemd.enable = true; plymouth = { enable = true; theme = "rings"; themePackages = with pkgs; [ # By default we would install all themes (adi1090x-plymouth-themes.override { selected_themes = [ "rings" ]; }) ]; }; # Enable "Silent Boot" consoleLogLevel = 0; initrd.verbose = false; kernelParams = [ "quiet" "splash" "boot.shell_on_fail" "loglevel=3" "rd.systemd.show_status=false" "rd.udev.log_level=3" "udev.log_priority=3" ]; loader = { efi.canTouchEfiVariables = true; systemd-boot.enable = true; systemd-boot.consoleMode = "max"; # Hide the OS choice for bootloaders. # It's still possible to open the bootloader list by pressing any key # It will just not appear on screen unless a key is pressed timeout = 0; }; }; # programs.adb.enable = true; services.greetd = { enable = true; settings = rec { initial_session = { command = "${pkgs.hyprland}/bin/Hyprland"; user = "akulij"; }; default_session = initial_session; }; }; networking.hostName = "pc"; programs.hyprland = { enable = true; xwayland.enable = true; }; programs.steam = { enable = true; remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers }; nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "steam" "steam-original" "steam-unwrapped" "steam-run" ]; services.openssh = { enable = true; ports = [ 1440 ]; settings = { PasswordAuthentication = true; AllowUsers = null; # Allows all users by default. Can be [ "user1" "user2" ] UseDns = true; X11Forwarding = false; PermitRootLogin = "no"; # "yes", "without-password", "prohibit-password", "forced-commands-only", "no" }; }; environment.systemPackages = map lib.lowPrio [ # unstable.cope pkgs.curl pkgs.gitMinimal pkgs.neovim pkgs.kitty pkgs.tmux pkgs.gamescope ]; users.users.akulij = { isNormalUser = true; extraGroups = [ "wheel" ]; }; users.users.akulij.openssh.authorizedKeys.keys = [ # change this to your ssh key "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDCOZgbO0xzciMbBCSC1fZLEY8qIB4c+UK0niwVvaphOPp87xjE+eyeHDhQLntxhTeOgAob24pBmhycAkQXxu0FcDZN7RmZOyNTFFQPd2w8KRgGwUnZtfOFUaT9KxV0xpnfnJN+PeCeys9/jz5XHBzlei0HPuaC85KcKqa1GMNldtFELqa1MySAIQ0mV3TynLooqqjdr2kqou9DPEqC2A2VrdDn2FFc1+RuaiEitmOG2rLUHLSje2R+GN3kkPPtWI/CzapwHC/j7hcgPEPZcAT5Pe+cQqTMXpMGK2ZFsQsgCIhwPfKg/o8LN5QKYm8sJb42OftgTpoUJNMMWvRYv9J1lRa57wLyVNl56wchj/d5kh13CJ+WDR7KnaY00xlRHxXChp9ZU7sqFMgBOlS1OUQv5iDdUerLPrSIr9JqMVtkcP1betqDKFZLJYvRpV35IQX6FsDOuzTYkojX8gKsxPL6Prq0EHwtuatvGxNq/en7VBbzHRpf32+x8luypkFLoKM=" ]; environment.shellAliases = { u = "sudo -E nixos-rebuild switch --flake .#"; n = "nvim"; se = "sudo -E nvim"; gs = "git status"; gd = "git diff"; ga = "git add"; gc = "git commit"; }; system.stateVersion = "24.11"; nix.settings.experimental-features = [ "nix-command" "flakes" ]; }