wip(home): refactor home modules *WILL NOT BUILD*

This commit is contained in:
ooks-io 2024-06-04 21:19:35 +12:00
parent 2033810429
commit 6a591ecbf7
115 changed files with 1028 additions and 791 deletions

View file

@ -0,0 +1,19 @@
{ 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;
};
};
}

View file

@ -0,0 +1,9 @@
{
imports = [
./fonts.nix
./cursor.nix
./gtk.nix
./qt.nix
./wallpaper.nix
];
}

View file

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

View file

@ -0,0 +1,35 @@
{ config, pkgs, inputs, lib, ... }:
let
inherit (inputs.nix-colors.lib-contrib { inherit pkgs; }) gtkThemeFromScheme;
inherit (lib) mkIf;
cfg = config.ooknet.gtk;
in
{
config = mkIf cfg.enable (rec {
gtk = {
enable = true;
font = {
name = config.ooknet.fonts.regular.family;
size = 12;
};
theme = {
name = config.colorscheme.slug;
package = gtkThemeFromScheme { scheme = config.colorscheme; };
};
iconTheme = {
name = "Papirus-Dark";
package = pkgs.papirus-icon-theme;
};
};
services.xsettingsd = {
enable = true;
settings = {
"Net/ThemeName" = gtk.theme.name;
"Net/IconThemeName" = gtk.iconTheme.name;
};
};
});
}

View file

@ -0,0 +1,16 @@
{ config, lib, ... }:
let
inherit (lib) mkIf;
cfg = config.ooknet.qt;
in
{
config = mkIf cfg.enable {
qt = {
enable = true;
platformTheme.name = "gtk";
};
};
}

View file

@ -0,0 +1,26 @@
{ 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.theme.wallpaper;
in
{
config = mkIf cfg.enable {
ooknet.theme.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;
});
};
}