142 lines
3.8 KiB
Nix
142 lines
3.8 KiB
Nix
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.ranger
|
|
pkgs.gparted
|
|
pkgs.lazygit
|
|
|
|
pkgs.firefox
|
|
pkgs.fuzzel
|
|
|
|
pkgs.gamescope
|
|
];
|
|
|
|
programs.git.config.user = {
|
|
name = "akulij";
|
|
email = "aakulij@gmail.com";
|
|
};
|
|
|
|
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" ];
|
|
}
|