🎉📝 initialize v2

This commit is contained in:
Jo 2025-01-13 18:54:17 +01:00
parent 5087472710
commit 5abbdd12fb
95 changed files with 38 additions and 2693 deletions

View file

@ -1,8 +0,0 @@
{
pkgs,
...
}: {
home.packages = with pkgs; [
openssh
];
}

View file

@ -1,88 +0,0 @@
{
lib,
pkgs,
config,
osConfig,
namespace,
...
}: with lib; with lib.${namespace};
let
cfg = config.${namespace}.desktop.gnome;
in
{
options.${namespace}.desktop.gnome = with types; {
enabled-extensions = mkOption {
type = listOf package;
default = with pkgs.gnomeExtensions; [ dash-to-dock user-themes blur-my-shell appindicator unite color-picker clipboard-history ];
example = [ dash-to-dock blur-my-shell ];
description = "Specify gnome extensions to install.";
};
favorite-apps = mkOption {
type = listOf str;
default = ["org.gnome.Nautilus.desktop" "obsidian.desktop" "zen.desktop" "dev.zed.Zed.desktop"];
example = ["org.gnome.Nautilus.desktop" "obsidian.desktop"];
description = "Specify your favorite apps (sorted left to right).";
};
extensions = {
unite = {
show-window-buttons = mkOption {
type = str;
default = "never";
example = "never | maximized | tiled | both | always";
description = "Specify when Unite should display window buttons within the top panel.";
};
hide-window-titlebars = mkOption {
type = str;
default = "maximized";
example = "never | maximized | tiled | both | always";
description = "Specify when Unite should hide window titlebars.";
};
};
blur-my-shell = {
enable-blur = mkOpt bool false "Whether to enable blur-my-shell application blur.";
};
};
wallpaper = mkOpt str (builtins.toString ./wallpapers/abstract/amber-d.jxl) "Specify the path of your prefered Gnome wallpaper.";
};
config = mkIf osConfig.${namespace}.desktop.gnome.enable {
home.packages = cfg.enabled-extensions;
dconf.settings = {
"org/gnome/shell" = {
favorite-apps = cfg.favorite-apps;
enabled-extensions = forEach cfg.enabled-extensions (x: x.extensionUuid);
disabled-extensions = []; # Make sure none of our extensions are disabled on system rebuild
};
"org/gnome/shell/extensions/unite" = mkIf (builtins.elem pkgs.gnomeExtensions.unite cfg.enabled-extensions) {
show-window-buttons = cfg.extensions.unite.show-window-buttons;
hide-window-titlebars = cfg.extensions.unite.hide-window-titlebars;
use-activities-text = false;
extend-left-box = false;
reduce-panel-spacing = false;
show-legacy-tray = false;
show-appmenu-button = false;
show-desktop-name = false;
enable-titlebar-actions = false;
restrict-to-primary-screen = false;
hide-activities-button = "never";
autofocus-windows = true;
notifications-position = "right";
};
"org/gnome/shell/extensions/blur-my-shell/applications" = mkIf cfg.extensions.blur-my-shell.enable-blur {
blur = true;
sigma = 30;
opacity = 230;
enable-all = true;
};
"org/gnome/desktop/background" = {
picture-uri = cfg.wallpaper;
picture-uri-dark = cfg.wallpaper;
};
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
};
};
};
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 166 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 620 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 549 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 554 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 815 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 836 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 707 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 760 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 864 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1,013 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5 MiB

View file

@ -1,17 +0,0 @@
{
lib,
namespace,
config,
pkgs,
...
}: with lib; with lib.${namespace};
let
palette = (pkgs.lib.importJSON (config.catppuccin.sources.palette + "/palette.json")).${config.catppuccin.flavor}.colors;
in
{
options.palette = mkOption { type = types.attrsOf types.raw; };
config = {
inherit palette;
};
}

View file

@ -1,23 +0,0 @@
{
lib,
config,
namespace,
...
}:
let
inherit (lib) mkEnableOption mkIf;
cfg = config.${namespace}.themes.catppuccin.black-box;
in
{
options.${namespace}.themes.catppuccin.black-box = {
enable = mkEnableOption "Whether to enable the catppuccin theme for black-box.";
};
config = mkIf cfg.enable {
dconf.settings = {
"com/raggesilver/BlackBox" = {
theme-dark = "Catppuccin Macchiato";
};
};
};
}

View file

@ -1,6 +0,0 @@
{
lib,
...
}: {
home.file.".config/fish/themes/Catppuccin\ Macchiato.theme".source = lib.snowfall.fs.get-file "resources/apps/fish/Catppuccin\ Macchiato.theme";
}

View file

@ -1,13 +0,0 @@
{
...
}: {
catppuccin = {
enable = true;
accent = "blue";
flavor = "macchiato";
cursors.enable = true;
cursors.accent = "blue";
cursors.flavor = "macchiato";
};
}

View file

@ -1,166 +0,0 @@
{
lib,
namespace,
config,
pkgs,
...
}: with lib; with lib.${namespace};
let
# Stolen from Oli @ git.gay, basically just themes default libadwaita components.
css = pkgs.writeTextFile {
name = "gtk-css";
text = ''
@define-color accent_color ${config.palette.maroon.hex};
@define-color accent_bg_color ${config.palette.maroon.hex};
@define-color accent_fg_color ${config.palette.base.hex};
@define-color destructive_color ${config.palette.red.hex};
@define-color destructive_bg_color ${config.palette.red.hex};
@define-color destructive_fg_color ${config.palette.base.hex};
@define-color success_color ${config.palette.green.hex};
@define-color success_bg_color ${config.palette.green.hex};
@define-color success_fg_color ${config.palette.base.hex};
@define-color warning_color ${config.palette.mauve.hex};
@define-color warning_bg_color ${config.palette.mauve.hex};
@define-color warning_fg_color ${config.palette.base.hex};
@define-color error_color ${config.palette.red.hex};
@define-color error_bg_color ${config.palette.red.hex};
@define-color error_fg_color ${config.palette.base.hex};
@define-color window_bg_color ${config.palette.base.hex};
@define-color window_fg_color ${config.palette.text.hex};
@define-color view_bg_color ${config.palette.base.hex};
@define-color view_fg_color ${config.palette.text.hex};
@define-color headerbar_bg_color ${config.palette.mantle.hex};
@define-color headerbar_fg_color ${config.palette.text.hex};
@define-color headerbar_border_color rgba(${builtins.toString config.palette.base.rgb.r}, ${builtins.toString config.palette.base.rgb.g}, ${builtins.toString config.palette.base.rgb.b}, 0.7);
@define-color headerbar_backdrop_color @window_bg_color;
@define-color headerbar_shade_color rgba(0, 0, 0, 0.07);
@define-color headerbar_darker_shade_color rgba(0, 0, 0, 0.07);
@define-color sidebar_bg_color ${config.palette.mantle.hex};
@define-color sidebar_fg_color ${config.palette.text.hex};
@define-color sidebar_backdrop_color @window_bg_color;
@define-color sidebar_shade_color rgba(0, 0, 0, 0.07);
@define-color secondary_sidebar_bg_color @sidebar_bg_color;
@define-color secondary_sidebar_fg_color @sidebar_fg_color;
@define-color secondary_sidebar_backdrop_color @sidebar_backdrop_color;
@define-color secondary_sidebar_shade_color @sidebar_shade_color;
@define-color card_bg_color ${config.palette.mantle.hex};
@define-color card_fg_color ${config.palette.text.hex};
@define-color card_shade_color rgba(0, 0, 0, 0.07);
@define-color dialog_bg_color ${config.palette.mantle.hex};
@define-color dialog_fg_color ${config.palette.text.hex};
@define-color popover_bg_color ${config.palette.mantle.hex};
@define-color popover_fg_color ${config.palette.text.hex};
@define-color popover_shade_color rgba(0, 0, 0, 0.07);
@define-color shade_color rgba(0, 0, 0, 0.07);
@define-color scrollbar_outline_color ${config.palette.surface0.hex};
@define-color blue_1 ${config.palette.blue.hex};
@define-color blue_2 ${config.palette.blue.hex};
@define-color blue_3 ${config.palette.blue.hex};
@define-color blue_4 ${config.palette.blue.hex};
@define-color blue_5 ${config.palette.blue.hex};
@define-color green_1 ${config.palette.green.hex};
@define-color green_2 ${config.palette.green.hex};
@define-color green_3 ${config.palette.green.hex};
@define-color green_4 ${config.palette.green.hex};
@define-color green_5 ${config.palette.green.hex};
@define-color yellow_1 ${config.palette.yellow.hex};
@define-color yellow_2 ${config.palette.yellow.hex};
@define-color yellow_3 ${config.palette.yellow.hex};
@define-color yellow_4 ${config.palette.yellow.hex};
@define-color yellow_5 ${config.palette.yellow.hex};
@define-color orange_1 ${config.palette.peach.hex};
@define-color orange_2 ${config.palette.peach.hex};
@define-color orange_3 ${config.palette.peach.hex};
@define-color orange_4 ${config.palette.peach.hex};
@define-color orange_5 ${config.palette.peach.hex};
@define-color red_1 ${config.palette.red.hex};
@define-color red_2 ${config.palette.red.hex};
@define-color red_3 ${config.palette.red.hex};
@define-color red_4 ${config.palette.red.hex};
@define-color red_5 ${config.palette.red.hex};
@define-color purple_1 ${config.palette.mauve.hex};
@define-color purple_2 ${config.palette.mauve.hex};
@define-color purple_3 ${config.palette.mauve.hex};
@define-color purple_4 ${config.palette.mauve.hex};
@define-color purple_5 ${config.palette.mauve.hex};
@define-color brown_1 ${config.palette.flamingo.hex};
@define-color brown_2 ${config.palette.flamingo.hex};
@define-color brown_3 ${config.palette.flamingo.hex};
@define-color brown_4 ${config.palette.flamingo.hex};
@define-color brown_5 ${config.palette.flamingo.hex};
@define-color light_1 ${config.palette.mantle.hex};
@define-color light_2 ${config.palette.mantle.hex};
@define-color light_3 ${config.palette.mantle.hex};
@define-color light_4 ${config.palette.mantle.hex};
@define-color light_5 ${config.palette.mantle.hex};
@define-color dark_1 ${config.palette.mantle.hex};
@define-color dark_2 ${config.palette.mantle.hex};
@define-color dark_3 ${config.palette.mantle.hex};
@define-color dark_4 ${config.palette.mantle.hex};
@define-color dark_5 ${config.palette.mantle.hex};
'';
};
cfg = config.${namespace}.themes.catppuccin.gtk;
in
{
options.${namespace}.themes.catppuccin.gtk = { enable = mkEnableOption "Enable the Catppuccin theme for GTK"; };
config = mkIf cfg.enable {
home.packages = with pkgs; [
(colloid-gtk-theme.override {
themeVariants = ["default"];
colorVariants = ["dark"];
sizeVariants = ["standard"];
tweaks = ["catppuccin"];
})
];
gtk = {
enable = true;
font = {
name = "Poppins";
size = 12;
package = pkgs.poppins;
};
theme = {
name = "adw-gtk3-dark";
package = pkgs.adw-gtk3;
};
gtk3 = {
extraCss = ''@import url("${css}");'';
extraConfig = {
gtk-application-prefer-dark-theme = 1;
};
};
gtk4 = {
extraCss = ''@import url("${css}");'';
};
};
catppuccin = {
gtk = {
icon = {
enable = true;
accent = "maroon";
flavor = "mocha";
};
};
};
dconf.settings = {
"org/gnome/shell/extensions/user-theme" = {
name = "Colloid-Dark-Catppuccin";
};
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
cursor-theme = "catppuccin-macchiato-blue-cursors";
};
};
};
}

View file

@ -1,16 +0,0 @@
{
lib,
namespace,
...
}:
let
inherit (lib.${namespace}) mkOpt;
in
{
options.${namespace}.user = with lib.types; {
name = mkOpt str "Jo" "The user's short name.";
fullName = mkOpt str "Johannes Reckers" "The user's full name.";
email = mkOpt str "reckers.johannes@proton.me" "The user's primary E-Mail address.";
icon = mkOpt str "./icon.jpg" "The path to the users prefered icon.";
};
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB