mochi/.archive/profiles/role-workstation.nix
Joseph Hanson 2b6d062d16
All checks were successful
Build / nix-build (native-x86_64, telperion) (push) Successful in 2m13s
Build / nix-build (native-x86_64, gandalf) (push) Successful in 3m23s
Build / nix-build (native-x86_64, shadowfax) (push) Successful in 4m38s
reformat
2024-12-27 21:30:25 -06:00

79 lines
1.7 KiB
Nix

{
config,
lib,
pkgs,
...
}:
# Role for workstations
# Covers desktops/laptops, expected to have a GUI and do workloads
# Will have home-manager installs
let
vivaldiOverride = pkgs.vivaldi.override {
proprietaryCodecs = true;
enableWidevine = true;
};
in
with config;
{
mySystem = {
shell.fish.enable = true;
editor.vscode.enable = true;
system.resticBackup.local.enable = false;
system.resticBackup.remote.enable = false;
};
boot = {
binfmt.emulatedSystems = [ "aarch64-linux" ]; # Enabled for raspi4 compilation
plymouth.enable = true; # hide console with splash screen
};
nix.settings = {
# Avoid disk full issues
max-free = lib.mkDefault (1000 * 1000 * 1000);
min-free = lib.mkDefault (128 * 1000 * 1000);
};
services = {
# set xserver videodrivers if used
xserver.enable = true;
# Enable the Gnome keyring for auto unlocking ssh keys on login
gnome.gnome-keyring.enable = true;
fwupd.enable = config.boot.loader.systemd-boot.enable; # fwupd does not work in BIOS mode
thermald.enable = true;
smartd.enable = true;
};
hardware = {
enableAllFirmware = true;
sensor.hddtemp = {
enable = true;
drives = [ "/dev/disk/by-id/*" ];
};
};
environment.systemPackages = with pkgs; [
# Sensors etc
lm_sensors
cpufrequtils
cpupower-gui
vivaldiOverride
gparted
termius
];
i18n = {
defaultLocale = lib.mkDefault "en_US.UTF-8";
};
programs = {
mtr.enable = true;
ssh.startAgent = true;
# Enable appimage support and executing them via the appimage-run helper.
appimage = {
enable = true;
binfmt = true;
};
};
}