139 lines
3.2 KiB
Nix
139 lines
3.2 KiB
Nix
{ config, pkgs, ... }:
|
|
|
|
{
|
|
imports =
|
|
[
|
|
<home-manager/nixos>
|
|
/etc/nixos/cachix.nix
|
|
];
|
|
|
|
boot.loader.grub.enable = true;
|
|
boot.loader.grub.device = "/dev/vda";
|
|
boot.loader.grub.useOSProber = true;
|
|
boot.kernelParams = [ "nvidia-drm.modeset=1" ];
|
|
|
|
networking.networkmanager.enable = true;
|
|
|
|
time.timeZone = "America/Denver";
|
|
i18n.defaultLocale = "en_US.UTF-8";
|
|
i18n.extraLocaleSettings = {
|
|
LC_ADDRESS = "en_US.UTF-8";
|
|
LC_IDENTIFICATION = "en_US.UTF-8";
|
|
LC_MEASUREMENT = "en_US.UTF-8";
|
|
LC_MONETARY = "en_US.UTF-8";
|
|
LC_NAME = "en_US.UTF-8";
|
|
LC_NUMERIC = "en_US.UTF-8";
|
|
LC_PAPER = "en_US.UTF-8";
|
|
LC_TELEPHONE = "en_US.UTF-8";
|
|
LC_TIME = "en_US.UTF-8";
|
|
};
|
|
|
|
#https://github.com/NixOS/nixpkgs/issues/103746#issuecomment-945091229
|
|
systemd.services."getty@tty1".enable = false;
|
|
systemd.services."autovt@tty1".enable = false;
|
|
|
|
services.xserver.enable = true;
|
|
services.displayManager = {
|
|
gdm.enable = true;
|
|
autoLogin = {
|
|
enable = true;
|
|
user = "alex";
|
|
};
|
|
};
|
|
services.xserver.desktopManager.gnome.enable = true;
|
|
|
|
# Configure keymap in X11
|
|
services.xserver.xkb = {
|
|
layout = "us";
|
|
variant = "";
|
|
};
|
|
services.pulseaudio.enable = false;
|
|
|
|
security.rtkit.enable = true;
|
|
services.pipewire = {
|
|
enable = true;
|
|
alsa.enable = true;
|
|
alsa.support32Bit = true;
|
|
pulse.enable = true;
|
|
};
|
|
|
|
|
|
users.users.alex = {
|
|
isNormalUser = true;
|
|
description = "alex";
|
|
extraGroups = [ "networkmanager" "wheel" "docker" "video" "render" "input" ];
|
|
shell = pkgs.fish;
|
|
|
|
packages = with pkgs; [
|
|
lazydocker
|
|
btop
|
|
nvtopPackages.nvidia
|
|
uv
|
|
git
|
|
tmux
|
|
];
|
|
};
|
|
home-manager.users.alex = { pgks, ...}: {
|
|
home.stateVersion = "24.11";
|
|
imports = [
|
|
./home-manager/ai-vm.home.nix
|
|
];
|
|
};
|
|
|
|
programs.firefox.enable = true;
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
system.stateVersion = "24.11"; # Did you read the comment?
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
vim
|
|
nvidia-container-toolkit
|
|
libva-utils
|
|
vulkan-tools
|
|
ffmpeg
|
|
];
|
|
programs.nix-ld.enable = true;
|
|
|
|
programs.fish.enable = true;
|
|
services.tailscale.enable = true;
|
|
services.openssh.enable = true;
|
|
services.qemuGuest.enable = true;
|
|
virtualisation.docker.enable = true;
|
|
hardware.steam-hardware.enable = true;
|
|
|
|
|
|
|
|
systemd.targets.sleep.enable = false;
|
|
systemd.targets.suspend.enable = false;
|
|
systemd.targets.hibernate.enable = false;
|
|
systemd.targets.hybrid-sleep.enable = false;
|
|
# gaming stuff
|
|
|
|
services.flatpak.enable = true;
|
|
services.sunshine = {
|
|
enable = true;
|
|
autoStart = true;
|
|
capSysAdmin = true;
|
|
openFirewall = true;
|
|
};
|
|
|
|
xdg.portal.enable = true;
|
|
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gnome ];
|
|
xdg.portal.config.common.default = [ "gnome" ];
|
|
|
|
hardware.graphics = {
|
|
enable32Bit = true;
|
|
enable = true;
|
|
};
|
|
hardware.nvidia = {
|
|
modesetting.enable = true;
|
|
open = true;
|
|
nvidiaSettings = true;
|
|
package = config.boot.kernelPackages.nvidiaPackages.production;
|
|
powerManagement.enable = false;
|
|
powerManagement.finegrained = false;
|
|
};
|
|
hardware.nvidia-container-toolkit.enable = true;
|
|
virtualisation.docker.enableNvidia = true;
|
|
services.xserver.videoDrivers = [ "nvidia" ];
|
|
} |