dev.fron.io rc / e56c066
users(bao): frobnicate gtk, cause something's wrong Tony Olagbaiye 8 months ago
3 changed file(s) with 41 addition(s) and 30 deletion(s). Raw diff Collapse all Expand all
00 [
11 ./emacs.nix
22 ./misc/platform.nix
3 ./misc/attrmods.nix
34 ]
33 # Slightly flimsy but means I don't need two files for this.
44 nixos = ! home-manager;
55 home-manager = args ? nixosConfig;
6
7 merge = xs: builtins.foldl' (a: b: a // b) {} xs;
86 in {
9 options = merge [
7 options = builtins.foldl' (a: b: a // b) {} [
108 (if home-manager then {
119
12 home.packagesAttrs = lib.mkOption {
13 type = lib.types.attrs;
14 description = "Attrset based mirror of home.packages";
10 home-manager.users = lib.mkOption {
11 type = with lib.types; attrsOf (submoduleWith {
12 inherit specialArgs;
13 modules = [{
14 options.home.packagesAttrs = lib.mkOption {
15 type = lib.types.attrs;
16 description = "Attrset based mirror of home.packages";
17 };
18 config.home.packagesAttrs = lib.mkOverride 100 (lib.zipAttrs
19 (map (p: { ${if p ? pname then p.pname else p.name} = p; })
20 config.home.packages));
21 }];
22 });
1523 };
1624
1725 } else {})
2432
2533 } else {})
2634 ];
27 config = merge [
28 (if home-manager then {
35 config = if nixos then {
2936
30 home.packagesAttrs = lib.mkOverride 100 (lib.zipAttrs
31 (map (p: { ${if p ? pname then p.pname else p.name} = p; })
32 config.home.packages));
37 environment.systemPackagesAttrs = lib.mkOverride 100 (lib.zipAttrs
38 (map (p: { ${if p ? pname then p.pname else p.name} = p; })
39 config.environment.systemPackages));
3340
34 } else {})
35 (if nixos then {
36
37 environment.systemPackagesAttrs = lib.mkOverride 100 (lib.zipAttrs
38 (map (p: { ${if p ? pname then p.pname else p.name} = p; })
39 config.environment.systemPackages));
40
41 } else {})
42 ];
41 } else {};
4342 }
256256
257257 gtk = {
258258 enable = true;
259 font = {
260 name = "Roboto 9.75";
261 package = pkgs.roboto;
262 };
263 iconTheme = {
264 name = "Paper";
265 package = pkgs.paper-icon-theme;
266 };
259267 theme = {
260 name = "Adwaita-dark";
261 package = pkgs.gnome-themes-extra;
262 };
263 iconTheme = {
264 name = "Adwaita-dark";
265 package = pkgs.gnome3.adwaita-icon-theme;
266 };
267 font = {
268 name = "Cantarell 11";
269 package = pkgs.cantarell-fonts;
268 name = "Plata-Noir";
269 package = pkgs.plata-theme;
270 };
271 gtk2.extraConfig = ''
272 gtk-cursor-blink = 0
273 gtk-im-module = "xim"
274 gtk-key-theme-name = "Emacs"
275 '';
276 gtk3.extraConfig = {
277 gtk-application-prefer-dark-theme = 1;
278 gtk-cursor-blink = false;
279 gtk-im-module = "xim";
280 gtk-key-theme-name = "Emacs";
270281 };
271282 };
272283