mirror of
https://github.com/Swarsel/.dotfiles.git
synced 2025-12-06 17:17:22 +01:00
180 lines
4.3 KiB
Nix
180 lines
4.3 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
#
|
|
# imports =
|
|
# [
|
|
# ./hardware-configuration.nix
|
|
# ];
|
|
#
|
|
imports = [
|
|
./hardware-configuration.nix
|
|
];
|
|
|
|
services = {
|
|
getty.autologinUser = "swarsel";
|
|
greetd.settings.initial_session.user = "swarsel";
|
|
};
|
|
|
|
boot = {
|
|
loader.systemd-boot.enable = true;
|
|
loader.efi.canTouchEfiVariables = true;
|
|
# kernelPackages = pkgs.linuxPackages_latest;
|
|
};
|
|
|
|
sops.age.sshKeyPaths = ["${config.users.users.swarsel.home}/.ssh/sops"];
|
|
|
|
networking = {
|
|
hostName = "fourside"; # Define your hostname.
|
|
nftables.enable = true;
|
|
enableIPv6 = false;
|
|
firewall.checkReversePath = false;
|
|
firewall = {
|
|
enable = true;
|
|
allowedUDPPorts = [4380 27036 14242 34197 51820]; # 34197: factorio; 4380 27036 14242: barotrauma; 51820: wireguard
|
|
allowedTCPPorts = []; # 34197: factorio; 4380 27036 14242: barotrauma; 51820: wireguard
|
|
allowedTCPPortRanges = [
|
|
{
|
|
from = 27015;
|
|
to = 27030;
|
|
} # barotrauma
|
|
{
|
|
from = 27036;
|
|
to = 27037;
|
|
} # barotrauma
|
|
];
|
|
allowedUDPPortRanges = [
|
|
{
|
|
from = 27000;
|
|
to = 27031;
|
|
} # barotrauma
|
|
{
|
|
from = 58962;
|
|
to = 58964;
|
|
} # barotrauma
|
|
];
|
|
};
|
|
};
|
|
|
|
virtualisation.virtualbox = {
|
|
host = {
|
|
enable = true;
|
|
enableExtensionPack = true;
|
|
};
|
|
# leaving this here for future notice. setting guest.enable = true will make 'restarting sysinit-reactivation.target' take till timeout on nixos-rebuild switch
|
|
guest = {
|
|
enable = false;
|
|
};
|
|
};
|
|
|
|
stylix.image = ../../wallpaper/lenovowp.png;
|
|
|
|
stylix = {
|
|
enable = true;
|
|
base16Scheme = ../../wallpaper/swarsel.yaml;
|
|
# base16Scheme = "${pkgs.base16-schemes}/share/themes/shapeshifter.yaml";
|
|
polarity = "dark";
|
|
opacity.popups = 0.5;
|
|
cursor = {
|
|
package = pkgs.capitaine-cursors;
|
|
name = "capitaine-cursors";
|
|
size = 16;
|
|
};
|
|
fonts = {
|
|
sizes = {
|
|
terminal = 10;
|
|
applications = 11;
|
|
};
|
|
serif = {
|
|
# package = (pkgs.nerdfonts.override { fonts = [ "FiraMono" "FiraCode"]; });
|
|
package = pkgs.cantarell-fonts;
|
|
# package = pkgs.montserrat;
|
|
name = "Cantarell";
|
|
# name = "FiraCode Nerd Font Propo";
|
|
# name = "Montserrat";
|
|
};
|
|
|
|
sansSerif = {
|
|
# package = (pkgs.nerdfonts.override { fonts = [ "FiraMono" "FiraCode"]; });
|
|
package = pkgs.cantarell-fonts;
|
|
# package = pkgs.montserrat;
|
|
name = "Cantarell";
|
|
# name = "FiraCode Nerd Font Propo";
|
|
# name = "Montserrat";
|
|
};
|
|
|
|
monospace = {
|
|
package = pkgs.nerdfonts.override {fonts = ["FiraCode"];};
|
|
name = "FiraCode Nerd Font Mono";
|
|
};
|
|
|
|
emoji = {
|
|
package = pkgs.noto-fonts-emoji;
|
|
name = "Noto Color Emoji";
|
|
};
|
|
};
|
|
};
|
|
|
|
hardware = {
|
|
graphics = {
|
|
enable = true;
|
|
enable32Bit = true;
|
|
extraPackages = with pkgs; [
|
|
vulkan-loader
|
|
vulkan-validation-layers
|
|
vulkan-extension-layer
|
|
];
|
|
};
|
|
bluetooth.enable = true;
|
|
trackpoint = {
|
|
enable = true;
|
|
device = "TPPS/2 Elan TrackPoint";
|
|
};
|
|
};
|
|
|
|
programs.steam = {
|
|
enable = true;
|
|
extraCompatPackages = [
|
|
pkgs.proton-ge-bin
|
|
];
|
|
};
|
|
|
|
# Configure keymap in X11 (only used for login)
|
|
|
|
services.thinkfan = {
|
|
enable = false;
|
|
};
|
|
services.power-profiles-daemon.enable = true;
|
|
services.fprintd.enable = true;
|
|
services.fwupd.enable = true;
|
|
|
|
services.nswitch-rcm = {
|
|
enable = true;
|
|
package = pkgs.fetchurl {
|
|
url = "https://github.com/Atmosphere-NX/Atmosphere/releases/download/1.3.2/fusee.bin";
|
|
hash = "sha256-5AXzNsny45SPLIrvWJA9/JlOCal5l6Y++Cm+RtlJppI=";
|
|
};
|
|
};
|
|
|
|
users.users.swarsel = {
|
|
isNormalUser = true;
|
|
description = "Leon S";
|
|
hashedPasswordFile = config.sops.secrets.swarseluser.path;
|
|
extraGroups = ["networkmanager" "wheel" "lp" "audio" "video" "vboxusers" "scanner"];
|
|
packages = with pkgs; [];
|
|
};
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
# gog games installing
|
|
heroic
|
|
# minecraft
|
|
temurin-bin-17
|
|
(prismlauncher.override {
|
|
glfw = pkgs.glfw-wayland-minecraft;
|
|
})
|
|
];
|
|
|
|
system.stateVersion = "23.05";
|
|
}
|