feat(nixos:appearance): move appearance options to nixos

This commit is contained in:
ooks-io 2024-08-05 17:29:53 +12:00
parent cedeb52103
commit ceb66c03cf
51 changed files with 393 additions and 377 deletions

View file

@ -1,18 +1,7 @@
{
lib,
config,
...
}: let
inherit (lib) mkIf;
cfg = config.ooknet.cursor;
in {
config = mkIf cfg.enable {
home.pointerCursor = {
package = cfg.package;
name = cfg.name;
size = cfg.size;
gtk.enable = true;
x11.enable = true;
};
{osConfig, ...}: {
home.pointerCursor = {
inherit (osConfig.ooknet.appearance.cursor) package name size;
gtk.enable = true;
x11.enable = true;
};
}

View file

@ -4,6 +4,5 @@
./cursor.nix
./gtk.nix
./qt.nix
./wallpaper.nix
];
}

View file

@ -1,21 +1,17 @@
{
lib,
config,
osConfig,
pkgs,
...
}: let
inherit (lib) mkIf;
cfg = config.ooknet.fonts;
inherit (osConfig.ooknet.appearance.fonts) monospace regular;
in {
config = mkIf cfg.enable {
fonts.fontconfig.enable = true;
home.packages = [
cfg.monospace.package
cfg.regular.package
fonts.fontconfig.enable = true;
home.packages = [
monospace.package
regular.package
pkgs.noto-fonts
pkgs.noto-fonts-cjk
pkgs.noto-fonts-emoji
];
};
pkgs.noto-fonts
pkgs.noto-fonts-cjk
pkgs.noto-fonts-emoji
];
}

View file

@ -1,12 +1,12 @@
{
config,
osConfig,
pkgs,
inputs,
lib,
...
}: let
inherit (inputs.nix-colors.lib-contrib {inherit pkgs;}) gtkThemeFromScheme;
inherit (lib) mkIf;
inherit (osConfig.ooknet.appearance.colorscheme) palette;
cfg = config.ooknet.gtk;
in {
config = mkIf cfg.enable rec {
@ -17,8 +17,8 @@ in {
size = 12;
};
theme = {
name = config.colorscheme.slug;
package = gtkThemeFromScheme {scheme = config.colorscheme;};
name = "adw-gtk3";
package = pkgs.adw-gtk3;
};
iconTheme = {
name = "Papirus-Dark";
@ -26,6 +26,8 @@ in {
};
};
#TODO: add gtk css configuration
services.xsettingsd = {
enable = true;
settings = {

View file

@ -1,29 +0,0 @@
{
lib,
config,
inputs,
pkgs,
osConfig,
...
}: let
inherit (inputs.nix-colors.lib-contrib {inherit pkgs;}) nixWallpaperFromScheme;
inherit (lib) mkDefault mkIf;
monitors = osConfig.ooknet.host.hardware.monitors;
cfg = config.ooknet.wallpaper;
in {
config = mkIf cfg.enable {
ooknet.wallpaper.path = let
largest = f: xs: builtins.head (builtins.sort (a: b: a > b) (map f xs));
largestWidth = largest (x: x.width) monitors;
largestHeight = largest (x: x.height) monitors;
in
mkDefault (nixWallpaperFromScheme
{
scheme = config.colorscheme;
width = largestWidth;
height = largestHeight;
logoScale = 4;
});
};
}