Compare commits
2 Commits
99818d0119
...
8026bc8603
Author | SHA1 | Date | |
---|---|---|---|
8026bc8603 | |||
c1dc4529f5 |
@ -1,33 +1,55 @@
|
|||||||
{ config, pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ # Include the results of the hardware scan.
|
imports = [
|
||||||
|
# Include the results of the hardware scan.
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
|
||||||
# GUI
|
# Import modules
|
||||||
../../modules/system/gui/steam.nix
|
../../modules/system/default.nix
|
||||||
../../modules/system/gui/hyprland.nix
|
|
||||||
../../modules/system/gui/thunar.nix
|
|
||||||
|
|
||||||
# CLI
|
|
||||||
../../modules/system/cli/common.nix
|
|
||||||
|
|
||||||
# Hardware
|
|
||||||
../../modules/system/hardware/firewall.nix
|
|
||||||
../../modules/system/hardware/garbage-collection.nix
|
|
||||||
../../modules/system/hardware/locale.nix
|
|
||||||
../../modules/system/hardware/nvidia.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
display-manager = "cosmic-greeter";
|
||||||
|
desktop-environments = {
|
||||||
|
cosmic.enable = true;
|
||||||
|
hyprland.enable = false;
|
||||||
|
gnome.enable = false;
|
||||||
|
};
|
||||||
|
applications = {
|
||||||
|
common.enable = true;
|
||||||
|
steam.enable = true;
|
||||||
|
thunar.enable = false;
|
||||||
|
};
|
||||||
|
services = {
|
||||||
|
docker.enable = false;
|
||||||
|
quickemu.enable = false;
|
||||||
|
sunshine.enable = false;
|
||||||
|
garbage-collection.enable = true;
|
||||||
|
};
|
||||||
|
hardware = {
|
||||||
|
fprint.enable = false;
|
||||||
|
printing.enable = true;
|
||||||
|
bluetooth.enable = false;
|
||||||
|
firewall.enable = true;
|
||||||
|
locale.enable = true;
|
||||||
|
nvidia.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
experimental-features = [ "nix-command" "flakes" ];
|
experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
|
||||||
substituters = [
|
substituters = [
|
||||||
"https://nix-community.cachix.org"
|
"https://nix-community.cachix.org"
|
||||||
|
"https://cosmic.cachix.org/"
|
||||||
|
];
|
||||||
|
|
||||||
|
trusted-public-keys = [
|
||||||
|
"cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE="
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
# Bootloader.
|
# Bootloader.
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
boot.loader.grub = {
|
boot.loader.grub = {
|
||||||
@ -36,6 +58,7 @@
|
|||||||
device = "nodev";
|
device = "nodev";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Networking configuration
|
||||||
networking.hostName = "xv-desktop"; # Define your hostname.
|
networking.hostName = "xv-desktop"; # Define your hostname.
|
||||||
networking.interfaces.enp7s0.wakeOnLan.enable = true;
|
networking.interfaces.enp7s0.wakeOnLan.enable = true;
|
||||||
|
|
||||||
|
@ -2,16 +2,13 @@
|
|||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
# GUI
|
# Modules
|
||||||
../../modules/home/gui/common
|
../../modules/home/default.nix
|
||||||
../../modules/home/gui/hyprland
|
|
||||||
../../modules/home/gui/nextcloud.nix
|
|
||||||
../../modules/home/gui/theming.nix
|
|
||||||
|
|
||||||
# CLI
|
|
||||||
../../modules/home/cli/common
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Enable home-manager
|
||||||
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
host = lib.mkOption {
|
host = lib.mkOption {
|
||||||
type = with lib.types; str;
|
type = with lib.types; str;
|
||||||
@ -41,6 +38,28 @@
|
|||||||
unstable.prismlauncher
|
unstable.prismlauncher
|
||||||
];
|
];
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
applications.common.enable = true;
|
||||||
|
applications.alacritty.enable = false;
|
||||||
|
applications.devenv.enable = true;
|
||||||
|
applications.firefox.enable = true;
|
||||||
|
applications.git.enable = true;
|
||||||
|
applications.helix.enable = true;
|
||||||
|
applications.zsh.enable = true;
|
||||||
|
applications.ssh.enable = true;
|
||||||
|
applications.thunderbird.enable = true;
|
||||||
|
applications.yazi.enable = true;
|
||||||
|
applications.zellij.enable = true;
|
||||||
|
|
||||||
|
services.nextcloud-sync.enable = true;
|
||||||
|
|
||||||
|
theming.fonts.enable = true;
|
||||||
|
theming.nix-colors.enable = false;
|
||||||
|
theming.stylix.enable = true;
|
||||||
|
|
||||||
|
desktop-environments.hyprland.enable = false;
|
||||||
|
};
|
||||||
|
|
||||||
home.stateVersion = "24.05";
|
home.stateVersion = "24.05";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -33,6 +33,7 @@
|
|||||||
bluetooth.enable = true;
|
bluetooth.enable = true;
|
||||||
firewall.enable = true;
|
firewall.enable = true;
|
||||||
locale.enable = true;
|
locale.enable = true;
|
||||||
|
nvidia.enable = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -49,9 +50,6 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Configure hardware
|
|
||||||
services.ratbagd.enable = true;
|
|
||||||
|
|
||||||
# Bootloader.
|
# Bootloader.
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
boot.loader.grub = {
|
boot.loader.grub = {
|
||||||
@ -78,15 +76,5 @@
|
|||||||
|
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
|
||||||
# Configure wacom tablet
|
|
||||||
hardware.opentabletdriver = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.unstable.opentabletdriver;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.libinput.enable = true;
|
|
||||||
services.fwupd.enable = true;
|
|
||||||
|
|
||||||
system.stateVersion = "24.05";
|
system.stateVersion = "24.05";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -33,6 +33,7 @@
|
|||||||
bluetooth.enable = true;
|
bluetooth.enable = true;
|
||||||
firewall.enable = true;
|
firewall.enable = true;
|
||||||
locale.enable = true;
|
locale.enable = true;
|
||||||
|
nvidia.enable = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,46 +1,32 @@
|
|||||||
{ config, lib, pkgs, nixpkgs, ... }:
|
{ config, lib, ... }:
|
||||||
|
|
||||||
{
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.settings.hardware.nvidia;
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
settings.hardware.firewall.enable = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
description = ''
|
||||||
|
Enable nvidia drivers
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
||||||
"nvidia-x11"
|
"nvidia-x11"
|
||||||
"nvidia-settings"
|
"nvidia-settings"
|
||||||
];
|
];
|
||||||
|
|
||||||
hardware.opengl = {
|
hardware.graphics.enable = true;
|
||||||
enable = true;
|
|
||||||
driSupport = true;
|
|
||||||
driSupport32Bit = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.xserver.videoDrivers = ["nvidia"]; # or "nvidiaLegacy470 etc.
|
services.xserver.videoDrivers = ["nvidia"]; # or "nvidiaLegacy470 etc.
|
||||||
|
|
||||||
hardware.nvidia = {
|
hardware.nvidia = {
|
||||||
|
open = true;
|
||||||
modesetting.enable = true;
|
package = config.boot.kernelPackages.nvidiaPackages.beta;
|
||||||
|
|
||||||
powerManagement.enable = false;
|
|
||||||
|
|
||||||
# Fine-grained power management. Turns off GPU when not in use.
|
|
||||||
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
|
|
||||||
powerManagement.finegrained = false;
|
|
||||||
|
|
||||||
# Use the NVidia open source kernel module (not to be confused with the
|
|
||||||
# independent third-party "nouveau" open source driver).
|
|
||||||
# Support is limited to the Turing and later architectures. Full list of
|
|
||||||
# supported GPUs is at:
|
|
||||||
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
|
|
||||||
# Only available from driver 515.43.04+
|
|
||||||
# Currently alpha-quality/buggy, so false is currently the recommended setting.
|
|
||||||
open = false;
|
|
||||||
nvidiaSettings = true;
|
|
||||||
|
|
||||||
package = config.boot.kernelPackages.nvidiaPackages.mkDriver {
|
|
||||||
version = "555.58.02";
|
|
||||||
sha256_64bit = "sha256-xctt4TPRlOJ6r5S54h5W6PT6/3Zy2R4ASNFPu8TSHKM=";
|
|
||||||
sha256_aarch64 = "sha256-xctt4TPRlOJ6r5S54h5W6PT6/3Zy2R4ASNFPu8TSHKM=";
|
|
||||||
openSha256 = "sha256-ZpuVZybW6CFN/gz9rx+UJvQ715FZnAOYfHn5jt5Z2C8=";
|
|
||||||
settingsSha256 = "sha256-ZpuVZybW6CFN/gz9rx+UJvQ715FZnAOYfHn5jt5Z2C8=";
|
|
||||||
persistencedSha256 = lib.fakeSha256;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user