This commit is contained in:
2026-08-15 23:56:29 +00:00
parent a67158f51b
commit 0ac9b5a78b
7 changed files with 180 additions and 74 deletions

21
flake.lock generated
View File

@@ -20,6 +20,26 @@
"type": "github" "type": "github"
} }
}, },
"disko": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1781152676,
"narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=",
"owner": "nix-community",
"repo": "disko",
"rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "disko",
"type": "github"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -92,6 +112,7 @@
"root": { "root": {
"inputs": { "inputs": {
"antigravity": "antigravity", "antigravity": "antigravity",
"disko": "disko",
"home-manager": "home-manager", "home-manager": "home-manager",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"

View File

@@ -10,6 +10,11 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
disko = {
url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs";
};
antigravity = { antigravity = {
url = "github:Hy4ri/antigravity-flake"; url = "github:Hy4ri/antigravity-flake";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";

View File

@@ -2,27 +2,40 @@
let let
mod = "SUPER"; mod = "SUPER";
terminal = "foot";
menu = "rofi -show drun";
browser = "brave";
in in
{ {
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true;
configType = "lua";
package = null;
settings = { settings = {
# ----------------------------------------------------------------------- # -----------------------------------------------------------------------
# 1. Variables & Modifiers # 1. Variables & Modifiers
# ----------------------------------------------------------------------- # -----------------------------------------------------------------------
"$mod" = mod; "$mod" = mod;
"$terminal" = "foot"; "$terminal" = terminal;
"$menu" = "rofi -show drun"; "$menu" = menu;
"$browser" = "brave"; "$browser" = browser;
# ----------------------------------------------------------------------- # -----------------------------------------------------------------------
# 2. General, Layout & Decoration # 2. Main Config (hl.config)
# ----------------------------------------------------------------------- # -----------------------------------------------------------------------
config = {
general = { general = {
gaps_in = 4; gaps_in = 4;
gaps_out = 8; gaps_out = 8;
border_size = 2; border_size = 2;
"col.active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg"; col = {
"col.inactive_border" = "rgba(595959aa)"; active_border = {
colors = [ "rgba(33ccffee)" "rgba(00ff99ee)" ];
angle = 45;
};
inactive_border = "rgba(595959aa)";
};
layout = "dwindle"; layout = "dwindle";
allow_tearing = false; allow_tearing = false;
}; };
@@ -49,16 +62,6 @@ in
animations = { animations = {
enabled = true; enabled = true;
bezier = [
"easeOutQuint, 0.23, 1, 0.32, 1"
];
animation = [
"windows, 1, 3, easeOutQuint"
"windowsOut, 1, 3, easeOutQuint, popin 80%"
"border, 1, 3, easeOutQuint"
"fade, 1, 3, easeOutQuint"
"workspaces, 1, 3, easeOutQuint"
];
}; };
input = { input = {
@@ -79,9 +82,33 @@ in
force_default_wallpaper = 0; force_default_wallpaper = 0;
disable_hyprland_logo = true; disable_hyprland_logo = true;
}; };
};
# ----------------------------------------------------------------------- # -----------------------------------------------------------------------
# 3. Autostart Daemons & Apps # 3. Animation Curves (hl.curve) & Animations
# -----------------------------------------------------------------------
curve = [
{
_args = [
"easeOutQuint"
{
type = "bezier";
points = [ [ 0.23 1 ] [ 0.32 1 ] ];
}
];
}
];
animation = [
"windows, 1, 3, easeOutQuint"
"windowsOut, 1, 3, easeOutQuint, popin 80%"
"border, 1, 3, easeOutQuint"
"fade, 1, 3, easeOutQuint"
"workspaces, 1, 3, easeOutQuint"
];
# -----------------------------------------------------------------------
# 4. Autostart Daemons & Apps
# ----------------------------------------------------------------------- # -----------------------------------------------------------------------
exec-once = [ exec-once = [
"waybar" "waybar"
@@ -92,7 +119,7 @@ in
]; ];
# ----------------------------------------------------------------------- # -----------------------------------------------------------------------
# 4. Keybindings # 5. Keybindings
# ----------------------------------------------------------------------- # -----------------------------------------------------------------------
bind = [ bind = [
# Launchers & Applications # Launchers & Applications

View File

@@ -1,7 +1,9 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, inputs, ... }:
{ {
imports = [ imports = [
inputs.disko.nixosModules.disko
./disko.nix
./hardware-configuration.nix ./hardware-configuration.nix
./display-configuration.nix ./display-configuration.nix
../../modules/hardware/nvidia.nix ../../modules/hardware/nvidia.nix
@@ -10,6 +12,14 @@
networking.hostName = "hades"; networking.hostName = "hades";
# Enable in-memory compressed swap
zramSwap.enable = true;
# Ensure /games directory is accessible by default user
systemd.tmpfiles.rules = [
"d /games 0755 anish users -"
];
powerManagement.cpuFreqGovernor = "performance"; powerManagement.cpuFreqGovernor = "performance";
hardware.nvidia.prime = { hardware.nvidia.prime = {

50
hosts/hades/disko.nix Normal file
View File

@@ -0,0 +1,50 @@
{
disko.devices = {
disk = {
main = {
type = "disk";
device = "/dev/disk/by-id/nvme-Samsung_SSD_970_EVO_Plus_2TB_S59CNZ0NB09730Z";
content = {
type = "gpt";
partitions = {
ESP = {
size = "1G";
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
mountOptions = [ "fmask=0077" "dmask=0077" ];
};
};
root = {
size = "100%";
content = {
type = "filesystem";
format = "ext4";
mountpoint = "/";
};
};
};
};
};
games = {
type = "disk";
device = "/dev/disk/by-id/nvme-Samsung_SSD_970_EVO_1TB_S5H9NS0N401375F";
content = {
type = "gpt";
partitions = {
games = {
size = "100%";
content = {
type = "filesystem";
format = "ext4";
mountpoint = "/games";
};
};
};
};
};
};
};
}

View File

@@ -2,6 +2,11 @@
{ {
home-manager.users.anish.wayland.windowManager.hyprland.settings.monitor = [ home-manager.users.anish.wayland.windowManager.hyprland.settings.monitor = [
"HDMI-A-1, 3840x2160, auto, 2" {
output = "HDMI-A-1";
mode = "3840x2160";
position = "auto";
scale = 2;
}
]; ];
} }

View File

@@ -13,20 +13,8 @@
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = # File systems and swap partitions are managed by disko (./disko.nix)
{ device = "/dev/disk/by-uuid/b4665ea7-2347-4075-8fb5-5b9c838a4852"; # and zramSwap in ./default.nix
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/3FEE-E289";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices =
[ { device = "/dev/disk/by-uuid/37ad0ef8-95d4-4cf5-a443-a867bca3d974"; }
];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;