Merge branch 'main' of https://gitea.xeovalyte.dev/xeovalyte/nix
This commit is contained in:
@@ -1,34 +1,55 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [ # Include the results of the hardware scan.
|
||||
imports = [
|
||||
# Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
|
||||
# GUI
|
||||
../../modules/system/gui/steam.nix
|
||||
../../modules/system/gui/hyprland.nix
|
||||
../../modules/system/gui/thunar.nix
|
||||
|
||||
# CLI
|
||||
../../modules/system/cli/common.nix
|
||||
../../modules/system/cli/docker.nix
|
||||
|
||||
# Hardware
|
||||
../../modules/system/hardware/firewall.nix
|
||||
../../modules/system/hardware/garbage-collection.nix
|
||||
../../modules/system/hardware/locale.nix
|
||||
../../modules/system/hardware/nvidia.nix
|
||||
# Import modules
|
||||
../../modules/system/default.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 = {
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
|
||||
substituters = [
|
||||
"https://nix-community.cachix.org"
|
||||
"https://cosmic.cachix.org/"
|
||||
];
|
||||
|
||||
trusted-public-keys = [
|
||||
"cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE="
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader.grub = {
|
||||
@@ -37,6 +58,7 @@
|
||||
device = "nodev";
|
||||
};
|
||||
|
||||
# Networking configuration
|
||||
networking.hostName = "xv-desktop"; # Define your hostname.
|
||||
networking.interfaces.enp7s0.wakeOnLan.enable = true;
|
||||
|
||||
|
@@ -2,16 +2,13 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
# GUI
|
||||
../../modules/home/gui/common
|
||||
../../modules/home/gui/hyprland
|
||||
../../modules/home/gui/nextcloud.nix
|
||||
../../modules/home/gui/theming.nix
|
||||
|
||||
# CLI
|
||||
../../modules/home/cli/common
|
||||
# Modules
|
||||
../../modules/home/default.nix
|
||||
];
|
||||
|
||||
# Enable home-manager
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
options = {
|
||||
host = lib.mkOption {
|
||||
type = with lib.types; str;
|
||||
@@ -45,6 +42,28 @@
|
||||
# Enable home-manager
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
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";
|
||||
};
|
||||
}
|
||||
|
@@ -1,36 +1,52 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
# Import hardware configuration
|
||||
./hardware-configuration.nix
|
||||
|
||||
# GUI
|
||||
../../modules/system/gui/hyprland.nix
|
||||
../../modules/system/gui/steam.nix
|
||||
../../modules/system/gui/thunar.nix
|
||||
# ../../modules/system/gui/plasma.nix
|
||||
|
||||
# CLI
|
||||
../../modules/system/cli/common.nix
|
||||
../../modules/system/cli/docker.nix
|
||||
|
||||
# Hardware
|
||||
../../modules/system/hardware/amd.nix
|
||||
../../modules/system/hardware/bluetooth.nix
|
||||
../../modules/system/hardware/firewall.nix
|
||||
../../modules/system/hardware/garbage-collection.nix
|
||||
../../modules/system/hardware/laptop.nix
|
||||
../../modules/system/hardware/locale.nix
|
||||
../../modules/system/hardware/printing.nix
|
||||
../../modules/system/hardware/fprint.nix
|
||||
../../modules/system/hardware/virt.nix
|
||||
# Import modules
|
||||
../../modules/system/default.nix
|
||||
];
|
||||
|
||||
settings = {
|
||||
display-manager = "cosmic-greeter";
|
||||
desktop-environments = {
|
||||
cosmic.enable = true;
|
||||
hyprland.enable = true;
|
||||
gnome.enable = false;
|
||||
};
|
||||
applications = {
|
||||
common.enable = true;
|
||||
steam.enable = true;
|
||||
thunar.enable = true;
|
||||
};
|
||||
services = {
|
||||
docker.enable = true;
|
||||
quickemu.enable = true;
|
||||
sunshine.enable = false;
|
||||
garbage-collection.enable = true;
|
||||
};
|
||||
hardware = {
|
||||
fprint.enable = true;
|
||||
printing.enable = true;
|
||||
bluetooth.enable = true;
|
||||
firewall.enable = true;
|
||||
locale.enable = true;
|
||||
nvidia.enable = false;
|
||||
};
|
||||
};
|
||||
|
||||
nix.settings = {
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
|
||||
substituters = [
|
||||
"https://nix-community.cachix.org"
|
||||
"https://cosmic.cachix.org/"
|
||||
];
|
||||
|
||||
trusted-public-keys = [
|
||||
"cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE="
|
||||
];
|
||||
};
|
||||
|
||||
@@ -53,16 +69,12 @@
|
||||
|
||||
nix.settings.trusted-users = [ "root" "xeovalyte" ];
|
||||
|
||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||
|
||||
# Configure wacom tablet
|
||||
hardware.opentabletdriver = {
|
||||
# Prevent system freeze on high load
|
||||
services.earlyoom = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
services.libinput.enable = true;
|
||||
services.fwupd.enable = true;
|
||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||
|
||||
system.stateVersion = "24.05";
|
||||
|
||||
}
|
||||
|
@@ -2,21 +2,10 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
# GUI
|
||||
../../modules/home/gui/common
|
||||
../../modules/home/gui/hyprland
|
||||
../../modules/home/gui/nextcloud.nix
|
||||
../../modules/home/gui/theming.nix
|
||||
../../modules/home/gui/thunderbird.nix
|
||||
|
||||
# CLI
|
||||
../../modules/home/cli/common
|
||||
../../modules/home/cli/develop.nix
|
||||
../../modules/home/cli/ssh.nix
|
||||
../../modules/home/cli/yazi.nix
|
||||
# Modules
|
||||
../../modules/home/default.nix
|
||||
];
|
||||
|
||||
|
||||
options = {
|
||||
host = lib.mkOption {
|
||||
type = with lib.types; str;
|
||||
@@ -42,14 +31,34 @@
|
||||
host = "xv-laptop";
|
||||
headless = false;
|
||||
|
||||
settings = {
|
||||
applications.common.enable = true;
|
||||
applications.alacritty.enable = true;
|
||||
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.packages = with pkgs; [
|
||||
# Desktop Applications
|
||||
kdenlive
|
||||
prismlauncher
|
||||
unstable.modrinth-app
|
||||
unstable.joplin-desktop
|
||||
unstable.prusa-slicer
|
||||
unstable.font-manager
|
||||
signal-desktop
|
||||
unstable.vesktop
|
||||
unstable.webcord
|
||||
@@ -59,7 +68,6 @@
|
||||
unstable.rnote
|
||||
unstable.bottles
|
||||
|
||||
|
||||
# Office
|
||||
libreoffice
|
||||
|
||||
@@ -78,15 +86,6 @@
|
||||
# Enable home-manager
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
# Enable default applications
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
defaultApplications = {
|
||||
"application/pdf" = "firefox.desktop";
|
||||
"application/rnote" = "rnote.desktop";
|
||||
};
|
||||
};
|
||||
|
||||
home.stateVersion = "24.05";
|
||||
};
|
||||
|
||||
|
81
hosts/surface/default.nix
Normal file
81
hosts/surface/default.nix
Normal file
@@ -0,0 +1,81 @@
|
||||
{ lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
# Import hardware configuration
|
||||
./hardware-configuration.nix
|
||||
|
||||
# Import modules
|
||||
../../modules/system/default.nix
|
||||
];
|
||||
|
||||
settings = {
|
||||
display-manager = "gdm";
|
||||
desktop-environments = {
|
||||
cosmic.enable = false;
|
||||
hyprland.enable = false;
|
||||
gnome.enable = true;
|
||||
};
|
||||
applications = {
|
||||
common.enable = true;
|
||||
steam.enable = false;
|
||||
thunar.enable = false;
|
||||
};
|
||||
services = {
|
||||
docker.enable = false;
|
||||
quickemu.enable = false;
|
||||
sunshine.enable = false;
|
||||
garbage-collection.enable = true;
|
||||
};
|
||||
hardware = {
|
||||
fprint.enable = false;
|
||||
printing.enable = false;
|
||||
bluetooth.enable = true;
|
||||
firewall.enable = true;
|
||||
locale.enable = true;
|
||||
nvidia.enable = false;
|
||||
};
|
||||
};
|
||||
|
||||
nix.settings = {
|
||||
experimental-features = [ "nix-command" "flakes" ];
|
||||
|
||||
substituters = [
|
||||
"https://nix-community.cachix.org"
|
||||
"https://cosmic.cachix.org/"
|
||||
];
|
||||
|
||||
trusted-public-keys = [
|
||||
"cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE="
|
||||
];
|
||||
};
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader.grub = {
|
||||
enable = true;
|
||||
efiSupport = true;
|
||||
device = "nodev";
|
||||
configurationLimit = 32;
|
||||
};
|
||||
|
||||
networking.hostName = "xv-laptop"; # Define your hostname.
|
||||
|
||||
users.users.xeovalyte = {
|
||||
isNormalUser = true;
|
||||
description = "Timo Boomers";
|
||||
extraGroups = [ "networkmanager" "wheel" "dialout" ];
|
||||
};
|
||||
|
||||
nix.settings.trusted-users = [ "root" "xeovalyte" ];
|
||||
|
||||
# Prevent system freeze on high load
|
||||
services.earlyoom = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest;
|
||||
|
||||
system.stateVersion = "24.05";
|
||||
|
||||
}
|
40
hosts/surface/hardware-configuration.nix
Normal file
40
hosts/surface/hardware-configuration.nix
Normal file
@@ -0,0 +1,40 @@
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "usb_storage" "usbhid" "sd_mod" "sdhci_pci" "rtsx_pci_sdmmc" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/09e81450-2741-4218-a2e5-780515cd90b9";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/FC00-C9A3";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0077" "dmask=0077" ];
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/30618725-d8ff-40c9-b218-6b1f7aaf9155"; }
|
||||
];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
69
hosts/surface/home.nix
Normal file
69
hosts/surface/home.nix
Normal file
@@ -0,0 +1,69 @@
|
||||
{ pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
# Modules
|
||||
../../modules/home/default.nix
|
||||
];
|
||||
|
||||
options = {
|
||||
host = lib.mkOption {
|
||||
type = with lib.types; str;
|
||||
description = ''
|
||||
Define the host of the machine
|
||||
'';
|
||||
};
|
||||
|
||||
headless = lib.mkOption {
|
||||
type = with lib.types; bool;
|
||||
description = ''
|
||||
Is this machine headless?
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
home = {
|
||||
username = "xeovalyte";
|
||||
homeDirectory = "/home/xeovalyte";
|
||||
};
|
||||
|
||||
host = "xv-surface";
|
||||
headless = false;
|
||||
|
||||
settings = {
|
||||
applications.common.enable = true;
|
||||
applications.alacritty.enable = false;
|
||||
applications.devenv.enable = false;
|
||||
applications.firefox.enable = true;
|
||||
applications.git.enable = true;
|
||||
applications.helix.enable = true;
|
||||
applications.zsh.enable = true;
|
||||
applications.ssh.enable = false;
|
||||
applications.thunderbird.enable = false;
|
||||
applications.yazi.enable = true;
|
||||
applications.zellij.enable = false;
|
||||
|
||||
services.nextcloud-sync.enable = true;
|
||||
|
||||
theming.fonts.enable = true;
|
||||
theming.nix-colors.enable = true;
|
||||
|
||||
desktop-environments.hyprland.enable = false;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
# Desktop Applications
|
||||
unstable.rnote
|
||||
|
||||
# Office
|
||||
libreoffice
|
||||
];
|
||||
|
||||
# Enable home-manager
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
home.stateVersion = "24.05";
|
||||
};
|
||||
|
||||
}
|
Reference in New Issue
Block a user