redid theming system to utilize stylix, purging unused module files next

This commit is contained in:
2025-07-07 12:54:15 -05:00
parent 89be2cd52c
commit ddd9a53ab0
15 changed files with 798 additions and 101 deletions

View File

@@ -101,11 +101,10 @@ boot = {
# Enable the GNOME Desktop Environment.
programs.hyprland.enable = true;
services.desktopManager.plasma6.enable = false;
services.displayManager.sddm.enable = false;
services.displayManager.cosmic-greeter.enable = false;
services.desktopManager.cosmic.enable = true;
services.desktopManager.cosmic.enable = false;
/*services.displayManager = {
autoLogin.enable = true;
autoLogin.user = "joshuaelm";
@@ -235,7 +234,7 @@ hardware.pulseaudio.extraConfig = ''
fileSystems."/mnt/More-Games" = {
device = "/dev/sda1";
device = "/dev/disk/by-uuid/eb1d5913-63fb-4fd8-8299-b428fd2d5ea0";
fsType = "btrfs";
options = [
"users"
@@ -268,11 +267,11 @@ hardware.pulseaudio.extraConfig = ''
targetPkgs = pkgs: with pkgs; [
alsa-lib atk cairo cups curl dbus expat file fish fontconfig freetype
fuse glib gtk3 libGL libnotify libxml2 libxslt netcat nspr nss openjdk8
openssl.dev pango appimage-run pkg-config strace udev vulkan-loader watch wget which
openssl.dev cava pango appimage-run pkg-config strace udev vulkan-loader watch wget which
xorg.libX11 icu xorg.libxcb xorg.libXcomposite xorg.libXcursor
xorg.libXdamage xorg.libXext xorg.libXfixes xorg.libXi xorg.libXrandr
xorg.libXrender xorg.libXScrnSaver openssl xorg.libxshmfence xorg.libXtst
xorg.xcbutilkeysyms zlib fontconfig.lib libuuid xorg.libXft
xorg.xcbutilkeysyms zlib fontconfig.lib SDL2 libGL libuuid xorg.libXft
];
profile = ''export FHS=1'';
runScript = "fish";
@@ -286,21 +285,25 @@ hardware.pulseaudio.extraConfig = ''
cemu
teamspeak6-client
unetbootin
labymod-launcher
unzip
winetricks
cowsay
pfetch
ryujinx
hyprpolkitagent
gomatrix
python3
pavucontrol
gnomeExtensions.tray-icons-reloaded
pkgs.hyprpanel
cider
xfce.thunar
gnomeExtensions.open-bar
wallust
steamtinkerlaunch
grub2
cargo
btop
inputs.zen-browser.packages."${system}".default
qalculate-qt
kdePackages.kdenlive
@@ -327,9 +330,8 @@ hardware.pulseaudio.extraConfig = ''
wine
alvr
bottles
#cava
cava
pop-icon-theme
pop-launcher
gnome-tweaks
libnotify
libreoffice
@@ -337,7 +339,6 @@ hardware.pulseaudio.extraConfig = ''
hunspellDicts.en_US
neovide
flatpak
rofi-wayland
gradience
];
@@ -361,6 +362,24 @@ hardware.pulseaudio.extraConfig = ''
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
};
nixpkgs.config.packageOverrides = pkgs: {
steam = pkgs.steam.override {
extraLibraries = pkgs: [ pkgs.xorg.libxcb ];
extraPkgs = pkgs: with pkgs; [
xorg.libXcursor
xorg.libXi
xorg.libXinerama
xorg.libXScrnSaver
libpng
libpulseaudio
libvorbis
stdenv.cc.cc.lib
libkrb5
keyutils
];
};
};
programs.gamescope = {
enable = true;
capSysNice = true;

475
flake.lock generated
View File

@@ -2,18 +2,18 @@
"nodes": {
"ags": {
"inputs": {
"astal": "astal",
"astal": "astal_2",
"nixpkgs": [
"hyprpanel",
"nixpkgs"
]
},
"locked": {
"lastModified": 1736090999,
"narHash": "sha256-B5CJuHqfJrzPa7tObK0H9669/EClSHpa/P7B9EuvElU=",
"lastModified": 1744557573,
"narHash": "sha256-XAyj0iDuI51BytJ1PwN53uLpzTDdznPDQFG4RwihlTQ=",
"owner": "aylur",
"repo": "ags",
"rev": "5527c3c07d92c11e04e7fd99d58429493dba7e3c",
"rev": "3ed9737bdbc8fc7a7c7ceef2165c9109f336bff6",
"type": "github"
},
"original": {
@@ -25,17 +25,15 @@
"astal": {
"inputs": {
"nixpkgs": [
"hyprpanel",
"ags",
"nixpkgs"
]
},
"locked": {
"lastModified": 1735172721,
"narHash": "sha256-rtEAwGsHSppnkR3Qg3eRJ6Xh/F84IY9CrBBLzYabalY=",
"lastModified": 1750020774,
"narHash": "sha256-43lMH+9/0EHRhMuNvvo3Izvp1wXyMcSKRi8F2wSTepY=",
"owner": "aylur",
"repo": "astal",
"rev": "6c84b64efc736e039a8a10774a4a1bf772c37aa2",
"rev": "ca3190d077d09b9597e7de471a8e388a08f112e9",
"type": "github"
},
"original": {
@@ -44,14 +42,140 @@
"type": "github"
}
},
"astal_2": {
"inputs": {
"nixpkgs": [
"hyprpanel",
"ags",
"nixpkgs"
]
},
"locked": {
"lastModified": 1742571008,
"narHash": "sha256-5WgfJAeBpxiKbTR/gJvxrGYfqQRge5aUDcGKmU1YZ1Q=",
"owner": "aylur",
"repo": "astal",
"rev": "dc0e5d37abe9424c53dcbd2506a4886ffee6296e",
"type": "github"
},
"original": {
"owner": "aylur",
"repo": "astal",
"type": "github"
}
},
"astal_3": {
"inputs": {
"nixpkgs": [
"hyprpanel",
"nixpkgs"
]
},
"locked": {
"lastModified": 1748416910,
"narHash": "sha256-FEQcs58HL8Fe4i7XlqVEUwthjxwvRvgX15gTTfW17sU=",
"owner": "aylur",
"repo": "astal",
"rev": "c1bd89a47c81c66ab5fc6872db5a916c0433fb89",
"type": "github"
},
"original": {
"owner": "aylur",
"repo": "astal",
"type": "github"
}
},
"base16": {
"inputs": {
"fromYaml": "fromYaml"
},
"locked": {
"lastModified": 1746562888,
"narHash": "sha256-YgNJQyB5dQiwavdDFBMNKk1wyS77AtdgDk/VtU6wEaI=",
"owner": "SenchoPens",
"repo": "base16.nix",
"rev": "806a1777a5db2a1ef9d5d6f493ef2381047f2b89",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "base16.nix",
"type": "github"
}
},
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1622559957,
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1748408240,
"narHash": "sha256-9M2b1rMyMzJK0eusea0x3lyh3mu5nMeEDSc4RZkGm+g=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "6c711ab1a9db6f51e2f6887cc3345530b33e152e",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-helix",
"type": "github"
}
},
"base16-vim": {
"flake": false,
"locked": {
"lastModified": 1732806396,
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
"owner": "tinted-theming",
"repo": "base16-vim",
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-vim",
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
"type": "github"
}
},
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1748383148,
"narHash": "sha256-pGvD/RGuuPf/4oogsfeRaeMm6ipUIznI2QSILKjKzeA=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "4eb2714fbed2b80e234312611a947d6cb7d70caf",
"type": "github"
},
"original": {
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"type": "github"
}
},
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1717312683,
"narHash": "sha256-FrlieJH50AuvagamEvWMIE6D2OAnERuDboFDYAED/dE=",
"lastModified": 1746162366,
"narHash": "sha256-5SSSZ/oQkwfcAz/o/6TlejlVGqeK08wyREBQ5qFFPhM=",
"owner": "nix-community",
"repo": "flake-compat",
"rev": "38fd3954cf65ce6faf3d0d45cd26059e059f07ea",
"rev": "0f158086a2ecdbb138cd0429410e44994f1b7e4b",
"type": "github"
},
"original": {
@@ -67,6 +191,27 @@
"nixpkgs"
]
},
"locked": {
"lastModified": 1749398372,
"narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1743550720,
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=",
@@ -99,6 +244,39 @@
"type": "github"
}
},
"fromYaml": {
"flake": false,
"locked": {
"lastModified": 1731966426,
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
"owner": "SenchoPens",
"repo": "fromYaml",
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "fromYaml",
"type": "github"
}
},
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1748186689,
"narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "48.2",
"repo": "gnome-shell",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@@ -106,11 +284,11 @@
]
},
"locked": {
"lastModified": 1745894335,
"narHash": "sha256-m47zhftaod/oHOwoVT25jstdcVLhkrVGyvEHKjbnFHI=",
"lastModified": 1750304462,
"narHash": "sha256-Mj5t4yX05/rXnRqJkpoLZTWqgStB88Mr/fegTRqyiWc=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "1ad123239957d40e11ef66c203d0a7e272eb48aa",
"rev": "863842639722dd12ae9e37ca83bcb61a63b36f6c",
"type": "github"
},
"original": {
@@ -143,14 +321,15 @@
"hyprpanel": {
"inputs": {
"ags": "ags",
"astal": "astal_3",
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1745885816,
"narHash": "sha256-yuIb6/gGcII+2YgtTLcYdga0pcL63B18xQ/oitOhg7k=",
"lastModified": 1750486389,
"narHash": "sha256-zOlR4uiw++aFWNRvlARY6Uz5VeXQFKXDMlUX45XSDX0=",
"owner": "Jas-SinghFSU",
"repo": "HyprPanel",
"rev": "0c82ce9704c8063be8d8f60443071c91943eb68c",
"rev": "0c2bcb773cdd55d385e68d59c8d43a066c029895",
"type": "github"
},
"original": {
@@ -173,27 +352,27 @@
]
},
"locked": {
"lastModified": 1737371634,
"narHash": "sha256-fTVAWzT1UMm1lT+YxHuVPtH+DATrhYfea3B0MxG/cGw=",
"lastModified": 1748294338,
"narHash": "sha256-FVO01jdmUNArzBS7NmaktLdGA5qA3lUMJ4B7a05Iynw=",
"owner": "NuschtOS",
"repo": "ixx",
"rev": "a1176e2a10ce745ff8f63e4af124ece8fe0b1648",
"rev": "cc5f390f7caf265461d4aab37e98d2292ebbdb85",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"ref": "v0.0.7",
"ref": "v0.0.8",
"repo": "ixx",
"type": "github"
}
},
"master": {
"locked": {
"lastModified": 1745949758,
"narHash": "sha256-/dnFkNd00YPbzyu9yzTe/5Zk/3Tg4m3OwBBYvZlx8lQ=",
"lastModified": 1750562696,
"narHash": "sha256-Gxh6uZvgYCs5VaHtkxAWRZoBeoaWorU+EUlFrclhkWM=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "4eba10d36219a263a5b51e4a6b2e4e6bbc00fcde",
"rev": "42cce0e237cd0ed6ae2bc3c5840b1188966a0e42",
"type": "github"
},
"original": {
@@ -213,11 +392,11 @@
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1745924915,
"narHash": "sha256-RuMUtaplJkaAtqkdG1+cD3trqmO2ykKqfK+3+HXPUVA=",
"lastModified": 1750520039,
"narHash": "sha256-sMxE77+YqBC8beZDUskuqM2NliKPBt+V9pL2OAE9Bys=",
"owner": "lilyinstarlight",
"repo": "nixos-cosmic",
"rev": "329a9d639f0418cce05937a823f43b2b64191653",
"rev": "be0365958fcdb3681cad94b8daaf286466259602",
"type": "github"
},
"original": {
@@ -228,11 +407,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1736344531,
"narHash": "sha256-8YVQ9ZbSfuUk2bUf2KRj60NRraLPKPS0Q4QFTbc+c2c=",
"lastModified": 1748370509,
"narHash": "sha256-QlL8slIgc16W5UaI3w7xHQEP+Qmv/6vSNTpoZrrSlbk=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "bffc22eb12172e6db3c5dde9e3e5628f8e3e7912",
"rev": "4faa5f5321320e49a78ae7848582f684d64783e9",
"type": "github"
},
"original": {
@@ -244,11 +423,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1745742390,
"narHash": "sha256-1rqa/XPSJqJg21BKWjzJZC7yU0l/YTVtjRi0RJmipus=",
"lastModified": 1750330365,
"narHash": "sha256-hJ7XMNVsTnnbV2NPmStCC07gvv5l2x7+Skb7hyUzazg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "26245db0cb552047418cfcef9a25da91b222d6c7",
"rev": "d883b6213afa179b58ba8bace834f1419707d0ad",
"type": "github"
},
"original": {
@@ -260,11 +439,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1745794561,
"narHash": "sha256-T36rUZHUART00h3dW4sV5tv4MrXKT7aWjNfHiZz7OHg=",
"lastModified": 1750365781,
"narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "5461b7fa65f3ca74cef60be837fd559a8918eaa0",
"rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54",
"type": "github"
},
"original": {
@@ -295,14 +474,15 @@
"nixpkgs": [
"nixpkgs"
],
"nuschtosSearch": "nuschtosSearch"
"nuschtosSearch": "nuschtosSearch",
"systems": "systems_2"
},
"locked": {
"lastModified": 1745927529,
"narHash": "sha256-9ofvr5N24TOLjJTkUNdoaHE20l/+r04/9PMw4tmj6dE=",
"lastModified": 1750345447,
"narHash": "sha256-yOuSSfI4xovXQpSkZUK02CBcY1f0Nvm0RhnUN8xn2rY=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "944a3168813367bb71389c53b94992f69b5be79f",
"rev": "6a1a348ab1f00bd32d2392b5c2fc72489c699af3",
"type": "github"
},
"original": {
@@ -311,6 +491,32 @@
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": [
"stylix",
"flake-parts"
],
"nixpkgs": [
"stylix",
"nixpkgs"
],
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1748730660,
"narHash": "sha256-5LKmRYKdPuhm8j5GFe3AfrJL8dd8o57BQ34AGjJl1R0=",
"owner": "nix-community",
"repo": "NUR",
"rev": "2c0bc52fe14681e9ef60e3553888c4f086e46ecb",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "NUR",
"type": "github"
}
},
"nuschtosSearch": {
"inputs": {
"flake-utils": "flake-utils",
@@ -321,11 +527,11 @@
]
},
"locked": {
"lastModified": 1745046075,
"narHash": "sha256-8v4y6k16Ra/fiecb4DxhsoOGtzLKgKlS+9/XJ9z0T2I=",
"lastModified": 1749730855,
"narHash": "sha256-L3x2nSlFkXkM6tQPLJP3oCBMIsRifhIDPMQQdHO5xWo=",
"owner": "NuschtOS",
"repo": "search",
"rev": "066afe8643274470f4a294442aadd988356a478f",
"rev": "8dfe5879dd009ff4742b668d9c699bc4b9761742",
"type": "github"
},
"original": {
@@ -336,12 +542,14 @@
},
"root": {
"inputs": {
"astal": "astal",
"home-manager": "home-manager",
"hyprpanel": "hyprpanel",
"master": "master",
"nixos-cosmic": "nixos-cosmic",
"nixpkgs": "nixpkgs_2",
"nixvim": "nixvim",
"stylix": "stylix",
"zen-browser": "zen-browser"
}
},
@@ -353,11 +561,11 @@
]
},
"locked": {
"lastModified": 1745894113,
"narHash": "sha256-dxO3caQZMv/pMtcuXdi+SnAtyki6HFbSf1IpgQPXZYc=",
"lastModified": 1750473400,
"narHash": "sha256-wiW2j63MyGQyyijRF25hf7Ab7vx4G8pCiGjUe3OGV4c=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "e552fe1b16ffafd678ebe061c22b117e050769ed",
"rev": "3d7d4c4e284f26d6dc4840491c66884912be0062",
"type": "github"
},
"original": {
@@ -366,6 +574,40 @@
"type": "github"
}
},
"stylix": {
"inputs": {
"base16": "base16",
"base16-fish": "base16-fish",
"base16-helix": "base16-helix",
"base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme",
"flake-parts": "flake-parts_2",
"gnome-shell": "gnome-shell",
"nixpkgs": [
"nixpkgs"
],
"nur": "nur",
"systems": "systems_3",
"tinted-foot": "tinted-foot",
"tinted-kitty": "tinted-kitty",
"tinted-schemes": "tinted-schemes",
"tinted-tmux": "tinted-tmux",
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1751840923,
"narHash": "sha256-4HZxn+PrWytrWVg5c5SEetv3m9/k7rngJq27zKuRIfo=",
"owner": "danth",
"repo": "stylix",
"rev": "5259682ce58d935f248297bf1c9793a5cee0787e",
"type": "github"
},
"original": {
"owner": "danth",
"repo": "stylix",
"type": "github"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
@@ -381,17 +623,150 @@
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"tinted-foot": {
"flake": false,
"locked": {
"lastModified": 1726913040,
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
"owner": "tinted-theming",
"repo": "tinted-foot",
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-foot",
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
"type": "github"
}
},
"tinted-kitty": {
"flake": false,
"locked": {
"lastModified": 1735730497,
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
"owner": "tinted-theming",
"repo": "tinted-kitty",
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-kitty",
"type": "github"
}
},
"tinted-schemes": {
"flake": false,
"locked": {
"lastModified": 1748180480,
"narHash": "sha256-7n0XiZiEHl2zRhDwZd/g+p38xwEoWtT0/aESwTMXWG4=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "87d652edd26f5c0c99deda5ae13dfb8ece2ffe31",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "schemes",
"type": "github"
}
},
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1748740859,
"narHash": "sha256-OEM12bg7F4N5WjZOcV7FHJbqRI6jtCqL6u8FtPrlZz4=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "57d5f9683ff9a3b590643beeaf0364da819aedda",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-tmux",
"type": "github"
}
},
"tinted-zed": {
"flake": false,
"locked": {
"lastModified": 1725758778,
"narHash": "sha256-8P1b6mJWyYcu36WRlSVbuj575QWIFZALZMTg5ID/sM4=",
"owner": "tinted-theming",
"repo": "base16-zed",
"rev": "122c9e5c0e6f27211361a04fae92df97940eccf9",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-zed",
"type": "github"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"stylix",
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733222881,
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"zen-browser": {
"inputs": {
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1745943904,
"narHash": "sha256-AJ4AFfiIAW9N/qztn9DxeY+/PJqFZIbpRGk21keSC0Y=",
"lastModified": 1750557004,
"narHash": "sha256-P3H0y4eYALvie8iFcT1LqmR+cB5UgT/qFoUWY/CX5O4=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "64670840168a8ac7cc3a60f5e405a64c7bcd4b45",
"rev": "5bebd80f8684a7298013fcf9bf846369d3a6542a",
"type": "github"
},
"original": {

View File

@@ -7,6 +7,10 @@
url = "github:lilyinstarlight/nixos-cosmic";
inputs.nixpkgs.follows = "nixpkgs";
};
stylix = {
url = "github:danth/stylix";
inputs.nixpkgs.follows = "nixpkgs";
};
zen-browser.url = "github:0xc000022070/zen-browser-flake";
master.url = "github:NixOS/nixpkgs/master";
home-manager.url = "github:nix-community/home-manager";
@@ -15,10 +19,14 @@
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "nixpkgs";
};
astal = {
url = "github:aylur/astal";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, nixpkgs, nixos-cosmic, home-manager, hyprpanel, zen-browser, master, nixvim }@inputs:
outputs = { self, stylix, astal, nixpkgs, nixos-cosmic, home-manager, hyprpanel, zen-browser, master, nixvim }@inputs:
{
nixosConfigurations = {
nixos = nixpkgs.lib.nixosSystem {
@@ -35,13 +43,15 @@
[ inputs.hyprpanel.overlay ];
_module.args = { inherit inputs; };
}
#stylix.nixosModules.stylix
nixos-cosmic.nixosModules.default
./configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = {inherit inputs;};
home-manager.users.joshuaelm = {
imports = [ ./home.nix nixvim.homeManagerModules.nixvim];
imports = [ ./home.nix nixvim.homeManagerModules.nixvim stylix.homeModules.stylix ];
};
}
];

View File

@@ -8,18 +8,19 @@
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "sd_mod" ];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/f0d6eecb-87d2-44bd-b0b8-913fdd21900a";
fsType = "ext4";
{ device = "/dev/disk/by-uuid/b6501e43-45c0-46bc-b77f-2f42c3a15572";
fsType = "btrfs";
options = [ "subvol=@" ];
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/D16C-97D4";
{ device = "/dev/disk/by-uuid/FE68-923D";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
@@ -32,7 +33,6 @@
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp3s0.useDHCP = lib.mkDefault true;
# networking.interfaces.vboxnet0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;

View File

@@ -6,7 +6,7 @@
home.username = "joshuaelm";
home.homeDirectory = "/home/joshuaelm";
imports = [ modules/nvim ];
imports = [ modules/nvim ./modules/stylix.nix ./modules/hypr/hyprland.nix ];
home.packages = [
@@ -14,27 +14,31 @@
pkgs.waybar
pkgs.signal-desktop-bin
pkgs.swaybg
pkgs.kitty
pkgs.gpu-screen-recorder
pkgs.gpu-screen-recorder-gtk
pkgs.supersonic
pkgs.adw-gtk3
pkgs.cava
];
programs.hyprlock.enable = true;
programs.hyprlock.enable = false;
programs.kitty.enable = true;
programs.cava.enable = true;
programs.btop.enable = true;
programs.rofi.enable = true;
programs.rofi.package = pkgs.rofi-wayland;
services.hyprpaper.enable = true;
wayland.windowManager.hyprland.enable = true;
xdg.configFile.hypr.source = ./modules/hypr;
#xdg.configFile.hypr.source = ./modules/hypr;
xdg.configFile.waybar.source = ./modules/waybar;
xdg.configFile.cava.source = ./modules/cava;
xdg.configFile.kitty.source = ./modules/kitty;
xdg.configFile.rofi.source = ./modules/rofi;
#xdg.configFile.kitty.source = ./modules/kitty;
#xdg.configFile.rofi.source = ./modules/rofi;
xdg.configFile.dunst.source = ./modules/dunst;
home.file.".cache/ags/hyprpanel/options.json".source = ./modules/hyprpanel/options.json;
xdg.configFile.hypr.force = true;
xdg.configFile.waybar.force = true;
xdg.configFile.cava.force = true;
xdg.configFile.kitty.force = true;
xdg.configFile.rofi.force = true;
xdg.configFile.dunst.force = true;
home.file.".cache/ags/hyprpanel/options.json".force = true;
@@ -43,6 +47,50 @@
services.mpd-mpris.enable = true;
programs.rofi.extraConfig = {
show-icons = true;
drun-display-format = "{icon} {name}";
hide-scrollbar = true;
sidebar-mode = true;
dpi = 110;
font = "FreeSans Regular 12";
icon-theme = "Gruvbox-Plus-Dark";
};
programs.rofi.theme = {
window.height = 600;
window.width = 600;
window.border-radius = 10;
element = {
padding = 5;
border-radius = 10;
};
inputbar.padding = 14;
listview = {
padding = 8;
border-radius = "0 0 10 10";
border = "2 2 2 2";
dynamic = false;
};
"element-text element-icon" = {
size = 40;
margin = "0 10 0 0";
};
mainbox.children = "inputbar, message, listview";
mainbox.spacing = 0;
};
programs.kitty.extraConfig = ''
font_family Fira Code Nerd Font
bold_font auto
italic_font auto
bold_italic_font auto
confirm_os_window_close 0
cursor_shape beam
cursor_trail 3
'';
# This value determines the Home Manager release that your
# configuration is compatible with. This helps avoid breakage
# when a new Home Manager release introduces backwards
@@ -52,7 +100,33 @@
# the Home Manager release notes for a list of state version
# changes in each release.
home.stateVersion = "23.11";
xdg.dataFile = {
"Steam/compatibilitytools.d/SteamTinkerLaunch/compatibilitytool.vdf".text = ''
"compatibilitytools"
{
"compat_tools"
{
"Proton-stl" // Internal name of this tool
{
"install_path" "."
"display_name" "Steam Tinker Launch"
"from_oslist" "windows"
"to_oslist" "linux"
}
}
}
'';
"Steam/compatibilitytools.d/SteamTinkerLaunch/steamtinkerlaunch".source =
config.lib.file.mkOutOfStoreSymlink "${pkgs.steamtinkerlaunch}/bin/steamtinkerlaunch";
"Steam/compatibilitytools.d/SteamTinkerLaunch/toolmanifest.vdf".text = ''
"manifest"
{
"commandline" "/steamtinkerlaunch run"
"commandline_waitforexitandrun" "/steamtinkerlaunch waitforexitandrun"
}
'';
};
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;

View File

@@ -107,7 +107,7 @@
# 'sdl' uses the Simple DirectMedia Layer to render in a graphical context.
# 'sdl_glsl' uses SDL to create an OpenGL context. Write your own shaders or
# use one of the predefined ones.
; method = ncurses
; method = raw
# Orientation of the visualization. Can be 'bottom', 'top', 'left' or 'right'.
# Default is 'bottom'. Other orientations are only supported on sdl and ncruses
@@ -128,7 +128,7 @@
; raw_target = /dev/stdout
# Raw data format. Can be 'binary' or 'ascii'.
; data_format = binary
; data_format = ascii
# Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530).
; bit_format = 16bit
@@ -164,20 +164,6 @@
; for glsl output mode, keep rendering even if no audio
; continuous_rendering = 0
[color]
gradient = 0
gradient_count = 8
#GruvBox Green to Red Gradient
gradient_color_1 = '#98971a'
gradient_color_2 = '#98971a'
gradient_color_3 = '#fabd2f'
gradient_color_4 = '#fabd2f'
gradient_color_5 = '#fabd2f'
gradient_color_6 = '#d65d0e'
gradient_color_7 = '#cc241d'
gradient_color_8 = '#cc241d'
color = '#3b4252'
[smoothing]

View File

@@ -3,11 +3,12 @@ autogenerated = 0 # remove this line to remove the warning
source=~/.config/hypr/rose-pine.conf
# See https://wiki.hyprland.org/Configuring/Monitors/
monitor = HDMI-A-1, 3840x2160@60, 0x0, 1.5
#monitor = HDMI-A-1, disable
#monitor = HDMI-A-1, 3840x2160@60, 0x0, 1.5
monitor = HDMI-A-1, disable
#monitor = sunshine, highres@highrr, 0x0, 1
monitor = DP-1, highres@highrr, 0x0, 1
#monitor = DP-1, highres@highrr, 0x0, 1, bitdepth, 10, cm, hdr, sdrsaturation, 1, sdrbrightness, 1
exec-once = hyprctl dispatch workspace 1
exec-once = swaybg -i ~/NixOS-Configs/Wallpaper/sDpJ0mPGhn4FnbWOsOI4HoiYUvnyKjJck4RJnPZo-3609584059.jpg
#exec-once = linux-wallpaperengine --screen-root HDMI-A-1 --silent --fps 60 3000562427
exec-once = hyprlock
# exec-once = waybar
@@ -24,8 +25,8 @@ exec-once = sunshine
# Set programs that you use
$terminal = kitty
$fileManager = cosmic-files
$menu = rofi -config ~/.config/rofi/apps.rasi -show drun
$fileManager = thunar
$menu = rofi -show drun
# Some default env vars.
env = XCURSOR_SIZE,24
@@ -190,3 +191,7 @@ bind = $mainMod, mouse_up, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# Screen Recording
bind = , code:76, exec, killall -SIGUSR1 gpu-screen-recorder
bind = , code:75, exec, killall -SIGINT gpu-screen-recorder

198
modules/hypr/hyprland.nix Normal file
View File

@@ -0,0 +1,198 @@
{pkgs, ...}:
{
wayland.windowManager.hyprland.extraConfig = ''
autogenerated = 0 # remove this line to remove the warning
# See https://wiki.hyprland.org/Configuring/Monitors/
#monitor = HDMI-A-1, 3840x2160@60, 0x0, 1.5
monitor = HDMI-A-1, disable
#monitor = sunshine, highres@highrr, 0x0, 1
monitor = DP-1, highres@highrr, 0x0, 1
#monitor = DP-1, highres@highrr, 0x0, 1, bitdepth, 10, cm, hdr, sdrsaturation, 1, sdrbrightness, 1
exec-once = hyprctl dispatch workspace 1
#exec-once = linux-wallpaperengine --screen-root HDMI-A-1 --silent --fps 60 3000562427
exec-once = hyprlock
# exec-once = waybar
exec-once = hyprpanel
exec-once = systemctl --user start hyprpolkitagent
exec-once = sunshine
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
# Execute your favorite apps at launch
# exec-once = waybar & hyprpaper & firefox
# Set programs that you use
$terminal = kitty
$fileManager = thunar
$menu = rofi -show drun
# Some default env vars.
env = XCURSOR_SIZE,24
env = QT_QPA_PLATFORMTHEME,qt6ct # change to qt6ct if you have that
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
kb_layout = us
kb_variant =
kb_model =
kb_options =
kb_rules =
accel_profile = flat
follow_mouse = 1
touchpad {
natural_scroll = no
}
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
}
general {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
gaps_in = 5
gaps_out = 5
border_size = 2
layout = dwindle
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
allow_tearing = false
}
decoration {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
rounding = 10
blur {
enabled = yes
size = 5
passes = 3
new_optimizations = on
ignore_opacity = on
xray = false
}
shadow {
enabled = true
offset = 3, 3
color = rgba(323232cc)
}
}
animations {
enabled = yes
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
animation = border, 1, 10, default
animation = borderangle, 1, 8, default
animation = fade, 1, 7, default
animation = workspaces, 1, 6, default
}
dwindle {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
}
layerrule = unset, overlay
gestures {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
workspace_swipe = off
}
misc {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
force_default_wallpaper = 0 # Set to 0 to disable the anime mascot wallpapers
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# Window Rules
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Return, exec, $terminal
bind = $mainMod, Q, killactive,
bind = $mainMod, M, exec, hyprlock
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, V, togglefloating,
bind = $mainMod, Space, exec, $menu
bind = $mainMod, B, exec, zen
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, F, fullscreen,
bind = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+
bind = , XF86AudioLowerVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%-
# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10
# Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# Screen Recording
bind = , code:76, exec, killall -SIGUSR1 gpu-screen-recorder
bind = , code:75, exec, killall -SIGINT gpu-screen-recorder
'';
}

View File

@@ -1,4 +1,3 @@
include themes/nord.conf
font_family Fira Code Nerd Font
bold_font auto
@@ -7,3 +6,4 @@ bold_italic_font auto
confirm_os_window_close 0
cursor_shape beam
cursor_trail 3

View File

@@ -3,7 +3,6 @@
{
programs.nixvim = {
enable = true;
colorschemes.nord.enable = true;
plugins.nvim-tree.enable = true;
plugins.treesitter.enable = true;
plugins.lualine.enable = true;

2
modules/rofi/default.nix Normal file
View File

@@ -0,0 +1,2 @@
{pkgs, ...}:
{}

13
modules/stylix.nix Normal file
View File

@@ -0,0 +1,13 @@
{ pkgs, ... }:
{
stylix.enable = true;
stylix.polarity = "dark";
#stylix.targets.plymouth.enable = false;
stylix.targets.kitty.enable = true;
stylix.targets.hyprpaper.enable = true;
stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml";
stylix.image = pkgs.fetchurl {
url = "https://w.wallhaven.cc/full/1p/wallhaven-1py8lw.jpg";
hash = "sha256-smJTuprm8PVKWv56hfv9UMzDXkHm3R7O1ALaNpNYy3E=";
};
}

10
scripts/SteamDeckOLED Executable file
View File

@@ -0,0 +1,10 @@
#!/bin/bash
# Your main monitor (change this)
MONITOR="DP-1"
hyprctl keyword monitor HDMI-A-1,1280x800@90,auto,1,bitdepth,10,cm,hdr
# Disable the monitor
hyprctl keyword monitor $MONITOR,disable

6
scripts/screenON Executable file
View File

@@ -0,0 +1,6 @@
#!/bin/bash
hyprctl keyword monitor HDMI-A-1,disable
hyprctl keyword monitor DP-1,highres@highrr,auto,1