2025-07-20 17:46:39 +02:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
imports =
|
|
|
|
|
[ ./hardware-configuration.nix ];
|
2025-07-21 23:55:59 +02:00
|
|
|
|
|
|
|
|
boot = {
|
|
|
|
|
loader.systemd-boot.enable = true;
|
|
|
|
|
loader.efi.canTouchEfiVariables = true;
|
|
|
|
|
initrd = {
|
|
|
|
|
enable = true;
|
|
|
|
|
luks.devices."luks-654125f4-7b26-408d-b1b5-d31648ec8770".device = "/dev/disk/by-uuid/654125f4-7b26-408d-b1b5-d31648ec8770";
|
|
|
|
|
verbose = false;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plymouth = {
|
|
|
|
|
enable = true;
|
|
|
|
|
theme = "rings";
|
|
|
|
|
themePackages = with pkgs; [
|
|
|
|
|
# By default we would install all themes
|
|
|
|
|
(adi1090x-plymouth-themes.override {
|
|
|
|
|
selected_themes = [ "rings" ];
|
|
|
|
|
})
|
|
|
|
|
];
|
|
|
|
|
};
|
|
|
|
|
consoleLogLevel = 3;
|
|
|
|
|
kernelParams = [
|
|
|
|
|
"quiet"
|
|
|
|
|
"splash"
|
|
|
|
|
"boot.shell_on_fail"
|
|
|
|
|
"udev.log_priority=3"
|
|
|
|
|
"rd.systemd.show_status=auto"
|
|
|
|
|
"mem_sleep_default=deep"
|
|
|
|
|
];
|
|
|
|
|
loader.timeout = 0;
|
|
|
|
|
#resumeDevice = "/dev/disk/by-uuid/c49249b9-0d68-44af-97e0-e399c8409408";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
powerManagement.enable = true;
|
|
|
|
|
services.logind.lidSwitch = "suspend";
|
|
|
|
|
services.logind.powerKey = "suspend";
|
|
|
|
|
services.logind.powerKeyLongPress = "poweroff";
|
|
|
|
|
systemd.sleep.extraConfig = ''
|
|
|
|
|
SuspendState=mem
|
|
|
|
|
'';
|
2025-07-21 20:16:37 +02:00
|
|
|
|
2025-07-20 17:46:39 +02:00
|
|
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
|
|
|
|
|
|
|
|
|
networking.hostName = "electra";
|
|
|
|
|
networking.networkmanager.enable = true;
|
|
|
|
|
|
2025-07-21 20:16:37 +02:00
|
|
|
time.timeZone = "Europe/Stockholm";
|
2025-07-20 17:46:39 +02:00
|
|
|
i18n.defaultLocale = "en_US.UTF-8";
|
|
|
|
|
|
2025-07-21 20:16:37 +02:00
|
|
|
i18n.extraLocaleSettings = {
|
|
|
|
|
LC_ADDRESS = "sv_SE.UTF-8";
|
|
|
|
|
LC_IDENTIFICATION = "sv_SE.UTF-8";
|
|
|
|
|
LC_MEASUREMENT = "sv_SE.UTF-8";
|
|
|
|
|
LC_MONETARY = "sv_SE.UTF-8";
|
|
|
|
|
LC_NAME = "sv_SE.UTF-8";
|
|
|
|
|
LC_NUMERIC = "sv_SE.UTF-8";
|
|
|
|
|
LC_PAPER = "sv_SE.UTF-8";
|
|
|
|
|
LC_TELEPHONE = "sv_SE.UTF-8";
|
|
|
|
|
LC_TIME = "sv_SE.UTF-8";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
2025-07-21 23:55:59 +02:00
|
|
|
services.displayManager = {
|
|
|
|
|
gdm.enable = true;
|
|
|
|
|
gdm.wayland = true;
|
|
|
|
|
};
|
|
|
|
|
services.desktopManager.gnome.enable = true;
|
|
|
|
|
services.xserver.xkb.layout = "se";
|
|
|
|
|
|
|
|
|
|
services.gnome.gnome-keyring.enable = true;
|
|
|
|
|
nix.settings.auto-optimise-store = true;
|
|
|
|
|
nix.gc = {
|
|
|
|
|
automatic = true;
|
|
|
|
|
dates = "weekly";
|
|
|
|
|
options = "--delete-older-than 7d";
|
2025-07-20 17:46:39 +02:00
|
|
|
};
|
|
|
|
|
|
2025-07-21 20:16:37 +02:00
|
|
|
console.keyMap = "sv-latin1";
|
|
|
|
|
|
2025-07-20 17:46:39 +02:00
|
|
|
services.printing.enable = true;
|
2025-07-21 23:55:59 +02:00
|
|
|
services.pulseaudio.enable = false;
|
2025-07-20 17:46:39 +02:00
|
|
|
services.pipewire = {
|
|
|
|
|
enable = true;
|
|
|
|
|
alsa.enable = true;
|
|
|
|
|
pulse.enable = true;
|
|
|
|
|
jack.enable = true;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
services.fwupd.enable = true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
programs.fish.enable = true;
|
2025-07-21 23:55:59 +02:00
|
|
|
programs.steam = {
|
|
|
|
|
enable = true;
|
|
|
|
|
remotePlay.openFirewall = true;
|
|
|
|
|
};
|
2025-07-20 17:46:39 +02:00
|
|
|
|
|
|
|
|
environment.systemPackages = with pkgs; [
|
2025-07-21 23:55:59 +02:00
|
|
|
# CLI tools
|
2025-07-20 17:46:39 +02:00
|
|
|
git
|
|
|
|
|
wget
|
|
|
|
|
curl
|
|
|
|
|
btop
|
|
|
|
|
ripgrep
|
2025-07-21 23:55:59 +02:00
|
|
|
bat
|
2025-07-20 17:46:39 +02:00
|
|
|
fd
|
|
|
|
|
eza
|
2025-07-21 23:55:59 +02:00
|
|
|
|
|
|
|
|
# Chat
|
|
|
|
|
discord
|
|
|
|
|
signal-desktop
|
|
|
|
|
|
|
|
|
|
# Browser
|
|
|
|
|
firefox
|
|
|
|
|
|
|
|
|
|
# Editor
|
|
|
|
|
vscode
|
|
|
|
|
obsidian
|
|
|
|
|
|
|
|
|
|
# Virtualization
|
|
|
|
|
podman
|
|
|
|
|
|
|
|
|
|
# GNOME tweaks and extensions
|
|
|
|
|
gnome-tweaks
|
|
|
|
|
dconf-editor
|
|
|
|
|
gnomeExtensions.ddterm
|
|
|
|
|
|
|
|
|
|
# Other
|
|
|
|
|
syncthing
|
|
|
|
|
steam
|
2025-07-20 17:46:39 +02:00
|
|
|
];
|
|
|
|
|
|
|
|
|
|
virtualisation.podman = {
|
|
|
|
|
enable = true;
|
|
|
|
|
dockerCompat = true;
|
|
|
|
|
defaultNetwork.settings.dns_enabled = true;
|
|
|
|
|
};
|
|
|
|
|
|
2025-07-21 23:55:59 +02:00
|
|
|
users.users.alisceon = {
|
|
|
|
|
isNormalUser = true;
|
|
|
|
|
extraGroups = [ "wheel" "networkmanager" "podman" ];
|
|
|
|
|
shell = pkgs.fish;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
security.sudo.wheelNeedsPassword = false;
|
2025-07-20 17:46:39 +02:00
|
|
|
programs.dconf.enable = true;
|
|
|
|
|
|
|
|
|
|
environment.shells = with pkgs; [ fish ];
|
|
|
|
|
|
|
|
|
|
system.stateVersion = "24.05";
|
|
|
|
|
}
|