143 lines
2.6 KiB
Nix
143 lines
2.6 KiB
Nix
# vim:fileencoding=utf-8:foldmethod=marker
|
|
{
|
|
pkgs,
|
|
config,
|
|
...
|
|
}:
|
|
let
|
|
inherit (config.modules.meta) username;
|
|
in
|
|
{
|
|
imports = [
|
|
./hardware-configuration.nix
|
|
./home.nix
|
|
../../users/ny
|
|
];
|
|
|
|
boot.loader = {
|
|
systemd-boot.enable = true;
|
|
efi.canTouchEfiVariables = true;
|
|
};
|
|
|
|
age.secrets.rustypaste = {
|
|
file = ../../secrets/rustypaste.age;
|
|
mode = "440";
|
|
group = "wheel";
|
|
};
|
|
|
|
virtualisation.docker = {
|
|
enable = true;
|
|
rootless = {
|
|
enable = true;
|
|
setSocketVariable = true;
|
|
};
|
|
};
|
|
|
|
services.logind = {
|
|
powerKey = "hibernate";
|
|
};
|
|
|
|
xdg = {
|
|
portal.enable = true;
|
|
};
|
|
|
|
modules = {
|
|
fs.nfsEnable = true;
|
|
system = {
|
|
roles = {
|
|
desktop.enable = true;
|
|
gaming.enable = true;
|
|
};
|
|
|
|
outputs = {
|
|
"DP-2" = {
|
|
resX = 1920;
|
|
resY = 1080;
|
|
};
|
|
"HDMI-A-1" = {
|
|
posX = 1920;
|
|
resX = 1920;
|
|
resY = 1080;
|
|
};
|
|
};
|
|
|
|
networking = {
|
|
wifi.enable = true;
|
|
bluetooth.enable = true;
|
|
};
|
|
};
|
|
|
|
services = {
|
|
cliphist.enable = true;
|
|
nysh.enable = true;
|
|
tailscale = {
|
|
enable = true;
|
|
tags = [ "client" ];
|
|
};
|
|
rsync-backup = {
|
|
enable = true;
|
|
modules = [
|
|
{
|
|
sources = [ "/home/ny/notes" ];
|
|
target = {
|
|
location = "brontes-backup";
|
|
type = "rsyncd";
|
|
host = "nihilus";
|
|
};
|
|
incremental.enable = true;
|
|
}
|
|
];
|
|
};
|
|
};
|
|
media.enableAll = true;
|
|
};
|
|
|
|
services = {
|
|
displayManager.sddm.enable = true;
|
|
dbus.enable = true;
|
|
pipewire.enable = true;
|
|
# Necessary for Nautilus to display trash, DVDs and for gnome-disk-utility to show file systems
|
|
gvfs.enable = true;
|
|
gnome.gnome-keyring.enable = true;
|
|
};
|
|
|
|
programs = {
|
|
dconf.enable = true;
|
|
fish.enable = true;
|
|
firefox.enable = true;
|
|
thunderbird.enable = true;
|
|
hyprland.enable = true;
|
|
};
|
|
|
|
security.polkit.enable = true;
|
|
|
|
users = {
|
|
defaultUserShell = pkgs.fish;
|
|
users.${username} = {
|
|
isNormalUser = true;
|
|
createHome = true;
|
|
packages = with pkgs; [
|
|
orca-slicer
|
|
];
|
|
extraGroups = [
|
|
"networkmanager"
|
|
"audio"
|
|
"libvirtd" # VM OPs
|
|
];
|
|
};
|
|
};
|
|
|
|
age.identityPaths = [
|
|
"/etc/ssh/ssh_host_ed25519_key"
|
|
];
|
|
|
|
programs.gnupg.agent = {
|
|
enable = true;
|
|
enableSSHSupport = true;
|
|
};
|
|
|
|
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
|
nix.settings.extra-platforms = config.boot.binfmt.emulatedSystems;
|
|
|
|
system.stateVersion = "24.05";
|
|
}
|