fix: dynamic wallpaper

This commit is contained in:
kenji
2025-12-25 00:41:44 -06:00
parent cf28f0cede
commit c604816aa9
7 changed files with 221 additions and 75 deletions
+50 -1
View File
@@ -1,4 +1,8 @@
{pkgs, ...}: {
{
config,
pkgs,
...
}: {
programs.ghostty = {
enable = true;
package =
@@ -6,10 +10,55 @@
then pkgs.ghostty-bin
else pkgs.ghostty;
enableFishIntegration = true;
settings = {
window-padding-x = 15;
window-padding-y = 15;
window-padding-balance = true;
# --- The Dynamic Hook (Keep this for your script!) ---
# This allows your 'switch-theme' script to override the colors below on the fly.
# config-file = "theme.conf";
# --- Base16 Color Mapping (The "Starship Logic") ---
# We map the Stylix Base16 palette to Ghostty's specific keys.
# Background (surface0 in your Starship config)
# background = "${config.lib.stylix.colors.withHashtag.base00}";
#
# # Foreground (text in your Starship config)
# foreground = "${config.lib.stylix.colors.withHashtag.base05}";
#
# # Cursor (Using text color or Rosewater/Base06)
# cursor-color = "${config.lib.stylix.colors.withHashtag.base05}";
# cursor-text = "${config.lib.stylix.colors.withHashtag.base00}";
#
# # Selection (Highlight)
# selection-background = "${config.lib.stylix.colors.withHashtag.base02}";
# selection-foreground = "${config.lib.stylix.colors.withHashtag.base05}";
#
# # --- The ANSI Palette (0-15) ---
# # Mapping Base16 -> ANSI
# # This ensures your 'ls', 'grep', and Starship colors align perfectly.
# palette = [
# "0=${config.lib.stylix.colors.withHashtag.base00}" # Black
# "1=${config.lib.stylix.colors.withHashtag.base08}" # Red
# "2=${config.lib.stylix.colors.withHashtag.base0B}" # Green
# "3=${config.lib.stylix.colors.withHashtag.base0A}" # Yellow
# "4=${config.lib.stylix.colors.withHashtag.base0D}" # Blue
# "5=${config.lib.stylix.colors.withHashtag.base0E}" # Purple (Lavender)
# "6=${config.lib.stylix.colors.withHashtag.base0C}" # Cyan (Sapphire)
# "7=${config.lib.stylix.colors.withHashtag.base05}" # White
#
# "8=${config.lib.stylix.colors.withHashtag.base03}" # Bright Black
# "9=${config.lib.stylix.colors.withHashtag.base08}" # Bright Red
# "10=${config.lib.stylix.colors.withHashtag.base0B}" # Bright Green
# "11=${config.lib.stylix.colors.withHashtag.base0A}" # Bright Yellow
# "12=${config.lib.stylix.colors.withHashtag.base0D}" # Bright Blue
# "13=${config.lib.stylix.colors.withHashtag.base0E}" # Bright Purple
# "14=${config.lib.stylix.colors.withHashtag.base0C}" # Bright Cyan
# "15=${config.lib.stylix.colors.withHashtag.base07}" # Bright White
# ];
};
};
}
+9 -1
View File
@@ -1,8 +1,16 @@
{
{pkgs, ...}: {
home.packages = with pkgs; [
psmisc
];
wayland.windowManager.hyprland.settings = {
exec-once = [
"uwsm app -- waybar"
"uwsm app -- hyprpaper"
"uwsm app -- elephant"
];
exec = [
"pkill -x hyprpaper; uwsm app -- hyprpaper"
"killall -SIGUSR2 .ghostty-wrappe"
];
};
}
+14
View File
@@ -1,4 +1,5 @@
{
pkgs,
inputs,
myConfig,
lib,
@@ -8,6 +9,13 @@
inputs.stylix.homeModules.stylix
];
stylix = {
autoEnable = false;
targets = {
waybar.enable = true;
ghostty.enable = true;
hyprpaper.enable = true;
gtk.enable = true;
};
enable = true;
# autoEnable = false;
image = ../../assets/Wallpapers/${myConfig.hyprland.wallpaper};
@@ -15,5 +23,11 @@
# base16Scheme = lib.mkDefault {
# generator = "vibrant";
# };
iconTheme = {
enable = true;
package = pkgs.papirus-icon-theme; # The package to install
dark = "Papirus-Dark"; # The theme name for dark mode
light = "Papirus-Light"; # The theme name for light mode
};
};
}
+21 -58
View File
@@ -1,74 +1,37 @@
{
inputs,
config,
pkgs,
...
}: {
services.walker = {
imports = [inputs.walker.homeManagerModules.default];
programs.walker = {
enable = true;
settings = {
force_keyboard_focus = true;
selection_wrap = true;
hide_action_hints = true;
runAsService = true;
theme = "default";
package = inputs.walker.packages.${pkgs.system}.default;
placeholders = {
"default" = {
input = " Search...";
list = "No Results";
};
config = {
icons.theme = config.gtk.iconTheme.name;
placeholders.default = {
input = "Search";
list = "No Results";
};
keybinds = {
quick_activate = [];
};
columns = {
symbols = 1;
};
providers = {
max_results = 256;
default = [
"desktopapplications"
"websearch"
];
# Prefixes for specific searches
prefixes = [
{
prefix = "/";
provider = "providerlist";
}
{
prefix = ".";
provider = "files";
}
{
prefix = ":";
provider = "symbols";
}
{
prefix = "=";
provider = "calc";
}
{
prefix = "@";
provider = "websearch";
}
{
prefix = "$";
provider = "clipboard";
}
];
};
emergencies = [
providers.prefixes = [
{
text = "Restart Walker";
command = "pkill walker && walker --daemon";
provider = "websearch";
prefix = "+";
}
{
provider = "providerlist";
prefix = "_";
}
];
keybinds.quick_activate = ["F1" "F2" "F3"];
};
};
}