Sakura Line: retheme the whole desktop from the wallpaper
Palette sampled from bspwm/wallpaper/wallpaper.jpg and applied per-role (not per-hex, so terminal green stays green and nvim's LineNr/Comment stay recessive) across st, kitty, polybar, rofi, dunst, nvim, qt5ct/qt6ct and GTK 2/3/4. Also: - rofi drun centred, icons enabled - polybar translucent (true ARGB) and rounded; picom corner-radius, with the desktop layer and fullscreen windows excluded - fix qt5ct color_scheme_path pointing at a nonexistent /home/carrie - export QT_QPA_PLATFORMTHEME so qt6ct is actually consulted - point GTK at an icon theme that exists on this system - add .config/rice: one-shot install.sh (--dry-run supported), package list, vendored st config.h (gitignored upstream) and the particles wallpaper-layer source, so a clone reproduces the rice Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Cn3dHfbgNYdbZvzb1b3GQt
This commit is contained in:
parent
45e5fe53d2
commit
f341989335
35 changed files with 3300 additions and 124 deletions
|
|
@ -1,5 +1,8 @@
|
||||||
#! /bin/bash
|
#! /bin/bash
|
||||||
|
|
||||||
|
# Qt apps follow qt6ct, which reads ~/.config/qt6ct/colors/dc.conf
|
||||||
|
export QT_QPA_PLATFORMTHEME=qt6ct
|
||||||
|
|
||||||
# Start sxhkd if it's not already running
|
# Start sxhkd if it's not already running
|
||||||
pgrep -x sxhkd >/dev/null || sxhkd -c ~/.config/bspwm/sxhkdrc &
|
pgrep -x sxhkd >/dev/null || sxhkd -c ~/.config/bspwm/sxhkdrc &
|
||||||
|
|
||||||
|
|
@ -14,7 +17,7 @@ export XDG_CURRENT_DESKTOP="bspwm"
|
||||||
sh -c 'function shenv() { export "$1=$2"; }; source ~/.env;'
|
sh -c 'function shenv() { export "$1=$2"; }; source ~/.env;'
|
||||||
|
|
||||||
# Workspaces Configuration
|
# Workspaces Configuration
|
||||||
bspc monitor DisplayPort-1 -d 1 2 3 4 5 6 7 8
|
bspc monitor DisplayPort-0 -d 1 2 3 4 5 6 7 8
|
||||||
|
|
||||||
# Enable window focus follow mouse pointer
|
# Enable window focus follow mouse pointer
|
||||||
bspc config focus_follows_pointer true
|
bspc config focus_follows_pointer true
|
||||||
|
|
@ -29,7 +32,10 @@ if [[ -n $monitor && -n $resolution && -n $refresh_rate ]]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Set the border colors for focused and normal windows
|
# Set the border colors for focused and normal windows
|
||||||
bspc config focused_border_color "#727d53"
|
bspc config focused_border_color "#92b9ea"
|
||||||
|
bspc config normal_border_color "#201b30"
|
||||||
|
bspc config active_border_color "#3d3752"
|
||||||
|
bspc config presel_feedback_color "#b483c0"
|
||||||
bspc config border_width 2
|
bspc config border_width 2
|
||||||
bspc config borderless_monocle true
|
bspc config borderless_monocle true
|
||||||
|
|
||||||
|
|
@ -65,7 +71,10 @@ bspc rule -a 'gamescope' desktop=11
|
||||||
bspc rule -a 'legcord' desktop=10
|
bspc rule -a 'legcord' desktop=10
|
||||||
|
|
||||||
# Resources and Utilities
|
# Resources and Utilities
|
||||||
dbus-update-activation-environment --systemd XDG_CURRENT_DESKTOP
|
# DISPLAY/XAUTHORITY must reach systemd-user + D-Bus or graphical portal backends
|
||||||
|
# (xdg-desktop-portal-gtk, used by browser file pickers) fail with "cannot open display".
|
||||||
|
systemctl --user import-environment DISPLAY XAUTHORITY XDG_CURRENT_DESKTOP
|
||||||
|
dbus-update-activation-environment --systemd DISPLAY XAUTHORITY XDG_CURRENT_DESKTOP
|
||||||
xrdb merge $HOME/.Xresources
|
xrdb merge $HOME/.Xresources
|
||||||
xsettingsd &
|
xsettingsd &
|
||||||
dunst &
|
dunst &
|
||||||
|
|
|
||||||
|
|
@ -46,3 +46,16 @@ shadow = false;
|
||||||
detect-client-opacity = true;
|
detect-client-opacity = true;
|
||||||
use-damage = true;
|
use-damage = true;
|
||||||
log-level = "warn";
|
log-level = "warn";
|
||||||
|
|
||||||
|
# --- rounded corners ---
|
||||||
|
corner-radius = 12;
|
||||||
|
round-borders = 1;
|
||||||
|
rounded-corners-exclude = [
|
||||||
|
# the particles layer is a full-screen desktop window; clipping it would
|
||||||
|
# notch the corners of the field
|
||||||
|
"window_type = 'desktop'",
|
||||||
|
# polybar rounds its own background
|
||||||
|
"window_type = 'dock'",
|
||||||
|
# never round a fullscreen game
|
||||||
|
"_NET_WM_STATE@:32a *= '_NET_WM_STATE_FULLSCREEN'",
|
||||||
|
];
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,7 @@
|
||||||
|
# Toggle Scribe Recording
|
||||||
|
super + shift + space
|
||||||
|
pkill -USR1 -f /home/sarthak/projects/scribe/scribe.py
|
||||||
|
|
||||||
# System binding
|
# System binding
|
||||||
super + {Return,v,w,x,b,period}
|
super + {Return,v,w,x,b,period}
|
||||||
{st, \
|
{st, \
|
||||||
|
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.9 MiB After Width: | Height: | Size: 2.8 MiB |
Binary file not shown.
|
Before Width: | Height: | Size: 274 KiB |
15
.config/btop/btop.conf
Normal file
15
.config/btop/btop.conf
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
color_theme = "sakura-line"
|
||||||
|
theme_background = False
|
||||||
|
truecolor = True
|
||||||
|
vim_keys = False
|
||||||
|
rounded_corners = True
|
||||||
|
graph_symbol = "braille"
|
||||||
|
shown_boxes = "cpu mem net proc"
|
||||||
|
update_ms = 1000
|
||||||
|
proc_sorting = "cpu lazy"
|
||||||
|
proc_gradient = True
|
||||||
|
cpu_graph_upper = "total"
|
||||||
|
show_uptime = True
|
||||||
|
temp_scale = "celsius"
|
||||||
|
clock_format = "%H:%M"
|
||||||
|
background_update = True
|
||||||
53
.config/btop/themes/sakura-line.theme
Normal file
53
.config/btop/themes/sakura-line.theme
Normal file
|
|
@ -0,0 +1,53 @@
|
||||||
|
# btop - Sakura Line, sampled from bspwm/wallpaper/wallpaper.jpg
|
||||||
|
theme[main_bg]=""
|
||||||
|
theme[main_fg]="#e9eefb"
|
||||||
|
theme[title]="#e9eefb"
|
||||||
|
theme[hi_fg]="#92b9ea"
|
||||||
|
theme[selected_bg]="#2e2842"
|
||||||
|
theme[selected_fg]="#92b9ea"
|
||||||
|
theme[inactive_fg]="#7f7796"
|
||||||
|
theme[graph_text]="#c9d1e2"
|
||||||
|
theme[meter_bg]="#201b30"
|
||||||
|
theme[proc_misc]="#8ab6c4"
|
||||||
|
|
||||||
|
theme[cpu_box]="#3d3752"
|
||||||
|
theme[mem_box]="#3d3752"
|
||||||
|
theme[net_box]="#3d3752"
|
||||||
|
theme[proc_box]="#3d3752"
|
||||||
|
theme[div_line]="#3d3752"
|
||||||
|
|
||||||
|
theme[temp_start]="#8fae74"
|
||||||
|
theme[temp_mid]="#d8a87c"
|
||||||
|
theme[temp_end]="#cf6a80"
|
||||||
|
|
||||||
|
theme[cpu_start]="#7c9ede"
|
||||||
|
theme[cpu_mid]="#92b9ea"
|
||||||
|
theme[cpu_end]="#d0a4d8"
|
||||||
|
|
||||||
|
theme[free_start]="#4a5a6e"
|
||||||
|
theme[free_mid]="#7fa3ad"
|
||||||
|
theme[free_end]="#a3c0cb"
|
||||||
|
|
||||||
|
theme[cached_start]="#6f8fc4"
|
||||||
|
theme[cached_mid]="#92b9ea"
|
||||||
|
theme[cached_end]="#aecdf5"
|
||||||
|
|
||||||
|
theme[available_start]="#8a6a52"
|
||||||
|
theme[available_mid]="#d8a87c"
|
||||||
|
theme[available_end]="#e9c79b"
|
||||||
|
|
||||||
|
theme[used_start]="#7a4256"
|
||||||
|
theme[used_mid]="#cf6a80"
|
||||||
|
theme[used_end]="#e0798f"
|
||||||
|
|
||||||
|
theme[download_start]="#5f6f9e"
|
||||||
|
theme[download_mid]="#7c9ede"
|
||||||
|
theme[download_end]="#92b9ea"
|
||||||
|
|
||||||
|
theme[upload_start]="#7a4a7e"
|
||||||
|
theme[upload_mid]="#b483c0"
|
||||||
|
theme[upload_end]="#d0a4d8"
|
||||||
|
|
||||||
|
theme[process_start]="#8fae74"
|
||||||
|
theme[process_mid]="#a8c68d"
|
||||||
|
theme[process_end]="#e9c79b"
|
||||||
32
.config/cava/config
Normal file
32
.config/cava/config
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
# cava - Sakura Line
|
||||||
|
# background = default keeps the terminal's transparency showing through.
|
||||||
|
|
||||||
|
[general]
|
||||||
|
framerate = 60
|
||||||
|
autosens = 1
|
||||||
|
overshoot = 20
|
||||||
|
bar_width = 2
|
||||||
|
bar_spacing = 1
|
||||||
|
|
||||||
|
[input]
|
||||||
|
method = pulse
|
||||||
|
source = auto
|
||||||
|
|
||||||
|
[output]
|
||||||
|
method = ncurses
|
||||||
|
channels = stereo
|
||||||
|
mono_option = average
|
||||||
|
|
||||||
|
[smoothing]
|
||||||
|
noise_reduction = 45
|
||||||
|
|
||||||
|
[color]
|
||||||
|
background = default
|
||||||
|
gradient = 1
|
||||||
|
gradient_count = 6
|
||||||
|
gradient_color_1 = '#7c9ede'
|
||||||
|
gradient_color_2 = '#92b9ea'
|
||||||
|
gradient_color_3 = '#a3c0cb'
|
||||||
|
gradient_color_4 = '#d0a4d8'
|
||||||
|
gradient_color_5 = '#e0798f'
|
||||||
|
gradient_color_6 = '#e9c79b'
|
||||||
|
|
@ -12,7 +12,7 @@ origin = top-right
|
||||||
|
|
||||||
frame_width = 2
|
frame_width = 2
|
||||||
separator_height = 1
|
separator_height = 1
|
||||||
frame_color = "#8b9151"
|
frame_color = "#92b9ea"
|
||||||
separator_color = frame
|
separator_color = frame
|
||||||
|
|
||||||
sort = no
|
sort = no
|
||||||
|
|
@ -33,7 +33,7 @@ sticky_history = no
|
||||||
history_length = 6
|
history_length = 6
|
||||||
title = Dunst
|
title = Dunst
|
||||||
class = Dunst
|
class = Dunst
|
||||||
corner_radius = 0
|
corner_radius = 12
|
||||||
|
|
||||||
mouse_left_click = close_current
|
mouse_left_click = close_current
|
||||||
mouse_middle_click = do_action
|
mouse_middle_click = do_action
|
||||||
|
|
@ -44,20 +44,20 @@ body = "grim's screenshot component is implemented based on wlroots, it may not
|
||||||
format = ""
|
format = ""
|
||||||
|
|
||||||
[urgency_low]
|
[urgency_low]
|
||||||
background = "#141414"
|
background = "#0f0d17"
|
||||||
foreground = "#8b9151"
|
foreground = "#7f7796"
|
||||||
frame_color = "#8b9151"
|
frame_color = "#3d3752"
|
||||||
timeout = 5
|
timeout = 5
|
||||||
|
|
||||||
[urgency_normal]
|
[urgency_normal]
|
||||||
default_icon = dialog-information
|
default_icon = dialog-information
|
||||||
background = "#141414"
|
background = "#0f0d17"
|
||||||
foreground = "#feffd3"
|
foreground = "#e9eefb"
|
||||||
frame_color = "#8b9151"
|
frame_color = "#92b9ea"
|
||||||
timeout = 5
|
timeout = 5
|
||||||
|
|
||||||
[urgency_critical]
|
[urgency_critical]
|
||||||
background = "#141414"
|
background = "#0f0d17"
|
||||||
foreground = "#dd7c4c"
|
foreground = "#e0798f"
|
||||||
frame_color = "#dd7c4c"
|
frame_color = "#cf6a80"
|
||||||
timeout = 0
|
timeout = 0
|
||||||
|
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
file:///drives drives
|
|
||||||
file:///home/carrie/Documents Documents
|
|
||||||
file:///home/carrie/Music Music
|
|
||||||
file:///drives/rei/Library Library
|
|
||||||
file:///home/carrie/Downloads Downloads
|
|
||||||
file:///home/carrie/Pictures Pictures
|
|
||||||
file:///home/carrie/iphone iphone
|
|
||||||
file:///home/carrie/Videos Videos
|
|
||||||
file:///run/media/carrie/disk/vnds/novels novels
|
|
||||||
file:///drives/rei/Library/Toby%20Fox/DELTARUNE%20Chapter%203+4%20OST DELTARUNE Chapter 3+4 OST
|
|
||||||
144
.config/gtk-3.0/gtk.css
Normal file
144
.config/gtk-3.0/gtk.css
Normal file
|
|
@ -0,0 +1,144 @@
|
||||||
|
/* Sakura Line - sampled from bspwm/wallpaper/wallpaper.jpg */
|
||||||
|
|
||||||
|
@define-color sakura_bg #16121f;
|
||||||
|
@define-color sakura_base #100d18;
|
||||||
|
@define-color sakura_surface #221c33;
|
||||||
|
@define-color sakura_overlay #2a2440;
|
||||||
|
@define-color sakura_sel #2e2842;
|
||||||
|
@define-color sakura_fg #e9eefb;
|
||||||
|
@define-color sakura_dim #7f7796;
|
||||||
|
@define-color sakura_border #3d3752;
|
||||||
|
@define-color sakura_accent #92b9ea;
|
||||||
|
@define-color sakura_red #cf6a80;
|
||||||
|
@define-color sakura_green #8fae74;
|
||||||
|
@define-color sakura_yellow #d8a87c;
|
||||||
|
|
||||||
|
/* GTK3 / Adwaita named colours */
|
||||||
|
@define-color theme_bg_color @sakura_bg;
|
||||||
|
@define-color theme_fg_color @sakura_fg;
|
||||||
|
@define-color theme_base_color @sakura_base;
|
||||||
|
@define-color theme_text_color @sakura_fg;
|
||||||
|
@define-color theme_selected_bg_color @sakura_accent;
|
||||||
|
@define-color theme_selected_fg_color #0f0d17;
|
||||||
|
@define-color theme_unfocused_bg_color @sakura_bg;
|
||||||
|
@define-color theme_unfocused_fg_color @sakura_fg;
|
||||||
|
@define-color theme_unfocused_base_color @sakura_base;
|
||||||
|
@define-color theme_unfocused_text_color @sakura_fg;
|
||||||
|
@define-color theme_unfocused_selected_bg_color @sakura_sel;
|
||||||
|
@define-color theme_unfocused_selected_fg_color @sakura_fg;
|
||||||
|
@define-color insensitive_bg_color @sakura_bg;
|
||||||
|
@define-color insensitive_fg_color @sakura_dim;
|
||||||
|
@define-color insensitive_base_color @sakura_base;
|
||||||
|
@define-color borders @sakura_border;
|
||||||
|
@define-color unfocused_borders @sakura_border;
|
||||||
|
@define-color wm_bg @sakura_surface;
|
||||||
|
@define-color wm_border @sakura_border;
|
||||||
|
@define-color wm_title @sakura_fg;
|
||||||
|
@define-color wm_unfocused_title @sakura_dim;
|
||||||
|
@define-color success_color @sakura_green;
|
||||||
|
@define-color warning_color @sakura_yellow;
|
||||||
|
@define-color error_color @sakura_red;
|
||||||
|
@define-color link_color @sakura_accent;
|
||||||
|
@define-color visited_link_color #b483c0;
|
||||||
|
@define-color content_view_bg @sakura_base;
|
||||||
|
|
||||||
|
/* libadwaita / GTK4 named colours */
|
||||||
|
@define-color window_bg_color @sakura_bg;
|
||||||
|
@define-color window_fg_color @sakura_fg;
|
||||||
|
@define-color view_bg_color @sakura_base;
|
||||||
|
@define-color view_fg_color @sakura_fg;
|
||||||
|
@define-color headerbar_bg_color @sakura_surface;
|
||||||
|
@define-color headerbar_fg_color @sakura_fg;
|
||||||
|
@define-color headerbar_border_color @sakura_border;
|
||||||
|
@define-color headerbar_backdrop_color @sakura_bg;
|
||||||
|
@define-color headerbar_shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color sidebar_bg_color @sakura_surface;
|
||||||
|
@define-color sidebar_fg_color @sakura_fg;
|
||||||
|
@define-color sidebar_backdrop_color @sakura_bg;
|
||||||
|
@define-color sidebar_border_color @sakura_border;
|
||||||
|
@define-color sidebar_shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color secondary_sidebar_bg_color @sakura_bg;
|
||||||
|
@define-color secondary_sidebar_fg_color @sakura_fg;
|
||||||
|
@define-color card_bg_color @sakura_surface;
|
||||||
|
@define-color card_fg_color @sakura_fg;
|
||||||
|
@define-color card_shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color dialog_bg_color @sakura_surface;
|
||||||
|
@define-color dialog_fg_color @sakura_fg;
|
||||||
|
@define-color popover_bg_color @sakura_overlay;
|
||||||
|
@define-color popover_fg_color @sakura_fg;
|
||||||
|
@define-color popover_shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color thumbnail_bg_color @sakura_surface;
|
||||||
|
@define-color thumbnail_fg_color @sakura_fg;
|
||||||
|
@define-color shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color scrollbar_outline_color @sakura_border;
|
||||||
|
@define-color accent_bg_color @sakura_accent;
|
||||||
|
@define-color accent_fg_color #0f0d17;
|
||||||
|
@define-color accent_color @sakura_accent;
|
||||||
|
@define-color destructive_bg_color @sakura_red;
|
||||||
|
@define-color destructive_fg_color #0f0d17;
|
||||||
|
@define-color destructive_color @sakura_red;
|
||||||
|
@define-color success_bg_color @sakura_green;
|
||||||
|
@define-color success_fg_color #0f0d17;
|
||||||
|
@define-color warning_bg_color @sakura_yellow;
|
||||||
|
@define-color warning_fg_color #0f0d17;
|
||||||
|
@define-color error_bg_color @sakura_red;
|
||||||
|
@define-color error_fg_color #0f0d17;
|
||||||
|
|
||||||
|
/* Adwaita hardcodes a fair amount, so pin the big surfaces directly. */
|
||||||
|
window, .background, dialog, popover, popover.background,
|
||||||
|
headerbar, .titlebar, .sidebar, placessidebar, notebook > header {
|
||||||
|
background-color: @sakura_bg;
|
||||||
|
color: @sakura_fg;
|
||||||
|
}
|
||||||
|
headerbar, .titlebar, .sidebar, placessidebar,
|
||||||
|
.sidebar-pane, notebook > header, toolbar, actionbar > revealer > box {
|
||||||
|
background-color: @sakura_surface;
|
||||||
|
border-color: @sakura_border;
|
||||||
|
}
|
||||||
|
popover > contents, popover > arrow, menu, .menu, .context-menu {
|
||||||
|
background-color: @sakura_overlay;
|
||||||
|
color: @sakura_fg;
|
||||||
|
}
|
||||||
|
treeview.view, textview, textview text, iconview, .view, list, list row, columnview {
|
||||||
|
background-color: @sakura_base;
|
||||||
|
color: @sakura_fg;
|
||||||
|
}
|
||||||
|
treeview.view:selected, .view:selected, list row:selected,
|
||||||
|
menuitem:hover, .menu menuitem:hover, row:selected {
|
||||||
|
background-color: @sakura_accent;
|
||||||
|
color: #0f0d17;
|
||||||
|
}
|
||||||
|
entry, spinbutton, searchbar entry, .entry {
|
||||||
|
background-color: @sakura_base;
|
||||||
|
color: @sakura_fg;
|
||||||
|
border-color: @sakura_border;
|
||||||
|
}
|
||||||
|
entry:focus, .entry:focus { border-color: @sakura_accent; }
|
||||||
|
button {
|
||||||
|
background-image: none;
|
||||||
|
background-color: @sakura_surface;
|
||||||
|
color: @sakura_fg;
|
||||||
|
border-color: @sakura_border;
|
||||||
|
}
|
||||||
|
button:hover { background-color: @sakura_overlay; }
|
||||||
|
button:active, button:checked {
|
||||||
|
background-color: @sakura_accent;
|
||||||
|
color: #0f0d17;
|
||||||
|
}
|
||||||
|
scrollbar, scrollbar slider { background-color: transparent; }
|
||||||
|
scrollbar slider { background-color: @sakura_border; }
|
||||||
|
scrollbar slider:hover { background-color: @sakura_dim; }
|
||||||
|
tooltip, tooltip.background {
|
||||||
|
background-color: @sakura_overlay;
|
||||||
|
color: @sakura_fg;
|
||||||
|
}
|
||||||
|
progressbar progress, levelbar block.filled { background-color: @sakura_accent; }
|
||||||
|
switch:checked, check:checked, radio:checked {
|
||||||
|
background-color: @sakura_accent;
|
||||||
|
color: #0f0d17;
|
||||||
|
}
|
||||||
|
selection, ::selection {
|
||||||
|
background-color: @sakura_accent;
|
||||||
|
color: #0f0d17;
|
||||||
|
}
|
||||||
|
separator { background-color: @sakura_border; }
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
[Settings]
|
[Settings]
|
||||||
gtk-theme-name=Adwaita
|
gtk-theme-name=Adwaita
|
||||||
gtk-icon-theme-name=Gruvbox-Plus-Dark
|
gtk-icon-theme-name=Adwaita
|
||||||
gtk-font-name=Noto Sans Light 10
|
gtk-font-name=Noto Sans Light 10
|
||||||
gtk-cursor-theme-name=Bibata-Modern-Classic
|
gtk-cursor-theme-name=Bibata-Modern-Classic
|
||||||
gtk-cursor-theme-size=20
|
gtk-cursor-theme-size=20
|
||||||
|
|
|
||||||
144
.config/gtk-4.0/gtk.css
Normal file
144
.config/gtk-4.0/gtk.css
Normal file
|
|
@ -0,0 +1,144 @@
|
||||||
|
/* Sakura Line - sampled from bspwm/wallpaper/wallpaper.jpg */
|
||||||
|
|
||||||
|
@define-color sakura_bg #16121f;
|
||||||
|
@define-color sakura_base #100d18;
|
||||||
|
@define-color sakura_surface #221c33;
|
||||||
|
@define-color sakura_overlay #2a2440;
|
||||||
|
@define-color sakura_sel #2e2842;
|
||||||
|
@define-color sakura_fg #e9eefb;
|
||||||
|
@define-color sakura_dim #7f7796;
|
||||||
|
@define-color sakura_border #3d3752;
|
||||||
|
@define-color sakura_accent #92b9ea;
|
||||||
|
@define-color sakura_red #cf6a80;
|
||||||
|
@define-color sakura_green #8fae74;
|
||||||
|
@define-color sakura_yellow #d8a87c;
|
||||||
|
|
||||||
|
/* GTK3 / Adwaita named colours */
|
||||||
|
@define-color theme_bg_color @sakura_bg;
|
||||||
|
@define-color theme_fg_color @sakura_fg;
|
||||||
|
@define-color theme_base_color @sakura_base;
|
||||||
|
@define-color theme_text_color @sakura_fg;
|
||||||
|
@define-color theme_selected_bg_color @sakura_accent;
|
||||||
|
@define-color theme_selected_fg_color #0f0d17;
|
||||||
|
@define-color theme_unfocused_bg_color @sakura_bg;
|
||||||
|
@define-color theme_unfocused_fg_color @sakura_fg;
|
||||||
|
@define-color theme_unfocused_base_color @sakura_base;
|
||||||
|
@define-color theme_unfocused_text_color @sakura_fg;
|
||||||
|
@define-color theme_unfocused_selected_bg_color @sakura_sel;
|
||||||
|
@define-color theme_unfocused_selected_fg_color @sakura_fg;
|
||||||
|
@define-color insensitive_bg_color @sakura_bg;
|
||||||
|
@define-color insensitive_fg_color @sakura_dim;
|
||||||
|
@define-color insensitive_base_color @sakura_base;
|
||||||
|
@define-color borders @sakura_border;
|
||||||
|
@define-color unfocused_borders @sakura_border;
|
||||||
|
@define-color wm_bg @sakura_surface;
|
||||||
|
@define-color wm_border @sakura_border;
|
||||||
|
@define-color wm_title @sakura_fg;
|
||||||
|
@define-color wm_unfocused_title @sakura_dim;
|
||||||
|
@define-color success_color @sakura_green;
|
||||||
|
@define-color warning_color @sakura_yellow;
|
||||||
|
@define-color error_color @sakura_red;
|
||||||
|
@define-color link_color @sakura_accent;
|
||||||
|
@define-color visited_link_color #b483c0;
|
||||||
|
@define-color content_view_bg @sakura_base;
|
||||||
|
|
||||||
|
/* libadwaita / GTK4 named colours */
|
||||||
|
@define-color window_bg_color @sakura_bg;
|
||||||
|
@define-color window_fg_color @sakura_fg;
|
||||||
|
@define-color view_bg_color @sakura_base;
|
||||||
|
@define-color view_fg_color @sakura_fg;
|
||||||
|
@define-color headerbar_bg_color @sakura_surface;
|
||||||
|
@define-color headerbar_fg_color @sakura_fg;
|
||||||
|
@define-color headerbar_border_color @sakura_border;
|
||||||
|
@define-color headerbar_backdrop_color @sakura_bg;
|
||||||
|
@define-color headerbar_shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color sidebar_bg_color @sakura_surface;
|
||||||
|
@define-color sidebar_fg_color @sakura_fg;
|
||||||
|
@define-color sidebar_backdrop_color @sakura_bg;
|
||||||
|
@define-color sidebar_border_color @sakura_border;
|
||||||
|
@define-color sidebar_shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color secondary_sidebar_bg_color @sakura_bg;
|
||||||
|
@define-color secondary_sidebar_fg_color @sakura_fg;
|
||||||
|
@define-color card_bg_color @sakura_surface;
|
||||||
|
@define-color card_fg_color @sakura_fg;
|
||||||
|
@define-color card_shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color dialog_bg_color @sakura_surface;
|
||||||
|
@define-color dialog_fg_color @sakura_fg;
|
||||||
|
@define-color popover_bg_color @sakura_overlay;
|
||||||
|
@define-color popover_fg_color @sakura_fg;
|
||||||
|
@define-color popover_shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color thumbnail_bg_color @sakura_surface;
|
||||||
|
@define-color thumbnail_fg_color @sakura_fg;
|
||||||
|
@define-color shade_color rgba(0, 0, 0, 0.36);
|
||||||
|
@define-color scrollbar_outline_color @sakura_border;
|
||||||
|
@define-color accent_bg_color @sakura_accent;
|
||||||
|
@define-color accent_fg_color #0f0d17;
|
||||||
|
@define-color accent_color @sakura_accent;
|
||||||
|
@define-color destructive_bg_color @sakura_red;
|
||||||
|
@define-color destructive_fg_color #0f0d17;
|
||||||
|
@define-color destructive_color @sakura_red;
|
||||||
|
@define-color success_bg_color @sakura_green;
|
||||||
|
@define-color success_fg_color #0f0d17;
|
||||||
|
@define-color warning_bg_color @sakura_yellow;
|
||||||
|
@define-color warning_fg_color #0f0d17;
|
||||||
|
@define-color error_bg_color @sakura_red;
|
||||||
|
@define-color error_fg_color #0f0d17;
|
||||||
|
|
||||||
|
/* Adwaita hardcodes a fair amount, so pin the big surfaces directly. */
|
||||||
|
window, .background, dialog, popover, popover.background,
|
||||||
|
headerbar, .titlebar, .sidebar, placessidebar, notebook > header {
|
||||||
|
background-color: @sakura_bg;
|
||||||
|
color: @sakura_fg;
|
||||||
|
}
|
||||||
|
headerbar, .titlebar, .sidebar, placessidebar,
|
||||||
|
.sidebar-pane, notebook > header, toolbar, actionbar > revealer > box {
|
||||||
|
background-color: @sakura_surface;
|
||||||
|
border-color: @sakura_border;
|
||||||
|
}
|
||||||
|
popover > contents, popover > arrow, menu, .menu, .context-menu {
|
||||||
|
background-color: @sakura_overlay;
|
||||||
|
color: @sakura_fg;
|
||||||
|
}
|
||||||
|
treeview.view, textview, textview text, iconview, .view, list, list row, columnview {
|
||||||
|
background-color: @sakura_base;
|
||||||
|
color: @sakura_fg;
|
||||||
|
}
|
||||||
|
treeview.view:selected, .view:selected, list row:selected,
|
||||||
|
menuitem:hover, .menu menuitem:hover, row:selected {
|
||||||
|
background-color: @sakura_accent;
|
||||||
|
color: #0f0d17;
|
||||||
|
}
|
||||||
|
entry, spinbutton, searchbar entry, .entry {
|
||||||
|
background-color: @sakura_base;
|
||||||
|
color: @sakura_fg;
|
||||||
|
border-color: @sakura_border;
|
||||||
|
}
|
||||||
|
entry:focus, .entry:focus { border-color: @sakura_accent; }
|
||||||
|
button {
|
||||||
|
background-image: none;
|
||||||
|
background-color: @sakura_surface;
|
||||||
|
color: @sakura_fg;
|
||||||
|
border-color: @sakura_border;
|
||||||
|
}
|
||||||
|
button:hover { background-color: @sakura_overlay; }
|
||||||
|
button:active, button:checked {
|
||||||
|
background-color: @sakura_accent;
|
||||||
|
color: #0f0d17;
|
||||||
|
}
|
||||||
|
scrollbar, scrollbar slider { background-color: transparent; }
|
||||||
|
scrollbar slider { background-color: @sakura_border; }
|
||||||
|
scrollbar slider:hover { background-color: @sakura_dim; }
|
||||||
|
tooltip, tooltip.background {
|
||||||
|
background-color: @sakura_overlay;
|
||||||
|
color: @sakura_fg;
|
||||||
|
}
|
||||||
|
progressbar progress, levelbar block.filled { background-color: @sakura_accent; }
|
||||||
|
switch:checked, check:checked, radio:checked {
|
||||||
|
background-color: @sakura_accent;
|
||||||
|
color: #0f0d17;
|
||||||
|
}
|
||||||
|
selection, ::selection {
|
||||||
|
background-color: @sakura_accent;
|
||||||
|
color: #0f0d17;
|
||||||
|
}
|
||||||
|
separator { background-color: @sakura_border; }
|
||||||
|
|
@ -1,32 +1,32 @@
|
||||||
local colors = {
|
local colors = {
|
||||||
bg = "#141414",
|
bg = "#0f0d17",
|
||||||
fg = "#feffd3",
|
fg = "#e9eefb",
|
||||||
cursor = "#ffffff",
|
cursor = "#92b9ea",
|
||||||
selection_bg = "#303030",
|
selection_bg = "#2e2842",
|
||||||
selection_fg = "#141414",
|
selection_fg = "#0f0d17",
|
||||||
|
|
||||||
black = "#141414",
|
black = "#0f0d17",
|
||||||
black_bright = "#262626",
|
black_bright = "#201b30",
|
||||||
|
|
||||||
red = "#c06c43",
|
red = "#cf6a80",
|
||||||
red_bright = "#dd7c4c",
|
red_bright = "#e0798f",
|
||||||
|
|
||||||
green = "#afb979",
|
green = "#8fae74",
|
||||||
green_bright = "#cbd88c",
|
green_bright = "#a8c68d",
|
||||||
|
|
||||||
yellow = "#c2a86c",
|
yellow = "#d8a87c",
|
||||||
yellow_bright = "#e1c47d",
|
yellow_bright = "#e9c79b",
|
||||||
|
|
||||||
blue = "#444649",
|
blue = "#454063",
|
||||||
blue_bright = "#5a5d61",
|
blue_bright = "#6b6486",
|
||||||
|
|
||||||
magenta = "#b4be7b",
|
magenta = "#b483c0",
|
||||||
magenta_bright = "#d0db8e",
|
magenta_bright = "#d0a4d8",
|
||||||
|
|
||||||
cyan = "#778284",
|
cyan = "#8ab6c4",
|
||||||
cyan_bright = "#8a989a",
|
cyan_bright = "#a3c0cb",
|
||||||
|
|
||||||
white = "#feffd3",
|
white = "#e9eefb",
|
||||||
}
|
}
|
||||||
|
|
||||||
vim.cmd("highlight clear")
|
vim.cmd("highlight clear")
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
-- Force LazyVim UI elements to use Carrie's green 🐾🌿
|
-- Force LazyVim UI elements to use Carrie's green 🐾🌿
|
||||||
|
|
||||||
local green = "#afb979"
|
local green = "#8fae74"
|
||||||
local green_bright = "#cbd88c"
|
local green_bright = "#a8c68d"
|
||||||
local bg = "#141414"
|
local bg = "#0f0d17"
|
||||||
|
|
||||||
local function hi(group, opts)
|
local function hi(group, opts)
|
||||||
vim.api.nvim_set_hl(0, group, opts)
|
vim.api.nvim_set_hl(0, group, opts)
|
||||||
|
|
@ -29,7 +29,7 @@ hi("CmpNormal", { bg = bg })
|
||||||
-- ✅ Telescope menus (if you use it)
|
-- ✅ Telescope menus (if you use it)
|
||||||
hi("TelescopeBorder", { fg = green })
|
hi("TelescopeBorder", { fg = green })
|
||||||
hi("TelescopePromptBorder", { fg = green })
|
hi("TelescopePromptBorder", { fg = green })
|
||||||
hi("TelescopeSelection", { bg = "#303030" })
|
hi("TelescopeSelection", { bg = "#2e2842" })
|
||||||
hi("TelescopePromptPrefix", { fg = green_bright })
|
hi("TelescopePromptPrefix", { fg = green_bright })
|
||||||
|
|
||||||
-- ✅ Floating menus in general
|
-- ✅ Floating menus in general
|
||||||
|
|
|
||||||
28
.config/particles.conf
Normal file
28
.config/particles.conf
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
# particles - wallpaper layer
|
||||||
|
# Tuned for bspwm/wallpaper/wallpaper.jpg: a bright, busy image, so the field
|
||||||
|
# is white and fairly opaque. Preview any change without touching the desktop:
|
||||||
|
# particles --snapshot /tmp/p.png --snapshot-bg ~/.config/bspwm/wallpaper/wallpaper.png
|
||||||
|
# Reload a running instance after editing: pkill -HUP particles
|
||||||
|
|
||||||
|
density = 55
|
||||||
|
radius = 2.4
|
||||||
|
glow = 4.0
|
||||||
|
opacity = 1.0
|
||||||
|
color = ffffff
|
||||||
|
|
||||||
|
link-distance = 140
|
||||||
|
link-width = 1.6
|
||||||
|
link-opacity = 0.85
|
||||||
|
link-color = ffffff
|
||||||
|
|
||||||
|
speed = 24
|
||||||
|
edges = bounce
|
||||||
|
|
||||||
|
cursor = grab,repel
|
||||||
|
cursor-distance = 180
|
||||||
|
cursor-strength = 1.0
|
||||||
|
cursor-response = 9
|
||||||
|
|
||||||
|
fps = 60
|
||||||
|
keep-below = true
|
||||||
|
pause-when-covered = true
|
||||||
|
|
@ -1,31 +1,34 @@
|
||||||
[colors]
|
[colors]
|
||||||
bg = #141414
|
bg = #0f0d17
|
||||||
border = #444649
|
; true ARGB (AARRGGBB): 75% background, text stays fully opaque
|
||||||
text = #feffd3
|
bg-trans = #bf0f0d17
|
||||||
dim = #778284
|
border = #3d3752
|
||||||
accent = #afb979
|
text = #e9eefb
|
||||||
red = #c06c43
|
dim = #7f7796
|
||||||
green = #afb979
|
accent = #92b9ea
|
||||||
yellow = #c2a86c
|
red = #cf6a80
|
||||||
blue = #444649
|
green = #8fae74
|
||||||
magenta = #b4be7b
|
yellow = #d8a87c
|
||||||
cyan = #778284
|
blue = #7c9ede
|
||||||
|
magenta = #b483c0
|
||||||
|
cyan = #8ab6c4
|
||||||
|
|
||||||
[bar/top]
|
[bar/top]
|
||||||
wm-restack = bspwm
|
wm-restack = bspwm
|
||||||
monitor = ${env:MONITOR:}
|
monitor = ${env:MONITOR:}
|
||||||
width = 99%
|
width = 99%
|
||||||
height = 28
|
height = 28
|
||||||
|
radius = 10
|
||||||
bottom = false
|
bottom = false
|
||||||
offset-x = 0.5%
|
offset-x = 0.5%
|
||||||
offset-y = 0.5%
|
offset-y = 0.5%
|
||||||
fixed-center = true
|
fixed-center = true
|
||||||
|
|
||||||
background = ${colors.bg}
|
background = ${colors.bg-trans}
|
||||||
foreground = ${colors.text}
|
foreground = ${colors.text}
|
||||||
|
|
||||||
border-size = 2
|
border-size = 2
|
||||||
border-color = ${colors.border}
|
border-color = #993d3752
|
||||||
|
|
||||||
padding = 1
|
padding = 1
|
||||||
module-margin = 0
|
module-margin = 0
|
||||||
|
|
@ -98,43 +101,43 @@ interval = 1
|
||||||
format = <label>
|
format = <label>
|
||||||
format-padding = 1
|
format-padding = 1
|
||||||
|
|
||||||
label = "%{F#afb979}%{F-}%time% %{F#778284}|%{F-} %date%"
|
label = "%{F#92b9ea}%{F-}%time% %{F#7f7796}|%{F-} %date%"
|
||||||
date = %a %d
|
date = %a %d
|
||||||
time = %H:%M
|
time = %H:%M
|
||||||
|
|
||||||
; Resources
|
; Resources
|
||||||
[module/cpu]
|
[module/cpu]
|
||||||
type = custom/script
|
type = custom/script
|
||||||
exec = "$HOME/.config/scripts/system-info.sh --cpu --normal-color '#b4be7b' --critical-color '#c06c43'"
|
exec = "$HOME/.config/scripts/system-info.sh --cpu --normal-color '#92b9ea' --critical-color '#cf6a80'"
|
||||||
click-left = "$HOME/bin/system-info.sh --cpu --click"
|
click-left = "$HOME/bin/system-info.sh --cpu --click"
|
||||||
format = "%{F#b4be7b}CPU%{F-} <label>"
|
format = "%{F#92b9ea}CPU%{F-} <label>"
|
||||||
format-padding = 1
|
format-padding = 1
|
||||||
interval = 2
|
interval = 2
|
||||||
|
|
||||||
[module/ram]
|
[module/ram]
|
||||||
type = custom/script
|
type = custom/script
|
||||||
exec = "$HOME/.config/scripts/system-info.sh --ram --normal-color '#c2a86c' --critical-color '#c06c43'"
|
exec = "$HOME/.config/scripts/system-info.sh --ram --normal-color '#d8a87c' --critical-color '#cf6a80'"
|
||||||
format = "%{F#c2a86c}RAM%{F-} <label>"
|
format = "%{F#d8a87c}RAM%{F-} <label>"
|
||||||
format-padding = 1
|
format-padding = 1
|
||||||
interval = 2
|
interval = 2
|
||||||
|
|
||||||
[module/gpu]
|
[module/gpu]
|
||||||
type = custom/script
|
type = custom/script
|
||||||
exec = "$HOME/.config/scripts/system-info.sh --gpu --normal-color '#778284' --critical-color '#c06c43'"
|
exec = "$HOME/.config/scripts/system-info.sh --gpu --normal-color '#b483c0' --critical-color '#cf6a80'"
|
||||||
click-left = "$HOME/bin/system-info.sh --gpu --click"
|
click-left = "$HOME/bin/system-info.sh --gpu --click"
|
||||||
format = "%{F#778284}GPU%{F-} <label>"
|
format = "%{F#b483c0}GPU%{F-} <label>"
|
||||||
format-padding = 1
|
format-padding = 1
|
||||||
interval = 2
|
interval = 2
|
||||||
|
|
||||||
; Audio
|
; Audio
|
||||||
[module/volume]
|
[module/volume]
|
||||||
type = custom/script
|
type = custom/script
|
||||||
exec = "SESSION_TYPE=x11 sh $HOME/.config/scripts/volume.sh --device output --status --disabled-color '#c06c43' --enabled-color '#afb979'"
|
exec = "SESSION_TYPE=x11 sh $HOME/.config/scripts/volume.sh --device output --status --disabled-color '#cf6a80' --enabled-color '#8fae74'"
|
||||||
tail = true
|
tail = true
|
||||||
click-left = "sh $HOME/bin/volume.sh --device output --action toggle"
|
click-left = "sh $HOME/bin/volume.sh --device output --action toggle"
|
||||||
scroll-up = "sh $HOME/bin/volume.sh --device output --action increase"
|
scroll-up = "sh $HOME/bin/volume.sh --device output --action increase"
|
||||||
scroll-down = "sh $HOME/bin/volume.sh --device output --action decrease"
|
scroll-down = "sh $HOME/bin/volume.sh --device output --action decrease"
|
||||||
format = "%{F#afb979}VOL%{F-} <label>"
|
format = "%{F#8fae74}VOL%{F-} <label>"
|
||||||
format-padding = 1
|
format-padding = 1
|
||||||
|
|
||||||
; Media player
|
; Media player
|
||||||
|
|
@ -147,7 +150,7 @@ click-right = playerctl next
|
||||||
click-middle = playerctl previous
|
click-middle = playerctl previous
|
||||||
scroll-up = playerctl volume 0.05+
|
scroll-up = playerctl volume 0.05+
|
||||||
scroll-down = playerctl volume 0.05-
|
scroll-down = playerctl volume 0.05-
|
||||||
format = "%{F#b4be7b}♫%{F-} <label>"
|
format = "%{F#e0919f}♫%{F-} <label>"
|
||||||
format-padding = 1
|
format-padding = 1
|
||||||
interval = 2
|
interval = 2
|
||||||
label-maxlen = 30
|
label-maxlen = 30
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,6 @@
|
||||||
# Format: FG, BTN_BG, bright, less_bright, dark, less_dark, txt_fg, br_text, BTN_FG, txt_bg, bg, shadow, sel_bg, sel_fg, link, visited, alt_bg, default, tooltip_bg, tooltip_fg
|
# Format: FG, BTN_BG, bright, less_bright, dark, less_dark, txt_fg, br_text, BTN_FG, txt_bg, bg, shadow, sel_bg, sel_fg, link, visited, alt_bg, default, tooltip_bg, tooltip_fg
|
||||||
|
|
||||||
[ColorScheme]
|
[ColorScheme]
|
||||||
active_colors=#feffd3, #262626, #303030, #262626, #5a5d61, #444649, #feffd3, #feffd3, #feffd3, #1a1a1a, #141414, #000000, #e1c47d, #141414, #e1c47d, #c2a86c, #1a1a1a, #feffd3, #262626, #feffd3
|
active_colors=#e9eefb, #201b30, #2e2842, #201b30, #5b5478, #3d3752, #e9eefb, #e9eefb, #e9eefb, #191527, #0f0d17, #000000, #92b9ea, #0f0d17, #92b9ea, #7c9ede, #191527, #e9eefb, #201b30, #e9eefb
|
||||||
disabled_colors=#778284, #262626, #303030, #262626, #5a5d61, #444649, #778284, #778284, #778284, #1a1a1a, #141414, #000000, #5a5d61, #141414, #778284, #778284, #1a1a1a, #778284, #262626, #778284
|
disabled_colors=#7f7796, #201b30, #2e2842, #201b30, #5b5478, #3d3752, #7f7796, #7f7796, #7f7796, #191527, #0f0d17, #000000, #5b5478, #0f0d17, #7f7796, #7f7796, #191527, #7f7796, #201b30, #7f7796
|
||||||
inactive_colors=#feffd3, #262626, #303030, #262626, #5a5d61, #444649, #feffd3, #feffd3, #feffd3, #1a1a1a, #141414, #000000, #c2a86c, #141414, #c2a86c, #c2a86c, #1a1a1a, #feffd3, #262626, #feffd3
|
inactive_colors=#e9eefb, #201b30, #2e2842, #201b30, #5b5478, #3d3752, #e9eefb, #e9eefb, #e9eefb, #191527, #0f0d17, #000000, #7c9ede, #0f0d17, #7c9ede, #7c9ede, #191527, #e9eefb, #201b30, #e9eefb
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
[Appearance]
|
[Appearance]
|
||||||
color_scheme_path=/home/carrie/.config/qt5ct/colors/dc.conf
|
color_scheme_path=/home/sarthak/.config/qt5ct/colors/dc.conf
|
||||||
custom_palette=true
|
custom_palette=true
|
||||||
icon_theme=Gruvbox-Plus-Dark
|
icon_theme=Adwaita
|
||||||
standard_dialogs=default
|
standard_dialogs=default
|
||||||
style=Fusion
|
style=Fusion
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,6 @@
|
||||||
# Format: FG, BTN_BG, bright, less_br, dark, less_dark, txt_fg, br_text, btn_fg, txt_bg, bg, shadow, sel_bg, sel_fg, link, visited, alt_bg, default, tooltip_bg, tooltip_fg, placeholder_fg, accent
|
# Format: FG, BTN_BG, bright, less_br, dark, less_dark, txt_fg, br_text, btn_fg, txt_bg, bg, shadow, sel_bg, sel_fg, link, visited, alt_bg, default, tooltip_bg, tooltip_fg, placeholder_fg, accent
|
||||||
|
|
||||||
[ColorScheme]
|
[ColorScheme]
|
||||||
active_colors=#feffd3, #262626, #303030, #262626, #5a5d61, #444649, #feffd3, #feffd3, #feffd3, #1a1a1a, #141414, #000000, #e1c47d, #141414, #e1c47d, #c2a86c, #1a1a1a, #feffd3, #262626, #feffd3, #778284, #e1c47d
|
active_colors=#e9eefb, #201b30, #2e2842, #201b30, #5b5478, #3d3752, #e9eefb, #e9eefb, #e9eefb, #191527, #0f0d17, #000000, #92b9ea, #0f0d17, #92b9ea, #7c9ede, #191527, #e9eefb, #201b30, #e9eefb, #7f7796, #92b9ea
|
||||||
disabled_colors=#778284, #262626, #303030, #262626, #5a5d61, #444649, #778284, #778284, #778284, #1a1a1a, #141414, #000000, #5a5d61, #141414, #778284, #778284, #1a1a1a, #778284, #262626, #778284, #778284, #5a5d61
|
disabled_colors=#7f7796, #201b30, #2e2842, #201b30, #5b5478, #3d3752, #7f7796, #7f7796, #7f7796, #191527, #0f0d17, #000000, #5b5478, #0f0d17, #7f7796, #7f7796, #191527, #7f7796, #201b30, #7f7796, #7f7796, #5b5478
|
||||||
inactive_colors=#feffd3, #262626, #303030, #262626, #5a5d61, #444649, #feffd3, #feffd3, #feffd3, #1a1a1a, #141414, #000000, #c2a86c, #141414, #c2a86c, #c2a86c, #1a1a1a, #feffd3, #262626, #feffd3, #778284, #c2a86c
|
inactive_colors=#e9eefb, #201b30, #2e2842, #201b30, #5b5478, #3d3752, #e9eefb, #e9eefb, #e9eefb, #191527, #0f0d17, #000000, #7c9ede, #0f0d17, #7c9ede, #7c9ede, #191527, #e9eefb, #201b30, #e9eefb, #7f7796, #7c9ede
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
[Appearance]
|
[Appearance]
|
||||||
color_scheme_path=~/.config/qt6ct/colors/dc.conf
|
color_scheme_path=~/.config/qt6ct/colors/dc.conf
|
||||||
custom_palette=true
|
custom_palette=true
|
||||||
icon_theme=Gruvbox-Plus-Dark
|
icon_theme=Adwaita
|
||||||
standard_dialogs=default
|
standard_dialogs=default
|
||||||
style=Fusion
|
style=Fusion
|
||||||
|
|
||||||
|
|
|
||||||
61
.config/rice/README.md
Normal file
61
.config/rice/README.md
Normal file
|
|
@ -0,0 +1,61 @@
|
||||||
|
# Sakura Line
|
||||||
|
|
||||||
|
bspwm rice. Palette sampled from `~/.config/bspwm/wallpaper/wallpaper.jpg`.
|
||||||
|
|
||||||
|
## Replicate on a fresh machine
|
||||||
|
|
||||||
|
```sh
|
||||||
|
bash <(curl -fsSL https://git.srtk.in/sarthak/dotfiles/raw/branch/main/.config/rice/install.sh)
|
||||||
|
```
|
||||||
|
|
||||||
|
Or, if the dotfiles are already cloned:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
~/.config/rice/install.sh # full run
|
||||||
|
~/.config/rice/install.sh --dry-run # show what it would do, change nothing
|
||||||
|
```
|
||||||
|
|
||||||
|
Arch is the first-class target. Debian/Ubuntu and Fedora are best-effort —
|
||||||
|
the desktop, build and theming steps work; the AUR extras are skipped.
|
||||||
|
|
||||||
|
The script is safe to re-run. Anything in `$HOME` that would be overwritten by
|
||||||
|
the dotfiles checkout is moved to `~/.rice-backup-<timestamp>/` first.
|
||||||
|
|
||||||
|
## What it sets up
|
||||||
|
|
||||||
|
| | |
|
||||||
|
|---|---|
|
||||||
|
| WM | bspwm + sxhkd |
|
||||||
|
| Bar | polybar (translucent, rounded) |
|
||||||
|
| Compositor | picom (rounded corners, vsync) |
|
||||||
|
| Launcher | rofi, centred, with icons |
|
||||||
|
| Notifications | dunst |
|
||||||
|
| Terminal | st, built from `st/config.h` here (upstream gitignores it) |
|
||||||
|
| Wallpaper layer | `particles`, built from `particles/` here |
|
||||||
|
| Toolkits | GTK2/3/4 via `gtk.css` overrides, Qt via qt6ct |
|
||||||
|
|
||||||
|
## Palette
|
||||||
|
|
||||||
|
| role | hex | from |
|
||||||
|
|---|---|---|
|
||||||
|
| bg | `#0f0d17` | twilight shadow |
|
||||||
|
| fg | `#e9eefb` | cool white |
|
||||||
|
| accent | `#92b9ea` | sky |
|
||||||
|
| red | `#cf6a80` | blossom |
|
||||||
|
| green | `#8fae74` | grass |
|
||||||
|
| yellow | `#d8a87c` | train stripe |
|
||||||
|
| magenta | `#b483c0` | plum blossom |
|
||||||
|
| cyan | `#8ab6c4` | station house |
|
||||||
|
|
||||||
|
Changing the wallpaper does not re-derive these — they are written into each
|
||||||
|
app's config.
|
||||||
|
|
||||||
|
## Layout
|
||||||
|
|
||||||
|
```
|
||||||
|
.config/rice/
|
||||||
|
├── install.sh one-shot bootstrap
|
||||||
|
├── packages.txt package list ("aur:" prefix = needs an AUR helper)
|
||||||
|
├── st/config.h st build config
|
||||||
|
└── particles/ wallpaper-layer particle field (source + Makefile)
|
||||||
|
```
|
||||||
238
.config/rice/install.sh
Executable file
238
.config/rice/install.sh
Executable file
|
|
@ -0,0 +1,238 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Sakura Line - one-shot rice bootstrap.
|
||||||
|
#
|
||||||
|
# bash <(curl -fsSL https://git.srtk.in/sarthak/dotfiles/raw/branch/main/.config/rice/install.sh)
|
||||||
|
#
|
||||||
|
# or, from a clone: ~/.config/rice/install.sh
|
||||||
|
#
|
||||||
|
# Arch is the first-class target. Debian/Ubuntu and Fedora are best-effort:
|
||||||
|
# the desktop and build steps work, the AUR extras are skipped.
|
||||||
|
#
|
||||||
|
# Safe to re-run. Nothing in $HOME is overwritten without a backup first.
|
||||||
|
|
||||||
|
set -uo pipefail
|
||||||
|
|
||||||
|
DOTS_REMOTE="${DOTS_REMOTE:-https://git.srtk.in/sarthak/dotfiles.git}"
|
||||||
|
ST_REMOTE="${ST_REMOTE:-https://github.com/siduck/st}"
|
||||||
|
DOTS_DIR="$HOME/.dotfiles"
|
||||||
|
RICE_DIR="$HOME/.config/rice"
|
||||||
|
SRC_DIR="${SRC_DIR:-$HOME/gitclone}"
|
||||||
|
BACKUP="$HOME/.rice-backup-$(date +%Y%m%d-%H%M%S)"
|
||||||
|
STEPS_FAILED=()
|
||||||
|
DRY=0
|
||||||
|
for a in "$@"; do
|
||||||
|
case "$a" in
|
||||||
|
-n|--dry-run) DRY=1 ;;
|
||||||
|
-h|--help)
|
||||||
|
sed -n '2,14p' "$0" | sed 's/^#\s\?//'
|
||||||
|
printf '\nOptions:\n -n, --dry-run show what would happen, change nothing\n -h, --help this text\n\n'
|
||||||
|
exit 0 ;;
|
||||||
|
*) printf 'unknown option: %s (try --help)\n' "$a"; exit 2 ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
c_hd=$'\e[1;38;5;111m'; c_ok=$'\e[38;5;108m'; c_wa=$'\e[38;5;179m'
|
||||||
|
c_er=$'\e[38;5;168m'; c_dim=$'\e[38;5;103m'; c_off=$'\e[0m'
|
||||||
|
say() { printf '%s==>%s %s\n' "$c_hd" "$c_off" "$*"; }
|
||||||
|
# every mutating command goes through this so --dry-run is honest
|
||||||
|
run() { if [ "$DRY" = 1 ]; then printf ' %s$ %s%s\n' "$c_dim" "$*" "$c_off"; else "$@"; fi; }
|
||||||
|
ok() { printf ' %s+%s %s\n' "$c_ok" "$c_off" "$*"; }
|
||||||
|
warn() { printf ' %s!%s %s\n' "$c_wa" "$c_off" "$*"; }
|
||||||
|
die() { printf ' %sx%s %s\n' "$c_er" "$c_off" "$*"; exit 1; }
|
||||||
|
note() { printf ' %s%s%s\n' "$c_dim" "$*" "$c_off"; }
|
||||||
|
fail_step() { STEPS_FAILED+=("$1"); printf ' %sx%s %s\n' "$c_er" "$c_off" "$1"; }
|
||||||
|
|
||||||
|
[ "$(id -u)" -eq 0 ] && die "run this as your normal user, not root (it uses sudo where needed)"
|
||||||
|
|
||||||
|
# ---------------------------------------------------------------- distro
|
||||||
|
PM=""; AUR=""
|
||||||
|
if command -v pacman >/dev/null 2>&1; then PM=pacman
|
||||||
|
elif command -v apt-get >/dev/null 2>&1; then PM=apt
|
||||||
|
elif command -v dnf >/dev/null 2>&1; then PM=dnf
|
||||||
|
else warn "no supported package manager found; skipping installs"; PM=none
|
||||||
|
fi
|
||||||
|
PM_LINE="package manager: ${PM}"
|
||||||
|
|
||||||
|
# Package names differ per distro; this maps the ones that actually differ.
|
||||||
|
map_pkg() {
|
||||||
|
local p="$1"
|
||||||
|
case "$PM" in
|
||||||
|
apt) case "$p" in
|
||||||
|
base-devel) echo "build-essential" ;;
|
||||||
|
pkgconf) echo "pkg-config" ;;
|
||||||
|
libx11) echo "libx11-dev" ;;
|
||||||
|
libxext) echo "libxext-dev" ;;
|
||||||
|
libxft) echo "libxft-dev" ;;
|
||||||
|
libxrandr) echo "libxrandr-dev" ;;
|
||||||
|
libxfixes) echo "libxfixes-dev" ;;
|
||||||
|
libxinerama) echo "libxinerama-dev" ;;
|
||||||
|
cairo) echo "libcairo2-dev" ;;
|
||||||
|
harfbuzz) echo "libharfbuzz-dev" ;;
|
||||||
|
fontconfig) echo "libfontconfig1-dev" ;;
|
||||||
|
freetype2) echo "libfreetype6-dev" ;;
|
||||||
|
gd) echo "libgd-dev" ;;
|
||||||
|
xorg-xrandr) echo "x11-xserver-utils" ;;
|
||||||
|
xorg-xprop) echo "x11-utils" ;;
|
||||||
|
ttf-jetbrains-mono-nerd) echo "fonts-jetbrains-mono" ;;
|
||||||
|
noto-fonts) echo "fonts-noto" ;;
|
||||||
|
noto-fonts-emoji) echo "fonts-noto-color-emoji" ;;
|
||||||
|
papirus-icon-theme) echo "papirus-icon-theme" ;;
|
||||||
|
qt6ct) echo "qt6ct" ;;
|
||||||
|
*) echo "$p" ;;
|
||||||
|
esac ;;
|
||||||
|
dnf) case "$p" in
|
||||||
|
base-devel) echo "@development-tools" ;;
|
||||||
|
pkgconf) echo "pkgconf-pkg-config" ;;
|
||||||
|
libx11) echo "libX11-devel" ;;
|
||||||
|
libxext) echo "libXext-devel" ;;
|
||||||
|
libxft) echo "libXft-devel" ;;
|
||||||
|
libxrandr) echo "libXrandr-devel" ;;
|
||||||
|
libxfixes) echo "libXfixes-devel" ;;
|
||||||
|
libxinerama) echo "libXinerama-devel" ;;
|
||||||
|
cairo) echo "cairo-devel" ;;
|
||||||
|
harfbuzz) echo "harfbuzz-devel" ;;
|
||||||
|
fontconfig) echo "fontconfig-devel" ;;
|
||||||
|
freetype2) echo "freetype-devel" ;;
|
||||||
|
gd) echo "gd-devel" ;;
|
||||||
|
xorg-xrandr) echo "xrandr" ;;
|
||||||
|
xorg-xprop) echo "xprop" ;;
|
||||||
|
ttf-jetbrains-mono-nerd) echo "jetbrains-mono-fonts" ;;
|
||||||
|
noto-fonts) echo "google-noto-sans-fonts" ;;
|
||||||
|
noto-fonts-emoji) echo "google-noto-emoji-fonts" ;;
|
||||||
|
*) echo "$p" ;;
|
||||||
|
esac ;;
|
||||||
|
*) echo "$p" ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
install_packages() {
|
||||||
|
[ "$PM" = none ] && { warn "skipping package install"; return 0; }
|
||||||
|
local list="$RICE_DIR/packages.txt" repo=() aur=() line pkg
|
||||||
|
[ -f "$list" ] || { warn "packages.txt not found, skipping"; return 0; }
|
||||||
|
|
||||||
|
while IFS= read -r line; do
|
||||||
|
line="${line%%#*}"; line="$(echo "$line" | tr -d '[:space:]')"
|
||||||
|
[ -z "$line" ] && continue
|
||||||
|
if [[ "$line" == aur:* ]]; then aur+=("${line#aur:}")
|
||||||
|
else repo+=("$(map_pkg "$line")"); fi
|
||||||
|
done < "$list"
|
||||||
|
|
||||||
|
say "installing ${#repo[@]} packages"
|
||||||
|
case "$PM" in
|
||||||
|
pacman) run sudo pacman -S --needed --noconfirm "${repo[@]}" || fail_step "some packages failed" ;;
|
||||||
|
apt) run sudo apt-get update -qq && run sudo apt-get install -y "${repo[@]}" || fail_step "some packages failed" ;;
|
||||||
|
dnf) run sudo dnf install -y "${repo[@]}" || fail_step "some packages failed" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ "$PM" = pacman ] && [ "${#aur[@]}" -gt 0 ]; then
|
||||||
|
local helper=""
|
||||||
|
for h in paru yay pikaur; do command -v "$h" >/dev/null 2>&1 && { helper="$h"; break; }; done
|
||||||
|
if [ -z "$helper" ]; then
|
||||||
|
warn "no AUR helper; skipping: ${aur[*]}"
|
||||||
|
note "install paru, then re-run to get them"
|
||||||
|
else
|
||||||
|
say "installing ${#aur[@]} AUR packages with $helper"
|
||||||
|
run "$helper" -S --needed --noconfirm "${aur[@]}" || fail_step "some AUR packages failed"
|
||||||
|
fi
|
||||||
|
elif [ "${#aur[@]}" -gt 0 ]; then
|
||||||
|
warn "not Arch; skipping AUR extras: ${aur[*]}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# ------------------------------------------------------------- dotfiles
|
||||||
|
dot() { git --git-dir="$DOTS_DIR" --work-tree="$HOME" "$@"; }
|
||||||
|
|
||||||
|
deploy_dotfiles() {
|
||||||
|
if [ -d "$DOTS_DIR" ]; then
|
||||||
|
ok "dotfiles repo already present"
|
||||||
|
else
|
||||||
|
say "cloning dotfiles"
|
||||||
|
run git clone --bare "$DOTS_REMOTE" "$DOTS_DIR" || { fail_step "dotfiles clone"; return 1; }
|
||||||
|
fi
|
||||||
|
run dot config status.showUntrackedFiles no
|
||||||
|
if [ "$DRY" = 1 ]; then note "would checkout main into \$HOME (backing up conflicts)"; return 0; fi
|
||||||
|
|
||||||
|
# Move anything that would be clobbered into a backup instead of losing it.
|
||||||
|
mkdir -p "$BACKUP"
|
||||||
|
local conflicts
|
||||||
|
conflicts="$(dot checkout main 2>&1 | grep -oP '^\s+\K\S+\.\S+$' || true)"
|
||||||
|
if [ -n "$conflicts" ]; then
|
||||||
|
say "backing up files that would be overwritten -> $BACKUP"
|
||||||
|
while IFS= read -r f; do
|
||||||
|
[ -z "$f" ] && continue
|
||||||
|
[ -e "$HOME/$f" ] || continue
|
||||||
|
mkdir -p "$BACKUP/$(dirname "$f")"
|
||||||
|
mv "$HOME/$f" "$BACKUP/$f" && note "$f"
|
||||||
|
done <<< "$conflicts"
|
||||||
|
dot checkout main || { fail_step "dotfiles checkout"; return 1; }
|
||||||
|
fi
|
||||||
|
rmdir "$BACKUP" 2>/dev/null
|
||||||
|
ok "dotfiles deployed"
|
||||||
|
}
|
||||||
|
|
||||||
|
# --------------------------------------------------------------- builds
|
||||||
|
build_st() {
|
||||||
|
command -v gcc >/dev/null 2>&1 || { warn "no compiler; skipping st"; return 0; }
|
||||||
|
mkdir -p "$SRC_DIR"
|
||||||
|
if [ ! -d "$SRC_DIR/st/.git" ]; then
|
||||||
|
say "cloning st"
|
||||||
|
run git clone --depth 1 "$ST_REMOTE" "$SRC_DIR/st" || { fail_step "st clone"; return 1; }
|
||||||
|
fi
|
||||||
|
# config.h is gitignored upstream, so the rice bundle carries ours
|
||||||
|
run cp "$RICE_DIR/st/config.h" "$SRC_DIR/st/config.h" || { fail_step "st config"; return 1; }
|
||||||
|
say "building st"
|
||||||
|
run bash -c 'cd "$1" && make clean >/dev/null 2>&1; make' _ "$SRC_DIR/st" || { fail_step "st build"; return 1; }
|
||||||
|
run bash -c 'cd "$1" && sudo make install' _ "$SRC_DIR/st" || { fail_step "st install"; return 1; }
|
||||||
|
ok "st installed"
|
||||||
|
}
|
||||||
|
|
||||||
|
build_particles() {
|
||||||
|
command -v gcc >/dev/null 2>&1 || { warn "no compiler; skipping particles"; return 0; }
|
||||||
|
pkg-config --exists cairo x11 xext xfixes xrandr 2>/dev/null || {
|
||||||
|
warn "cairo/X11 dev headers missing; skipping particles"; return 0; }
|
||||||
|
say "building particles"
|
||||||
|
run bash -c 'cd "$1" && make clean >/dev/null 2>&1; make' _ "$RICE_DIR/particles" || { fail_step "particles build"; return 1; }
|
||||||
|
run bash -c 'cd "$1" && sudo make install' _ "$RICE_DIR/particles" || { fail_step "particles install"; return 1; }
|
||||||
|
ok "particles installed (run 'particles' to toggle)"
|
||||||
|
}
|
||||||
|
|
||||||
|
# ---------------------------------------------------------------- setup
|
||||||
|
post_setup() {
|
||||||
|
say "post-setup"
|
||||||
|
chmod +x "$HOME"/.config/bspwm/bspwmrc 2>/dev/null
|
||||||
|
chmod +x "$HOME"/.config/polybar/launch.sh 2>/dev/null
|
||||||
|
chmod +x "$HOME"/.config/scripts/*.sh 2>/dev/null
|
||||||
|
chmod +x "$HOME"/.config/scripts/rofi-menus/*.sh 2>/dev/null
|
||||||
|
chmod +x "$HOME"/.config/rice/install.sh 2>/dev/null
|
||||||
|
[ "$DRY" = 1 ] && { note "would fix permissions, rebuild fonts, set wallpaper"; return 0; }
|
||||||
|
command -v fc-cache >/dev/null 2>&1 && fc-cache -f >/dev/null 2>&1 && ok "font cache rebuilt"
|
||||||
|
|
||||||
|
if command -v papirus-folders >/dev/null 2>&1; then
|
||||||
|
papirus-folders -C blue --theme Papirus-Dark >/dev/null 2>&1 && ok "papirus folders set to blue"
|
||||||
|
fi
|
||||||
|
if [ -f "$HOME/.config/bspwm/wallpaper/wallpaper.jpg" ] && command -v feh >/dev/null 2>&1; then
|
||||||
|
feh --bg-fill "$HOME/.config/bspwm/wallpaper/wallpaper.jpg" >/dev/null 2>&1 && ok "wallpaper set"
|
||||||
|
fi
|
||||||
|
ok "post-setup done"
|
||||||
|
}
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------- main
|
||||||
|
printf '\n%s Sakura Line%s - bspwm rice bootstrap\n\n' "$c_hd" "$c_off"
|
||||||
|
say "$PM_LINE"
|
||||||
|
[ "$DRY" = 1 ] && say "dry run - nothing will be changed"
|
||||||
|
install_packages
|
||||||
|
deploy_dotfiles
|
||||||
|
build_st
|
||||||
|
build_particles
|
||||||
|
post_setup
|
||||||
|
|
||||||
|
printf '\n'
|
||||||
|
if [ "${#STEPS_FAILED[@]}" -eq 0 ]; then
|
||||||
|
say "done - log out and back into bspwm to pick everything up"
|
||||||
|
else
|
||||||
|
say "finished with ${#STEPS_FAILED[@]} problem(s):"
|
||||||
|
for s in "${STEPS_FAILED[@]}"; do printf ' %s- %s%s\n' "$c_er" "$s" "$c_off"; done
|
||||||
|
fi
|
||||||
|
printf '\n %sst%s must be reopened to show new colours; %sparticles%s toggles the wallpaper layer.\n\n' \
|
||||||
|
"$c_hd" "$c_off" "$c_hd" "$c_off"
|
||||||
54
.config/rice/packages.txt
Normal file
54
.config/rice/packages.txt
Normal file
|
|
@ -0,0 +1,54 @@
|
||||||
|
# Sakura Line rice - Arch package list.
|
||||||
|
# Lines starting with # are ignored. "aur:" prefix needs an AUR helper.
|
||||||
|
|
||||||
|
# --- window manager / desktop ---
|
||||||
|
bspwm
|
||||||
|
sxhkd
|
||||||
|
polybar
|
||||||
|
picom
|
||||||
|
rofi
|
||||||
|
dunst
|
||||||
|
feh
|
||||||
|
xdotool
|
||||||
|
xorg-xrandr
|
||||||
|
xorg-xprop
|
||||||
|
|
||||||
|
# --- build toolchain (st + particles) ---
|
||||||
|
base-devel
|
||||||
|
git
|
||||||
|
pkgconf
|
||||||
|
libx11
|
||||||
|
libxext
|
||||||
|
libxft
|
||||||
|
libxrandr
|
||||||
|
libxfixes
|
||||||
|
libxinerama
|
||||||
|
cairo
|
||||||
|
harfbuzz
|
||||||
|
fontconfig
|
||||||
|
freetype2
|
||||||
|
gd
|
||||||
|
|
||||||
|
# --- fonts ---
|
||||||
|
ttf-jetbrains-mono-nerd
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-emoji
|
||||||
|
|
||||||
|
# --- theming ---
|
||||||
|
qt6ct
|
||||||
|
papirus-icon-theme
|
||||||
|
aur:bibata-cursor-theme
|
||||||
|
|
||||||
|
# --- apps ---
|
||||||
|
thunar
|
||||||
|
fastfetch
|
||||||
|
|
||||||
|
# --- showcase toys ---
|
||||||
|
cava
|
||||||
|
btop
|
||||||
|
cmatrix
|
||||||
|
asciiquarium
|
||||||
|
onefetch
|
||||||
|
aur:cbonsai
|
||||||
|
aur:pipes.sh
|
||||||
|
aur:tty-clock
|
||||||
21
.config/rice/particles/LICENSE
Normal file
21
.config/rice/particles/LICENSE
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2024
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
23
.config/rice/particles/Makefile
Normal file
23
.config/rice/particles/Makefile
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
PREFIX ?= /usr/local
|
||||||
|
BINDIR ?= $(PREFIX)/bin
|
||||||
|
|
||||||
|
PKGS := cairo x11 xext xfixes xrender xrandr
|
||||||
|
CFLAGS ?= -O2 -Wall -Wextra
|
||||||
|
CFLAGS += $(shell pkg-config --cflags $(PKGS))
|
||||||
|
LDLIBS := $(shell pkg-config --libs $(PKGS)) -lm
|
||||||
|
|
||||||
|
all: particles
|
||||||
|
|
||||||
|
particles: particles_wall.c
|
||||||
|
$(CC) $(CFLAGS) -o $@ $< $(LDLIBS)
|
||||||
|
|
||||||
|
install: particles
|
||||||
|
install -Dm755 particles $(DESTDIR)$(BINDIR)/particles
|
||||||
|
|
||||||
|
uninstall:
|
||||||
|
rm -f $(DESTDIR)$(BINDIR)/particles
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f particles
|
||||||
|
|
||||||
|
.PHONY: all install uninstall clean
|
||||||
1744
.config/rice/particles/particles_wall.c
Normal file
1744
.config/rice/particles/particles_wall.c
Normal file
File diff suppressed because it is too large
Load diff
575
.config/rice/st/config.h
Normal file
575
.config/rice/st/config.h
Normal file
|
|
@ -0,0 +1,575 @@
|
||||||
|
/* See LICENSE file for copyright and license details. */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* appearance
|
||||||
|
*
|
||||||
|
* font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html
|
||||||
|
*/
|
||||||
|
static char *font = "JetBrainsMono Nerd Font :pixelsize=14:antialias=true:autohint=true";
|
||||||
|
static char *font2[] = { "JetBrainsMono Nerd Font :pixelsize=14:antialias=true:autohint=true" };
|
||||||
|
static int borderpx = 15;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* What program is execed by st depends of these precedence rules:
|
||||||
|
* 1: program passed with -e
|
||||||
|
* 2: utmp option
|
||||||
|
* 3: SHELL environment variable
|
||||||
|
* 4: value of shell in /etc/passwd
|
||||||
|
* 5: value of shell in config.h
|
||||||
|
*/
|
||||||
|
static char *shell = "/bin/sh";
|
||||||
|
char *utmp = NULL;
|
||||||
|
char *stty_args = "stty raw pass8 nl -echo -iexten -cstopb 38400";
|
||||||
|
|
||||||
|
/* identification sequence returned in DA and DECID */
|
||||||
|
char *vtiden = "\033[?6c";
|
||||||
|
|
||||||
|
/* Kerning / character bounding-box multipliers */
|
||||||
|
static float cwscale = 1.0;
|
||||||
|
static float chscale = 1.0;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* word delimiter string
|
||||||
|
*
|
||||||
|
* More advanced example: L" `'\"()[]{}"
|
||||||
|
*/
|
||||||
|
wchar_t *worddelimiters = L" ";
|
||||||
|
|
||||||
|
/* selection timeouts (in milliseconds) */
|
||||||
|
static unsigned int doubleclicktimeout = 300;
|
||||||
|
static unsigned int tripleclicktimeout = 600;
|
||||||
|
|
||||||
|
/* alt screens */
|
||||||
|
int allowaltscreen = 1;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* draw latency range in ms - from new content/keypress/etc until drawing.
|
||||||
|
* within this range, st draws when content stops arriving (idle). mostly it's
|
||||||
|
* near minlatency, but it waits longer for slow updates to avoid partial draw.
|
||||||
|
* low minlatency will tear/flicker more, as it can "detect" idle too early.
|
||||||
|
*/
|
||||||
|
static double minlatency = 8;
|
||||||
|
static double maxlatency = 33;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Synchronized-Update timeout in ms
|
||||||
|
* https://gitlab.com/gnachman/iterm2/-/wikis/synchronized-updates-spec
|
||||||
|
*/
|
||||||
|
static uint su_timeout = 200;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* blinking timeout (set to 0 to disable blinking) for the terminal blinking
|
||||||
|
* attribute.
|
||||||
|
*/
|
||||||
|
static unsigned int blinktimeout = 800;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* interval (in milliseconds) between each successive call to ximspot. This
|
||||||
|
* improves terminal performance while not reducing functionality to those
|
||||||
|
* whom need XIM support.
|
||||||
|
*/
|
||||||
|
int ximspot_update_interval = 1000;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* thickness of underline and bar cursors
|
||||||
|
*/
|
||||||
|
static unsigned int cursorthickness = 2;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 1: render most of the lines/blocks characters without using the font for
|
||||||
|
* perfect alignment between cells (U2500 - U259F except dashes/diagonals).
|
||||||
|
* Bold affects lines thickness if boxdraw_bold is not 0. Italic is ignored.
|
||||||
|
* 0: disable (render all U25XX glyphs normally from the font).
|
||||||
|
*/
|
||||||
|
const int boxdraw = 1;
|
||||||
|
const int boxdraw_bold = 1;
|
||||||
|
|
||||||
|
/* braille (U28XX): 1: render as adjacent "pixels", 0: use font */
|
||||||
|
const int boxdraw_braille = 1;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* bell volume. It must be a value between -100 and 100. Use 0 for disabling
|
||||||
|
* it
|
||||||
|
*/
|
||||||
|
static int bellvolume = 0;
|
||||||
|
|
||||||
|
/* default TERM value */
|
||||||
|
char *termname = "st-256color";
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces per tab
|
||||||
|
*
|
||||||
|
* When you are changing this value, don't forget to adapt the »it« value in
|
||||||
|
* the st.info and appropriately install the st.info in the environment where
|
||||||
|
* you use this st version.
|
||||||
|
*
|
||||||
|
* it#$tabspaces,
|
||||||
|
*
|
||||||
|
* Secondly make sure your kernel is not expanding tabs. When running `stty
|
||||||
|
* -a` »tab0« should appear. You can tell the terminal to not expand tabs by
|
||||||
|
* running following command:
|
||||||
|
*
|
||||||
|
* stty tabs
|
||||||
|
*/
|
||||||
|
unsigned int tabspaces = 8;
|
||||||
|
|
||||||
|
/* bg opacity */
|
||||||
|
float alpha = 0.72;
|
||||||
|
|
||||||
|
/* Terminal colors (16 first used in escape sequence) */
|
||||||
|
static const char *colorname[] = {
|
||||||
|
/* Sakura Line - sampled from bspwm/wallpaper/wallpaper.jpg */
|
||||||
|
/* 8 normal colors */
|
||||||
|
"#0f0d17", /* black */
|
||||||
|
"#cf6a80", /* red */
|
||||||
|
"#8fae74", /* green */
|
||||||
|
"#d8a87c", /* yellow */
|
||||||
|
"#7c9ede", /* blue */
|
||||||
|
"#b483c0", /* magenta */
|
||||||
|
"#8ab6c4", /* cyan */
|
||||||
|
"#c9d1e2", /* white */
|
||||||
|
|
||||||
|
/* 8 bright colors */
|
||||||
|
"#3a3350", /* black */
|
||||||
|
"#e0798f", /* red */
|
||||||
|
"#a8c68d", /* green */
|
||||||
|
"#e9c79b", /* yellow */
|
||||||
|
"#92b9ea", /* blue */
|
||||||
|
"#d0a4d8", /* magenta */
|
||||||
|
"#a3c0cb", /* cyan */
|
||||||
|
"#e9eefb", /* white */
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Default colors (colorname index)
|
||||||
|
* foreground, background, cursor, reverse cursor
|
||||||
|
*/
|
||||||
|
unsigned int defaultfg = 15; // #e9eefb
|
||||||
|
unsigned int defaultbg = 0; // #0f0d17
|
||||||
|
unsigned int defaultcs = 12; // cursor: #92b9ea (sky)
|
||||||
|
unsigned int defaultrcs = 0;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h4-Functions-using-CSI-_-ordered-by-the-final-character-lparen-s-rparen:CSI-Ps-SP-q.1D81
|
||||||
|
* Default style of cursor
|
||||||
|
* 0: Blinking block
|
||||||
|
* 1: Blinking block (default)
|
||||||
|
* 2: Steady block ("█")
|
||||||
|
* 3: Blinking underline
|
||||||
|
* 4: Steady underline ("_")
|
||||||
|
* 5: Blinking bar
|
||||||
|
* 6: Steady bar ("|")
|
||||||
|
* 7: Blinking st cursor
|
||||||
|
* 8: Steady st cursor
|
||||||
|
*/
|
||||||
|
static unsigned int cursorshape = 1;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Default columns and rows numbers
|
||||||
|
*/
|
||||||
|
|
||||||
|
static unsigned int cols = 80;
|
||||||
|
static unsigned int rows = 24;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Default colour and shape of the mouse cursor
|
||||||
|
*/
|
||||||
|
static unsigned int mouseshape = XC_xterm;
|
||||||
|
static unsigned int mousefg = 7;
|
||||||
|
static unsigned int mousebg = 0;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Color used to display font attributes when fontconfig selected a font which
|
||||||
|
* doesn't match the ones requested.
|
||||||
|
*/
|
||||||
|
static unsigned int defaultattr = 11;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Xresources preferences to load at startup
|
||||||
|
*/
|
||||||
|
ResourcePref resources[] = {
|
||||||
|
{ "font", STRING, &font },
|
||||||
|
{ "fontalt0", STRING, &font2[0] },
|
||||||
|
{ "color0", STRING, &colorname[0] },
|
||||||
|
{ "color1", STRING, &colorname[1] },
|
||||||
|
{ "color2", STRING, &colorname[2] },
|
||||||
|
{ "color3", STRING, &colorname[3] },
|
||||||
|
{ "color4", STRING, &colorname[4] },
|
||||||
|
{ "color5", STRING, &colorname[5] },
|
||||||
|
{ "color6", STRING, &colorname[6] },
|
||||||
|
{ "color7", STRING, &colorname[7] },
|
||||||
|
{ "color8", STRING, &colorname[8] },
|
||||||
|
{ "color9", STRING, &colorname[9] },
|
||||||
|
{ "color10", STRING, &colorname[10] },
|
||||||
|
{ "color11", STRING, &colorname[11] },
|
||||||
|
{ "color12", STRING, &colorname[12] },
|
||||||
|
{ "color13", STRING, &colorname[13] },
|
||||||
|
{ "color14", STRING, &colorname[14] },
|
||||||
|
{ "color15", STRING, &colorname[15] },
|
||||||
|
{ "background", STRING, &colorname[258] },
|
||||||
|
{ "foreground", STRING, &colorname[259] },
|
||||||
|
{ "cursorColor", STRING, &colorname[256] },
|
||||||
|
{ "termname", STRING, &termname },
|
||||||
|
{ "shell", STRING, &shell },
|
||||||
|
{ "blinktimeout", INTEGER, &blinktimeout },
|
||||||
|
{ "bellvolume", INTEGER, &bellvolume },
|
||||||
|
{ "tabspaces", INTEGER, &tabspaces },
|
||||||
|
{ "borderpx", INTEGER, &borderpx },
|
||||||
|
{ "cwscale", FLOAT, &cwscale },
|
||||||
|
{ "chscale", FLOAT, &chscale },
|
||||||
|
{ "alpha", FLOAT, &alpha },
|
||||||
|
{ "ximspot_update_interval", INTEGER, &ximspot_update_interval },
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Internal mouse shortcuts.
|
||||||
|
* Beware that overloading Button1 will disable the selection.
|
||||||
|
*/
|
||||||
|
const unsigned int mousescrollincrement = 3;
|
||||||
|
static MouseShortcut mshortcuts[] = {
|
||||||
|
/* button mask string */
|
||||||
|
{ Button4, XK_NO_MOD, "\031" },
|
||||||
|
{ Button5, XK_NO_MOD, "\005" },
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Internal keyboard shortcuts. */
|
||||||
|
#define MODKEY Mod1Mask
|
||||||
|
#define TERMMOD (Mod4Mask|ShiftMask)
|
||||||
|
|
||||||
|
MouseKey mkeys[] = {
|
||||||
|
/* button mask function argument */
|
||||||
|
{ Button4, XK_NO_MOD, kscrollup, {.i = mousescrollincrement} },
|
||||||
|
{ Button5, XK_NO_MOD, kscrolldown, {.i = mousescrollincrement} },
|
||||||
|
{ Button4, Mod4Mask, zoom, {.f = +1} },
|
||||||
|
{ Button5, Mod4Mask, zoom, {.f = -1} },
|
||||||
|
};
|
||||||
|
|
||||||
|
static char *openurlcmd[] = { "/bin/sh", "-c", "st-urlhandler", "externalpipe", NULL };
|
||||||
|
|
||||||
|
static char *copyurlcmd[] = { "/bin/sh", "-c",
|
||||||
|
"tmp=$(sed 's/.*│//g' | tr -d '\n' | grep -aEo '(((http|https|gopher|gemini|ftp|ftps|git)://|www\\.)[a-zA-Z0-9.]*[:]?[a-zA-Z0-9./@$&%?$#=_-~]*)|((magnet:\\?xt=urn:btih:)[a-zA-Z0-9]*)' | uniq | sed 's/^www./http:\\/\\/www\\./g' ); IFS=; [ ! -z $tmp ] && echo $tmp | dmenu -i -p 'Copy which url?' -l 10 | tr -d '\n' | xclip -selection clipboard",
|
||||||
|
"externalpipe", NULL };
|
||||||
|
|
||||||
|
static char *copyoutput[] = { "/bin/sh", "-c", "st-copyout", "externalpipe", NULL };
|
||||||
|
|
||||||
|
static Shortcut shortcuts[] = {
|
||||||
|
/* mask keysym function argument */
|
||||||
|
{ XK_ANY_MOD, XK_Break, sendbreak, {.i = 0} },
|
||||||
|
{ ControlMask, XK_Print, toggleprinter, {.i = 0} },
|
||||||
|
{ ShiftMask, XK_Print, printscreen, {.i = 0} },
|
||||||
|
{ XK_ANY_MOD, XK_Print, printsel, {.i = 0} },
|
||||||
|
{ MODKEY, XK_comma, zoom, {.f = +1} },
|
||||||
|
{ MODKEY, XK_period, zoom, {.f = -1} },
|
||||||
|
{ MODKEY, XK_g, zoomreset, {.f = 0} },
|
||||||
|
{ ControlMask | ShiftMask, XK_C, clipcopy, {.i = 0} },
|
||||||
|
{ ShiftMask, XK_Insert, clippaste, {.i = 0} },
|
||||||
|
{ ControlMask | ShiftMask, XK_V, clippaste, {.i = 0} },
|
||||||
|
{ XK_ANY_MOD, Button2, selpaste, {.i = 0} },
|
||||||
|
{ MODKEY, XK_Num_Lock, numlock, {.i = 0} },
|
||||||
|
{ ControlMask | ShiftMask, XK_U, iso14755, {.i = 0} },
|
||||||
|
{ ShiftMask, XK_Page_Up, kscrollup, {.i = -1} },
|
||||||
|
{ ShiftMask, XK_Page_Down, kscrolldown, {.i = -1} },
|
||||||
|
{ MODKEY, XK_Page_Up, kscrollup, {.i = -1} },
|
||||||
|
{ MODKEY, XK_Page_Down, kscrolldown, {.i = -1} },
|
||||||
|
{ MODKEY, XK_k, kscrollup, {.i = 1} },
|
||||||
|
{ MODKEY, XK_j, kscrolldown, {.i = 1} },
|
||||||
|
{ MODKEY, XK_Up, kscrollup, {.i = 1} },
|
||||||
|
{ MODKEY, XK_Down, kscrolldown, {.i = 1} },
|
||||||
|
{ MODKEY, XK_u, kscrollup, {.i = -1} },
|
||||||
|
{ MODKEY, XK_d, kscrolldown, {.i = -1} },
|
||||||
|
{ MODKEY, XK_s, changealpha, {.f = -0.05} },
|
||||||
|
{ MODKEY, XK_a, changealpha, {.f = +0.05} },
|
||||||
|
{ MODKEY, XK_m, changealpha, {.f = +2.00} },
|
||||||
|
{ TERMMOD, XK_Up, zoom, {.f = +1} },
|
||||||
|
{ TERMMOD, XK_Down, zoom, {.f = -1} },
|
||||||
|
{ TERMMOD, XK_K, zoom, {.f = +1} },
|
||||||
|
{ TERMMOD, XK_J, zoom, {.f = -1} },
|
||||||
|
{ TERMMOD, XK_U, zoom, {.f = +2} },
|
||||||
|
{ TERMMOD, XK_D, zoom, {.f = -2} },
|
||||||
|
{ MODKEY, XK_l, externalpipe, {.v = openurlcmd } },
|
||||||
|
{ MODKEY, XK_y, externalpipe, {.v = copyurlcmd } },
|
||||||
|
{ MODKEY, XK_o, externalpipe, {.v = copyoutput } },
|
||||||
|
{ TERMMOD, XK_Return, newterm, {.i = 0} },
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Special keys (change & recompile st.info accordingly)
|
||||||
|
*
|
||||||
|
* Mask value:
|
||||||
|
* * Use XK_ANY_MOD to match the key no matter modifiers state
|
||||||
|
* * Use XK_NO_MOD to match the key alone (no modifiers)
|
||||||
|
* appkey value:
|
||||||
|
* * 0: no value
|
||||||
|
* * > 0: keypad application mode enabled
|
||||||
|
* * = 2: term.numlock = 1
|
||||||
|
* * < 0: keypad application mode disabled
|
||||||
|
* appcursor value:
|
||||||
|
* * 0: no value
|
||||||
|
* * > 0: cursor application mode enabled
|
||||||
|
* * < 0: cursor application mode disabled
|
||||||
|
* crlf value
|
||||||
|
* * 0: no value
|
||||||
|
* * > 0: crlf mode is enabled
|
||||||
|
* * < 0: crlf mode is disabled
|
||||||
|
*
|
||||||
|
* Be careful with the order of the definitions because st searches in
|
||||||
|
* this table sequentially, so any XK_ANY_MOD must be in the last
|
||||||
|
* position for a key.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want keys other than the X11 function keys (0xFD00 - 0xFFFF)
|
||||||
|
* to be mapped below, add them to this array.
|
||||||
|
*/
|
||||||
|
static KeySym mappedkeys[] = { -1 };
|
||||||
|
|
||||||
|
/*
|
||||||
|
* State bits to ignore when matching key or button events. By default,
|
||||||
|
* numlock (Mod2Mask) and keyboard layout (XK_SWITCH_MOD) are ignored.
|
||||||
|
*/
|
||||||
|
static uint ignoremod = Mod2Mask|XK_SWITCH_MOD;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Override mouse-select while mask is active (when MODE_MOUSE is set).
|
||||||
|
* Note that if you want to use ShiftMask with selmasks, set this to an other
|
||||||
|
* modifier, set to 0 to not use it.
|
||||||
|
*/
|
||||||
|
static uint forceselmod = ShiftMask;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This is the huge key array which defines all compatibility to the Linux
|
||||||
|
* world. Please decide about changes wisely.
|
||||||
|
*/
|
||||||
|
static Key key[] = {
|
||||||
|
/* keysym mask string appkey appcursor */
|
||||||
|
{ XK_KP_Home, ShiftMask, "\033[2J", 0, -1},
|
||||||
|
{ XK_KP_Home, ShiftMask, "\033[1;2H", 0, +1},
|
||||||
|
{ XK_KP_Home, XK_ANY_MOD, "\033[H", 0, -1},
|
||||||
|
{ XK_KP_Home, XK_ANY_MOD, "\033[1~", 0, +1},
|
||||||
|
{ XK_KP_Up, XK_ANY_MOD, "\033Ox", +1, 0},
|
||||||
|
{ XK_KP_Up, XK_ANY_MOD, "\033[A", 0, -1},
|
||||||
|
{ XK_KP_Up, XK_ANY_MOD, "\033OA", 0, +1},
|
||||||
|
{ XK_KP_Down, XK_ANY_MOD, "\033Or", +1, 0},
|
||||||
|
{ XK_KP_Down, XK_ANY_MOD, "\033[B", 0, -1},
|
||||||
|
{ XK_KP_Down, XK_ANY_MOD, "\033OB", 0, +1},
|
||||||
|
{ XK_KP_Left, XK_ANY_MOD, "\033Ot", +1, 0},
|
||||||
|
{ XK_KP_Left, XK_ANY_MOD, "\033[D", 0, -1},
|
||||||
|
{ XK_KP_Left, XK_ANY_MOD, "\033OD", 0, +1},
|
||||||
|
{ XK_KP_Right, XK_ANY_MOD, "\033Ov", +1, 0},
|
||||||
|
{ XK_KP_Right, XK_ANY_MOD, "\033[C", 0, -1},
|
||||||
|
{ XK_KP_Right, XK_ANY_MOD, "\033OC", 0, +1},
|
||||||
|
{ XK_KP_Prior, ShiftMask, "\033[5;2~", 0, 0},
|
||||||
|
{ XK_KP_Prior, XK_ANY_MOD, "\033[5~", 0, 0},
|
||||||
|
{ XK_KP_Begin, XK_ANY_MOD, "\033[E", 0, 0},
|
||||||
|
{ XK_KP_End, ControlMask, "\033[J", -1, 0},
|
||||||
|
{ XK_KP_End, ControlMask, "\033[1;5F", +1, 0},
|
||||||
|
{ XK_KP_End, ShiftMask, "\033[K", -1, 0},
|
||||||
|
{ XK_KP_End, ShiftMask, "\033[1;2F", +1, 0},
|
||||||
|
{ XK_KP_End, XK_ANY_MOD, "\033[4~", 0, 0},
|
||||||
|
{ XK_KP_Next, ShiftMask, "\033[6;2~", 0, 0},
|
||||||
|
{ XK_KP_Next, XK_ANY_MOD, "\033[6~", 0, 0},
|
||||||
|
{ XK_KP_Insert, ShiftMask, "\033[2;2~", +1, 0},
|
||||||
|
{ XK_KP_Insert, ShiftMask, "\033[4l", -1, 0},
|
||||||
|
{ XK_KP_Insert, ControlMask, "\033[L", -1, 0},
|
||||||
|
{ XK_KP_Insert, ControlMask, "\033[2;5~", +1, 0},
|
||||||
|
{ XK_KP_Insert, XK_ANY_MOD, "\033[4h", -1, 0},
|
||||||
|
{ XK_KP_Insert, XK_ANY_MOD, "\033[2~", +1, 0},
|
||||||
|
{ XK_KP_Delete, ControlMask, "\033[M", -1, 0},
|
||||||
|
{ XK_KP_Delete, ControlMask, "\033[3;5~", +1, 0},
|
||||||
|
{ XK_KP_Delete, ShiftMask, "\033[2K", -1, 0},
|
||||||
|
{ XK_KP_Delete, ShiftMask, "\033[3;2~", +1, 0},
|
||||||
|
{ XK_KP_Delete, XK_ANY_MOD, "\033[3~", -1, 0},
|
||||||
|
{ XK_KP_Delete, XK_ANY_MOD, "\033[3~", +1, 0},
|
||||||
|
{ XK_KP_Multiply, XK_ANY_MOD, "\033Oj", +2, 0},
|
||||||
|
{ XK_KP_Add, XK_ANY_MOD, "\033Ok", +2, 0},
|
||||||
|
{ XK_KP_Enter, XK_ANY_MOD, "\033OM", +2, 0},
|
||||||
|
{ XK_KP_Enter, XK_ANY_MOD, "\r", -1, 0},
|
||||||
|
{ XK_KP_Subtract, XK_ANY_MOD, "\033Om", +2, 0},
|
||||||
|
{ XK_KP_Decimal, XK_ANY_MOD, "\033On", +2, 0},
|
||||||
|
{ XK_KP_Divide, XK_ANY_MOD, "\033Oo", +2, 0},
|
||||||
|
{ XK_KP_0, XK_ANY_MOD, "\033Op", +2, 0},
|
||||||
|
{ XK_KP_1, XK_ANY_MOD, "\033Oq", +2, 0},
|
||||||
|
{ XK_KP_2, XK_ANY_MOD, "\033Or", +2, 0},
|
||||||
|
{ XK_KP_3, XK_ANY_MOD, "\033Os", +2, 0},
|
||||||
|
{ XK_KP_4, XK_ANY_MOD, "\033Ot", +2, 0},
|
||||||
|
{ XK_KP_5, XK_ANY_MOD, "\033Ou", +2, 0},
|
||||||
|
{ XK_KP_6, XK_ANY_MOD, "\033Ov", +2, 0},
|
||||||
|
{ XK_KP_7, XK_ANY_MOD, "\033Ow", +2, 0},
|
||||||
|
{ XK_KP_8, XK_ANY_MOD, "\033Ox", +2, 0},
|
||||||
|
{ XK_KP_9, XK_ANY_MOD, "\033Oy", +2, 0},
|
||||||
|
{ XK_Up, ShiftMask, "\033[1;2A", 0, 0},
|
||||||
|
{ XK_Up, Mod1Mask, "\033[1;3A", 0, 0},
|
||||||
|
{ XK_Up, ShiftMask|Mod1Mask,"\033[1;4A", 0, 0},
|
||||||
|
{ XK_Up, ControlMask, "\033[1;5A", 0, 0},
|
||||||
|
{ XK_Up, ShiftMask|ControlMask,"\033[1;6A", 0, 0},
|
||||||
|
{ XK_Up, ControlMask|Mod1Mask,"\033[1;7A", 0, 0},
|
||||||
|
{ XK_Up,ShiftMask|ControlMask|Mod1Mask,"\033[1;8A", 0, 0},
|
||||||
|
{ XK_Up, XK_ANY_MOD, "\033[A", 0, -1},
|
||||||
|
{ XK_Up, XK_ANY_MOD, "\033OA", 0, +1},
|
||||||
|
{ XK_Down, ShiftMask, "\033[1;2B", 0, 0},
|
||||||
|
{ XK_Down, Mod1Mask, "\033[1;3B", 0, 0},
|
||||||
|
{ XK_Down, ShiftMask|Mod1Mask,"\033[1;4B", 0, 0},
|
||||||
|
{ XK_Down, ControlMask, "\033[1;5B", 0, 0},
|
||||||
|
{ XK_Down, ShiftMask|ControlMask,"\033[1;6B", 0, 0},
|
||||||
|
{ XK_Down, ControlMask|Mod1Mask,"\033[1;7B", 0, 0},
|
||||||
|
{ XK_Down,ShiftMask|ControlMask|Mod1Mask,"\033[1;8B",0, 0},
|
||||||
|
{ XK_Down, XK_ANY_MOD, "\033[B", 0, -1},
|
||||||
|
{ XK_Down, XK_ANY_MOD, "\033OB", 0, +1},
|
||||||
|
{ XK_Left, ShiftMask, "\033[1;2D", 0, 0},
|
||||||
|
{ XK_Left, Mod1Mask, "\033[1;3D", 0, 0},
|
||||||
|
{ XK_Left, ShiftMask|Mod1Mask,"\033[1;4D", 0, 0},
|
||||||
|
{ XK_Left, ControlMask, "\033[1;5D", 0, 0},
|
||||||
|
{ XK_Left, ShiftMask|ControlMask,"\033[1;6D", 0, 0},
|
||||||
|
{ XK_Left, ControlMask|Mod1Mask,"\033[1;7D", 0, 0},
|
||||||
|
{ XK_Left,ShiftMask|ControlMask|Mod1Mask,"\033[1;8D",0, 0},
|
||||||
|
{ XK_Left, XK_ANY_MOD, "\033[D", 0, -1},
|
||||||
|
{ XK_Left, XK_ANY_MOD, "\033OD", 0, +1},
|
||||||
|
{ XK_Right, ShiftMask, "\033[1;2C", 0, 0},
|
||||||
|
{ XK_Right, Mod1Mask, "\033[1;3C", 0, 0},
|
||||||
|
{ XK_Right, ShiftMask|Mod1Mask,"\033[1;4C", 0, 0},
|
||||||
|
{ XK_Right, ControlMask, "\033[1;5C", 0, 0},
|
||||||
|
{ XK_Right, ShiftMask|ControlMask,"\033[1;6C", 0, 0},
|
||||||
|
{ XK_Right, ControlMask|Mod1Mask,"\033[1;7C", 0, 0},
|
||||||
|
{ XK_Right,ShiftMask|ControlMask|Mod1Mask,"\033[1;8C",0, 0},
|
||||||
|
{ XK_Right, XK_ANY_MOD, "\033[C", 0, -1},
|
||||||
|
{ XK_Right, XK_ANY_MOD, "\033OC", 0, +1},
|
||||||
|
{ XK_ISO_Left_Tab, ShiftMask, "\033[Z", 0, 0},
|
||||||
|
{ XK_Return, Mod1Mask, "\033\r", 0, 0},
|
||||||
|
{ XK_Return, XK_ANY_MOD, "\r", 0, 0},
|
||||||
|
{ XK_Insert, ShiftMask, "\033[4l", -1, 0},
|
||||||
|
{ XK_Insert, ShiftMask, "\033[2;2~", +1, 0},
|
||||||
|
{ XK_Insert, ControlMask, "\033[L", -1, 0},
|
||||||
|
{ XK_Insert, ControlMask, "\033[2;5~", +1, 0},
|
||||||
|
{ XK_Insert, XK_ANY_MOD, "\033[4h", -1, 0},
|
||||||
|
{ XK_Insert, XK_ANY_MOD, "\033[2~", +1, 0},
|
||||||
|
{ XK_Delete, ControlMask, "\033[M", -1, 0},
|
||||||
|
{ XK_Delete, ControlMask, "\033[3;5~", +1, 0},
|
||||||
|
{ XK_Delete, ShiftMask, "\033[2K", -1, 0},
|
||||||
|
{ XK_Delete, ShiftMask, "\033[3;2~", +1, 0},
|
||||||
|
{ XK_Delete, XK_ANY_MOD, "\033[3~", -1, 0},
|
||||||
|
{ XK_Delete, XK_ANY_MOD, "\033[3~", +1, 0},
|
||||||
|
{ XK_BackSpace, XK_NO_MOD, "\177", 0, 0},
|
||||||
|
{ XK_BackSpace, Mod1Mask, "\033\177", 0, 0},
|
||||||
|
{ XK_Home, ShiftMask, "\033[2J", 0, -1},
|
||||||
|
{ XK_Home, ShiftMask, "\033[1;2H", 0, +1},
|
||||||
|
{ XK_Home, XK_ANY_MOD, "\033[H", 0, -1},
|
||||||
|
{ XK_Home, XK_ANY_MOD, "\033[1~", 0, +1},
|
||||||
|
{ XK_End, ControlMask, "\033[J", -1, 0},
|
||||||
|
{ XK_End, ControlMask, "\033[1;5F", +1, 0},
|
||||||
|
{ XK_End, ShiftMask, "\033[K", -1, 0},
|
||||||
|
{ XK_End, ShiftMask, "\033[1;2F", +1, 0},
|
||||||
|
{ XK_End, XK_ANY_MOD, "\033[4~", 0, 0},
|
||||||
|
{ XK_Prior, ControlMask, "\033[5;5~", 0, 0},
|
||||||
|
{ XK_Prior, ShiftMask, "\033[5;2~", 0, 0},
|
||||||
|
{ XK_Prior, XK_ANY_MOD, "\033[5~", 0, 0},
|
||||||
|
{ XK_Next, ControlMask, "\033[6;5~", 0, 0},
|
||||||
|
{ XK_Next, ShiftMask, "\033[6;2~", 0, 0},
|
||||||
|
{ XK_Next, XK_ANY_MOD, "\033[6~", 0, 0},
|
||||||
|
{ XK_F1, XK_NO_MOD, "\033OP" , 0, 0},
|
||||||
|
{ XK_F1, /* F13 */ ShiftMask, "\033[1;2P", 0, 0},
|
||||||
|
{ XK_F1, /* F25 */ ControlMask, "\033[1;5P", 0, 0},
|
||||||
|
{ XK_F1, /* F37 */ Mod4Mask, "\033[1;6P", 0, 0},
|
||||||
|
{ XK_F1, /* F49 */ Mod1Mask, "\033[1;3P", 0, 0},
|
||||||
|
{ XK_F1, /* F61 */ Mod3Mask, "\033[1;4P", 0, 0},
|
||||||
|
{ XK_F2, XK_NO_MOD, "\033OQ" , 0, 0},
|
||||||
|
{ XK_F2, /* F14 */ ShiftMask, "\033[1;2Q", 0, 0},
|
||||||
|
{ XK_F2, /* F26 */ ControlMask, "\033[1;5Q", 0, 0},
|
||||||
|
{ XK_F2, /* F38 */ Mod4Mask, "\033[1;6Q", 0, 0},
|
||||||
|
{ XK_F2, /* F50 */ Mod1Mask, "\033[1;3Q", 0, 0},
|
||||||
|
{ XK_F2, /* F62 */ Mod3Mask, "\033[1;4Q", 0, 0},
|
||||||
|
{ XK_F3, XK_NO_MOD, "\033OR" , 0, 0},
|
||||||
|
{ XK_F3, /* F15 */ ShiftMask, "\033[1;2R", 0, 0},
|
||||||
|
{ XK_F3, /* F27 */ ControlMask, "\033[1;5R", 0, 0},
|
||||||
|
{ XK_F3, /* F39 */ Mod4Mask, "\033[1;6R", 0, 0},
|
||||||
|
{ XK_F3, /* F51 */ Mod1Mask, "\033[1;3R", 0, 0},
|
||||||
|
{ XK_F3, /* F63 */ Mod3Mask, "\033[1;4R", 0, 0},
|
||||||
|
{ XK_F4, XK_NO_MOD, "\033OS" , 0, 0},
|
||||||
|
{ XK_F4, /* F16 */ ShiftMask, "\033[1;2S", 0, 0},
|
||||||
|
{ XK_F4, /* F28 */ ControlMask, "\033[1;5S", 0, 0},
|
||||||
|
{ XK_F4, /* F40 */ Mod4Mask, "\033[1;6S", 0, 0},
|
||||||
|
{ XK_F4, /* F52 */ Mod1Mask, "\033[1;3S", 0, 0},
|
||||||
|
{ XK_F5, XK_NO_MOD, "\033[15~", 0, 0},
|
||||||
|
{ XK_F5, /* F17 */ ShiftMask, "\033[15;2~", 0, 0},
|
||||||
|
{ XK_F5, /* F29 */ ControlMask, "\033[15;5~", 0, 0},
|
||||||
|
{ XK_F5, /* F41 */ Mod4Mask, "\033[15;6~", 0, 0},
|
||||||
|
{ XK_F5, /* F53 */ Mod1Mask, "\033[15;3~", 0, 0},
|
||||||
|
{ XK_F6, XK_NO_MOD, "\033[17~", 0, 0},
|
||||||
|
{ XK_F6, /* F18 */ ShiftMask, "\033[17;2~", 0, 0},
|
||||||
|
{ XK_F6, /* F30 */ ControlMask, "\033[17;5~", 0, 0},
|
||||||
|
{ XK_F6, /* F42 */ Mod4Mask, "\033[17;6~", 0, 0},
|
||||||
|
{ XK_F6, /* F54 */ Mod1Mask, "\033[17;3~", 0, 0},
|
||||||
|
{ XK_F7, XK_NO_MOD, "\033[18~", 0, 0},
|
||||||
|
{ XK_F7, /* F19 */ ShiftMask, "\033[18;2~", 0, 0},
|
||||||
|
{ XK_F7, /* F31 */ ControlMask, "\033[18;5~", 0, 0},
|
||||||
|
{ XK_F7, /* F43 */ Mod4Mask, "\033[18;6~", 0, 0},
|
||||||
|
{ XK_F7, /* F55 */ Mod1Mask, "\033[18;3~", 0, 0},
|
||||||
|
{ XK_F8, XK_NO_MOD, "\033[19~", 0, 0},
|
||||||
|
{ XK_F8, /* F20 */ ShiftMask, "\033[19;2~", 0, 0},
|
||||||
|
{ XK_F8, /* F32 */ ControlMask, "\033[19;5~", 0, 0},
|
||||||
|
{ XK_F8, /* F44 */ Mod4Mask, "\033[19;6~", 0, 0},
|
||||||
|
{ XK_F8, /* F56 */ Mod1Mask, "\033[19;3~", 0, 0},
|
||||||
|
{ XK_F9, XK_NO_MOD, "\033[20~", 0, 0},
|
||||||
|
{ XK_F9, /* F21 */ ShiftMask, "\033[20;2~", 0, 0},
|
||||||
|
{ XK_F9, /* F33 */ ControlMask, "\033[20;5~", 0, 0},
|
||||||
|
{ XK_F9, /* F45 */ Mod4Mask, "\033[20;6~", 0, 0},
|
||||||
|
{ XK_F9, /* F57 */ Mod1Mask, "\033[20;3~", 0, 0},
|
||||||
|
{ XK_F10, XK_NO_MOD, "\033[21~", 0, 0},
|
||||||
|
{ XK_F10, /* F22 */ ShiftMask, "\033[21;2~", 0, 0},
|
||||||
|
{ XK_F10, /* F34 */ ControlMask, "\033[21;5~", 0, 0},
|
||||||
|
{ XK_F10, /* F46 */ Mod4Mask, "\033[21;6~", 0, 0},
|
||||||
|
{ XK_F10, /* F58 */ Mod1Mask, "\033[21;3~", 0, 0},
|
||||||
|
{ XK_F11, XK_NO_MOD, "\033[23~", 0, 0},
|
||||||
|
{ XK_F11, /* F23 */ ShiftMask, "\033[23;2~", 0, 0},
|
||||||
|
{ XK_F11, /* F35 */ ControlMask, "\033[23;5~", 0, 0},
|
||||||
|
{ XK_F11, /* F47 */ Mod4Mask, "\033[23;6~", 0, 0},
|
||||||
|
{ XK_F11, /* F59 */ Mod1Mask, "\033[23;3~", 0, 0},
|
||||||
|
{ XK_F12, XK_NO_MOD, "\033[24~", 0, 0},
|
||||||
|
{ XK_F12, /* F24 */ ShiftMask, "\033[24;2~", 0, 0},
|
||||||
|
{ XK_F12, /* F36 */ ControlMask, "\033[24;5~", 0, 0},
|
||||||
|
{ XK_F12, /* F48 */ Mod4Mask, "\033[24;6~", 0, 0},
|
||||||
|
{ XK_F12, /* F60 */ Mod1Mask, "\033[24;3~", 0, 0},
|
||||||
|
{ XK_F13, XK_NO_MOD, "\033[1;2P", 0, 0},
|
||||||
|
{ XK_F14, XK_NO_MOD, "\033[1;2Q", 0, 0},
|
||||||
|
{ XK_F15, XK_NO_MOD, "\033[1;2R", 0, 0},
|
||||||
|
{ XK_F16, XK_NO_MOD, "\033[1;2S", 0, 0},
|
||||||
|
{ XK_F17, XK_NO_MOD, "\033[15;2~", 0, 0},
|
||||||
|
{ XK_F18, XK_NO_MOD, "\033[17;2~", 0, 0},
|
||||||
|
{ XK_F19, XK_NO_MOD, "\033[18;2~", 0, 0},
|
||||||
|
{ XK_F20, XK_NO_MOD, "\033[19;2~", 0, 0},
|
||||||
|
{ XK_F21, XK_NO_MOD, "\033[20;2~", 0, 0},
|
||||||
|
{ XK_F22, XK_NO_MOD, "\033[21;2~", 0, 0},
|
||||||
|
{ XK_F23, XK_NO_MOD, "\033[23;2~", 0, 0},
|
||||||
|
{ XK_F24, XK_NO_MOD, "\033[24;2~", 0, 0},
|
||||||
|
{ XK_F25, XK_NO_MOD, "\033[1;5P", 0, 0},
|
||||||
|
{ XK_F26, XK_NO_MOD, "\033[1;5Q", 0, 0},
|
||||||
|
{ XK_F27, XK_NO_MOD, "\033[1;5R", 0, 0},
|
||||||
|
{ XK_F28, XK_NO_MOD, "\033[1;5S", 0, 0},
|
||||||
|
{ XK_F29, XK_NO_MOD, "\033[15;5~", 0, 0},
|
||||||
|
{ XK_F30, XK_NO_MOD, "\033[17;5~", 0, 0},
|
||||||
|
{ XK_F31, XK_NO_MOD, "\033[18;5~", 0, 0},
|
||||||
|
{ XK_F32, XK_NO_MOD, "\033[19;5~", 0, 0},
|
||||||
|
{ XK_F33, XK_NO_MOD, "\033[20;5~", 0, 0},
|
||||||
|
{ XK_F34, XK_NO_MOD, "\033[21;5~", 0, 0},
|
||||||
|
{ XK_F35, XK_NO_MOD, "\033[23;5~", 0, 0},
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Selection types' masks.
|
||||||
|
* Use the same masks as usual.
|
||||||
|
* Button1Mask is always unset, to make masks match between ButtonPress.
|
||||||
|
* ButtonRelease and MotionNotify.
|
||||||
|
* If no match is found, regular selection is used.
|
||||||
|
*/
|
||||||
|
static uint selmasks[] = {
|
||||||
|
[SEL_RECTANGULAR] = Mod1Mask,
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Printable characters in ASCII, used to estimate the advance width
|
||||||
|
* of single wide characters.
|
||||||
|
*/
|
||||||
|
static char ascii_printable[] =
|
||||||
|
" !\"#$%&'()*+,-./0123456789:;<=>?"
|
||||||
|
"@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"
|
||||||
|
"`abcdefghijklmnopqrstuvwxyz{|}~";
|
||||||
|
|
@ -1,12 +1,20 @@
|
||||||
|
configuration {
|
||||||
|
show-icons: true;
|
||||||
|
icon-theme: "Adwaita";
|
||||||
|
drun-display-format: "{name}";
|
||||||
|
display-drun: "";
|
||||||
|
modes: "drun,run,window";
|
||||||
|
}
|
||||||
|
|
||||||
* {
|
* {
|
||||||
main-bg: #141414;
|
main-bg: #0f0d17;
|
||||||
main-fg: #feffd3;
|
main-fg: #e9eefb;
|
||||||
main-br: #8b9151;
|
main-br: #5d7fb0;
|
||||||
main-ex: #dd7c4c;
|
main-ex: #e0798f;
|
||||||
select-bg: #1a1a1a;
|
select-bg: #191527;
|
||||||
select-fg: #afb979;
|
select-fg: #92b9ea;
|
||||||
dim: #778284;
|
dim: #7f7796;
|
||||||
border-color: #444649;
|
border-color: #3d3752;
|
||||||
|
|
||||||
background-color: @main-bg;
|
background-color: @main-bg;
|
||||||
text-color: @main-fg;
|
text-color: @main-fg;
|
||||||
|
|
@ -14,12 +22,13 @@
|
||||||
|
|
||||||
window {
|
window {
|
||||||
transparency: "real";
|
transparency: "real";
|
||||||
|
border-radius: 12px;
|
||||||
background-color: @main-bg;
|
background-color: @main-bg;
|
||||||
width: 500px;
|
width: 620px;
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
location: north;
|
location: center;
|
||||||
anchor: north;
|
anchor: center;
|
||||||
y-offset: 33;
|
y-offset: 0;
|
||||||
x-offset: 0;
|
x-offset: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -77,7 +86,7 @@ listview {
|
||||||
spacing: 0px;
|
spacing: 0px;
|
||||||
padding: 8px 12px;
|
padding: 8px 12px;
|
||||||
scrollbar: false;
|
scrollbar: false;
|
||||||
lines: 5;
|
lines: 9;
|
||||||
fixed-height: true;
|
fixed-height: true;
|
||||||
columns: 1;
|
columns: 1;
|
||||||
layout: vertical;
|
layout: vertical;
|
||||||
|
|
@ -87,8 +96,9 @@ listview {
|
||||||
element {
|
element {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
text-color: @main-fg;
|
text-color: @main-fg;
|
||||||
padding: 4px 4px;
|
padding: 6px 8px;
|
||||||
spacing: 0px;
|
spacing: 0px;
|
||||||
|
border-radius: 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
element normal.normal {
|
element normal.normal {
|
||||||
|
|
@ -143,8 +153,8 @@ element selected.active {
|
||||||
/* Icon */
|
/* Icon */
|
||||||
element-icon {
|
element-icon {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
size: 0.9em;
|
size: 1.7em;
|
||||||
padding: 0px 6px 0px 0px;
|
padding: 0px 10px 0px 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Text - monospace for ls feel */
|
/* Text - monospace for ls feel */
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
* {
|
* {
|
||||||
main-bg: #141414;
|
main-bg: #0f0d17;
|
||||||
main-fg: #feffd3;
|
main-fg: #e9eefb;
|
||||||
main-br: #8b9151;
|
main-br: #5d7fb0;
|
||||||
main-ex: #dd7c4c;
|
main-ex: #e0798f;
|
||||||
select-bg: #1a1a1a;
|
select-bg: #191527;
|
||||||
select-fg: #afb979;
|
select-fg: #92b9ea;
|
||||||
dim: #778284;
|
dim: #7f7796;
|
||||||
border-color: #444649;
|
border-color: #3d3752;
|
||||||
|
|
||||||
background-color: @main-bg;
|
background-color: @main-bg;
|
||||||
text-color: @main-fg;
|
text-color: @main-fg;
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
|
|
||||||
window {
|
window {
|
||||||
transparency: "real";
|
transparency: "real";
|
||||||
|
border-radius: 12px;
|
||||||
background-color: @main-bg;
|
background-color: @main-bg;
|
||||||
width: 500px;
|
width: 500px;
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
* {
|
* {
|
||||||
main-bg: #141414;
|
main-bg: #0f0d17;
|
||||||
main-fg: #feffd3;
|
main-fg: #e9eefb;
|
||||||
main-br: #8b9151;
|
main-br: #5d7fb0;
|
||||||
main-ex: #dd7c4c;
|
main-ex: #e0798f;
|
||||||
select-bg: #1a1a1a;
|
select-bg: #191527;
|
||||||
select-fg: #afb979;
|
select-fg: #92b9ea;
|
||||||
dim: #778284;
|
dim: #7f7796;
|
||||||
border-color: #444649;
|
border-color: #3d3752;
|
||||||
|
|
||||||
background-color: @main-bg;
|
background-color: @main-bg;
|
||||||
text-color: @main-fg;
|
text-color: @main-fg;
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
|
|
||||||
window {
|
window {
|
||||||
transparency: "real";
|
transparency: "real";
|
||||||
|
border-radius: 12px;
|
||||||
background-color: @main-bg;
|
background-color: @main-bg;
|
||||||
width: 500px;
|
width: 500px;
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
* {
|
* {
|
||||||
main-bg: #141414;
|
main-bg: #0f0d17;
|
||||||
main-fg: #feffd3;
|
main-fg: #e9eefb;
|
||||||
main-br: #8b9151;
|
main-br: #5d7fb0;
|
||||||
main-ex: #dd7c4c;
|
main-ex: #e0798f;
|
||||||
select-bg: #1a1a1a;
|
select-bg: #191527;
|
||||||
select-fg: #afb979;
|
select-fg: #92b9ea;
|
||||||
dim: #778284;
|
dim: #7f7796;
|
||||||
border-color: #444649;
|
border-color: #3d3752;
|
||||||
|
|
||||||
background-color: @main-bg;
|
background-color: @main-bg;
|
||||||
text-color: @main-fg;
|
text-color: @main-fg;
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
|
|
||||||
window {
|
window {
|
||||||
transparency: "real";
|
transparency: "real";
|
||||||
|
border-radius: 12px;
|
||||||
background-color: @main-bg;
|
background-color: @main-bg;
|
||||||
width: 500px;
|
width: 500px;
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Colors
|
# Colors
|
||||||
GREEN="%{F#b4be7b}"
|
GREEN="%{F#8fae74}"
|
||||||
BLUE="%{F#afb979}"
|
BLUE="%{F#92b9ea}"
|
||||||
DIM="%{F#778284}"
|
DIM="%{F#7f7796}"
|
||||||
RESET="%{F-}"
|
RESET="%{F-}"
|
||||||
|
|
||||||
STATE_FILE="/tmp/polybar-toggle-state"
|
STATE_FILE="/tmp/polybar-toggle-state"
|
||||||
|
|
|
||||||
0
.config/scripts/rofi-menus/audio-manager.sh
Normal file → Executable file
0
.config/scripts/rofi-menus/audio-manager.sh
Normal file → Executable file
12
.gtkrc-2.0
Normal file
12
.gtkrc-2.0
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
# Sakura Line
|
||||||
|
gtk-theme-name="Adwaita"
|
||||||
|
gtk-icon-theme-name="Adwaita"
|
||||||
|
gtk-font-name="Noto Sans Light 10"
|
||||||
|
gtk-cursor-theme-name="Bibata-Modern-Classic"
|
||||||
|
gtk-cursor-theme-size=20
|
||||||
|
gtk-color-scheme="fg_color:#e9eefb\nbg_color:#16121f\nbase_color:#100d18\ntext_color:#e9eefb\nselected_bg_color:#92b9ea\nselected_fg_color:#0f0d17\ntooltip_bg_color:#2a2440\ntooltip_fg_color:#e9eefb"
|
||||||
|
gtk-enable-animations=1
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle="hintmedium"
|
||||||
|
gtk-xft-rgba="rgb"
|
||||||
Loading…
Add table
Add a link
Reference in a new issue