dotfiles/machines/futomaki/default.nix

132 lines
2.8 KiB
Nix
Raw Normal View History

2023-02-10 07:46:37 +01:00
{
config,
pkgs,
...
}: let
mainUser = "winston";
2023-02-10 07:46:37 +01:00
in {
nixpkgs.config.allowUnfree = true;
imports = [./hardware.nix];
boot = {
kernelPackages = pkgs.linuxPackages_latest;
loader.efi.canTouchEfiVariables = true;
loader.systemd-boot.enable = true;
# for nvidia & minimalism
loader.systemd-boot.consoleMode = "0";
# plymouth
plymouth = {
enable = true;
theme = "catppuccin-mocha";
themePackages = [pkgs.nur.repos.nekowinston.plymouth-theme-catppuccin];
};
2023-02-10 07:46:37 +01:00
kernelParams = ["quiet" "splash" "vt.global_cursor_default=0"];
initrd.systemd.enable = true;
};
hardware = {
bluetooth.enable = true;
};
networking = {
hostName = "futomaki";
networkmanager.enable = true;
firewall.enable = true;
};
time.timeZone = "Europe/Vienna";
i18n.defaultLocale = "en_US.UTF-8";
2023-02-19 02:06:31 +01:00
environment.systemPackages = with pkgs; [
# file management
p7zip
unzip
zip
gnome.file-roller
# thumbnails
webp-pixbuf-loader
ffmpegthumbnailer
];
2023-02-12 08:05:51 +01:00
programs = {
dconf.enable = true;
2023-02-12 16:35:19 +01:00
nix-ld.enable = true;
noisetorch.enable = true;
2023-02-12 08:05:51 +01:00
thunar = {
enable = true;
plugins = with pkgs.xfce; [
thunar-archive-plugin
thunar-volman
];
};
};
2023-02-14 19:17:18 +01:00
security = {
polkit.enable = true;
rtkit.enable = true;
};
systemd = {
packages = [pkgs.polkit_gnome];
user.services.polkit-gnome-authentication-agent-1 = {
unitConfig = {
Description = "polkit-gnome-authentication-agent-1";
2023-02-10 07:46:37 +01:00
Wants = ["graphical-session.target"];
WantedBy = ["graphical-session.target"];
After = ["graphical-session.target"];
};
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
Restart = "on-failure";
RestartSec = 1;
TimeoutStopSec = 10;
};
};
};
2023-02-10 07:46:37 +01:00
services = {
# mounting
gvfs.enable = true;
udisks2.enable = true;
devmon.enable = true;
2023-02-19 02:06:31 +01:00
# thunbnails
tumbler.enable = true;
# desktop
blueman.enable = true;
gnome.gnome-keyring.enable = true;
mullvad-vpn.enable = true;
2023-02-14 19:17:18 +01:00
pipewire = {
enable = true;
pulse.enable = true;
};
openssh.enable = true;
pcscd.enable = true;
xserver = {
enable = true;
desktopManager.xterm.enable = false;
2023-02-19 02:06:31 +01:00
displayManager.gdm.enable = true;
libinput.enable = true;
2023-02-12 16:35:19 +01:00
windowManager.i3.enable = true;
xkbOptions = "caps:ctrl_modifier";
};
};
virtualisation.docker.enable = true;
users.users."${mainUser}" = {
extraGroups = ["wheel" "docker"];
isNormalUser = true;
2023-02-10 07:46:37 +01:00
openssh.authorizedKeys.keys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILm0O46zW/XfVOSwz0okRWYeOAg+wCVkCtCAoVTpZsOh"];
shell = pkgs.zsh;
};
system.stateVersion = "22.11";
}