diff --git a/flake.lock b/flake.lock index ff0516a..ef4a55a 100644 --- a/flake.lock +++ b/flake.lock @@ -107,11 +107,11 @@ "zen-browser": "zen-browser" }, "locked": { - "lastModified": 1771928247, - "narHash": "sha256-LkyNLrd5SEE4/JDH9sih5O6cuQ302b5q7I2BzVEAwos=", + "lastModified": 1772125727, + "narHash": "sha256-J41Xm8ewrCn16r0bDtOX+qu+uhNiOp9EAvy4FJ6mhKY=", "owner": "Cian-H", "repo": "Nixers", - "rev": "9b5b4b1804b045a7d33152b4ca68584571cb3038", + "rev": "918d6b2bf5fbe032fda2bf989e0716de4d68e057", "type": "github" }, "original": { @@ -262,11 +262,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1771889317, - "narHash": "sha256-YV17Q5lEU0S9ppw08Y+cs4eEQJBuc79AzblFoHORLMU=", + "lastModified": 1772048434, + "narHash": "sha256-/wA0OaH6kZ/pFA+nXR/tvg5oupOmEDmMS5us79JT60o=", "owner": "Mic92", "repo": "sops-nix", - "rev": "b027513c32e5b39b59f64626b87fbe168ae02094", + "rev": "334daa7c273dd8bf7a0cd370e4e16022b64e55e9", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 74bca2a..94aabfd 100644 --- a/flake.nix +++ b/flake.nix @@ -24,11 +24,19 @@ ... } @ inputs: let inherit (self) outputs; - worklaptopTheme = pkgs: { - theme = { + worklaptopTheme = { + pkgs, + unstablePkgs, + nixers, + }: { + gtkTheme = { name = "Tokyonight-Dark"; package = pkgs.tokyonight-gtk-theme; }; + qtTheme = { + name = "Kvantum-Tokyo-Night"; + package = nixers.tokyonight-kvantum-theme; + }; iconTheme = { name = "Papirus-Dark"; package = pkgs.papirus-icon-theme; @@ -62,11 +70,12 @@ }; in nixpkgs.lib.nixosSystem { - specialArgs = { - inherit inputs outputs; + specialArgs = let unstablePkgs = inputs.nixpkgs-unstable.legacyPackages.x86_64-linux; nixers = inputs.nixers-repo.packages.x86_64-linux; - theme = worklaptopTheme pkgs; + in { + inherit inputs outputs unstablePkgs nixers; + theme = worklaptopTheme {inherit pkgs unstablePkgs nixers;}; }; modules = [ ./nixos/worklaptop.nix @@ -129,8 +138,7 @@ home-manager.lib.homeManagerConfiguration { inherit pkgs; - extraSpecialArgs = { - inherit inputs outputs; + extraSpecialArgs = let unstablePkgs = import nixpkgs-unstable { system = "x86_64-linux"; cudaSupport = true; @@ -140,7 +148,9 @@ }; }; nixers = inputs.nixers-repo.packages.${pkgs.stdenv.hostPlatform.system}; - theme = worklaptopTheme pkgs; + in { + inherit inputs outputs unstablePkgs nixers; + theme = worklaptopTheme {inherit pkgs unstablePkgs nixers;}; }; modules = [ diff --git a/home-manager/core/dotfiles b/home-manager/core/dotfiles index a0e232f..a579237 160000 --- a/home-manager/core/dotfiles +++ b/home-manager/core/dotfiles @@ -1 +1 @@ -Subproject commit a0e232ff29457e09f0a6e9e217756e9976a92345 +Subproject commit a57923759707c0efdd6f6c8b8c6d1e4caccf95db diff --git a/home-manager/core/dotfiles.nix b/home-manager/core/dotfiles.nix index 0a663c7..fd6193c 100644 --- a/home-manager/core/dotfiles.nix +++ b/home-manager/core/dotfiles.nix @@ -95,7 +95,6 @@ "hg".source = ./dotfiles/dot_config/hg; "stylua.toml".source = ./dotfiles/dot_config/stylua.toml; "electron-flags.conf".source = ./dotfiles/dot_config/electron-flags.conf; - "Kvantum".source = ./dotfiles/dot_config/Kvantum; "foot".source = ./dotfiles/dot_config/foot; }; } diff --git a/home-manager/worklaptop/packages.nix b/home-manager/worklaptop/packages.nix index f231503..2fb237f 100644 --- a/home-manager/worklaptop/packages.nix +++ b/home-manager/worklaptop/packages.nix @@ -73,8 +73,6 @@ in { pkgs.gtk-engine-murrine pkgs.gtk_engines pkgs.hicolor-icon-theme - pkgs.phinger-cursors - pkgs.tokyonight-gtk-theme # Backend dev tools pkgs.lua54Packages.lua pkgs.luajitPackages.luarocks diff --git a/home-manager/worklaptop/theming.nix b/home-manager/worklaptop/theming.nix index 27faf28..8250a88 100644 --- a/home-manager/worklaptop/theming.nix +++ b/home-manager/worklaptop/theming.nix @@ -16,8 +16,8 @@ package = theme.iconTheme.package; }; theme = { - name = theme.theme.name; - package = theme.theme.package; + name = theme.gtkTheme.name; + package = theme.gtkTheme.package; }; cursorTheme = { name = theme.cursorTheme.name; @@ -39,13 +39,34 @@ ''; }; }; + + # QT theming + qt = { + enable = true; + platformTheme.name = "kvantum"; + style.name = "kvantum"; + }; + + xdg.configFile."Kvantum/kvantum.kvconfig".text = '' + [General] + theme=${theme.qtTheme.name} + ''; + # dconf theming settings dconf.settings = { "org/gnome/desktop/interface" = { color-scheme = "prefer-dark"; - gtk-theme = theme.theme.name; + gtk-theme = theme.gtkTheme.name; icon-theme = theme.iconTheme.name; cursor-theme = theme.cursorTheme.name; }; }; + + # Ensure theming packages are installed + home.packages = [ + theme.gtkTheme.package + theme.qtTheme.package + theme.iconTheme.package + theme.cursorTheme.package + ]; } diff --git a/nixos/worklaptop/programs.nix b/nixos/worklaptop/programs.nix index 12864e2..660bf6f 100644 --- a/nixos/worklaptop/programs.nix +++ b/nixos/worklaptop/programs.nix @@ -18,8 +18,8 @@ in { regreet = { enable = true; theme = { - name = theme.theme.name; - package = theme.theme.package; + name = theme.gtkTheme.name; + package = theme.gtkTheme.package; }; cursorTheme = { name = theme.cursorTheme.name; diff --git a/nixos/worklaptop/theming.nix b/nixos/worklaptop/theming.nix index f6baa10..372f416 100644 --- a/nixos/worklaptop/theming.nix +++ b/nixos/worklaptop/theming.nix @@ -6,11 +6,14 @@ theme, ... }: { - # GTK theming - environment.sessionVariables.GTK_THEME = theme.theme.name; + # Session Variable for GTK + environment.sessionVariables.GTK_THEME = theme.gtkTheme.name; - # Delegate QT theming to kvantum - environment.sessionVariables.QT_STYLE_OVERRIDE = "kvantum"; + # QT config + qt = { + enable = true; + style = "kvantum"; + }; # Fonts fonts = { @@ -50,5 +53,10 @@ # Adwaita (i love gnome, but god damn is adwaita annoying on other DEs) pkgs.adwaita-icon-theme pkgs.libadwaita + # My theme packages set at the top level + theme.gtkTheme.package + theme.qtTheme.package + theme.iconTheme.package + theme.cursorTheme.package ]; }