mirror of
https://github.com/davegallant/nix-config
synced 2025-08-06 07:13:40 +00:00
185 lines
3.6 KiB
Nix
185 lines
3.6 KiB
Nix
{ config
|
|
, pkgs
|
|
, unstable
|
|
, ...
|
|
}:
|
|
let
|
|
gnomeExtensions = with pkgs.gnomeExtensions; [
|
|
appindicator
|
|
bluetooth-quick-connect
|
|
blur-my-shell
|
|
caffeine
|
|
clipboard-indicator
|
|
dash-to-dock
|
|
grand-theft-focus
|
|
notification-banner-reloaded
|
|
quick-settings-tweaker
|
|
tailscale-status
|
|
tray-icons-reloaded
|
|
];
|
|
in
|
|
{
|
|
imports = [ ./hardware.nix ];
|
|
|
|
hardware.opengl.enable = true;
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
networking = {
|
|
iproute2.enable = true;
|
|
hostName = "hephaestus";
|
|
interfaces.enp34s0 = {
|
|
useDHCP = true;
|
|
};
|
|
firewall = {
|
|
allowPing = false;
|
|
enable = true;
|
|
checkReversePath = "loose";
|
|
trustedInterfaces = [ "tailscale0" ];
|
|
};
|
|
};
|
|
|
|
systemd.services.NetworkManager-wait-online.enable = false;
|
|
|
|
boot.kernelPackages = pkgs.linuxPackages;
|
|
boot.supportedFilesystems = [ "ntfs" ];
|
|
|
|
system = {
|
|
autoUpgrade.enable = true;
|
|
stateVersion = "23.11";
|
|
};
|
|
|
|
nix = {
|
|
extraOptions = "experimental-features = nix-command flakes";
|
|
package = pkgs.nixUnstable;
|
|
};
|
|
|
|
users.users.dave = {
|
|
isNormalUser = true;
|
|
extraGroups = [ "docker" "wheel" "libvirtd" "corectrl" ];
|
|
shell = pkgs.zsh;
|
|
};
|
|
|
|
i18n.defaultLocale = "en_US.UTF-8";
|
|
console = {
|
|
font = "Lat2-Terminus16";
|
|
keyMap = "us";
|
|
};
|
|
|
|
time.timeZone = "America/Toronto";
|
|
|
|
hardware.pulseaudio.enable = true;
|
|
|
|
# Vulkan
|
|
hardware.opengl.driSupport = true;
|
|
hardware.opengl.driSupport32Bit = true;
|
|
|
|
# Steam
|
|
hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [ libva ];
|
|
hardware.pulseaudio.support32Bit = true;
|
|
programs.steam = {
|
|
enable = true;
|
|
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
|
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
|
|
};
|
|
|
|
virtualisation = {
|
|
docker.enable = true;
|
|
libvirtd.enable = true;
|
|
podman.enable = true;
|
|
};
|
|
|
|
programs = {
|
|
corectrl.enable = true;
|
|
gnupg.agent = {
|
|
enable = true;
|
|
enableSSHSupport = true;
|
|
};
|
|
zsh.enable = true;
|
|
};
|
|
|
|
services = {
|
|
avahi = {
|
|
enable = true;
|
|
nssmdns = true;
|
|
publish = {
|
|
enable = true;
|
|
addresses = true;
|
|
domain = true;
|
|
hinfo = true;
|
|
userServices = true;
|
|
workstation = true;
|
|
};
|
|
};
|
|
gnome.gnome-keyring.enable = true;
|
|
mullvad-vpn.enable = false;
|
|
printing.enable = true;
|
|
resolved.enable = true;
|
|
sshd.enable = true;
|
|
tailscale.enable = true;
|
|
xserver.videoDrivers = [ "amdgpu" ];
|
|
xserver = {
|
|
enable = true;
|
|
displayManager = {
|
|
gdm = {
|
|
enable = true;
|
|
wayland = false;
|
|
};
|
|
};
|
|
desktopManager = {
|
|
gnome = {
|
|
enable = true;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
environment.systemPackages = with pkgs;
|
|
[
|
|
android-tools
|
|
bitwarden
|
|
cryptsetup
|
|
deja-dup
|
|
discord
|
|
docker
|
|
docker-compose
|
|
foliate
|
|
ghostscript
|
|
gimp-with-plugins
|
|
glibcLocales
|
|
gnome.gnome-tweaks
|
|
iputils
|
|
kazam
|
|
legendary-gl
|
|
lm_sensors
|
|
mullvad-vpn
|
|
netdata
|
|
nfs-utils
|
|
pavucontrol
|
|
pinentry-curses
|
|
podman
|
|
psst
|
|
qemu
|
|
rustup
|
|
strace
|
|
tailscale
|
|
traceroute
|
|
ungoogled-chromium
|
|
unstable.burpsuite
|
|
unstable.logseq
|
|
unstable.obsidian
|
|
unstable.ryujinx
|
|
unstable.signal-desktop
|
|
usbutils
|
|
virt-manager
|
|
vlc
|
|
whois
|
|
wine
|
|
wine64
|
|
wireshark-qt
|
|
yuzu
|
|
zoom-us
|
|
]
|
|
++ gnomeExtensions;
|
|
}
|