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:
Kristofers Solo 2025-10-03 15:09:23 +03:00
parent c50febb922
commit 66f1040fc5
Signed by: kristoferssolo
GPG Key ID: 74FF8144483D82C8
682 changed files with 1237 additions and 56356 deletions

View File

@ -6,6 +6,7 @@ dpi = "96"
font_size = "12" font_size = "12"
terminal = "alacritty" terminal = "alacritty"
browser = "floorp" browser = "floorp"
waybar_font_size = "14px"
[files] [files]
"config/niri/config-laptop.kdl" = {target = "~/.config/niri/config.kdl", type = "template"} "config/niri/config-laptop.kdl" = {target = "~/.config/niri/config.kdl", type = "template"}

View File

@ -1,10 +1,11 @@
packages = [ "x11" ] packages = [ "wayland" ]
[variables] [variables]
dpi = "96" dpi = "96"
font_size = "10" font_size = "10"
terminal = "alacritty" terminal = "alacritty"
browser = "floorp" browser = "floorp"
waybar_font_size = "12px"
[files] [files]
"config/niri/config-desktop.kdl" = "~/.config/niri/config.kdl" "config/niri/config-desktop.kdl" = "~/.config/niri/config.kdl"

View File

@ -71,8 +71,8 @@ depends = [ "shell" ]
depends = [ "torrent", "zathura", "email" ] depends = [ "torrent", "zathura", "email" ]
[misc.files] [misc.files]
"config/batrc" = "~/.config/bat/config" "config/bat/" = "~/.config/bat/"
"config/tmThemes/" = "~/.config/silicon/themes/" "config/silicon/" = "~/.config/silicon/"
"config/btop/" = "~/.config/btop/" "config/btop/" = "~/.config/btop/"
"config/htoprc" = "~/.config/htop/htoprc" "config/htoprc" = "~/.config/htop/htoprc"
"config/fastfetch/" = "~/.config/fastfetch/" "config/fastfetch/" = "~/.config/fastfetch/"
@ -137,6 +137,7 @@ depends = [ "misc", "local", "eww", "lock" ]
[waybar.files] [waybar.files]
"config/waybar/" = "~/.config/waybar/" "config/waybar/" = "~/.config/waybar/"
"config/waybar/config.jsonc" = {target = "~/.config/waybar/config.jsonc", type = "template"} "config/waybar/config.jsonc" = {target = "~/.config/waybar/config.jsonc", type = "template"}
"config/waybar/style.css" = {target = "~/.config/waybar/style.css", type = "template"}
[lock.files] [lock.files]
"config/gtklock/" = "~/.config/gtklock/" "config/gtklock/" = "~/.config/gtklock/"
@ -178,9 +179,12 @@ depends = [ "zsh", "tmux", "fish" ]
[dev.files] [dev.files]
"config/sqruff/" = "~/.config/sqruff/" "config/sqruff/" = "~/.config/sqruff/"
"config/asm-lsp/" = "~/.config/asm-lsp/" "config/asm-lsp/" = "~/.config/asm-lsp/"
"config/containers/" = "~/.config/containers/"
[apps.files] [apps.files]
"config/Vencord/" = "~/.config/Vencord/" "config/Vencord/" = "~/.config/Vencord/"
"config/obs-studio/" = "~/.config/obs-studio/"
[gtk.files] [gtk.files]
"config/gtk-3.0/" = "~/.config/gtk-3.0/" "config/gtk-3.0/" = "~/.config/gtk-3.0/"

0
config/HybridBar/scripts/change-active-workspace Normal file → Executable file
View File

0
config/HybridBar/scripts/get-active-workspace Normal file → Executable file
View File

0
config/HybridBar/scripts/get-window-title Normal file → Executable file
View File

0
config/HybridBar/scripts/get-workspaces Normal file → Executable file
View File

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
[default_config] [default_config]
version = "0.10.0" version = "0.10.0"
assembler = "gas" assembler = "gas"
instruction_set = "riscv" instruction_set = "arm"
[default_config.opts] [default_config.opts]
# compiler = "zig" # compiler = "zig"

View 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
View File

0
config/eww/scripts/get-active-workspace Normal file → Executable file
View File

0
config/eww/scripts/get-window-title Normal file → Executable file
View File

0
config/eww/scripts/get-workspaces Normal file → Executable file
View File

0
config/eww/scripts/mem-ad Normal file → Executable file
View File

0
config/eww/scripts/memory Normal file → Executable file
View File

0
config/eww/scripts/music_info Normal file → Executable file
View File

0
config/eww/scripts/music_info.bak Normal file → Executable file
View File

0
config/eww/scripts/pop Normal file → Executable file
View File

0
config/eww/scripts/wifi Normal file → Executable file
View File

0
config/eww/scripts/workspace Normal file → Executable file
View File

View File

@ -18,7 +18,7 @@ alias keychain="keychain --dir $XDG_RUNTIME_DIR/keychain"
alias diff="diff --color=auto" alias diff="diff --color=auto"
alias grep="rg --color=auto" alias grep="rg --color=auto"
alias ip="ip -color=auto" alias ip="ip -color=auto"
alias less="moar" alias less="moor"
alias ls="eza -a --icons --group-directories-first" alias ls="eza -a --icons --group-directories-first"
# These common commands ate just too long! Abbreviate them # These common commands ate just too long! Abbreviate them

View File

@ -1,57 +1,35 @@
# Source startup file #!/usr/bin/env fish
# if test -f "$XDG_CONFIG_HOME/zsh/startup"
# source "$XDG_CONFIG_HOME/zsh/startup"
# end
# Starship prompt
starship init fish | source starship init fish | source
zoxide init fish | source
# Aliases set -g fish_history_size 1000000
if test -f "$XDG_CONFIG_HOME/fish/alias.fish"
source "$XDG_CONFIG_HOME/fish/alias.fish"
end
# Environment variables set -gx fish_complete_path "$XDG_CONFIG_HOME/fish/completions" $fish_complete_path
set -x KEYTIMEOUT 1
# Functions # fzf configuration
function cd set -gx FZF_DEFAULT_OPTS "--height 40% --layout=reverse --border"
if test (count $argv) -eq 0 set -gx FZF_DEFAULT_COMMAND "fd --type f"
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
function yazicd function yazicd
set tmp (mktemp -t "yazi-cwd.XXXXXX") set tmp (mktemp -t "yazi-cwd.XXXXXX")
yazi $argv --cwd-file="$tmp" yazi $argv --cwd-file="$tmp"
set cwd (cat "$tmp") if read -z cwd < "$tmp"; and [ -n "$cwd" ]; and [ "$cwd" != "$PWD" ]
if test -n "$cwd" -a "$cwd" != "$PWD" builtin z -- "$cwd" && eza -a --icons --group-directories-first
cd "$cwd" end
eza -a --icons --group-directories-first rm -f -- "$tmp" >/dev/null 2>&1
end
rm -f "$tmp"
end end
# Keybindings # # PATH configuration
fish_vi_key_bindings # fish_add_path $BUN_INSTALL/bin
# fish_add_path $HOME/.local/bin
#
# Source other files # # Environment setup
# if test -f "$HOME/.local/share/../bin/env" # if test -f "$HOME/.local/share/bin/env"
# source "$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 # end

0
config/git/check_email.sh Executable file → Normal file
View File

View File

@ -1 +0,0 @@
../../local/share/themes/rose-pine-gtk/gtk-3.0/dist/gtk-dark.css

View File

@ -1 +0,0 @@
../../local/share/themes/rose-pine-gtk/gtk-3.0/dist/gtk.css

1
config/gtk-3.0/gtk.css Normal file
View File

@ -0,0 +1 @@
@import url("resource:///org/numixproject/gtk/dist/gtk.css");

View File

@ -1,20 +1,22 @@
[Settings] [Settings]
gtk-application-prefer-dark-theme=true gtk-theme-name=rose-pine-gtk
gtk-button-images=1 gtk-icon-theme-name=RoséPine
gtk-font-name=Noto Sans, 10
gtk-cursor-theme-name=Adwaita gtk-cursor-theme-name=Adwaita
gtk-cursor-theme-size=24 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-decoration-layout=icon:minimize,maximize,close
gtk-enable-animations=true 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-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-dpi=98304
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull

View File

@ -1 +0,0 @@
../../local/share/themes/gtk4/gtk4/rose-pine.css

View File

@ -1,9 +1,8 @@
@define-color accent_bg_color #c4a7e7; @define-color accent_bg_color #c4a7e7;
@define-color accent_fg_color #191724; @define-color accent_fg_color #191724;
@define-color accent_color #c4a7e7; @define-color accent_color #c4a7e7;
@define-color destructive_bg_color #eb6f92; @define-color destructive_bg_color #eb6f92;
@define-color destructive_fg_color #191724; @define-color destructive_fg_color #191724;
@define-color destructive_color #eb6f92; @define-color destructive_color #eb6f92;
@ -30,7 +29,6 @@
@define-color headerbar_backdrop_color @window_bg_color; @define-color headerbar_backdrop_color @window_bg_color;
@define-color headerbar_shade_color #191724; @define-color headerbar_shade_color #191724;
@define-color card_bg_color #1f1d2e; @define-color card_bg_color #1f1d2e;
@define-color card_fg_color #e0def4; @define-color card_fg_color #e0def4;
@define-color card_shade_color #1f1d2e; @define-color card_shade_color #1f1d2e;

0
config/lf/cleaner Normal file → Executable file
View File

0
config/lf/lfrc Normal file → Executable file
View File

View File

@ -3,13 +3,29 @@
// Check the wiki for a full description of the configuration: // Check the wiki for a full description of the configuration:
// https://github.com/YaLTeR/niri/wiki/Configuration:-Introduction // 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 { environment {
QT_QPA_PLATFORM "wayland" QT_QPA_PLATFORM "wayland"
XDG_SESSION_TYPE "wayland" XDG_SESSION_TYPE "wayland"
XDG_CURRENT_DESKTOP "niri" XDG_CURRENT_DESKTOP "niri"
XDG_SESSION_DESKTOP "niri" XDG_SESSION_DESKTOP "niri"
WM "niri" WM "niri"
DISPLAY ":0" DISPLAY ":0" // for X11 apps to run
ELECTRON_OZONE_PLATFORM_HINT "auto" ELECTRON_OZONE_PLATFORM_HINT "auto"
} }
@ -112,17 +128,6 @@ output "HDMI-A-1" {
backdrop-color "#000" 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. // Settings that influence how windows are positioned and sized.
// Find more information on the wiki: // Find more information on the wiki:
@ -279,7 +284,6 @@ layout {
// See the binds section below for more spawn examples. // See the binds section below for more spawn examples.
// This line starts waybar, a commonly used bar for Wayland compositors. // This line starts waybar, a commonly used bar for Wayland compositors.
spawn-at-startup "xwayland-satellite"
spawn-at-startup "pipewire" spawn-at-startup "pipewire"
spawn-at-startup "pipewire-pulse" spawn-at-startup "pipewire-pulse"
spawn-at-startup "wireplumber" spawn-at-startup "wireplumber"
@ -287,12 +291,14 @@ spawn-at-startup "mako"
spawn-at-startup "waybar" spawn-at-startup "waybar"
// spawn-at-startup "dbus-update-activation-environment" "WAYLAND_DISPLAY" "XDG_CURRENT_DESKTOP" "DISPLAY" "XAUTHORITY" // spawn-at-startup "dbus-update-activation-environment" "WAYLAND_DISPLAY" "XDG_CURRENT_DESKTOP" "DISPLAY" "XAUTHORITY"
spawn-at-startup "nextcloud" 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 "xrdb" "~/.config/x11/xresources"
spawn-at-startup "transmission-daemon" spawn-at-startup "transmission-daemon"
spawn-at-startup "floorp" spawn-at-startup "{{browser}}"
spawn-at-startup "kotatogram-desktop" // spawn-at-startup "flatpak" "run" "com.ayugram.desktop"
spawn-at-startup "discord" spawn-at-startup "AyuGram"
spawn-at-startup "vesktop"
spawn-at-startup "swap-wallpaper"
spawn-at-startup "spotify-launcher" spawn-at-startup "spotify-launcher"
// Uncomment this line to ask the clients to omit their client-side decorations if possible. // Uncomment this line to ask the clients to omit their client-side decorations if possible.
@ -318,7 +324,7 @@ animations {
off off
// Slow down all animations by this factor. Values below 1 speed them up instead. // Slow down all animations by this factor. Values below 1 speed them up instead.
// slowdown 3.0 slowdown 3.0
} }
layer-rule { layer-rule {
@ -326,6 +332,9 @@ layer-rule {
block-out-from "screencast" block-out-from "screencast"
} }
window-rule {
draw-border-with-background false
}
// Window rules let you adjust behavior for individual windows. // Window rules let you adjust behavior for individual windows.
// Find more information on the wiki: // Find more information on the wiki:
// https://github.com/YaLTeR/niri/wiki/Configuration:-Window-Rules // https://github.com/YaLTeR/niri/wiki/Configuration:-Window-Rules
@ -346,10 +355,16 @@ window-rule {
// - host Firefox (app-id is "firefox") // - host Firefox (app-id is "firefox")
// - Flatpak Firefox (app-id is "org.mozilla.firefox") // - Flatpak Firefox (app-id is "org.mozilla.firefox")
match app-id=r#"firefox$"# title="^Picture-in-Picture$" 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 open-floating true
} }
window-rule {
match title=r#"^Extension:.*Bitwarden.*"#
default-floating-position x=10 y=10 relative-to="top-right"
}
window-rule { window-rule {
match app-id="steam" title=r#"^notificationtoasts_\d+_desktop$"# match app-id="steam" title=r#"^notificationtoasts_\d+_desktop$"#
default-floating-position x=10 y=10 relative-to="bottom-right" default-floating-position x=10 y=10 relative-to="bottom-right"
@ -360,6 +375,8 @@ window-rule {
window-rule { window-rule {
match app-id=r#"^org\.keepassxc\.KeePassXC$"# match app-id=r#"^org\.keepassxc\.KeePassXC$"#
match app-id=r#"^org\.gnome\.World\.Secrets$"# match app-id=r#"^org\.gnome\.World\.Secrets$"#
match app-id=r#"^org\.gnome\.World\.Secrets$"#
match title="Bitwarden"
block-out-from "screen-capture" block-out-from "screen-capture"
@ -368,19 +385,41 @@ window-rule {
} }
window-rule { window-rule {
match at-startup=true app-id="floorp" match at-startup=true app-id="floorp-default"
open-maximized true
open-on-workspace "browser" open-on-workspace "browser"
open-maximized true
} }
window-rule { window-rule {
match at-startup=true app-id=r#"^org\.telegram\.desktop$"# 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#"^org\.gnome\.Fractal$"#
match at-startup=true app-id=r#"discord"# match at-startup=true app-id=r#"discord"#
match at-startup=true app-id=r#"vesktop"# 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$" exclude app-id=r#"^org\.telegram\.desktop$"# title="^Media viewer$"
open-on-workspace "chat" 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. // Example: enable rounded corners for all windows.
@ -406,9 +445,9 @@ binds {
Mod+Shift+Slash { show-hotkey-overlay; } Mod+Shift+Slash { show-hotkey-overlay; }
// Suggested binds for running programs: terminal, app launcher, screen locker. // 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"; } 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"; } // 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. // 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. // Example volume keys mappings for PipeWire & WirePlumber.
// The allow-when-locked=true property makes them work even when the session is locked. // 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+"; } XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume $(get-spotify-id) 0.01+"; }
XF86AudioLowerVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.01-"; } XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume $(get-spotify-id) 0.01-"; }
XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; } XF86AudioMute allow-when-locked=true { spawn "sp" "play"; }
XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; } 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. // Open/close the Overview: a zoomed-out view of workspaces and windows.
// You can also move the mouse into the top-left hot corner, // 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+Shift+Ctrl+Left { move-workspace-to-monitor-left; }
// ... // ...
Mod+Page_Down { focus-workspace-down; } Mod+Down { focus-workspace-down; }
Mod+Page_Up { focus-workspace-up; } Mod+Up { focus-workspace-up; }
Mod+U { focus-workspace-down; } Mod+Ctrl+Down { move-column-to-workspace-down; }
Mod+I { focus-workspace-up; } Mod+Ctrl+Up { move-column-to-workspace-up; }
Mod+Ctrl+Page_Down { move-column-to-workspace-down; }
Mod+Ctrl+Page_Up { move-column-to-workspace-up; } Mod+Alt+J { focus-workspace-down; }
Mod+Ctrl+U { move-column-to-workspace-down; } Mod+Alt+K { focus-workspace-up; }
Mod+Ctrl+I { move-column-to-workspace-up; }
// Alternatively, there are commands to move just a single window: // Alternatively, there are commands to move just a single window:
// Mod+Ctrl+Page_Down { move-window-to-workspace-down; } // Mod+Ctrl+Page_Down { move-window-to-workspace-down; }
// ... // ...
Mod+Shift+Page_Down { move-workspace-down; } Mod+Shift+Down { move-workspace-down; }
Mod+Shift+Page_Up { move-workspace-up; } Mod+Shift+Up { move-workspace-up; }
Mod+Shift+U { move-workspace-down; }
Mod+Shift+I { move-workspace-up; }
// You can bind mouse wheel scroll ticks using the following syntax. // You can bind mouse wheel scroll ticks using the following syntax.
// These binds will change direction based on the natural-scroll setting. // 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 // For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on
// will all refer to the 3rd workspace. // will all refer to the 3rd workspace.
Mod+1 { focus-workspace 1; } Mod+1 { focus-workspace "browser"; }
Mod+2 { focus-workspace 2; } Mod+2 { focus-workspace "terminal"; }
Mod+3 { focus-workspace 3; } Mod+3 { focus-workspace 3; }
Mod+4 { focus-workspace 4; } Mod+4 { focus-workspace 4; }
Mod+5 { focus-workspace 5; } Mod+5 { focus-workspace 5; }
Mod+6 { focus-workspace 6; } Mod+6 { focus-workspace 6; }
Mod+7 { focus-workspace 7; } Mod+7 { focus-workspace 7; }
Mod+8 { focus-workspace 8; } Mod+8 { focus-workspace "chat"; }
Mod+9 { focus-workspace 9; } Mod+9 { focus-workspace "music"; }
Mod+Shift+1 { move-column-to-workspace 1; } Mod+Shift+1 { move-column-to-workspace "browser"; }
Mod+Shift+2 { move-column-to-workspace 2; } Mod+Shift+2 { move-column-to-workspace "terminal"; }
Mod+Shift+3 { move-column-to-workspace 3; } Mod+Shift+3 { move-column-to-workspace 3; }
Mod+Shift+4 { move-column-to-workspace 4; } Mod+Shift+4 { move-column-to-workspace 4; }
Mod+Shift+5 { move-column-to-workspace 5; } Mod+Shift+5 { move-column-to-workspace 5; }
Mod+Shift+6 { move-column-to-workspace 6; } Mod+Shift+6 { move-column-to-workspace 6; }
Mod+Shift+7 { move-column-to-workspace 7; } Mod+Shift+7 { move-column-to-workspace 7; }
Mod+Shift+8 { move-column-to-workspace 8; } Mod+Shift+8 { move-column-to-workspace "chat"; }
Mod+Shift+9 { move-column-to-workspace 9; } Mod+Shift+9 { move-column-to-workspace "music"; }
// Alternatively, there are commands to move just a single window: // Alternatively, there are commands to move just a single window:
// Mod+Ctrl+1 { move-window-to-workspace 1; } // Mod+Ctrl+1 { move-window-to-workspace 1; }
@ -610,9 +648,9 @@ binds {
// Mod+Space { switch-layout "next"; } // Mod+Space { switch-layout "next"; }
// Mod+Shift+Space { switch-layout "prev"; } // Mod+Shift+Space { switch-layout "prev"; }
Print { screenshot; } Mod+Delete { screenshot; }
Ctrl+Print { screenshot-screen; } Mod+Shift+Delete { screenshot-screen; }
Alt+Print { screenshot-window; } Mod+Alt+Delete { screenshot-window; }
// Applications such as remote-desktop clients and software KVM switches may // Applications such as remote-desktop clients and software KVM switches may
// request that niri stops processing the keyboard shortcuts defined here // 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 // Powers off the monitors. To turn them back on, do any input like
// moving the mouse or pressing any other key. // 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+Shift+P { spawn "swap-wallpaper"; }
Mod+B { spawn "floorp"; } Mod+B { spawn "{{browser}}"; }
} }
hotkey-overlay { hotkey-overlay {

View File

@ -3,10 +3,15 @@
// Check the wiki for a full description of the configuration: // Check the wiki for a full description of the configuration:
// https://github.com/YaLTeR/niri/wiki/Configuration:-Introduction // https://github.com/YaLTeR/niri/wiki/Configuration:-Introduction
workspace "browser" workspace "1"
workspace "terminal" workspace "2"
workspace "chat" workspace "3"
workspace "music" workspace "4"
workspace "5"
workspace "6"
workspace "7"
workspace "8"
workspace "9"
environment { environment {
QT_QPA_PLATFORM "wayland" QT_QPA_PLATFORM "wayland"
@ -14,7 +19,7 @@ environment {
XDG_CURRENT_DESKTOP "niri" XDG_CURRENT_DESKTOP "niri"
XDG_SESSION_DESKTOP "niri" XDG_SESSION_DESKTOP "niri"
WM "niri" WM "niri"
DISPLAY null DISPLAY ":0" // for X11 appls to run
ELECTRON_OZONE_PLATFORM_HINT "auto" ELECTRON_OZONE_PLATFORM_HINT "auto"
} }
@ -286,13 +291,10 @@ layout {
// See the binds section below for more spawn examples. // See the binds section below for more spawn examples.
// This line starts waybar, a commonly used bar for Wayland compositors. // This line starts waybar, a commonly used bar for Wayland compositors.
spawn-at-startup "xwayland-satellite"
spawn-at-startup "pipewire" spawn-at-startup "pipewire"
spawn-at-startup "pipewire-pulse" spawn-at-startup "pipewire-pulse"
spawn-at-startup "wireplumber" spawn-at-startup "wireplumber"
spawn-at-startup "waybar" spawn-at-startup "waybar"
// spawn-at-startup "eww" "daemon"
// spawn-at-startup "eww" "open bar"
spawn-at-startup "mako" spawn-at-startup "mako"
// spawn-at-startup "dbus-update-activation-environment" "WAYLAND_DISPLAY" "XDG_CURRENT_DESKTOP" "DISPLAY" "XAUTHORITY" // spawn-at-startup "dbus-update-activation-environment" "WAYLAND_DISPLAY" "XDG_CURRENT_DESKTOP" "DISPLAY" "XAUTHORITY"
spawn-at-startup "nextcloud" spawn-at-startup "nextcloud"
@ -300,7 +302,7 @@ spawn-at-startup "nextcloud"
spawn-at-startup "xrdb" "~/.config/x11/xresources" spawn-at-startup "xrdb" "~/.config/x11/xresources"
spawn-at-startup "transmission-daemon" spawn-at-startup "transmission-daemon"
spawn-at-startup "{{browser}}" spawn-at-startup "{{browser}}"
spawn-at-startup "kotatogram-desktop" spawn-at-startup "flatpak" "run" "com.ayugram.desktop"
spawn-at-startup "vesktop" spawn-at-startup "vesktop"
spawn-at-startup "swap-wallpaper" spawn-at-startup "swap-wallpaper"
@ -383,17 +385,19 @@ window-rule {
window-rule { window-rule {
match at-startup=true app-id="floorp" match at-startup=true app-id="floorp"
open-maximized true open-maximized true
open-on-workspace "browser" open-on-workspace "1"
} }
window-rule { window-rule {
match at-startup=true app-id=r#"^org\.telegram\.desktop$"# 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#"^org\.gnome\.Fractal$"#
match at-startup=true app-id=r#"discord"# match at-startup=true app-id=r#"discord"#
match at-startup=true app-id=r#"vesktop"# 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$" exclude app-id=r#"^org\.telegram\.desktop$"# title="^Media viewer$"
open-on-workspace "chat" open-on-workspace "8"
opacity 0.95 opacity 0.95
} }
@ -541,24 +545,24 @@ binds {
// //
// For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on // For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on
// will all refer to the 3rd workspace. // will all refer to the 3rd workspace.
Mod+1 { focus-workspace "browser"; } Mod+1 { focus-workspace "1"; }
Mod+2 { focus-workspace "terminal"; } Mod+2 { focus-workspace "2"; }
Mod+3 { focus-workspace 3; } Mod+3 { focus-workspace "3"; }
Mod+4 { focus-workspace 4; } Mod+4 { focus-workspace "4"; }
Mod+5 { focus-workspace 5; } Mod+5 { focus-workspace "5"; }
Mod+6 { focus-workspace 6; } Mod+6 { focus-workspace "6"; }
Mod+7 { focus-workspace 7; } Mod+7 { focus-workspace "7"; }
Mod+8 { focus-workspace "chat"; } Mod+8 { focus-workspace "8"; }
Mod+9 { focus-workspace "music"; } Mod+9 { focus-workspace "9"; }
Mod+Shift+1 { move-column-to-workspace "browser"; } Mod+Shift+1 { move-column-to-workspace "1"; }
Mod+Shift+2 { move-column-to-workspace "terminal"; } Mod+Shift+2 { move-column-to-workspace "2"; }
Mod+Shift+3 { move-column-to-workspace 3; } Mod+Shift+3 { move-column-to-workspace "3"; }
Mod+Shift+4 { move-column-to-workspace 4; } Mod+Shift+4 { move-column-to-workspace "4"; }
Mod+Shift+5 { move-column-to-workspace 5; } Mod+Shift+5 { move-column-to-workspace "5"; }
Mod+Shift+6 { move-column-to-workspace 6; } Mod+Shift+6 { move-column-to-workspace "6"; }
Mod+Shift+7 { move-column-to-workspace 7; } Mod+Shift+7 { move-column-to-workspace "7"; }
Mod+Shift+8 { move-column-to-workspace "chat"; } Mod+Shift+8 { move-column-to-workspace "8"; }
Mod+Shift+9 { move-column-to-workspace "music"; } Mod+Shift+9 { move-column-to-workspace "9"; }
// Alternatively, there are commands to move just a single window: // Alternatively, there are commands to move just a single window:
// Mod+Ctrl+1 { move-window-to-workspace 1; } // Mod+Ctrl+1 { move-window-to-workspace 1; }

0
config/nsxiv/exec/image-info Normal file → Executable file
View File

0
config/nsxiv/exec/key-handler Normal file → Executable file
View File

0
config/nsxiv/exec/nsxiv-url Normal file → Executable file
View File

0
config/nsxiv/exec/thumb-info Normal file → Executable file
View File

0
config/nsxiv/exec/win-title Normal file → Executable file
View File

1
config/obs-studio Submodule

@ -0,0 +1 @@
Subproject commit b48939f1fa01687094c86a443a9372c0351f79b4

View File

@ -11,6 +11,7 @@ alias \
mkdir="mkdir -pv" \ mkdir="mkdir -pv" \
mv="mv -iv" \ mv="mv -iv" \
nsxiv="nsxiv -a" \ nsxiv="nsxiv -a" \
img="oculante" \
rm="rm -vI" \ rm="rm -vI" \
wget="wget --hsts-file=$XDG_DATA_HOME/wget-hsts" \ wget="wget --hsts-file=$XDG_DATA_HOME/wget-hsts" \
keychain="keychain --dir $XDG_RUNTIME_DIR/keychain" keychain="keychain --dir $XDG_RUNTIME_DIR/keychain"
@ -20,7 +21,7 @@ alias \
diff="diff --color=auto" \ diff="diff --color=auto" \
grep="rg --color=auto" \ grep="rg --color=auto" \
ip="ip -color=auto" \ ip="ip -color=auto" \
less="moar" \ less="moor" \
ls="eza -a --icons --group-directories-first" ls="eza -a --icons --group-directories-first"
# These common commands ate just too long! Abbreviate them # These common commands ate just too long! Abbreviate them

View File

@ -6,11 +6,14 @@ typeset -U PATH path
# If you don't plan on reverting to bash, you can remove the link in ~/.profile # If you don't plan on reverting to bash, you can remove the link in ~/.profile
# to clean up. # to clean up.
export BUN_INSTALL="$XDG_DATA_HOME/bun"
# Adds `~/.local/bin` to $PATH # Adds `~/.local/bin` to $PATH
export PATH="$PATH:${$(find ~/.local/bin -type d -printf %p:)%%:}" export PATH="$PATH:${$(find ~/.local/bin -type d -printf %p:)%%:}"
export PATH="$PATH:~/.spicetify" export PATH="$PATH:~/.spicetify"
export PATH="$PATH:${$(find ~/.cache/.bun/bin -type d -printf %p:)%%:}" export PATH="$PATH:${$(find ~/.cache/.bun/bin -type d -printf %p:)%%:}"
export PATH="$JAVA_HOME/bin:$PATH" export PATH="$JAVA_HOME/bin:$PATH"
export PATH="$BUN_INSTALL/bin:$PATH"
# Disable files # Disable files
export LESSHISTFILE=- export LESSHISTFILE=-
@ -25,13 +28,14 @@ unsetopt PROMPT_SP
# Default Apps # Default Apps
export BROWSER="floorp" export BROWSER="floorp"
export EDITOR="nvim" export EDITOR="nvim"
export IMAGE="nsxiv" export IMAGE="oculante"
export READER="zathura" export READER="zathura"
export TERMINAL="{{terminal}}" export TERMINAL="{{terminal}}"
export VIDEO="mpv" export VIDEO="mpv"
export VISUAL="$EDITOR" export VISUAL="$EDITOR"
export WM="awesome" export WM="awesome"
export GTK_THEME=rose-pine-gtk
# $HOME Clean-up # $HOME Clean-up
export XDG_CACHE_HOME="$HOME/.cache" export XDG_CACHE_HOME="$HOME/.cache"

View File

@ -12,7 +12,8 @@
"spacing": 0, // Gaps between modules (4px) "spacing": 0, // Gaps between modules (4px)
// Choose the order of the modules // Choose the order of the modules
"modules-left": [ "modules-left": [
"wlr/taskbar" // "wlr/taskbar"
"cffi/niri-taskbar"
], ],
"modules-center": [], "modules-center": [],
"modules-right": [ "modules-right": [
@ -49,6 +50,16 @@
"on-click": "niri msg action quit" "on-click": "niri msg action quit"
}, },
"wlr/taskbar": { "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, // "all-outputs": true,
// "format": "{icon} {title} {app_id}", // "format": "{icon} {title} {app_id}",
"format": "{icon}", "format": "{icon}",

0
config/waybar/scripts/mediaplayer.py Executable file → Normal file
View File

View File

@ -1,33 +1,33 @@
@import "./rose-pine.css"; @import "./rose-pine.css";
* { * {
/* `otf-font-awesome` is required to be installed for icons */ /* `otf-font-awesome` is required to be installed for icons */
font-family: font-family:
JetBrains Mono NF Propo, JetBrains Mono NF Propo,
JetBrains Mono NF, JetBrains Mono NF,
FontAwesome, FontAwesome,
Roboto, Roboto,
Helvetica, Helvetica,
Arial, Arial,
sans-serif; sans-serif;
font-size: 14px; font-size: {{waybar_font_size}};
/* font-feature-settings: "tnum"; */ /* font-feature-settings: "tnum"; */
color: @text; color: @text;
background: @base-transparent; background: @base-transparent;
} }
window#waybar { window#waybar {
background: transparent; background: transparent;
/* background-color: rgba(30, 30, 46, 0.5); */ /* background-color: rgba(30, 30, 46, 0.5); */
/* border-bottom: 2px solid rgba(147, 153, 178, 0.5); */ /* border-bottom: 2px solid rgba(147, 153, 178, 0.5); */
/* border: 1px solid rgba(166, 173, 200, 1.0); */ /* border: 1px solid rgba(166, 173, 200, 1.0); */
color: #ffffff; color: #ffffff;
/* transition-property: background-color; */ /* transition-property: background-color; */
/* transition-duration: .5s; */ /* transition-duration: .5s; */
} }
window#waybar.hidden { window#waybar.hidden {
opacity: 0.2; opacity: 0.2;
} }
/* /*
@ -40,49 +40,49 @@ window#waybar.solo {
*/ */
window#waybar.termite { window#waybar.termite {
background-color: red; background-color: red;
} }
button { button {
/* Use box-shadow instead of border so the text isn't offset */ /* Use box-shadow instead of border so the text isn't offset */
box-shadow: none; box-shadow: none;
/* Avoid rounded borders under each button name */ /* Avoid rounded borders under each button name */
border: none; border: none;
border-radius: 0; border-radius: 0;
transition-property: none; transition-property: none;
} }
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ /* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
button:hover { button:hover {
background: none; background: none;
box-shadow: none; box-shadow: none;
text-shadow: none; text-shadow: none;
border: none; border: none;
-gtk-icon-effect: none; -gtk-icon-effect: none;
-gtk-icon-shadow: none; -gtk-icon-shadow: none;
} }
#workspaces button { #workspaces button {
padding: 0 5px; padding: 0 5px;
background-color: transparent; background-color: transparent;
} }
#workspaces button:hover { #workspaces button:hover {
background: rgba(0, 0, 0, 0.2); background: rgba(0, 0, 0, 0.2);
} }
#workspaces button.focused { #workspaces button.focused {
background-color: #64727d; background-color: #64727d;
box-shadow: inset 0 -3px #ffffff; box-shadow: inset 0 -3px #ffffff;
} }
#workspaces button.urgent { #workspaces button.urgent {
background-color: #eb4d4b; background-color: #eb4d4b;
} }
#mode { #mode {
background-color: #64727d; background-color: #64727d;
border-bottom: 3px solid #ffffff; border-bottom: 3px solid #ffffff;
} }
#clock, #clock,
@ -101,37 +101,37 @@ button:hover {
#idle_inhibitor, #idle_inhibitor,
#scratchpad, #scratchpad,
#mpd { #mpd {
padding: 0 10px; padding: 0 10px;
border-radius: 99px; border-radius: 99px;
background-color: transparent; background-color: transparent;
} }
#window, #window,
#workspaces { #workspaces {
margin: 0 4px; margin: 0 4px;
} }
/* If workspaces is the leftmost module, omit left margin */ /* If workspaces is the leftmost module, omit left margin */
.modules-left > widget:first-child > #workspaces { .modules-left>widget:first-child>#workspaces {
margin-left: 0; margin-left: 0;
} }
/* If workspaces is the rightmost module, omit right margin */ /* If workspaces is the rightmost module, omit right margin */
.modules-right > widget:last-child > #workspaces { .modules-right>widget:last-child>#workspaces {
margin-right: 0; margin-right: 0;
} }
#clock { #clock {
/* background-color: #64727D; */ /* background-color: #64727D; */
font-weight: bold; font-weight: bold;
/* background-color: rgba(0, 0, 0, 0.3); */ /* background-color: rgba(0, 0, 0, 0.3); */
/* border-radius: 99px; */ /* border-radius: 99px; */
} }
#battery { #battery {
/* background-color: #f9e2af; */ /* background-color: #f9e2af; */
/* color: #000000; */ /* color: #000000; */
margin-left: 4px; margin-left: 4px;
} }
/* /*
@ -159,35 +159,35 @@ button:hover {
*/ */
label:focus { label:focus {
background-color: #000000; background-color: #000000;
} }
#cpu { #cpu {
/* background-color: #f38ba8; */ /* background-color: #f38ba8; */
/* color: #000000; */ /* color: #000000; */
border-radius: 99px 0px 0px 99px; border-radius: 99px 0px 0px 99px;
padding: 0 0 0 10px; padding: 0 0 0 10px;
margin-left: 4px; margin-left: 4px;
} }
#memory { #memory {
/* background-color: #fab387; */ /* background-color: #fab387; */
/* color: #000000; */ /* color: #000000; */
border-radius: 0px 99px 99px 0px; border-radius: 0px 99px 99px 0px;
/* padding: 0 10px 0 0; */ /* padding: 0 10px 0 0; */
} }
#disk { #disk {
background-color: #964b00; background-color: #964b00;
} }
#backlight { #backlight {
background-color: #90b1b1; background-color: #90b1b1;
} }
#network { #network {
/* background-color: #a6e3a1; */ /* background-color: #a6e3a1; */
/* color: #000000; */ /* color: #000000; */
} }
/* /*
@ -197,146 +197,146 @@ label:focus {
*/ */
#taskbar { #taskbar {
margin-left: 4px; margin-left: 4px;
} }
#taskbar button { #taskbar button {
color: #f0f0ff; color: #f0f0ff;
background-color: rgba(30, 30, 46, 0.6); background-color: rgba(30, 30, 46, 0.6);
} }
#taskbar button:first-child { #taskbar button:first-child {
border-radius: 99px 0 0 99px; border-radius: 99px 0 0 99px;
} }
#taskbar button:last-child { #taskbar button:last-child {
border-radius: 0 99px 99px 0; border-radius: 0 99px 99px 0;
} }
#taskbar button:first-child:last-child { #taskbar button:first-child:last-child {
border-radius: 99px; border-radius: 99px;
} }
#taskbar button:hover { #taskbar button:hover {
background-color: rgba(49, 50, 68, 0.6); background-color: rgba(49, 50, 68, 0.6);
} }
#taskbar button.active { #taskbar button.active {
background-color: rgba(88, 91, 112, 0.6); background-color: rgba(88, 91, 112, 0.6);
} }
#taskbar button.active:hover { #taskbar button.active:hover {
background-color: rgba(108, 112, 134, 0.6); background-color: rgba(108, 112, 134, 0.6);
} }
#pulseaudio { #pulseaudio {
background-color: #f1c40f; background-color: #f1c40f;
color: #000000; color: #000000;
} }
#pulseaudio.muted { #pulseaudio.muted {
background-color: #90b1b1; background-color: #90b1b1;
color: #2a5c45; color: #2a5c45;
} }
#wireplumber { #wireplumber {
background-color: #fff0f5; background-color: #fff0f5;
color: #000000; color: #000000;
} }
#wireplumber.muted { #wireplumber.muted {
background-color: #f53c3c; background-color: #f53c3c;
} }
#custom-media { #custom-media {
background-color: #66cc99; background-color: #66cc99;
color: #2a5c45; color: #2a5c45;
min-width: 100px; min-width: 100px;
} }
#custom-media.custom-spotify { #custom-media.custom-spotify {
background-color: #66cc99; background-color: #66cc99;
} }
#custom-media.custom-vlc { #custom-media.custom-vlc {
background-color: #ffa000; background-color: #ffa000;
} }
#temperature { #temperature {
background-color: #f0932b; background-color: #f0932b;
} }
#temperature.critical { #temperature.critical {
background-color: #eb4d4b; background-color: #eb4d4b;
} }
#tray { #tray {
/* background-color: #2980b9; */ /* background-color: #2980b9; */
} }
#tray > .passive { #tray>.passive {
-gtk-icon-effect: dim; -gtk-icon-effect: dim;
} }
#tray > .needs-attention { #tray>.needs-attention {
-gtk-icon-effect: highlight; -gtk-icon-effect: highlight;
background-color: #eb4d4b; background-color: #eb4d4b;
} }
#idle_inhibitor { #idle_inhibitor {
background-color: #2d3436; background-color: #2d3436;
} }
#idle_inhibitor.activated { #idle_inhibitor.activated {
background-color: #ecf0f1; background-color: #ecf0f1;
color: #2d3436; color: #2d3436;
} }
#mpd { #mpd {
background-color: #66cc99; background-color: #66cc99;
color: #2a5c45; color: #2a5c45;
} }
#mpd.disconnected { #mpd.disconnected {
background-color: #f53c3c; background-color: #f53c3c;
} }
#mpd.stopped { #mpd.stopped {
background-color: #90b1b1; background-color: #90b1b1;
} }
#mpd.paused { #mpd.paused {
background-color: #51a37a; background-color: #51a37a;
} }
#language { #language {
background: #00b093; background: #00b093;
color: #740864; color: #740864;
padding: 0 5px; padding: 0 5px;
margin: 0 5px; margin: 0 5px;
min-width: 16px; min-width: 16px;
} }
#keyboard-state { #keyboard-state {
background: #97e1ad; background: #97e1ad;
color: #000000; color: #000000;
padding: 0 0px; padding: 0 0px;
margin: 0 5px; margin: 0 5px;
min-width: 16px; min-width: 16px;
} }
#keyboard-state > label { #keyboard-state>label {
padding: 0 5px; padding: 0 5px;
} }
#keyboard-state > label.locked { #keyboard-state>label.locked {
background: rgba(0, 0, 0, 0.2); background: rgba(0, 0, 0, 0.2);
} }
#scratchpad { #scratchpad {
background: rgba(0, 0, 0, 0.2); background: rgba(0, 0, 0, 0.2);
} }
#scratchpad.empty { #scratchpad.empty {
background-color: transparent; background-color: transparent;
} }

View File

@ -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
View File

@ -1,6 +1,6 @@
#!/bin/sh #!/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 for program in $autostart; do
pidof -sx "$program" || "$program" & pidof -sx "$program" || "$program" &

View File

View File

@ -30,38 +30,38 @@ hash = "62251f94eb67648d42cdfcfb8be0fad2"
[[plugin.deps]] [[plugin.deps]]
use = "yazi-rs/plugins:git" use = "yazi-rs/plugins:git"
rev = "d1c8baa" rev = "8f1d971"
hash = "63b6c222bf2103b3023389dde5e2ecfe" hash = "63b6c222bf2103b3023389dde5e2ecfe"
[[plugin.deps]] [[plugin.deps]]
use = "yazi-rs/plugins:chmod" use = "yazi-rs/plugins:chmod"
rev = "d1c8baa" rev = "8f1d971"
hash = "8ad3e90b079190b4905f24a44f4ca06b" hash = "8ad3e90b079190b4905f24a44f4ca06b"
[[plugin.deps]] [[plugin.deps]]
use = "yazi-rs/plugins:full-border" use = "yazi-rs/plugins:full-border"
rev = "d1c8baa" rev = "8f1d971"
hash = "3996fc74044bc44144b323686f887e1" hash = "3996fc74044bc44144b323686f887e1"
[[plugin.deps]] [[plugin.deps]]
use = "yazi-rs/plugins:mount" use = "yazi-rs/plugins:mount"
rev = "d1c8baa" rev = "8f1d971"
hash = "435a2af56ecfb3d05755fd5e24977d8b" hash = "4fccaaf10c36dc2466e2438a386ff017"
[[plugin.deps]] [[plugin.deps]]
use = "yazi-rs/plugins:smart-filter" use = "yazi-rs/plugins:smart-filter"
rev = "d1c8baa" rev = "8f1d971"
hash = "bcda8eeb3f4013bae156aecabfc745e8" hash = "bcda8eeb3f4013bae156aecabfc745e8"
[[plugin.deps]] [[plugin.deps]]
use = "yazi-rs/plugins:diff" use = "yazi-rs/plugins:diff"
rev = "d1c8baa" rev = "8f1d971"
hash = "82376c3381ae915fd799d40f4dd4c6cd" hash = "82376c3381ae915fd799d40f4dd4c6cd"
[[plugin.deps]] [[plugin.deps]]
use = "AnirudhG07/rich-preview" use = "AnirudhG07/rich-preview"
rev = "843c3fa" rev = "831234e"
hash = "b4040931f0d2f9670ddb4923e55cd881" hash = "ed3363e256e210593f0f8e4cec3e36a9"
[[plugin.deps]] [[plugin.deps]]
use = "macydnah/office" use = "macydnah/office"

View File

@ -50,6 +50,8 @@ end)
local M = { local M = {
keys = { keys = {
{ on = "q", run = "quit" }, { on = "q", run = "quit" },
{ on = "<Esc>", run = "quit" },
{ on = "<Enter>", run = { "enter", "quit" } },
{ on = "k", run = "up" }, { on = "k", run = "up" },
{ on = "j", run = "down" }, { on = "j", run = "down" },

View File

@ -15,7 +15,7 @@ Preview file types using `rich` command in Yazi. This plugin allows preview for
## Requirements ## Requirements
- [Yazi](https://github.com/sxyazi/yazi) v25.4.8 or higher. - [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 ## Installation

View File

@ -42,9 +42,10 @@ function M:peek(job)
ya.emit("peek", { math.max(0, i - limit), only_if = job.file.url, upper_bound = true }) ya.emit("peek", { math.max(0, i - limit), only_if = job.file.url, upper_bound = true })
else else
lines = lines:gsub("\t", string.rep(" ", rt.preview.tab_size)) lines = lines:gsub("\t", string.rep(" ", rt.preview.tab_size))
ya.preview_widgets(job, { ya.preview_widget(
ui.Text.parse(lines):area(job.area):wrap(rt.preview.wrap == "yes" and ui.Text.WRAP or ui.Text.WRAP_NO), job,
}) ui.Text.parse(lines):area(job.area):wrap(rt.preview.wrap == "yes" and ui.Wrap.YES or ui.Wrap.NO)
)
end end
end end

View File

@ -112,11 +112,16 @@ prepend_previewers = [
{mime = "application/bittorrent", run = "torrent-preview"}, {mime = "application/bittorrent", run = "torrent-preview"},
# Archive previewer # Archive previewer
{mime = "application/*zip", run = "ouch"}, {mime = "application/*zip", run = "ouch"},
{mime = "application/tar", run = "ouch"}, {mime = "application/x-tar", run = "ouch"},
{mime = "application/bzip2", run = "ouch"}, {mime = "application/x-bzip2", run = "ouch"},
{mime = "application/7z-compressed", run = "ouch"}, {mime = "application/x-7z-compressed", run = "ouch"},
{mime = "application/rar", 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/xz", run = "ouch"},
{mime = "application/x-zstd", run = "ouch"},
{mime = "application/zstd", run = "ouch"},
{mime = "application/java-archive", run = "ouch"},
# Office Documents # Office Documents
{mime = "application/openxmlformats-officedocument.*", run = "office"}, {mime = "application/openxmlformats-officedocument.*", run = "office"},
{mime = "application/oasis.opendocument.*", run = "office"}, {mime = "application/oasis.opendocument.*", run = "office"},

View File

@ -195,3 +195,5 @@ export PATH="$BUN_INSTALL/bin:$PATH"
[ -s "/home/kristofers/.bun/_bun" ] && source "/home/kristofers/.bun/_bun" [ -s "/home/kristofers/.bun/_bun" ] && source "/home/kristofers/.bun/_bun"
. "$HOME/.local/share/../bin/env" . "$HOME/.local/share/../bin/env"
[ -f "$HOME/.ghcup/env" ] && . "$HOME/.ghcup/env" # ghcup-env

View File

@ -665,7 +665,6 @@ _bun_test_completion() {
'--timeout[Set the per-test timeout in milliseconds, default is 5000.]:timeout' \ '--timeout[Set the per-test timeout in milliseconds, default is 5000.]:timeout' \
'--update-snapshots[Update snapshot files]' \ '--update-snapshots[Update snapshot files]' \
'--rerun-each[Re-run each test file <NUMBER> times, helps catch certain bugs]:rerun' \ '--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()"]' \ '--todo[Include tests that are marked with "test.todo()"]' \
'--coverage[Generate a coverage profile]' \ '--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' \ '--bail[Exit the test suite after <NUMBER> failures. If you do not specify a number, it defaults to 1.]:bail' \

0
dotter Normal file → Executable file
View File

0
dotter.arm Normal file → Executable file
View File

0
dotter.exe Normal file → Executable file
View File

0
local/bin/ani-skip.bak Executable file → Normal file
View File

0
local/bin/get-spotify-id Executable file → Normal file
View File

8
local/bin/podman-cleanup Normal file
View File

@ -0,0 +1,8 @@
#!/usr/bin/env bash
if command -v podman >/dev/null; then
export XDG_RUNTIME_DIR="${XDG_RUNTIME_DIR:-/run/user/$(id -u)}"
podman --runtime-flag timeout=5s stop --all 2>/dev/null || true
podman --runtime-flag timeout=5s rm --all --force 2>/dev/null || true
rm -rf "${XDG_RUNTIME_DIR}/libpod" "${XDG_RUNTIME_DIR}/containers" 2>/dev/null || true
fi

2
local/bin/swap-wallpaper Normal file → Executable file
View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
WALLPAPER_DIR="$HOME/Pictures/wallpapers/PoE2/3880x2160/" WALLPAPER_DIR="$HOME/Pictures/wallpapers/Linux-Dynamic-Wallpapers/"
if pgrep -x "Hyprland" >/dev/null; then if pgrep -x "Hyprland" >/dev/null; then
CURRENT_WALL=$(hyprctl hyprpaper listloaded) CURRENT_WALL=$(hyprctl hyprpaper listloaded)

View File

@ -1,4 +1,5 @@
[Desktop Entry] [Desktop Entry]
Type=Application Type=Application
Name=Image viewer Name=Image viewer
Exec=/usr/bin/nsxiv -aio %f # Exec=/usr/bin/nsxiv -aio %f
Exec=/usr/bin/oculante %f

0
local/share/fonts/jetbrainsmono/AUTHORS.txt Executable file → Normal file
View File

Binary file not shown.

View File

@ -1,43 +0,0 @@
@define-color accent_bg_color #907aa9;
@define-color accent_fg_color #faf4ed;
@define-color accent_color #907aa9;
@define-color destructive_bg_color #b4637a;
@define-color destructive_fg_color #faf4ed;
@define-color destructive_color #b4637a;
@define-color success_bg_color #56949f;
@define-color success_fg_color #575279;
@define-color success_color #56949f;
@define-color warning_bg_color #ea9d34;
@define-color warning_fg_color #575279;
@define-color warning_color #ea9d34;
@define-color error_bg_color #b4637a;
@define-color error_fg_color #575279;
@define-color error_color #b4637a;
@define-color window_bg_color #faf4ed;
@define-color window_fg_color #575279;
@define-color view_bg_color #f2e9e1;
@define-color view_fg_color #575279;
@define-color headerbar_bg_color #faf4ed;
@define-color headerbar_fg_color #575279;
@define-color headerbar_backdrop_color @window_bg_color;
@define-color headerbar_shade_color #faf4ed;
@define-color card_bg_color #fffaf3;
@define-color card_fg_color #575279;
@define-color card_shade_color #fffaf3;
@define-color popover_bg_color #f2e9e1;
@define-color popover_fg_color #575279;
@define-color sidebar_backdrop_color #f2e9e1;
@define-color sidebar_bg_color #f2e9e1;
@define-color sidebar_fg_color #575279;

View File

@ -1,43 +0,0 @@
@define-color accent_bg_color #c4a7e7;
@define-color accent_fg_color #232136;
@define-color accent_color #c4a7e7;
@define-color destructive_bg_color #eb6f92;
@define-color destructive_fg_color #232136;
@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 #232136;
@define-color window_fg_color #e0def4;
@define-color view_bg_color #393552;
@define-color view_fg_color #e0def4;
@define-color headerbar_bg_color #232136;
@define-color headerbar_fg_color #e0def4;
@define-color headerbar_backdrop_color @window_bg_color;
@define-color headerbar_shade_color #232136;
@define-color card_bg_color #2a273f;
@define-color card_fg_color #e0def4;
@define-color card_shade_color #2a273f;
@define-color popover_bg_color #393552;
@define-color popover_fg_color #e0def4;
@define-color sidebar_backdrop_color #393552;
@define-color sidebar_bg_color #393552;
@define-color sidebar_fg_color #e0def4;

Some files were not shown because too many files have changed in this diff Show More