diff --git a/Droidnix/README.org b/Droidnix/README.org index 9bd231207..3b19dc159 100644 --- a/Droidnix/README.org +++ b/Droidnix/README.org @@ -1275,7 +1275,7 @@ in * These are all the prepared config files ** =.config/hypr/animations.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/animations.conf :noweb tangle :mkdirp yes :eval never-html # ./assets/conf/desktop/hypr/animations.conf @@ -1292,7 +1292,7 @@ animations { #+END_SRC ** =.config/hypr/behaviour.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/behaviour.conf :noweb tangle :mkdirp yes :eval never-html # Keyboard and mouse settings input { @@ -1330,7 +1330,7 @@ misc { #+END_SRC ** =.config/hypr/bindings.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/bindings.conf :noweb tangle :mkdirp yes :eval never-html $mainMod = SUPER @@ -1489,7 +1489,7 @@ bind = $mainMod, W, exec, zen #+END_SRC ** =.config/hypr/exec-once.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/exec-once.conf :noweb tangle :mkdirp yes :eval never-html exec-once = dbus-update-activation-environment --systemd --all exec-once = hypridle @@ -1499,7 +1499,7 @@ exec-once = bash -c "sleep 5 && waybar" #+END_SRC ** =.config/hypr/hypridle.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/hypridle.conf :noweb tangle :mkdirp yes :eval never-html general { lock_cmd = hyprlock @@ -1520,7 +1520,7 @@ listener { #+END_SRC ** =.config/hypr/hyprland.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/hyprland.conf :noweb tangle :mkdirp yes :eval never-html source = ./theming.conf source = ./animations.conf @@ -1563,7 +1563,7 @@ misc { #+END_SRC ** =.config/hypr/hyprlock.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/hyprlock.conf :noweb tangle :mkdirp yes :eval never-html # ~/.config/hypr/hyprlock.conf @@ -1600,7 +1600,7 @@ label { #+END_SRC ** =.config/hypr/layer-rules.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/layer-rules.conf :noweb tangle :mkdirp yes :eval never-html layerrule = blur on, ignore_alpha 1, match:namespace waybar layerrule = xray 1, match:namespace waybar @@ -1611,20 +1611,20 @@ layerrule = blur on, ignore_alpha 1, match:namespace swaync-notification-window #+END_SRC ** =.config/hypr/layout.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/layout.conf :noweb tangle :mkdirp yes :eval never-html workspace_layouts = dwindle, master, scrolling, monocle #+END_SRC ** =.config/hypr/monitor-rules.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/monitor-rules.conf :noweb tangle :mkdirp yes :eval never-html # Default portable monitor rule monitor=DP-1,3840x1080@144,1920x0,1 #+END_SRC ** =.config/hypr/scripts/layout-selector.sh= -These are the config files for .config/hypr/scripts +These are the config files for hypr/scripts #+BEGIN_SRC nix :tangle generated/.config/hypr/scripts/layout-selector.sh :noweb tangle :mkdirp yes :eval never-html #!/usr/bin/env bash # layout-selector.sh @@ -1663,7 +1663,7 @@ hyprctl dispatch oSD "Layout: $LAYOUT_NAME" 2000 #+END_SRC ** =.config/hypr/theming.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/theming.conf :noweb tangle :mkdirp yes :eval never-html # Hyprland Catppuccin Mocha Theme (solid colors) @@ -1708,7 +1708,7 @@ decoration { #+END_SRC ** =.config/hypr/window-rules.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/window-rules.conf :noweb tangle :mkdirp yes :eval never-html # Floating and centering nm-connection-editor windowrule = float, nm-connection-editor @@ -1728,7 +1728,7 @@ windowrulev2 = floatclass:Wofi,opacity:0.9,blur:15 #+END_SRC ** =.config/hypr/workspace-rules.conf= -These are the config files for .config/hypr +These are the config files for hypr #+BEGIN_SRC nix :tangle generated/.config/hypr/workspace-rules.conf :noweb tangle :mkdirp yes :eval never-html # Workspace definitions (modern syntax) workspace = 1 @@ -1793,6 +1793,8 @@ application/x-extension-xht=zen.desktop; application/x-shellscript=dev.zed.Zed.desktop; #+END_SRC + + ** =.config/starship.toml= These are the config files for .config #+BEGIN_SRC nix :tangle generated/.config/starship.toml :noweb tangle :mkdirp yes :eval never-html @@ -2078,7 +2080,7 @@ crust = "#181926" #+END_SRC ** =.config/Thunar/accels.scm= -These are the config files for .config/Thunar +These are the config files for Thunar #+BEGIN_SRC nix :tangle generated/.config/Thunar/accels.scm :noweb tangle :mkdirp yes :eval never-html ; thunar GtkAccelMap rc-file -*- scheme -*- ; this file is an automated accelerator map dump @@ -2209,7 +2211,7 @@ These are the config files for .config/Thunar #+END_SRC ** =.config/Thunar/uca.xml= -These are the config files for .config/Thunar +These are the config files for Thunar #+BEGIN_SRC nix :tangle generated/.config/Thunar/uca.xml :noweb tangle :mkdirp yes :eval never-html @@ -2229,7 +2231,7 @@ These are the config files for .config/Thunar #+END_SRC ** =.config/walker/config.toml= -These are the config files for .config/walker +These are the config files for walker #+BEGIN_SRC nix :tangle generated/.config/walker/config.toml :noweb tangle :mkdirp yes :eval never-html # Walker UI layout/theme config (Catppuccin Mocha tuned) @@ -2350,7 +2352,7 @@ hide = true #+END_SRC ** =.config/walker/themes/frosted/default.css= -These are the config files for .config/walker/themes/frosted +These are the config files for walker/themes/frosted #+BEGIN_SRC nix :tangle generated/.config/walker/themes/frosted/default.css :noweb tangle :mkdirp yes :eval never-html /* AUTO GENERATED. DO NOT EDIT. CHANGES WILL BE OVERWRITTEN. */ @@ -2517,7 +2519,7 @@ child:hover { #+END_SRC ** =.config/walker/themes/frosted/style.css= -These are the config files for .config/walker/themes/frosted +These are the config files for walker/themes/frosted #+BEGIN_SRC nix :tangle generated/.config/walker/themes/frosted/style.css :noweb tangle :mkdirp yes :eval never-html /* Catppuccin Mocha Walker Theme — Frosted Glass */ @@ -2706,8 +2708,357 @@ child:hover { } #+END_SRC +** =.config/waybar/config= +These are the config files for waybar +#+BEGIN_SRC nix :tangle generated/.config/waybar/config :noweb tangle :mkdirp yes :eval never-html +{ + "layer": "top", + "height": 34, + + //"modules-left": ["hyprland/window"], + + "modules-center": ["hyprland/workspaces" ], + + "modules-right": [ + "idle_inhibitor", + "pulseaudio", + "network", + // "cpu", + // "memory", + // "temperature", + "battery", + "tray", + "clock", + "custom/notifications", + ], + + /* + "custom/notifications": { + "tooltip": false, + "return-type": "json", + "exec-if": "which swaync-client", + "exec": "swaync-client -swb", + "format": "{icon}", + "format-icons": { + "notification": "", + "none": "", + "dnd-notification": "󰂠", + "dnd-none": "󰪓", + }, + "on-click": "swaync-client -t", + "on-click-right": "swaync-client -d", + "on-click-middle": "swaync-client -dn", + }, +*/ + + "idle_inhibitor": { + "tooltip": true, + "format": "{icon}", + "format-icons": { + "activated": "  ", + "deactivated": " 󰒲 ", + }, + "tooltip-format-activated": "Staying awake", + "tooltip-format-deactivated": "Might sleep....", + }, + + "pulseaudio": { + "format": "{volume}% {icon}", + "format-bluetooth": "{volume}% {icon}", + "format-muted": "", + "format-icons": { + "headphones": "", + "headset": "", + "phone": "", + "portable": "", + "default": ["", ""], + }, + "on-click": "pavucontrol", + }, + + "network": { + "format-wifi": " ({bandwidthDownBits})", + "format-ethernet": " ({bandwidthDownBits})", + "format-disconnected": "Disconnected ⚠", + "tooltip-format-wifi": "{essid} ({signalStrength}%)", + "tooltip-format-ethernet": "{ifname}: {ipaddr}/{cidr}", + "on-click": "impala", + "on-click-right": "nm-connection-editor", + }, + + "cpu": { + "format": "{usage}%  ", + "tooltip": false, + }, + + "memory": { + "format": "{percentage}%  ", + }, + + "temperature": { + "format": "{temperatureC}°C ", + "tooltip": false, + }, + + "tray": { + "spacing": 10, + "icon-size": 14, + }, + + "clock": { + "format": "{:%a, %d %b %Y - %H:%M}", + "tooltip": false, + "on-click": "flatpak run eu.betterbird.Betterbird -calendar", + }, + + "battery": { + "bat": "BAT0", + "states": { + "good": 95, + "warning": 30, + "critical": 15, + }, + "format": "{capacity}% {icon}", + "format-charging": "{capacity}% 󰂄", + "format-plugged": "{capacity}%  ", + "format-icons": ["󰁺", "󰁼", "󰁾", "󰂀", "󱈏 "], + }, +} +#+END_SRC + +** =.config/waybar/style.css= +These are the config files for waybar +#+BEGIN_SRC nix :tangle generated/.config/waybar/style.css :noweb tangle :mkdirp yes :eval never-html +/* --- Hyprland palette (ported) --- */ +@define-color base rgba(30, 30, 46, 1.0); /* 1e1e2eff */ +@define-color inactive rgba(89, 89, 89, 0.667); /* 595959aa */ +@define-color blue rgba(51, 204, 255, 0.933); /* 33ccffee */ +@define-color green rgba(0, 255, 153, 0.933); /* 00ff99ee */ + +/* extra colors you referenced but didn’t define */ +@define-color text rgba(255, 255, 255, 1.0); +@define-color surface1 rgba(255, 255, 255, 0.08); +@define-color subtext1 rgba(255, 255, 255, 0.35); +@define-color red rgba(255, 0, 0, 0.90); +@define-color overlay1 rgba(255, 255, 255, 0.35); +@define-color yellow rgba(255, 215, 0, 0.95); + +* { + font-family: + Aporetic Sans Mono, + Iosevka Nerd Font, + Roboto, + Helvetica, + Arial, + sans-serif; + font-size: 13px; +} + +window#waybar { + background-color: transparent; + color: @text; + transition-property: background-color; + border-bottom: 0px solid rgba(0, 0, 0, 0); + transition-duration: 0.5s; +} + +#workspaces button { + padding: 0px 1px; + min-width: 80px; + background-color: transparent; + color: @text; + border: 2px solid @inactive; + border-radius: 10px; +} + +#custom-notifications.empty { + color: @overlay1; +} + +#custom-notifications.unread { + color: @yellow; +} + +#workspaces button:hover { + background-color: @surface1; + color: @text; +} + +#workspaces button.active { + padding: 0px 1px; + min-width: 80px; + color: @text; + border-radius: 10px; + font-weight: bold; + border: 1px solid transparent; + background: + linear-gradient(rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.15)) + padding-box, + linear-gradient(45deg, @blue, @green) border-box; +} + +#custom-hyprscroll_overflow.overflow { + padding: 0px 1px; + min-width: 80px; + color: @text; + border-radius: 10px; + font-weight: bold; + border: 1px dashed transparent; + background: + linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05)) + padding-box, + linear-gradient(45deg, @blue, @green) border-box; +} + +#custom-hyprscroll_overflow.overflow { + background: + linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05)) + padding-box, + linear-gradient(45deg, @blue, @green) border-box; +} + +#custom-hyprscroll_overflow.hidden { + padding: 0; + margin: 0; + min-width: 0; + border: 0; + background: transparent; + opacity: 0; +} + +#clock, +#idle_inhibitor, +#battery, +#cpu, +#memory, +#temperature, +#network, +#pulseaudio, +#tray { + margin: 0 5px; + padding: 0 2px; +} + +#idle_inhibitor.activated { + background-color: @green; +} + +#battery.charging { + color: @green; +} + +@keyframes blink { + to { + background-color: #ffffff; + color: black; + } +} + +#battery.warning:not(.charging) { + color: white; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: linear; + animation-iteration-count: infinite; + animation-direction: alternate; +} + +#window, +#workspaces { + margin: 0 4px; +} + +.modules-left > widget:first-child > #workspaces { + margin-left: 0; +} + +.modules-right > widget:last-child > #workspaces { + margin-right: 0; +} + +#network.disconnected { + background-color: @red; +} + +#temperature.critical { + background-color: @red; +} + +/* ========================================================= + * Notifications + * ========================================================= */ +#custom-notifications { + margin: 0 4px; + padding: 0 4px; + min-width: 0; +} + +#custom-notifications.empty { + color: @overlay1; +} +#custom-notifications.unread { + color: @yellow; +} + +/* ========================================================= + * Hyprscroll overflow indicator (custom/hyprscroll_overflow) + * States: .ok, .overflow, .error + * ========================================================= */ + +/* Default (no overflow): subtle pill, still hoverable for tooltip */ +#custom-hyprscroll_overflow.ok { + padding: 0px 1px; + min-width: 80px; + color: @subtext1; + border-radius: 10px; + + /* subtle outline so you know it's there */ + border: 1px solid rgba(255, 255, 255, 0.12); + background: rgba(255, 255, 255, 0.03); +} + +/* Make it feel interactive (hover) */ +#custom-hyprscroll_overflow.ok:hover { + color: @text; + background-color: @surface1; + border: 1px solid rgba(255, 255, 255, 0.18); +} + +/* Overflow state: you already have this; keep it. + Optional: add hover tweak so it "pops" a bit. */ +#custom-hyprscroll_overflow.overflow:hover { + background: + linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1)) + padding-box, + linear-gradient(45deg, @blue, @green) border-box; +} + +/* Error state: clear but not screaming */ +#custom-hyprscroll_overflow.error { + padding: 0px 1px; + min-width: 80px; + color: @text; + border-radius: 10px; + + border: 1px solid rgba(255, 0, 0, 0.55); + background: rgba(255, 0, 0, 0.15); + font-weight: bold; +} + +/* Optional: if you keep .hidden in the script for any reason */ +#custom-hyprscroll_overflow.hidden { + padding: 0; + margin: 0; + min-width: 0; + border: 0; + background: transparent; + opacity: 0; +} + +#+END_SRC + ** =.config/waypaper/config.ini= -These are the config files for .config/waypaper +These are the config files for waypaper #+BEGIN_SRC nix :tangle generated/.config/waypaper/config.ini :noweb tangle :mkdirp yes :eval never-html [Settings] language = en @@ -2740,7 +3091,7 @@ keybindings = ~/.config/waypaper/keybindings.ini #+END_SRC ** =.config/wofi/config= -These are the config files for .config/wofi +These are the config files for wofi #+BEGIN_SRC nix :tangle generated/.config/wofi/config :noweb tangle :mkdirp yes :eval never-html [global] allow_images = true @@ -2783,7 +3134,7 @@ prompt = > #+END_SRC ** =.config/wofi/style.css= -These are the config files for .config/wofi +These are the config files for wofi #+BEGIN_SRC nix :tangle generated/.config/wofi/style.css :noweb tangle :mkdirp yes :eval never-html /* Catppuccin Mocha theme for Wofi with transparency and rounded corners */ diff --git a/Droidnix/generated/.config/waybar/config b/Droidnix/generated/.config/waybar/config new file mode 100644 index 000000000..fe8d7a754 --- /dev/null +++ b/Droidnix/generated/.config/waybar/config @@ -0,0 +1,113 @@ +{ + "layer": "top", + "height": 34, + + //"modules-left": ["hyprland/window"], + + "modules-center": ["hyprland/workspaces" ], + + "modules-right": [ + "idle_inhibitor", + "pulseaudio", + "network", + // "cpu", + // "memory", + // "temperature", + "battery", + "tray", + "clock", + "custom/notifications", + ], + + /* + "custom/notifications": { + "tooltip": false, + "return-type": "json", + "exec-if": "which swaync-client", + "exec": "swaync-client -swb", + "format": "{icon}", + "format-icons": { + "notification": "", + "none": "", + "dnd-notification": "󰂠", + "dnd-none": "󰪓", + }, + "on-click": "swaync-client -t", + "on-click-right": "swaync-client -d", + "on-click-middle": "swaync-client -dn", + }, +*/ + + "idle_inhibitor": { + "tooltip": true, + "format": "{icon}", + "format-icons": { + "activated": "  ", + "deactivated": " 󰒲 ", + }, + "tooltip-format-activated": "Staying awake", + "tooltip-format-deactivated": "Might sleep....", + }, + + "pulseaudio": { + "format": "{volume}% {icon}", + "format-bluetooth": "{volume}% {icon}", + "format-muted": "", + "format-icons": { + "headphones": "", + "headset": "", + "phone": "", + "portable": "", + "default": ["", ""], + }, + "on-click": "pavucontrol", + }, + + "network": { + "format-wifi": " ({bandwidthDownBits})", + "format-ethernet": " ({bandwidthDownBits})", + "format-disconnected": "Disconnected ⚠", + "tooltip-format-wifi": "{essid} ({signalStrength}%)", + "tooltip-format-ethernet": "{ifname}: {ipaddr}/{cidr}", + "on-click": "impala", + "on-click-right": "nm-connection-editor", + }, + + "cpu": { + "format": "{usage}%  ", + "tooltip": false, + }, + + "memory": { + "format": "{percentage}%  ", + }, + + "temperature": { + "format": "{temperatureC}°C ", + "tooltip": false, + }, + + "tray": { + "spacing": 10, + "icon-size": 14, + }, + + "clock": { + "format": "{:%a, %d %b %Y - %H:%M}", + "tooltip": false, + "on-click": "flatpak run eu.betterbird.Betterbird -calendar", + }, + + "battery": { + "bat": "BAT0", + "states": { + "good": 95, + "warning": 30, + "critical": 15, + }, + "format": "{capacity}% {icon}", + "format-charging": "{capacity}% 󰂄", + "format-plugged": "{capacity}%  ", + "format-icons": ["󰁺", "󰁼", "󰁾", "󰂀", "󱈏 "], + }, +}