mirror of
https://github.com/tuxdotrs/nix-config.git
synced 2026-06-21 03:36:32 +05:30
Compare commits
13 Commits
8bca900c98
...
dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
5a4483b615
|
|||
|
c3adf234f7
|
|||
|
7f74855511
|
|||
|
383bc98052
|
|||
|
828ca02935
|
|||
|
6438a98d18
|
|||
|
6b09bf0e7e
|
|||
|
cd4e81178d
|
|||
|
b649b974fa
|
|||
|
71aaf2d392
|
|||
|
8ec23b15af
|
|||
|
fdc63b9307
|
|||
|
626dd68af6
|
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
flake.modules.homeManager.desktop =
|
flake.modules.homeManager.desktop =
|
||||||
{ pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
{
|
{
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -10,6 +10,15 @@
|
|||||||
systemd.variables = [ "--all" ];
|
systemd.variables = [ "--all" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# TODO: Hyprland 0.55 switched to Lua-based configuration.
|
||||||
|
# Until the Home Manager module is updated, we symlink our config instead.
|
||||||
|
home.file = {
|
||||||
|
".config/hypr/config".source =
|
||||||
|
config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/Projects/hypr/config";
|
||||||
|
".config/hypr/hyprland.lua".source =
|
||||||
|
config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/Projects/hypr/hyprland.lua";
|
||||||
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
ags
|
ags
|
||||||
awww
|
awww
|
||||||
|
|||||||
@@ -1,21 +1,41 @@
|
|||||||
{ inputs, ... }:
|
{ inputs, ... }:
|
||||||
{
|
{
|
||||||
flake.modules.homeManager.desktop =
|
flake.modules.homeManager.desktop =
|
||||||
{ pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.tnix.desktop.mangowm;
|
||||||
|
in
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.mango.hmModules.mango
|
inputs.mango.hmModules.mango
|
||||||
];
|
];
|
||||||
|
|
||||||
|
options.tnix.desktop.mangowm = {
|
||||||
|
enable = mkEnableOption "Enable MangoWM";
|
||||||
|
|
||||||
|
monitorRule = mkOption {
|
||||||
|
type = with types; listOf str;
|
||||||
|
default = [ ];
|
||||||
|
};
|
||||||
|
|
||||||
|
tagRule = mkOption {
|
||||||
|
type = with types; listOf str;
|
||||||
|
default = [ ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
wayland.windowManager.mango = {
|
wayland.windowManager.mango = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
# Monitors
|
# Monitors
|
||||||
monitorrule = [
|
monitorrule = cfg.monitorRule;
|
||||||
"name:DP-2, width:1440, height:2560, refresh:144, x:0, y:0, vrr:0, rr:1"
|
|
||||||
"name:DP-3, width:2560, height:1440, refresh:144, x:1440, y:0, vrr:0"
|
|
||||||
"name:DP-1, width:1080, height:1920, refresh:144, x:4000, y:0, vrr:0, rr:3"
|
|
||||||
];
|
|
||||||
|
|
||||||
focus_cross_monitor = 1;
|
focus_cross_monitor = 1;
|
||||||
exchange_cross_monitor = 1;
|
exchange_cross_monitor = 1;
|
||||||
@@ -68,25 +88,7 @@
|
|||||||
overviewgappo = 15;
|
overviewgappo = 15;
|
||||||
|
|
||||||
# layouts
|
# layouts
|
||||||
tagrule = [
|
tagrule = cfg.tagRule;
|
||||||
"id:1, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
|
||||||
"id:2, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
|
||||||
"id:3, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
|
||||||
"id:4, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
|
||||||
"id:5, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
|
||||||
|
|
||||||
"id:1, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
|
||||||
"id:2, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
|
||||||
"id:3, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
|
||||||
"id:4, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
|
||||||
"id:5, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
|
||||||
|
|
||||||
"id:1, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
|
||||||
"id:2, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
|
||||||
"id:3, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
|
||||||
"id:4, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
|
||||||
"id:5, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Keybindings
|
# Keybindings
|
||||||
mousebind = [
|
mousebind = [
|
||||||
@@ -250,4 +252,5 @@
|
|||||||
dgop
|
dgop
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
24
modules/hm/desktop/mpv.nix
Normal file
24
modules/hm/desktop/mpv.nix
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
flake.modules.homeManager.desktop =
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
programs.mpv = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
scripts = (
|
||||||
|
with pkgs.mpvScripts;
|
||||||
|
[
|
||||||
|
modernz
|
||||||
|
thumbfast
|
||||||
|
mpris
|
||||||
|
mpv-image-viewer.image-positioning
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
config = {
|
||||||
|
osc = "no";
|
||||||
|
border = "no";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -54,11 +54,6 @@
|
|||||||
imports = [ "/run/secrets/vicinae.json" ];
|
imports = [ "/run/secrets/vicinae.json" ];
|
||||||
|
|
||||||
providers = {
|
providers = {
|
||||||
"@samlinville/store.raycast.tailscale" = {
|
|
||||||
"preferences" = {
|
|
||||||
"tailscalePath" = "${pkgs.tailscale}/bin/tailscale";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"@sovereign/vicinae-extension-awww-switcher-0" = {
|
"@sovereign/vicinae-extension-awww-switcher-0" = {
|
||||||
"preferences" = {
|
"preferences" = {
|
||||||
"transitionDuration" = "1";
|
"transitionDuration" = "1";
|
||||||
|
|||||||
@@ -4,21 +4,14 @@
|
|||||||
{
|
{
|
||||||
hostName,
|
hostName,
|
||||||
userName,
|
userName,
|
||||||
modulesPath,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
imports =
|
imports = with config.flake.modules.nixos; [
|
||||||
with config.flake.modules.nixos;
|
|
||||||
[
|
|
||||||
boot
|
boot
|
||||||
hardware
|
|
||||||
networking
|
networking
|
||||||
virtualisation
|
virtualisation
|
||||||
services
|
services
|
||||||
]
|
|
||||||
++ [
|
|
||||||
(modulesPath + "/profiles/qemu-guest.nix")
|
|
||||||
];
|
];
|
||||||
|
|
||||||
tnix = {
|
tnix = {
|
||||||
|
|||||||
@@ -14,7 +14,14 @@ in
|
|||||||
{
|
{
|
||||||
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = { inherit hostName userName userEmail; };
|
specialArgs = {
|
||||||
|
inherit
|
||||||
|
hostName
|
||||||
|
userName
|
||||||
|
userEmail
|
||||||
|
system
|
||||||
|
;
|
||||||
|
};
|
||||||
modules = [
|
modules = [
|
||||||
config.flake.modules.nixos.core
|
config.flake.modules.nixos.core
|
||||||
config.flake.modules.nixos.${hostName}
|
config.flake.modules.nixos.${hostName}
|
||||||
|
|||||||
17
modules/hosts/alpha/hardware.nix
Normal file
17
modules/hosts/alpha/hardware.nix
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
flake.modules.nixos.alpha =
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
modulesPath,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/profiles/qemu-guest.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault system;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -2,7 +2,6 @@
|
|||||||
{
|
{
|
||||||
flake.modules.nixos.arcturus =
|
flake.modules.nixos.arcturus =
|
||||||
{
|
{
|
||||||
pkgs,
|
|
||||||
hostName,
|
hostName,
|
||||||
userName,
|
userName,
|
||||||
...
|
...
|
||||||
@@ -10,7 +9,6 @@
|
|||||||
{
|
{
|
||||||
imports = with config.flake.modules.nixos; [
|
imports = with config.flake.modules.nixos; [
|
||||||
boot
|
boot
|
||||||
hardware
|
|
||||||
networking
|
networking
|
||||||
virtualisation
|
virtualisation
|
||||||
services
|
services
|
||||||
@@ -109,10 +107,6 @@
|
|||||||
firewall.enable = false;
|
firewall.enable = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
nvtopPackages.full
|
|
||||||
];
|
|
||||||
|
|
||||||
system.stateVersion = "26.05";
|
system.stateVersion = "26.05";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,14 @@ in
|
|||||||
{
|
{
|
||||||
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = { inherit hostName userName userEmail; };
|
specialArgs = {
|
||||||
|
inherit
|
||||||
|
hostName
|
||||||
|
userName
|
||||||
|
userEmail
|
||||||
|
system
|
||||||
|
;
|
||||||
|
};
|
||||||
modules = [
|
modules = [
|
||||||
config.flake.modules.nixos.core
|
config.flake.modules.nixos.core
|
||||||
config.flake.modules.nixos.${hostName}
|
config.flake.modules.nixos.${hostName}
|
||||||
|
|||||||
@@ -1,11 +1,17 @@
|
|||||||
|
{ config, ... }:
|
||||||
{
|
{
|
||||||
flake.modules.nixos.arcturus =
|
flake.modules.nixos.arcturus =
|
||||||
{
|
{
|
||||||
config,
|
|
||||||
lib,
|
lib,
|
||||||
|
pkgs,
|
||||||
|
system,
|
||||||
...
|
...
|
||||||
}:
|
}@innerArgs:
|
||||||
{
|
{
|
||||||
|
imports = with config.flake.modules.nixos; [
|
||||||
|
hardware
|
||||||
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [
|
boot.initrd.availableKernelModules = [
|
||||||
"nvme"
|
"nvme"
|
||||||
"xhci_pci"
|
"xhci_pci"
|
||||||
@@ -18,15 +24,13 @@
|
|||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault innerArgs.config.hardware.enableRedistributableFirmware;
|
||||||
# (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.eno1.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.wlp10s0f3u2i2.useDHCP = lib.mkDefault true;
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
networking.useDHCP = lib.mkDefault true;
|
||||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
nixpkgs.hostPlatform = lib.mkDefault system;
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
nvtopPackages.amd
|
||||||
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,7 +10,6 @@
|
|||||||
{
|
{
|
||||||
imports = with config.flake.modules.nixos; [
|
imports = with config.flake.modules.nixos; [
|
||||||
boot
|
boot
|
||||||
hardware
|
|
||||||
networking
|
networking
|
||||||
desktop
|
desktop
|
||||||
gaming
|
gaming
|
||||||
@@ -26,6 +25,7 @@
|
|||||||
|
|
||||||
home = {
|
home = {
|
||||||
directories = [
|
directories = [
|
||||||
|
"Distrobox"
|
||||||
".steam"
|
".steam"
|
||||||
".cache/awww"
|
".cache/awww"
|
||||||
".config/BraveSoftware"
|
".config/BraveSoftware"
|
||||||
@@ -120,20 +120,7 @@
|
|||||||
firewall.enable = false;
|
firewall.enable = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
# --- Hardware / GPU ---
|
|
||||||
# hardware = {
|
|
||||||
# nvidia = {
|
|
||||||
# modesetting.enable = true;
|
|
||||||
# open = false;
|
|
||||||
# nvidiaSettings = true;
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
# boot.kernelParams = [ "nvidia-drm.modeset=1" ];
|
|
||||||
# nixpkgs.config.cudaSupport = true;
|
|
||||||
# services.xserver.videoDrivers = [ "nvidia" ];
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
nvtopPackages.full
|
|
||||||
davinci-resolve
|
davinci-resolve
|
||||||
telegram-desktop
|
telegram-desktop
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -14,7 +14,14 @@ in
|
|||||||
{
|
{
|
||||||
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = { inherit hostName userName userEmail; };
|
specialArgs = {
|
||||||
|
inherit
|
||||||
|
hostName
|
||||||
|
userName
|
||||||
|
userEmail
|
||||||
|
system
|
||||||
|
;
|
||||||
|
};
|
||||||
modules = [
|
modules = [
|
||||||
config.flake.modules.nixos.core
|
config.flake.modules.nixos.core
|
||||||
config.flake.modules.nixos.${hostName}
|
config.flake.modules.nixos.${hostName}
|
||||||
|
|||||||
@@ -1,11 +1,19 @@
|
|||||||
|
{ inputs, config, ... }:
|
||||||
{
|
{
|
||||||
flake.modules.nixos.canopus =
|
flake.modules.nixos.canopus =
|
||||||
{
|
{
|
||||||
config,
|
|
||||||
lib,
|
lib,
|
||||||
|
system,
|
||||||
...
|
...
|
||||||
}:
|
}@innerArgs:
|
||||||
{
|
{
|
||||||
|
imports =
|
||||||
|
with config.flake.modules.nixos;
|
||||||
|
[
|
||||||
|
hardware
|
||||||
|
]
|
||||||
|
++ [ inputs.nixos-hardware.nixosModules.asus-zephyrus-ga503 ];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [
|
boot.initrd.availableKernelModules = [
|
||||||
"nvme"
|
"nvme"
|
||||||
"xhci_pci"
|
"xhci_pci"
|
||||||
@@ -18,15 +26,109 @@
|
|||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault innerArgs.config.hardware.enableRedistributableFirmware;
|
||||||
# (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.eno1.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.wlp10s0f3u2i2.useDHCP = lib.mkDefault true;
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
services = {
|
||||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
power-profiles-daemon.enable = true;
|
||||||
|
upower.enable = true;
|
||||||
|
|
||||||
|
supergfxd = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
mode = "Integrated";
|
||||||
|
vfio_enable = false;
|
||||||
|
vfio_save = false;
|
||||||
|
always_reboot = false;
|
||||||
|
no_logind = false;
|
||||||
|
logout_timeout_s = 180;
|
||||||
|
hotplug_type = "None";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
asusd = {
|
||||||
|
enable = true;
|
||||||
|
asusdConfig.text = ''
|
||||||
|
(
|
||||||
|
charge_control_end_threshold: 80,
|
||||||
|
disable_nvidia_powerd_on_battery: true,
|
||||||
|
ac_command: "",
|
||||||
|
bat_command: "",
|
||||||
|
|
||||||
|
platform_profile_linked_epp: true,
|
||||||
|
platform_profile_on_battery: Quiet,
|
||||||
|
platform_profile_on_ac: Performance,
|
||||||
|
|
||||||
|
change_platform_profile_on_battery: true,
|
||||||
|
change_platform_profile_on_ac: true,
|
||||||
|
|
||||||
|
profile_quiet_epp: Power,
|
||||||
|
profile_balanced_epp: BalancePower,
|
||||||
|
profile_custom_epp: Performance,
|
||||||
|
profile_performance_epp: Performance,
|
||||||
|
|
||||||
|
ac_profile_tunings: {},
|
||||||
|
dc_profile_tunings: {},
|
||||||
|
armoury_settings: {},
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
profileConfig.text = ''
|
||||||
|
(
|
||||||
|
active_profile: Quiet,
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
fanCurvesConfig.text = ''
|
||||||
|
(
|
||||||
|
profiles: (
|
||||||
|
balanced: [
|
||||||
|
(
|
||||||
|
fan: CPU,
|
||||||
|
pwm: (2, 22, 45, 68, 91, 153, 153, 153),
|
||||||
|
temp: (55, 62, 66, 70, 74, 78, 78, 78),
|
||||||
|
enabled: false,
|
||||||
|
),
|
||||||
|
(
|
||||||
|
fan: GPU,
|
||||||
|
pwm: (2, 25, 48, 71, 94, 165, 165, 165),
|
||||||
|
temp: (55, 62, 66, 70, 74, 78, 78, 78),
|
||||||
|
enabled: false,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
performance: [
|
||||||
|
(
|
||||||
|
fan: CPU,
|
||||||
|
pwm: (35, 68, 79, 91, 114, 175, 175, 175),
|
||||||
|
temp: (58, 62, 66, 70, 74, 78, 78, 78),
|
||||||
|
enabled: false,
|
||||||
|
),
|
||||||
|
(
|
||||||
|
fan: GPU,
|
||||||
|
pwm: (35, 71, 84, 94, 119, 188, 188, 188),
|
||||||
|
temp: (58, 62, 66, 70, 74, 78, 78, 78),
|
||||||
|
enabled: false,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
quiet: [
|
||||||
|
(
|
||||||
|
fan: CPU,
|
||||||
|
pwm: (2, 12, 22, 35, 45, 58, 79, 79),
|
||||||
|
temp: (55, 62, 66, 70, 74, 78, 82, 82),
|
||||||
|
enabled: true,
|
||||||
|
),
|
||||||
|
(
|
||||||
|
fan: GPU,
|
||||||
|
pwm: (2, 12, 25, 35, 48, 61, 84, 84),
|
||||||
|
temp: (55, 62, 66, 70, 74, 78, 82, 82),
|
||||||
|
enabled: true,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
custom: [],
|
||||||
|
),
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault system;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,25 @@
|
|||||||
desktop
|
desktop
|
||||||
];
|
];
|
||||||
|
|
||||||
tnix.services.lan-mouse = {
|
tnix = {
|
||||||
|
desktop = {
|
||||||
|
mangowm = {
|
||||||
|
enable = true;
|
||||||
|
monitorRule = [
|
||||||
|
"name:eDP-1, width:2560, height:1440, refresh:165, x:0, y:0, vrr:1"
|
||||||
|
];
|
||||||
|
|
||||||
|
tagRule = [
|
||||||
|
"id:1, layout_name:tile"
|
||||||
|
"id:2, layout_name:tile"
|
||||||
|
"id:3, layout_name:tile"
|
||||||
|
"id:4, layout_name:tile"
|
||||||
|
"id:5, layout_name:scroller"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.lan-mouse = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
authorized_fingerprints = {
|
authorized_fingerprints = {
|
||||||
@@ -14,6 +32,7 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
home.stateVersion = "26.05";
|
home.stateVersion = "26.05";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -10,7 +10,6 @@
|
|||||||
{
|
{
|
||||||
imports = with config.flake.modules.nixos; [
|
imports = with config.flake.modules.nixos; [
|
||||||
boot
|
boot
|
||||||
hardware
|
|
||||||
networking
|
networking
|
||||||
desktop
|
desktop
|
||||||
gaming
|
gaming
|
||||||
@@ -26,6 +25,7 @@
|
|||||||
|
|
||||||
home = {
|
home = {
|
||||||
directories = [
|
directories = [
|
||||||
|
"Distrobox"
|
||||||
".steam"
|
".steam"
|
||||||
".cache/awww"
|
".cache/awww"
|
||||||
".config/BraveSoftware"
|
".config/BraveSoftware"
|
||||||
@@ -121,20 +121,7 @@
|
|||||||
firewall.enable = false;
|
firewall.enable = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
# --- Hardware / GPU ---
|
|
||||||
hardware = {
|
|
||||||
nvidia = {
|
|
||||||
modesetting.enable = true;
|
|
||||||
open = false;
|
|
||||||
nvidiaSettings = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
boot.kernelParams = [ "nvidia-drm.modeset=1" ];
|
|
||||||
nixpkgs.config.cudaSupport = true;
|
|
||||||
services.xserver.videoDrivers = [ "nvidia" ];
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
nvtopPackages.full
|
|
||||||
davinci-resolve
|
davinci-resolve
|
||||||
telegram-desktop
|
telegram-desktop
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -14,7 +14,14 @@ in
|
|||||||
{
|
{
|
||||||
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = { inherit hostName userName userEmail; };
|
specialArgs = {
|
||||||
|
inherit
|
||||||
|
hostName
|
||||||
|
userName
|
||||||
|
userEmail
|
||||||
|
system
|
||||||
|
;
|
||||||
|
};
|
||||||
modules = [
|
modules = [
|
||||||
config.flake.modules.nixos.core
|
config.flake.modules.nixos.core
|
||||||
config.flake.modules.nixos.${hostName}
|
config.flake.modules.nixos.${hostName}
|
||||||
|
|||||||
@@ -1,11 +1,18 @@
|
|||||||
|
{ config, ... }:
|
||||||
{
|
{
|
||||||
flake.modules.nixos.sirius =
|
flake.modules.nixos.sirius =
|
||||||
{
|
{
|
||||||
config,
|
|
||||||
lib,
|
lib,
|
||||||
|
pkgs,
|
||||||
|
system,
|
||||||
...
|
...
|
||||||
}:
|
}@innerArgs:
|
||||||
{
|
{
|
||||||
|
imports = with config.flake.modules.nixos; [
|
||||||
|
hardware
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.kernelParams = [ "nvidia-drm.modeset=1" ];
|
||||||
boot.initrd.availableKernelModules = [
|
boot.initrd.availableKernelModules = [
|
||||||
"nvme"
|
"nvme"
|
||||||
"xhci_pci"
|
"xhci_pci"
|
||||||
@@ -18,15 +25,27 @@
|
|||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
hardware = {
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
nvidia = {
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
modesetting.enable = true;
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
open = false;
|
||||||
networking.useDHCP = lib.mkDefault true;
|
nvidiaSettings = true;
|
||||||
# networking.interfaces.eno1.useDHCP = lib.mkDefault true;
|
};
|
||||||
# networking.interfaces.wlp10s0f3u2i2.useDHCP = lib.mkDefault true;
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
cpu.amd.updateMicrocode = lib.mkDefault innerArgs.config.hardware.enableRedistributableFirmware;
|
||||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
};
|
||||||
|
|
||||||
|
services = {
|
||||||
|
xserver.videoDrivers = [ "nvidia" ];
|
||||||
|
power-profiles-daemon.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
nixpkgs.config.cudaSupport = true;
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault system;
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
nvtopPackages.full
|
||||||
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,39 @@
|
|||||||
desktop
|
desktop
|
||||||
];
|
];
|
||||||
|
|
||||||
tnix.services.lan-mouse = {
|
tnix = {
|
||||||
|
desktop = {
|
||||||
|
mangowm = {
|
||||||
|
enable = true;
|
||||||
|
monitorRule = [
|
||||||
|
"name:DP-2, width:1440, height:2560, refresh:144, x:0, y:0, vrr:0, rr:1"
|
||||||
|
"name:DP-3, width:2560, height:1440, refresh:144, x:1440, y:0, vrr:0"
|
||||||
|
"name:DP-1, width:1080, height:1920, refresh:144, x:4000, y:0, vrr:0, rr:3"
|
||||||
|
];
|
||||||
|
|
||||||
|
tagRule = [
|
||||||
|
"id:1, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
||||||
|
"id:2, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
||||||
|
"id:3, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
||||||
|
"id:4, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
||||||
|
"id:5, layout_name:vertical_tile, monitor_name:DP-2, no_hide:1"
|
||||||
|
|
||||||
|
"id:1, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
||||||
|
"id:2, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
||||||
|
"id:3, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
||||||
|
"id:4, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
||||||
|
"id:5, layout_name:tile, monitor_name:DP-3, no_hide:1"
|
||||||
|
|
||||||
|
"id:1, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
||||||
|
"id:2, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
||||||
|
"id:3, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
||||||
|
"id:4, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
||||||
|
"id:5, layout_name:vertical_tile, monitor_name:DP-1, no_hide:1"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.lan-mouse = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
clients = [
|
clients = [
|
||||||
@@ -18,6 +50,7 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
home.stateVersion = "26.05";
|
home.stateVersion = "26.05";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -3,21 +3,14 @@
|
|||||||
flake.modules.nixos.vps =
|
flake.modules.nixos.vps =
|
||||||
{
|
{
|
||||||
hostName,
|
hostName,
|
||||||
modulesPath,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
imports =
|
imports = with config.flake.modules.nixos; [
|
||||||
with config.flake.modules.nixos;
|
|
||||||
[
|
|
||||||
boot
|
boot
|
||||||
hardware
|
|
||||||
networking
|
networking
|
||||||
virtualisation
|
virtualisation
|
||||||
services
|
services
|
||||||
]
|
|
||||||
++ [
|
|
||||||
(modulesPath + "/profiles/qemu-guest.nix")
|
|
||||||
];
|
];
|
||||||
|
|
||||||
tnix = {
|
tnix = {
|
||||||
|
|||||||
@@ -14,7 +14,14 @@ in
|
|||||||
{
|
{
|
||||||
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
flake.nixosConfigurations."${hostName}" = nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = { inherit hostName userName userEmail; };
|
specialArgs = {
|
||||||
|
inherit
|
||||||
|
hostName
|
||||||
|
userName
|
||||||
|
userEmail
|
||||||
|
system
|
||||||
|
;
|
||||||
|
};
|
||||||
modules = [
|
modules = [
|
||||||
config.flake.modules.nixos.core
|
config.flake.modules.nixos.core
|
||||||
config.flake.modules.nixos.${hostName}
|
config.flake.modules.nixos.${hostName}
|
||||||
|
|||||||
17
modules/hosts/vps/hardware.nix
Normal file
17
modules/hosts/vps/hardware.nix
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
flake.modules.nixos.vps =
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
modulesPath,
|
||||||
|
system,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/profiles/qemu-guest.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault system;
|
||||||
|
};
|
||||||
|
}
|
||||||
7
modules/nixos/desktop/misc.nix
Normal file
7
modules/nixos/desktop/misc.nix
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
flake.modules.nixos.desktop =
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
environment.systemPackages = with pkgs; [ brightnessctl ];
|
||||||
|
};
|
||||||
|
}
|
||||||
18
modules/nixos/desktop/thunar.nix
Normal file
18
modules/nixos/desktop/thunar.nix
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
{
|
||||||
|
flake.modules.nixos.desktop =
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
gvfs.enable = true;
|
||||||
|
tumbler.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.thunar = {
|
||||||
|
enable = true;
|
||||||
|
plugins = with pkgs; [
|
||||||
|
thunar-archive-plugin
|
||||||
|
thunar-volman
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,8 +1,11 @@
|
|||||||
{
|
{
|
||||||
flake.modules.nixos.gaming = {
|
flake.modules.nixos.gaming =
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
programs.steam = {
|
programs.steam = {
|
||||||
enable = true;
|
enable = true;
|
||||||
protontricks.enable = true;
|
protontricks.enable = true;
|
||||||
|
extraCompatPackages = with pkgs; [ proton-ge-bin ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user