summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--Makefile43
-rw-r--r--README.md8
-rwxr-xr-xX11/xinitrc9
-rw-r--r--X11/xresources60
-rwxr-xr-xX11/xserverrc3
-rw-r--r--alacritty/alacritty.yml8
-rw-r--r--awesome/rc.lua2
-rw-r--r--awesome/themes/zachir/theme.lua6
-rw-r--r--dunst/dunstrc2
-rwxr-xr-xdwm/autostart.sh2
-rw-r--r--gtk-2.0/gtkrc6
-rw-r--r--gtk-3.0/settings.ini6
-rw-r--r--hypr/hyprland.conf85
-rw-r--r--hypr/hyprlock.conf2
-rw-r--r--hypr/hyprscratch.conf7
-rwxr-xr-xinstallers/wc6
-rw-r--r--kitty/kitty.conf4
-rw-r--r--lf/lfrc121
-rw-r--r--mpd/mpd.conf2
-rw-r--r--nvim/init.lua1
-rw-r--r--nvim/lua/keymaps.lua8
-rw-r--r--nvim/lua/plugins.lua9
-rw-r--r--nvim/lua/vimwiki.lua10
-rw-r--r--rofi/dmenu.rasi2
-rw-r--r--scroll/config219
-rw-r--r--scroll/config.d/swaysome.conf69
-rw-r--r--scroll/scripts/maximize.lua42
-rw-r--r--scroll/scripts/maximize_when_only.lua38
-rw-r--r--scroll/scripts/scratchpad.lua66
-rw-r--r--scroll/scripts/swallow.lua32
-rw-r--r--sh/aliases6
-rw-r--r--sh/functions120
-rw-r--r--sh/profile3
-rwxr-xr-xsxhkd/sxhkdrc8
-rw-r--r--tofi/cosmic2
-rw-r--r--tofi/themes/dmenu2
-rw-r--r--tofi/themes/dmenu_vertical2
-rw-r--r--waybar/config76
-rw-r--r--waybar/style.css29
-rw-r--r--wireplumber/wireplumber.conf.d/51-id4.conf17
-rw-r--r--wireplumber/wireplumber.conf.d/51-volt4.conf17
-rw-r--r--xsettingsd/xsettingsd.conf4
-rw-r--r--zsh/.zshrc9
44 files changed, 820 insertions, 354 deletions
diff --git a/.gitignore b/.gitignore
index 3dcf353..cf80b9b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -237,6 +237,7 @@ RVXX EXEX.settings
RVXX v2/
RVXX v2.settings
SchildiChat/
+scroll/config.d/user.conf
Serenity/
Session/
Shibalba EXEX.settings
diff --git a/Makefile b/Makefile
index a25e316..1c66195 100644
--- a/Makefile
+++ b/Makefile
@@ -6,18 +6,15 @@ DCONFS := doas.conf
all:
-install: install-hyprplugins install-zshconfigs install-shconfigs vimplug-vim
+install: install-zshconfigs install-shconfigs vimplug-vim wc
-install-hyprplugins: install-hyprsplit install-hyprland-plugins
-
-install-bashconfigs: $(BCONFS) install-shconfigs
- @echo "Installing bash conf files..."
- @echo ".bashrc..."
- @ln -sf `pwd`/bash/.bashrc ~/.bashrc
- @echo ".bash_logout..."
- @ln -sf `pwd`/bash/.bash_logout ~/.bash_logout
+wc:
+ @echo "Installing wayland compositor stuff..."
+ @./installers/wc
@echo "Done."
+install-hyprplugins: install-hyprsplit install-hyprland-plugins
+
install-hyprsplit:
@echo "Installing hyprsplit..."
@hyprpm add https://github.com/shezdy/hyprsplit || echo "Already installed!"
@@ -32,12 +29,26 @@ install-hyprland-plugins:
@hyprpm enable hyprscrolling
@echo "Done."
-install-zshconfigs: $(ZCONFS)
- @echo "Installing zsh conf files..."
- @echo ".zshenv..."
- @ln -sf `pwd`/zsh/zshenv ~/.zshenv
- @echo ".zshrc..."
- @ln -sf `pwd`/zsh/zshrc ~/.zshrc
+install-scrollconf: scroll/config.d/user.conf
+
+scroll/config.d/user.conf:
+ @echo "Generating user.conf..."
+ @mkdir -p scroll/config.d
+ @echo 'set $$home' $(shell echo $(HOME)) > scroll/config.d/user.conf
+ @echo "Done."
+
+install-bashconfigs: $(BCONFS) install-shconfigs
+ @echo "Installing bash conf files..."
+ @echo ".bashrc..."
+ @ln -sf `pwd`/bash/.bashrc ~/.bashrc
+ @echo ".bash_logout..."
+ @ln -sf `pwd`/bash/.bash_logout ~/.bash_logout
+ @echo "Done."
+
+install-zshconfigs: install-shconfigs
+ @echo "Settings up ZDOTDIR..."
+ @echo "Installing .zprofile..."
+ @ln -sf `pwd`/sh/profile ~/.zprofile
@echo "Done."
install-shconfigs: $(SCONFS)
@@ -60,4 +71,4 @@ doas-conf: $(DCONFS)
@sudo cp -n doas.conf /etc/doas.conf
@echo "Done."
-.PHONY: install-hyprplugins install-zshconfigs install-shconfigs vimplug-vim doas-conf install
+.PHONY: install-hyprplugins install-zshconfigs install-shconfigs vimplug-vim doas-conf install install-scrollconf install-bashconfigs
diff --git a/README.md b/README.md
index 2644588..9a783de 100644
--- a/README.md
+++ b/README.md
@@ -16,7 +16,7 @@ make install`
Note that the `make install` will only install the files that are required to be
in the home dir to their corresponding place as hard links and install vimplug
-for neovim, vim, or both (depending on which are installed). Make sure to save
-changes to these files before running `make install`! Additionally, if you only
-want my configs for specific programs, I would recommend cloning it into a
-separate directory and avoiding the `make install`.
+for vim if it is installed. Make sure to save changes to these files before
+running `make install`! Additionally, if you only want my configs for specific
+programs, I would recommend cloning it into a separate directory and avoiding
+the `make install`.
diff --git a/X11/xinitrc b/X11/xinitrc
index 534bfc6..e949fbc 100755
--- a/X11/xinitrc
+++ b/X11/xinitrc
@@ -1,5 +1,10 @@
#!/bin/sh
[ -x ~/.screenlayout/layout.sh ] && ~/.screenlayout/layout.sh
+xwallpaper --zoom ~/Pictures/background.png &
+picom &
setxkbmap -option "caps:escape" &
-xrdb ~/.Xresources
-exec awesome
+systemctl --user start dunst &
+sxhkd &
+xss-lock slockd &
+xrdb ~/.config/X11/xresources
+exec dwm
diff --git a/X11/xresources b/X11/xresources
index 13799fc..2624d72 100644
--- a/X11/xresources
+++ b/X11/xresources
@@ -1,6 +1,13 @@
!! dmenu
-dmenu.font: FiraCode Nerd Font Mono:size=24
+dmenu.font: JetBrainsMono Nerd Font:size=15
+
+dmenu.selbackground: #198844
+dmenu.selforeground: #000000
+dmenu.hibackground: #000000
+dmenu.hiforeground: #39c1ed
+dmenu.selhibackground: #198844
+dmenu.selhiforeground: #39c1ed
!! dwm
@@ -30,7 +37,7 @@ st.termname: st-256color
st.shell: /usr/bin/tmux
! The following options options can be reloaded via USR1 signal.
-!st.font: FiraCode Nerd Font Mono:pixelsize=12:antialias=true:autohint=true;
+!st.font: JetBrainsMono Nerd Font:pixelsize=12:antialias=true:autohint=true;
!st.font2: Symbola:pixelsize=12:antialias=true:autohint=true;
st.borderpx: 3
! st alpha
@@ -76,7 +83,7 @@ URxvt.secondaryScreen: 1
URxvt.secondaryScroll: 0
URxvt.secondaryWheel: 1
! URxvt font
-URxvt.font: xft:FiraCode:regular:size=8,xft:symbola:regular:size=9
+URxvt.font: xft:JetBrainsMono:regular:size=8,xft:symbola:regular:size=9
! fix font spacing
URxvt.letterSpace: -1
! Disable printing
@@ -119,7 +126,7 @@ rofi.width: 1366
! "Number of columns" Set from: Default
! rofi.columns: 1
! "Font to use" Set from: Default
-rofi.font: FiraCode 9
+rofi.font: JetBrainsMono 9
! "Border width" Set from: Default
! rofi.bw: 1
! "Location on screen" Set from: Default
@@ -413,54 +420,11 @@ rofi.color-window: #1d1f21, #101010, #000000
! "Accept hovered row with custom action" Set from: Default
! rofi.me-accept-custom: Control+MouseDPrimary
-!! special
-!*.foreground: #c5c8c6
-!*.background: #1d1f21
-!*.cursorColor: #c5c8c6
-!
-!! black
-!*.color0: #282a2e
-!*.color8: #373b41
-!
-!! red
-!*.color1: #a54242
-!*.color9: #cc6666
-!
-!! green
-!*.color2: #8c9440
-!*.color10: #b5bd68
-!
-!! yellow
-!*.color3: #de935f
-!*.color11: #f0c674
-!
-!! blue
-!*.color4: #5f819d
-!*.color12: #81a2be
-!
-!! magenta
-!*.color5: #85678f
-!*.color13: #b294bb
-!
-!! cyan
-!*.color6: #5e8d87
-!*.color14: #8abeb7
-!
-!! white
-!*.color7: #707880
-!*.color15: #c5c8c6
-!
-!! special
+! special
*.foreground: #c5c8c6
*.background: #000000
*.cursorColor: #c5c8c6
*.reverseCursor: #333536
-dmenu.selbackground: #39c1ed
-dmenu.selforeground: #000000
-dmenu.hibackground: #000000
-dmenu.hiforeground: #198844
-dmenu.selhibackground: #39c1ed
-dmenu.selhiforeground: #198844
! black
*.color0: #1b1d1c
diff --git a/X11/xserverrc b/X11/xserverrc
new file mode 100755
index 0000000..c96ab6d
--- /dev/null
+++ b/X11/xserverrc
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec /usr/bin/Xorg -nolisten tcp "$@" vt$XDG_VTNR
diff --git a/alacritty/alacritty.yml b/alacritty/alacritty.yml
index 1bd8532..0b30805 100644
--- a/alacritty/alacritty.yml
+++ b/alacritty/alacritty.yml
@@ -115,7 +115,7 @@ font:
# - (macOS) Menlo
# - (Linux/BSD) monospace
# - (Windows) Consolas
- family: FiraCode Nerd Font Mono
+ family: JetBrainsMono Nerd Font
# The `style` can be specified to pick a specific face.
style: Regular
@@ -126,7 +126,7 @@ font:
#
# If the bold family is not specified, it will fall back to the
# value specified for the normal font.
- family: FiraCode Nerd Font Mono
+ family: JetBrainsMono Nerd Font
# The `style` can be specified to pick a specific face.
style: Bold
@@ -137,7 +137,7 @@ font:
#
# If the italic family is not specified, it will fall back to the
# value specified for the normal font.
- family: FiraCode Nerd Font Mono
+ family: JetBrainsMono Nerd Font
# The `style` can be specified to pick a specific face.
style: Italic
@@ -148,7 +148,7 @@ font:
#
# If the bold italic family is not specified, it will fall back to the
# value specified for the normal font.
- family: FiraCode Nerd Font Mono
+ family: JetBrainsMono Nerd Font
# The `style` can be specified to pick a specific face.
style: Bold Italic
diff --git a/awesome/rc.lua b/awesome/rc.lua
index fda4f16..7fa49ef 100644
--- a/awesome/rc.lua
+++ b/awesome/rc.lua
@@ -58,7 +58,7 @@ awesome_config_folder = config_dir .. "awesome"
theme.dir = string.format("%s/awesome/themes/%s", config_dir, theme.name)
beautiful.init(theme.dir .. "/theme.lua")
beautiful.useless_gap = 5
-font = beautiful.font or "FiraCode Nerd Font Mono 18"
+font = beautiful.font or "JetBrainsMono Nerd Font 18"
-- Library I'm using for swallowing, but it does much more
diff --git a/awesome/themes/zachir/theme.lua b/awesome/themes/zachir/theme.lua
index b54c3c6..30a575a 100644
--- a/awesome/themes/zachir/theme.lua
+++ b/awesome/themes/zachir/theme.lua
@@ -12,8 +12,8 @@ local themes_path = gfs.get_themes_dir()
local theme = {}
-theme.font = "FiraCode Nerd Font Mono 18"
-theme.font2 = "FiraCode Nerd Font Mono 12"
+theme.font = "JetBrainsMono Nerd Font 18"
+theme.font2 = "JetBrainsMono Nerd Font 12"
theme.bg_normal = xrdb.background
theme.bg_focus = xrdb.color2
@@ -162,7 +162,7 @@ theme.tabbar_disable = false -- disable the tab bar entirely
theme.tabbar_ontop = false
theme.tabbar_radius = 0 -- border radius of the tabbar
theme.tabbar_style = "default" -- style of the tabbar ("default", "boxes" or "modern")
-theme.tabbar_font = "FiraCode Nerd Font Mono 24" -- font of the tabbar
+theme.tabbar_font = "JetBrainsMono Nerd Font 24" -- font of the tabbar
theme.tabbar_size = 40 -- size of the tabbar
theme.tabbar_position = "top" -- position of the tabbar
theme.tabbar_bg_normal = "#000000" -- background color of the focused client on the tabbar
diff --git a/dunst/dunstrc b/dunst/dunstrc
index 4bdcfba..6377f26 100644
--- a/dunst/dunstrc
+++ b/dunst/dunstrc
@@ -86,7 +86,7 @@
### Text ###
- font = FiraCode Nerd Font Mono 18
+ font = JetBrainsMono Nerd Font 18
# The spacing between lines. If the height is smaller than the
# font height, it will get raised to the font height.
diff --git a/dwm/autostart.sh b/dwm/autostart.sh
new file mode 100755
index 0000000..07f82d1
--- /dev/null
+++ b/dwm/autostart.sh
@@ -0,0 +1,2 @@
+#!/bin/sh
+pgrep -x slstatus || slstatus
diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc
index 628ed00..42f1844 100644
--- a/gtk-2.0/gtkrc
+++ b/gtk-2.0/gtkrc
@@ -2,9 +2,9 @@
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
include "/home/zachir/.gtkrc-2.0.mine"
-gtk-theme-name="Flat-Remix-GTK-Green-Darkest-Solid"
-gtk-icon-theme-name="Cosmic"
-gtk-font-name="Cantarell 11"
+gtk-theme-name="Flat-Remix-GTK-Green-Darkest"
+gtk-icon-theme-name="Papirus-Dark"
+gtk-font-name="Noto Sans, 10"
gtk-cursor-theme-name="BreezeX-Black"
gtk-cursor-theme-size=32
gtk-toolbar-style=3
diff --git a/gtk-3.0/settings.ini b/gtk-3.0/settings.ini
index 28ef3a0..809e192 100644
--- a/gtk-3.0/settings.ini
+++ b/gtk-3.0/settings.ini
@@ -1,7 +1,7 @@
[Settings]
-gtk-theme-name=Flat-Remix-GTK-Green-Darkest-Solid
-gtk-icon-theme-name=Cosmic
-gtk-font-name=Cantarell 11
+gtk-theme-name=Flat-Remix-GTK-Green-Darkest
+gtk-icon-theme-name=Papirus-Dark
+gtk-font-name=Noto Sans, 10
gtk-cursor-theme-name=BreezeX-Black
gtk-cursor-theme-size=32
gtk-toolbar-style=3
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf
index 90cc7b1..3d63bdd 100644
--- a/hypr/hyprland.conf
+++ b/hypr/hyprland.conf
@@ -1,9 +1,17 @@
-# See https://wiki.hyprland.org/Configuring/Monitors/
+# See https://wiki.hypr.land/Configuring/Monitors/
#{{{ Monitor config
+#monitor = DP-2, 1920x1080@75, 0x0, 1
+#monitor = HDMI-A-1, 1920x1080@75, 1920x0, 1
+#monitor = eDP-1, 1920x1080@60, 0x0, 1
monitor = , preferred, auto, 1
#}}}
-# See https://wiki.hyprland.org/Configuring/Keywords/ for more
+# See https://wiki.hypr.land/Configuring/Keywords/ for more
+
+#{{{ Plugins
+plugin = /var/cache/hyprpm/zachir/hyprland-plugins/hyprscrolling.so
+plugin = /var/cache/hyprpm/zachir/hyprsplit/hyprsplit.so
+#}}}
#{{{ Autostart
# Execute your favorite apps at launch
@@ -16,14 +24,15 @@ exec-once = waybar
exec-once = pypr
exec-once = hyprscratch init
exec-once = lxqt-policykit-agent
-exec-once = import-gsettings gtk-theme 'Flat-Remix-GTK-Green-Darkest-Solid'
-exec-once = import-gsettings icon-theme 'COSMIC'
+exec-once = import-gsettings gtk-theme 'Flat-Remix-GTK-Green-Darkest'
+exec-once = import-gsettings icon-theme 'Papirus-Dark'
exec-once = import-gsettings cursor-theme 'BreezeX-Black'
exec-once = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
exec-once = xrdb -load "$XDG_CONFIG_HOME"/X11/xresources
exec-once = com.github.wwmm.easyeffects
exec-once = systemctl --user start dunst
exec-once = systemctl --user start hypridle
+exec-once = xwayland-satellite :1
#exec-once = mpd
#}}}
@@ -33,6 +42,7 @@ env = HYPRCURSOR_THEME,theme_BreezeX-Black
env = HYPRCURSOR_SIZE,32
env = XCURSOR_THEME,BreezeX-Black
env = XCURSOR_SIZE,32
+env = DISPLAY=:1
#}}}
# Source a file (multi-file configs)
@@ -55,7 +65,7 @@ device {
# }}}
#{{{ Input options
-# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
+# For all categories, see https://wiki.hypr.land/Configuring/Variables/
input {
kb_layout = us
kb_variant =
@@ -82,7 +92,7 @@ input {
#{{{ General options
general {
- # See https://wiki.hyprland.org/Configuring/Variables/ for more
+ # See https://wiki.hypr.land/Configuring/Variables/ for more
gaps_in = 5
gaps_out = 20
border_size = 2
@@ -106,7 +116,7 @@ misc {
disable_splash_rendering = true
enable_swallow = true
swallow_regex = ^(kitty)$
- swallow_exception_regex = ^(wev|.*ueberzug|n?vi?m? .*)$
+ swallow_exception_regex = ^(wev|.*ueberzug|n?vi?m? .*|.*dragon.*)$
vfr = true
vrr = 3
}
@@ -114,7 +124,7 @@ misc {
#{{{ Decoration options
decoration {
- # See https://wiki.hyprland.org/Configuring/Variables/ for more
+ # See https://wiki.hypr.land/Configuring/Variables/ for more
rounding = 10
#{{{ Blur options
blur {
@@ -140,7 +150,7 @@ decoration {
#{{{ Animations options
animations {
enabled = no
- # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
+ # Some default animations, see https://wiki.hypr.land/Configuring/Animations/ for more
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
@@ -153,7 +163,7 @@ animations {
#{{{ Dwindle layout options
dwindle {
- # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
+ # See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
special_scale_factor = 0.55
@@ -164,7 +174,7 @@ dwindle {
master {
special_scale_factor = 0.55
mfact = 0.55
- # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
+ # See https://wiki.hypr.land/Configuring/Master-Layout/ for more
new_status = slave
new_on_top = false
new_on_active = before
@@ -175,20 +185,10 @@ master {
}
#}}}
-#{{{ Hyprscrolling layout options
-plugin:hyprscrolling {
- fullscreen_on_one_column = true
- column_width = 0.5
- explicit_column_widths = 0.333, 0.5, 0.667, 1.0
- focus_fit_method = 1
- follow_focus = true
-}
-#}}}
-
#{{{ Gestures options
gestures {
- # See https://wiki.hyprland.org/Configuring/Variables/ for more
- workspace_swipe = off
+ # See https://wiki.hypr.land/Configuring/Variables/ for more
+ #workspace_swipe = off
}
#}}}
@@ -198,6 +198,14 @@ plugin {
num_workspaces = 9
persistent_workspaces = true
}
+
+ hyprscrolling {
+ fullscreen_on_one_column = true
+ column_width = 0.5
+ explicit_column_widths = 0.25, 0.333, 0.5, 0.667, 0.75, 1.0
+ focus_fit_method = 1
+ follow_focus = true
+ }
}
#}}}
@@ -206,11 +214,20 @@ plugin {
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrule = float, class:^(kitty)$, title:^(kitty)$
-# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
+# See https://wiki.hypr.land/Configuring/Window-Rules/ for more
+windowrulev2 = workspace special:easyeffects silent, class: ^(com\.github\.wwmm\.easyeffects)$
+# Fix brave xray menus
+windowrulev2 = xray 0, class: ^(\s*), title: ^(\s*)$
+# Center floating XWayland windows
+windowrule = center, xwayland: 1
+#}}}
+
+#{{{ Layerrules
+layerrule = blur, waybar
#}}}
#{{{ Mods
-# See https://wiki.hyprland.org/Configuring/Keywords/ for more
+# See https://wiki.hypr.land/Configuring/Keywords/ for more
$mainMod = SUPER
$secdMod = ALT
#}}}
@@ -237,14 +254,12 @@ $secdMod = ALT
#{{{ hyprscrolling layout binds
# hyprscrolling layout binds
-#bind = $mainMod+SHIFT, H, layoutmsg, move -1 #HYPRSCROLLING
-#bind = $mainMod+SHIFT, L, layoutmsg, move +1 #HYPRSCROLLING
-bind = $mainMod+ALT, H, layoutmsg, movewindowto l #HYPRSCROLLING
-bind = $mainMod+ALT, L, layoutmsg, movewindowto r #HYPRSCROLLING
-bind = $mainMod+SHIFT, H, movewindow, l #HYPRSCROLLING
-bind = $mainMod+SHIFT, L, movewindow, r #HYPRSCROLLING
-bind = $mainMod+SHIFT, K, movewindow, u #HYPRSCROLLING
-bind = $mainMod+SHIFT, J, movewindow, d #HYPRSCROLLING
+bind = $mainMod+SHIFT, H, layoutmsg, movewindowto l #HYPRSCROLLING
+bind = $mainMod+SHIFT, J, layoutmsg, movewindowto d #HYPRSCROLLING
+bind = $mainMod+SHIFT, K, layoutmsg, movewindowto u #HYPRSCROLLING
+bind = $mainMod+SHIFT, L, layoutmsg, movewindowto r #HYPRSCROLLING
+bind = $mainMod+CONTROL, H, layoutmsg, swapcol l
+bind = $mainMod+CONTROL, L, layoutmsg, swapcol r
bind = $mainMod, H, layoutmsg, focus l #HYPRSCROLLING
bind = $mainMod, J, layoutmsg, focus d #HYPRSCROLLING
bind = $mainMod, K, layoutmsg, focus u #HYPRSCROLLING
@@ -383,7 +398,7 @@ bind = $mainMod, D, exec, sh -c "$(tofi-run -c $HOME/.config/tofi/themes/dmenu_v
bind = $mainMod, R, exec, rs
bind = $mainMod $secdMod, Q, exec, qbc
bind = $mainMod $secdMod, W, exec, lwc
-bind = $mainMod $secdMod, E, exec, mbc
+bind = $mainMod $secdMod, E, exec, brc
bind = $mainMod $secdMod, R, exec, ffc
bind = $mainMod $secdMod, 1, exec, bm
bind = $mainMod $secdMod, comma, exec, dmount -p
@@ -414,7 +429,7 @@ bind = $mainMod CONTROL, B, exec, hyprscratch toggle spncmp
bind = $mainMod CONTROL, A, exec, hyprscratch toggle spmutt
bind = $mainMod CONTROL, S, exec, hyprscratch toggle spprof
bind = $mainMod CONTROL, D, exec, hyprscratch toggle spirss
-bind = $mainMod CONTROL, F, exec, hyprscratch toggle sptodo
+bind = $mainMod CONTROL, F, exec, hyprscratch toggle spvimw
bind = $mainMod CONTROL, G, exec, hyprscratch toggle sptrmc
bind = $mainMod CONTROL, Q, exec, hyprscratch toggle helvum
bind = $mainMod CONTROL, E, exec, hyprscratch toggle easyeffects
diff --git a/hypr/hyprlock.conf b/hypr/hyprlock.conf
index 2ec72d3..8ee636d 100644
--- a/hypr/hyprlock.conf
+++ b/hypr/hyprlock.conf
@@ -41,7 +41,7 @@ input-field {
check_color = rgb(204, 136, 34)
fail_color = rgb(204, 34, 34) # if authentication failed, changes outer_color and fail message color
fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i> # can be set to empty
- fail_transition = 300 # transition time in ms between normal outer_color and fail_color
+ #fail_transition = 300 # transition time in ms between normal outer_color and fail_color
capslock_color = -1
numlock_color = -1
bothlock_color = -1 # when both locks are active. -1 means don't change outer color (same for above)
diff --git a/hypr/hyprscratch.conf b/hypr/hyprscratch.conf
index 4274dcd..5964419 100644
--- a/hypr/hyprscratch.conf
+++ b/hypr/hyprscratch.conf
@@ -1,5 +1,6 @@
# Optional globals that apply to all scratchpads
daemon_options = clean
+daemon_options = eager
global_rules = size 50% 50%
@@ -83,10 +84,10 @@ spirss {
options = special
}
-sptodo {
+spvimw {
# Mandatory fields
- title = sptodo
- command = kitty -T sptodo todo
+ title = spvimw
+ command = kitty -T spvimw nvim +VimwikiIndex
# Optional fields
options = lazy
diff --git a/installers/wc b/installers/wc
new file mode 100755
index 0000000..bfdb299
--- /dev/null
+++ b/installers/wc
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+pgrep -x Hyprland && make install-hyprplugins
+pgrep -x scroll && make install-scrollconf
+
+
diff --git a/kitty/kitty.conf b/kitty/kitty.conf
index 095607b..7afcb30 100644
--- a/kitty/kitty.conf
+++ b/kitty/kitty.conf
@@ -6,7 +6,7 @@
#: individual font faces and even specify special fonts for particular
#: characters.
-font_family FiraCode Nerd Font Mono
+font_family JetBrainsMono Nerd Font
bold_font auto
italic_font auto
bold_italic_font auto
@@ -24,7 +24,7 @@ bold_italic_font auto
#: italic_font Operator Mono Book Italic
#: bold_italic_font Operator Mono Medium Italic
-font_size 11.0
+font_size 15.0
#: Font size (in pts)
diff --git a/lf/lfrc b/lf/lfrc
index 32c9a10..bc18f79 100644
--- a/lf/lfrc
+++ b/lf/lfrc
@@ -320,7 +320,7 @@ map C clear
map U unselect
# Movement
-map g. cd "/home/zachir"
+map g. cd "~"
## PATHS
map gE. cd "/etc"
map gO. cd "/opt"
@@ -329,64 +329,65 @@ map gR cd "/"
map gU. cd "/usr"
map gUs cd "/usr/share"
map gV. cd "/var"
-map gaw cd "/home/zachir/.config/awesome"
-map gb. cd "/home/zachir/.local/bin"
-map gbb cd "/home/zachir/.local/bin/blocks"
-map gbf cd "/home/zachir/.local/bin/slatpak-sc"
-map gbg cd "/home/zachir/.local/bin/generics"
-map gbi cd "/home/zachir/.local/bin/ignore"
-map gbsc cd "/home/zachir/.local/bin/scripts"
-map gbsh cd "/home/zachir/.local/bin/shortcmds"
-map gbsp cd "/home/zachir/.local/bin/sp"
-map gc cd "/home/zachir/.config"
-map gdb cd "/home/zachir/.local/src/dwmbar"
-map gdc cd "/home/zachir/Documents"
-map gdl cd "/home/zachir/.local/src/dwl"
-map gdm cd "/home/zachir/.local/src/dmenu"
-map gdo cd "/home/zachir/Downloads"
-map gdp cd "/home/zachir/Downloads/plugin/zachir_librem.one"
-map gdw cd "/home/zachir/Downloads/wine"
-map ge cd "/home/zachir/Desktop"
-map gf cd "/home/zachir/.var/app"
-map gh cd "/home/zachir/.config/hypr"
-map glb cd "/home/zachir/.local/bin"
-map glc cd "/home/zachir/Games/cache"
-map glf cd "/home/zachir/.config/lf"
-map gls cd "/home/zachir/.local/share"
-map gn3 cd "/home/zachir/.vst3/native"
-map gns cd "/home/zachir/.vst/native"
-map gnv cd "/home/zachir/.config/nvim"
-map gp cd "/home/zachir/Pictures"
-map gqb cd "/home/zachir/.config/qutebrowser"
-map gqp cd "/home/zachir/.local/share/qutebrowser-profiles"
-map gre cd "/home/zachir/.local/src"
+map gaw cd "~/.config/awesome"
+map gb. cd "~/.local/bin"
+map gbb cd "~/.local/bin/blocks"
+map gbf cd "~/.local/bin/slatpak-sc"
+map gbg cd "~/.local/bin/generics"
+map gbi cd "~/.local/bin/ignore"
+map gbsc cd "~/.local/bin/scripts"
+map gbsh cd "~/.local/bin/shortcmds"
+map gbsp cd "~/.local/bin/sp"
+map gc cd "~/.config"
+map gdb cd "~/.local/src/dwmbar"
+map gdc cd "~/Documents"
+map gdl cd "~/.local/src/dwl"
+map gdm cd "~/.local/src/dmenu"
+map gdo cd "~/Downloads"
+map gdp cd "~/Downloads/plugin/zachir_librem.one"
+map gdw cd "~/Downloads/wine"
+map ge cd "~/Desktop"
+map gf cd "~/.var/app"
+map gh cd "~/.config/hypr"
+map glb cd "~/.local/bin"
+map glc cd "~/Games/cache"
+map glf cd "~/.config/lf"
+map gls cd "~/.local/share"
+map gn3 cd "~/.vst3/native"
+map gns cd "~/.vst/native"
+map gnv cd "~/.config/nvim"
+map gp cd "~/Pictures"
+map gqb cd "~/.config/qutebrowser"
+map gqp cd "~/.local/share/qutebrowser-profiles"
+map gre cd "~/.local/src"
map grs cd "/etc/runit/sv"
-map gsc cd "/home/zachir/.local/bin/scripts"
-map gsh cd "/home/zachir/.config/sh"
-map gsl cd "/home/zachir/.local/src/slock"
+map gsc cd "~/.local/bin/scripts"
+map gsh cd "~/.config/sh"
+map gsl cd "~/.local/src/slock"
map gss cd "/etc/s6/sv"
-map gst cd "/home/zachir/.local/src/st"
-map gsx cd "/home/zachir/.config/sxhkd"
-map gtr cd "/home/zachir/.local/share/Trash/files"
-map gurs cd "/home/zachir/.runit/sv"
-map gv3. cd "/home/zachir/.vst3"
-map gv3n cd "/home/zachir/.vst3/native"
-map gv3y cd "/home/zachir/.vst3/yabridge"
-map gv. cd "/home/zachir/var"
-map gvi cd "/home/zachir/Videos"
-map gvsn cd "/home/zachir/.vst/native"
-map gvs. cd "/home/zachir/.vst"
-map gvsy cd "/home/zachir/.vst/yabridge"
-map gwdo cd "/home/zachir/.local/share/wineprefixes/default/drive_c/users/zachir/Downloads"
-map gwa cd "/home/zachir/.local/src/wallpapers"
-map gwd cd "/home/zachir/.local/share/wineprefixes/default"
-map gwr cd "/home/zachir/.local/share/wineprefixes"
-map gwv3 cd "/home/zachir/.winvst3"
-map gwvs cd "/home/zachir/.winvst"
-map gww cd "/home/zachir/.local/share/wineprefixes/work"
-map gx cd "/home/zachir/.config/X11"
-map gy3 cd "/home/zachir/.vst3/yabridge"
-map gyb cd "/home/zachir/.cache/yay"
-map gyc cd "/home/zachir/.config/yay"
-map gzs cd "/home/zachir/.config/zsh"
-map gzx cd "/home/zachir/Documents/zachir.xyz"
+map gst cd "~/.local/src/st"
+map gsx cd "~/.config/sxhkd"
+map gtr cd "~/.local/share/Trash/files"
+map gurs cd "~/.runit/sv"
+map gv3. cd "~/.vst3"
+map gv3n cd "~/.vst3/native"
+map gv3y cd "~/.vst3/yabridge"
+map gv. cd "~/var"
+map gvi cd "~/Videos"
+map gvsn cd "~/.vst/native"
+map gvs. cd "~/.vst"
+map gvsy cd "~/.vst/yabridge"
+map gvw cd "~/.local/share/vimwiki"
+map gwdo cd "~/.local/share/wineprefixes/default/drive_c/users/zachir/Downloads"
+map gwa cd "~/.local/src/wallpapers"
+map gwd cd "~/.local/share/wineprefixes/default"
+map gwr cd "~/.local/share/wineprefixes"
+map gwv3 cd "~/.winvst3"
+map gwvs cd "~/.winvst"
+map gww cd "~/.local/share/wineprefixes/work"
+map gx cd "~/.config/X11"
+map gy3 cd "~/.vst3/yabridge"
+map gyb cd "~/.cache/yay"
+map gyc cd "~/.config/yay"
+map gzs cd "~/.config/zsh"
+map gzx cd "~/Documents/zachir.xyz"
diff --git a/mpd/mpd.conf b/mpd/mpd.conf
index 755f1c8..6fdf1b0 100644
--- a/mpd/mpd.conf
+++ b/mpd/mpd.conf
@@ -79,7 +79,7 @@ sticker_file "~/.config/mpd/sticker.sql"
# systemd socket activiation is in use.
#
# For network
-# bind_to_address "127.0.0.1"
+bind_to_address "127.0.0.1"
#
# And for Unix Socket
bind_to_address "~/.config/mpd/socket"
diff --git a/nvim/init.lua b/nvim/init.lua
index 4b295d5..06b973a 100644
--- a/nvim/init.lua
+++ b/nvim/init.lua
@@ -4,3 +4,4 @@ require('lsp')
require('plugins')
require('colorscheme')
require('term')
+require('vimwiki')
diff --git a/nvim/lua/keymaps.lua b/nvim/lua/keymaps.lua
index 4f4a489..ff04b7d 100644
--- a/nvim/lua/keymaps.lua
+++ b/nvim/lua/keymaps.lua
@@ -23,10 +23,10 @@ vim.keymap.set('n', '<C-Up>', ':resize -2<CR>', opts)
vim.keymap.set('n', '<C-Down>', ':resize +2<CR>', opts)
vim.keymap.set('n', '<C-Left>', ':vertical resize -2<CR>', opts)
vim.keymap.set('n', '<C-Right>', ':vertical resize +2<CR>', opts)
-vim.keymap.set('n', '<leader>wh :vertical resize', '-1<CR>')
-vim.keymap.set('n', '<leader>wj :resize', '-1<CR>')
-vim.keymap.set('n', '<leader>wk :resize', '+1<CR>')
-vim.keymap.set('n', '<leader>wl :vertical resize', '+1<CR>')
+vim.keymap.set('n', '<leader>wh', ':vertical resize -1<CR>')
+vim.keymap.set('n', '<leader>wj', ':resize -1<CR>')
+vim.keymap.set('n', '<leader>wk', ':resize +1<CR>')
+vim.keymap.set('n', '<leader>wl', ':vertical resize +1<CR>')
-- NerdTREE
vim.keymap.set('n', '<leader>tt', ':NERDTreeToggle<CR>')
diff --git a/nvim/lua/plugins.lua b/nvim/lua/plugins.lua
index f90b09c..3684b89 100644
--- a/nvim/lua/plugins.lua
+++ b/nvim/lua/plugins.lua
@@ -14,6 +14,15 @@ vim.opt.rtp:prepend(lazypath)
require("lazy").setup({
-- LSP manager
{ "mason-org/mason.nvim", opts = {} },
+ {"vimwiki/vimwiki",
+ init = function()
+ vim.g.vimwiki_list = {
+ {
+ path = '~/.local/share/vimwiki'
+ },
+ }
+ end,
+ },
{
"mason-org/mason-lspconfig.nvim",
dependencies = {
diff --git a/nvim/lua/vimwiki.lua b/nvim/lua/vimwiki.lua
new file mode 100644
index 0000000..43b8aa6
--- /dev/null
+++ b/nvim/lua/vimwiki.lua
@@ -0,0 +1,10 @@
+-- Required for Vimwiki to work
+vim.opt.compatible = false
+
+-- Vimwiki Keybindings
+local opts = {
+ noremap = false,
+ silent = true,
+}
+
+vim.keymap.set('n', '<leader>wx', '<Plug>VimwikiIndex', opts)
diff --git a/rofi/dmenu.rasi b/rofi/dmenu.rasi
index 6fd198a..2ac7745 100644
--- a/rofi/dmenu.rasi
+++ b/rofi/dmenu.rasi
@@ -8,7 +8,7 @@
background-color: Black;
border-color: White;
text-color: White;
- font: "FiraCode Nerd Font Mono 12";
+ font: "JetBrainsMono Nerd Font 12";
}
window {
anchor: north;
diff --git a/scroll/config b/scroll/config
index c715eed..c6bb704 100644
--- a/scroll/config
+++ b/scroll/config
@@ -6,6 +6,11 @@
#
# Read `man 5 scroll` for a complete reference.
+include /etc/scroll/config.d/*
+
+# This includes config.d/user.conf, which should set the $home variable
+include ~/.config/scroll/config.d/user.conf
+
### Variables
#
# Logo key. Use Mod1 for Alt.
@@ -23,7 +28,9 @@ set $dmenu dmenu_run -l 15
# Your preferred file manager
set $filemanager kitty -e lf
-bar mode invisible
+# The scripts directory
+set $scripts $home/.config/scroll/scripts
+
exec waybar
exec hypridle
exec hyprpaper
@@ -39,6 +46,10 @@ exec hyprpaper
#
# You can get the names of your outputs by running: scrollmsg -t get_outputs
+#output eDP-1 resolution 1920x1080 position 0 0
+#output HDMI-A-1 resolution 1920x1080 position 1920 0
+#output DP-2 resolution 1920x1080 position 0 0
+
### Idle configuration
#
# Example configuration:
@@ -74,9 +85,9 @@ exec hyprpaper
default_border pixel 2
gaps inner 4
gaps outer 20
-client.focused #15439e #000000 #e0e0e0 #2e9ef4 #15439e
-client.focused_inactive #595959 #000000 #e0e0e0 #2e9ef4 #595959
-client.unfocused #595959 #000000 #e0e0e0 #2e9ef4 #595959
+client.focused #198844 #000000 #e0e0e0 #198844 #198844
+client.focused_inactive #1b1d1c #000000 #e0e0e0 #1b1d1c #1b1d1c
+client.unfocused #1b1d1c #000000 #e0e0e0 #1b1d1c #1b1d1c
# Idle inhibit for fullscreen windows
for_window [all] inhibit_idle fullscreen
@@ -89,15 +100,17 @@ layout_heights [0.33333333 0.5 0.666666667 1.0]
fullscreen_movefocus true
-mouse_warping container
+focus_follows_mouse yes
+
+mouse_warping none
# Animations
animations {
enabled yes
- default yes 300 var 3 [ 0.215 0.61 0.355 1 ]
- window_open yes 300 var 3 [ 0 0 1 1 ]
- window_move yes 300 var 3 [ 0.215 0.61 0.355 1 ] off 0.05 6 [0 0.6 0.4 0 1 0 0.4 -0.6 1 -0.6]
- window_size yes 300 var 3 [ -0.35 0 0 0.5 ]
+ default yes 100 var 3 [ 0.215 0.61 0.355 1 ]
+ window_open yes 100 var 3 [ 0 0 1 1 ]
+ window_move yes 100 var 3 [ 0.215 0.61 0.355 1 ] off 0.05 6 [0 0.6 0.4 0 1 0 0.4 -0.6 1 -0.6]
+ window_size yes 100 var 3 [ -0.35 0 0 0.5 ]
}
### Key bindings
@@ -113,10 +126,17 @@ animations {
bindsym $mod+Ctrl+Backspace kill all
# Start your launcher
- bindsym $mod+r exec $rmenu
+ bindsym $mod+e exec $rmenu
bindsym $mod+d exec $dmenu
+
+ # Start restart menu
+ bindsym $mod+r exec rs
- bindsym $mod+e exec $filemanager
+ # Launch your file manager
+ bindsym $mod+Alt+f exec $filemanager
+
+ # Lock your screen
+ bindsym $mod+q exec loginctl lock-session
# Drag floating windows by holding down $mod and left mouse button.
# Resize them with right mouse button + $mod.
@@ -129,7 +149,7 @@ animations {
bindsym $mod+Shift+c reload
# Closes the active application (hopefully)
- bindsym $mod+Shift+q view_close
+ bindsym $mod+Shift+q kill
# Exit scroll (logs you out of your Wayland session)
bindsym $mod+Shift+e exec scrollnag -t warning -m 'You pressed the exit shortcut. Do you really want to exit scroll? This will end your Wayland session.' -B 'Yes, exit scroll' 'scrollmsg exit'
@@ -167,36 +187,38 @@ animations {
bindsym $mod+Shift+j focus output down
bindsym $mod+Shift+k focus output up
bindsym $mod+Shift+l focus output right
-#
-# Workspaces:
-#
- # Switch to workspace
- bindsym $mod+1 workspace number 1
- bindsym $mod+2 workspace number 2
- bindsym $mod+3 workspace number 3
- bindsym $mod+4 workspace number 4
- bindsym $mod+5 workspace number 5
- bindsym $mod+6 workspace number 6
- bindsym $mod+7 workspace number 7
- bindsym $mod+8 workspace number 8
- bindsym $mod+9 workspace number 9
- bindsym $mod+0 workspace number 10
- # Move focused container to workspace
- bindsym $mod+Shift+1 move container to workspace number 1; workspace number 1
- bindsym $mod+Shift+2 move container to workspace number 2; workspace number 2
- bindsym $mod+Shift+3 move container to workspace number 3; workspace number 3
- bindsym $mod+Shift+4 move container to workspace number 4; workspace number 4
- bindsym $mod+Shift+5 move container to workspace number 5; workspace number 5
- bindsym $mod+Shift+6 move container to workspace number 6; workspace number 6
- bindsym $mod+Shift+7 move container to workspace number 7; workspace number 7
- bindsym $mod+Shift+8 move container to workspace number 8; workspace number 8
- bindsym $mod+Shift+9 move container to workspace number 9; workspace number 9
- bindsym $mod+Shift+0 move container to workspace number 10; workspace number 10
- # Note: workspaces can have any name you want, not just numbers.
- # We just use 1-10 as the default.
-
- bindsym $mod+Ctrl+1 move workspace to output left
- bindsym $mod+Ctrl+2 move workspace to output right
+
+ # Move window to other monitors
+ bindsym $mod+Shift+Ctrl+h move container to output left
+ bindsym $mod+Shift+Ctrl+j move container to output down
+ bindsym $mod+Shift+Ctrl+k move container to output up
+ bindsym $mod+Shift+Ctrl+l move container to output right
+##
+## Workspaces:
+## NOW USING SWAYSOME
+##
+# # Switch to workspace
+# bindsym $mod+1 workspace number 1
+# bindsym $mod+2 workspace number 2
+# bindsym $mod+3 workspace number 3
+# bindsym $mod+4 workspace number 4
+# bindsym $mod+5 workspace number 5
+# bindsym $mod+6 workspace number 6
+# bindsym $mod+7 workspace number 7
+# bindsym $mod+8 workspace number 8
+# bindsym $mod+9 workspace number 9
+# # Move focused container to workspace
+# bindsym $mod+Shift+1 move container to workspace number 1; workspace number 1
+# bindsym $mod+Shift+2 move container to workspace number 2; workspace number 2
+# bindsym $mod+Shift+3 move container to workspace number 3; workspace number 3
+# bindsym $mod+Shift+4 move container to workspace number 4; workspace number 4
+# bindsym $mod+Shift+5 move container to workspace number 5; workspace number 5
+# bindsym $mod+Shift+6 move container to workspace number 6; workspace number 6
+# bindsym $mod+Shift+7 move container to workspace number 7; workspace number 7
+# bindsym $mod+Shift+8 move container to workspace number 8; workspace number 8
+# bindsym $mod+Shift+9 move container to workspace number 9; workspace number 9
+# # Note: workspaces can have any name you want, not just numbers.
+# # We just use 1-10 as the default.
# Scaling
# Workspace
@@ -208,7 +230,7 @@ animations {
# Overview
bindsym --no-repeat $mod+tab scale_workspace overview
- bindsym --whole-window button8 scale_workspace overview
+ #bindsym --whole-window button8 scale_workspace overview
# Jump
# jump_labels_color #9e1530FF
@@ -232,17 +254,20 @@ animations {
#
# Make the current focus fullscreen
bindsym $mod+f fullscreen
- bindsym $mod+Ctrl+f fullscreen global
- bindsym $mod+Alt+f fullscreen_application toggle
+ #bindsym $mod+Shift+f fullscreen global
+ bindsym $mod+Shift+f fullscreen_application toggle
bindsym $mod+Ctrl+Alt+f fullscreen_application reset
+ # Maximize, not fullscreen
+ bindsym $mod+m lua $scripts/maximize.lua toggle
+
# Toggle the current focus between tiling and floating mode
bindsym $mod+y focus mode_toggle
# Toggle layout type (h<->v)
bindsym $mod+Shift+y layout_transpose
# Float a window
- bindsym $mod+Shift+f floating toggle
+ bindsym $mod+Shift+space floating toggle
# Toggle sticky
bindsym $mod+Shift+Ctrl+a sticky toggle
@@ -269,14 +294,14 @@ animations {
# You can send windows there and get them back later.
# Move the currently focused window to the scratchpad
- bindsym $mod+Shift+z move scratchpad
+ #bindsym $mod+Shift+z move scratchpad
# Show the next scratchpad window or hide the focused scratchpad window.
# If there are multiple scratchpad windows, this command cycles through them.
- bindsym $mod+z scratchpad show
- bindsym --no-repeat $mod+Alt+z scratchpad jump
+ #bindsym $mod+z scratchpad show
+ #bindsym --no-repeat $mod+Alt+z scratchpad jump
- bindsym $mod+Ctrl+z workspace back_and_forth
+ #bindsym $mod+Ctrl+z workspace back_and_forth
#
# Mode modifiers
@@ -460,10 +485,10 @@ bindsym $mod+g mode "spaces"
# Utilities:
#
# Special keys to adjust volume via PulseAudio
- bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle
- bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5%
- bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5%
- bindsym --locked XF86AudioMicMute exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle
+ bindsym --locked XF86AudioMute exec volsv -t
+ bindsym --locked XF86AudioLowerVolume exec volsv -d
+ bindsym --locked XF86AudioRaiseVolume exec volsv -i
+ bindsym --locked XF86AudioMicMute exec volsv -m
# Special keys to control media via playerctl
bindsym --locked XF86AudioPlay exec playerctl play-pause
@@ -473,20 +498,72 @@ bindsym $mod+g mode "spaces"
bindsym --locked XF86AudioStop exec playerctl stop
# Special keys to adjust brightness via brightnessctl
- bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
- bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+
+ bindsym --locked XF86MonBrightnessDown exec bl -d
+ bindsym --locked XF86MonBrightnessUp exec bl -i
# Special key to take a screenshot with grim
bindsym Print exec grim
+# Launch lwc librewolf profile interface
+bindsym $mod+Alt+w exec lwc
+# Launch qbc qutebrowser profile interface
+bindsym $mod+Alt+q exec qbc
+# Launch dmount dmenu mount script
+bindsym $mod+Alt+comma exec dmount
+# Launch dmenuumount dmenu umount script
+bindsym $mod+Alt+period exec dmenuumount
-focus_wrapping no
+focus_wrapping yes
bindgesture swipe:4:right workspace next
bindgesture swipe:4:left workspace prev
bindgesture swipe:4:up scale_workspace overview
+# Enable window swallowing (of mpv specifically)
+lua $scripts/swallow.lua
+
+# Enable maximize when only
+lua $scripts/maximize_when_only.lua
+
+# Scratchpads
+for_window [app_id="sphtop"] move scratchpad
+for_window [app_id="sphtop"] scratchpad show
+bindsym $mod+Ctrl+z lua $scripts/scratchpad.lua sphtop kitty htop
+for_window [app_id="spterm"] move scratchpad
+for_window [app_id="spterm"] scratchpad show
+bindsym $mod+Ctrl+x lua $scripts/scratchpad.lua spterm kitty
+for_window [app_id="sppmxr"] move scratchpad
+for_window [app_id="sppmxr"] scratchpad show
+bindsym $mod+Ctrl+c lua $scripts/scratchpad.lua sppmxr kitty pulsemixer
+for_window [app_id="spblue"] move scratchpad
+for_window [app_id="spblue"] scratchpad show
+bindsym $mod+Ctrl+v lua $scripts/scratchpad.lua spblue kitty bluetoothctl
+for_window [app_id="spncmp"] move scratchpad
+for_window [app_id="spncmp"] scratchpad show
+bindsym $mod+Ctrl+b lua $scripts/scratchpad.lua spncmp kitty ncmpcpp
+for_window [app_id="spmutt"] move scratchpad
+for_window [app_id="spmutt"] scratchpad show
+bindsym $mod+Ctrl+a lua $scripts/scratchpad.lua spmutt kitty neomutt
+for_window [app_id="spprof"] move scratchpad
+for_window [app_id="spprof"] scratchpad show
+bindsym $mod+Ctrl+s lua $scripts/scratchpad.lua spprof kitty profanity
+for_window [app_id="spirss"] move scratchpad
+for_window [app_id="spirss"] scratchpad show
+bindsym $mod+Ctrl+d lua $scripts/scratchpad.lua spirss kitty irssi
+for_window [app_id="sptodo"] move scratchpad
+for_window [app_id="sptodo"] scratchpad show
+bindsym $mod+Ctrl+f lua $scripts/scratchpad.lua sptodo kitty todo
+for_window [app_id="sptrmc"] move scratchpad
+for_window [app_id="sptrmc"] scratchpad show
+bindsym $mod+Ctrl+g lua $scripts/scratchpad.lua sptrmc kitty tremc
+for_window [app_id="org.pipewire.Helvum"] move scratchpad
+for_window [app_id="org.pipewire.Helvum"] scratchpad show
+bindsym $mod+Ctrl+q lua $scripts/scratchpad.lua org.pipewire.Helvum helvum
+for_window [app_id="com.github.wwmm.easyeffects"] move scratchpad
+for_window [app_id="com.github.wwmm.easyeffects"] scratchpad show
+bindsym $mod+Ctrl+e lua $scripts/scratchpad.lua com.github.wwmm.easyeffects easyeffects
+
#
# Workspace rules:
#
@@ -499,18 +576,20 @@ bindgesture swipe:4:up scale_workspace overview
#
# Read `man 5 scroll-bar` for more information about this section.
bar {
- position top
-
- # When the status_command prints a new line to stdout, scrollbar updates.
- # The default just shows the current date and time.
- status_command while date +'%Y-%m-%d %X'; do sleep 1; done
-
- colors {
- statusline #ffffff
- background #323232
- inactive_workspace #32323200 #32323200 #5c5c5c
- scroller #2F343AFF #055E20FF #FFFFFFFF
- }
+ mode invisible
+
+ #position top
+
+ ## When the status_command prints a new line to stdout, scrollbar updates.
+ ## The default just shows the current date and time.
+ #status_command while date +'%Y-%m-%d %X'; do sleep 1; done
+
+ #colors {
+ # statusline #ffffff
+ # background #323232
+ # inactive_workspace #32323200 #32323200 #5c5c5c
+ # scroller #2F343AFF #055E20FF #FFFFFFFF
+ #}
}
#
-# include /etc/scroll/config.d/*
+include ~/.config/scroll/config.d/*
diff --git a/scroll/config.d/swaysome.conf b/scroll/config.d/swaysome.conf
new file mode 100644
index 0000000..eebf6a3
--- /dev/null
+++ b/scroll/config.d/swaysome.conf
@@ -0,0 +1,69 @@
+# vim: ft=swayconfig
+#
+# Use (un)bindcode or (un)bindsym, depending on what you used in your main sway config file.
+# The `--no-warn` setting is only added to shortcuts that exist in the default config. You may want to add or remove
+# that flag on some bindings depending on your config.
+
+
+# Change focus between workspaces
+bindsym --no-warn $mod+1 exec "swaysome focus 1"
+bindsym --no-warn $mod+2 exec "swaysome focus 2"
+bindsym --no-warn $mod+3 exec "swaysome focus 3"
+bindsym --no-warn $mod+4 exec "swaysome focus 4"
+bindsym --no-warn $mod+5 exec "swaysome focus 5"
+bindsym --no-warn $mod+6 exec "swaysome focus 6"
+bindsym --no-warn $mod+7 exec "swaysome focus 7"
+bindsym --no-warn $mod+8 exec "swaysome focus 8"
+bindsym --no-warn $mod+9 exec "swaysome focus 9"
+#bindsym --no-warn $mod+0 exec "swaysome focus 0"
+
+# Move containers between workspaces
+bindsym --no-warn $mod+Shift+1 exec "swaysome move 1"
+bindsym --no-warn $mod+Shift+2 exec "swaysome move 2"
+bindsym --no-warn $mod+Shift+3 exec "swaysome move 3"
+bindsym --no-warn $mod+Shift+4 exec "swaysome move 4"
+bindsym --no-warn $mod+Shift+5 exec "swaysome move 5"
+bindsym --no-warn $mod+Shift+6 exec "swaysome move 6"
+bindsym --no-warn $mod+Shift+7 exec "swaysome move 7"
+bindsym --no-warn $mod+Shift+8 exec "swaysome move 8"
+bindsym --no-warn $mod+Shift+9 exec "swaysome move 9"
+#bindsym --no-warn $mod+Shift+0 exec "swaysome move 0"
+
+# Focus workspace groups
+bindsym $mod+Alt+1 exec "swaysome focus-group 1"
+bindsym $mod+Alt+2 exec "swaysome focus-group 2"
+bindsym $mod+Alt+3 exec "swaysome focus-group 3"
+bindsym $mod+Alt+4 exec "swaysome focus-group 4"
+bindsym $mod+Alt+5 exec "swaysome focus-group 5"
+bindsym $mod+Alt+6 exec "swaysome focus-group 6"
+bindsym $mod+Alt+7 exec "swaysome focus-group 7"
+bindsym $mod+Alt+8 exec "swaysome focus-group 8"
+bindsym $mod+Alt+9 exec "swaysome focus-group 9"
+#bindsym $mod+Alt+0 exec "swaysome focus-group 0"
+
+# Move containers to other workspace groups
+bindsym $mod+Alt+Shift+1 exec "swaysome move-to-group 1"
+bindsym $mod+Alt+Shift+2 exec "swaysome move-to-group 2"
+bindsym $mod+Alt+Shift+3 exec "swaysome move-to-group 3"
+bindsym $mod+Alt+Shift+4 exec "swaysome move-to-group 4"
+bindsym $mod+Alt+Shift+5 exec "swaysome move-to-group 5"
+bindsym $mod+Alt+Shift+6 exec "swaysome move-to-group 6"
+bindsym $mod+Alt+Shift+7 exec "swaysome move-to-group 7"
+bindsym $mod+Alt+Shift+8 exec "swaysome move-to-group 8"
+bindsym $mod+Alt+Shift+9 exec "swaysome move-to-group 9"
+#bindsym $mod+Alt+Shift+0 exec "swaysome move-to-group 0"
+
+# Move focused container to next output
+bindsym $mod+o exec "swaysome next-output"
+# Move focused container to previous output
+bindsym $mod+Shift+o exec "swaysome prev-output"
+
+# Move focused workspace group to next output
+bindsym $mod+Alt+o exec "swaysome workspace-group-next-output"
+# Move focused workspace group to previous output
+bindsym $mod+Alt+Shift+o exec "swaysome workspace-group-prev-output"
+
+# Init workspaces for every screen
+exec "swaysome init 1"
+
+
diff --git a/scroll/scripts/maximize.lua b/scroll/scripts/maximize.lua
new file mode 100644
index 0000000..f0df156
--- /dev/null
+++ b/scroll/scripts/maximize.lua
@@ -0,0 +1,42 @@
+local args, state = ...
+
+-- Set up views table
+local views = scroll.state_get_value(state, "views")
+if views == nil then
+ scroll.state_set_value(state, "views", {})
+ views = scroll.state_get_value(state, "views")
+end
+
+local function find_view(view)
+ for _, v in ipairs(views) do
+ if v["object"] == view then
+ return v
+ end
+ end
+ return nil
+end
+
+if args[1] == 'toggle' then
+ local focused_view = scroll.focused_view()
+ local view = find_view(focused_view)
+ if view == nil then
+ view = {
+ object = focused_view,
+ maximized = false,
+ wf = 0,
+ hf = 0
+ }
+ table.insert(views, view)
+ end
+ view["maximized"] = not view["maximized"]
+ if view["maximized"] then
+ local container = scroll.view_get_container(focused_view)
+ view["wf"] = scroll.container_get_width_fraction(container)
+ view["hf"] = scroll.container_get_height_fraction(container)
+ scroll.command(nil, "set_size h 1.0")
+ scroll.command(nil, "set_size v 1.0")
+ else
+ scroll.command(nil, "set_size h " .. view["wf"])
+ scroll.command(nil, "set_size v " .. view["hf"])
+ end
+end
diff --git a/scroll/scripts/maximize_when_only.lua b/scroll/scripts/maximize_when_only.lua
new file mode 100644
index 0000000..a047180
--- /dev/null
+++ b/scroll/scripts/maximize_when_only.lua
@@ -0,0 +1,38 @@
+local args, state = ...
+
+local maximized_containers = scroll.state_get_value(state, "maximized_containers") or {}
+
+local debug_notify = function(msg)
+ scroll.command(nil, "exec notify-send " .. msg)
+end
+
+local maximize_container = function(container, workspace)
+ local wf = scroll.container_get_width_fraction(container)
+ local hf = scroll.container_get_height_fraction(container)
+ maximized_containers[workspace] = { container = container, wf = wf, hf = hf, workspace = workspace }
+ scroll.state_set_value(state, "maximized_containers", maximized_containers)
+ scroll.command(container, "set_size h 1.0")
+ scroll.command(container, "set_size v 1.0")
+end
+
+local maximize_when_only = function()
+ local focused_workspace = scroll.focused_workspace()
+ local containers = scroll.workspace_get_tiling(focused_workspace)
+ local focused_container = scroll.focused_container()
+ local maximized_container = maximized_containers[focused_workspace]
+ if #containers == 1 then
+ if not maximized_container or (maximized_container and maximized_container.container ~= focused_container) then
+ -- debug_notify("Maximizing")
+ maximize_container(focused_container, focused_workspace)
+ end
+ elseif #containers > 1 and maximized_container then
+ -- debug_notify("Shrinking")
+ scroll.command(maximized_container.container, "set_size h " .. maximized_container.wf)
+ scroll.command(maximized_container.container, "set_size v " .. maximized_container.hf)
+ maximized_containers[focused_workspace] = nil
+ scroll.state_set_value(state, "maximized_containers", maximized_containers)
+ end
+ scroll.command(focused_container, "nop")
+end
+
+scroll.add_callback("view_focus", maximize_when_only, nil)
diff --git a/scroll/scripts/scratchpad.lua b/scroll/scripts/scratchpad.lua
new file mode 100644
index 0000000..0afaa97
--- /dev/null
+++ b/scroll/scripts/scratchpad.lua
@@ -0,0 +1,66 @@
+local args, _ = ...
+local id = ""
+local terminal = false
+local command = nil
+
+for i, arg in ipairs(args) do
+ if i <= 1 then
+ id = arg
+ if #args == 1 then
+ command = arg
+ end
+ elseif i == 2 then
+ if (arg == "kitty") then
+ terminal = true
+ else
+ command = arg
+ end
+ elseif (terminal == true) then
+ command = arg
+ break
+ end
+end
+
+command = command or "kitty"
+
+local function exists(id)
+ local is_in_scratchpad = false
+ local cons = scroll.scratchpad_get_containers()
+ for _, con in ipairs(cons) do
+ local views = scroll.container_get_views(con)
+ for _, view in ipairs(views) do
+ local app_id = scroll.view_get_app_id(view)
+ if (app_id == id) then
+ is_in_scratchpad = true
+ end
+ end
+ end
+ return is_in_scratchpad
+end
+
+local function is_focused(id)
+ local view = scroll.focused_view()
+ local app_id = scroll.view_get_app_id(view)
+ return app_id == id
+end
+
+local function spawn(term, comm)
+ if (term) then
+ if (comm) then
+ scroll.command(nil, "exec kitty --class " .. id .. " -e " .. comm)
+ else
+ scroll.command(nil, "exec kitty --class " .. id)
+ end
+ else
+ scroll.command(nil, "exec " .. comm)
+ end
+end
+
+if (not exists(id)) then
+ spawn(terminal, command)
+end
+if (is_focused(id)) then
+ scroll.command(nil, "scratchpad show")
+else
+ scroll.command(nil, "[app_id=\"" .. id .. "\"] scratchpad show")
+end
diff --git a/scroll/scripts/swallow.lua b/scroll/scripts/swallow.lua
new file mode 100644
index 0000000..5760886
--- /dev/null
+++ b/scroll/scripts/swallow.lua
@@ -0,0 +1,32 @@
+local function candidate(view)
+ local app_id = scroll.view_get_app_id(view)
+ if app_id == "mpv" then
+ local pview = scroll.view_get_parent_view(view)
+ if pview ~= nil and pview ~= view then
+ local papp_id = scroll.view_get_app_id(pview)
+ if papp_id == "kitty" then
+ return scroll.view_get_container(pview)
+ end
+ end
+ end
+ return nil
+end
+
+local function on_create(view, _)
+ local parent = candidate(view)
+ if parent ~= nil then
+ scroll.command(parent, "move scratchpad")
+ end
+end
+
+local function on_destroy(view, _)
+ local parent = candidate(view)
+ if parent ~= nil then
+ scroll.command(nil, "scratchpad show; floating toggle")
+ end
+end
+
+scroll.add_callback("view_map", on_create, nil)
+scroll.add_callback("view_unmap", on_destroy, nil)
+
+
diff --git a/sh/aliases b/sh/aliases
index 93784e7..2e7ecf5 100644
--- a/sh/aliases
+++ b/sh/aliases
@@ -19,10 +19,10 @@ case `uname -s` in
;;
"Linux")
#alias ls="ls -h $COLOR_FLAGS_GNU"
- alias ls="eza"
+ type eza >/dev/null && alias ls="eza"
;;
"Darwin")
- alias ls="eza --color"
+ type eza >/dev/null && alias ls="eza --color"
;;
esac
alias ll='ls -l'
@@ -44,7 +44,7 @@ case `uname -s` in
alias rm='rm -i'
;;
"Linux")
- alias rm='trash-put'
+ type trash-put >/dev/null && alias rm='trash-put'
;;
esac
alias cp='cp -i'
diff --git a/sh/functions b/sh/functions
index e8515d8..e7270bc 100644
--- a/sh/functions
+++ b/sh/functions
@@ -57,67 +57,68 @@ R - /
U. - /usr
Us - /usr/share
V. - /var
-aw - /home/zachir/.config/awesome
-b. - /home/zachir/.local/bin
-bb - /home/zachir/.local/bin/blocks
-bf - /home/zachir/.local/bin/slatpak-sc
-bg - /home/zachir/.local/bin/generics
-bi - /home/zachir/.local/bin/ignore
-bsc - /home/zachir/.local/bin/scripts
-bsh - /home/zachir/.local/bin/shortcmds
-bsp - /home/zachir/.local/bin/sp
-c - /home/zachir/.config
-db - /home/zachir/.local/src/dwmbar
-dc - /home/zachir/Documents
-dl - /home/zachir/.local/src/dwl
-dm - /home/zachir/.local/src/dmenu
-do - /home/zachir/Downloads
-dp - /home/zachir/Downloads/plugin/zachir_librem.one
-dw - /home/zachir/Downloads/wine
-e - /home/zachir/Desktop
-f - /home/zachir/.var/app
-h - /home/zachir/.config/hypr
-lb - /home/zachir/.local/bin
-lc - /home/zachir/Games/cache
-lf - /home/zachir/.config/lf
-ls - /home/zachir/.local/share
-n3 - /home/zachir/.vst3/native
-ns - /home/zachir/.vst/native
-nv - /home/zachir/.config/nvim
-p - /home/zachir/Pictures
-qb - /home/zachir/.config/qutebrowser
-qp - /home/zachir/.local/share/qutebrowser-profiles
-re - /home/zachir/.local/src
+aw - $XDG_CONFIG_HOME/awesome
+b. - $HOME/.local/bin
+bb - $HOME/.local/bin/blocks
+bf - $HOME/.local/bin/slatpak-sc
+bg - $HOME/.local/bin/generics
+bi - $HOME/.local/bin/ignore
+bsc - $HOME/.local/bin/scripts
+bsh - $HOME/.local/bin/shortcmds
+bsp - $HOME/.local/bin/sp
+c - $XDG_CONFIG_HOME
+db - $SRCDIR/dwmbar
+dc - $XDG_DOCUMENTS_DIR
+dl - $SRCDIR/dwl
+dm - $SRCDIR/dmenu
+do - $XDG_DOWNLOAD_DIR
+dp - $XDG_DOWNLOAD_DIR/plugin/zachir_librem.one
+dw - $XDG_DOWNLOAD_DIR/wine
+e - $XDG_DESKTOP_DIR
+f - $HOME/.var/app
+h - $XDG_CONFIG_HOME/hypr
+lb - $HOME/.local/bin
+lc - $HOME/Games/cache
+lf - $XDG_CONFIG_HOME/lf
+ls - $XDG_DATA_HOME
+n3 - $HOME/.vst3/native
+ns - $HOME/.vst/native
+nv - $XDG_CONFIG_HOME/nvim
+p - $XDG_PICTURES_DIR
+qb - $XDG_CONFIG_HOME/qutebrowser
+qp - $XDG_DATA_HOME/qutebrowser-profiles
+re - $SRCDIR
rs - /etc/runit/sv
-sc - /home/zachir/.local/bin/scripts
-sh - /home/zachir/.config/sh
-sl - /home/zachir/.local/src/slock
+sc - $HOME/.local/bin/scripts
+sh - $XDG_CONFIG_HOME/sh
+sl - $SRCDIR/slock
ss - /etc/s6/sv
-st - /home/zachir/.local/src/st
-sx - /home/zachir/.config/sxhkd
-tr - /home/zachir/.local/share/Trash/files
-urs - /home/zachir/.runit/sv
-v3. - /home/zachir/.vst3
-v3n - /home/zachir/.vst3/native
-v3y - /home/zachir/.vst3/yabridge
-v. - /home/zachir/var
-vi - /home/zachir/Videos
-vsn - /home/zachir/.vst/native
-vs. - /home/zachir/.vst
-vsy - /home/zachir/.vst/yabridge
-wdo - /home/zachir/.local/share/wineprefixes/default/drive_c/users/zachir/Downloads
-wa - /home/zachir/.local/src/wallpapers
-wd - /home/zachir/.local/share/wineprefixes/default
-wr - /home/zachir/.local/share/wineprefixes
-wv3 - /home/zachir/.winvst3
-wvs - /home/zachir/.winvst
-ww - /home/zachir/.local/share/wineprefixes/work
-x - /home/zachir/.config/X11
-y3 - /home/zachir/.vst3/yabridge
-yb - /home/zachir/.cache/yay
-yc - /home/zachir/.config/yay
-zs - /home/zachir/.config/zsh
-zx - /home/zachir/Documents/zachir.xyz
+st - $SRCDIR/st
+sx - $XDG_CONFIG_HOME/sxhkd
+tr - $XDG_DATA_HOME/Trash/files
+urs - $HOME/.runit/sv
+v3. - $HOME/.vst3
+v3n - $HOME/.vst3/native
+v3y - $HOME/.vst3/yabridge
+v. - $HOME/var
+vi - $XDG_VIDEOS_DIR
+vsn - $HOME/.vst/native
+vs. - $HOME/.vst
+vsy - $HOME/.vst/yabridge
+vw\t- $XDG_DATA_HOME/vimwiki
+wdo - $WINEPREFIX/drive_c/users/zachir/Downloads
+wa - $SRCDIR/wallpapers
+wd - $WINEPREFIX
+wr - $WINEROOT
+wv3 - $HOME/.winvst3
+wvs - $HOME/.winvst
+ww - $WINEROOT/work
+x - $XDG_CONFIG_HOME/X11
+y3 - $HOME/.vst3/yabridge
+yb - $XDG_CACHE_HOME/yay
+yc - $XDG_CONFIG_HOME/yay
+zs - $XDG_CONFIG_HOME/zsh
+zx - $XDG_DOCUMENTS_DIR/zachir.xyz
" ;;
# STOPPRINT
# STARTPATHS
@@ -176,6 +177,7 @@ zx - /home/zachir/Documents/zachir.xyz
"vsn") cd "$HOME/.vst/native" ;;
"vs.") cd "$HOME/.vst" ;;
"vsy") cd "$HOME/.vst/yabridge" ;;
+"vw") cd "$XDG_DATA_HOME/vimwiki" ;;
"wdo") cd "$WINEPREFIX/drive_c/users/$USER/Downloads" ;;
"wa") cd "$SRCDIR/wallpapers" ;;
"wd") cd "$WINEPREFIX" ;;
diff --git a/sh/profile b/sh/profile
index e4659a5..921e1de 100644
--- a/sh/profile
+++ b/sh/profile
@@ -7,6 +7,7 @@ export XDG_CURRENT_DESKTOP="Hyprland"
export XDG_DOCUMENTS_DIR=${HOME}/Documents
export XDG_DOWNLOAD_DIR=${HOME}/Downloads
export XDG_DESKTOP_DIR=${HOME}/Desktop
+export XDG_PICTURES_DIR=${HOME}/Pictures
export XDG_STATE_HOME="${HOME}/.local/state"
export XDG_VIDEOS_DIR=${HOME}/Videos
@@ -49,7 +50,7 @@ export NOTMUCH_CONFIG="$XDG_CONFIG_HOME"/notmuch/notmuchrc
export NMBGIT="$XDG_DATA_HOME"/notmuch/nmbug
export WINEROOT="$XDG_DATA_HOME"/wineprefixes
export WINEPREFIX="$WINEROOT"/default
-export MPD_HOST="$XDG_CONFIG_HOME/mpd/socket"
+export MPD_HOST="127.0.0.1"
export GTK2_RC_FILES="$XDG_CONFIG_HOME"/gtk-2.0/gtkrc
export RENPY_PATH_TO_SAVES="$XDG_DATA_HOME"
export XINITRC="$XDG_CONFIG_HOME"/X11/xinitrc
diff --git a/sxhkd/sxhkdrc b/sxhkd/sxhkdrc
index a38f356..125f8fe 100755
--- a/sxhkd/sxhkdrc
+++ b/sxhkd/sxhkdrc
@@ -12,11 +12,15 @@ super + Escape
# program launcher
super + d
- dmenu_run -i -l 15 -h 36 -fn 'FiraCode Nerd Font Mono' -nb '#000' -nf '#c5c8c6' -sb '#198844' -sf '#000'
+ dmenu_run -l 15
# desktop application launcher
+super + e
+ j4-dmenu-desktop --dmenu="dmenu -l 15"
+
+# dmenu prompt to restart programs
super + r
- j4-dmenu-desktop --dmenu="dmenu -i -l 15 -h 36 -fn 'FiraCode Nerd Font Mono' -nb '#000' -nf '#c5c8c6' -sb '#198844' -sf '#000'"
+ rs
# dmenu prompt for recording
super + control + r
diff --git a/tofi/cosmic b/tofi/cosmic
index 8be1a31..b339f73 100644
--- a/tofi/cosmic
+++ b/tofi/cosmic
@@ -7,7 +7,7 @@ height = 32
horizontal = true
font-size = 18
prompt-text = ""
-font = FiraCode Nerd Font Mono
+font = JetBrainsMono Nerd Font
outline-width = 0
border-width = 0
min-input-width = 424
diff --git a/tofi/themes/dmenu b/tofi/themes/dmenu
index 82cff1d..8af8c80 100644
--- a/tofi/themes/dmenu
+++ b/tofi/themes/dmenu
@@ -7,7 +7,7 @@ height = 36
horizontal = true
font-size = 18
prompt-text = ""
-font = FiraCode Nerd Font Mono
+font = JetBrainsMono Nerd Font
outline-width = 0
border-width = 0
min-input-width = 424
diff --git a/tofi/themes/dmenu_vertical b/tofi/themes/dmenu_vertical
index 6357b5a..2e95559 100644
--- a/tofi/themes/dmenu_vertical
+++ b/tofi/themes/dmenu_vertical
@@ -8,7 +8,7 @@ horizontal = false
font-size = 18
prompt-text = ""
prompt-padding = 18
-font = FiraCode Nerd Font Mono
+font = JetBrainsMono Nerd Font
outline-width = 0
border-width = 0
min-input-width = 424
diff --git a/waybar/config b/waybar/config
index 74d0fee..91dd9a4 100644
--- a/waybar/config
+++ b/waybar/config
@@ -1,3 +1,4 @@
+// vim: set filetype=json5 :
{
"layer": "bottom",
"position": "top",
@@ -5,7 +6,7 @@
//"output": "%%DISPLAY%%",
"spacing": 4,
//"margin-top": 5,
- //"margin-bottom":5,
+ //"margin-bottom": 5,
// Choose the order of the modules
@@ -18,17 +19,48 @@
"sway/workspaces": {
"all-outputs": false,
"persistent-workspaces": {
- "1": ["eDP-1"],
- "2": ["eDP-1"],
- "3": ["eDP-1"],
- "4": ["eDP-1"],
- "5": ["eDP-1"],
- "6": ["eDP-1"],
- "7": ["eDP-1"],
- "8": ["eDP-1"],
- "9": ["eDP-1"],
+ "11": ["eDP-1"],
+ "12": ["eDP-1"],
+ "13": ["eDP-1"],
+ "14": ["eDP-1"],
+ "15": ["eDP-1"],
+ "16": ["eDP-1"],
+ "17": ["eDP-1"],
+ "18": ["eDP-1"],
+ "19": ["eDP-1"],
+ },
+ "format": "{icon}",
+ "format-icons": {
+ "1": "1",
+ "2": "2",
+ "3": "3",
+ "4": "4",
+ "5": "5",
+ "6": "6",
+ "7": "7",
+ "8": "8",
+ "9": "9",
+ "10": "0",
+ "11": "1",
+ "12": "2",
+ "13": "3",
+ "14": "4",
+ "15": "5",
+ "16": "6",
+ "17": "7",
+ "18": "8",
+ "19": "9",
+ "20": "0",
+ "21": "1",
+ "22": "2",
+ "23": "3",
+ "24": "4",
+ "25": "5",
+ "26": "6",
+ "27": "7",
+ "28": "8",
+ "29": "9",
},
- "format": "{value}",
},
"niri/workspaces": {
"format": "{value}",
@@ -39,6 +71,7 @@
"format": "{icon}",
"active-only": false,
"all-outputs": false,
+ "persistent-only": true,
"format-icons": {
"1": "1",
"2": "2",
@@ -60,10 +93,10 @@
"18": "9",
},
"persistent-workspaces": {
- "eDP-1": [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ],
+ "*": 9,
},
- "on-scroll-up": "hyprctl dispatch split-workspace e+1",
- "on-scroll-down": "hyprctl dispatch split-workspace e-1",
+ "on-scroll-up": "hyprctl dispatch split:workspace r+1",
+ "on-scroll-down": "hyprctl dispatch split:workspace r-1",
"on-click": "activate"
},
"sway/window": {
@@ -82,7 +115,7 @@
"separate-outputs": true,
"icon": true,
"format": "{title}",
- "espand": true,
+ "expand": true,
},
"keyboard-state": {
"numlock": true,
@@ -125,7 +158,7 @@
"tooltip": false
},
"memory": {
- "format": "{}% "
+ "format": "{used}G "
},
"battery": {
"bat": "BAT0",
@@ -160,7 +193,7 @@
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
- "format-wifi": "{essid} ({signalStrength}%) ",
+ "format-wifi": "{essid} ",
"format-ethernet": "Connected  ",
"tooltip-format": "{ifname} via {gwaddr} ",
"format-linked": "{ifname} (No IP) ",
@@ -182,9 +215,16 @@
"on-click": "rofi -show drun",
//"on-click-right": "killall rofi"
},
+ "custom/battery":{
+ "interval": 15,
+ "format": "{percentage}%",
+ "return-type": "json",
+ "exec": "custom-battery",
+ "tooltip": true,
+ },
"custom/power":{
"format": "",
- "on-click": "rofi -show p -modi p:rofi-power-menu",
+ "on-click": "power-menu",
//"on-click-right": "killall rofi"
},
"custom/snip":{
diff --git a/waybar/style.css b/waybar/style.css
index 9398381..04a1c3e 100644
--- a/waybar/style.css
+++ b/waybar/style.css
@@ -3,7 +3,7 @@
margin: 0px;
border-radius: 0px;
/* `otf-font-awesome` is required to be installed for icons */
- font-family: FiraCode Nerd Font Mono;
+ font-family: JetBrainsMono Nerd Font;
font-size: 18px;
min-height: 0px;
min-width: 0px;
@@ -14,6 +14,7 @@ window#waybar {
color: #ffffff;
transition-property: background-color;
transition-duration: .5s;
+ background: rgba(0, 0, 0, 0.4);
}
window#waybar.hidden {
@@ -89,6 +90,7 @@ window#waybar.hidden {
#custom-media,
#custom-launcher,
#custom-power,
+#custom-battery,
#custom-layout,
#custom-updater,
#custom-snip,
@@ -158,11 +160,13 @@ label:focus {
#cpu {
background-color: #1b1d1c;
color: #ffffff;
+ padding-right: 18px;
}
#memory {
background-color: #198844;
color: #ffffff;
+ padding-right: 18px;
}
#disk {
@@ -178,6 +182,7 @@ label:focus {
#network {
background-color: #198844;
color: #ffffff;
+ padding-right: 18px;
}
#network.disconnected {
@@ -188,6 +193,7 @@ label:focus {
#wireplumber {
background-color: #198844;
color: #ffffff;
+ padding-right: 18px;
}
#wireplumber.muted {
@@ -215,7 +221,26 @@ label:focus {
background-color: #1b1d1c;
font-size: 18px;
margin-right: 5px;
+}
+
+#custom-battery{
+ background-color: #1b1d1c;
+ font-size: 18px;
+}
+#custom-battery.battery_low{
+ background-color: yellow;
+ color: #1b1d1c;
+}
+
+#custom-battery.battery_crit{
+ background-color: red;
+ color: #1b1d1c;
+}
+
+#custom-battery.battery_charging{
+ background-color: #1d1b1c;
+ color: #198844;
}
#custom-launcher{
@@ -302,7 +327,7 @@ label:focus {
#idle_inhibitor {
background-color: #1b1d1c;
border-radius: 20px 0px 0px 20px;
-
+ padding-right: 18px;
}
#idle_inhibitor.activated {
diff --git a/wireplumber/wireplumber.conf.d/51-id4.conf b/wireplumber/wireplumber.conf.d/51-id4.conf
new file mode 100644
index 0000000..c01df40
--- /dev/null
+++ b/wireplumber/wireplumber.conf.d/51-id4.conf
@@ -0,0 +1,17 @@
+monitor.alsa.rules = [
+ {
+ matches = [
+ {
+ device.name = "alsa_card.usb-Audient_Audient_iD4-00"
+ }
+ ]
+ actions = {
+ update-props = {
+ api.alsa.use-acp = false,
+ device.profile = "pro-audio",
+ api.acp.auto-profile = false,
+ api.acp.auto-port = false
+ }
+ }
+ }
+]
diff --git a/wireplumber/wireplumber.conf.d/51-volt4.conf b/wireplumber/wireplumber.conf.d/51-volt4.conf
new file mode 100644
index 0000000..0c03252
--- /dev/null
+++ b/wireplumber/wireplumber.conf.d/51-volt4.conf
@@ -0,0 +1,17 @@
+monitor.alsa.rules = [
+ {
+ matches = [
+ {
+ device.name = "alsa_card.usb-Universal_Audio_Volt_4_22282055004772-00"
+ }
+ ]
+ actions = {
+ update-props = {
+ api.alsa.use-acp = false,
+ device.profile = "pro-audio",
+ api.acp.auto-profile = false,
+ api.acp.auto-port = false
+ }
+ }
+ }
+]
diff --git a/xsettingsd/xsettingsd.conf b/xsettingsd/xsettingsd.conf
index c4ab3db..7e001eb 100644
--- a/xsettingsd/xsettingsd.conf
+++ b/xsettingsd/xsettingsd.conf
@@ -1,5 +1,5 @@
-Net/ThemeName "Flat-Remix-GTK-Green-Darkest-Solid"
-Net/IconThemeName "Cosmic"
+Net/ThemeName "Flat-Remix-GTK-Green-Darkest"
+Net/IconThemeName "Papirus-Dark"
Gtk/CursorThemeName "BreezeX-Black"
Net/EnableEventSounds 1
EnableInputFeedbackSounds 0
diff --git a/zsh/.zshrc b/zsh/.zshrc
index d6e7718..c600a2a 100644
--- a/zsh/.zshrc
+++ b/zsh/.zshrc
@@ -41,13 +41,18 @@ bindkey "${key[End]}" end-of-line
bindkey "${key[PageUp]}" history-substring-search-up
bindkey "${key[PageDown]}" history-substring-search-down
+[ -f "$ZDOTDIR/.zsh_theme" ] && . "$ZDOTDIR/.zsh_theme"
+COLOR1="${COLOR1:-002}"
+COLOR2="${COLOR2:-006}"
+COLORV="${COLORV:-012}"
+
if (env | grep -Fq 'DISTROBOX'); then
MYPROMPT=$'%F{000}%K{004}[%n@%m]%F{013}\UE0B2%K{013}%F{000}%~%F{013}%K{004}\UE0B0%F{000}%#%F{004}%k\UE0B0%f '
else
- MYPROMPT=$'%F{000}%K{002}[%n@%m]%F{006}\UE0B2%K{006}%F{000}%~%F{006}%K{002}\UE0B0%F{000}%#%F{002}%k\UE0B0%f '
+ MYPROMPT=$'%F{000}%K{'"$COLOR1"$'}[%n@%m]%F{'"$COLOR2"$'}\UE0B2%K{'"$COLOR2"$'}%F{000}%~%F{'"$COLOR2"$'}%K{'"$COLOR1"$'}\UE0B0%F{000}%#%F{'"$COLOR1"$'}%k\UE0B0%f '
fi
function zle-line-init zle-keymap-select {
- VIM_PROMPT=$'%F{000}%K{012}[%n@%m]%F{006}\UE0B2%K{006}%F{000}%~%F{006}%K{012}\UE0B0%F{000}%#%F{012}%k\UE0B0%f '
+ VIM_PROMPT=$'%F{000}%K{'"$COLORV"$'}[%n@%m]%F{'"$COLOR2"$'}\UE0B2%K{'"$COLOR2"$'}%F{000}%~%F{'"$COLOR2"$'}%K{'"$COLORV"$'}\UE0B0%F{000}%#%F{'"$COLORV"$'}%k\UE0B0%f '
PS1="${${KEYMAP/vicmd/$VIM_PROMPT}/main/$MYPROMPT}"
zle reset-prompt
}