Compare commits

8 Commits
Author SHA1 Message Date
_N0x 76cafd8bc7 Merge pull request 'cursor-dark Theme Implementierung' (#2) from cursor-dark into master
Reviewed-on: #2
2026-08-06 10:35:43 +02:00
_N0x a7c4dc8407 fish/.config/fish/fish_variables aktualisiert 2026-08-06 10:35:30 +02:00
_N0x 42c44aec68 Fixes after testing new theme 2026-08-05 18:13:46 +02:00
_N0x 2fd2d691fd Updated mime list 2026-08-05 17:58:46 +02:00
_N0x 96d3086885 Updated zathura colors to match cursor dark setup 2026-08-05 16:16:09 +02:00
_N0x 699473d7b5 More theming 2026-08-05 16:02:19 +02:00
_N0x a5686ccee0 Updated gtk theme, added SETUP.md 2026-08-05 13:26:10 +02:00
_N0x dcb2b320eb updated broken wallpaper 2026-08-05 11:45:21 +02:00
15 changed files with 215 additions and 51 deletions
+101
View File
@@ -0,0 +1,101 @@
# Setup after pulling (Arch)
Everything needed to bring the Cursor Dark theme up on a machine that has just
pulled these changes.
## 1. Packages
```sh
sudo pacman -S --needed papirus-icon-theme ttf-nerd-fonts-symbols-mono
```
| Package | Why |
| --- | --- |
| `papirus-icon-theme` | rofi, dunst and the GTK configs all reference `Papirus-Dark` |
| `ttf-nerd-fonts-symbols-mono` | the tmux status bar uses powerline separators (U+E0B0E0B3), and `kitty.conf` maps that range to `Symbols Nerd Font Mono` |
Not in the repos: **Berkeley Mono** (`kitty.conf`) and **Hack JBM Ligatured**
(waybar, rofi, hyprlock) are installed by hand.
## 2. Deploy
```sh
cd ~/.dotfiles
stow fish kitty tmux nvim hypr waybar rofi dunst gtktheme
```
> The README suggests `stow *`, which now also picks up `SETUP.md`.
> Use `stow */` or an explicit list.
## 3. Reload
```sh
# fish - close every running fish session BEFORE pulling (see notes)
exec fish
# tmux - plugins now bootstrap themselves, no prefix+I needed
tmux kill-server && tmux
# nvim - installs vscode.nvim, drops everforest
nvim --headless "+Lazy! sync" +qa
# desktop
hyprctl reload
killall -SIGUSR2 waybar
killall dunst # respawns via dbus
```
kitty: `ctrl+shift+F5` to reload, or restart it. rofi has no daemon.
## 4. GTK theme
The configs are set to `Orchis-Dark-Compact` (Material Design, accent `#1A73E8`).
```sh
sudo pacman -S orchis-theme xdg-desktop-portal-gtk
```
libadwaita ignores `gtk-theme-name`, so GTK4 apps also need the portal settings
and Orchis' own GTK4 stylesheet linked in:
```sh
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
gsettings set org.gnome.desktop.interface icon-theme 'Papirus-Dark'
gsettings set org.gnome.desktop.interface gtk-theme 'Orchis-Dark-Compact'
mkdir -p ~/.config/gtk-4.0
ln -sf /usr/share/themes/Orchis-Dark-Compact/gtk-4.0/gtk.css ~/.config/gtk-4.0/gtk.css
ln -sf /usr/share/themes/Orchis-Dark-Compact/gtk-4.0/assets ~/.config/gtk-4.0/assets
```
`nwg-look` can do the symlink step for you — `nwg/.config/nwg-look/config` already
has `export-gtk4-symlinks: true`. Set the gsettings values above first, then run
`nwg-look` and hit Apply; it writes `.gtkrc-2.0`, both `settings.ini` files and the
GTK4 symlinks from those values.
### Window buttons
Both `settings.ini` files set `gtk-decoration-layout=close,minimize,maximize:`
— everything left of the `:` sits on the **left**, which is macOS placement and
order. That is client-side decoration, so it is all Hyprland apps use.
Orchis' `--tweaks macos` is **not** useful here: it only replaces `xfwm4` and
`metacity-1` assets (Xfce / Marco window managers) and touches no GTK CSS, so it
would change nothing under Hyprland — and it requires building from source,
giving up the packaged theme. Circular red/yellow/green buttons are not
available from Orchis for GTK client-side decorations.
## Notes
- **fish universal variables.** The colours live in `fish/.config/fish/fish_variables`,
which fish rewrites from memory whenever any universal variable changes. Close
running fish sessions before pulling so an old session can't write the previous
palette back over it.
- **`cat` is broken on Arch.** `config.fish` defines `cat` as `batcat …`, which is
the Debian binary name. Arch's `bat` package installs `/usr/bin/bat`. Either
`sudo pacman -S bat` and rename the call, or add an alias.
- **nwg-look overwrites GTK config.** It regenerates `.gtkrc-2.0` and the
`settings.ini` files. Run it *before* editing these by hand, or re-apply after.
- **`gtktheme/.gtkrc-2.0` line 4** includes `/home/n0x/.gtkrc-2.0.mine`, a stale
path from a previous username. Harmless, but dead.
- **`~/.tmux/plugins/nord-tmux`** is no longer used or tracked. Safe to delete.
+2
View File
@@ -69,3 +69,5 @@ application/x-xz=xarchiver.desktop
application/x-lzma=xarchiver.desktop application/x-lzma=xarchiver.desktop
application/x-iso9660-image=xarchiver.desktop application/x-iso9660-image=xarchiver.desktop
application/vnd.rar=xarchiver.desktop application/vnd.rar=xarchiver.desktop
x-scheme-handler/wootwoot=wootility.desktop
x-scheme-handler/web+wootwoot=wootility.desktop
+13 -8
View File
@@ -95,7 +95,8 @@
frame_width = 2 frame_width = 2
# Defines color of the frame around the notification window. # Defines color of the frame around the notification window.
frame_color = "#A7C080" # Cursor Dark: neutral by default, overridden per urgency below.
frame_color = "#2b2b2b"
# Size of gap to display between notifications - requires a compositor. # Size of gap to display between notifications - requires a compositor.
# If value is greater than 0, separator_height will be ignored and a border # If value is greater than 0, separator_height will be ignored and a border
@@ -201,7 +202,7 @@
enable_recursive_icon_lookup = true enable_recursive_icon_lookup = true
# Set icon theme (only used for recursive icon lookup) # Set icon theme (only used for recursive icon lookup)
icon_theme = Nordzy-green-dark icon_theme = Papirus-Dark
# You can also set multiple icon themes, with the leftmost one being used first. # You can also set multiple icon themes, with the leftmost one being used first.
# icon_theme = "Adwaita, breeze" # icon_theme = "Adwaita, breeze"
@@ -313,23 +314,27 @@
[urgency_low] [urgency_low]
# IMPORTANT: colors have to be defined in quotation marks. # IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment. # Otherwise the "#" and following would be interpreted as a comment.
background = "#2E383C" background = "#181818"
foreground = "#D3C6AA" foreground = "#9d9d9d"
frame_color = "#2b2b2b"
timeout = 10 timeout = 10
# Icon for notifications with low urgency, uncomment to enable # Icon for notifications with low urgency, uncomment to enable
#icon = /path/to/icon #icon = /path/to/icon
[urgency_normal] [urgency_normal]
background = "#2E383C" background = "#181818"
foreground = "#D3C6AA" foreground = "#cccccc"
frame_color = "#2472c8"
timeout = 10 timeout = 10
# Icon for notifications with normal urgency, uncomment to enable # Icon for notifications with normal urgency, uncomment to enable
#icon = /path/to/icon #icon = /path/to/icon
[urgency_critical] [urgency_critical]
background = "#900000" # #5a1d1d is VS Code's error-validation background, so it stays in-family
# while still reading as alarming.
background = "#5a1d1d"
foreground = "#ffffff" foreground = "#ffffff"
frame_color = "#ff0000" frame_color = "#f14c4c"
timeout = 0 timeout = 0
# Icon for notifications with critical urgency, uncomment to enable # Icon for notifications with critical urgency, uncomment to enable
#icon = /path/to/icon #icon = /path/to/icon
+1 -5
View File
@@ -1,13 +1,10 @@
# This file contains fish universal variable definitions. # This file contains fish universal variable definitions.
# VERSION: 3.0 # VERSION: 3.0
SETUVAR --export BROWSER:wslview
SETUVAR --export COMPOSE_BAKE:true SETUVAR --export COMPOSE_BAKE:true
SETUVAR --export DISPLAY:\x3a0 SETUVAR --export DISPLAY:\x3a0
SETUVAR --export EDITOR:nvim SETUVAR --export EDITOR:nvim
SETUVAR --export PYENV_ROOT:/home/tfoerster/\x2epyenv
SETUVAR --export VISUAL:nvim SETUVAR --export VISUAL:nvim
SETUVAR --export _JAVA_AWT_WM_NONREPARENTING:1 SETUVAR --export _JAVA_AWT_WM_NONREPARENTING:1
SETUVAR __fish_initialized:3800
SETUVAR fish_color_autosuggestion:666666 SETUVAR fish_color_autosuggestion:666666
SETUVAR fish_color_cancel:\x2dr SETUVAR fish_color_cancel:\x2dr
SETUVAR fish_color_command:569CD6 SETUVAR fish_color_command:569CD6
@@ -33,10 +30,9 @@ SETUVAR fish_color_selection:E5E5E5\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3d264
SETUVAR fish_color_status:F14C4C SETUVAR fish_color_status:F14C4C
SETUVAR fish_color_user:9CDCFE SETUVAR fish_color_user:9CDCFE
SETUVAR fish_color_valid_path:\x2d\x2dunderline SETUVAR fish_color_valid_path:\x2d\x2dunderline
SETUVAR fish_key_bindings:fish_default_key_bindings
SETUVAR fish_pager_color_completion:normal SETUVAR fish_pager_color_completion:normal
SETUVAR fish_pager_color_description:9D9D9D SETUVAR fish_pager_color_description:9D9D9D
SETUVAR fish_pager_color_prefix:569CD6\x1e\x2d\x2dbold\x1e\x2d\x2dunderline SETUVAR fish_pager_color_prefix:569CD6\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
SETUVAR fish_pager_color_progress:E5E5E5\x1e\x2d\x2dbackground\x3d264F78 SETUVAR fish_pager_color_progress:E5E5E5\x1e\x2d\x2dbackground\x3d264F78
SETUVAR fish_pager_color_selected_background:\x2d\x2dbackground\x3d264F78 SETUVAR fish_pager_color_selected_background:\x2d\x2dbackground\x3d264F78
SETUVAR fish_user_paths:/home/tfoerster/\x2eopencode/bin\x1e/home/tfoerster/\x2elocal/bin SETUVAR fish_user_paths:/home/n0x/\x2ecargo/bin\x1e/home/n0x/\x2elocal/bin
+2 -2
View File
@@ -1,6 +1,6 @@
[Settings] [Settings]
gtk-theme-name=Everforest-Teal-Dark gtk-theme-name=Orchis-Dark-Compact
gtk-icon-theme-name=Everforest-Light gtk-icon-theme-name=Papirus-Dark
gtk-font-name=Noto Sans 11 gtk-font-name=Noto Sans 11
gtk-cursor-theme-name=default gtk-cursor-theme-name=default
gtk-cursor-theme-size=24 gtk-cursor-theme-size=24
+2 -2
View File
@@ -1,6 +1,6 @@
[Settings] [Settings]
gtk-theme-name=Everforest-Teal-Dark gtk-theme-name=Orchis-Dark-Compact
gtk-icon-theme-name=Everforest-Light gtk-icon-theme-name=Papirus-Dark
gtk-font-name=Noto Sans 11 gtk-font-name=Noto Sans 11
gtk-cursor-theme-name=default gtk-cursor-theme-name=default
gtk-cursor-theme-size=24 gtk-cursor-theme-size=24
+2 -2
View File
@@ -2,8 +2,8 @@
# Any customization should be done in ~/.gtkrc-2.0.mine instead. # Any customization should be done in ~/.gtkrc-2.0.mine instead.
include "/home/n0x/.gtkrc-2.0.mine" include "/home/n0x/.gtkrc-2.0.mine"
gtk-theme-name="Everforest-Teal-Dark" gtk-theme-name="Orchis-Dark-Compact"
gtk-icon-theme-name="Everforest-Light" gtk-icon-theme-name="Papirus-Dark"
gtk-font-name="Noto Sans 11" gtk-font-name="Noto Sans 11"
gtk-cursor-theme-name="default" gtk-cursor-theme-name="default"
gtk-cursor-theme-size=24 gtk-cursor-theme-size=24
Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 MiB

After

Width:  |  Height:  |  Size: 22 MiB

+1 -1
View File
@@ -18,7 +18,7 @@
"nvim-web-devicons": { "branch": "master", "commit": "2ae6958df7ced50baac5035cec0c15799eedfbf7" }, "nvim-web-devicons": { "branch": "master", "commit": "2ae6958df7ced50baac5035cec0c15799eedfbf7" },
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" }, "plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
"presence.nvim": { "branch": "main", "commit": "87c857a56b7703f976d3a5ef15967d80508df6e6" }, "presence.nvim": { "branch": "main", "commit": "87c857a56b7703f976d3a5ef15967d80508df6e6" },
"rustaceanvim": { "branch": "main", "commit": "e9c5aaba16fead831379d5f44617547a90b913c7" }, "rustaceanvim": { "branch": "master", "commit": "e9c5aaba16fead831379d5f44617547a90b913c7" },
"telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, "telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
"vim-bbye": { "branch": "master", "commit": "25ef93ac5a87526111f43e5110675032dbcacf56" }, "vim-bbye": { "branch": "master", "commit": "25ef93ac5a87526111f43e5110675032dbcacf56" },
"vim-floaterm": { "branch": "master", "commit": "bb4ba7952e906408e1f83b215f55ffe57efcade6" }, "vim-floaterm": { "branch": "master", "commit": "bb4ba7952e906408e1f83b215f55ffe57efcade6" },
+4 -3
View File
@@ -8,12 +8,13 @@ window {
} }
/* Inner bar container, surrounds buttons */ /* Inner bar container, surrounds buttons */
/* Cursor Dark: #181818 panel, #cccccc outline */
#inner-box { #inner-box {
background-color: rgba (59, 66, 82, 1); background-color: rgba (24, 24, 24, 1);
border-radius: 10px; border-radius: 10px;
border-style: solid; border-style: solid;
border-width: 2px; border-width: 2px;
border-color: rgba (216, 222, 233, 0.7); border-color: rgba (204, 204, 204, 0.7);
padding: 10px; padding: 10px;
margin: 10px margin: 10px
} }
@@ -31,5 +32,5 @@ button {
} }
button:hover { button:hover {
background-color: rgba (216, 222, 233, 0.1) background-color: rgba (204, 204, 204, 0.1)
} }
+4 -1
View File
@@ -3,5 +3,8 @@
"export-gtkrc-20": true, "export-gtkrc-20": true,
"export-index-theme": true, "export-index-theme": true,
"export-xsettingsd": true, "export-xsettingsd": true,
"export-gtk4-symlinks": true "export-gtk4-symlinks": true,
"flatpak-export-gtk-theme-override": false,
"flatpak-export-icon-theme-override": false,
"flatpak-install-current-gtk-theme": false
} }
+1 -1
View File
@@ -6,7 +6,7 @@ configuration {
modi: "combi,run,drun"; modi: "combi,run,drun";
show-icons: true; show-icons: true;
icon-theme: "Nordzy-green-dark"; icon-theme: "Papirus-Dark";
} }
@theme "/dev/null" @theme "/dev/null"
+32 -26
View File
@@ -10,36 +10,36 @@
// Choose the order of the modules // Choose the order of the modules
"modules-left": ["hyprland/workspaces","hyprland/window"], "modules-left": ["hyprland/workspaces","hyprland/window"],
"modules-center": ["clock"], "modules-center": ["clock"],
"modules-right": ["pulseaudio", "backlight", "network", "battery", "cpu", "memory", "tray"], "modules-right": ["pulseaudio", "network", "cpu", "memory", "tray"],
// Modules configuration // Modules configuration
// "hyprland/workspaces": {
// "disable-scroll": true,
// //"all-outputs": true,
// "on-click": "activate",
// "format": "{icon}",
// "format-icons": {
// "empty": "",
// //"default": "",
// "default": "",
// "active": "",
// }
// },
"hyprland/workspaces": { "hyprland/workspaces": {
"format": "{name}", "disable-scroll": true,
"persistent_workspaces": { //"all-outputs": true,
"1": [], "on-click": "activate",
"2": [], "format": "{icon}",
"3": [], "format-icons": {
"4": [], "empty": "",
"5": [] //"default": "",
}, "default": "",
"all-outputs": true, "active": "",
"active-only": false, }
"sort-by-number": true
}, },
// "hyprland/workspaces": {
// "format": "{name}",
// "persistent_workspaces": {
// "1": [],
// "2": [],
// "3": [],
// "4": [],
// "5": []
// },
// "all-outputs": true,
// "active-only": false,
// "sort-by-number": true
// },
"keyboard-state": { "keyboard-state": {
"numlock": false, "numlock": false,
"capslock": false, "capslock": false,
@@ -93,7 +93,6 @@
"bat": "BAT2" "bat": "BAT2"
}, },
"network": { "network": {
"interface": "wlo1", // (Optional) To force the use of this interface
"format-wifi": "{essid} ", "format-wifi": "{essid} ",
"format-ethernet": "{ipaddr}/{cidr} ", "format-ethernet": "{ipaddr}/{cidr} ",
"tooltip-format": "{ifname} via {gwaddr} ", "tooltip-format": "{ifname} via {gwaddr} ",
@@ -149,6 +148,13 @@
}, },
"exec-if": "which waybar-updates", "exec-if": "which waybar-updates",
"exec": "waybar-updates --interval-seconds 5 --network-interval-seconds 300" "exec": "waybar-updates --interval-seconds 5 --network-interval-seconds 300"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
} }
} }
+50
View File
@@ -13,3 +13,53 @@ map J zoom out
map i recolor map i recolor
map p print map p print
map g goto top map g goto top
# ==========================
# === Cursor Dark ===
# ==========================
# bg #181818 | raised #2b2b2b | popup #202020 | text #cccccc
# accent #2472c8 | selection #264f78
# Chrome
set default-bg "#181818"
set default-fg "#cccccc"
set statusbar-bg "#2b2b2b"
set statusbar-fg "#cccccc"
set inputbar-bg "#181818"
set inputbar-fg "#cccccc"
set render-loading-bg "#181818"
set render-loading-fg "#9d9d9d"
# Notifications. Error/warning backgrounds are VS Code's input-validation
# colors, so the error tint matches dunst's critical notifications.
set notification-bg "#2b2b2b"
set notification-fg "#cccccc"
set notification-error-bg "#5a1d1d"
set notification-error-fg "#ffffff"
set notification-warning-bg "#352a05"
set notification-warning-fg "#ffffff"
# Completion and index reuse the popup/selection colors from nvim
set completion-bg "#202020"
set completion-fg "#cccccc"
set completion-group-bg "#181818"
set completion-group-fg "#9d9d9d"
set completion-highlight-bg "#264f78"
set completion-highlight-fg "#ffffff"
set index-bg "#181818"
set index-fg "#cccccc"
set index-active-bg "#264f78"
set index-active-fg "#ffffff"
# Search: every match subtle, the current one in the accent blue
set highlight-color "#264f78"
set highlight-active-color "#2472c8"
# Render the document itself dark; 'i' (mapped above) toggles it back off.
# Despite the names, lightcolor is what LIGHT areas become (the page
# background) and darkcolor is what DARK areas become (the text).
set recolor true
set recolor-lightcolor "#181818"
set recolor-darkcolor "#cccccc"
# Keep colored figures and links recognisable instead of crushing them to mono
set recolor-keephue true