From f0997da7cb27bdf47770ea3036768078e9011ccf Mon Sep 17 00:00:00 2001 From: "info@data-pro.nu" Date: Mon, 16 Mar 2026 17:01:02 +0000 Subject: [PATCH] Still GTK looks --- Droidnix/README.html | 773 +++++++++--------- Droidnix/README.org | 58 +- .../applications/file_management/thunar.nix | 21 +- Droidnix/generated/system/core/theme.nix | 30 + Droidnix/generated/system/core/top.nix | 1 + 5 files changed, 469 insertions(+), 414 deletions(-) create mode 100644 Droidnix/generated/system/core/theme.nix diff --git a/Droidnix/README.html b/Droidnix/README.html index 4ed71c0b1..e754ce0fe 100644 --- a/Droidnix/README.html +++ b/Droidnix/README.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + Droidnix: A Dendritic NixOS + Home Manager Configuration NixOS Configuration Structure @@ -204,126 +204,127 @@

Table of Contents

-
-

Shortcuts

-
+
+

Shortcuts

+

Introduction The Assets Folder @@ -339,26 +340,26 @@

Introduction   intro

-
-

What is Droidnix

-
+
+

What is Droidnix

+

Droidnix is a modular, declarative NixOS + Home Manager configuration system. It allows users to choose between Hyprland and Mangowc as their window manager, with shared and WM-specific configurations managed via Emacs Org and Nix Flakes. The project is designed for reproducibility, maintainability, and cross-machine compatibility.

-
-

Installed components:

-
+
+

Installed components:

+
    -
  • Core
  • -
  • Hyprland
  • -
  • Mangowc
  • +
  • Core
  • +
  • Hyprland
  • +
  • Mangowc
-
-

Goals, project Structure, import hierarchy

-
+
+

Goals, project Structure, import hierarchy

+

This project uses a modular NixOS configuration with Hyprland and MangoWC support, designed for literate programming and cross-device reusability. The Droidnix repository is organized into two main parts: @@ -371,9 +372,9 @@ The Droidnix repository is organized into two main parts:

-
-

Root Level

-
+
+

Root Level

+
  • flake.nix is the entry point and imports:
      @@ -384,23 +385,23 @@ The Droidnix repository is organized into two main parts:
-
-

Generated Structure

-
+
+

Generated Structure

+

The generated/ directory contains all generated configurations, divided into three main groups: system, hyprland, and mangowc.

-
-

System (generated/system/)

-
+
+

System (generated/system/)

+

This directory contains system-wide configurations that are independent of the window manager.

-
-

Applications (applications/)

-
+
+

Applications (applications/)

+
  • file_management/: Configurations for file managers and storage solutions.
  • gaming/: Settings for gaming-related software.
  • @@ -410,9 +411,9 @@ This directory contains system-wide configurations that are independent of the w
-
-

Development (development/)

-
+
+

Development (development/)

+
  • databases/: Settings for local databases.
  • devops_ci_cd/: Configurations for DevOps tools.
  • @@ -422,9 +423,9 @@ This directory contains system-wide configurations that are independent of the w
-
-

System Management (system_management/)

-
+
+

System Management (system_management/)

+
  • backups/: Settings for backup software.
  • bluetooth/: Configurations for Bluetooth devices and services.
  • @@ -443,9 +444,9 @@ This directory contains system-wide configurations that are independent of the w
-
-

Hyprland (generated/hyprland/)

-
+
+

Hyprland (generated/hyprland/)

+

This directory contains configurations specific to Hyprland.

@@ -461,14 +462,14 @@ This directory contains configurations specific to Hyprland.
  • window_rules/: Rules for window behavior.
  • -
    +
     <<TREE>>
     
    -
    -

    First Setup

    -
    +
    +

    First Setup

    +
    1. Clone this repository.
    2. Run the setup script: ./setup_droidnix.sh.
    3. @@ -490,9 +491,9 @@ This directory contains configurations specific to Hyprland. The .assets/ folder contains all static files, such as configs, scripts, and themes. These files are not generated and can be edited directly.

    -
    -

    .assets/system/

    -
    +
    +

    .assets/system/

    +

    This folder contains files shared across both window managers, such as wallpapers, shell configs, and system scripts.

    @@ -503,9 +504,9 @@ This folder contains files shared across both window managers, such as wallpaper
    -
    -

    .assets/hyprland/

    -
    +
    +

    .assets/hyprland/

    +

    Hyprland-specific assets, including configs, themes, and scripts.

    @@ -517,9 +518,9 @@ Hyprland-specific assets, including configs, themes, and scripts.
    -
    -

    .assets/mangowc/

    -
    +
    +

    .assets/mangowc/

    +

    Mangowc-specific assets, including configs, themes, and scripts.

    @@ -531,9 +532,9 @@ Mangowc-specific assets, including configs, themes, and scripts.
    -
    -

    .assets/machines/

    -
    +
    +

    .assets/machines/

    +

    Machine-specific NixOS configurations (e.g., configuration.nix for maindroid and traveldroid).

    @@ -551,9 +552,9 @@ Machine-specific NixOS configurations (e.g., configuration.nix for This section contains the Org blocks for tangling Nix code into the generated folders.

    -
    -

    flake.nix

    -
    +
    +

    flake.nix

    +

    The Nix flake definition for Droidnix.

    @@ -646,13 +647,13 @@ outputs =
    -
    -

    First the nix-files that flake really needs and that do not fit wel in the hierarchical structure

    -
    +
    +

    First the nix-files that flake really needs and that do not fit wel in the hierarchical structure

    +
    -
    -

    generated/out_of_tree/users/top.nix

    -
    +
    +

    generated/out_of_tree/users/top.nix

    +

    The ./generated/top.nix file acts as an anchor or entry point for the entire chain of imports in the pyramid structure.

    @@ -667,9 +668,9 @@ The ./generated/top.nix file acts as an anchor or entry point for the entire cha
    -
    -

    generated/out_of_tree/users/user.nix

    -
    +
    +

    generated/out_of_tree/users/user.nix

    +

    This is the default user, just search and replace henrov another name if you want to change

    @@ -704,9 +705,9 @@ in
    -
    -

    generated/out_of_tree/users/henrov.nix

    -
    +
    +

    generated/out_of_tree/users/henrov.nix

    +

    This is the default user, just search and replace henrov another name if you want to change

    @@ -722,9 +723,9 @@ This is the default user, just search and replace henrov another name if you wan
    -
    -

    generated/out_of_tree/terminal_shell/top.nix

    -
    +
    +

    generated/out_of_tree/terminal_shell/top.nix

    +

    This code defines a Nix shell environment (also called a "devShell") that you can enter using the nix develop command. When you enter this shell, Nix will provide the tools and dependencies listed in buildInputs.

    @@ -749,9 +750,9 @@ This code defines a Nix shell environment (also called a "devShell") that you ca
    -
    -

    generated/out_of_tree/terminal_shell/devshell.nix

    -
    +
    +

    generated/out_of_tree/terminal_shell/devshell.nix

    +

    This code defines a Nix shell environment (also called a "devShell") that you can enter using the nix develop command. When you enter this shell, Nix will provide the tools and dependencies listed in buildInputs.

    @@ -767,9 +768,9 @@ mkShell {
    -
    -

    generated/out_of_tree/machines/traveldroid/top.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/top.nix

    +

    This is the top of the machine hierarchy

    @@ -801,9 +802,9 @@ This is the top of the machine hierarchy
    -
    -

    generated/out_of_tree/machines/traveldroid/hardware-configuration.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/hardware-configuration.nix

    +
    1. Boot into NixOS Live ISO or your installed system.
    2. Open a terminal.
    3. @@ -861,9 +862,9 @@ This is the top of the machine hierarchy
    -
    -

    generated/out_of_tree/machines/traveldroid/boot.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/boot.nix

    +

    This file has most of the settings the control how the computer boots up.

    @@ -897,9 +898,9 @@ This file has most of the settings the control how the computer boots up.
    -
    -

    generated/out_of_tree/machines/traveldroid/machine.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/machine.nix

    +

    This is the top if the machine hierarchy

    @@ -946,9 +947,9 @@ This is the top if the machine hierarchy
    -
    -

    generated/out_of_tree/machines/traveldroid/dbus.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/dbus.nix

    +

    This sets the dbus implementation

    @@ -970,9 +971,9 @@ This sets the dbus implementation
    -
    -

    generated/out_of_tree/machines/traveldroid/networking.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/networking.nix

    +

    This sets the networking.

    @@ -1019,9 +1020,9 @@ This sets the networking.
    -
    -

    generated/out_of_tree/machines/traveldroid/session.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/session.nix

    +

    This sets the session variables

    @@ -1050,9 +1051,9 @@ This sets the session variables
    -
    -

    generated/out_of_tree/machines/traveldroid/bluetooth.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/bluetooth.nix

    +

    This sets the bluetooth implementation

    @@ -1089,9 +1090,9 @@ This sets the bluetooth implementation
    -
    -

    generated/out_of_tree/machines/traveldroid/audio.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/audio.nix

    +

    This sets audiosystem for this machine

    @@ -1112,9 +1113,9 @@ This sets audiosystem for this machine
    -
    -

    generated/out_of_tree/machines/traveldroid/xdg.nix

    -
    +
    +

    generated/out_of_tree/machines/traveldroid/xdg.nix

    +

    This sets the XDG implementation

    @@ -1132,13 +1133,13 @@ This sets the XDG implementation
    -
    -

    Now we reach the top of the hierarchy which will call all other imports

    -
    +
    +

    Now we reach the top of the hierarchy which will call all other imports

    +
    -
    -

    generated/top.nix

    -
    +
    +

    generated/top.nix

    +

    The ./generated/top.nix file acts as an anchor or entry point for the entire chain of imports in the pyramid structure.

    @@ -1175,9 +1176,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/hyprland/hyprland.nix

    -
    +
    +

    generated/hyprland/hyprland.nix

    +

    The ./generated/top.nix file acts as an anchor or entry point for the entire chain of imports in the pyramid structure.

    @@ -1230,9 +1231,9 @@ in
    -
    -

    generated/hyprland/animations_effects/top.nix

    -
    +
    +

    generated/hyprland/animations_effects/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1248,9 +1249,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/hyprland/decorations/top.nix

    -
    +
    +

    generated/hyprland/decorations/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1266,9 +1267,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/hyprland/notifications/top.nix

    -
    +
    +

    generated/hyprland/notifications/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1284,9 +1285,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/hyprland/statusbar_tray/top.nix

    -
    +
    +

    generated/hyprland/statusbar_tray/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1302,9 +1303,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/hyprland/task_window_workspace_switcher/top.nix

    -
    +
    +

    generated/hyprland/task_window_workspace_switcher/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1320,9 +1321,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/hyprland/window_rules/top.nix

    -
    +
    +

    generated/hyprland/window_rules/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1338,9 +1339,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/top.nix

    -
    +
    +

    generated/system/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1359,9 +1360,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/applications/top.nix

    -
    +
    +

    generated/system/applications/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1384,9 +1385,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/applications/packages.nix

    -
    +
    +

    generated/system/applications/packages.nix

    +

    This will import all packages listed in ./assets/system/apps/packlages.conf

    @@ -1439,9 +1440,9 @@ in
    -
    -

    generated/system/applications/flatpaks.nix

    -
    +
    +

    generated/system/applications/flatpaks.nix

    +

    This will import all packages listed in ./assets/system/apps/flatpaks.conf

    @@ -1562,9 +1563,9 @@ in
    -
    -

    generated/system/core/top.nix

    -
    +
    +

    generated/system/core/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1578,15 +1579,58 @@ This is top file of this level which contains just an import statement for all r ./login-tuigreeter.nix #./login-lightdm.nix ./fonts.nix + ./theme.nix ]; }
    -
    -

    generated/system/core/fonts.nix

    -
    +
    +

    generated/system/core/theme.nix

    +
    +

    +I use the Catppuccin almost everywhere. The nix module integrates almost automatically everywhere (except gtk). +You'll notice the color values in multiple places outside this as well. +

    +
    +
    { pkgs, ...}:
    +{
    +  environment.systemPackages = with pkgs; [
    +        magnetic-catppuccin-gtk
    +  ];
    +
    +  gtk = {
    +    enable = true;
    +        theme = {
    +      name = "Catppuccin-Mocha-Standard-Blue-Dark";
    +      package = pkgs.magnetic-catppuccin-gtk;
    +    };
    +        iconTheme = {
    +      name = "Papirus-Dark";
    +      package = pkgs.papirus-icon-theme;
    +    };
    +    gtk3.extraConfig = {
    +      gtk-application-prefer-dark-theme = 1;
    +    };
    +    gtk4.extraConfig = {
    +      gtk-application-prefer-dark-theme = 1;
    +    };
    +  };
    +
    +  catppuccin.enable = true;
    +  catppuccin.flavor = "mocha";
    +  catppuccin.accent = "blue";
    +  catppuccin.gtk.icon.enable = true;
    +  catppuccin.cursors.enable = true;
    +}
    +
    +
    +
    +
    +
    +

    generated/system/core/fonts.nix

    +

    This file installs and configures fonts

    @@ -1601,9 +1645,9 @@ This file installs and configures fonts
    -
    -

    generated/system/core/eww.nix

    -
    +
    +

    generated/system/core/eww.nix

    +

    This file installs and configures eww

    @@ -1642,9 +1686,9 @@ in
    -
    -

    generated/system/core/waybar.nix

    -
    +
    +

    generated/system/core/waybar.nix

    +

    This file installs and configures waybar

    @@ -1684,9 +1728,9 @@ in
    -
    -

    generated/system/core/login-tuigreeter.nix

    -
    +
    +

    generated/system/core/login-tuigreeter.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1709,9 +1753,9 @@ settings = {
    -
    -

    generated/system/core/wayland.nix

    -
    +
    +

    generated/system/core/wayland.nix

    +

    This file sets up wayland

    @@ -1736,9 +1780,9 @@ This file sets up wayland
    -
    -

    generated/system/development/top.nix

    -
    +
    +

    generated/system/development/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1758,9 +1802,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/top.nix

    -
    +
    +

    generated/system/system_management/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1788,9 +1832,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/applications/accessibility/top.nix

    -
    +
    +

    generated/system/applications/accessibility/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1806,9 +1850,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/applications/file_management/top.nix

    -
    +
    +

    generated/system/applications/file_management/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1823,9 +1867,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/applications/file_management/thunar.nix

    -
    +
    +

    generated/system/applications/file_management/thunar.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1843,26 +1887,7 @@ in { home-manager.users.${username} = { - # GTK icon theme: Papirus + Catppuccin Mocha - gtk.enable = true; - gtk.gtk3.iconTheme.name = "Papirus"; - gtk.gtk4.iconTheme.name = "Papirus"; - - # Catppuccin Mocha dark theme - xdg.configFile."gtk-3.0/settings.ini".text = '' - [Settings] - gtk-theme-name=Catppuccin-Mocha-Standard-Blue-Dark - gtk-icon-theme-name=Papirus - gtk-application-prefer-dark-theme=1 - ''; - xdg.configFile."gtk-4.0/settings.ini".text = '' - [Settings] - gtk-theme-name=Catppuccin-Mocha-Standard-Blue-Dark - gtk-icon-theme-name=Papirus - gtk-application-prefer-dark-theme=1 - ''; - - # Thunar and plugins + # Thunar and plugins home.packages = with pkgs; [ thunar thunar-volman @@ -1886,9 +1911,9 @@ in
    -
    -

    generated/system/applications/gaming/top.nix

    -
    +
    +

    generated/system/applications/gaming/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1904,9 +1929,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/applications/media_playback_editing/top.nix

    -
    +
    +

    generated/system/applications/media_playback_editing/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1922,9 +1947,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/applications/office_productivity/top.nix

    -
    +
    +

    generated/system/applications/office_productivity/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1940,9 +1965,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/applications/terminal_shell/top.nix

    -
    +
    +

    generated/system/applications/terminal_shell/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -1961,9 +1986,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/applications/terminal_shell/kitty.nix

    -
    +
    +

    generated/system/applications/terminal_shell/kitty.nix

    +

    This file sets up Kitty terminal

    @@ -1991,9 +2016,9 @@ in
    -
    -

    generated/system/applications/terminal_shell/starship.nix

    -
    +
    +

    generated/system/applications/terminal_shell/starship.nix

    +

    This file sets up starship prompt

    @@ -2018,9 +2043,9 @@ in
    -
    -

    generated/system/applications/terminal_shell/zsh.nix

    -
    +
    +

    generated/system/applications/terminal_shell/zsh.nix

    +

    This sets up the zsh terminal

    @@ -2124,9 +2149,9 @@ This sets up the zsh terminal
    -
    -

    generated/system/applications/terminal_shell/emacs.nix

    -
    +
    +

    generated/system/applications/terminal_shell/emacs.nix

    +

    This sets up the emacs terminal

    @@ -2229,9 +2254,9 @@ This sets up the emacs terminal
    -
    -

    generated/system/applications/terminal_shell/early-init.el

    -
    +
    +

    generated/system/applications/terminal_shell/early-init.el

    +

    This helps set up the emacs terminal

    @@ -2332,9 +2357,9 @@ package-archive-priorities '(("gnu" . 99)
    -
    -

    generated/system/applications/terminal_shell/init.el

    -
    +
    +

    generated/system/applications/terminal_shell/init.el

    +

    This helps set up the emacs terminal

    @@ -2744,9 +2769,9 @@ the top of the file."
    -
    -

    generated/system/development/databases/top.nix

    -
    +
    +

    generated/system/development/databases/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2762,9 +2787,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/development/devops_ci_cd/top.nix

    -
    +
    +

    generated/system/development/devops_ci_cd/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2780,9 +2805,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/development/programming_languages/top.nix

    -
    +
    +

    generated/system/development/programming_languages/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2798,9 +2823,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/development/virtualization/top.nix

    -
    +
    +

    generated/system/development/virtualization/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2816,9 +2841,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/development/web_development/top.nix

    -
    +
    +

    generated/system/development/web_development/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2834,9 +2859,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/audio/top.nix

    -
    +
    +

    generated/system/system_management/audio/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2852,9 +2877,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/backups/top.nix

    -
    +
    +

    generated/system/system_management/backups/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2870,9 +2895,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/bluetooth/top.nix

    -
    +
    +

    generated/system/system_management/bluetooth/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2888,9 +2913,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/disk_management/top.nix

    -
    +
    +

    generated/system/system_management/disk_management/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2906,9 +2931,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/hardware_sensors/top.nix

    -
    +
    +

    generated/system/system_management/hardware_sensors/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2924,9 +2949,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/logging_monitoring/top.nix

    -
    +
    +

    generated/system/system_management/logging_monitoring/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2942,9 +2967,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/login_manager/top.nix

    -
    +
    +

    generated/system/system_management/login_manager/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2960,9 +2985,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/monitor_setup/top.nix

    -
    +
    +

    generated/system/system_management/monitor_setup/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2978,9 +3003,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/networking/top.nix

    -
    +
    +

    generated/system/system_management/networking/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -2996,9 +3021,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/power_management/top.nix

    -
    +
    +

    generated/system/system_management/power_management/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -3014,9 +3039,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/printers_scanners/top.nix

    -
    +
    +

    generated/system/system_management/printers_scanners/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -3032,9 +3057,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/security/top.nix

    -
    +
    +

    generated/system/system_management/security/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -3050,9 +3075,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/system_management/system_updates/top.nix

    -
    +
    +

    generated/system/system_management/system_updates/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -3068,9 +3093,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/task_launcher/top.nix

    -
    +
    +

    generated/system/task_launcher/top.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -3086,9 +3111,9 @@ This is top file of this level which contains just an import statement for all r
    -
    -

    generated/system/task_launcher/wofi.nix

    -
    +
    +

    generated/system/task_launcher/wofi.nix

    +

    This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder

    @@ -3137,7 +3162,7 @@ in

    Author: Henro Veijer

    -

    Created: 2026-03-16 Mon 11:51

    +

    Created: 2026-03-16 Mon 17:00

    Validate

    diff --git a/Droidnix/README.org b/Droidnix/README.org index d6e8aa727..93f7ae6a6 100644 --- a/Droidnix/README.org +++ b/Droidnix/README.org @@ -985,10 +985,47 @@ This is top file of this level which contains just an import statement for all r ./login-tuigreeter.nix #./login-lightdm.nix ./fonts.nix + ./theme.nix ]; } #+END_SRC +** =generated/system/core/theme.nix= +I use the [[https://catppuccin.com/][Catppuccin]] almost everywhere. The nix module integrates almost automatically everywhere (except gtk). +You'll notice the color values in multiple places outside this as well. +#+BEGIN_SRC nix :tangle generated/system/core/theme.nix :noweb tangle :mkdirp yes :eval never-html + { pkgs, ...}: + { + environment.systemPackages = with pkgs; [ + magnetic-catppuccin-gtk + ]; + + gtk = { + enable = true; + theme = { + name = "Catppuccin-Mocha-Standard-Blue-Dark"; + package = pkgs.magnetic-catppuccin-gtk; + }; + iconTheme = { + name = "Papirus-Dark"; + package = pkgs.papirus-icon-theme; + }; + gtk3.extraConfig = { + gtk-application-prefer-dark-theme = 1; + }; + gtk4.extraConfig = { + gtk-application-prefer-dark-theme = 1; + }; + }; + + catppuccin.enable = true; + catppuccin.flavor = "mocha"; + catppuccin.accent = "blue"; + catppuccin.gtk.icon.enable = true; + catppuccin.cursors.enable = true; + } + #+END_SRC + ** =generated/system/core/fonts.nix= This file installs and configures fonts #+BEGIN_SRC nix :tangle generated/system/core/fonts.nix :noweb tangle :mkdirp yes :eval never-html @@ -1191,26 +1228,7 @@ in { home-manager.users.${username} = { - # GTK icon theme: Papirus + Catppuccin Mocha - gtk.enable = true; - gtk.gtk3.iconTheme.name = "Papirus"; - gtk.gtk4.iconTheme.name = "Papirus"; - - # Catppuccin Mocha dark theme - xdg.configFile."gtk-3.0/settings.ini".text = '' - [Settings] - gtk-theme-name=Catppuccin-Mocha-Standard-Blue-Dark - gtk-icon-theme-name=Papirus - gtk-application-prefer-dark-theme=1 - ''; - xdg.configFile."gtk-4.0/settings.ini".text = '' - [Settings] - gtk-theme-name=Catppuccin-Mocha-Standard-Blue-Dark - gtk-icon-theme-name=Papirus - gtk-application-prefer-dark-theme=1 - ''; - - # Thunar and plugins + # Thunar and plugins home.packages = with pkgs; [ thunar thunar-volman diff --git a/Droidnix/generated/system/applications/file_management/thunar.nix b/Droidnix/generated/system/applications/file_management/thunar.nix index bc5d804fe..ec67db88b 100644 --- a/Droidnix/generated/system/applications/file_management/thunar.nix +++ b/Droidnix/generated/system/applications/file_management/thunar.nix @@ -11,26 +11,7 @@ in { home-manager.users.${username} = { - # GTK icon theme: Papirus + Catppuccin Mocha - gtk.enable = true; - gtk.gtk3.iconTheme.name = "Papirus"; - gtk.gtk4.iconTheme.name = "Papirus"; - - # Catppuccin Mocha dark theme - xdg.configFile."gtk-3.0/settings.ini".text = '' - [Settings] - gtk-theme-name=Catppuccin-Mocha-Standard-Blue-Dark - gtk-icon-theme-name=Papirus - gtk-application-prefer-dark-theme=1 - ''; - xdg.configFile."gtk-4.0/settings.ini".text = '' - [Settings] - gtk-theme-name=Catppuccin-Mocha-Standard-Blue-Dark - gtk-icon-theme-name=Papirus - gtk-application-prefer-dark-theme=1 - ''; - - # Thunar and plugins + # Thunar and plugins home.packages = with pkgs; [ thunar thunar-volman diff --git a/Droidnix/generated/system/core/theme.nix b/Droidnix/generated/system/core/theme.nix new file mode 100644 index 000000000..a0da544ab --- /dev/null +++ b/Droidnix/generated/system/core/theme.nix @@ -0,0 +1,30 @@ +{ pkgs, ...}: +{ + environment.systemPackages = with pkgs; [ + magnetic-catppuccin-gtk + ]; + + gtk = { + enable = true; + theme = { + name = "Catppuccin-Mocha-Standard-Blue-Dark"; + package = pkgs.magnetic-catppuccin-gtk; + }; + iconTheme = { + name = "Papirus-Dark"; + package = pkgs.papirus-icon-theme; + }; + gtk3.extraConfig = { + gtk-application-prefer-dark-theme = 1; + }; + gtk4.extraConfig = { + gtk-application-prefer-dark-theme = 1; + }; + }; + + catppuccin.enable = true; + catppuccin.flavor = "mocha"; + catppuccin.accent = "blue"; + catppuccin.gtk.icon.enable = true; + catppuccin.cursors.enable = true; +} diff --git a/Droidnix/generated/system/core/top.nix b/Droidnix/generated/system/core/top.nix index a9c1db5a8..a35b144d3 100644 --- a/Droidnix/generated/system/core/top.nix +++ b/Droidnix/generated/system/core/top.nix @@ -7,5 +7,6 @@ ./login-tuigreeter.nix #./login-lightdm.nix ./fonts.nix + ./theme.nix ]; }