mirror of
https://github.com/kristoferssolo/solorice.git
synced 2026-02-04 06:32:03 +00:00
Update 2025-10-31
Update 2025-10-09 Update 2025-10-11 feat: add rose-pine gtk themes Update 2025-10-16 Update 2025-10-23 Fix desktop niri Update 2025-10-31
This commit is contained in:
0
config/HybridBar/scripts/change-active-workspace
Normal file → Executable file
0
config/HybridBar/scripts/change-active-workspace
Normal file → Executable file
0
config/HybridBar/scripts/get-active-workspace
Normal file → Executable file
0
config/HybridBar/scripts/get-active-workspace
Normal file → Executable file
0
config/HybridBar/scripts/get-window-title
Normal file → Executable file
0
config/HybridBar/scripts/get-window-title
Normal file → Executable file
0
config/HybridBar/scripts/get-workspaces
Normal file → Executable file
0
config/HybridBar/scripts/get-workspaces
Normal file → Executable file
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
[default_config]
|
||||
version = "0.10.0"
|
||||
assembler = "gas"
|
||||
instruction_set = "riscv"
|
||||
instruction_set = "arm"
|
||||
|
||||
[default_config.opts]
|
||||
# compiler = "zig"
|
||||
|
||||
10
config/containers/containers.toml
Normal file
10
config/containers/containers.toml
Normal file
@@ -0,0 +1,10 @@
|
||||
[engine]
|
||||
cgroup_manager = "cgroupfs"
|
||||
events_logger = "file"
|
||||
runtime = "crun"
|
||||
|
||||
[network]
|
||||
network_backend = "cni"
|
||||
|
||||
[storage]
|
||||
driver = "overlay"
|
||||
0
config/eww/scripts/change-active-workspace
Normal file → Executable file
0
config/eww/scripts/change-active-workspace
Normal file → Executable file
0
config/eww/scripts/get-active-workspace
Normal file → Executable file
0
config/eww/scripts/get-active-workspace
Normal file → Executable file
0
config/eww/scripts/get-window-title
Normal file → Executable file
0
config/eww/scripts/get-window-title
Normal file → Executable file
0
config/eww/scripts/get-workspaces
Normal file → Executable file
0
config/eww/scripts/get-workspaces
Normal file → Executable file
0
config/eww/scripts/mem-ad
Normal file → Executable file
0
config/eww/scripts/mem-ad
Normal file → Executable file
0
config/eww/scripts/memory
Normal file → Executable file
0
config/eww/scripts/memory
Normal file → Executable file
0
config/eww/scripts/music_info
Normal file → Executable file
0
config/eww/scripts/music_info
Normal file → Executable file
0
config/eww/scripts/music_info.bak
Normal file → Executable file
0
config/eww/scripts/music_info.bak
Normal file → Executable file
0
config/eww/scripts/pop
Normal file → Executable file
0
config/eww/scripts/pop
Normal file → Executable file
0
config/eww/scripts/wifi
Normal file → Executable file
0
config/eww/scripts/wifi
Normal file → Executable file
0
config/eww/scripts/workspace
Normal file → Executable file
0
config/eww/scripts/workspace
Normal file → Executable file
@@ -18,7 +18,7 @@ alias keychain="keychain --dir $XDG_RUNTIME_DIR/keychain"
|
||||
alias diff="diff --color=auto"
|
||||
alias grep="rg --color=auto"
|
||||
alias ip="ip -color=auto"
|
||||
alias less="moar"
|
||||
alias less="moor"
|
||||
alias ls="eza -a --icons --group-directories-first"
|
||||
|
||||
# These common commands ate just too long! Abbreviate them
|
||||
|
||||
@@ -1,57 +1,35 @@
|
||||
# Source startup file
|
||||
# if test -f "$XDG_CONFIG_HOME/zsh/startup"
|
||||
# source "$XDG_CONFIG_HOME/zsh/startup"
|
||||
# end
|
||||
#!/usr/bin/env fish
|
||||
|
||||
|
||||
# Starship prompt
|
||||
starship init fish | source
|
||||
zoxide init fish | source
|
||||
|
||||
# Aliases
|
||||
if test -f "$XDG_CONFIG_HOME/fish/alias.fish"
|
||||
source "$XDG_CONFIG_HOME/fish/alias.fish"
|
||||
end
|
||||
set -g fish_history_size 1000000
|
||||
|
||||
# Environment variables
|
||||
set -x KEYTIMEOUT 1
|
||||
set -gx fish_complete_path "$XDG_CONFIG_HOME/fish/completions" $fish_complete_path
|
||||
|
||||
# Functions
|
||||
function cd
|
||||
if test (count $argv) -eq 0
|
||||
builtin cd ~
|
||||
else
|
||||
builtin cd $argv
|
||||
end
|
||||
eza -a --icons --group-directories-first
|
||||
end
|
||||
|
||||
function lfcd
|
||||
set tmp (mktemp -uq)
|
||||
lf -last-dir-path="$tmp" $argv
|
||||
if test -f "$tmp"
|
||||
set dir (cat "$tmp")
|
||||
if test -d "$dir" -a "$dir" != (pwd)
|
||||
cd "$dir"
|
||||
end
|
||||
end
|
||||
end
|
||||
# fzf configuration
|
||||
set -gx FZF_DEFAULT_OPTS "--height 40% --layout=reverse --border"
|
||||
set -gx FZF_DEFAULT_COMMAND "fd --type f"
|
||||
|
||||
function yazicd
|
||||
set tmp (mktemp -t "yazi-cwd.XXXXXX")
|
||||
yazi $argv --cwd-file="$tmp"
|
||||
set cwd (cat "$tmp")
|
||||
if test -n "$cwd" -a "$cwd" != "$PWD"
|
||||
cd "$cwd"
|
||||
eza -a --icons --group-directories-first
|
||||
end
|
||||
rm -f "$tmp"
|
||||
set tmp (mktemp -t "yazi-cwd.XXXXXX")
|
||||
yazi $argv --cwd-file="$tmp"
|
||||
if read -z cwd < "$tmp"; and [ -n "$cwd" ]; and [ "$cwd" != "$PWD" ]
|
||||
builtin z -- "$cwd" && eza -a --icons --group-directories-first
|
||||
end
|
||||
rm -f -- "$tmp" >/dev/null 2>&1
|
||||
end
|
||||
|
||||
# Keybindings
|
||||
fish_vi_key_bindings
|
||||
|
||||
|
||||
# Source other files
|
||||
# if test -f "$HOME/.local/share/../bin/env"
|
||||
# source "$HOME/.local/share/../bin/env"
|
||||
# # PATH configuration
|
||||
# fish_add_path $BUN_INSTALL/bin
|
||||
# fish_add_path $HOME/.local/bin
|
||||
#
|
||||
# # Environment setup
|
||||
# if test -f "$HOME/.local/share/bin/env"
|
||||
# source "$HOME/.local/share/bin/env"
|
||||
# end
|
||||
#
|
||||
# # Bun completions
|
||||
# if test -f "/home/kristofers/.bun/_bun"
|
||||
# source "/home/kristofers/.bun/_bun"
|
||||
# end
|
||||
|
||||
0
config/git/check_email.sh
Executable file → Normal file
0
config/git/check_email.sh
Executable file → Normal file
@@ -1 +0,0 @@
|
||||
../../local/share/themes/rose-pine-gtk/gtk-3.0/dist/gtk-dark.css
|
||||
@@ -1 +0,0 @@
|
||||
../../local/share/themes/rose-pine-gtk/gtk-3.0/dist/gtk.css
|
||||
1
config/gtk-3.0/gtk.css
Normal file
1
config/gtk-3.0/gtk.css
Normal file
@@ -0,0 +1 @@
|
||||
@import url("resource:///org/numixproject/gtk/dist/gtk.css");
|
||||
@@ -1,20 +1,22 @@
|
||||
[Settings]
|
||||
gtk-application-prefer-dark-theme=true
|
||||
gtk-button-images=1
|
||||
gtk-theme-name=rose-pine-gtk
|
||||
gtk-icon-theme-name=RoséPine
|
||||
gtk-font-name=Noto Sans, 10
|
||||
gtk-cursor-theme-name=Adwaita
|
||||
gtk-cursor-theme-size=24
|
||||
gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
gtk-button-images=1
|
||||
gtk-menu-images=1
|
||||
gtk-enable-event-sounds=1
|
||||
gtk-enable-input-feedback-sounds=0
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle=hintslight
|
||||
gtk-xft-rgba=rgb
|
||||
gtk-application-prefer-dark-theme=0
|
||||
# gtk-application-prefer-dark-theme=true
|
||||
gtk-decoration-layout=icon:minimize,maximize,close
|
||||
gtk-enable-animations=true
|
||||
gtk-enable-event-sounds=1
|
||||
gtk-enable-input-feedback-sounds=1
|
||||
gtk-font-name=Noto Sans, 10
|
||||
gtk-menu-images=1
|
||||
gtk-primary-button-warps-slider=false
|
||||
gtk-theme-name=rose-pine-gtk
|
||||
gtk-icon-theme-name=rose-pine-icons
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-dpi=98304
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle=hintfull
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
../../local/share/themes/gtk4/gtk4/rose-pine.css
|
||||
41
config/gtk-4.0/rose-pine.css
Normal file
41
config/gtk-4.0/rose-pine.css
Normal file
@@ -0,0 +1,41 @@
|
||||
@define-color accent_bg_color #c4a7e7;
|
||||
@define-color accent_fg_color #191724;
|
||||
@define-color accent_color #c4a7e7;
|
||||
|
||||
@define-color destructive_bg_color #eb6f92;
|
||||
@define-color destructive_fg_color #191724;
|
||||
@define-color destructive_color #eb6f92;
|
||||
|
||||
@define-color success_bg_color #9ccfd8;
|
||||
@define-color success_fg_color #e0def4;
|
||||
@define-color success_color #9ccfd8;
|
||||
|
||||
@define-color warning_bg_color #f6c177;
|
||||
@define-color warning_fg_color #e0def4;
|
||||
@define-color warning_color #f6c177;
|
||||
|
||||
@define-color error_bg_color #eb6f92;
|
||||
@define-color error_fg_color #e0def4;
|
||||
@define-color error_color #eb6f92;
|
||||
|
||||
@define-color window_bg_color #191724;
|
||||
@define-color window_fg_color #e0def4;
|
||||
|
||||
@define-color view_bg_color #26233a;
|
||||
@define-color view_fg_color #e0def4;
|
||||
|
||||
@define-color headerbar_bg_color #191724;
|
||||
@define-color headerbar_fg_color #e0def4;
|
||||
@define-color headerbar_backdrop_color @window_bg_color;
|
||||
@define-color headerbar_shade_color #191724;
|
||||
|
||||
@define-color card_bg_color #1f1d2e;
|
||||
@define-color card_fg_color #e0def4;
|
||||
@define-color card_shade_color #1f1d2e;
|
||||
|
||||
@define-color popover_bg_color #26233a;
|
||||
@define-color popover_fg_color #e0def4;
|
||||
|
||||
@define-color sidebar_backdrop_color #26233A;
|
||||
@define-color sidebar_bg_color #26233A;
|
||||
@define-color sidebar_fg_color #e0def4;
|
||||
0
config/lf/cleaner
Normal file → Executable file
0
config/lf/cleaner
Normal file → Executable file
0
config/lf/lfrc
Normal file → Executable file
0
config/lf/lfrc
Normal file → Executable file
@@ -3,13 +3,29 @@
|
||||
// Check the wiki for a full description of the configuration:
|
||||
// https://github.com/YaLTeR/niri/wiki/Configuration:-Introduction
|
||||
|
||||
workspace "browser" {
|
||||
open-on-output "DP-1"
|
||||
}
|
||||
|
||||
workspace "terminal" {
|
||||
open-on-output "DP-1"
|
||||
}
|
||||
|
||||
workspace "chat" {
|
||||
open-on-output "HDMI-A-1"
|
||||
}
|
||||
|
||||
workspace "music" {
|
||||
open-on-output "HDMI-A-1"
|
||||
}
|
||||
|
||||
environment {
|
||||
QT_QPA_PLATFORM "wayland"
|
||||
XDG_SESSION_TYPE "wayland"
|
||||
XDG_CURRENT_DESKTOP "niri"
|
||||
XDG_SESSION_DESKTOP "niri"
|
||||
WM "niri"
|
||||
DISPLAY ":0"
|
||||
DISPLAY ":0" // for X11 apps to run
|
||||
ELECTRON_OZONE_PLATFORM_HINT "auto"
|
||||
}
|
||||
|
||||
@@ -112,17 +128,6 @@ output "HDMI-A-1" {
|
||||
backdrop-color "#000"
|
||||
}
|
||||
|
||||
workspace "browser" {
|
||||
open-on-output "DP-1"
|
||||
}
|
||||
|
||||
workspace "chat" {
|
||||
open-on-output "HDMI-A-1"
|
||||
}
|
||||
|
||||
workspace "music" {
|
||||
open-on-output "HDMI-A-1"
|
||||
}
|
||||
|
||||
// Settings that influence how windows are positioned and sized.
|
||||
// Find more information on the wiki:
|
||||
@@ -279,7 +284,6 @@ layout {
|
||||
// See the binds section below for more spawn examples.
|
||||
|
||||
// This line starts waybar, a commonly used bar for Wayland compositors.
|
||||
spawn-at-startup "xwayland-satellite"
|
||||
spawn-at-startup "pipewire"
|
||||
spawn-at-startup "pipewire-pulse"
|
||||
spawn-at-startup "wireplumber"
|
||||
@@ -287,12 +291,14 @@ spawn-at-startup "mako"
|
||||
spawn-at-startup "waybar"
|
||||
// spawn-at-startup "dbus-update-activation-environment" "WAYLAND_DISPLAY" "XDG_CURRENT_DESKTOP" "DISPLAY" "XAUTHORITY"
|
||||
spawn-at-startup "nextcloud"
|
||||
spawn-at-startup "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
|
||||
// spawn-at-startup "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
|
||||
spawn-at-startup "xrdb" "~/.config/x11/xresources"
|
||||
spawn-at-startup "transmission-daemon"
|
||||
spawn-at-startup "floorp"
|
||||
spawn-at-startup "kotatogram-desktop"
|
||||
spawn-at-startup "discord"
|
||||
spawn-at-startup "{{browser}}"
|
||||
// spawn-at-startup "flatpak" "run" "com.ayugram.desktop"
|
||||
spawn-at-startup "AyuGram"
|
||||
spawn-at-startup "vesktop"
|
||||
spawn-at-startup "swap-wallpaper"
|
||||
spawn-at-startup "spotify-launcher"
|
||||
|
||||
// Uncomment this line to ask the clients to omit their client-side decorations if possible.
|
||||
@@ -318,7 +324,7 @@ animations {
|
||||
off
|
||||
|
||||
// Slow down all animations by this factor. Values below 1 speed them up instead.
|
||||
// slowdown 3.0
|
||||
slowdown 3.0
|
||||
}
|
||||
|
||||
layer-rule {
|
||||
@@ -326,6 +332,9 @@ layer-rule {
|
||||
block-out-from "screencast"
|
||||
}
|
||||
|
||||
window-rule {
|
||||
draw-border-with-background false
|
||||
}
|
||||
// Window rules let you adjust behavior for individual windows.
|
||||
// Find more information on the wiki:
|
||||
// https://github.com/YaLTeR/niri/wiki/Configuration:-Window-Rules
|
||||
@@ -346,10 +355,16 @@ window-rule {
|
||||
// - host Firefox (app-id is "firefox")
|
||||
// - Flatpak Firefox (app-id is "org.mozilla.firefox")
|
||||
match app-id=r#"firefox$"# title="^Picture-in-Picture$"
|
||||
match app-id=r#"floorp$"# title="^Picture-in-Picture$"
|
||||
match app-id=r#"floorp-default"# title="^Picture-in-Picture$"
|
||||
open-floating true
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match title=r#"^Extension:.*Bitwarden.*"#
|
||||
|
||||
default-floating-position x=10 y=10 relative-to="top-right"
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match app-id="steam" title=r#"^notificationtoasts_\d+_desktop$"#
|
||||
default-floating-position x=10 y=10 relative-to="bottom-right"
|
||||
@@ -360,6 +375,8 @@ window-rule {
|
||||
window-rule {
|
||||
match app-id=r#"^org\.keepassxc\.KeePassXC$"#
|
||||
match app-id=r#"^org\.gnome\.World\.Secrets$"#
|
||||
match app-id=r#"^org\.gnome\.World\.Secrets$"#
|
||||
match title="Bitwarden"
|
||||
|
||||
block-out-from "screen-capture"
|
||||
|
||||
@@ -368,19 +385,41 @@ window-rule {
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match at-startup=true app-id="floorp"
|
||||
open-maximized true
|
||||
match at-startup=true app-id="floorp-default"
|
||||
open-on-workspace "browser"
|
||||
open-maximized true
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match at-startup=true app-id=r#"^org\.telegram\.desktop$"#
|
||||
match at-startup=true app-id=r#"^com\.ayugram\.desktop$"#
|
||||
match at-startup=true app-id=r#"^org\.gnome\.Fractal$"#
|
||||
match at-startup=true app-id=r#"discord"#
|
||||
match at-startup=true app-id=r#"vesktop"#
|
||||
|
||||
exclude app-id=r#"^com\.ayugram\.desktop$"# title="^Media viewer$"
|
||||
exclude app-id=r#"^org\.telegram\.desktop$"# title="^Media viewer$"
|
||||
open-on-workspace "chat"
|
||||
opacity 0.95
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match app-id="mpv"
|
||||
open-fullscreen true
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match app-id=r#"^com\.ayugram\.desktop$"# title="^Media viewer$"
|
||||
match app-id=r#"^org\.telegram\.desktop$"# title="^Media viewer$"
|
||||
|
||||
open-maximized true
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match at-startup=true app-id="Spotify"
|
||||
open-maximized true
|
||||
|
||||
open-on-workspace "music"
|
||||
}
|
||||
|
||||
// Example: enable rounded corners for all windows.
|
||||
@@ -406,9 +445,9 @@ binds {
|
||||
Mod+Shift+Slash { show-hotkey-overlay; }
|
||||
|
||||
// Suggested binds for running programs: terminal, app launcher, screen locker.
|
||||
Mod+Return hotkey-overlay-title="Open a Terminal: alacritty" { spawn "alacritty"; }
|
||||
Mod+Return hotkey-overlay-title="Open a Terminal: {{terminal}}" { spawn "{{terminal}}"; }
|
||||
Mod+P hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; }
|
||||
Super+Space allow-when-locked=true hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
|
||||
// Super+Space allow-when-locked=true hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
|
||||
// Super+Space hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; }
|
||||
|
||||
// You can also use a shell. Do this if you need pipes, multiple commands, etc.
|
||||
@@ -417,10 +456,12 @@ binds {
|
||||
|
||||
// Example volume keys mappings for PipeWire & WirePlumber.
|
||||
// The allow-when-locked=true property makes them work even when the session is locked.
|
||||
XF86AudioRaiseVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.01+"; }
|
||||
XF86AudioLowerVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.01-"; }
|
||||
XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }
|
||||
XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume $(get-spotify-id) 0.01+"; }
|
||||
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume $(get-spotify-id) 0.01-"; }
|
||||
XF86AudioMute allow-when-locked=true { spawn "sp" "play"; }
|
||||
XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; }
|
||||
Page_Down allow-when-locked=true {spawn "sp" "next"; }
|
||||
Page_Up allow-when-locked=true {spawn "sp" "prev"; }
|
||||
|
||||
// Open/close the Overview: a zoomed-out view of workspaces and windows.
|
||||
// You can also move the mouse into the top-left hot corner,
|
||||
@@ -469,23 +510,20 @@ binds {
|
||||
// Mod+Shift+Ctrl+Left { move-workspace-to-monitor-left; }
|
||||
// ...
|
||||
|
||||
Mod+Page_Down { focus-workspace-down; }
|
||||
Mod+Page_Up { focus-workspace-up; }
|
||||
Mod+U { focus-workspace-down; }
|
||||
Mod+I { focus-workspace-up; }
|
||||
Mod+Ctrl+Page_Down { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+Page_Up { move-column-to-workspace-up; }
|
||||
Mod+Ctrl+U { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+I { move-column-to-workspace-up; }
|
||||
Mod+Down { focus-workspace-down; }
|
||||
Mod+Up { focus-workspace-up; }
|
||||
Mod+Ctrl+Down { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+Up { move-column-to-workspace-up; }
|
||||
|
||||
Mod+Alt+J { focus-workspace-down; }
|
||||
Mod+Alt+K { focus-workspace-up; }
|
||||
|
||||
// Alternatively, there are commands to move just a single window:
|
||||
// Mod+Ctrl+Page_Down { move-window-to-workspace-down; }
|
||||
// ...
|
||||
|
||||
Mod+Shift+Page_Down { move-workspace-down; }
|
||||
Mod+Shift+Page_Up { move-workspace-up; }
|
||||
Mod+Shift+U { move-workspace-down; }
|
||||
Mod+Shift+I { move-workspace-up; }
|
||||
Mod+Shift+Down { move-workspace-down; }
|
||||
Mod+Shift+Up { move-workspace-up; }
|
||||
|
||||
// You can bind mouse wheel scroll ticks using the following syntax.
|
||||
// These binds will change direction based on the natural-scroll setting.
|
||||
@@ -527,24 +565,24 @@ binds {
|
||||
//
|
||||
// For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on
|
||||
// will all refer to the 3rd workspace.
|
||||
Mod+1 { focus-workspace 1; }
|
||||
Mod+2 { focus-workspace 2; }
|
||||
Mod+1 { focus-workspace "browser"; }
|
||||
Mod+2 { focus-workspace "terminal"; }
|
||||
Mod+3 { focus-workspace 3; }
|
||||
Mod+4 { focus-workspace 4; }
|
||||
Mod+5 { focus-workspace 5; }
|
||||
Mod+6 { focus-workspace 6; }
|
||||
Mod+7 { focus-workspace 7; }
|
||||
Mod+8 { focus-workspace 8; }
|
||||
Mod+9 { focus-workspace 9; }
|
||||
Mod+Shift+1 { move-column-to-workspace 1; }
|
||||
Mod+Shift+2 { move-column-to-workspace 2; }
|
||||
Mod+8 { focus-workspace "chat"; }
|
||||
Mod+9 { focus-workspace "music"; }
|
||||
Mod+Shift+1 { move-column-to-workspace "browser"; }
|
||||
Mod+Shift+2 { move-column-to-workspace "terminal"; }
|
||||
Mod+Shift+3 { move-column-to-workspace 3; }
|
||||
Mod+Shift+4 { move-column-to-workspace 4; }
|
||||
Mod+Shift+5 { move-column-to-workspace 5; }
|
||||
Mod+Shift+6 { move-column-to-workspace 6; }
|
||||
Mod+Shift+7 { move-column-to-workspace 7; }
|
||||
Mod+Shift+8 { move-column-to-workspace 8; }
|
||||
Mod+Shift+9 { move-column-to-workspace 9; }
|
||||
Mod+Shift+8 { move-column-to-workspace "chat"; }
|
||||
Mod+Shift+9 { move-column-to-workspace "music"; }
|
||||
|
||||
// Alternatively, there are commands to move just a single window:
|
||||
// Mod+Ctrl+1 { move-window-to-workspace 1; }
|
||||
@@ -610,9 +648,9 @@ binds {
|
||||
// Mod+Space { switch-layout "next"; }
|
||||
// Mod+Shift+Space { switch-layout "prev"; }
|
||||
|
||||
Print { screenshot; }
|
||||
Ctrl+Print { screenshot-screen; }
|
||||
Alt+Print { screenshot-window; }
|
||||
Mod+Delete { screenshot; }
|
||||
Mod+Shift+Delete { screenshot-screen; }
|
||||
Mod+Alt+Delete { screenshot-window; }
|
||||
|
||||
// Applications such as remote-desktop clients and software KVM switches may
|
||||
// request that niri stops processing the keyboard shortcuts defined here
|
||||
@@ -630,10 +668,10 @@ binds {
|
||||
|
||||
// Powers off the monitors. To turn them back on, do any input like
|
||||
// moving the mouse or pressing any other key.
|
||||
Mod+Shift+P { power-off-monitors; }
|
||||
// Mod+Shift+P { power-off-monitors; }
|
||||
|
||||
Mod+Shift+P { spawn "swap-wallpaper"; }
|
||||
Mod+B { spawn "floorp"; }
|
||||
Mod+B { spawn "{{browser}}"; }
|
||||
}
|
||||
|
||||
hotkey-overlay {
|
||||
|
||||
@@ -3,10 +3,15 @@
|
||||
// Check the wiki for a full description of the configuration:
|
||||
// https://github.com/YaLTeR/niri/wiki/Configuration:-Introduction
|
||||
|
||||
workspace "browser"
|
||||
workspace "terminal"
|
||||
workspace "chat"
|
||||
workspace "music"
|
||||
workspace "1"
|
||||
workspace "2"
|
||||
workspace "3"
|
||||
workspace "4"
|
||||
workspace "5"
|
||||
workspace "6"
|
||||
workspace "7"
|
||||
workspace "8"
|
||||
workspace "9"
|
||||
|
||||
environment {
|
||||
QT_QPA_PLATFORM "wayland"
|
||||
@@ -14,7 +19,7 @@ environment {
|
||||
XDG_CURRENT_DESKTOP "niri"
|
||||
XDG_SESSION_DESKTOP "niri"
|
||||
WM "niri"
|
||||
DISPLAY null
|
||||
DISPLAY ":0" // for X11 appls to run
|
||||
ELECTRON_OZONE_PLATFORM_HINT "auto"
|
||||
}
|
||||
|
||||
@@ -286,13 +291,10 @@ layout {
|
||||
// See the binds section below for more spawn examples.
|
||||
|
||||
// This line starts waybar, a commonly used bar for Wayland compositors.
|
||||
spawn-at-startup "xwayland-satellite"
|
||||
spawn-at-startup "pipewire"
|
||||
spawn-at-startup "pipewire-pulse"
|
||||
spawn-at-startup "wireplumber"
|
||||
spawn-at-startup "waybar"
|
||||
// spawn-at-startup "eww" "daemon"
|
||||
// spawn-at-startup "eww" "open bar"
|
||||
spawn-at-startup "mako"
|
||||
// spawn-at-startup "dbus-update-activation-environment" "WAYLAND_DISPLAY" "XDG_CURRENT_DESKTOP" "DISPLAY" "XAUTHORITY"
|
||||
spawn-at-startup "nextcloud"
|
||||
@@ -300,7 +302,7 @@ spawn-at-startup "nextcloud"
|
||||
spawn-at-startup "xrdb" "~/.config/x11/xresources"
|
||||
spawn-at-startup "transmission-daemon"
|
||||
spawn-at-startup "{{browser}}"
|
||||
spawn-at-startup "kotatogram-desktop"
|
||||
spawn-at-startup "flatpak" "run" "com.ayugram.desktop"
|
||||
spawn-at-startup "vesktop"
|
||||
spawn-at-startup "swap-wallpaper"
|
||||
|
||||
@@ -383,17 +385,19 @@ window-rule {
|
||||
window-rule {
|
||||
match at-startup=true app-id="floorp"
|
||||
open-maximized true
|
||||
open-on-workspace "browser"
|
||||
open-on-workspace "1"
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match at-startup=true app-id=r#"^org\.telegram\.desktop$"#
|
||||
match at-startup=true app-id=r#"^com\.ayugram\.desktop$"#
|
||||
match at-startup=true app-id=r#"^org\.gnome\.Fractal$"#
|
||||
match at-startup=true app-id=r#"discord"#
|
||||
match at-startup=true app-id=r#"vesktop"#
|
||||
|
||||
exclude app-id=r#"^com\.ayugram\.desktop$"# title="^Media viewer$"
|
||||
exclude app-id=r#"^org\.telegram\.desktop$"# title="^Media viewer$"
|
||||
open-on-workspace "chat"
|
||||
open-on-workspace "8"
|
||||
opacity 0.95
|
||||
}
|
||||
|
||||
@@ -541,24 +545,24 @@ binds {
|
||||
//
|
||||
// For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on
|
||||
// will all refer to the 3rd workspace.
|
||||
Mod+1 { focus-workspace "browser"; }
|
||||
Mod+2 { focus-workspace "terminal"; }
|
||||
Mod+3 { focus-workspace 3; }
|
||||
Mod+4 { focus-workspace 4; }
|
||||
Mod+5 { focus-workspace 5; }
|
||||
Mod+6 { focus-workspace 6; }
|
||||
Mod+7 { focus-workspace 7; }
|
||||
Mod+8 { focus-workspace "chat"; }
|
||||
Mod+9 { focus-workspace "music"; }
|
||||
Mod+Shift+1 { move-column-to-workspace "browser"; }
|
||||
Mod+Shift+2 { move-column-to-workspace "terminal"; }
|
||||
Mod+Shift+3 { move-column-to-workspace 3; }
|
||||
Mod+Shift+4 { move-column-to-workspace 4; }
|
||||
Mod+Shift+5 { move-column-to-workspace 5; }
|
||||
Mod+Shift+6 { move-column-to-workspace 6; }
|
||||
Mod+Shift+7 { move-column-to-workspace 7; }
|
||||
Mod+Shift+8 { move-column-to-workspace "chat"; }
|
||||
Mod+Shift+9 { move-column-to-workspace "music"; }
|
||||
Mod+1 { focus-workspace "1"; }
|
||||
Mod+2 { focus-workspace "2"; }
|
||||
Mod+3 { focus-workspace "3"; }
|
||||
Mod+4 { focus-workspace "4"; }
|
||||
Mod+5 { focus-workspace "5"; }
|
||||
Mod+6 { focus-workspace "6"; }
|
||||
Mod+7 { focus-workspace "7"; }
|
||||
Mod+8 { focus-workspace "8"; }
|
||||
Mod+9 { focus-workspace "9"; }
|
||||
Mod+Shift+1 { move-column-to-workspace "1"; }
|
||||
Mod+Shift+2 { move-column-to-workspace "2"; }
|
||||
Mod+Shift+3 { move-column-to-workspace "3"; }
|
||||
Mod+Shift+4 { move-column-to-workspace "4"; }
|
||||
Mod+Shift+5 { move-column-to-workspace "5"; }
|
||||
Mod+Shift+6 { move-column-to-workspace "6"; }
|
||||
Mod+Shift+7 { move-column-to-workspace "7"; }
|
||||
Mod+Shift+8 { move-column-to-workspace "8"; }
|
||||
Mod+Shift+9 { move-column-to-workspace "9"; }
|
||||
|
||||
// Alternatively, there are commands to move just a single window:
|
||||
// Mod+Ctrl+1 { move-window-to-workspace 1; }
|
||||
|
||||
0
config/nsxiv/exec/image-info
Normal file → Executable file
0
config/nsxiv/exec/image-info
Normal file → Executable file
0
config/nsxiv/exec/key-handler
Normal file → Executable file
0
config/nsxiv/exec/key-handler
Normal file → Executable file
0
config/nsxiv/exec/nsxiv-url
Normal file → Executable file
0
config/nsxiv/exec/nsxiv-url
Normal file → Executable file
0
config/nsxiv/exec/thumb-info
Normal file → Executable file
0
config/nsxiv/exec/thumb-info
Normal file → Executable file
0
config/nsxiv/exec/win-title
Normal file → Executable file
0
config/nsxiv/exec/win-title
Normal file → Executable file
1
config/obs-studio
Submodule
1
config/obs-studio
Submodule
Submodule config/obs-studio added at b48939f1fa
@@ -11,6 +11,7 @@ alias \
|
||||
mkdir="mkdir -pv" \
|
||||
mv="mv -iv" \
|
||||
nsxiv="nsxiv -a" \
|
||||
img="oculante" \
|
||||
rm="rm -vI" \
|
||||
wget="wget --hsts-file=$XDG_DATA_HOME/wget-hsts" \
|
||||
keychain="keychain --dir $XDG_RUNTIME_DIR/keychain"
|
||||
@@ -20,7 +21,7 @@ alias \
|
||||
diff="diff --color=auto" \
|
||||
grep="rg --color=auto" \
|
||||
ip="ip -color=auto" \
|
||||
less="moar" \
|
||||
less="moor" \
|
||||
ls="eza -a --icons --group-directories-first"
|
||||
|
||||
# These common commands ate just too long! Abbreviate them
|
||||
|
||||
@@ -6,11 +6,14 @@ typeset -U PATH path
|
||||
# If you don't plan on reverting to bash, you can remove the link in ~/.profile
|
||||
# to clean up.
|
||||
|
||||
export BUN_INSTALL="$XDG_DATA_HOME/bun"
|
||||
|
||||
# Adds `~/.local/bin` to $PATH
|
||||
export PATH="$PATH:${$(find ~/.local/bin -type d -printf %p:)%%:}"
|
||||
export PATH="$PATH:~/.spicetify"
|
||||
export PATH="$PATH:${$(find ~/.cache/.bun/bin -type d -printf %p:)%%:}"
|
||||
export PATH="$JAVA_HOME/bin:$PATH"
|
||||
export PATH="$BUN_INSTALL/bin:$PATH"
|
||||
|
||||
# Disable files
|
||||
export LESSHISTFILE=-
|
||||
@@ -25,13 +28,14 @@ unsetopt PROMPT_SP
|
||||
# Default Apps
|
||||
export BROWSER="floorp"
|
||||
export EDITOR="nvim"
|
||||
export IMAGE="nsxiv"
|
||||
export IMAGE="oculante"
|
||||
export READER="zathura"
|
||||
export TERMINAL="{{terminal}}"
|
||||
export VIDEO="mpv"
|
||||
export VISUAL="$EDITOR"
|
||||
export WM="awesome"
|
||||
|
||||
export GTK_THEME=rose-pine-gtk
|
||||
|
||||
# $HOME Clean-up
|
||||
export XDG_CACHE_HOME="$HOME/.cache"
|
||||
|
||||
@@ -12,7 +12,8 @@
|
||||
"spacing": 0, // Gaps between modules (4px)
|
||||
// Choose the order of the modules
|
||||
"modules-left": [
|
||||
"wlr/taskbar"
|
||||
// "wlr/taskbar"
|
||||
"cffi/niri-taskbar"
|
||||
],
|
||||
"modules-center": [],
|
||||
"modules-right": [
|
||||
@@ -49,6 +50,16 @@
|
||||
"on-click": "niri msg action quit"
|
||||
},
|
||||
"wlr/taskbar": {
|
||||
// "all-outputs": true,
|
||||
"format": "{title} | {app_id}",
|
||||
// "format": "{icon}",
|
||||
"tooltip-format": "{title} | {app_id}",
|
||||
"on-click": "activate",
|
||||
"on-click-middle": "close",
|
||||
"on-click-right": "fullscreen"
|
||||
},
|
||||
"cffi/niri-taskbar": {
|
||||
"module_path": "/usr/lib/waybar/libniri_taskbar.so",
|
||||
// "all-outputs": true,
|
||||
// "format": "{icon} {title} {app_id}",
|
||||
"format": "{icon}",
|
||||
|
||||
0
config/waybar/scripts/mediaplayer.py
Executable file → Normal file
0
config/waybar/scripts/mediaplayer.py
Executable file → Normal file
@@ -1,33 +1,33 @@
|
||||
@import "./rose-pine.css";
|
||||
|
||||
* {
|
||||
/* `otf-font-awesome` is required to be installed for icons */
|
||||
font-family:
|
||||
JetBrains Mono NF Propo,
|
||||
JetBrains Mono NF,
|
||||
FontAwesome,
|
||||
Roboto,
|
||||
Helvetica,
|
||||
Arial,
|
||||
sans-serif;
|
||||
font-size: 14px;
|
||||
/* font-feature-settings: "tnum"; */
|
||||
color: @text;
|
||||
background: @base-transparent;
|
||||
/* `otf-font-awesome` is required to be installed for icons */
|
||||
font-family:
|
||||
JetBrains Mono NF Propo,
|
||||
JetBrains Mono NF,
|
||||
FontAwesome,
|
||||
Roboto,
|
||||
Helvetica,
|
||||
Arial,
|
||||
sans-serif;
|
||||
font-size: {{waybar_font_size}};
|
||||
/* font-feature-settings: "tnum"; */
|
||||
color: @text;
|
||||
background: @base-transparent;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background: transparent;
|
||||
/* background-color: rgba(30, 30, 46, 0.5); */
|
||||
/* border-bottom: 2px solid rgba(147, 153, 178, 0.5); */
|
||||
/* border: 1px solid rgba(166, 173, 200, 1.0); */
|
||||
color: #ffffff;
|
||||
/* transition-property: background-color; */
|
||||
/* transition-duration: .5s; */
|
||||
background: transparent;
|
||||
/* background-color: rgba(30, 30, 46, 0.5); */
|
||||
/* border-bottom: 2px solid rgba(147, 153, 178, 0.5); */
|
||||
/* border: 1px solid rgba(166, 173, 200, 1.0); */
|
||||
color: #ffffff;
|
||||
/* transition-property: background-color; */
|
||||
/* transition-duration: .5s; */
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -40,49 +40,49 @@ window#waybar.solo {
|
||||
*/
|
||||
|
||||
window#waybar.termite {
|
||||
background-color: red;
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
button {
|
||||
/* Use box-shadow instead of border so the text isn't offset */
|
||||
box-shadow: none;
|
||||
/* Avoid rounded borders under each button name */
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
transition-property: none;
|
||||
/* Use box-shadow instead of border so the text isn't offset */
|
||||
box-shadow: none;
|
||||
/* Avoid rounded borders under each button name */
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
transition-property: none;
|
||||
}
|
||||
|
||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||
button:hover {
|
||||
background: none;
|
||||
box-shadow: none;
|
||||
text-shadow: none;
|
||||
border: none;
|
||||
-gtk-icon-effect: none;
|
||||
-gtk-icon-shadow: none;
|
||||
background: none;
|
||||
box-shadow: none;
|
||||
text-shadow: none;
|
||||
border: none;
|
||||
-gtk-icon-effect: none;
|
||||
-gtk-icon-shadow: none;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 0 5px;
|
||||
background-color: transparent;
|
||||
padding: 0 5px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
background-color: #64727d;
|
||||
box-shadow: inset 0 -3px #ffffff;
|
||||
background-color: #64727d;
|
||||
box-shadow: inset 0 -3px #ffffff;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: #eb4d4b;
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#mode {
|
||||
background-color: #64727d;
|
||||
border-bottom: 3px solid #ffffff;
|
||||
background-color: #64727d;
|
||||
border-bottom: 3px solid #ffffff;
|
||||
}
|
||||
|
||||
#clock,
|
||||
@@ -101,37 +101,37 @@ button:hover {
|
||||
#idle_inhibitor,
|
||||
#scratchpad,
|
||||
#mpd {
|
||||
padding: 0 10px;
|
||||
border-radius: 99px;
|
||||
background-color: transparent;
|
||||
padding: 0 10px;
|
||||
border-radius: 99px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#window,
|
||||
#workspaces {
|
||||
margin: 0 4px;
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
/* If workspaces is the leftmost module, omit left margin */
|
||||
.modules-left > widget:first-child > #workspaces {
|
||||
margin-left: 0;
|
||||
.modules-left>widget:first-child>#workspaces {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/* If workspaces is the rightmost module, omit right margin */
|
||||
.modules-right > widget:last-child > #workspaces {
|
||||
margin-right: 0;
|
||||
.modules-right>widget:last-child>#workspaces {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#clock {
|
||||
/* background-color: #64727D; */
|
||||
font-weight: bold;
|
||||
/* background-color: rgba(0, 0, 0, 0.3); */
|
||||
/* border-radius: 99px; */
|
||||
/* background-color: #64727D; */
|
||||
font-weight: bold;
|
||||
/* background-color: rgba(0, 0, 0, 0.3); */
|
||||
/* border-radius: 99px; */
|
||||
}
|
||||
|
||||
#battery {
|
||||
/* background-color: #f9e2af; */
|
||||
/* color: #000000; */
|
||||
margin-left: 4px;
|
||||
/* background-color: #f9e2af; */
|
||||
/* color: #000000; */
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -159,35 +159,35 @@ button:hover {
|
||||
*/
|
||||
|
||||
label:focus {
|
||||
background-color: #000000;
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
/* background-color: #f38ba8; */
|
||||
/* color: #000000; */
|
||||
border-radius: 99px 0px 0px 99px;
|
||||
padding: 0 0 0 10px;
|
||||
margin-left: 4px;
|
||||
/* background-color: #f38ba8; */
|
||||
/* color: #000000; */
|
||||
border-radius: 99px 0px 0px 99px;
|
||||
padding: 0 0 0 10px;
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
#memory {
|
||||
/* background-color: #fab387; */
|
||||
/* color: #000000; */
|
||||
border-radius: 0px 99px 99px 0px;
|
||||
/* padding: 0 10px 0 0; */
|
||||
/* background-color: #fab387; */
|
||||
/* color: #000000; */
|
||||
border-radius: 0px 99px 99px 0px;
|
||||
/* padding: 0 10px 0 0; */
|
||||
}
|
||||
|
||||
#disk {
|
||||
background-color: #964b00;
|
||||
background-color: #964b00;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
background-color: #90b1b1;
|
||||
background-color: #90b1b1;
|
||||
}
|
||||
|
||||
#network {
|
||||
/* background-color: #a6e3a1; */
|
||||
/* color: #000000; */
|
||||
/* background-color: #a6e3a1; */
|
||||
/* color: #000000; */
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -197,146 +197,146 @@ label:focus {
|
||||
*/
|
||||
|
||||
#taskbar {
|
||||
margin-left: 4px;
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
#taskbar button {
|
||||
color: #f0f0ff;
|
||||
background-color: rgba(30, 30, 46, 0.6);
|
||||
color: #f0f0ff;
|
||||
background-color: rgba(30, 30, 46, 0.6);
|
||||
}
|
||||
|
||||
#taskbar button:first-child {
|
||||
border-radius: 99px 0 0 99px;
|
||||
border-radius: 99px 0 0 99px;
|
||||
}
|
||||
|
||||
#taskbar button:last-child {
|
||||
border-radius: 0 99px 99px 0;
|
||||
border-radius: 0 99px 99px 0;
|
||||
}
|
||||
|
||||
#taskbar button:first-child:last-child {
|
||||
border-radius: 99px;
|
||||
border-radius: 99px;
|
||||
}
|
||||
|
||||
#taskbar button:hover {
|
||||
background-color: rgba(49, 50, 68, 0.6);
|
||||
background-color: rgba(49, 50, 68, 0.6);
|
||||
}
|
||||
|
||||
#taskbar button.active {
|
||||
background-color: rgba(88, 91, 112, 0.6);
|
||||
background-color: rgba(88, 91, 112, 0.6);
|
||||
}
|
||||
|
||||
#taskbar button.active:hover {
|
||||
background-color: rgba(108, 112, 134, 0.6);
|
||||
background-color: rgba(108, 112, 134, 0.6);
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
background-color: #f1c40f;
|
||||
color: #000000;
|
||||
background-color: #f1c40f;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
background-color: #90b1b1;
|
||||
color: #2a5c45;
|
||||
background-color: #90b1b1;
|
||||
color: #2a5c45;
|
||||
}
|
||||
|
||||
#wireplumber {
|
||||
background-color: #fff0f5;
|
||||
color: #000000;
|
||||
background-color: #fff0f5;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
#wireplumber.muted {
|
||||
background-color: #f53c3c;
|
||||
background-color: #f53c3c;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
min-width: 100px;
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
#custom-media.custom-spotify {
|
||||
background-color: #66cc99;
|
||||
background-color: #66cc99;
|
||||
}
|
||||
|
||||
#custom-media.custom-vlc {
|
||||
background-color: #ffa000;
|
||||
background-color: #ffa000;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
background-color: #f0932b;
|
||||
background-color: #f0932b;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: #eb4d4b;
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#tray {
|
||||
/* background-color: #2980b9; */
|
||||
/* background-color: #2980b9; */
|
||||
}
|
||||
|
||||
#tray > .passive {
|
||||
-gtk-icon-effect: dim;
|
||||
#tray>.passive {
|
||||
-gtk-icon-effect: dim;
|
||||
}
|
||||
|
||||
#tray > .needs-attention {
|
||||
-gtk-icon-effect: highlight;
|
||||
background-color: #eb4d4b;
|
||||
#tray>.needs-attention {
|
||||
-gtk-icon-effect: highlight;
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
background-color: #2d3436;
|
||||
background-color: #2d3436;
|
||||
}
|
||||
|
||||
#idle_inhibitor.activated {
|
||||
background-color: #ecf0f1;
|
||||
color: #2d3436;
|
||||
background-color: #ecf0f1;
|
||||
color: #2d3436;
|
||||
}
|
||||
|
||||
#mpd {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
}
|
||||
|
||||
#mpd.disconnected {
|
||||
background-color: #f53c3c;
|
||||
background-color: #f53c3c;
|
||||
}
|
||||
|
||||
#mpd.stopped {
|
||||
background-color: #90b1b1;
|
||||
background-color: #90b1b1;
|
||||
}
|
||||
|
||||
#mpd.paused {
|
||||
background-color: #51a37a;
|
||||
background-color: #51a37a;
|
||||
}
|
||||
|
||||
#language {
|
||||
background: #00b093;
|
||||
color: #740864;
|
||||
padding: 0 5px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
background: #00b093;
|
||||
color: #740864;
|
||||
padding: 0 5px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state {
|
||||
background: #97e1ad;
|
||||
color: #000000;
|
||||
padding: 0 0px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
background: #97e1ad;
|
||||
color: #000000;
|
||||
padding: 0 0px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state > label {
|
||||
padding: 0 5px;
|
||||
#keyboard-state>label {
|
||||
padding: 0 5px;
|
||||
}
|
||||
|
||||
#keyboard-state > label.locked {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
#keyboard-state>label.locked {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
|
||||
#scratchpad {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
|
||||
#scratchpad.empty {
|
||||
background-color: transparent;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
@@ -1,157 +0,0 @@
|
||||
* {
|
||||
/* `otf-font-awesome` is required to be installed for icons */
|
||||
font-family:
|
||||
JetBrains Mono NF,
|
||||
FontAwesome,
|
||||
Roboto,
|
||||
Helvetica,
|
||||
Arial,
|
||||
sans-serif;
|
||||
font-size: 13px;
|
||||
color: #c0caf5;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
border-top: 3px solid transparent;
|
||||
color: #c0caf5;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#window {
|
||||
border-radius: 20px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
window#waybar.chromium {
|
||||
background-color: #000;
|
||||
border: none;
|
||||
}
|
||||
|
||||
button {
|
||||
/* Use box-shadow instead of border so the text isn't offset */
|
||||
box-shadow: inset 0 3px transparent;
|
||||
/* Avoid rounded borders under each button name */
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||
button:hover {
|
||||
background: inherit;
|
||||
box-shadow: inset 0 3px #c0caf5;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 0 5px;
|
||||
color: #c0caf5;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
box-shadow: inset 0 3px #c0caf5;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: #db4b4b;
|
||||
}
|
||||
|
||||
#mode {
|
||||
border-bottom: 3px solid #c0caf5;
|
||||
}
|
||||
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#disk,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#custom-media,
|
||||
#tray,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#scratchpad,
|
||||
#mpd,
|
||||
#custom-wireguard,
|
||||
#custom-github,
|
||||
#custom-dunst {
|
||||
padding: 0 10px;
|
||||
font-weight: bold;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#custom-pipewire.muted {
|
||||
color: #414868;
|
||||
}
|
||||
|
||||
#window,
|
||||
#workspaces {
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
/* If workspaces is the leftmost module, omit left margin */
|
||||
.modules-left>widget:first-child>#workspaces {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/* If workspaces is the rightmost module, omit right margin */
|
||||
.modules-right>widget:last-child>#workspaces {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#battery.charging,
|
||||
#battery.plugged {
|
||||
color: #1abc9c;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
color: #c0caf5;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.warning:not(.charging) {
|
||||
color: #e0af68;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: #db4b4b;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
color: #414868;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
color: #41a6b5;
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
color: #db4b4b;
|
||||
}
|
||||
|
||||
#tray>.passive {
|
||||
-gtk-icon-effect: dim;
|
||||
}
|
||||
|
||||
#tray>.needs-attention {
|
||||
-gtk-icon-effect: highlight;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
color: #db4b4b;
|
||||
}
|
||||
2
config/x11/opt-apps
Normal file → Executable file
2
config/x11/opt-apps
Normal file → Executable file
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
autostart="picom nextcloud transmission-daemon discord syncthing mullvad-vpn spotify-launcher kotatogram-desktop floorp"
|
||||
autostart="picom nextcloud transmission-daemon discord syncthing mullvad-vpn spotify-launcher AyuGram floorp"
|
||||
|
||||
for program in $autostart; do
|
||||
pidof -sx "$program" || "$program" &
|
||||
|
||||
0
config/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh
Normal file → Executable file
0
config/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh
Normal file → Executable file
@@ -30,38 +30,38 @@ hash = "62251f94eb67648d42cdfcfb8be0fad2"
|
||||
|
||||
[[plugin.deps]]
|
||||
use = "yazi-rs/plugins:git"
|
||||
rev = "d1c8baa"
|
||||
rev = "8f1d971"
|
||||
hash = "63b6c222bf2103b3023389dde5e2ecfe"
|
||||
|
||||
[[plugin.deps]]
|
||||
use = "yazi-rs/plugins:chmod"
|
||||
rev = "d1c8baa"
|
||||
rev = "8f1d971"
|
||||
hash = "8ad3e90b079190b4905f24a44f4ca06b"
|
||||
|
||||
[[plugin.deps]]
|
||||
use = "yazi-rs/plugins:full-border"
|
||||
rev = "d1c8baa"
|
||||
rev = "8f1d971"
|
||||
hash = "3996fc74044bc44144b323686f887e1"
|
||||
|
||||
[[plugin.deps]]
|
||||
use = "yazi-rs/plugins:mount"
|
||||
rev = "d1c8baa"
|
||||
hash = "435a2af56ecfb3d05755fd5e24977d8b"
|
||||
rev = "8f1d971"
|
||||
hash = "4fccaaf10c36dc2466e2438a386ff017"
|
||||
|
||||
[[plugin.deps]]
|
||||
use = "yazi-rs/plugins:smart-filter"
|
||||
rev = "d1c8baa"
|
||||
rev = "8f1d971"
|
||||
hash = "bcda8eeb3f4013bae156aecabfc745e8"
|
||||
|
||||
[[plugin.deps]]
|
||||
use = "yazi-rs/plugins:diff"
|
||||
rev = "d1c8baa"
|
||||
rev = "8f1d971"
|
||||
hash = "82376c3381ae915fd799d40f4dd4c6cd"
|
||||
|
||||
[[plugin.deps]]
|
||||
use = "AnirudhG07/rich-preview"
|
||||
rev = "843c3fa"
|
||||
hash = "b4040931f0d2f9670ddb4923e55cd881"
|
||||
rev = "831234e"
|
||||
hash = "ed3363e256e210593f0f8e4cec3e36a9"
|
||||
|
||||
[[plugin.deps]]
|
||||
use = "macydnah/office"
|
||||
|
||||
@@ -50,6 +50,8 @@ end)
|
||||
local M = {
|
||||
keys = {
|
||||
{ on = "q", run = "quit" },
|
||||
{ on = "<Esc>", run = "quit" },
|
||||
{ on = "<Enter>", run = { "enter", "quit" } },
|
||||
|
||||
{ on = "k", run = "up" },
|
||||
{ on = "j", run = "down" },
|
||||
|
||||
@@ -15,7 +15,7 @@ Preview file types using `rich` command in Yazi. This plugin allows preview for
|
||||
## Requirements
|
||||
|
||||
- [Yazi](https://github.com/sxyazi/yazi) v25.4.8 or higher.
|
||||
- [rich-cli](https://github.com/Textualize/rich) v13.7.1 or higher.
|
||||
- [rich-cli](https://github.com/Textualize/rich-cli) v13.7.1 or higher.
|
||||
|
||||
## Installation
|
||||
|
||||
|
||||
@@ -42,9 +42,10 @@ function M:peek(job)
|
||||
ya.emit("peek", { math.max(0, i - limit), only_if = job.file.url, upper_bound = true })
|
||||
else
|
||||
lines = lines:gsub("\t", string.rep(" ", rt.preview.tab_size))
|
||||
ya.preview_widgets(job, {
|
||||
ui.Text.parse(lines):area(job.area):wrap(rt.preview.wrap == "yes" and ui.Text.WRAP or ui.Text.WRAP_NO),
|
||||
})
|
||||
ya.preview_widget(
|
||||
job,
|
||||
ui.Text.parse(lines):area(job.area):wrap(rt.preview.wrap == "yes" and ui.Wrap.YES or ui.Wrap.NO)
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -112,11 +112,16 @@ prepend_previewers = [
|
||||
{mime = "application/bittorrent", run = "torrent-preview"},
|
||||
# Archive previewer
|
||||
{mime = "application/*zip", run = "ouch"},
|
||||
{mime = "application/tar", run = "ouch"},
|
||||
{mime = "application/bzip2", run = "ouch"},
|
||||
{mime = "application/7z-compressed", run = "ouch"},
|
||||
{mime = "application/rar", run = "ouch"},
|
||||
{mime = "application/x-tar", run = "ouch"},
|
||||
{mime = "application/x-bzip2", run = "ouch"},
|
||||
{mime = "application/x-7z-compressed", run = "ouch"},
|
||||
{mime = "application/x-rar", run = "ouch"},
|
||||
{mime = "application/vnd.rar", run = "ouch"},
|
||||
{mime = "application/x-xz", run = "ouch"},
|
||||
{mime = "application/xz", run = "ouch"},
|
||||
{mime = "application/x-zstd", run = "ouch"},
|
||||
{mime = "application/zstd", run = "ouch"},
|
||||
{mime = "application/java-archive", run = "ouch"},
|
||||
# Office Documents
|
||||
{mime = "application/openxmlformats-officedocument.*", run = "office"},
|
||||
{mime = "application/oasis.opendocument.*", run = "office"},
|
||||
|
||||
@@ -195,3 +195,5 @@ export PATH="$BUN_INSTALL/bin:$PATH"
|
||||
[ -s "/home/kristofers/.bun/_bun" ] && source "/home/kristofers/.bun/_bun"
|
||||
|
||||
. "$HOME/.local/share/../bin/env"
|
||||
|
||||
[ -f "$HOME/.ghcup/env" ] && . "$HOME/.ghcup/env" # ghcup-env
|
||||
|
||||
@@ -665,7 +665,6 @@ _bun_test_completion() {
|
||||
'--timeout[Set the per-test timeout in milliseconds, default is 5000.]:timeout' \
|
||||
'--update-snapshots[Update snapshot files]' \
|
||||
'--rerun-each[Re-run each test file <NUMBER> times, helps catch certain bugs]:rerun' \
|
||||
'--only[Only run tests that are marked with "test.only()"]' \
|
||||
'--todo[Include tests that are marked with "test.todo()"]' \
|
||||
'--coverage[Generate a coverage profile]' \
|
||||
'--bail[Exit the test suite after <NUMBER> failures. If you do not specify a number, it defaults to 1.]:bail' \
|
||||
|
||||
Reference in New Issue
Block a user