Compare commits

...

4 commits

4 changed files with 68 additions and 27 deletions

View file

@ -23,6 +23,48 @@
"type": "github" "type": "github"
} }
}, },
"ags": {
"inputs": {
"astal": "astal",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1732307740,
"narHash": "sha256-ZDsYdZOtg5qkK/wfLLB83B3SI+fE32S+/6Ey0ggHODM=",
"owner": "aylur",
"repo": "ags",
"rev": "81159966eb8b39b66c3efc133982fd76920c9605",
"type": "github"
},
"original": {
"owner": "aylur",
"repo": "ags",
"type": "github"
}
},
"astal": {
"inputs": {
"nixpkgs": [
"ags",
"nixpkgs"
]
},
"locked": {
"lastModified": 1731952585,
"narHash": "sha256-Sh1E7sJd8JJM3PCU1ZOei/QWz97OLCENIi2rTRoaniw=",
"owner": "aylur",
"repo": "astal",
"rev": "664c7a4ddfcf48c6e8accd3c33bb94424b0e8609",
"type": "github"
},
"original": {
"owner": "aylur",
"repo": "astal",
"type": "github"
}
},
"basix": { "basix": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
@ -2604,6 +2646,7 @@
"root": { "root": {
"inputs": { "inputs": {
"agenix": "agenix", "agenix": "agenix",
"ags": "ags",
"basix": "basix", "basix": "basix",
"deploy-rs": "deploy-rs", "deploy-rs": "deploy-rs",
"firefox-addons": "firefox-addons", "firefox-addons": "firefox-addons",

View file

@ -6,6 +6,7 @@
nixpkgs, nixpkgs,
systems, systems,
agenix, agenix,
ags,
deploy-rs, deploy-rs,
treefmt-nix, treefmt-nix,
... ...
@ -20,6 +21,12 @@
pkgs.git pkgs.git
deploy-rs.packages.${pkgs.system}.default deploy-rs.packages.${pkgs.system}.default
agenix.packages.${pkgs.system}.default agenix.packages.${pkgs.system}.default
(ags.packages.${pkgs.system}.default.override {
extraPackages = [
ags.packages.${pkgs.system}.astal3
ags.packages.${pkgs.system}.battery
];
})
]; ];
}; };
}); });
@ -52,6 +59,10 @@
url = "github:ryantm/agenix"; url = "github:ryantm/agenix";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
ags = {
url = "github:aylur/ags";
inputs.nixpkgs.follows = "nixpkgs";
};
basix.url = "github:notashelf/basix"; basix.url = "github:notashelf/basix";
deploy-rs.url = "github:serokell/deploy-rs"; deploy-rs.url = "github:serokell/deploy-rs";
firefox-addons = { firefox-addons = {

View file

@ -65,23 +65,8 @@ in {
home-manager.users.nezia = { home-manager.users.nezia = {
home.pointerCursor = { home.pointerCursor = {
inherit (config.theme.cursorTheme) name package size; inherit (config.theme.cursorTheme) name package size;
}; gtk.enable = true;
x11.enable = true;
gtk = {
iconTheme = {
inherit (config.theme.gtk.iconTheme) name package;
};
theme = lib.mkIf (!config.services.xserver.desktopManager.gnome.enable) {
inherit (config.theme.gtk.theme) name package;
};
gtk3.extraConfig = {
gtk-application-prefer-dark-theme =
if scheme.variant == "dark"
then "1"
else "0";
};
}; };
services.swaync.style = services.swaync.style =

View file

@ -6,13 +6,17 @@
... ...
}: let }: let
inherit (builtins) pathExists; inherit (builtins) pathExists;
inherit (lib) mkIf mkOption mkEnableOption; inherit (lib) mkIf mkOption;
inherit (lib.types) package str; inherit (lib.types) bool package str;
cfg = config.theme.gtk; cfg = config.theme.gtk;
in { in {
options.theme.gtk = { options.theme.gtk = {
enable = mkEnableOption "enable GTK theming options"; enable = mkOption {
type = bool;
description = "enable GTK theming options";
default = config.theme.enable;
};
theme = { theme = {
name = mkOption { name = mkOption {
type = str; type = str;
@ -31,24 +35,22 @@ in {
}; };
}; };
}; };
iconTheme = { iconTheme = {
name = mkOption { name = mkOption {
type = str; type = str;
description = "The name for the icon theme that will be used for GTK programs"; description = "The name for the icon theme that will be used for GTK programs";
default = "Papirus-Dark"; default = "kora";
}; };
package = mkOption { package = mkOption {
type = package; type = package;
description = "The GTK icon theme to be used"; description = "The GTK icon theme to be used";
default = pkgs.catppuccin-papirus-folders.override { default = pkgs.kora-icon-theme;
accent = "lavender";
flavor = "macchiato";
};
}; };
}; };
}; };
config = {
config = mkIf cfg.enable {
assertions = [ assertions = [
(let (let
themePath = cfg.theme.package + /share/themes + "/${cfg.theme.name}"; themePath = cfg.theme.package + /share/themes + "/${cfg.theme.name}";