diff options
158 files changed, 954 insertions, 5266 deletions
@@ -1,3 +1,4 @@ +@companion-app/ 5DB5/ 5db5/ abook/ @@ -27,6 +28,7 @@ calibre/ calibre/conversion carla/ cava/ +CCL Cross-platform Framework/ cef_user_data .charles.config chromium/ @@ -52,6 +54,7 @@ Element/ emacs/ EmeraldWallet/ enchant/ +enigma/ Epic/ Etherdyne/ evolution/ @@ -82,6 +85,7 @@ gtk-3.0/* !gtk-3.0/settings.ini gtk-4.0/ guitarix/ +hammerspoon/Spoons/ Hellbeast v2/ Hellbeast v2.settings htop/htoprc @@ -111,6 +115,7 @@ kde.org/ keepassxc/ khal/ kicad/ +kid3rc Kitware/ kritadisplayrc kritarc @@ -121,6 +126,7 @@ lbry/ LBRY/ LBRY-GTK/ lbry-viewer/ +libaccounts-glib/ libfm/ libreoffice/ LibrePCB/ @@ -165,7 +171,7 @@ notmuch/ npm/ nssdb/ NuGet/ -nvim/plugged/ +nvim/lazy-lock.json nwg-look/ nwg-outputs/ obs-studio/ @@ -174,6 +180,7 @@ okularpartrc okularrc openrazer/ package-lock.json +parallel/ pavucontrol.ini pcmanfm/ pcmanfm-qt/ @@ -193,6 +200,7 @@ Portmaster/ PreSonus/ print-manager/ profanity/profrc +Proton/ Proton AG/ protonfixes/ protonmail/ @@ -230,6 +238,7 @@ RVXX EXEX.settings RVXX v2/ RVXX v2.settings SchildiChat/ +scroll/config.d/user.conf Serenity/ Session/ Shibalba EXEX.settings @@ -238,6 +247,7 @@ SNAPSHOT PLAYER/ snownews/urls.opml solaar/ sonobus/ +spicy/ spotifyd/ spotify-tui/ straw-viewer/ @@ -263,6 +273,7 @@ transmission-daemon/ tremc/ Trolltech.conf .tsrc +tuxclocker.conf ubports-installer/ ultravnc-viewer/ UNDERTALE*/ @@ -280,6 +291,8 @@ waybar/config-Hyprland-* waybar/config-river-* weechat/ whoozle.github.io/ +winboat/ +wireshark/ xmonad/.stack-work xmonad/stack.yaml.lock xmonad/xmonad.hi @@ -299,4 +312,5 @@ zsh/hist zsh/.zcompdump zsh/zcompdump zsh/zfunc +zsh/.zkbd/ zsh/.zsh_theme diff --git a/.gitmodules b/.gitmodules index b3d9f09..f477143 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,9 +7,3 @@ [submodule "qutebrowser/jmatrix"] path = qutebrowser/jmatrix url = https://gitlab.com/jgkamat/jmatrix.git -[submodule "awesome/bling"] - path = awesome/bling - url = https://github.com/BlingCorp/bling.git -[submodule "awesome/awesome-wm-widgets"] - path = awesome/awesome-wm-widgets - url = https://git.zachir.xyz/awesome-wm-widgets.git @@ -1,19 +1,60 @@ VIM := $(shell command -v vim 2>/dev/null) -NVIM := $(shell command -v nvim 2>/dev/null) +HCONFS := hammerspoon/ +BCONFS := bash/.bash_logout bash/.bashrc ZCONFS := zsh/zshenv zsh/zshrc SCONFS := sh/profile DCONFS := doas.conf all: -install: install-zshconfigs install-shconfigs vimplug-vim vimplug-nvim +install: install-zshconfigs install-shconfigs vimplug-vim wc -install-zshconfigs: $(ZCONFS) - @echo "Installing zsh conf files..." - @echo ".zshenv..." - @ln -sf `pwd`/zsh/zshenv ~/.zshenv - @echo ".zshrc..." - @ln -sf `pwd`/zsh/zshrc ~/.zshrc +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!" + @echo "Enabling hyprsplit..." + @hyprpm enable hyprsplit + @echo "Done." + +install-hammerspoon: + @echo "Copying hammerspoon config dir..." + @ln -sf `pwd`/hammerspoon ~/.hammerspoon + @echo "Done." + +install-hyprland-plugins: + @echo "Installing hyprland-plugins..." + @hyprpm add https://github.com/hyprwm/hyprland-plugins || echo "Already installed!" + @echo "Enabling hyprscrolling..." + @hyprpm enable hyprscrolling + @echo "Done." + +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) @@ -30,17 +71,10 @@ else @echo "vim not installed." endif -vimplug-nvim: installers/vimplug_nvim.sh -ifdef NVIM - @echo "Installing vim-plug for nvim..." - @$(shell installers/vimplug_nvim.sh) - @echo "Done." -else - @echo "nvim not installed." -endif - doas-conf: $(DCONFS) @echo "Installing doas config files..." @echo "doas.conf..." @sudo cp -n doas.conf /etc/doas.conf @echo "Done." + +.PHONY: install-hyprplugins install-zshconfigs install-shconfigs vimplug-vim doas-conf install install-scrollconf install-bashconfigs @@ -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 deleted file mode 100755 index 534bfc6..0000000 --- a/X11/xinitrc +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -[ -x ~/.screenlayout/layout.sh ] && ~/.screenlayout/layout.sh -setxkbmap -option "caps:escape" & -xrdb ~/.Xresources -exec awesome diff --git a/X11/xprofile b/X11/xprofile deleted file mode 100755 index 1a24852..0000000 --- a/X11/xprofile +++ /dev/null @@ -1 +0,0 @@ -#!/bin/sh diff --git a/X11/xresources b/X11/xresources deleted file mode 100644 index d5c4550..0000000 --- a/X11/xresources +++ /dev/null @@ -1,495 +0,0 @@ -!! dmenu - -dmenu.font: mononoki Nerd Font Mono:size=24 - -!! dwm - -dwm.normbgcolor: #000000 -dwm.normbordercolor: #1b1d1c -dwm.normfgcolor: #ffffff -dwm.selbgcolor: #198844 -dwm.selbordercolor: #198844 -dwm.selfgcolor: #ffffff -dwm.urgfgcolor: #ffffff -dwm.urgbordercolor: #198844 -dwm.urgbgcolor: #cc342b -dwm.borderpx: 3 -dwm.gappx: 6 -dwm.snap: 32 -dwm.showbar: 1 -dwm.topbar: 1 -dwm.nmaster: 1 -dwm.resizehints: 1 -dwm.mfact: 0.50 - -!! st - -! These options only take effect on startup. -st.termname: st-256color -! if you do not set shell, precedence is: -e arg, utmp option, SHELL env var, /etc/passwd shell -st.shell: /usr/bin/tmux - -! The following options options can be reloaded via USR1 signal. -!st.font: mononoki Nerd Font Mono:pixelsize=12:antialias=true:autohint=true; -!st.font2: Symbola:pixelsize=12:antialias=true:autohint=true; -st.borderpx: 3 -! st alpha -st.alpha: 0.8 -st.alphaUnfocused: 0.8 -! Available cursor values: 2 4 6 7 = █ _ | ☃ ( 1 3 5 are blinking versions) -st.cursorshape: 6 -! thickness of underline and bar cursors -st.cursorthickness: 2 -! 0: normal blinking, 1: leave cursor border and blink with cursor''s background -st.cursorblinkstyle: 0 -! 0: cursor blinks with a constant interval; 1: blinking cycle resets on key input -st.cursorblinkontype: 1 -! st.bold_font: 0 -st.xfps: 120 -st.actionfps: 60 -! Amount of lines scrolled -st.mouseScrollLines: 1 -! Kerning / character bounding-box height multiplier -st.chscale: 1.0 -! Kerning / character bounding-box width multiplier -st.cwscale: 1.0 -! blinking timeout for terminal and cursor blinking (0 disables) -st.blinktimeout: 800 -! bell volume. Value between -100 and 100. (0 disables) -st.bellvolume: 0 -! this is a char that is exposed like so: `printf '\033[z'` -st.prompt_char: $ -! This option is can be preedit style. Available values: `root` `overthespot` (Default taken `root`) -st.imstyle: root -! This option sets the number of spaces for a tab -st.tabspaces: 2 - -!! RXVT-Unicode (urxvt) config -! do not scroll with output -URxvt.scrollTtyOutput: false -! scroll in relation to buffer (with mouse scroll or Shift+Page Up) -URxvt.scrollWithBuffer: true -! scroll back to the bottom on keypress -URxvt.scrollTtyKeypress: true -! disable scrollback buffer for secondary screen -URxvt.secondaryScreen: 1 -URxvt.secondaryScroll: 0 -URxvt.secondaryWheel: 1 -! URxvt font -URxvt.font: xft:Fira Code:regular:size=8,xft:symbola:regular:size=9 -! fix font spacing -URxvt.letterSpace: -1 -! Disable printing -URxvt.print-pipe: "cat > /dev/null" -! disable iso14755 -URxvt.iso14755: false -URxvt.iso14755_52: false -! enable transparency -URxvt.depth: 32 -URxvt.background: rgba:0000/0000/0200/c800 -! disable scrollbar -URxvt.scrollBar: false - -!! perls -! perls -URxvt.perl-ext: default,url-select,tabbed,resize-font,clipboard -! clipboard -URxvt.clipboard.autocopy: true -URxvt.keysym.Shift-Control-C: perl:clipboard:copy -URxvt.keysym.Shift-Control-V: perl:clipboard:paste -! url-select -URxvt.keysum.M-u: perl:url-select:select-next -URxvt.url-select.launcher: /usr/bin/xdg-open -URxvt.url-select.underline: true -! tabbed -URxvt.tabbed.tabbar-fg: 2 -URxvt.tabbed.tabbar-bg: 0 -URxvt.tabbed.tab-fg: 3 -URxvt.tabbed.tab-bg: 0 -! resize-font -URxvt.keysym.C-Minus: resize-font:smaller -URxvt.keysym.C-Plus: resize-font:bigger - -! "Enabled modi" Set from: Default -rofi.modi: window,run,ssh,drun.5 -! "Window width" Set from: Default -rofi.width: 1366 -! "Number of lines" Set from: Default -! rofi.lines: 15 -! "Number of columns" Set from: Default -! rofi.columns: 1 -! "Font to use" Set from: Default -rofi.font: mononoki 9 -! "Border width" Set from: Default -! rofi.bw: 1 -! "Location on screen" Set from: Default -rofi.location: 2 -! "Padding" Set from: Default -! rofi.padding: 5 -! "Y-offset relative to location" Set from: Default -! rofi.yoffset: 0 -! "X-offset relative to location" Set from: Default -! rofi.xoffset: 0 -! "Always show number of lines" Set from: Default -! rofi.fixed-num-lines: true -! "Whether to load and show icons" Set from: Default -! rofi.show-icons: false -! "Terminal to use" Set from: Default -! rofi.terminal: rofi-sensible-terminal -! "Ssh client to use" Set from: Default -! rofi.ssh-client: ssh -! "Ssh command to execute" Set from: Default -! rofi.ssh-command: {terminal} -e {ssh-client} {host} [-p {port}] -! "Run command to execute" Set from: Default -! rofi.run-command: {cmd} -! "Command to get extra run targets" Set from: Default -! rofi.run-list-command: -! "Run command to execute that runs in shell" Set from: Default -! rofi.run-shell-command: {terminal} -e {cmd} -! "Command to executed when -kb-accept-alt binding is hit on selected window " Set from: Default -! rofi.window-command: wmctrl -i -R {window} -! "Window fields to match in window mode" Set from: Default -! rofi.window-match-fields: all -! "Theme to use to look for icons" Set from: Default -! rofi.icon-theme: -! "Desktop entry fields to match in drun" Set from: Default -! rofi.drun-match-fields: name,generic,exec,categories,keywords -! "Only show Desktop entry from these categories" Set from: Default -! rofi.drun-categories: -! "Desktop entry show actions." Set from: Default -! rofi.drun-show-actions: false -! "DRUN format string. (Supports: generic,name,comment,exec,categories)" Set from: Default -! rofi.drun-display-format: {name} [<span weight='light' size='small'><i>({generic})</i></span>] -! "Command to open an Desktop Entry that is a Link." Set from: Default -! rofi.drun-url-launcher: xdg-open -! "Disable history in run/ssh" Set from: Default -! rofi.disable-history: false -! "Programs ignored for history" Set from: Default -! rofi.ignored-prefixes: -! "Use sorting" Set from: Default -! rofi.sort: false -! "Choose the strategy used for sorting: normal (levenshtein) or fzf." Set from: Default -! rofi.sorting-method: normal -! "Set case-sensitivity" Set from: Default -! rofi.case-sensitive: false -! "Cycle through the results list" Set from: Default -! rofi.cycle: true -! "Enable sidebar-mode" Set from: Default -! rofi.sidebar-mode: false -! "Row height (in chars)" Set from: Default -! rofi.eh: 1 -! "Enable auto select mode" Set from: Default -! rofi.auto-select: false -! "Parse hosts file for ssh mode" Set from: Default -! rofi.parse-hosts: false -! "Parse known_hosts file for ssh mode" Set from: Default -! rofi.parse-known-hosts: true -! "Set the modi to combine in combi mode" Set from: Default -! rofi.combi-modi: window,run -! "Set the matching algorithm. (normal, regex, glob, fuzzy)" Set from: Default -! rofi.matching: normal -! "Tokenize input string" Set from: Default -! rofi.tokenize: true -! "Monitor id to show on" Set from: Default -! rofi.m: -5 -! "Margin between rows *DEPRECATED*" Set from: Default -! rofi.line-margin: 2 -! "Padding within rows *DEPRECATED*" Set from: Default -! rofi.line-padding: 1 -! "Pre-set filter" Set from: Default -! rofi.filter: -! "Separator style (none, dash, solid) *DEPRECATED*" Set from: Default -! rofi.separator-style: dash -! "Hide scroll-bar *DEPRECATED*" Set from: Default -! rofi.hide-scrollbar: false -! "Fullscreen" Set from: Default -! rofi.fullscreen: false -! "Fake transparency *DEPRECATED*" Set from: Default -! rofi.fake-transparency: false -! "DPI" Set from: Default -! rofi.dpi: -1 -! "Threads to use for string matching" Set from: Default -! rofi.threads: 0 -! "Scrollbar width *DEPRECATED*" Set from: Default -! rofi.scrollbar-width: 8 -! "Scrolling method. (0: Page, 1: Centered)" Set from: Default -! rofi.scroll-method: 0 -! "Background to use for fake transparency. (background or screenshot) *DEPRECATED*" Set from: Default -! rofi.fake-background: screenshot -! "Window Format. w (desktop name), t (title), n (name), r (role), c (class)" Set from: Default -! rofi.window-format: {w} {c} {t} -! "Click outside the window to exit" Set from: Default -! rofi.click-to-exit: true -! "Indicate how it match by underlining it." Set from: Default -! rofi.show-match: true -! "New style theme file" Set from: Default -! rofi.theme: -! "Color scheme for normal row" Set from: Default -! 'bg' 'fg' 'bgalt' 'hlbg' 'hlfg' -rofi.color-normal: #000000, #b4b7b5, #89231d, #cc342b, #000000 -! "Color scheme for urgent row" Set from: Default -! rofi.color-urgent: -! "Color scheme for active row" Set from: Default -! rofi.color-active: -! "Color scheme window" Set from: Default -! 'background' 'border' 'separator' -rofi.color-window: #1d1f21, #101010, #000000 -! "Max history size (WARNING: can cause slowdowns when set to high)." Set from: Default -! rofi.max-history-size: 25 -! "Hide the prefix mode prefix on the combi view." Set from: Default -! rofi.combi-hide-mode-prefix: false -! "Set the character used to negate the matching. ('\0' to disable)" Set from: Default -! rofi.matching-negate-char: - -! "Directory where history and temporary files are stored." Set from: Default -! rofi.cache-dir: -! "Show window thumbnail (if available) as icon in window switcher." Set from: Default -! rofi.window-thumbnail: false -! "DRUN: build and use a cache with desktop file content." Set from: Default -! rofi.drun-use-desktop-cache: false -! "DRUN: If enabled, reload the cache with desktop file content." Set from: Default -! rofi.drun-reload-desktop-cache: false -! "Normalize string when matching (implies -no-show-match)." Set from: Default -! rofi.normalize-match: false -! "Pidfile location" Set from: Default -! rofi.pid: /run/user/1000/rofi.pid -! "The display name of this browser" Set from: Default -! rofi.display-window: -! "The display name of this browser" Set from: Default -! rofi.display-windowcd: -! "The display name of this browser" Set from: Default -! rofi.display-run: -! "The display name of this browser" Set from: Default -! rofi.display-ssh: -! "The display name of this browser" Set from: Default -! rofi.display-drun: -! "The display name of this browser" Set from: Default -! rofi.display-combi: -! "The display name of this browser" Set from: Default -! rofi.display-keys: -! "The display name of this browser" Set from: Default -! rofi.display-file-browser: -! "Paste primary selection" Set from: Default -! rofi.kb-primary-paste: Control+V,Shift+Insert -! "Paste clipboard" Set from: Default -! rofi.kb-secondary-paste: Control+v,Insert -! "Clear input line" Set from: Default -! rofi.kb-clear-line: Control+w -! "Beginning of line" Set from: Default -! rofi.kb-move-front: Control+a -! "End of line" Set from: Default -! rofi.kb-move-end: Control+e -! "Move back one word" Set from: Default -! rofi.kb-move-word-back: Alt+b,Control+Left -! "Move forward one word" Set from: Default -! rofi.kb-move-word-forward: Alt+f,Control+Right -! "Move back one char" Set from: Default -! rofi.kb-move-char-back: Left,Control+b -! "Move forward one char" Set from: Default -! rofi.kb-move-char-forward: Right,Control+f -! "Delete previous word" Set from: Default -! rofi.kb-remove-word-back: Control+Alt+h,Control+BackSpace -! "Delete next word" Set from: Default -! rofi.kb-remove-word-forward: Control+Alt+d -! "Delete next char" Set from: Default -! rofi.kb-remove-char-forward: Delete,Control+d -! "Delete previous char" Set from: Default -! rofi.kb-remove-char-back: BackSpace,Shift+BackSpace,Control+h -! "Delete till the end of line" Set from: Default -! rofi.kb-remove-to-eol: Control+k -! "Delete till the start of line" Set from: Default -! rofi.kb-remove-to-sol: Control+u -! "Accept entry" Set from: Default -! rofi.kb-accept-entry: Control+j,Control+m,Return,KP_Enter -! "Use entered text as command (in ssh/run modi)" Set from: Default -! rofi.kb-accept-custom: Control+Return -! "Use alternate accept command." Set from: Default -! rofi.kb-accept-alt: Shift+Return -! "Delete entry from history" Set from: Default -! rofi.kb-delete-entry: Shift+Delete -! "Switch to the next mode." Set from: Default -! rofi.kb-mode-next: Shift+Right,Control+Tab -! "Switch to the previous mode." Set from: Default -! rofi.kb-mode-previous: Shift+Left,Control+ISO_Left_Tab -! "Go to the previous column" Set from: Default -! rofi.kb-row-left: Control+Page_Up -! "Go to the next column" Set from: Default -! rofi.kb-row-right: Control+Page_Down -! "Select previous entry" Set from: Default -! rofi.kb-row-up: Up,Control+p,ISO_Left_Tab -! "Select next entry" Set from: Default -! rofi.kb-row-down: Down,Control+n -! "Go to next row, if one left, accept it, if no left next mode." Set from: Default -! rofi.kb-row-tab: Tab -! "Go to the previous page" Set from: Default -! rofi.kb-page-prev: Page_Up -! "Go to the next page" Set from: Default -! rofi.kb-page-next: Page_Down -! "Go to the first entry" Set from: Default -! rofi.kb-row-first: Home,KP_Home -! "Go to the last entry" Set from: Default -! rofi.kb-row-last: End,KP_End -! "Set selected item as input text" Set from: Default -! rofi.kb-row-select: Control+space -! "Take a screenshot of the rofi window" Set from: Default -! rofi.kb-screenshot: Alt+S -! "Toggle between ellipsize modes for displayed data" Set from: Default -! rofi.kb-ellipsize: Alt+period -! "Toggle case sensitivity" Set from: Default -! rofi.kb-toggle-case-sensitivity: grave,dead_grave -! "Toggle sort" Set from: Default -! rofi.kb-toggle-sort: Alt+grave -! "Quit rofi" Set from: Default -! rofi.kb-cancel: Escape,Control+g,Control+bracketleft -! "Custom keybinding 1" Set from: Default -! rofi.kb-custom-1: Alt+1 -! "Custom keybinding 2" Set from: Default -! rofi.kb-custom-2: Alt+2 -! "Custom keybinding 3" Set from: Default -! rofi.kb-custom-3: Alt+3 -! "Custom keybinding 4" Set from: Default -! rofi.kb-custom-4: Alt+4 -! "Custom Keybinding 5" Set from: Default -! rofi.kb-custom-5: Alt+5 -! "Custom keybinding 6" Set from: Default -! rofi.kb-custom-6: Alt+6 -! "Custom Keybinding 7" Set from: Default -! rofi.kb-custom-7: Alt+7 -! "Custom keybinding 8" Set from: Default -! rofi.kb-custom-8: Alt+8 -! "Custom keybinding 9" Set from: Default -! rofi.kb-custom-9: Alt+9 -! "Custom keybinding 10" Set from: Default -! rofi.kb-custom-10: Alt+0 -! "Custom keybinding 11" Set from: Default -! rofi.kb-custom-11: Alt+exclam -! "Custom keybinding 12" Set from: Default -! rofi.kb-custom-12: Alt+at -! "Custom keybinding 13" Set from: Default -! rofi.kb-custom-13: Alt+numbersign -! "Custom keybinding 14" Set from: Default -! rofi.kb-custom-14: Alt+dollar -! "Custom keybinding 15" Set from: Default -! rofi.kb-custom-15: Alt+percent -! "Custom keybinding 16" Set from: Default -! rofi.kb-custom-16: Alt+dead_circumflex -! "Custom keybinding 17" Set from: Default -! rofi.kb-custom-17: Alt+ampersand -! "Custom keybinding 18" Set from: Default -! rofi.kb-custom-18: Alt+asterisk -! "Custom Keybinding 19" Set from: Default -! rofi.kb-custom-19: Alt+parenleft -! "Select row 1" Set from: Default -! rofi.kb-select-1: Super+1 -! "Select row 2" Set from: Default -! rofi.kb-select-2: Super+2 -! "Select row 3" Set from: Default -! rofi.kb-select-3: Super+3 -! "Select row 4" Set from: Default -! rofi.kb-select-4: Super+4 -! "Select row 5" Set from: Default -! rofi.kb-select-5: Super+5 -! "Select row 6" Set from: Default -! rofi.kb-select-6: Super+6 -! "Select row 7" Set from: Default -! rofi.kb-select-7: Super+7 -! "Select row 8" Set from: Default -! rofi.kb-select-8: Super+8 -! "Select row 9" Set from: Default -! rofi.kb-select-9: Super+9 -! "Select row 10" Set from: Default -! rofi.kb-select-10: Super+0 -! "Go to the previous column" Set from: Default -! rofi.ml-row-left: ScrollLeft -! "Go to the next column" Set from: Default -! rofi.ml-row-right: ScrollRight -! "Select previous entry" Set from: Default -! rofi.ml-row-up: ScrollUp -! "Select next entry" Set from: Default -! rofi.ml-row-down: ScrollDown -! "Select hovered row" Set from: Default -! rofi.me-select-entry: MousePrimary -! "Accept hovered row" Set from: Default -! rofi.me-accept-entry: MouseDPrimary -! "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 -*.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 -*.color8: #969896 - -! red -*.color1: #89231d -*.color9: #cc342b - -! green -*.color2: #198844 -*.color10: #4eec4e - -! yellow -*.color3: #ae7518 -*.color11: #fba922 - -! blue -*.color4: #2b55b2 -*.color12: #3971ed - -! magenta -*.color5: #784e93 -*.color13: #a36ac7 - -! cyan -*.color6: #2783a1 -*.color14: #39c1ed - -! white -*.color7: #b4b7b5 -*.color15: #ffffff diff --git a/alacritty/alacritty.yml b/alacritty/alacritty.yml index 25af5d4..0b30805 100644 --- a/alacritty/alacritty.yml +++ b/alacritty/alacritty.yml @@ -115,7 +115,7 @@ font: # - (macOS) Menlo # - (Linux/BSD) monospace # - (Windows) Consolas - family: mononoki 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: mononoki 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: mononoki 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: mononoki Nerd Font Mono + family: JetBrainsMono Nerd Font # The `style` can be specified to pick a specific face. style: Bold Italic diff --git a/autostart.sh b/autostart.sh deleted file mode 100755 index 42eb092..0000000 --- a/autostart.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh -runifnot () { - if type $1 >/dev/null; then - echo $1 - if [ -z "$(pgrep -Uzachir -f $1)" ]; then - $@ & - fi - fi -} -killandrun () { - if type $1 >/dev/null; then - echo $1 - if [ -n "$(pgrep -Uzachir -f $1)" ]; then - pkill -Uzachir $1 - fi - $@ & - fi -} - -if [ -n "${WAYLAND_DISPLAY}${DISPLAY}" ]; then - notify-sound.sh off & - runifnot swayidle - killandrun hyprpaper - runifnot waybar - import-gsettings gtk-theme 'Flat-Remix-GTK-Green-Darkest-Solid' - import-gsettings icon-theme 'Mint-X-Grey' - xrdb "$XDG_CONFIG_HOME/X11/xresources" -fi - -[ -x "$XDG_CONFIG_HOME/computerrc.sh" ] && "$XDG_CONFIG_HOME/computerrc.sh" diff --git a/awesome/awesome-wm-widgets b/awesome/awesome-wm-widgets deleted file mode 160000 -Subproject 15f4ff3a389cce34f2134c4b65414b1204a0f43 diff --git a/awesome/bling b/awesome/bling deleted file mode 160000 -Subproject 1f6bd0d5ef150a1801d20c69437ceff61d65fac diff --git a/awesome/rc.lua b/awesome/rc.lua deleted file mode 100644 index a5605d1..0000000 --- a/awesome/rc.lua +++ /dev/null @@ -1,1053 +0,0 @@ --- If LuaRocks is installed, make sure that packages installed through it are --- found (e.g. lgi). If LuaRocks is not installed, do nothing. -pcall(require, "luarocks.loader") - --- Standard awesome library -local gears = require("gears") -local awful = require("awful") -require("awful.autofocus") --- Widget and layout library -local wibox = require("wibox") --- Theme handling library -local beautiful = require("beautiful") --- Notification library -local naughty = require("naughty") -package.loaded["naughty.dbus"] = {} -local menubar = require("menubar") -local hotkeys_popup = require("awful.hotkeys_popup") --- Enable hotkeys help widget for VIM and other apps --- when client with a matching name is opened: -require("awful.hotkeys_popup.keys") - --- {{{ Error handling --- Check if awesome encountered an error during startup and fell back to --- another config (This code will only ever execute for the fallback config) -if awesome.startup_errors then - naughty.notify({ preset = naughty.config.presets.critical, - title = "Oops, there were errors during startup!", - text = awesome.startup_errors }) -end - --- Handle runtime errors after startup -do - local in_error = false - awesome.connect_signal("debug::error", function (err) - -- Make sure we don't go into an endless error loop - if in_error then return end - in_error = true - - naughty.notify({ preset = naughty.config.presets.critical, - title = "Oops, an error happened!", - text = tostring(err) }) - in_error = false - end) -end --- }}} - --- {{{ Variable definitions --- Themes define colours, icons, font and wallpapers. -local theme = {} -theme.name = "zachir" -home_dir = os.getenv("HOME") -if (os.getenv("XDG_CONFIG_HOME")) then - config_dir = os.getenv("XDG_CONFIG_HOME") -else - config_dir = string.format("%s/.config", os.getenv("HOME")) -end -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 "mononoki Nerd Font Mono 18" - --- Library I'm using for swallowing, but it does much more - -local bling = require("bling") - --- Widget definitions/initializations - -local battery_widget = require("awesome-wm-widgets.batteryarc-widget.batteryarc") -local mpd_widget = require("awesome-wm-widgets.mpdarc-widget.mpdarc") -local volume_widget = require("awesome-wm-widgets.volume-widget.volume") -local ram_widget = require("awesome-wm-widgets.ram-widget.ram-widget") -local cpu_widget = require("awesome-wm-widgets.cpu-widget.cpu-widget") -local brightness_widget = require("awesome-wm-widgets.brightness-widget.brightness") -local net_speed = require("awesome-wm-widgets.net-speed-widget.net-speed") - --- Disable keybindings - -local inertmode = false - --- Spawn windows at bottom of stack - -local spawnatbottom = false - -terminal="kitty" -editor = os.getenv("EDITOR") or "nvim" -editor_cmd = terminal .. " -e " .. editor - --- Default modkey. --- Usually, Mod4 is the key with a logo between Control and Alt. --- If you do not like this or do not have such a key, --- I suggest you to remap Mod4 to another key using xmodmap or other tools. --- However, you can use another modifier like Mod1, but it may interact with others. -modkey = "Mod4" - --- Table of layouts to cover with awful.layout.inc, order matters. -awful.layout.layouts = { - --awful.layout.suit.floating, - awful.layout.suit.tile, - --awful.layout.suit.tile.left, - --awful.layout.suit.tile.bottom, - --awful.layout.suit.tile.top, - --awful.layout.suit.fair, - --awful.layout.suit.fair.horizontal, - --awful.layout.suit.spiral, - --awful.layout.suit.spiral.dwindle, - --awful.layout.suit.max, - --awful.layout.suit.max.fullscreen, - --awful.layout.suit.magnifier, - --awful.layout.suit.corner.nw, - -- awful.layout.suit.corner.ne, - -- awful.layout.suit.corner.sw, - -- awful.layout.suit.corner.se, -} --- }}} - --- Config function definitions {{{ -function terminal_sp_cmd (spc, cmd, geo) - if terminal == "st" then - cflag = "-c" - gflag = "-g" - xflag = "-e" - elseif terminal == "alacritty" then - cflag = "--class" - gflag = false - xflag = "-e" - elseif terminal == "kitty" then - cflag = "--class" - gflag = false - xflag = "" - end - if cflag and spc then - cl = " " .. cflag .. " " .. spc - else - cl = "" - end - if gflag and geo then - gl = " " .. gflag .. " " .. geo - else - gl = "" - end - if xflag and cmd then - xl = " " .. xflag .. " " .. cmd - else - xl = "" - end - return terminal .. cl .. gl .. xl -end - --- }}} - ---{{{ bling scratchpad definitions ---{{{ sphtop -local sphtop = bling.module.scratchpad { - command = terminal_sp_cmd("sphtop", "htop", nil), - rule = { class = "sphtop" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ spterm -local spterm = bling.module.scratchpad { - command = terminal_sp_cmd("spterm", nil, nil), - rule = { class = "spterm" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ sppmxr -local sppmxr = bling.module.scratchpad { - command = terminal_sp_cmd("sppmxr", "pulsemixer", nil), - rule = { class = "sppmxr" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ spblue -local spblue = bling.module.scratchpad { - command = terminal_sp_cmd("spblue", "bluetoothctl", nil), - rule = { class = "spblue" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ spncmp -local spncmp = bling.module.scratchpad { - command = terminal_sp_cmd("spncmp", "ncmpcpp", nil), - rule = { class = "spncmp" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ spmutt -local spmutt = bling.module.scratchpad { - command = terminal_sp_cmd("spmutt", "neomutt", nil), - rule = { class = "spmutt" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ spprof -local spprof = bling.module.scratchpad { - command = terminal_sp_cmd("spprof", "profanity", nil), - rule = { class = "spprof" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ spirss -local spirss = bling.module.scratchpad { - command = terminal_sp_cmd("spirss", "irssi", nil), - rule = { class = "spirss" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ sptodo -local sptodo = bling.module.scratchpad { - command = terminal_sp_cmd("sptodo", "todo", nil), - rule = { class = "sptodo" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ sptrem -local sptrem = bling.module.scratchpad { - command = terminal_sp_cmd("sptrem", "tremc", nil), - rule = { class = "sptrem" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---{{{ qpwgraph -local qpwgraph = bling.module.scratchpad { - command = "qpwgraph", - rule = { class = "qpwgraph" }, - sticky = true, - autoclose = true, - floating = true, - geometry = { x = 575, y = 275, height = 530, width = 770 }, - reapply = true, - dont_focus_before_close = false -} ---}}} ---}}} - --- {{{ Menu --- Create a launcher widget and a main menu -myawesomemenu = { - { "hotkeys", function() hotkeys_popup.show_help(nil, awful.screen.focused()) end }, - { "manual", terminal .. " -e man awesome" }, - { "edit config", editor_cmd .. " " .. awesome.conffile }, - { "restart", awesome.restart }, - { "quit", function() awesome.quit() end }, -} - -mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon }, - { "open terminal", terminal } - } - }) - -mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon, - menu = mymainmenu }) - --- Menubar configuration -menubar.utils.terminal = terminal -- Set the terminal for applications that require it --- }}} - --- Keyboard map indicator and switcher -mykeyboardlayout = awful.widget.keyboardlayout() - --- {{{ Wibar --- Create a textclock widget -mytextclock = wibox.widget.textclock() - --- Create a wibox for each screen and add it -local taglist_buttons = gears.table.join( - awful.button({ }, 1, function(t) t:view_only() end), - awful.button({ modkey }, 1, function(t) - if client.focus then - client.focus:move_to_tag(t) - end - end), - awful.button({ }, 3, awful.tag.viewtoggle), - awful.button({ modkey }, 3, function(t) - if client.focus then - client.focus:toggle_tag(t) - end - end), - awful.button({ }, 4, function(t) awful.tag.viewnext(t.screen) end), - awful.button({ }, 5, function(t) awful.tag.viewprev(t.screen) end) - ) - -local tasklist_buttons = gears.table.join( - awful.button({ }, 1, function (c) - if c == client.focus then - c.minimized = true - else - c:emit_signal( - "request::activate", - "tasklist", - {raise = true} - ) - end - end), - awful.button({ }, 3, function() - awful.menu.client_list({ theme = { width = 250 } }) - end), - awful.button({ }, 4, function () - awful.client.focus.byidx(1) - end), - awful.button({ }, 5, function () - awful.client.focus.byidx(-1) - end)) - -local function set_wallpaper(s) - -- Wallpaper - if beautiful.wallpaper then - local wallpaper = beautiful.wallpaper - -- If wallpaper is a function, call it with the screen - if type(wallpaper) == "function" then - wallpaper = wallpaper(s) - end - gears.wallpaper.maximized(wallpaper, s, true) - end -end - --- Re-set wallpaper when a screen's geometry changes (e.g. different resolution) -screen.connect_signal("property::geometry", set_wallpaper) - -awful.screen.connect_for_each_screen(function(s) - -- -- Wallpaper - set_wallpaper(s) - - -- Each screen has its own tag table. - awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9" }, s, awful.layout.layouts[1]) - - -- Create a promptbox for each screen - s.mypromptbox = awful.widget.prompt() - -- Create an imagebox widget which will contain an icon indicating which layout we're using. - -- We need one layoutbox per screen. - s.mylayoutbox = awful.widget.layoutbox(s) - s.mylayoutbox:buttons(gears.table.join( - awful.button({ }, 1, function () awful.layout.inc( 1) end), - awful.button({ }, 3, function () awful.layout.inc(-1) end), - awful.button({ }, 4, function () awful.layout.inc( 1) end), - awful.button({ }, 5, function () awful.layout.inc(-1) end))) - -- Create a taglist widget - s.mytaglist = awful.widget.taglist { - screen = s, - filter = awful.widget.taglist.filter.all, - buttons = taglist_buttons - } - - -- Create a tasklist widget - s.mytasklist = awful.widget.tasklist { - screen = s, - filter = awful.widget.tasklist.filter.focused, - buttons = tasklist_buttons - } - - -- Create the wibox - s.mywibox = awful.wibar({ position = "top", screen = s, height = 36}) - - -- Add widgets to the wibox - ---[[ Uncomment for Linux - s.mywibox:setup { - layout = wibox.layout.align.horizontal, - { -- Left widgets - layout = wibox.layout.fixed.horizontal, - mylauncher, - s.mytaglist, - s.mypromptbox, - }, - s.mytasklist, -- Middle widget - { - layout = wibox.layout.fixed.horizontal, - mpd_widget, - net_speed { - font = beautiful.font2, - width = 100, - interface = net - }, - ram_widget({ - color_used=beautiful.bg_focus, - color_free=beautiful.fg_normal, - color_buf=beautiful.bg_accent, - widget_height=32, - widget_width=32, - widget_show_buf=true, - timeout=1 - }), - cpu_widget({ - width=50, - step_width=2, - step_spacing=1, - color=beautiful.fg_normal, - enable_kill_button=false, - process_info_max_length=-1, - timeout=1 - }), - brightness_widget { - type = "arc", - program = "light", - step = 5, - base = 20, - path_to_icon = "/usr/share/icons/Paper/scalable/status/display-brightness-symbolic.svg", - timeout = 1, - tooltip = false, - percentage = false - }, - volume_widget { - path_to_icon = "/usr/share/icons/Paper/scalable/status/audio-volume-muted-symbolic.svg", - widget_type = "arc", - mute_color = "#ff111111", - device = "pulse", - }, - battery_widget { - font = font, - arc_thickness = 2, - show_current_level = false, - size = 18, - timeout = 10, - main_color = beautiful.fg_color, - bg_color = "#ffffff11", - low_level_color = "#e53935", - medium_level_color = "#c0ca33", - warning_msg_title = "Houston, we have a problem", - warning_msg_text = "Battery is dying", - warning_msg_position = "bottom_right", -- "bottom_right" is default, or top_right, top_left, bottom_left, bottom_right, top_middle, bottom_middle - warning_msg_icon = "~/.config/awesome/awesome-wm-widgets/batteryarc-widget/spaceman.jpg", - enable_battery_warning = true, - show_notification_mode = "on_click", -- "on_hover" is default, or "on_click" or "off" - notification_position = "top_right" -- "top_left is default, or top_right, top_left, bottom_left, bottom_right, top_middle, bottom_middle - }, - mykeyboardlayout, - wibox.widget.systray(), - mytextclock, - s.mylayoutbox, - }, - } - --]] -end) - --- }}} - --- {{{ Mouse bindings -root.buttons(gears.table.join( - --[[ - awful.button({ }, 3, function () mymainmenu:toggle() end), - awful.button({ }, 4, awful.tag.viewnext), - awful.button({ }, 5, awful.tag.viewprev) - --]] -)) - -client.connect_signal("mouse::enter", function(c) - c:emit_signal("request::activate", "mouse_enter", {raise = false}) -end) --- }}} - --- {{{ Key bindings - - -globalkeys = gears.table.join( - ---[[ Toggles scratchpads - awful.key({ modkey, "Control" }, "z", - function () - sphtop:toggle() - end, - {description = "Toggle htop scratchpad"}), - awful.key({ modkey, "Control" }, "x", - function () - spterm:toggle() - end, - {description = "Toggle term scratchpad"}), - awful.key({ modkey, "Control" }, "c", - function () - sppmxr:toggle() - end, - {description = "Toggle pulsemixer scratchpad"}), - awful.key({ modkey, "Control" }, "v", - function () - spblue:toggle() - end, - {description = "Toggle bluetoothctl scratchpad"}), - awful.key({ modkey, "Control" }, "b", - function () - spncmp:toggle() - end, - {description = "Toggle ncmpcpp scratchpad"}), - awful.key({ modkey, "Control" }, "a", - function () - spmutt:toggle() - end, - {description = "Toggle neomutt scratchpad"}), - awful.key({ modkey, "Control" }, "s", - function () - spprof:toggle() - end, - {description = "Toggle profanity scratchpad"}), - awful.key({ modkey, "Control" }, "d", - function () - spirss:toggle() - end, - {description = "Toggle irssi scratchpad"}), - awful.key({ modkey, "Control" }, "f", - function () - sptodo:toggle() - end, - {description = "Toggle todo.txt scratchpad"}), - awful.key({ modkey, "Control" }, "g", - function () - sptrem:toggle() - end, - {description = "Toggle tremc scratchpad"}), - awful.key({ modkey, "Control" }, "q", - function () - qpwgraph:toggle() - end, - {description = "Toggle qpwgraph scratchpad"}), - --]] - - ---[[ spawnatbottom Toggles where in the stack new windows spawn - -- (at the bottom or not) - awful.key({ modkey }, "a", - function () - spawnatbottom = not spawnatbottom - end, - {description = "toggle attach at bottom", group = "layout"}), - --]] - - ---[[ inertkeys toggles keybindings on and off - awful.key({ modkey }, "b", - function () - root.keys(inertkeys) - end, - {description = "turn inert mode on", group = "awesome"}), - --]] - - --[[ Shows the awesome menu where the mouse is - awful.key({ modkey }, "w", - function () - mymainmenu:show() - end, - {description = "show main menu", group = "awesome"}), - --]] - - ---[[ Standard programs - -- Spawns the terminal defined by "terminal" - awful.key({ modkey }, "Return", - function () - awful.spawn(terminal) - end, - {description = "open a terminal", group = "launcher"}), - --]] - - ---[[ Awesome stop/restart - awful.key({ modkey, "Shift" }, "e", - function () - awesome.quit() - end, - {description = "quit awesome", group = "awesome"}), - awful.key({ modkey, "Shift" }, "r", - function () - awesome.restart() - end, - {description = "reload awesome", group = "awesome"}), - --]] - - ---[[ Changes master/slave ratio - awful.key({ modkey }, "l", - function () - awful.tag.incmwfact( 0.05) - end, - {description = "increase master width factor", group = "layout"}), - awful.key({ modkey }, "h", - function () - awful.tag.incmwfact(-0.05) - end, - {description = "decrease master width factor", group = "layout"}), - --]] - - ---[[ Changes the number of masters - awful.key({ modkey, "Shift" }, "h", - function () - awful.tag.incnmaster( 1, nil, true) - end, - {description = "increase te number of master clients", group = "layout"}), - awful.key({ modkey, "Shift" }, "l", - function () - awful.tag.incnmaster(-1, nil, true) - end, - {description = "decrease the number of master clients", group = "layout"}), - --]] - - ---[[ Changes the number of columns - awful.key({ modkey, "Control" }, "h", - function () - awful.tag.incncol( 1, nil, true) - end, - {description = "increase the number of columns", group = "layout"}), - awful.key({ modkey, "Control" }, "l", - function () - awful.tag.incncol(-1, nil, true) - end, - {description = "decrease the number of columns", group = "layout"}), - --]] - - ---[[ Hides the statusbar - awful.key({ modkey, "Shift" }, "b", - function () - myscreen = awful.screen.focused() - myscreen.mywibox.visible = not myscreen.mywibox.visible - end, - { description = "toggle statusbar", group = "awesome" }) - --]] - - --[[ Changes the layout used - awful.key({ modkey }, "space", - function () - awful.layout.inc( 1) - end, - {description = "select next", group = "layout"}), - awful.key({ modkey, "Shift" }, "space", - function () - awful.layout.inc(-1) - end, - {description = "select previous", group = "layout"}), - --]] - - --[[ Runs arbitrary Lua code - awful.key({ modkey }, "x", - function () - awful.prompt.run { - prompt = "Run Lua code: ", - textbox = awful.screen.focused().mypromptbox.widget, - exe_callback = awful.util.eval, - history_path = awful.util.get_cache_dir() .. "/history_eval" - } - end, - {description = "lua execute prompt", group = "awesome"}) - --]] -) - ----[[ Keybindings for messing with clients -clientkeys = gears.table.join( - ---[[ Client manipulation - -- Moves focus up and down the stack - awful.key({ modkey }, "j", - function () - awful.client.focus.byidx( 1) - end, - {description = "focus next by index", group = "client"}), - awful.key({ modkey }, "k", - function () - awful.client.focus.byidx(-1) - end, - {description = "focus previous by index", group = "client"}), - -- Moves client up and down the stack - awful.key({ modkey, "Shift" }, "j", - function () - awful.client.swap.byidx( 1) - end, - {description = "swap with next client by index", group = "client"}), - awful.key({ modkey, "Shift" }, "k", - function () - awful.client.swap.byidx( -1) - end, - {description = "swap with previous client by index", group = "client"}), - -- Moves focus between screens - awful.key({ modkey, "Control" }, "j", - function () - awful.screen.focus_relative( 1) - end, - {description = "focus the next screen", group = "screen"}), - awful.key({ modkey, "Control" }, "k", - function () - awful.screen.focus_relative(-1) - end, - {description = "focus the previous screen", group = "screen"}), - -- Focuses the previous client - awful.key({ modkey }, "Tab", - function () - awful.client.focus.history.previous() - if client.focus then - client.focus:raise() - end - end, - {description = "go back", group = "client"}), - --]] - - ---[[ Closes client - awful.key({ modkey, "Shift" }, "q", - function (c) - c:kill() - end, - {description = "close", group = "client"}), - --]] - - ---[[ Toggles client state - -- Toggles fullscreen - awful.key({ modkey }, "f", - function (c) - c.fullscreen = not c.fullscreen - c:raise() - end, - {description = "toggle fullscreen", group = "client"}), - - -- Toggles client floating - awful.key({ modkey, "Control" }, "space", - function (c) - c.floating = not c.floating - end, - {description = "toggle floating", group = "client"}), - - -- Toggles keeping the client on top - awful.key({ modkey }, "t", - function (c) - c.ontop = not c.ontop - end, - {description = "toggle keep on top", group = "client"}), - - -- Toggles maximizing the client - awful.key({ modkey }, "m", - function (c) - c.maximized = not c.maximized - c:raise() - end, - {description = "toggle maximize", group = "client"}), - - -- Toggles vertically maximizing the client - awful.key({ modkey, "Control" }, "m", - function (c) - c.maximized_vertical = not c.maximized_vertical - c:raise() - end, - {description = "toggle maximize vertically", group = "client"}), - - -- Toggles horizontally maximizing the client - awful.key({ modkey, "Shift" }, "m", - function (c) - c.maximized_horizontal = not c.maximized_horizontal - c:raise() - end, - {description = "toggle maximize horizontally", group = "client"}), - --]] - - ---[[ Moves the client to the master position - -- Or, if client is the master, does nothing - awful.key({ modkey, "Shift" }, "Return", - function (c) - c:swap(awful.client.getmaster()) - end, - {description = "move to master", group = "client"}), - --]] - - ---[[ Moves the client to the next screen - awful.key({ modkey }, "o", - function (c) - c:move_to_screen() - end, - {description = "move to screen", group = "client"}), - --]] - - ---[[ Minimization - -- Minimizes the client - awful.key({ modkey }, "n", - function (c) - -- The client currently has the input focus, so it cannot be - -- minimized, since minimized clients can't have the focus. - c.minimized = true - end , - {description = "minimize", group = "client"}), - - -- Unminimizes one client - awful.key({ modkey, "Control" }, "n", - function () - local c = awful.client.restore() - -- Focus restored client - if c then - c:emit_signal("request::activate", "key.unminimize", {raise = true}) - end - end, - {description = "restore minimized", group = "client"}) - --]] -) - ----[[ Tag keybindings --- Bind all key numbers to tags. --- Be careful: we use keycodes to make it work on any keyboard layout. --- This should map on the top row of your keyboard, usually 1 to 9. -for i = 1, 9 do - globalkeys = gears.table.join(globalkeys, - ---[[ View tag only. - awful.key({ modkey }, "#" .. i + 9, - function () - local screen = awful.screen.focused() - local tag = screen.tags[i] - if tag then - tag:view_only() - end - end, - {description = "view tag #"..i, group = "tag"}), - --]] - ---[[ Toggle tag display. - awful.key({ modkey, "Control" }, "#" .. i + 9, - function () - local screen = awful.screen.focused() - local tag = screen.tags[i] - if tag then - awful.tag.viewtoggle(tag) - end - end, - {description = "toggle tag #" .. i, group = "tag"}), - --]] - ---[[ Move client to tag. - awful.key({ modkey, "Shift" }, "#" .. i + 9, - function () - if client.focus then - local tag = client.focus.screen.tags[i] - if tag then - client.focus:move_to_tag(tag) - end - end - end, - {description = "move focused client to tag #"..i, group = "tag"}), - --]] - ---[[ Toggle tag on focused client. - awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9, - function () - if client.focus then - local tag = client.focus.screen.tags[i] - if tag then - client.focus:toggle_tag(tag) - end - end - end, - {description = "toggle focused client on tag #" .. i, group = "tag"}) - --]] - ) -end ---]] - ----[[ Mouse keybindings -clientbuttons = gears.table.join( - ---[[ Focus client when clicked on - awful.button({ 0 }, 1, - function (c) - c:emit_signal("request::activate", "mouse_click", {raise = true}) - end), - --]] - ---[[ Move client when left clicked with modkey - awful.button({ modkey }, 1, - function (c) - c:emit_signal("request::activate", "mouse_click", {raise = true}) - awful.mouse.client.move(c) - end), - --]] - ---[[ Resize client when right clicked with modkey - awful.button({ modkey }, 3, - function (c) - c:emit_signal("request::activate", "mouse_click", {raise = true}) - awful.mouse.client.resize(c) - end) - --]] -) ---]] - ----[[ Keybindings for the "inert" mode -inertkeys = gears.table.join( - ---[[ Go back to normal bindings - awful.key({ modkey }, "b", - function () - root.keys(globalkeys) - end, - {description = "turn inert mode off", group = "awesome"}) - --]] -) ---]] - --- Set keys -root.keys(globalkeys) --- }}} - --- {{{ Rules --- Rules to apply to new clients (through the "manage" signal). -awful.rules.rules = { - -- All clients will match this rule. - { rule = { }, - properties = { border_width = beautiful.border_width, - border_color = beautiful.border_normal, - focus = awful.client.focus.filter, - raise = true, - keys = clientkeys, - buttons = clientbuttons, - screen = awful.screen.preferred, - placement = awful.placement.no_overlap+awful.placement.no_offscreen - } - }, - - { rule_any = { - class = { - "QjackCtl", - "Tk", - "gcr-prompter" - } - }, - properties = { floating = true }, - callback = function(c) - awful.placement.centered(c,nil) - end - }, - - -- Floating clients. - { rule_any = { - instance = { - "DTA", -- Firefox addon DownThemAll. - "copyq", -- Includes session name in class. - "pinentry", - }, - class = { - --"mpv", - "ProtonMail Bridge", - "TheFiniteDemo", - "Arandr", - "Blueman-manager", - "Gpick", - "Kruler", - "MessageWin", -- kalarm. - -- "Sxiv", - "Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size. - "Wpa_gui", - "veromix", - "xtightvncviewer" - }, - - -- Note that the name property shown in xprop might be set slightly after creation of the client - -- and the name shown there might not match defined rules here. - name = { - "Event Tester", -- xev. - }, - role = { - "AlarmWindow", -- Thunderbird's calendar. - "ConfigManager", -- Thunderbird's about:config. - "pop-up", -- e.g. Google Chrome's (detached) Developer Tools. - } - }, properties = { floating = true } - }, - - -- Add titlebars to normal clients and dialogs - { rule_any = { - type = { "normal", "dialog" } - }, - properties = { titlebars_enabled = true } - }, - - -- These windows will be force resized to fit - { rule_any = - { - class = { - "mpv", - "Lutris", - "polychromatic-controller" - }, - }, properties = { size_hints_honor = false } - }, -} --- }}} - ---{{{ bling window swallowing -bling.module.window_swallowing.start() ---}}} - --- {{{ Autostart ---[[ Commands to run: - xrdb ~/.Xresources - setxkbmap -option 'caps:escape' - picom - sxhkd - xwallpaper --center ~/background.jpg - jamesdsp -t ---]] --- Autostart commands that only run once -awful.spawn.with_shell( - 'if (xrdb -query | grep -q "^awesome\\.started:\\s*true$"); then exit; fi;' .. - 'xrdb -merge <<< "awesome.started:true";' .. - -- list each of your autostart commands, followed by ; inside single quotes, - -- followed by .. - 'xss-lock slockd' -) --- Autostart commands that run every restart -awful.spawn.with_shell( - -- list each of your autostart commands, followed by ; inside single quotes, - -- followed by .. - 'setxkbmap -option "caps:escape";' .. - 'picom &;' .. - 'sxhkd &;' .. - 'jamedsp -t &' -) --- }}} - --- spawn windows as slaves {{{ -client.connect_signal( - "manage", - function(c) - if not awesome.startup then - if spawnatbottom then - awful.client.setslave(c) - end - end - end -) --- }}} diff --git a/awesome/themes/zachir/README b/awesome/themes/zachir/README deleted file mode 100644 index 1ddb349..0000000 --- a/awesome/themes/zachir/README +++ /dev/null @@ -1,3 +0,0 @@ -Background images: - Mikael Eriksson <mikael_eriksson@miffe.org> - Licensed under CC-BY-SA-3.0 diff --git a/awesome/themes/zachir/background.jpg b/awesome/themes/zachir/background.jpg deleted file mode 120000 index 525f4e6..0000000 --- a/awesome/themes/zachir/background.jpg +++ /dev/null @@ -1 +0,0 @@ -/home/zachir/background.jpg
\ No newline at end of file diff --git a/awesome/themes/zachir/background.png b/awesome/themes/zachir/background.png Binary files differdeleted file mode 100644 index 8f52b6b..0000000 --- a/awesome/themes/zachir/background.png +++ /dev/null diff --git a/awesome/themes/zachir/background_white.png b/awesome/themes/zachir/background_white.png Binary files differdeleted file mode 100644 index bb0c5d0..0000000 --- a/awesome/themes/zachir/background_white.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/cornerne.png b/awesome/themes/zachir/layouts/cornerne.png Binary files differdeleted file mode 100644 index c85bd56..0000000 --- a/awesome/themes/zachir/layouts/cornerne.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/cornernew.png b/awesome/themes/zachir/layouts/cornernew.png Binary files differdeleted file mode 100644 index c3fd986..0000000 --- a/awesome/themes/zachir/layouts/cornernew.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/cornernw.png b/awesome/themes/zachir/layouts/cornernw.png Binary files differdeleted file mode 100644 index dfe78b3..0000000 --- a/awesome/themes/zachir/layouts/cornernw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/cornernww.png b/awesome/themes/zachir/layouts/cornernww.png Binary files differdeleted file mode 100644 index f489010..0000000 --- a/awesome/themes/zachir/layouts/cornernww.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/cornerse.png b/awesome/themes/zachir/layouts/cornerse.png Binary files differdeleted file mode 100644 index 023ae79..0000000 --- a/awesome/themes/zachir/layouts/cornerse.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/cornersew.png b/awesome/themes/zachir/layouts/cornersew.png Binary files differdeleted file mode 100644 index f7cfa1c..0000000 --- a/awesome/themes/zachir/layouts/cornersew.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/cornersw.png b/awesome/themes/zachir/layouts/cornersw.png Binary files differdeleted file mode 100644 index c1453c9..0000000 --- a/awesome/themes/zachir/layouts/cornersw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/cornersww.png b/awesome/themes/zachir/layouts/cornersww.png Binary files differdeleted file mode 100644 index a65a043..0000000 --- a/awesome/themes/zachir/layouts/cornersww.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/dwindle.png b/awesome/themes/zachir/layouts/dwindle.png Binary files differdeleted file mode 100644 index 9902d22..0000000 --- a/awesome/themes/zachir/layouts/dwindle.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/dwindlew.png b/awesome/themes/zachir/layouts/dwindlew.png Binary files differdeleted file mode 100644 index 9199049..0000000 --- a/awesome/themes/zachir/layouts/dwindlew.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/fairh.png b/awesome/themes/zachir/layouts/fairh.png Binary files differdeleted file mode 100644 index d41deea..0000000 --- a/awesome/themes/zachir/layouts/fairh.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/fairhw.png b/awesome/themes/zachir/layouts/fairhw.png Binary files differdeleted file mode 100644 index bb50e3a..0000000 --- a/awesome/themes/zachir/layouts/fairhw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/fairv.png b/awesome/themes/zachir/layouts/fairv.png Binary files differdeleted file mode 100644 index f5f0288..0000000 --- a/awesome/themes/zachir/layouts/fairv.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/fairvw.png b/awesome/themes/zachir/layouts/fairvw.png Binary files differdeleted file mode 100644 index 4f4ed52..0000000 --- a/awesome/themes/zachir/layouts/fairvw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/floating.png b/awesome/themes/zachir/layouts/floating.png Binary files differdeleted file mode 100644 index b8061a0..0000000 --- a/awesome/themes/zachir/layouts/floating.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/floatingw.png b/awesome/themes/zachir/layouts/floatingw.png Binary files differdeleted file mode 100644 index 4815894..0000000 --- a/awesome/themes/zachir/layouts/floatingw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/fullscreen.png b/awesome/themes/zachir/layouts/fullscreen.png Binary files differdeleted file mode 100644 index d02f6fc..0000000 --- a/awesome/themes/zachir/layouts/fullscreen.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/fullscreenw.png b/awesome/themes/zachir/layouts/fullscreenw.png Binary files differdeleted file mode 100644 index 5c35bfa..0000000 --- a/awesome/themes/zachir/layouts/fullscreenw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/magnifier.png b/awesome/themes/zachir/layouts/magnifier.png Binary files differdeleted file mode 100644 index 2925414..0000000 --- a/awesome/themes/zachir/layouts/magnifier.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/magnifierw.png b/awesome/themes/zachir/layouts/magnifierw.png Binary files differdeleted file mode 100644 index 6209556..0000000 --- a/awesome/themes/zachir/layouts/magnifierw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/max.png b/awesome/themes/zachir/layouts/max.png Binary files differdeleted file mode 100644 index 8d20844..0000000 --- a/awesome/themes/zachir/layouts/max.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/maxw.png b/awesome/themes/zachir/layouts/maxw.png Binary files differdeleted file mode 100644 index 85f5ce3..0000000 --- a/awesome/themes/zachir/layouts/maxw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/spiral.png b/awesome/themes/zachir/layouts/spiral.png Binary files differdeleted file mode 100644 index d9434be..0000000 --- a/awesome/themes/zachir/layouts/spiral.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/spiralw.png b/awesome/themes/zachir/layouts/spiralw.png Binary files differdeleted file mode 100644 index b78dd86..0000000 --- a/awesome/themes/zachir/layouts/spiralw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/tile.png b/awesome/themes/zachir/layouts/tile.png Binary files differdeleted file mode 100644 index 3ede21e..0000000 --- a/awesome/themes/zachir/layouts/tile.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/tilebottom.png b/awesome/themes/zachir/layouts/tilebottom.png Binary files differdeleted file mode 100644 index 6f8c257..0000000 --- a/awesome/themes/zachir/layouts/tilebottom.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/tilebottomw.png b/awesome/themes/zachir/layouts/tilebottomw.png Binary files differdeleted file mode 100644 index a1de7b2..0000000 --- a/awesome/themes/zachir/layouts/tilebottomw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/tileleft.png b/awesome/themes/zachir/layouts/tileleft.png Binary files differdeleted file mode 100644 index 31d6870..0000000 --- a/awesome/themes/zachir/layouts/tileleft.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/tileleftw.png b/awesome/themes/zachir/layouts/tileleftw.png Binary files differdeleted file mode 100644 index cf14c25..0000000 --- a/awesome/themes/zachir/layouts/tileleftw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/tiletop.png b/awesome/themes/zachir/layouts/tiletop.png Binary files differdeleted file mode 100644 index 98cade2..0000000 --- a/awesome/themes/zachir/layouts/tiletop.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/tiletopw.png b/awesome/themes/zachir/layouts/tiletopw.png Binary files differdeleted file mode 100644 index d1d0872..0000000 --- a/awesome/themes/zachir/layouts/tiletopw.png +++ /dev/null diff --git a/awesome/themes/zachir/layouts/tilew.png b/awesome/themes/zachir/layouts/tilew.png Binary files differdeleted file mode 100644 index fde2ca4..0000000 --- a/awesome/themes/zachir/layouts/tilew.png +++ /dev/null diff --git a/awesome/themes/zachir/submenu.png b/awesome/themes/zachir/submenu.png Binary files differdeleted file mode 100644 index b2778e2..0000000 --- a/awesome/themes/zachir/submenu.png +++ /dev/null diff --git a/awesome/themes/zachir/taglist/squarefw.png b/awesome/themes/zachir/taglist/squarefw.png Binary files differdeleted file mode 100644 index 2a86430..0000000 --- a/awesome/themes/zachir/taglist/squarefw.png +++ /dev/null diff --git a/awesome/themes/zachir/taglist/squarew.png b/awesome/themes/zachir/taglist/squarew.png Binary files differdeleted file mode 100644 index 913f2ca..0000000 --- a/awesome/themes/zachir/taglist/squarew.png +++ /dev/null diff --git a/awesome/themes/zachir/theme.lua b/awesome/themes/zachir/theme.lua deleted file mode 100644 index bef4f5c..0000000 --- a/awesome/themes/zachir/theme.lua +++ /dev/null @@ -1,240 +0,0 @@ ---------------------------- --- Default awesome theme -- ---------------------------- - -local theme_assets = require("beautiful.theme_assets") -local xresources = require("beautiful.xresources") -local dpi = xresources.apply_dpi -local xrdb = xresources.get_current_theme() - -local gfs = require("gears.filesystem") -local themes_path = gfs.get_themes_dir() - -local theme = {} - -theme.font = "mononoki Nerd Font Mono 18" -theme.font2 = "mononoki Nerd Font Mono 12" - -theme.bg_normal = xrdb.background -theme.bg_focus = xrdb.color2 -theme.bg_accent = xrdb.color8 -theme.bg_urgent = xrdb.color9 -theme.bg_minimize = xrdb.color0 -theme.bg_systray = theme.bg_focus - -theme.fg_normal = xrdb.color7 -theme.fg_focus = xrdb.background -theme.fg_urgent = xrdb.color15 -theme.fg_minimize = xrdb.color15 -theme.useless_gap = dpi(0) -theme.border_width = dpi(1) -theme.border_normal = xrdb.color0 -theme.border_focus = xrdb.color2 -theme.border_marked = xrdb.color8 - --- There are other variable sets --- overriding the default one when --- defined, the sets are: --- taglist_[bg|fg]_[focus|urgent|occupied|empty|volatile] --- tasklist_[bg|fg]_[focus|urgent] --- titlebar_[bg|fg]_[normal|focus] --- tooltip_[font|opacity|fg_color|bg_color|border_width|border_color] --- mouse_finder_[color|timeout|animate_timeout|radius|factor] --- prompt_[fg|bg|fg_cursor|bg_cursor|font] --- hotkeys_[bg|fg|border_width|border_color|shape|opacity|modifiers_fg|label_bg|label_fg|group_margin|font|description_font] --- Example: ---theme.taglist_bg_focus = "#ff0000" - --- Generate taglist squares: -local taglist_square_size = dpi(4) -theme.taglist_squares_sel = theme_assets.taglist_squares_sel( - taglist_square_size, theme.fg_normal -) -theme.taglist_squares_unsel = theme_assets.taglist_squares_unsel( - taglist_square_size, theme.fg_normal -) - --- Variables set for theming notifications: --- notification_font --- notification_[bg|fg] --- notification_[width|height|margin] --- notification_[border_color|border_width|shape|opacity] - --- Variables set for theming the menu: --- menu_[bg|fg]_[normal|focus] --- menu_[border_color|border_width] -theme.menu_submenu_icon = themes_path.."zachir/submenu.png" -theme.menu_height = dpi(15) -theme.menu_width = dpi(100) - --- You can add as many variables as --- you wish and access them by using --- beautiful.variable in your rc.lua ---theme.bg_widget = "#cc0000" - --- Define the image to load -theme.titlebar_close_button_normal = themes_path.."zachir/titlebar/close_normal.png" -theme.titlebar_close_button_focus = themes_path.."zachir/titlebar/close_focus.png" - -theme.titlebar_minimize_button_normal = themes_path.."zachir/titlebar/minimize_normal.png" -theme.titlebar_minimize_button_focus = themes_path.."zachir/titlebar/minimize_focus.png" - -theme.titlebar_ontop_button_normal_inactive = themes_path.."zachir/titlebar/ontop_normal_inactive.png" -theme.titlebar_ontop_button_focus_inactive = themes_path.."zachir/titlebar/ontop_focus_inactive.png" -theme.titlebar_ontop_button_normal_active = themes_path.."zachir/titlebar/ontop_normal_active.png" -theme.titlebar_ontop_button_focus_active = themes_path.."zachir/titlebar/ontop_focus_active.png" - -theme.titlebar_sticky_button_normal_inactive = themes_path.."zachir/titlebar/sticky_normal_inactive.png" -theme.titlebar_sticky_button_focus_inactive = themes_path.."zachir/titlebar/sticky_focus_inactive.png" -theme.titlebar_sticky_button_normal_active = themes_path.."zachir/titlebar/sticky_normal_active.png" -theme.titlebar_sticky_button_focus_active = themes_path.."zachir/titlebar/sticky_focus_active.png" - -theme.titlebar_floating_button_normal_inactive = themes_path.."zachir/titlebar/floating_normal_inactive.png" -theme.titlebar_floating_button_focus_inactive = themes_path.."zachir/titlebar/floating_focus_inactive.png" -theme.titlebar_floating_button_normal_active = themes_path.."zachir/titlebar/floating_normal_active.png" -theme.titlebar_floating_button_focus_active = themes_path.."zachir/titlebar/floating_focus_active.png" - -theme.titlebar_maximized_button_normal_inactive = themes_path.."zachir/titlebar/maximized_normal_inactive.png" -theme.titlebar_maximized_button_focus_inactive = themes_path.."zachir/titlebar/maximized_focus_inactive.png" -theme.titlebar_maximized_button_normal_active = themes_path.."zachir/titlebar/maximized_normal_active.png" -theme.titlebar_maximized_button_focus_active = themes_path.."zachir/titlebar/maximized_focus_active.png" - -local home_dir = os.getenv("HOME") -theme.wallpaper = home_dir .. "/background.jpg" - --- You can use your own layout icons like this: -theme.layout_fairh = themes_path.."zachir/layouts/fairhw.png" -theme.layout_fairv = themes_path.."zachir/layouts/fairvw.png" -theme.layout_floating = themes_path.."zachir/layouts/floatingw.png" -theme.layout_magnifier = themes_path.."zachir/layouts/magnifierw.png" -theme.layout_max = themes_path.."zachir/layouts/maxw.png" -theme.layout_fullscreen = themes_path.."zachir/layouts/fullscreenw.png" -theme.layout_tilebottom = themes_path.."zachir/layouts/tilebottomw.png" -theme.layout_tileleft = themes_path.."zachir/layouts/tileleftw.png" -theme.layout_tile = themes_path.."zachir/layouts/tilew.png" -theme.layout_tiletop = themes_path.."zachir/layouts/tiletopw.png" -theme.layout_spiral = themes_path.."zachir/layouts/spiralw.png" -theme.layout_dwindle = themes_path.."zachir/layouts/dwindlew.png" -theme.layout_cornernw = themes_path.."zachir/layouts/cornernww.png" -theme.layout_cornerne = themes_path.."zachir/layouts/cornernew.png" -theme.layout_cornersw = themes_path.."zachir/layouts/cornersww.png" -theme.layout_cornerse = themes_path.."zachir/layouts/cornersew.png" - --- Generate Awesome icon: -theme.awesome_icon = theme_assets.awesome_icon( - theme.menu_height, theme.bg_focus, theme.fg_focus -) - --- Define the icon theme for application icons. If not set then the icons --- from /usr/share/icons and /usr/share/icons/hicolor will be used. -theme.icon_theme = nil - --- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80 ---[[ Bling theme variables template - -This file has all theme variables of the bling module. -Every variable has a small comment on what it does. -You might just want to copy that whole part into your theme.lua and start adjusting from there. - ---]] --- LuaFormatter off --- window swallowing -theme.parent_filter_list = { "ampbox.exe", "Brave-browser", "Carla2", "carla", "firefox", "Gimp", "LibreWolf", "Lutris", "MultiMC", "obs", "REAPER", "steam", "xviix64.exe", "yabridge" } -- class names list of parents that should not be swallowed -theme.child_filter_list = { "Brave-browser", "Dragon", "librepcb", "LibrePCB", "REAPER", "yabridge" } -- class names list that should not swallow their parents -theme.swallowing_filter = true -- whether the filters above should be active - --- flash focus -theme.flash_focus_start_opacity = 0.6 -- the starting opacity -theme.flash_focus_step = 0.01 -- the step of animation - --- playerctl signal -theme.playerctl_backend = "playerctl_cli" -- backend to use -theme.playerctl_ignore = {} -- list of players to be ignored -theme.playerctl_player = {} -- list of players to be used in priority order -theme.playerctl_update_on_activity = true -- whether to prioritize the most recently active players or not -theme.playerctl_position_update_interval = 1 -- the update interval for fetching the position from playerctl - --- tabbed -theme.tabbed_spawn_in_tab = false -- whether a new client should spawn into the focused tabbing container - --- tabbar general -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 = "mononoki Nerd Font Mono 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 -theme.tabbar_fg_normal = "#ffffff" -- foreground color of the focused client on the tabbar -theme.tabbar_bg_focus = "#1A2026" -- background color of unfocused clients on the tabbar -theme.tabbar_fg_focus = "#ff0000" -- foreground color of unfocused clients on the tabbar -theme.tabbar_bg_focus_inactive = nil -- background color of the focused client on the tabbar when inactive -theme.tabbar_fg_focus_inactive = nil -- foreground color of the focused client on the tabbar when inactive -theme.tabbar_bg_normal_inactive = nil -- background color of unfocused clients on the tabbar when inactive -theme.tabbar_fg_normal_inactive = nil -- foreground color of unfocused clients on the tabbar when inactive - --- mstab -theme.mstab_bar_disable = false -- disable the tabbar -theme.mstab_bar_ontop = false -- whether you want to allow the bar to be ontop of clients -theme.mstab_dont_resize_slaves = false -- whether the tabbed stack windows should be smaller than the --- currently focused stack window (set it to true if you use --- transparent terminals. False if you use shadows on solid ones -theme.mstab_bar_padding = "default" -- how much padding there should be between clients and your tabbar --- by default it will adjust based on your useless gaps. --- If you want a custom value. Set it to the number of pixels (int) -theme.mstab_border_radius = 0 -- border radius of the tabbar -theme.mstab_bar_height = 40 -- height of the tabbar -theme.mstab_tabbar_position = "top" -- position of the tabbar (mstab currently does not support left,right) -theme.mstab_tabbar_style = "default" -- style of the tabbar ("default", "boxes" or "modern") --- defaults to the tabbar_style so only change if you want a --- different style for mstab and tabbed - --- the following variables are currently only for the "modern" tabbar style -theme.tabbar_color_close = "#f9929b" -- changes the color of the close button -theme.tabbar_color_min = "#fbdf90" -- changes the color of the minimize button -theme.tabbar_color_float = "#ccaced" -- changes the color of the float button - --- tag preview widget -theme.tag_preview_widget_border_radius = 0 -- Border radius of the widget (With AA) -theme.tag_preview_client_border_radius = 0 -- Border radius of each client in the widget (With AA) -theme.tag_preview_client_opacity = 0.5 -- Opacity of each client -theme.tag_preview_client_bg = "#000000" -- The bg color of each client -theme.tag_preview_client_border_color = "#ffffff" -- The border color of each client -theme.tag_preview_client_border_width = 3 -- The border width of each client -theme.tag_preview_widget_bg = "#000000" -- The bg color of the widget -theme.tag_preview_widget_border_color = "#ffffff" -- The border color of the widget -theme.tag_preview_widget_border_width = 3 -- The border width of the widget -theme.tag_preview_widget_margin = 0 -- The margin of the widget - --- task preview widget -theme.task_preview_widget_border_radius = 0 -- Border radius of the widget (With AA) -theme.task_preview_widget_bg = "#000000" -- The bg color of the widget -theme.task_preview_widget_border_color = "#ffffff" -- The border color of the widget -theme.task_preview_widget_border_width = 3 -- The border width of the widget -theme.task_preview_widget_margin = 0 -- The margin of the widget - --- window switcher -theme.window_switcher_widget_bg = "#000000" -- The bg color of the widget -theme.window_switcher_widget_border_width = 3 -- The border width of the widget -theme.window_switcher_widget_border_radius = 0 -- The border radius of the widget -theme.window_switcher_widget_border_color = "#ffffff" -- The border color of the widget -theme.window_switcher_clients_spacing = 20 -- The space between each client item -theme.window_switcher_client_icon_horizontal_spacing = 5 -- The space between client icon and text -theme.window_switcher_client_width = 150 -- The width of one client widget -theme.window_switcher_client_height = 250 -- The height of one client widget -theme.window_switcher_client_margins = 10 -- The margin between the content and the border of the widget -theme.window_switcher_thumbnail_margins = 10 -- The margin between one client thumbnail and the rest of the widget -theme.thumbnail_scale = false -- If set to true, the thumbnails fit policy will be set to "fit" instead of "auto" -theme.window_switcher_name_margins = 10 -- The margin of one clients title to the rest of the widget -theme.window_switcher_name_valign = "center" -- How to vertically align one clients title -theme.window_switcher_name_forced_width = 200 -- The width of one title -theme.window_switcher_name_font = "Sans 11" -- The font of all titles -theme.window_switcher_name_normal_color = "#ffffff" -- The color of one title if the client is unfocused -theme.window_switcher_name_focus_color = "#ff0000" -- The color of one title if the client is focused -theme.window_switcher_icon_valign = "center" -- How to vertically align the one icon -theme.window_switcher_icon_width = 40 -- The width of one icon - --- LuaFormatter on -return theme - diff --git a/awesome/themes/zachir/titlebar/close_focus.png b/awesome/themes/zachir/titlebar/close_focus.png Binary files differdeleted file mode 100644 index 01ef825..0000000 --- a/awesome/themes/zachir/titlebar/close_focus.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/close_normal.png b/awesome/themes/zachir/titlebar/close_normal.png Binary files differdeleted file mode 100644 index 5448ed8..0000000 --- a/awesome/themes/zachir/titlebar/close_normal.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/floating_focus_active.png b/awesome/themes/zachir/titlebar/floating_focus_active.png Binary files differdeleted file mode 100644 index 82dcc7c..0000000 --- a/awesome/themes/zachir/titlebar/floating_focus_active.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/floating_focus_inactive.png b/awesome/themes/zachir/titlebar/floating_focus_inactive.png Binary files differdeleted file mode 100644 index c19ba80..0000000 --- a/awesome/themes/zachir/titlebar/floating_focus_inactive.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/floating_normal_active.png b/awesome/themes/zachir/titlebar/floating_normal_active.png Binary files differdeleted file mode 100644 index 62342d1..0000000 --- a/awesome/themes/zachir/titlebar/floating_normal_active.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/floating_normal_inactive.png b/awesome/themes/zachir/titlebar/floating_normal_inactive.png Binary files differdeleted file mode 100644 index e2bbdfa..0000000 --- a/awesome/themes/zachir/titlebar/floating_normal_inactive.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/maximized_focus_active.png b/awesome/themes/zachir/titlebar/maximized_focus_active.png Binary files differdeleted file mode 100644 index d7dffd7..0000000 --- a/awesome/themes/zachir/titlebar/maximized_focus_active.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/maximized_focus_inactive.png b/awesome/themes/zachir/titlebar/maximized_focus_inactive.png Binary files differdeleted file mode 100644 index 844389f..0000000 --- a/awesome/themes/zachir/titlebar/maximized_focus_inactive.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/maximized_normal_active.png b/awesome/themes/zachir/titlebar/maximized_normal_active.png Binary files differdeleted file mode 100644 index a705f81..0000000 --- a/awesome/themes/zachir/titlebar/maximized_normal_active.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/maximized_normal_inactive.png b/awesome/themes/zachir/titlebar/maximized_normal_inactive.png Binary files differdeleted file mode 100644 index 4c1ab1f..0000000 --- a/awesome/themes/zachir/titlebar/maximized_normal_inactive.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/minimize_focus.png b/awesome/themes/zachir/titlebar/minimize_focus.png Binary files differdeleted file mode 100644 index caaceb2..0000000 --- a/awesome/themes/zachir/titlebar/minimize_focus.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/minimize_normal.png b/awesome/themes/zachir/titlebar/minimize_normal.png Binary files differdeleted file mode 100644 index 36621d0..0000000 --- a/awesome/themes/zachir/titlebar/minimize_normal.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/ontop_focus_active.png b/awesome/themes/zachir/titlebar/ontop_focus_active.png Binary files differdeleted file mode 100644 index 312c00b..0000000 --- a/awesome/themes/zachir/titlebar/ontop_focus_active.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/ontop_focus_inactive.png b/awesome/themes/zachir/titlebar/ontop_focus_inactive.png Binary files differdeleted file mode 100644 index a48e1c5..0000000 --- a/awesome/themes/zachir/titlebar/ontop_focus_inactive.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/ontop_normal_active.png b/awesome/themes/zachir/titlebar/ontop_normal_active.png Binary files differdeleted file mode 100644 index 117a203..0000000 --- a/awesome/themes/zachir/titlebar/ontop_normal_active.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/ontop_normal_inactive.png b/awesome/themes/zachir/titlebar/ontop_normal_inactive.png Binary files differdeleted file mode 100644 index d3a10c8..0000000 --- a/awesome/themes/zachir/titlebar/ontop_normal_inactive.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/sticky_focus_active.png b/awesome/themes/zachir/titlebar/sticky_focus_active.png Binary files differdeleted file mode 100644 index 814499b..0000000 --- a/awesome/themes/zachir/titlebar/sticky_focus_active.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/sticky_focus_inactive.png b/awesome/themes/zachir/titlebar/sticky_focus_inactive.png Binary files differdeleted file mode 100644 index 21b000d..0000000 --- a/awesome/themes/zachir/titlebar/sticky_focus_inactive.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/sticky_normal_active.png b/awesome/themes/zachir/titlebar/sticky_normal_active.png Binary files differdeleted file mode 100644 index bdb5595..0000000 --- a/awesome/themes/zachir/titlebar/sticky_normal_active.png +++ /dev/null diff --git a/awesome/themes/zachir/titlebar/sticky_normal_inactive.png b/awesome/themes/zachir/titlebar/sticky_normal_inactive.png Binary files differdeleted file mode 100644 index a96b9b1..0000000 --- a/awesome/themes/zachir/titlebar/sticky_normal_inactive.png +++ /dev/null diff --git a/bash/.bash_logout b/bash/.bash_logout new file mode 100644 index 0000000..9bccd62 --- /dev/null +++ b/bash/.bash_logout @@ -0,0 +1,2 @@ +clear +reset diff --git a/bash/.bashrc b/bash/.bashrc new file mode 100644 index 0000000..600352a --- /dev/null +++ b/bash/.bashrc @@ -0,0 +1,24 @@ +# Syntax Highlighting +source /usr/share/blesh/ble.sh + +# Incorporate my SH agnostic stuff +[ -f "$XDG_CONFIG_HOME/sh/aliases" ] && source "$XDG_CONFIG_HOME/sh/aliases" +[ -f "$XDG_CONFIG_HOME/sh/functions" ] && source "$XDG_CONFIG_HOME/sh/functions" + +# History Search +bind '"\e[A": history-search-backward' +bind '"\e[B": history-search-forward' + +# History Cleaning +export HISTCONTROL="erasedups:ignorespace" + +# Run-Help Ability +run-help() { help "$READLINE_LINE" 2>/dev/null || man "$READLINE_LINE"; } +bind -m vi-insert -x '"\eh": run-help' +bind -m emacs -x '"\eh": run-help' + +# CD when typing directory name +shopt -s autocd + +# Set my prompt +export PS1='\e[42m[\u@\H]\e[46\w\e[42m\$\e(B\e[m ' diff --git a/calcurse/keys b/calcurse/keys deleted file mode 100644 index 3304bbb..0000000 --- a/calcurse/keys +++ /dev/null @@ -1,56 +0,0 @@ -# -# Calcurse keys configuration file -# -# In this file the keybindings used by Calcurse are defined. -# It is generated automatically by Calcurse and is maintained -# via the key configuration menu of the interactive user -# interface. It should not be edited directly. - -generic-cancel ESC -generic-select SPC -generic-credits @ -generic-help ? -generic-quit q Q -generic-save s S ^S -generic-reload R -generic-copy c -generic-paste p ^V -generic-change-view TAB -generic-prev-view KEY_BTAB -generic-import i I -generic-export x X -generic-goto g G -generic-other-cmd o O -generic-config-menu C -generic-redraw ^R -generic-add-appt ^A -generic-add-todo ^T -generic-prev-day T ^H -generic-next-day t ^L -generic-prev-week W ^K -generic-next-week w -generic-prev-month M -generic-next-month m -generic-prev-year Y -generic-next-year y -generic-scroll-down ^N -generic-scroll-up ^P -generic-goto-today ^G -generic-command : -move-right l L RGT -move-left h H LFT -move-down j J DWN -move-up k K UP -start-of-week 0 -end-of-week $ -add-item a A -del-item d D -edit-item e E -view-item v V RET -pipe-item | -flag-item ! -repeat r -edit-note n N -view-note > -raise-priority + -lower-priority - diff --git a/computerrc.txt b/computerrc.txt deleted file mode 100755 index 95ec4c1..0000000 --- a/computerrc.txt +++ /dev/null @@ -1,12 +0,0 @@ -The following fields are expected in computerrc: - -inet: internet interface i.e. eth0, trunk0, em0 -OS: base operating system/kernel i.e. Linux, OpenBSD, FreeBSD -WM: default x11 window manager command i.e. awesome, qtile start -WC: default wayland compositor command i.e. river, qtile start --backend wayland -snd: sound server to launch automatically i.e. pipewire, pulseaudio, sndio, oss -batt: if there is a battery or not i.e. y or n -wayland: if boot into wayland or not i.e. y or n -tsname: touchscreen xorg device i.e. device from xinput -bl: backlight control command to use i.e. light or xbacklight -term: terminal to use i.e. st or alacritty diff --git a/ctpv/config b/ctpv/config deleted file mode 100644 index e69de29..0000000 --- a/ctpv/config +++ /dev/null diff --git a/darkman/config.yaml b/darkman/config.yaml deleted file mode 100644 index 5cf7ee4..0000000 --- a/darkman/config.yaml +++ /dev/null @@ -1,3 +0,0 @@ -usegeoclue: false -dbusserver: true -portal: true diff --git a/doas.conf b/doas.conf deleted file mode 100644 index 90ab328..0000000 --- a/doas.conf +++ /dev/null @@ -1,18 +0,0 @@ -permit persist setenv { XAUTHORITY LANG LC_ALL } :wheel -permit nopass :wheel cmd make args install -permit nopass :wheel cmd iptables args -S -permit nopass :wheel cmd ip6tables args -S -permit nopass :wheel cmd nft args list ruleset -permit nopass :wheel cmd mount -permit nopass :wheel cmd mount.exfat -permit nopass :wheel cmd umount -permit nopass :wheel cmd modprobe -permit nopass :wheel cmd zzz -permit nopass :wheel cmd pacman -permit nopass :wheel cmd cryptsetup -permit nopass :wheel cmd systemctl -permit setenv { EDITOR } :wheel cmd visudo args -permit setenv { EDITOR } :wheel cmd vimv - -permit nopass keepenv zachir as zachir -permit nopass keepenv root diff --git a/dunst/dunstrc b/dunst/dunstrc deleted file mode 100644 index 403ffca..0000000 --- a/dunst/dunstrc +++ /dev/null @@ -1,418 +0,0 @@ -[global] - ### Display ### - - # Which monitor should the notifications be displayed on. - monitor = 0 - - # Display notification on focused monitor. Possible modes are: - # mouse: follow mouse pointer - # keyboard: follow window with keyboard focus - # none: don't follow anything - # - # "keyboard" needs a window manager that exports the - # _NET_ACTIVE_WINDOW property. - # This should be the case for almost all modern window managers. - # - # If this option is set to mouse or keyboard, the monitor option - # will be ignored. - follow = mouse - - # The geometry of the window: - # [{width}]x{height}[+/-{x}+/-{y}] - # The geometry of the message window. - # The height is measured in number of notifications everything else - # in pixels. If the width is omitted but the height is given - # ("-geometry x2"), the message window expands over the whole screen - # (dmenu-like). If width is 0, the window expands to the longest - # message displayed. A positive x is measured from the left, a - # negative from the right side of the screen. Y is measured from - # the top and down respectively. - # The width can be negative. In this case the actual width is the - # screen width minus the width defined in within the geometry option. - geometry = "0x0-30+20" - - # Show how many messages are currently hidden (because of geometry). - indicate_hidden = yes - - # Shrink window if it's smaller than the width. Will be ignored if - # width is 0. - shrink = no - - # The transparency of the window. Range: [0; 100]. - # This option will only work if a compositing window manager is - # present (e.g. xcompmgr, compiz, etc.). - transparency = 10 - - # The height of the entire notification. If the height is smaller - # than the font height and padding combined, it will be raised - # to the font height and padding. - notification_height = 0 - - # Draw a line of "separator_height" pixel height between two - # notifications. - # Set to 0 to disable. - separator_height = 2 - - # Padding between text and separator. - padding = 8 - - # Horizontal padding. - horizontal_padding = 8 - - # Defines width in pixels of frame around the notification window. - # Set to 0 to disable. - frame_width = 3 - - # Defines color of the frame around the notification window. - frame_color = "#aaaaaa" - - # Define a color for the separator. - # possible values are: - # * auto: dunst tries to find a color fitting to the background; - # * foreground: use the same color as the foreground; - # * frame: use the same color as the frame; - # * anything else will be interpreted as a X color. - separator_color = frame - - # Sort messages by urgency. - sort = yes - - # Don't remove messages, if the user is idle (no mouse or keyboard input) - # for longer than idle_threshold seconds. - # Set to 0 to disable. - # A client can set the 'transient' hint to bypass this. See the rules - # section for how to disable this if necessary - idle_threshold = 120 - - ### Text ### - - font = mononoki Nerd Font Mono 18 - - # The spacing between lines. If the height is smaller than the - # font height, it will get raised to the font height. - line_height = 0 - - # Possible values are: - # full: Allow a small subset of html markup in notifications: - # <b>bold</b> - # <i>italic</i> - # <s>strikethrough</s> - # <u>underline</u> - # - # For a complete reference see - # <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>. - # - # strip: This setting is provided for compatibility with some broken - # clients that send markup even though it's not enabled on the - # server. Dunst will try to strip the markup but the parsing is - # simplistic so using this option outside of matching rules for - # specific applications *IS GREATLY DISCOURAGED*. - # - # no: Disable markup parsing, incoming notifications will be treated as - # plain text. Dunst will not advertise that it has the body-markup - # capability if this is set as a global setting. - # - # It's important to note that markup inside the format option will be parsed - # regardless of what this is set to. - markup = full - - # The format of the message. Possible variables are: - # %a appname - # %s summary - # %b body - # %i iconname (including its path) - # %I iconname (without its path) - # %p progress value if set ([ 0%] to [100%]) or nothing - # %n progress value if set without any extra characters - # %% Literal % - # Markup is allowed - format = "<b>%s</b>\n%b" - - # Alignment of message text. - # Possible values are "left", "center" and "right". - alignment = left - - # Show age of message if message is older than show_age_threshold - # seconds. - # Set to -1 to disable. - show_age_threshold = 60 - - # Split notifications into multiple lines if they don't fit into - # geometry. - word_wrap = yes - - # When word_wrap is set to no, specify where to make an ellipsis in long lines. - # Possible values are "start", "middle" and "end". - ellipsize = middle - - # Ignore newlines '\n' in notifications. - ignore_newline = no - - # Stack together notifications with the same content - stack_duplicates = true - - # Hide the count of stacked notifications with the same content - hide_duplicate_count = false - - # Display indicators for URLs (U) and actions (A). - show_indicators = yes - - ### Icons ### - - # Align icons left/right/off - icon_position = off - - # Scale larger icons down to this size, set to 0 to disable - max_icon_size = 24 - - # Paths to default icons. - icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/ - - ### History ### - - # Should a notification popped up from history be sticky or timeout - # as if it would normally do. - sticky_history = yes - - # Maximum amount of notifications kept in history - history_length = 20 - - ### Misc/Advanced ### - - # dmenu path. - dmenu = /usr/bin/dmenu -p dunst: - - # Browser for opening urls in context menu. - browser = /usr/bin/firefox -new-tab - - # Always run rule-defined scripts, even if the notification is suppressed - always_run_script = true - - # Define the title of the windows spawned by dunst - title = Dunst - - # Define the class of the windows spawned by dunst - class = Dunst - - # Print a notification on startup. - # This is mainly for error detection, since dbus (re-)starts dunst - # automatically after a crash. - startup_notification = false - - # Manage dunst's desire for talking - # Can be one of the following values: - # crit: Critical features. Dunst aborts - # warn: Only non-fatal warnings - # mesg: Important Messages - # info: all unimportant stuff - # debug: all less than unimportant stuff - verbosity = mesg - - # Define the corner radius of the notification window - # in pixel size. If the radius is 0, you have no rounded - # corners. - # The radius will be automatically lowered if it exceeds half of the - # notification height to avoid clipping text and/or icons. - corner_radius = 0 - - ### Legacy - - # Use the Xinerama extension instead of RandR for multi-monitor support. - # This setting is provided for compatibility with older nVidia drivers that - # do not support RandR and using it on systems that support RandR is highly - # discouraged. - # - # By enabling this setting dunst will not be able to detect when a monitor - # is connected or disconnected which might break follow mode if the screen - # layout changes. - force_xinerama = false - - ### mouse - - # Defines action of mouse event - # Possible values are: - # * none: Don't do anything. - # * do_action: If the notification has exactly one action, or one is marked as default, - # invoke it. If there are multiple and no default, open the context menu. - # * close_current: Close current notification. - # * close_all: Close all notifications. - mouse_left_click = close_current - mouse_middle_click = do_action - mouse_right_click = close_all - -# Experimental features that may or may not work correctly. Do not expect them -# to have a consistent behaviour across releases. -[experimental] - # Calculate the dpi to use on a per-monitor basis. - # If this setting is enabled the Xft.dpi value will be ignored and instead - # dunst will attempt to calculate an appropriate dpi value for each monitor - # using the resolution and physical size. This might be useful in setups - # where there are multiple screens with very different dpi values. - per_monitor_dpi = false - -[shortcuts] - - # Shortcuts are specified as [modifier+][modifier+]...key - # Available modifiers are "ctrl", "mod1" (the alt-key), "mod2", - # "mod3" and "mod4" (windows-key). - # Xev might be helpful to find names for keys. - - # Close notification. - close = ctrl+space - - # Close all notifications. - close_all = ctrl+shift+space - - # Redisplay last message(s). - # On the US keyboard layout "grave" is normally above TAB and left - # of "1". Make sure this key actually exists on your keyboard layout, - # e.g. check output of 'xmodmap -pke' - history = ctrl+grave - - # Context menu. - context = ctrl+shift+period - -[urgency_low] - # IMPORTANT: colors have to be defined in quotation marks. - # Otherwise the "#" and following would be interpreted as a comment. - background = "#222222" - foreground = "#888888" - timeout = 10 - # Icon for notifications with low urgency, uncomment to enable - #icon = /path/to/icon - -[urgency_normal] - background = "#285577" - foreground = "#ffffff" - timeout = 10 - # Icon for notifications with normal urgency, uncomment to enable - #icon = /path/to/icon - -[urgency_critical] - background = "#900000" - foreground = "#ffffff" - frame_color = "#ff0000" - timeout = 0 - # Icon for notifications with critical urgency, uncomment to enable - #icon = /path/to/icon - -# Every section that isn't one of the above is interpreted as a rules to -# override settings for certain messages. -# -# Messages can be matched by -# appname (discouraged, see desktop_entry) -# body -# category -# desktop_entry -# icon -# match_transient -# msg_urgency -# stack_tag -# summary -# -# and you can override the -# background -# foreground -# format -# frame_color -# fullscreen -# new_icon -# set_stack_tag -# set_transient -# timeout -# urgency -# -# Shell-like globbing will get expanded. -# -# Instead of the appname filter, it's recommended to use the desktop_entry filter. -# GLib based applications export their desktop-entry name. In comparison to the appname, -# the desktop-entry won't get localized. -# -# SCRIPTING -# You can specify a script that gets run when the rule matches by -# setting the "script" option. -# The script will be called as follows: -# script appname summary body icon urgency -# where urgency can be "LOW", "NORMAL" or "CRITICAL". -# -# NOTE: if you don't want a notification to be displayed, set the format -# to "". -# NOTE: It might be helpful to run dunst -print in a terminal in order -# to find fitting options for rules. - -# Disable the transient hint so that idle_threshold cannot be bypassed from the -# client -#[transient_disable] -# match_transient = yes -# set_transient = no -# -# Make the handling of transient notifications more strict by making them not -# be placed in history. -#[transient_history_ignore] -# match_transient = yes -# history_ignore = yes - -# fullscreen values -# show: show the notifications, regardless if there is a fullscreen window opened -# delay: displays the new notification, if there is no fullscreen window active -# If the notification is already drawn, it won't get undrawn. -# pushback: same as delay, but when switching into fullscreen, the notification will get -# withdrawn from screen again and will get delayed like a new notification -#[fullscreen_delay_everything] -# fullscreen = delay -#[fullscreen_show_critical] -# msg_urgency = critical -# fullscreen = show - -#[espeak] -# summary = "*" -# script = dunst_espeak.sh - -#[script-test] -# summary = "*script*" -# script = dunst_test.sh - -#[ignore] -# # This notification will not be displayed -# summary = "foobar" -# format = "" - -#[history-ignore] -# # This notification will not be saved in history -# summary = "foobar" -# history_ignore = yes - -#[skip-display] -# # This notification will not be displayed, but will be included in the history -# summary = "foobar" -# skip_display = yes - -#[signed_on] -# appname = Pidgin -# summary = "*signed on*" -# urgency = low -# -#[signed_off] -# appname = Pidgin -# summary = *signed off* -# urgency = low -# -#[says] -# appname = Pidgin -# summary = *says* -# urgency = critical -# -#[twitter] -# appname = Pidgin -# summary = *twitter.com* -# urgency = normal -# -#[stack-volumes] -# appname = "some_volume_notifiers" -# set_stack_tag = "volume" - -[play_sound] - summary = "*" - script = notify-sound.sh - -# vim: ft=cfg diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc deleted file mode 100644 index 3c97dc3..0000000 --- a/gtk-2.0/gtkrc +++ /dev/null @@ -1,18 +0,0 @@ -# DO NOT EDIT! This file will be overwritten by nwg-look. -# Any customization should be done in ~/.gtkrc-2.0.mine instead. - -gtk-theme-name="Flat-Remix-GTK-Green-Darkest" -gtk-icon-theme-name="Cosmic" -gtk-font-name="Cantarell 11" -gtk-cursor-theme-name="BreezeX-Black" -gtk-cursor-theme-size=32 -gtk-toolbar-style=GTK_TOOLBAR_ICONS -gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR -gtk-button-images=0 -gtk-menu-images=0 -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" diff --git a/gtk-3.0/settings.ini b/gtk-3.0/settings.ini deleted file mode 100644 index 85d3ba5..0000000 --- a/gtk-3.0/settings.ini +++ /dev/null @@ -1,17 +0,0 @@ -[Settings] -gtk-theme-name=Flat-Remix-GTK-Green-Darkest -gtk-icon-theme-name=Cosmic -gtk-font-name=Cantarell 11 -gtk-cursor-theme-name=BreezeX-Black -gtk-cursor-theme-size=32 -gtk-toolbar-style=GTK_TOOLBAR_ICONS -gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR -gtk-button-images=0 -gtk-menu-images=0 -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 diff --git a/hammerspoon/init.lua b/hammerspoon/init.lua new file mode 100644 index 0000000..e738d6d --- /dev/null +++ b/hammerspoon/init.lua @@ -0,0 +1,96 @@ +PaperWM = hs.loadSpoon("PaperWM") +PaperWM:bindHotkeys({ + -- switch to a new focused window in tiled grid + focus_left = {{"alt", "cmd"}, "left"}, + focus_right = {{"alt", "cmd"}, "right"}, + focus_up = {{"alt", "cmd"}, "up"}, + focus_down = {{"alt", "cmd"}, "down"}, + + -- switch windows by cycling forward/backward + -- (forward = down or right, backward = up or left) + focus_prev = {{"alt", "cmd"}, "k"}, + focus_next = {{"alt", "cmd"}, "j"}, + + -- move windows around in tiled grid + swap_left = {{"alt", "cmd", "shift"}, "left"}, + swap_right = {{"alt", "cmd", "shift"}, "right"}, + swap_up = {{"alt", "cmd", "shift"}, "up"}, + swap_down = {{"alt", "cmd", "shift"}, "down"}, + + -- alternative: swap entire columns, rather than + -- individual windows (to be used instead of + -- swap_left / swap_right bindings) + -- swap_column_left = {{"alt", "cmd", "shift"}, "left"}, + -- swap_column_right = {{"alt", "cmd", "shift"}, "right"}, + + -- position and resize focused window + center_window = {{"alt", "cmd"}, "c"}, + full_width = {{"alt", "cmd"}, "f"}, + cycle_width = {{"alt", "cmd"}, "r"}, + reverse_cycle_width = {{"ctrl", "alt", "cmd"}, "r"}, + cycle_height = {{"alt", "cmd", "shift"}, "r"}, + reverse_cycle_height = {{"ctrl", "alt", "cmd", "shift"}, "r"}, + + -- increase/decrease width + increase_width = {{"alt", "cmd"}, "l"}, + decrease_width = {{"alt", "cmd"}, "h"}, + + -- move focused window into / out of a column + slurp_in = {{"alt", "cmd"}, "i"}, + barf_out = {{"alt", "cmd"}, "o"}, + + -- move the focused window into / out of the tiling layer + toggle_floating = {{"alt", "cmd", "shift"}, "escape"}, + + -- focus the first / second / etc window in the current space + focus_window_1 = {{"cmd", "shift"}, "1"}, + focus_window_2 = {{"cmd", "shift"}, "2"}, + focus_window_3 = {{"cmd", "shift"}, "3"}, + focus_window_4 = {{"cmd", "shift"}, "4"}, + focus_window_5 = {{"cmd", "shift"}, "5"}, + focus_window_6 = {{"cmd", "shift"}, "6"}, + focus_window_7 = {{"cmd", "shift"}, "7"}, + focus_window_8 = {{"cmd", "shift"}, "8"}, + focus_window_9 = {{"cmd", "shift"}, "9"}, + + -- switch to a new Mission Control space + switch_space_l = {{"alt", "cmd"}, ","}, + switch_space_r = {{"alt", "cmd"}, "."}, + switch_space_1 = {{"alt", "cmd"}, "1"}, + switch_space_2 = {{"alt", "cmd"}, "2"}, + switch_space_3 = {{"alt", "cmd"}, "3"}, + switch_space_4 = {{"alt", "cmd"}, "4"}, + switch_space_5 = {{"alt", "cmd"}, "5"}, + switch_space_6 = {{"alt", "cmd"}, "6"}, + switch_space_7 = {{"alt", "cmd"}, "7"}, + switch_space_8 = {{"alt", "cmd"}, "8"}, + switch_space_9 = {{"alt", "cmd"}, "9"}, + + -- move focused window to a new space and tile + move_window_1 = {{"alt", "cmd", "shift"}, "1"}, + move_window_2 = {{"alt", "cmd", "shift"}, "2"}, + move_window_3 = {{"alt", "cmd", "shift"}, "3"}, + move_window_4 = {{"alt", "cmd", "shift"}, "4"}, + move_window_5 = {{"alt", "cmd", "shift"}, "5"}, + move_window_6 = {{"alt", "cmd", "shift"}, "6"}, + move_window_7 = {{"alt", "cmd", "shift"}, "7"}, + move_window_8 = {{"alt", "cmd", "shift"}, "8"}, + move_window_9 = {{"alt", "cmd", "shift"}, "9"} +}) + +-- 10px gap on all sides +PaperWM.window_gap = 10 + +---[[ +-- ignore specific window titles +PaperWM.window_filter:setAppFilter("REAPER", { + rejectTitles={ + 'FX...', 'VST..', 'Add..' + } +}) +--]] + +-- Set the ratios to cycle through +PaperWM.window_ratios = { 1/4, 1/3, 1/2, 2/3, 3/4 } + +PaperWM:start() diff --git a/handlr/handlr.toml b/handlr/handlr.toml deleted file mode 100644 index 58e04ba..0000000 --- a/handlr/handlr.toml +++ /dev/null @@ -1,4 +0,0 @@ -enable_selector = false -selector = "tofi -c ~/.conifg/tofi/cosmic --prompt-text 'Open With: '" -term_exec_args = '-e' -expand_wildcards = false diff --git a/hypr/hypridle.conf b/hypr/hypridle.conf deleted file mode 100644 index f25f081..0000000 --- a/hypr/hypridle.conf +++ /dev/null @@ -1,34 +0,0 @@ -general { - lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances. - before_sleep_cmd = loginctl lock-session # lock before suspend. - after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display. -} - -listener { - timeout = 150 # 2.5min. - on-timeout = brightnessctl -s set 10 # set monitor backlight to minimum, avoid 0 on OLED monitor. - on-resume = brightnessctl -r # monitor backlight restore. -} - -# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight. -listener { - timeout = 150 # 2.5min. - on-timeout = brightnessctl -sd led::kbd_backlight set 0 # turn off keyboard backlight. - on-resume = brightnessctl -rd led::kbd_backlight # turn on keyboard backlight. -} - -listener { - timeout = 300 # 5min - on-timeout = loginctl lock-session # lock screen when timeout has passed -} - -listener { - timeout = 330 # 5.5min - on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed - on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired. -} - -listener { - timeout = 1800 # 30min - on-timeout = systemctl suspend # suspend pc -} diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf deleted file mode 100644 index a8a0cb3..0000000 --- a/hypr/hyprland.conf +++ /dev/null @@ -1,471 +0,0 @@ -# See https://wiki.hyprland.org/Configuring/Monitors/ -#{{{ Monitor config -monitor = eDP-1, 1920x1080@60, 0x0, 1 -monitor = , preferred, auto, 1 -monitor = HDMI-A-1, 1920x1080@60, 0x0, 1 -monitor = DP-1, 1920x1080@60, 1920x0, 1 -#}}} - -# See https://wiki.hyprland.org/Configuring/Keywords/ for more - -#{{{ Autostart -# Execute your favorite apps at launch -# exec-once = waybar & hyprpaper & firefox -exec-once = xdph -exec-once = hyprpm reload -n -exec-once = hyprpaper -#exec-once = hypridle -exec-once = waybar -exec-once = pypr -exec-once = lxqt-policykit-agent -exec-once = import-gsettings gtk-theme 'Flat-Remix-GTK-Green-Darkest-Solid' -exec-once = import-gsettings icon-theme 'Mint-X-Grey' -exec-once = import-gsettings cursor-theme 'BreezeX-Black' -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 = mpd -#}}} - -#{{{ env -# Environment variables set at launch -env = HYPRCURSOR_THEME,theme_BreezeX-Black -env = HYPRCURSOR_SIZE,32 -env = XCURSOR_THEME,BreezeX-Black -env = XCURSOR_SIZE,32 -#}}} - -# Source a file (multi-file configs) -# source = ~/.config/hypr/myColors.conf - -# Debug {{{ -debug { - enable_stdout_logs = false - disable_logs = true -} -# }}} - -# device {{{ -$LAPTOP_TP_ENABLED = true -device { - name = synps/2-synaptics-touchpad - enabled = $LAPTOP_TP_ENABLED -} -# }}} - -#{{{ Input options -# For all categories, see https://wiki.hyprland.org/Configuring/Variables/ -input { - kb_layout = us - kb_variant = - kb_model = - kb_options = caps:escape - kb_rules = - numlock_by_default = true - scroll_method = "2fg" - follow_mouse = 1 - mouse_refocus = false - touchpad { - natural_scroll = no - } - float_switch_override_focus = 0 - sensitivity = 0 # -1.0 - 1.0, 0 means no modification. -} -#}}} - -#{{{ General options -general { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - gaps_in = 5 - gaps_out = 20 - border_size = 2 - #col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg - #col.inactive_border = rgba(595959aa) - col.active_border = rgba(198844ee) - col.inactive_border = rgba(1b1d1cee) - layout = master -} -#}}} - -#{{{ cursor -cursor { - no_warps = false -} -#}}} - -#{{{ Misc options -misc { - disable_hyprland_logo = true - disable_splash_rendering = true - enable_swallow = true - swallow_regex = ^(kitty)$ - swallow_exception_regex = ^(.*ueberzug|n?vim .*)$ - vfr = true - vrr = 1 -} -#}}} - -#{{{ Decoration options -decoration { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - rounding = 10 - #{{{ Blur options - blur { - enabled = true - size = 3 - passes = 1 - new_optimizations = true - xray = true - } - #}}} - #{{{ Shadow options - shadow { - enabled = false - range = 4 - render_power = 3 - color = 0xee1a1a1a - } - #}}} -} - -#}}} - -#{{{ Animations options -animations { - enabled = no - # Some default animations, see https://wiki.hyprland.org/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% - animation = border, 1, 10, default - animation = borderangle, 1, 8, default - animation = fade, 1, 7, default - animation = workspaces, 1, 6, default -} -#}}} - -#{{{ Dwindle layout options -dwindle { - # See https://wiki.hyprland.org/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 -} -#}}} - -#{{{ Master layout options -master { - special_scale_factor = 0.55 - mfact = 0.55 - # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more - new_status = inherit - new_on_top = true - #no_gaps_when_only = false - orientation = left - inherit_fullscreen = true - drop_at_cursor = true -} -#}}} - -#{{{ Gestures options -gestures { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - workspace_swipe = off -} -#}}} - -#{{{ plugin options -plugin { - hyprsplit { - num_workspaces = 9 - } -} -#}}} - -#{{{ Windowrules -# Example windowrule v1 -# windowrule = float, ^(kitty)$ -# Example windowrule v2 -# windowrulev2 = float, class:^(kitty)$, title:^(kitty)$ -# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more -windowrule = fullscreen, ^(Xephyr)$ -windowrule = float, title:^(LibreWolf - Choose User Profile)$ -windowrule = float, ^(xdg-desktop-portal-gtk) -windowrule = float, title:^(UNDERTALE)$ -windowrule = float, ^(Tk)$ -windowrule = float, ^(lxqt-policykit-agent)$ -windowrule = float, ^(Kdenlive)$ -windowrulev2 = stayfocused, title:^()$, class:^(steam)$ -windowrulev2 = minsize 1 1, title:^()$, class:^(steam)$ -windowrulev2 = stayfocused, title:^(menu)$,class:^(yabridge-host.exe.so)$ -windowrulev2 = minsize 1 1, title:^(menu)$,class:^(yabridge-host.exe.so)$ -windowrulev2 = float, class:^(yabridge-host.exe.so)$, title:^(menu)$ -windowrulev2 = float, floating:0, title:^(menu*) -windowrule = workspace 2, title:^(REAPER .*initializing.*)$ -windowrulev2 = tile, class:^(REAPER)$, title:^(.*REAPER v[0-9.]* - Licensed for personal/small business use)$ -windowrule = tile, ^(WebApp-Qobuz[0-9]*)$ -windowrulev2 = float, title:^(menu)$ -windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(menu)$ -#windowrulev2 = nofocus, class:^(yabridge-host.exe.so)$, title:^(\s*)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Snap/Grid Settings)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Routing for track [0-9]*)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Metronome and pre-roll settings)$ -#windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(menu)$ -#windowrulev2 = nofocus, class:^(yabridge-host.exe.so)$, title:^(\s*)$ -#windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(\s*)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Snap/Grid Settings)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Routing for track [0-9]*)$ -#windowrulev2 = float, floating:0, title:^(menu)$ -#windowrulev2 = forceinput, title:^(menu)$ -#}}} - -#{{{ Mods -# See https://wiki.hyprland.org/Configuring/Keywords/ for more -$mainMod = SUPER -$secdMod = ALT -#}}} - -#{{{ Layout toggle bind -# Layout toggle -#bind = $mainMod $secdMod, A, exec, hypr-layout -t -#}}} - -#{{{ Master layout binds -# Master layout binds -bind = $mainMod+SHIFT, Return, layoutmsg, swapwithmaster master #MASTER -bind = $mainMod+SHIFT, J, layoutmsg, swapnext #MASTER -bind = $mainMod+SHIFT, K, layoutmsg, swapprev #MASTER -bind = $mainMod+SHIFT, H, layoutmsg, addmaster #MASTER -bind = $mainMod+SHIFT, L, layoutmsg, removemaster #MASTER -binde = $mainMod, J, layoutmsg, cyclenext #MASTER -binde = $mainMod, K, layoutmsg, cycleprev #MASTER -binde = $mainMod, H, splitratio, -0.01 #MASTER -binde = $mainMod, L, splitratio, +0.01 #MASTER -bind = $mainMod+SHIFT, O, splitratio, exact 0.55 #MASTER -bind = $mainMod, O, splitratio, exact 0.69 #MASTER -#}}} - -#{{{ Group binds -# Group binds -#bind = $mainMod CONTROL, G, togglegroup, -#bind = $mainMod CONTROL, I, lockgroups, lock -#bind = $mainMod CONTROL, U, lockgroups, unlock -#bind = $mainMod CONTROL, H, moveintogroup, r -#bind = $mainMod CONTROL, L, moveintogroup, l -#bind = $mainMod CONTROL, J, moveintogroup, d -#bind = $mainMod CONTROL, K, moveintogroup, u -#}}} - -#{{{ Device binds -bind = $mainMod, Backspace, exec, touchpad.sh -#}}} - -#{{{ WC binds -bind = $mainMod SHIFT, Q, killactive, -bind = $mainMod SHIFT, E, exit, -bind = $mainMod SHIFT, SPACE, togglefloating, -bind = $mainMod $secdMod, F2, exec, ~/.config/hypr/gamemode.sh -bind = $mainMod, F, fullscreen, 0 -bind = $mainMod, M, fullscreen, 1 -bind = $mainMod, N, exec, pypr toggle_special -bind = $mainMod SHIFT, N, togglespecialworkspace, minimized -#}}} - -#{{{ Workspace binds (using split-monitor-workspaces plugin!) -# Switch workspaces with mainMod + [0-9] -bind = $mainMod, 1, split:workspace, 1 -bind = $mainMod, 2, split:workspace, 2 -bind = $mainMod, 3, split:workspace, 3 -bind = $mainMod, 4, split:workspace, 4 -bind = $mainMod, 5, split:workspace, 5 -bind = $mainMod, 6, split:workspace, 6 -bind = $mainMod, 7, split:workspace, 7 -bind = $mainMod, 8, split:workspace, 8 -bind = $mainMod, 9, split:workspace, 9 -# Move active window to a workspace with mainMod + SHIFT + [0-9] -bind = $mainMod SHIFT, 1, split:movetoworkspacesilent, 1 -bind = $mainMod SHIFT, 2, split:movetoworkspacesilent, 2 -bind = $mainMod SHIFT, 3, split:movetoworkspacesilent, 3 -bind = $mainMod SHIFT, 4, split:movetoworkspacesilent, 4 -bind = $mainMod SHIFT, 5, split:movetoworkspacesilent, 5 -bind = $mainMod SHIFT, 6, split:movetoworkspacesilent, 6 -bind = $mainMod SHIFT, 7, split:movetoworkspacesilent, 7 -bind = $mainMod SHIFT, 8, split:movetoworkspacesilent, 8 -bind = $mainMod SHIFT, 9, split:movetoworkspacesilent, 9 -bind = $mainMod CONTROL SHIFT, 1, split:movetoworkspace, 1 -bind = $mainMod CONTROL SHIFT, 2, split:movetoworkspace, 2 -bind = $mainMod CONTROL SHIFT, 3, split:movetoworkspace, 3 -bind = $mainMod CONTROL SHIFT, 4, split:movetoworkspace, 4 -bind = $mainMod CONTROL SHIFT, 5, split:movetoworkspace, 5 -bind = $mainMod CONTROL SHIFT, 6, split:movetoworkspace, 6 -bind = $mainMod CONTROL SHIFT, 7, split:movetoworkspace, 7 -bind = $mainMod CONTROL SHIFT, 8, split:movetoworkspace, 8 -bind = $mainMod CONTROL SHIFT, 9, split:movetoworkspace, 9 -#bind = $mainMod, mouse_down, split:workspace, e+1 -#bind = $mainMod, mouse_up, split:workspace, e-1 -bind = $mainMod, G, split:grabroguewindows -bind = $mainMod, comma, focusmonitor, -1 -bind = $mainMod, period, focusmonitor, +1 -bind = $mainMod SHIFT, comma, movewindow, mon:-1 -bind = $mainMod SHIFT, period, movewindow, mon:+1 -#}}} - -#{{{ Mouse binds -# Move/resize windows with mainMod + LMB/RMB and dragging -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow -#}}} - -#{{{ Resize submap binds -bind = $mainMod $secdMod, R, submap, resize -submap = resize -binde = CONTROL, L, resizeactive, 10 0 -binde = CONTROL, H, resizeactive, -10 0 -binde = CONTROL, K, resizeactive, 0 -10 -binde = CONTROL, J, resizeactive, 0 10 -binde = , escape, submap, reset -submap = reset -#}}} - -#{{{ Menu bindings -bind = $mainMod, R, exec, sh -c "$(tofi-drun -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)" -bind = $mainMod, D, exec, sh -c "$(tofi-run -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)" -bind = $mainMod $secdMod, Q, exec, qbc -bind = $mainMod $secdMod, W, exec, lwc -bind = $mainMod $secdMod, E, exec, mbc -bind = $mainMod $secdMod, R, exec, ffc -bind = $mainMod $secdMod, 1, exec, bm -bind = $mainMod $secdMod, comma, exec, dmount -p -bind = $mainMod $secdMod, period, exec, dmenuumount -bind = $mainMod $secdMod CONTROL, U, exec, dmenuunicode -bind = $mainMod $secdMod, U, exec, mprisctl -bind = $mainMod $secdMod, P, exec, passmenu -#}}} - -#{{{ Misc bindings -bind = $mainMod, Return, exec, kitty -bind = $mainMod $secdMod, F, exec, kitty -e lf -bind = $mainMod, W, exec, pkill -USR1 waybar -bind = $mainMod, Q, exec, loginctl lock-session -bind = $mainMod $secdMod CONTROL, Q, exec, systemctl suspend -bind = $mainMod SHIFT, G, exec, get-app-id -bind = $mainMod Control, M, exec, volsv -m -bind = $mainMod, Comma, exec, acpi-notify.sh -#bind = $mainMod CONTROL, R, exec, startx -- /usr/bin/Xephyr -screen 1920x1080 :1 -#}}} - -#{{{ Scratchpads -bind = $mainMod CONTROL, Z, exec, pypr toggle sphtop -$sphtop = ^(sphtop)$ -windowrule = float,$sphtop -windowrule = workspace special:sphtop silent,$sphtop -windowrule = size 50% 50%,$sphtop -windowrule = move 25% 25%,$sphtop -bind = $mainMod CONTROL, X, exec, pypr toggle spterm -$spterm = ^(spterm)$ -windowrule = float,$spterm -windowrule = workspace special:spterm silent,$dropterm -windowrule = size 50% 50%,$spterm -windowrule = move 25% 25%,$spterm -bind = $mainMod CONTROL, C, exec, pypr toggle sppmxr -$sppmxr = ^(sppmxr)$ -windowrule = float,$sppmxr -windowrule = workspace special:sppmxr silent,$sppmxr -windowrule = size 50% 50%,$sppmxr -windowrule = move 25% 25%,$sppmxr -bind = $mainMod CONTROL, V, exec, pypr toggle spblue -$spblue = ^(spblue)$ -windowrule = float,$spblue -windowrule = workspace special:spblue silent,$spblue -windowrule = size 50% 50%,$spblue -windowrule = move 25% 25%,$spblue -bind = $mainMod CONTROL, B, exec, pypr toggle spncmp -$spncmp = ^(spncmp)$ -windowrule = float,$spncmp -windowrule = workspace special:spncmp silent,$spncmp -windowrule = size 50% 50%,$spncmp -windowrule = move 25% 25%,$spncmp -bind = $mainMod CONTROL, A, exec, pypr toggle spmutt -$spmutt = ^(spmutt)$ -windowrule = float,$spmutt -windowrule = workspace special:spmutt silent,$spmutt -windowrule = size 50% 50%,$spmutt -windowrule = move 25% 25%,$spmutt -bind = $mainMod CONTROL, S, exec, pypr toggle spprof -$spprof = ^(spprof)$ -windowrule = float,$spprof -windowrule = workspace special:spprof silent,$spprof -windowrule = size 50% 50%,$spprof -windowrule = move 25% 25%,$spprof -bind = $mainMod CONTROL, D, exec, pypr toggle spirss -$spirss = ^(spirss)$ -windowrule = float,$spirss -windowrule = workspace special:spirss silent,$spirss -windowrule = size 50% 50%,$spirss -windowrule = move 25% 25%,$spirss -bind = $mainMod CONTROL, F, exec, pypr toggle sptodo -$sptodo = ^(sptodo)$ -windowrule = float,$sptodo -windowrule = workspace special:sptodo silent,$sptodo -windowrule = size 50% 50%,$sptodo -windowrule = move 25% 25%,$sptodo -bind = $mainMod CONTROL, G, exec, pypr toggle sptrmc -$sptrmc = ^(sptrmc)$ -windowrule = float,$sptrmc -windowrule = workspace special:sptrmc silent,$sptrmc -windowrule = size 50% 50%,$sptrmc -windowrule = move 25% 25%,$sptrmc - -bind = $mainMod CONTROL, Q, exec, pypr toggle qpwgraph -$spqpwg = ^(org\.rncbc\.qpwgraph)$ -windowrule = float,$spqpwg -windowrule = workspace special:spqpwg silent,$spqpwg -windowrule = size 50% 50%,$spqpwg -windowrule = move 25% 25%,$spqpwg - -bind = $mainMod CONTROL, E, togglespecialworkspace, speasy -$speasy = ^(com\.github\.wwmm\.easyeffects)$ -windowrule = float,$speasy -windowrule = workspace special:speasy silent,$speasy -windowrule = size 50% 50%,$speasy -windowrule = move 25% 25%,$speasy -#}}} - -#{{{ OBS bindings -bind = $mainMod CONTROL, 1, pass, ^(com\.obsproject\.Studio)$ -bind = $mainMod CONTROL, 2, pass, ^(com\.obsproject\.Studio)$ -bind = $mainMod CONTROL, 3, pass, ^(com\.obsproject\.Studio)$ -bind = $mainMod CONTROL, 4, pass, ^(com\.obsproject\.Studio)$ -bind = $mainMod CONTROL, 5, pass, ^(com\.obsproject\.Studio)$ -bind = $mainMod CONTROL, 6, pass, ^(com\.obsproject\.Studio)$ -bind = $mainMod CONTROL, 7, pass, ^(com\.obsproject\.Studio)$ -bind = $mainMod CONTROL, 8, pass, ^(com\.obsproject\.Studio)$ -bind = $mainMod CONTROL, 9, pass, ^(com\.obsproject\.Studio)$ -bind = $mainMod CONTROL, 0, pass, ^(com\.obsproject\.Studio)$ -#}}} - -#{{{ Inert submap binds -bind = $mainMod, B, submap, inert -submap = inert -bind = $mainMod, B, submap, reset -submap = reset -#}}} - -#{{{ Media bindings -bindl = $secdMod, P, exec, playerctl play-pause -bindel = , XF86AudioRaiseVolume, exec, volsv -i 5 -bindel = , XF86AudioLowerVolume, exec, volsv -d 5 -bind = , XF86AudioPlay, exec, playerctl play-pause -bind = , XF86AudioStop, exec, playerctl stop -bind = , XF86AudioPrev, exec, playerctl previous -bind = , XF86AudioNext, exec, playerctl next -bind = , XF86AudioMute, exec, volsv -t -#bindl = , XF86AudioMicMute, exec, volsv -m -bind = , XF86AudioMicMute, exec, volsv -m -bindel = , XF86MonBrightnessUp, exec, bl -i -bindel = , XF86MonBrightnessDown, exec, bl -d -bindl = $mainMod, XF86MonBrightnessUp, exec, bl -I 1 -bindl = $mainMod, XF86MonBrightnessDown, exec, bl -D 1 -bind = , Print, exec, scrshot -#}}} diff --git a/hypr/hyprlock.conf b/hypr/hyprlock.conf deleted file mode 100644 index 57f9fdd..0000000 --- a/hypr/hyprlock.conf +++ /dev/null @@ -1,55 +0,0 @@ -general { - disable_loading_bar = true - hide_cursor = true - grace = 0 - no_fade_in = true - no_fade_out = true - ignore_empty_input = true -} - -background { - monitor = - path = - color = rgba(0, 0, 0, 1.0) - - # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations - #blur_passes = 0 # 0 disables blurring - #blur_size = 7 - #noise = 0.0117 - #contrast = 0.8916 - #brightness = 0.8172 - #vibrancy = 0.1696 - #vibrancy_darkness = 0.0 -} - -input-field { - monitor = - size = 200, 50 - outline_thickness = 3 - dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8 - dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0 - dots_center = false - dots_rounding = -1 # -1 default circle, -2 follow input-field rounding - outer_color = rgb(151515) - inner_color = rgb(200, 200, 200) - font_color = rgb(10, 10, 10) - fade_on_empty = true - fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered. - placeholder_text = <i>Input Password...</i> # Text rendered in the input box when it's empty. - hide_input = false - rounding = -1 # -1 means complete rounding (circle/oval) - 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 - capslock_color = -1 - numlock_color = -1 - bothlock_color = -1 # when both locks are active. -1 means don't change outer color (same for above) - invert_numlock = false # change color if numlock is off - swap_font_color = false # see below - - position = 0, -20 - halign = center - valign = center -} - diff --git a/hypr/hyprpaper.conf b/hypr/hyprpaper.conf deleted file mode 100644 index 19b84f2..0000000 --- a/hypr/hyprpaper.conf +++ /dev/null @@ -1,16 +0,0 @@ -preload = ~/Pictures/background.png -#if more than one preload is desired then continue to preload other backgrounds -#preload = /path/to/next_image.png -# .. more preloads - -#set the default wallpaper(s) seen on inital workspace(s) --depending on the number of monitors used -wallpaper = eDP-1,~/Pictures/background.png -wallpaper = HDMI-A-1,~/Pictures/background.png -wallpaper = HDMI-A-2,~/Pictures/background.png -wallpaper = DP-1,~/Pictures/background.png -wallpaper = DP-2,~/Pictures/background.png -#if more than one monitor in use, can load a 2nd image -#wallpaper = monitor2,~/background.png -# .. more monitors -splash = false -preload = ~/Pictures/background.png diff --git a/hypr/pyprland.toml b/hypr/pyprland.toml deleted file mode 100644 index af439ab..0000000 --- a/hypr/pyprland.toml +++ /dev/null @@ -1,103 +0,0 @@ -[pyprland] -plugins = [ - "scratchpads", - "toggle_special", - "expose" -] - -[scratchpads.sphtop] -animation = "" -command = "kitty --class sphtop htop" -class = "sphtop" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.spterm] -animation = "" -command = "kitty --class spterm" -class = "spterm" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.sppmxr] -animation = "" -command = "kitty --class sppmxr pulsemixer" -class = "sppmxr" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.spblue] -animation = "" -command = "kitty --class spblue bluetoothctl" -class = "spblue" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.spncmp] -animation = "" -command = "kitty --class spncmp ncmpcpp" -class = "spncmp" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.spmutt] -animation = "" -command = "kitty --class spmutt neomutt" -class = "spmutt" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.spprof] -animation = "" -command = "kitty --class spprof profanity" -class = "spprof" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.spirss] -animation = "" -command = "kitty --class spirss irssi" -class = "spirss" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.sptodo] -animation = "" -command = "kitty --class sptodo todo" -class = "sptodo" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.sptrmc] -animation = "" -command = "kitty --class sptrmc tremc" -class = "sptremc" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.qpwgraph] -animation = "" -command = "qpwgraph" -class = "org.rncbc.qpwgraph" -lazy = true -size = "50% 50%" -position = "25% 25%" - -[scratchpads.easyeffects] -animation = "" -command = "flatpak run com.github.wwmm.easyeffects" -class = "com.github.wwmm.easyeffects" -lazy = true -size = "75% 75%" -position = "25% 25%" -unfocus = "hide" diff --git a/installers/vimplug_nvim.sh b/installers/vimplug_nvim.sh deleted file mode 100755 index feddd03..0000000 --- a/installers/vimplug_nvim.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \ - https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim 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..aa6eda2 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) @@ -1748,6 +1748,8 @@ term xterm-256color #:: map kitty_mod+y new_window less @selection +map ctrl+shift+a launch --stdin-source=@screen_scrollback pbcopy + #: }}} #: Scrolling {{{ @@ -7,9 +7,10 @@ main() { > "$FIFO_UEBERZUG" ;; "draw") - declare -p -A cmd=([action]=add [identifier]="$ID_PREVIEW" \ - [x]="$3" [y]="$4" [max_width]="$5" [max_height]="$6" \ - [path]="$2") > "$FIFO_UEBERZUG" + kitten icat --stdin no --transfer-mode memory --place"${5}x${6}@${3}x${4}" "$1" /dev/tty + #declare -p -A cmd=([action]=add [identifier]="$ID_PREVIEW" \ + #[x]="$3" [y]="$4" [max_width]="$5" [max_height]="$6" \ + #[path]="$2") > "$FIFO_UEBERZUG" ;; "*") echo "Unknown command: '$1', '$2'" ;; esac @@ -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/lf/previewer b/lf/previewer index 24db043..a41e692 100755 --- a/lf/previewer +++ b/lf/previewer @@ -27,10 +27,22 @@ case "$(file -Lb --mime-type "$file")" in ;; application/epub+zip|application/epub) CACHE=$(mktemp /tmp/thumbcache.XXXXX) - epub-thumbnailer "$1" "$CACHE" 1024 + python3 ~/Applications/epub-thumbnailer.py "$1" "$CACHE" 1024 $HOME/.config/lf/image draw "$CACHE" rm -f "$CACHE" "$CACHE.png" ;; + application/vnd.openxmlformats-officedocument.wordprocessingml.document) + textutil -convert txt -stdout "$1" + ;; + application/vnd.oasis.opendocument.text) + textutil -convert txt -stdout "$1" + ;; + text/*) + cat -v "$1" + ;; + *) + exiftool "$1" + ;; esac pistol "$file" diff --git a/mpd/mpd.conf b/mpd/mpd.conf index e26dbd1..7514485 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" @@ -275,12 +275,19 @@ input { # # An example of a pulseaudio output (streaming to a remote pulseaudio server) # -audio_output { - type "pulse" - name "My Pulse Output" -# server "remote_server" # optional -# sink "remote_server_sink" # optional -} +#audio_output { +# type "pulse" +# name "My Pulse Output" +## server "remote_server" # optional +## sink "remote_server_sink" # optional +#} +# +# Pipewire output +# +#audio_output { +# type "pipewire" +# name "Pipewire Sound Server" +#} audio_output { type "fifo" @@ -318,12 +325,12 @@ audio_output { # # An example of an OS X output: # -#audio_output { -# type "osx" -# name "My OS X Device" -## device "Built-in Output" # optional -## channel_map "-1,-1,0,1" # optional -#} +audio_output { + type "osx" + name "My OS X Device" +# device "Built-in Output" # optional +# channel_map "-1,-1,0,1" # optional +} # ## Example "pipe" output: # diff --git a/nvim/init.lua b/nvim/init.lua new file mode 100644 index 0000000..06b973a --- /dev/null +++ b/nvim/init.lua @@ -0,0 +1,7 @@ +require('options') +require('keymaps') +require('lsp') +require('plugins') +require('colorscheme') +require('term') +require('vimwiki') diff --git a/nvim/init.vim b/nvim/init.vim deleted file mode 100644 index 812bf3e..0000000 --- a/nvim/init.vim +++ /dev/null @@ -1,306 +0,0 @@ -set runtimepath^=$XDG_CONFIG_HOME/vim -set runtimepath+=$XDG_DATA_HOME/vim -set runtimepath+=$XDG_CONFIG_HOME/vim/after - -set packpath^=$XDG_DATA_HOME/vim,$XDG_CONFIG_HOME/vim -set packpath+=$XDG_CONFIG_HOME/vim/after,$XDG_DATA_HOME/vim/after - -let g:netrw_home = $XDG_DATA_HOME."/vim" -call mkdir($XDG_DATA_HOME."/vim/spell", 'p') - -set backupdir=$XDG_STATE_HOME/vim/backup | call mkdir(&backupdir, 'p') -set directory=$XDG_STATE_HOME/vim/swap | call mkdir(&directory, 'p') -set undodir=$XDG_STATE_HOME/vim/undo | call mkdir(&undodir, 'p') -set viewdir=$XDG_STATE_HOME/vim/view | call mkdir(&viewdir, 'p') - -if !has('nvim') | set viminfofile=$XDG_STATE_HOME/vim/viminfo | endif - -" vimplugs {{{ -call plug#begin('~/.config/nvim/plugged') -" colorschemes {{{ -Plug 'tomasiser/vim-code-dark' " codedark color scheme -Plug 'flazz/vim-colorschemes' " meta-color scheme package -Plug 'tomasiser/vim-code-dark' " codedark color scheme -Plug 'flazz/vim-colorschemes' " meta-color scheme package -Plug 'ZachIndigo/vim-preglow' " my old color scheme -" }}} -" language support {{{ -Plug 'axvr/org.vim' " basic org markup language implementation -Plug 'ziglang/zig.vim' " zig programming language -Plug 'jdonaldson/vaxe' " haxe programming language -Plug 'xuhdev/vim-latex-live-preview', { 'for': 'tex' } " latex live preview support -Plug 'waycrate/swhkd-vim' " swhkd syntax highlighting -Plug 'HiPhish/guile.vim' " guile syntax highlighting -" }}} -" utility {{{ -Plug 'preservim/nerdtree' " directory tree interface -Plug 'Xuyuanp/nerdtree-git-plugin' " git status indicator for nerdtree -Plug 'PhilRunninger/nerdtree-visual-selection' " allows visual selection mode in nerdtree -Plug 'tpope/vim-fugitive' " git command interface -Plug 'junegunn/goyo.vim' " simplify the user interface (distraction-free) [BROKEN] -Plug 'junegunn/limelight.vim' " focus on single paragraph of text at a time -Plug 'vim-airline/vim-airline' " powerline the vim bottom bar -Plug 'nathanaelkane/vim-indent-guides' " indent guides for vim -Plug 'mhinz/vim-signify' " use signs to show diffs -Plug 'tpope/vim-endwise' " auto end functions/if statements -Plug 'tpope/vim-surround' " auto close stuff -Plug 'mattn/emmet-vim' " html css easy formating -Plug 'godlygeek/tabular' " Needed for vim-markdown -Plug 'plasticboy/vim-markdown' " Better markdown support -Plug 'ryanoasis/vim-devicons' " dev icons for nerdtree -" }}} -call plug#end() - -" }}} -" nvim options {{{ - -"" nvimrc: -"" General - -set showmatch " Highlight matching brace - -set number -set relativenumber - -colorscheme Dark2 - -set hlsearch " Highlight all search results -set smartcase " Enable smart-case search -set incsearch " Searches for strings incrementally - -set expandtab " Use spaces instead of tabs -set shiftwidth=2 " Number of auto-indent spaces -set smartindent " Enable smart-indent -set smarttab " Enable smart-tabs -set softtabstop=2 " Number of spaces per Tab - -"" Advanced -set ruler " Show row and column ruler information -set undolevels=1000 " Number of undo levels -set backspace=indent,eol,start " Backspace behaviour -filetype plugin indent on - -"" GUI Config -set guifont=mononoki\ Nerd\ Font\ Mono:h12 - -"hi Normal guibg=NONE ctermbg=NONE -"hi NonText guibg=NONE ctermbg=NONE -"set background=dark - -set foldmethod=marker - -set conceallevel=2 - -" set leader key - -let mapleader="'" - -" emmet {{{ -let g:user_emmet_leader_key='<C-a>' -" }}} - -" zig config {{{ -let g:zig_fmt_autosave = 1 -" }}} - -" latex live preview {{{ -let g:livepreview_previewer = 'zathura' -let g:livepreview_use_biber = 1 -let g:livepreview_cursorhold_recompile = 0 -" }}} - -" vim-markdown {{{ -let g:vim_markdown_folding_disabled = 1 -let g:vim_markdown_folding_level = 3 -let g:vim_markdown_toc_autofit = 1 -let g:vim_markdown_emphasis_multiline = 0 -let g:tex_conceal = "" -let g:vim_markdown_math = 1 -let g:vim_markdown_conceal_code_blocks = 1 -let g:vim_markdown_fenced_languages = ['c++=cpp', 'viml=vim', 'bash=sh', 'ini=dosini'] -let g:vim_markdown_follow_anchor = 1 -let g:vim_markdown_math = 1 -let g:vim_markdown_frontmatter = 1 -let g:vim_markdown_toml_frontmatter = 1 -let g:vim_markdown_strikethrough = 1 -let g:vim_markdown_no_extensions_in_markdown = 1 -let g:vim_markdown_autowrite = 1 -let g:vim_markdown_auto_insert_bullets = 0 -let g:vim_markdown_new_list_item_indent = 0 -let g:vim_markdown_edit_url_in = 'tab' -" }}} - -" NERDTree config {{{ -let g:NERDTreeGitStatusUseNerdFonts = 1 " use nerd fonts -let g:NERDTreeGitStatusShowClean = 1 " default: 0 -let g:NERDTreeDirArrowExpandable = '>' -let g:NERDTreeDirArrowCollapsible = '<' -let g:NERDTreeMapToggleHidden = 'z' -" }}} - -" Goyo config {{{ -let g:goyo_width = '90%' -let g:goyo_height = '100%' -" }}} - -" limelight config {{{ -let g:limelight_conceal_ctermfg = 'gray' -let g:limelight_conceal_guifg = 'gray' -" }}} - -" devicon config {{{ -let g:airline_powerline_fonts = 1 -let g:webdevicons_enable_nerdtree = 1 -" }}} - -" vim-indent-guides config {{{ -let g:indent_guides_enable_on_vim_startup = 0 -" }}} - -" vim-signify config {{{ -set updatetime=100 -" }}} - -" }}} -" Functions {{{ -" Goyo functions {{{ -function! s:goyo_enter() - if executable('tmux') && strlen($TMUX) - silent !tmux set status off - silent !tmux list-panes -F '\#F' | grep -q Z || tmux resize-pane -Z - endif - set noshowmode - set noshowcmd - set scrolloff=999 - Limelight - NERDTreeClose -endfunction -function! s:goyo_leave() - if executable('tmux') && strlen('$TMUX') - silent !tmux set status on - silent !tmux list-panes -F '\#F' | grep -q Z && tmux resize-pane -Z - endif - set showmode - set showcmd - set scrolloff=5 - Limelight! - NERDTree -endfunction -" }}} -" }}} -" Autocommands {{{ -" Goyo autocommands {{{ -autocmd! User GoyoEnter nested call <SID>goyo_enter() -autocmd! User GoyoLeave nested call <SID>goyo_leave() -" }}} -" NERDTree autocmds {{{ -autocmd StdinReadPre * let s:std_in=1 -autocmd VimEnter * if argc() == 0 && !exists('s:std_in') | NERDTree | wincmd p | endif -autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists('s:std_in') | - \ execute 'NERDTree' argv()[0] | wincmd p | enew | execute 'cd '.argv()[0] | endif -autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif -autocmd BufEnter * if winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif -"autocmd BufEnter * if bufname('#') =~ 'NERD_tree_\d\+' && bufname('%') !~ 'NERD_tree_\d\+' && winnr('$') > 1 | - "\ let buf=bufnr() | buffer# | execute "normal! \<C-W>w" | execute 'buffer;.buf | endif -autocmd BufWinEnter * if getcmdwintype() == '' | silent NERDTreeMirror | endif -" }}} -" custom augroup {{{ -augroup custom - autocmd! - "au BufEnter *.tex :LLPStartPreview - au BufEnter *.md :set textwidth=80 - au BufEnter *.ms :set textwidth=80 - "au BufEnter *.c :colo DevC++ - "au BufEnter *.h :colo DevC++ - "au BufEnter *.cc :colo DevC++ - "au BufEnter *.hh :colo DevC++ - "au BufEnter *.cpp :colo DevC++ - "au BufEnter *.hpp :colo DevC++ - au BufWritePost init.vim :source % - "au BufWritePost *.tex :make - au BufWritePost *sxhkdrc* :!pkill -USR1 -x sxhkd - au BufWritePost .Xresources :!xrdb ~/.Xresources - au BufWritePost .gitignore :!git add .gitignore -augroup end -" }}} -" }}} -" keybindings {{{ - -" direction keys - -inoremap <Down> <C-o>gj -inoremap <Up> <C-o>gk -inoremap <Home> <C-o>g<Home> -inoremap <End> <C-o>g<End> -vnoremap <Down> <C-o>gj -vnoremap <Up> <C-o>gk -vnoremap <Home> <C-o>g<Home> -vnoremap <End> <C-o>g<End> -nnoremap <Down> gj -nnoremap <Up> gk - -" clear search highlights -nnoremap <leader>/ :noh<CR> - -" toggles -nnoremap <leader>tn :set number!<CR> -nnoremap <leader>tr :set relativenumber!<CR> -nnoremap <leader>tt :NERDTreeToggle<CR> - -" tabs -nnoremap <leader>th :tabprevious<CR> -nnoremap <leader>tl :tabnext<CR> -nnoremap <leader>tk :tabnew<CR> -nnoremap <leader>tj :tabclose<CR> - -" splits -nnoremap <leader>wh :vertical resize -1<CR> -nnoremap <leader>wj :resize -1<CR> -nnoremap <leader>wk :resize +1<CR> -nnoremap <leader>wl :vertical resize +1<CR> - -" config -nnoremap <leader>en :e ~/.config/nvim/init.vim<CR> -nnoremap <leader>ec :source %<CR> - -" write as root -nnoremap ZW :w !pkexec tee % >/dev/null - -" Goyo -nnoremap <leader>G :Goyo<CR> - -" windows -nnoremap <C-h> <C-w>h -nnoremap <C-j> <C-w>j -nnoremap <C-k> <C-w>k -nnoremap <C-l> <C-w>l -vnoremap <C-h> <C-w>h -vnoremap <C-j> <C-w>j -vnoremap <C-k> <C-w>k -vnoremap <C-l> <C-w>l - -" files -" these may go away soon -nnoremap <leader>xx :q<CR> -nnoremap <leader>x! :q!<CR> -" these are the new standard -nnoremap <leader>qq :q<CR> -nnoremap <leader>q! :q!<CR> -nnoremap <leader>wq :wq<CR> -nnoremap <leader>ww :w<CR> -nnoremap <leader>ee :e - -" escape for term windows -tnoremap <Esc> <C-\><C-n> - -" vim-plug -nnoremap <leader>pi :PlugInstall<CR> -nnoremap <leader>pu :PlugUpdate<CR> -nnoremap <leader>pU :PlugUpgrade<CR> -nnoremap <leader>pc :PlugClean<CR> - -" fugitive -nnoremap <leader>gp :G pull<CR> -nnoremap <leader>gd :G diff %<CR> - -" }}} diff --git a/nvim/lua/colorscheme.lua b/nvim/lua/colorscheme.lua new file mode 100644 index 0000000..66516fa --- /dev/null +++ b/nvim/lua/colorscheme.lua @@ -0,0 +1,8 @@ +-- define your colorscheme here +local colorscheme = 'badwolf' + +local is_ok, _ = pcall(vim.cmd, "colorscheme " .. colorscheme) +if not is_ok then + vim.notify('colorscheme ' .. colorscheme .. ' not found!') + return +end diff --git a/nvim/lua/keymaps.lua b/nvim/lua/keymaps.lua new file mode 100644 index 0000000..ff04b7d --- /dev/null +++ b/nvim/lua/keymaps.lua @@ -0,0 +1,97 @@ +-- define common options +local opts = { + noremap = true, -- non-recursive + silent = true, -- do not show message +} + +-- set leader key +vim.g.mapleader = "'" + +----------------- +-- Normal mode -- +----------------- + +-- Hint: see `:h vim.map.set()` +-- Better window navigation +vim.keymap.set('n', '<C-h>', '<C-w>h', opts) +vim.keymap.set('n', '<C-j>', '<C-w>j', opts) +vim.keymap.set('n', '<C-k>', '<C-w>k', opts) +vim.keymap.set('n', '<C-l>', '<C-w>l', opts) + +-- Resize with arrows +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>') + +-- NerdTREE +vim.keymap.set('n', '<leader>tt', ':NERDTreeToggle<CR>') + +-- files +-- these may go away soon +vim.keymap.set('n', '<leader>xx', ':q<CR>') +vim.keymap.set('n', '<leader>x!', ':q!<CR>') + +-- Close with leader +vim.keymap.set('n', '<leader>ww', ':w<CR>', opts) +vim.keymap.set('n', '<leader>qq', ':q<CR>', opts) +vim.keymap.set('n', '<leader>wq', ':wq<CR>', opts) +vim.keymap.set('n', '<leader>q!', ':q!<CR>', opts) +vim.keymap.set('n', '<leader>wq', ':wq<CR>') +vim.keymap.set('n', '<leader>ee :e', '') + +-- Tabs with leader +vim.keymap.set('n', '<leader>th', ':tabprevious<CR>', opts) +vim.keymap.set('n', '<leader>tl', ':tabnext<CR>', opts) +vim.keymap.set('n', '<leader>tk', ':tabnew<CR>', opts) +vim.keymap.set('n', '<leader>tj', ':tabclose<CR>', opts) + +-- Write with sudo +vim.keymap.set('n', 'ZW', ':w !pkexec tee % >/dev/null', opts) + +-- clear search highlights +vim.keymap.set('n', '<leader>/', ':noh<CR>') + +-- toggles +vim.keymap.set('n', '<leader>tn :set', 'number!<CR>') +vim.keymap.set('n', '<leader>tr :set', 'relativenumber!<CR>') + +-- write as root +vim.keymap.set('n', 'ZW', ':w !pkexec tee % >/dev/null') + +-- config +vim.keymap.set('n', '<leader>en', ':e ~/.config/nvim/init.lua<CR>') +vim.keymap.set('n', '<leader>ec', ':source %<CR>') +vim.keymap.set('n', '<leader>er', ':source ~/.config/nvim/init.lua<CR>') + +-- Goyo +vim.keymap.set('n', '<leader>G', ':Goyo<CR>') + +-- fugitive +vim.keymap.set('n', '<leader>gp :G', 'pull<CR>') +vim.keymap.set('n', '<leader>gd :G diff', '%<CR>') + +----------------- +-- Visual mode -- +----------------- + +-- Hint: start visual mode with the same area as the previous area and the same mode +--vim.keymap.set('v', '<', '<gv', opts) +--vim.keymap.set('v', '>', '>gv', opts) + +-- windows +vim.keymap.set('v', '<C-h>', '<C-w>h') +vim.keymap.set('v', '<C-j>', '<C-w>j') +vim.keymap.set('v', '<C-k>', '<C-w>k') +vim.keymap.set('v', '<C-l>', '<C-w>l') + +-------------- +-- TERMINAL -- +-------------- + +-- escape for term windows +vim.keymap.set('t', '<Esc>', '<C-\\><C-n>') diff --git a/nvim/lua/lsp.lua b/nvim/lua/lsp.lua new file mode 100644 index 0000000..343c76b --- /dev/null +++ b/nvim/lua/lsp.lua @@ -0,0 +1,22 @@ +-- Remove Global Default Key mapping +vim.keymap.del("n", "grn") +vim.keymap.del("n", "gra") +vim.keymap.del("n", "grr") +vim.keymap.del("n", "gri") +vim.keymap.del("n", "gO") + +-- Create keymapping +-- LspAttach: After an LSP Client performs "initialize" and attaches to a buffer. +vim.api.nvim_create_autocmd("LspAttach", { + callback = function(args) + local keymap = vim.keymap + local lsp = vim.lsp + local bufopts = { noremap = true, silent = true } + + keymap.set("n", "gr", lsp.buf.references, bufopts) + keymap.set("n", "gd", lsp.buf.definition, bufopts) + keymap.set("n", "<space>rn", lsp.buf.rename, bufopts) + keymap.set("n", "K", lsp.buf.hover, bufopts) + keymap.set("n", "<space>f", lsp.buf.format, bufopts) + end +}) diff --git a/nvim/lua/options.lua b/nvim/lua/options.lua new file mode 100644 index 0000000..ae802be --- /dev/null +++ b/nvim/lua/options.lua @@ -0,0 +1,86 @@ +-- Hint: use `:h <option>` to figure out the meaning if needed +vim.opt.clipboard = 'unnamedplus' -- use system clipboard +vim.opt.completeopt = {'menu', 'menuone', 'noselect'} +vim.opt.mouse = 'a' -- allow the mouse to be used in nvim + +-- Tab +vim.opt.tabstop = 2 -- number of visual spaces per TAB +vim.opt.softtabstop = 2 -- number of spaces in tab when editing +vim.opt.shiftwidth = 2 -- insert 2 spaces on a tab +vim.opt.expandtab = true -- tabs are spaces +vim.opt.smartindent = true +vim.opt.smarttab = true + +-- UI config +vim.opt.number = true -- show absolute number +vim.opt.relativenumber = true -- show relative numbers +vim.opt.cursorline = true -- highlight cursor line underneath cursor horizontally +vim.opt.splitbelow = true -- open new vertical splits bottom +vim.opt.splitright = true -- open new horizontal splits right +-- vim.opt.termguicolors = true -- enable 24-bit RGB color in the TUI +vim.opt.showmode = false -- show the "-- INSERT --" and other hints + +-- Searching +vim.opt.incsearch = true -- search as characters are entered +vim.opt.hlsearch = false -- do not highlight matches +vim.opt.ignorecase = true -- ignore case in searches by default +vim.opt.smartcase = true -- but make it case sensitive if an uppercase is entered + +-- Etc +vim.opt.ruler = true -- Show row and column ruler info +vim.opt.undolevels = 1000 -- Number of undo levels +vim.opt.backspace = { "indent", "eol", "start" } -- Backspace behavior +vim.opt.foldmethod = "marker" +vim.opt.conceallevel = 2 + +-- Plugins +-- emmet +vim.g.user_emmet_leader_key = '<C-a>' + +-- zig +vim.g.zig_fmt_autosave = 1 + +-- markdown +vim.g.vim_markdown_folding_disabled = 1 +vim.g.vim_markdown_folding_level = 3 +vim.g.vim_markdown_toc_autofit = 1 +vim.g.vim_markdown_emphasis_multiline = 0 +vim.g.tex_conceal = "" +vim.g.vim_markdown_math = 1 +vim.g.vim_markdown_conceal_code_blocks = 1 +vim.g.vim_markdown_fenced_languages = { 'c++=cpp', 'viml=vim', 'bash=sh', 'ini=dosini' } +vim.g.vim_markdown_follow_anchor = 1 +vim.g.vim_markdown_math = 1 +vim.g.vim_markdown_frontmatter = 1 +vim.g.vim_markdown_toml_frontmatter = 1 +vim.g.vim_markdown_strikethrough = 1 +vim.g.vim_markdown_no_extensions_in_markdown = 1 +vim.g.vim_markdown_autowrite = 1 +vim.g.vim_markdown_auto_insert_bullets = 0 +vim.g.vim_markdown_new_list_item_indent = 0 +vim.g.vim_markdown_edit_url_in = 'tab' + +-- NERDTree +vim.g.NERDTreeGitStatusUseNerdFonts = 1 +vim.g.NERDTreeGitStatusShowClean = 1 +vim.g.NERDTreeDirArrowExpandable = '>' +vim.g.NERDTreeDirArrowCollapsible = '<' +vim.g.NERDTreeMapToggleHidden = 'z' + +-- goyo +vim.g.goyo_width = '90%' +vim.g.goyo_height = '100%' + +-- limelight +vim.g.limelight_conceal_ctermfg = 'gray' +vim.g.limelight_conceal_guifg = 'gray' + +-- devicon +vim.g.airline_powerline_fonts = 1 +vim.g.webdevicons_enable_nerdtree = 1 + +-- vim-indent-guides +vim.g.indent_guides_enable_on_vim_startup = 0 + +-- vim-signify +vim.opt.updatetime = 100 diff --git a/nvim/lua/plugins.lua b/nvim/lua/plugins.lua new file mode 100644 index 0000000..7428e3b --- /dev/null +++ b/nvim/lua/plugins.lua @@ -0,0 +1,72 @@ +local lazypath = vim.fn.stdpath("data") .. "lazy/lazy.nvim" +if not (vim.uv or vim.loop).fs_stat(lazypath) then + vim.fn.system({ + "git", + "clone", + "--filter=blob:none", + "https://github.com/folke/lazy.nvim.git", + "--branch=stable", -- latest stable release + lazypath, + }) +end +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 = { + "mason-org/mason.nvim", + "neovim/nvim-lspconfig", + }, + opts = { + ensure_installed = { "pylsp", "clangd", "rust_analyzer", "zls" }, + }, + }, + { + "neovim/nvim-lspconfig", + --[[config = function() + local lspconfig = require("lspconfig") + + lspconfig.pylsp.setup({}) + end, + --]] + }, + "tanvirtin/monokai.nvim", + "lervag/vimtex", + 'tomasiser/vim-code-dark', + 'flazz/vim-colorschemes', + 'ZachIndigo/vim-preglow', + 'axvr/org.vim', + 'ziglang/zig.vim', + 'jdonaldson/vaxe', + --'xuhdev/vim-latex-live-preview', + 'waycrate/swhkd-vim', + 'HiPhish/guile.vim', + 'preservim/nerdtree', + 'Xuyuanp/nerdtree-git-plugin', + 'PhilRunninger/nerdtree-visual-selection', + 'tpope/vim-fugitive', + 'junegunn/goyo.vim', + 'junegunn/limelight.vim', + 'vim-airline/vim-airline', + 'nathanaelkane/vim-indent-guides', + 'mhinz/vim-signify', + 'tpope/vim-endwise', + 'tpope/vim-surround', + 'mattn/emmet-vim', + 'godlygeek/tabular', + 'plasticboy/vim-markdown', + 'ryanoasis/vim-devicons', + {'akinsho/toggleterm.nvim', version = "*", config = true}, +}) diff --git a/nvim/lua/term.lua b/nvim/lua/term.lua new file mode 100644 index 0000000..e7aac4e --- /dev/null +++ b/nvim/lua/term.lua @@ -0,0 +1,51 @@ +require("toggleterm").setup{ + -- size can be a number or function which is passed the current terminal + size = function(term) + if term.direction == "horizontal" then + return 15 + elseif term.direction == "vertical" then + return vim.o.columns * 0.4 + end + end, + open_mapping = [[<leader>`]], -- or { [[<c-\>]], [[<c-¥>]] } if you also use a Japanese keyboard. + hide_numbers = true, -- hide the number column in toggleterm buffers + shade_filetypes = {}, + autochdir = false, -- when neovim changes it current directory the terminal will change it's own when next it's opened + shade_terminals = true, -- NOTE: this option takes priority over highlights specified so if you specify Normal highlights you should set this to false + shading_factor = '-30', -- the percentage by which to lighten dark terminal background, default: -30 + shading_ratio = '-3', -- the ratio of shading factor for light/dark terminal background, default: -3 + start_in_insert = true, + insert_mappings = true, -- whether or not the open mapping applies in insert mode + terminal_mappings = true, -- whether or not the open mapping applies in the opened terminals + persist_size = true, + persist_mode = true, -- if set to true (default) the previous terminal mode will be remembered + direction = 'horizontal', + close_on_exit = true, -- close the terminal window when the process exits + clear_env = false, -- use only environmental variables from `env`, passed to jobstart() + -- Change the default shell. Can be a string or a function returning a string + shell = vim.o.shell, + auto_scroll = true, -- automatically scroll to the bottom on terminal output + -- This field is only relevant if direction is set to 'float' + float_opts = { + -- The border key is *almost* the same as 'nvim_open_win' + -- see :h nvim_open_win for details on borders however + -- the 'curved' border is a custom border type + -- not natively supported but implemented in this plugin. + border = 'single', + -- like `size`, width, height, row, and col can be a number or function which is passed the current terminal + winblend = 3, + title_pos = 'left' + }, + winbar = { + enabled = false, + name_formatter = function(term) -- term: Terminal + return term.name + end + }, + responsiveness = { + -- breakpoint in terms of `vim.o.columns` at which terminals will start to stack on top of each other + -- instead of next to each other + -- default = 0 which means the feature is turned off + horizontal_breakpoint = 135, + } +} 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/picom.conf b/picom.conf deleted file mode 100644 index 3f0b9f7..0000000 --- a/picom.conf +++ /dev/null @@ -1,429 +0,0 @@ -################################# -# Shadows # -################################# - - -# Enabled client-side shadows on windows. Note desktop windows -# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow, -# unless explicitly requested using the wintypes option. -# -# shadow = false -shadow = true; - -# The blur radius for shadows, in pixels. (defaults to 12) -# shadow-radius = 12 -shadow-radius = 7; - -# The opacity of shadows. (0.0 - 1.0, defaults to 0.75) -# shadow-opacity = .75 - -# The left offset for shadows, in pixels. (defaults to -15) -# shadow-offset-x = -15 -shadow-offset-x = -7; - -# The top offset for shadows, in pixels. (defaults to -15) -# shadow-offset-y = -15 -shadow-offset-y = -7; - -# Red color value of shadow (0.0 - 1.0, defaults to 0). -# shadow-red = 0 - -# Green color value of shadow (0.0 - 1.0, defaults to 0). -# shadow-green = 0 - -# Blue color value of shadow (0.0 - 1.0, defaults to 0). -# shadow-blue = 0 - -# Hex string color value of shadow (#000000 - #FFFFFF, defaults to #000000). This option will override options set shadow-(red/green/blue) -# shadow-color = "#000000" - -# Specify a list of conditions of windows that should have no shadow. -# -# examples: -# shadow-exclude = "n:e:Notification"; -# -# shadow-exclude = [] -shadow-exclude = [ - "name = 'Notification'", - "class_g = 'Conky'", - "class_g ?= 'Notify-osd'", - "class_g = 'Cairo-clock'", - "_GTK_FRAME_EXTENTS@:c" -]; - -# Specify a list of conditions of windows that should have no shadow painted over, such as a dock window. -# clip-shadow-above = [] - -# Specify a X geometry that describes the region in which shadow should not -# be painted in, such as a dock window region. Use -# shadow-exclude-reg = "x10+0+0" -# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on. -# -# shadow-exclude-reg = "" - -# Crop shadow of a window fully on a particular Xinerama screen to the screen. -# xinerama-shadow-crop = false - - -################################# -# Fading # -################################# - - -# Fade windows in/out when opening/closing and when opacity changes, -# unless no-fading-openclose is used. -# fading = false -fading = false; - -# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028) -# fade-in-step = 0.028 -fade-in-step = 0.03; - -# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03) -# fade-out-step = 0.03 -fade-out-step = 0.03; - -# The time between steps in fade step, in milliseconds. (> 0, defaults to 10) -# fade-delta = 10 - -# Specify a list of conditions of windows that should not be faded. -# fade-exclude = [] - -# Do not fade on window open/close. -# no-fading-openclose = false - -# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc. -# no-fading-destroyed-argb = false - - -################################# -# Transparency / Opacity # -################################# - - -# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0) -# inactive-opacity = 1 -inactive-opacity = 1; - -# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default) -# frame-opacity = 1.0 -frame-opacity = 0.9; - -# Let inactive opacity set by -i override the '_NET_WM_WINDOW_OPACITY' values of windows. -# inactive-opacity-override = true -inactive-opacity-override = false; - -# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0) -# active-opacity = 1.0 - -# Dim inactive windows. (0.0 - 1.0, defaults to 0.0) -# inactive-dim = 0.0 - -# Specify a list of conditions of windows that should never be considered focused. -# focus-exclude = [] -focus-exclude = [ "class_g = 'Cairo-clock'" ]; - -# Use fixed inactive dim value, instead of adjusting according to window opacity. -# inactive-dim-fixed = 1.0 - -# Specify a list of opacity rules, in the format `PERCENT:PATTERN`, -# like `50:name *= "Firefox"`. picom-trans is recommended over this. -# Note we don't make any guarantee about possible conflicts with other -# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows. -# example: -# opacity-rule = [ "80:class_g = 'URxvt'" ]; -# -# opacity-rule = [] -# opacity-rule [ "100:name = 'REAPER'" ]; - - -################################# -# Corners # -################################# - -# Sets the radius of rounded window corners. When > 0, the compositor will -# round the corners of windows. Does not interact well with -# `transparent-clipping`. -corner-radius = 0 - -# Exclude conditions for rounded corners. -rounded-corners-exclude = [ - "window_type = 'dock'", - "window_type = 'desktop'" -]; - - -################################# -# Background-Blurring # -################################# - - -# Parameters for background blurring, see the *BLUR* section for more information. -# blur-method = -# blur-size = 12 -# -# blur-deviation = false -# -# blur-strength = 5 - -# Blur background of semi-transparent / ARGB windows. -# Bad in performance, with driver-dependent behavior. -# The name of the switch may change without prior notifications. -# -# blur-background = false - -# Blur background of windows when the window frame is not opaque. -# Implies: -# blur-background -# Bad in performance, with driver-dependent behavior. The name may change. -# -# blur-background-frame = false - - -# Use fixed blur strength rather than adjusting according to window opacity. -# blur-background-fixed = false - - -# Specify the blur convolution kernel, with the following format: -# example: -# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; -# -# blur-kern = "" -blur-kern = "3x3box"; - - -# Exclude conditions for background blur. -# blur-background-exclude = [] -blur-background-exclude = [ - "window_type = 'dock'", - "window_type = 'desktop'", - "_GTK_FRAME_EXTENTS@:c" -]; - -################################# -# General Settings # -################################# - -# Enable remote control via D-Bus. See the man page for more details. -# dbus = true - -# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers. -# daemon = false - -# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`. -# `xrender` is the default one. -# -# backend = "glx" -backend = "xrender"; - -# Enable/disable VSync. -# vsync = false -vsync = true; - -# Enable remote control via D-Bus. See the *D-BUS API* section below for more details. -# dbus = false - -# Try to detect WM windows (a non-override-redirect window with no -# child that has 'WM_STATE') and mark them as active. -# -# mark-wmwin-focused = false -mark-wmwin-focused = true; - -# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused. -# mark-ovredir-focused = false -mark-ovredir-focused = true; - -# Try to detect windows with rounded corners and don't consider them -# shaped windows. The accuracy is not very high, unfortunately. -# -# detect-rounded-corners = false -detect-rounded-corners = true; - -# Detect '_NET_WM_WINDOW_OPACITY' on client windows, useful for window managers -# not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows. -# -# detect-client-opacity = false -detect-client-opacity = true; - -# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window, -# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy, -# provided that the WM supports it. -# -# use-ewmh-active-win = false - -# Unredirect all windows if a full-screen opaque window is detected, -# to maximize performance for full-screen windows. Known to cause flickering -# when redirecting/unredirecting windows. -# -# unredir-if-possible = false - -# Delay before unredirecting the window, in milliseconds. Defaults to 0. -# unredir-if-possible-delay = 0 - -# Conditions of windows that shouldn't be considered full-screen for unredirecting screen. -# unredir-if-possible-exclude = [] - -# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows -# in the same group focused at the same time. -# -# detect-transient = false -detect-transient = true; - -# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same -# group focused at the same time. This usually means windows from the same application -# will be considered focused or unfocused at the same time. -# 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too. -# -# detect-client-leader = false - -# Resize damaged region by a specific number of pixels. -# A positive value enlarges it while a negative one shrinks it. -# If the value is positive, those additional pixels will not be actually painted -# to screen, only used in blur calculation, and such. (Due to technical limitations, -# with use-damage, those pixels will still be incorrectly painted to screen.) -# Primarily used to fix the line corruption issues of blur, -# in which case you should use the blur radius value here -# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`, -# with a 5x5 one you use `--resize-damage 2`, and so on). -# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly. -# -# resize-damage = 1 - -# Specify a list of conditions of windows that should be painted with inverted color. -# Resource-hogging, and is not well tested. -# -# invert-color-include = [] - -# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer. -# Might cause incorrect opacity when rendering transparent content (but never -# practically happened) and may not work with blur-background. -# My tests show a 15% performance boost. Recommended. -# -glx-no-stencil = true; - -# GLX backend: Avoid rebinding pixmap on window damage. -# Probably could improve performance on rapid window content changes, -# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.). -# Recommended if it works. -# -# glx-no-rebind-pixmap = false - -# Disable the use of damage information. -# This cause the whole screen to be redrawn every time, instead of the part of the screen -# has actually changed. Potentially degrades the performance, but might fix some artifacts. -# The opposing option is use-damage -# -# no-use-damage = false -use-damage = true; - -# Use X Sync fence to sync clients' draw calls, to make sure all draw -# calls are finished before picom starts drawing. Needed on nvidia-drivers -# with GLX backend for some users. -# -# xrender-sync-fence = false - -# GLX backend: Use specified GLSL fragment shader for rendering window -# contents. Read the man page for a detailed explanation of the interface. -# -# window-shader-fg = "default" - -# Use rules to set per-window shaders. Syntax is SHADER_PATH:PATTERN, similar -# to opacity-rule. SHADER_PATH can be "default". This overrides window-shader-fg. -# -# window-shader-fg-rule = [ -# "my_shader.frag:window_type != 'dock'" -# ] - -# Force all windows to be painted with blending. Useful if you -# have a glx-fshader-win that could turn opaque pixels transparent. -# -# force-win-blend = false - -# Do not use EWMH to detect fullscreen windows. -# Reverts to checking if a window is fullscreen based only on its size and coordinates. -# -# no-ewmh-fullscreen = false - -# Dimming bright windows so their brightness doesn't exceed this set value. -# Brightness of a window is estimated by averaging all pixels in the window, -# so this could comes with a performance hit. -# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0) -# -# max-brightness = 1.0 - -# Make transparent windows clip other windows like non-transparent windows do, -# instead of blending on top of them. -# -# transparent-clipping = false - -# Specify a list of conditions of windows that should never have transparent -# clipping applied. Useful for screenshot tools, where you need to be able to -# see through transparent parts of the window. -# -# transparent-clipping-exclude = [] - -# Set the log level. Possible values are: -# "trace", "debug", "info", "warn", "error" -# in increasing level of importance. Case doesn't matter. -# If using the "TRACE" log level, it's better to log into a file -# using *--log-file*, since it can generate a huge stream of logs. -# -# log-level = "debug" -log-level = "warn"; - -# Set the log file. -# If *--log-file* is never specified, logs will be written to stderr. -# Otherwise, logs will to written to the given file, though some of the early -# logs might still be written to the stderr. -# When setting this option from the config file, it is recommended to use an absolute path. -# -# log-file = "/path/to/your/log/file" - -# Show all X errors (for debugging) -# show-all-xerrors = false - -# Write process ID to a file. -# write-pid-path = "/path/to/your/log/file" - -# Window type settings -# -# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard: -# "unknown", "desktop", "dock", "toolbar", "menu", "utility", -# "splash", "dialog", "normal", "dropdown_menu", "popup_menu", -# "tooltip", "notification", "combo", and "dnd". -# -# Following per window-type options are available: :: -# -# fade, shadow::: -# Controls window-type-specific shadow and fade settings. -# -# opacity::: -# Controls default opacity of the window type. -# -# focus::: -# Controls whether the window of this type is to be always considered focused. -# (By default, all window types except "normal" and "dialog" has this on.) -# -# full-shadow::: -# Controls whether shadow is drawn under the parts of the window that you -# normally won't be able to see. Useful when the window has parts of it -# transparent, and you want shadows in those areas. -# -# clip-shadow-above::: -# Controls whether shadows that would have been drawn above the window should -# be clipped. Useful for dock windows that should have no shadow painted on top. -# -# redir-ignore::: -# Controls whether this type of windows should cause screen to become -# redirected again after been unredirected. If you have unredir-if-possible -# set, and doesn't want certain window to cause unnecessary screen redirection, -# you can set this to `true`. -# -wintypes: -{ - tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; }; - dock = { shadow = false; clip-shadow-above = true; } - dnd = { shadow = false; } - popup_menu = { opacity = 0.8; } - dropdown_menu = { opacity = 0.8; } -}; diff --git a/python/pythonrc b/python/pythonrc index cd954b6..c7cf7d5 100644 --- a/python/pythonrc +++ b/python/pythonrc @@ -1,24 +1,40 @@ -def is_vanilla() -> bool: +try: + import atexit + import os import sys - return not hasattr(__builtins__, '__IPYTHON__') and 'bpython' not in sys.argv[0] + from pathlib import Path + import readline +except ImportError as e: + print(f"Couldn't load module. {e}") + sys.exit(1) -def setup_history(): - import os - import atexit - import readline - from pathlib import Path +################ +# TAB COMPLETION # +################## + +try: + readline.parse_and_bind("tab: complete") +except ImportError: + pass + - if state_home := os.environ.get('XDG_STATE_HOME'): - state_home = Path(state_home) - else: - state_home = Path.home() / '.local' / 'state' +### XDG Compliant History File +# See https://gist.github.com/viliampucik/8713b09ff7e4d984b29bfcd7804dc1f4?permalink_comment_id=4582040#gistcomment-4582040 - history: Path = state_home / 'python_history' +# Destroy default history file writing hook (and also tab completion, which is why we manually added it above) +if hasattr(sys, '__interactivehook__'): + del sys.__interactivehook__ - readline.read_history_file(str(history)) - atexit.register(readline.write_history_file, str(history)) +histfile = Path(os.getenv("XDG_CACHE_HOME", Path.home() / ".cache")) / "python_history" +try: + histfile.touch(exist_ok=True) +except FileNotFoundError: # Probably the parent directory doesn't exist + histfile.parent.mkdir(parents=True, exist_ok=True) -if is_vanilla(): - setup_history() +readline.read_history_file(histfile) +# Don't store an obscene amount of history +readline.set_history_length(5000) +# Write to history file on exit +atexit.register(readline.write_history_file, histfile) diff --git a/qt5ct/qt5ct.conf b/qt5ct/qt5ct.conf deleted file mode 100644 index 964da53..0000000 --- a/qt5ct/qt5ct.conf +++ /dev/null @@ -1,32 +0,0 @@ -[Appearance] -color_scheme_path=/home/zachir/.config/qt5ct/style-colors.conf -custom_palette=true -icon_theme=Cosmic -standard_dialogs=gtk2 -style=gtk2 - -[Fonts] -fixed="DejaVu LGC Sans,12,-1,5,50,0,0,0,0,0" -general="DejaVu LGC Sans,12,-1,5,50,0,0,0,0,0" - -[Interface] -activate_item_on_single_click=1 -buttonbox_layout=0 -cursor_flash_time=1000 -dialog_buttons_have_icons=1 -double_click_interval=400 -gui_effects=@Invalid() -keyboard_scheme=2 -menus_have_icons=true -show_shortcuts_in_context_menus=true -stylesheets=@Invalid() -toolbutton_style=4 -underline_shortcut=1 -wheel_scroll_lines=3 - -[SettingsWindow] -geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0H\0\0\x2T\0\0\x3\xdb\0\0\x4/\0\0\0H\0\0\x2T\0\0\x3\xdb\0\0\x4/\0\0\0\0\0\0\0\0\a\x80\0\0\0H\0\0\x2T\0\0\x3\xdb\0\0\x4/) - -[Troubleshooting] -force_raster_widgets=1 -ignored_applications=@Invalid() diff --git a/qt6ct/qt6ct.conf b/qt6ct/qt6ct.conf deleted file mode 100644 index 5d9a12c..0000000 --- a/qt6ct/qt6ct.conf +++ /dev/null @@ -1,32 +0,0 @@ -[Appearance] -color_scheme_path=/usr/share/qt6ct/colors/airy.conf -custom_palette=false -icon_theme=Cosmic -standard_dialogs=gtk2 -style=qt6gtk2 - -[Fonts] -fixed="DejaVu LGC Sans,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1" -general="DejaVu LGC Sans,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1" - -[Interface] -activate_item_on_single_click=1 -buttonbox_layout=0 -cursor_flash_time=1200 -dialog_buttons_have_icons=1 -double_click_interval=400 -gui_effects=@Invalid() -keyboard_scheme=2 -menus_have_icons=true -show_shortcuts_in_context_menus=true -stylesheets=@Invalid() -toolbutton_style=4 -underline_shortcut=1 -wheel_scroll_lines=3 - -[SettingsWindow] -geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\xff\xff\xff\xfd\xff\xff\xff\xe2\0\0\a<\0\0\x3\xf9\0\0\0\0\0\0\0\0\0\0\a9\0\0\x3\xf6\0\0\0\0\x2\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\a9\0\0\x3\xf6) - -[Troubleshooting] -force_raster_widgets=1 -ignored_applications=@Invalid() diff --git a/runit/conf/logind.conf b/runit/conf/logind.conf deleted file mode 100644 index c31f33a..0000000 --- a/runit/conf/logind.conf +++ /dev/null @@ -1,54 +0,0 @@ -# This file is part of elogind. -# -# elogind is free software; you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published by -# the Free Software Foundation; either version 2.1 of the License, or -# (at your option) any later version. -# -# Entries in this file show the compile time defaults. -# You can change settings by editing this file. -# Defaults can be restored by simply deleting this file. -# -# See logind.conf(5) for details. - -[Login] -KillUserProcesses=yes -#KillOnlyUsers= -#KillExcludeUsers=root -#InhibitDelayMaxSec=5 -#HandlePowerKey=poweroff -#HandleSuspendKey=suspend -#HandleHibernateKey=hibernate -#HandleLidSwitch=suspend -#HandleLidSwitchExternalPower=suspend -#HandleLidSwitchDocked=ignore -#PowerKeyIgnoreInhibited=no -#SuspendKeyIgnoreInhibited=no -#HibernateKeyIgnoreInhibited=no -#LidSwitchIgnoreInhibited=yes -#HoldoffTimeoutSec=30s -#IdleAction=ignore -#IdleActionSec=30min -#RuntimeDirectorySize=10% -#RuntimeDirectoryInodes=400k -#RemoveIPC=yes -#InhibitorsMax=8192 -#SessionsMax=8192 - -[Sleep] -#AllowSuspend=yes -#AllowHibernation=yes -#AllowSuspendThenHibernate=yes -#AllowHybridSleep=yes -#AllowPowerOffInterrupts=no -#BroadcastPowerOffInterrupts=yes -#AllowSuspendInterrupts=no -#BroadcastSuspendInterrupts=yes -#HandleNvidiaSleep=no -#SuspendState=mem standby freeze -#SuspendMode= -#HibernateState=disk -#HibernateMode=platform shutdown -#HybridSleepState=disk -#HybridSleepMode=suspend platform shutdown -#HibernateDelaySec=10800 diff --git a/runit/sv/dunst/conf b/runit/sv/dunst/conf deleted file mode 100644 index 88353ef..0000000 --- a/runit/sv/dunst/conf +++ /dev/null @@ -1,9 +0,0 @@ -# -*- mode: sh; -*- - -# Additional command line arguments for pipewire(1). -OPTS='' - -# Setting this to 1 enables logging, any other value - disables. -LOGGING_ENABLE=1 -# The directory will be created for you, if logging is enabled. -LOG_DIR="$HOME/.local/var/log/dunst" diff --git a/runit/sv/dunst/log/run b/runit/sv/dunst/log/run deleted file mode 100755 index 09818ce..0000000 --- a/runit/sv/dunst/log/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -[ -r ../conf ] && . ../conf - -if [ "${LOGGING_ENABLE}x" = "1x" ]; then - # Create the log directory if not exists. - [ -d "${LOG_DIR:-}" ] || mkdir -p "${LOG_DIR:-}" - - exec svlogd -tt "${LOG_DIR:-}" -else - exec chpst -b mpd-log-null cat >/dev/null -fi diff --git a/runit/sv/dunst/run b/runit/sv/dunst/run deleted file mode 100755 index 1c0aa88..0000000 --- a/runit/sv/dunst/run +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -[ -r ./conf ] && . ./conf - -exec dunst ${OPTS:-} 2>&1 diff --git a/runit/sv/mako/conf b/runit/sv/mako/conf deleted file mode 100644 index 6bb79d1..0000000 --- a/runit/sv/mako/conf +++ /dev/null @@ -1,9 +0,0 @@ -# -*- mode: sh; -*- - -# Additional command line arguments for pipewire(1). -OPTS='' - -# Setting this to 1 enables logging, any other value - disables. -LOGGING_ENABLE=1 -# The directory will be created for you, if logging is enabled. -LOG_DIR="$HOME/.local/var/log/mako" diff --git a/runit/sv/mako/down b/runit/sv/mako/down deleted file mode 100644 index e69de29..0000000 --- a/runit/sv/mako/down +++ /dev/null diff --git a/runit/sv/mako/log/run b/runit/sv/mako/log/run deleted file mode 100755 index 09818ce..0000000 --- a/runit/sv/mako/log/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -[ -r ../conf ] && . ../conf - -if [ "${LOGGING_ENABLE}x" = "1x" ]; then - # Create the log directory if not exists. - [ -d "${LOG_DIR:-}" ] || mkdir -p "${LOG_DIR:-}" - - exec svlogd -tt "${LOG_DIR:-}" -else - exec chpst -b mpd-log-null cat >/dev/null -fi diff --git a/runit/sv/mako/run b/runit/sv/mako/run deleted file mode 100755 index 266f521..0000000 --- a/runit/sv/mako/run +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -[ -r ./conf ] && . ./conf - -exec mako ${OPTS:-} 2>&1 diff --git a/runit/sv/mpd-mpris/conf b/runit/sv/mpd-mpris/conf deleted file mode 100644 index 7b43455..0000000 --- a/runit/sv/mpd-mpris/conf +++ /dev/null @@ -1,9 +0,0 @@ -# -*- mode: sh; -*- - -# Additional command line arguments for pipewire(1). -OPTS='-network unix' - -# Setting this to 1 enables logging, any other value - disables. -LOGGING_ENABLE=0 -# The directory will be created for you, if logging is enabled. -LOG_DIR="$HOME/.local/var/log/mpd-mpris" diff --git a/runit/sv/mpd-mpris/log/run b/runit/sv/mpd-mpris/log/run deleted file mode 100755 index 09818ce..0000000 --- a/runit/sv/mpd-mpris/log/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -[ -r ../conf ] && . ../conf - -if [ "${LOGGING_ENABLE}x" = "1x" ]; then - # Create the log directory if not exists. - [ -d "${LOG_DIR:-}" ] || mkdir -p "${LOG_DIR:-}" - - exec svlogd -tt "${LOG_DIR:-}" -else - exec chpst -b mpd-log-null cat >/dev/null -fi diff --git a/runit/sv/mpd-mpris/run b/runit/sv/mpd-mpris/run deleted file mode 100755 index 3883e70..0000000 --- a/runit/sv/mpd-mpris/run +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -# Wait for the PipeWire Pulse daemon to start. -sv check "$HOME/.config/runit/sv/mpd" >/dev/null || exit 1 - -[ -r ./conf ] && . ./conf - -exec mpd-mpris ${OPTS:--network unix} 2>&1 diff --git a/runit/sv/mpd-notification/conf b/runit/sv/mpd-notification/conf deleted file mode 100644 index e0b9aa3..0000000 --- a/runit/sv/mpd-notification/conf +++ /dev/null @@ -1,9 +0,0 @@ -# -*- mode: sh; -*- - -# Additional command line arguments for pipewire(1). -OPTS='' - -# Setting this to 1 enables logging, any other value - disables. -LOGGING_ENABLE=0 -# The directory will be created for you, if logging is enabled. -LOG_DIR="$HOME/.local/var/log/mpd-notification" diff --git a/runit/sv/mpd-notification/log/run b/runit/sv/mpd-notification/log/run deleted file mode 100755 index 09818ce..0000000 --- a/runit/sv/mpd-notification/log/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -[ -r ../conf ] && . ../conf - -if [ "${LOGGING_ENABLE}x" = "1x" ]; then - # Create the log directory if not exists. - [ -d "${LOG_DIR:-}" ] || mkdir -p "${LOG_DIR:-}" - - exec svlogd -tt "${LOG_DIR:-}" -else - exec chpst -b mpd-log-null cat >/dev/null -fi diff --git a/runit/sv/mpd-notification/run b/runit/sv/mpd-notification/run deleted file mode 100755 index a643d56..0000000 --- a/runit/sv/mpd-notification/run +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -# Wait for the PipeWire Pulse daemon to start. -sv check "$HOME/.config/runit/sv/mpd" >/dev/null || exit 1 -sv check "$HOME/.config/runit/sv/mako" >/dev/null || exit 1 - -[ -r ./conf ] && . ./conf - -exec mpd-notification ${OPTS:-} 2>&1 diff --git a/runit/sv/mpd/conf b/runit/sv/mpd/conf deleted file mode 100644 index ca3a82f..0000000 --- a/runit/sv/mpd/conf +++ /dev/null @@ -1,9 +0,0 @@ -# -*- mode: sh; -*- - -# Additional command line arguments for pipewire(1). -OPTS='' - -# Setting this to 1 enables logging, any other value - disables. -LOGGING_ENABLE=0 -# The directory will be created for you, if logging is enabled. -LOG_DIR="$HOME/.local/var/log/mpd" diff --git a/runit/sv/mpd/log/run b/runit/sv/mpd/log/run deleted file mode 100755 index 09818ce..0000000 --- a/runit/sv/mpd/log/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -[ -r ../conf ] && . ../conf - -if [ "${LOGGING_ENABLE}x" = "1x" ]; then - # Create the log directory if not exists. - [ -d "${LOG_DIR:-}" ] || mkdir -p "${LOG_DIR:-}" - - exec svlogd -tt "${LOG_DIR:-}" -else - exec chpst -b mpd-log-null cat >/dev/null -fi diff --git a/runit/sv/mpd/run b/runit/sv/mpd/run deleted file mode 100755 index b57d5ac..0000000 --- a/runit/sv/mpd/run +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -# Wait for the PipeWire Pulse daemon to start. -sv check "$HOME/.config/runit/sv/pipewire-pulse" >/dev/null || exit 1 - -[ -r ./conf ] && . ./conf - -exec mpd --no-daemon --stderr ${OPTS:-} 2>&1 diff --git a/runit/sv/pipewire-pulse/conf b/runit/sv/pipewire-pulse/conf deleted file mode 100644 index 606eac5..0000000 --- a/runit/sv/pipewire-pulse/conf +++ /dev/null @@ -1,12 +0,0 @@ -# -*- mode: sh; -*- - -# Additional command line arguments for pipewire-pulse. -OPTS='' - -# Setting this to 1 enables logging, any other value - disables. -LOGGING_ENABLE=0 -# Set the pipewire log level. -# See: https://docs.pipewire.org/page_daemon.html#sec_logging -LOG_LEVEL=1 -# The directory will be created for you, if logging is enabled. -LOG_DIR="$HOME/.local/var/log/pipewire-pulse" diff --git a/runit/sv/pipewire-pulse/log/run b/runit/sv/pipewire-pulse/log/run deleted file mode 100755 index ba8236e..0000000 --- a/runit/sv/pipewire-pulse/log/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -[ -r ../conf ] && . ../conf - -if [ "${LOGGING_ENABLE}x" = "1x" ]; then - # Create the log directory if not exists. - [ -d "${LOG_DIR}" ] || mkdir -p "${LOG_DIR}" - - exec svlogd -tt "${LOG_DIR}" -else - exec chpst -b pipewire-pulse-log-null cat >/dev/null -fi diff --git a/runit/sv/pipewire-pulse/run b/runit/sv/pipewire-pulse/run deleted file mode 100755 index 0e43d6f..0000000 --- a/runit/sv/pipewire-pulse/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -# Wait for the PipeWire Media Session daemon to start. -sv check "$HOME/.config/runit/sv/wireplumber" >/dev/null || exit 1 - -[ -r ./conf ] && . ./conf - -if [ "${LOGGING_ENABLE}x" = "1x" -a -n "${LOG_LEVEL}" ]; then - export PIPEWIRE_DEBUG="${LOG_LEVEL}" -fi - -exec pipewire-pulse ${OPTS:-} 2>&1 diff --git a/runit/sv/wireplumber/conf b/runit/sv/wireplumber/conf deleted file mode 100644 index d712f03..0000000 --- a/runit/sv/wireplumber/conf +++ /dev/null @@ -1,12 +0,0 @@ -# -*- mode: sh; -*- - -# Additional command line arguments for wireplumber. -OPTS='' - -# Setting this to 1 enables logging, any other value - disables. -LOGGING_ENABLE=0 -# Set the wireplumber log level. -# See: https://pipewire.pages.freedesktop.org/wireplumber/daemon-logging.html -LOG_LEVEL=2 -# The directory will be created for you, if logging is enabled. -LOG_DIR="$HOME/.local/var/log/wireplumber" diff --git a/runit/sv/wireplumber/log/run b/runit/sv/wireplumber/log/run deleted file mode 100755 index aa89d14..0000000 --- a/runit/sv/wireplumber/log/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -[ -r ../conf ] && . ../conf - -if [ "${LOGGING_ENABLE}x" == "1x" ]; then - # Create the log directory if not exists. - [ -d "${LOG_DIR}" ] || mkdir -p "${LOG_DIR}" - - exec svlogd -tt "${LOG_DIR}" -else - exec chpst -b wireplumber-log-null cat >/dev/null -fi diff --git a/runit/sv/wireplumber/run b/runit/sv/wireplumber/run deleted file mode 100755 index 5fb9edc..0000000 --- a/runit/sv/wireplumber/run +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -# Wait for the PipeWire daemon to start. -sv check "$HOME/.config/runit/sv/pipewire" >/dev/null || exit 1 - -[ -r ./conf ] && . ./conf - -if [ "${LOGGING_ENABLE}x" = "1x" -a -n "${LOG_LEVEL}" ]; then - export WIREPLUMBER_DEBUG="${LOG_LEVEL}" -fi - -exec wireplumber ${OPTS:-} 2>&1 @@ -18,12 +18,18 @@ case `uname -s` in alias ls="ls -h" ;; "Linux") - alias ls="ls -h $COLOR_FLAGS_GNU" + #alias ls="ls -h $COLOR_FLAGS_GNU" + type eza >/dev/null && alias ls="eza" + ;; + "Darwin") + type eza >/dev/null && alias ls="eza --color" ;; esac alias ll='ls -l' -alias la='ls -A' -alias lla='ls -lA' +alias lt='ls -l --total-size' +alias lts='ls -l --total-size --sort size --reverse' +alias la='ls -a' +alias lla='ls -la' alias lb='lsblk' alias md='mkdir -p' alias ch='cd $HOME' @@ -33,7 +39,14 @@ alias nv='nvim' alias v='nvim' ## Change utils -alias rm='rm -i' +case `uname -s` in + "OpenBSD" | "Darwin") + alias rm='rm -i' + ;; + "Linux") + type trash-put >/dev/null && alias rm='trash-put' + ;; +esac alias cp='cp -i' alias srsync='rsync -KPUcrtvyz' @@ -79,7 +92,7 @@ alias s='sudo systemctl' #alias ursm='env SVDIR="$HOME/.local/sv/" rsm' # XDG dirs fix -alias svn="svn --config-dir \"$XDG_CONFIG_HOME\"/subversion" +alias svn="svn --config-dir $XDG_CONFIG_HOME/subversion" alias adb="HOME="$XDG_DATA_HOME"/android adb" alias wget="wget --hsts-file=\"$XDG_DATA_HOME/wget-hsts\"" alias yarn="yarn --use-yarnrc $XDG_CONFIG_HOME/yarn/config" 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" ;; @@ -2,13 +2,14 @@ export XDG_DATA_HOME=${XDG_DATA_HOME:="$HOME/.local/share"} export XDG_CACHE_HOME=${XDG_CACHE_HOME:="$HOME/.cache"} export XDG_CONFIG_HOME=${XDG_CONFIG_HOME:="$HOME/.config"} -. "$HOME/.config/user-dirs.dirs" +[ -f "$XDG_CONFIG_HOME/user-dirs.dirs" ] && . "$HOME/.config/user-dirs.dirs" 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 +export XDG_VIDEOS_DIR=${HOME}/Movies export XDG_DATA_DIRS="${XDG_DATA_DIRS}:$HOME/.nix-profile/share" @@ -22,6 +23,10 @@ export ADB_VENDOR_KEY="$XDG_CONFIG_HOME"/android export LESSHISTFILE=- # Fixing Paths +export RENPY_PATH_TO_SAVES="$XDG_DATA_HOME" +export PARALLEL_HOME="$XDG_CONFIG_HOME"/parallel +export ZPLUG_HOME="$XDG_DATA_HOME/zplug" +export DOTNET_CLI_HOME="$XDG_DATA_HOME"/dotnet export MBSYNCRC="$XDG_CONFIG_HOME"/isync/mbsyncrc export ATOM_HOME="$XDG_DATA_HOME"/atom export XINITRC="$XDG_CONFIG_HOME"/X11/xinitrc @@ -36,7 +41,7 @@ export NUGET_PACKAGES="$XDG_CACHE_HOME"/NuGetPackages export RXVT_SOCKET="$XDG_RUNTIME_DIR"/urxvtd export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java export GTK2_RC_FILES="$XDG_CONFIG_HOME"/gtk-2.0/gtkrc -#export ZDOTDIR=$HOME/.config/zsh +export ZDOTDIR=$HOME/.config/zsh export CARGO_HOME="$XDG_DATA_HOME"/cargo export RUSTUP_HOME="$XDG_DATA_HOME"/rustup export WEECHAT_HOME="$XDG_CONFIG_HOME"/weechat @@ -45,20 +50,20 @@ 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 export XAUTHORITY="$XDG_RUNTIME_DIR"/X11/Xauthority -export VIMINIT="set nocp | source ${XDG_CONFIG_HOME:-$HOME.config}/vim/vimrc" +#export VIMINIT="set nocp | source ${XDG_CONFIG_HOME:-$HOME.config}/vim/vimrc" export ANDROID_USER_HOME="$XDG_DATA_HOME"/android export XCURSOR_PATH="/usr/share/icons:$XDG_DATA_HOME/icons" export PYTHONSTARTUP="$XDG_CONFIG_HOME"/python/pythonrc # Scaling -export QT_AUTO_SCREEN_SCALE_FACTOR=0 -export QT_SCALE_FACTOR=1 -export QT_SCREEN_SCALE_FACTORS="1;1;1" +#export QT_AUTO_SCREEN_SCALE_FACTOR=0 +#export QT_SCALE_FACTOR=1 +#export QT_SCREEN_SCALE_FACTORS="1;1;1" export GDK_SCALE=1 export GDK_DPI_SCALE=1 @@ -73,7 +78,7 @@ export XKB_DEFAULT_OPTIONS=caps:escape export EDITOR="nvim" export READER="zathura" export VISUAL="nvim" -export TERMINAL="alacritty" +export TERMINAL="st" export BROWSER="browser" export VIDEO="mpv" export IMAGE="sxiv" @@ -118,6 +123,7 @@ addtopath "$HOME/.local/bin/volsv" addtopath "$HOME/.local/bin" addtopath "$HOME/.local/bin/flatpak-sc" addtopath "$HOME/.local/share/flatpak/exports/bin/" +addtopath "/opt/homebrew/bin" addtopath "$CARGO_HOME/bin" addtopath "$GOPATH/bin" addtopath "$ZVMPATH" diff --git a/swayidle/config b/swayidle/config deleted file mode 100644 index 52f7c7e..0000000 --- a/swayidle/config +++ /dev/null @@ -1,4 +0,0 @@ -timeout 300 swaylockd -timeout 600 'loginctl suspend' -before-sleep swaylockd -lock swaylockd diff --git a/swaylock/config b/swaylock/config deleted file mode 100644 index 55ca360..0000000 --- a/swaylock/config +++ /dev/null @@ -1,2 +0,0 @@ -ignore-empty-password -color=000000 diff --git a/sxhkd/sxhkdrc b/sxhkd/sxhkdrc deleted file mode 100755 index 26e633b..0000000 --- a/sxhkd/sxhkdrc +++ /dev/null @@ -1,140 +0,0 @@ -# -# wm independent hotkeys -# - -# reload sxhkd config -super + Escape - pkill -USR1 -x sxhkd - -# -# dmenu interfaces -# - -# program launcher -super + d - dmenu_run -i -l 15 -h 36 -fn 'mononoki Nerd Font Mono' -nb '#000' -nf '#c5c8c6' -sb '#198844' -sf '#000' - -# desktop application launcher -super + r - j4-dmenu-desktop --dmenu="dmenu -i -l 15 -h 36 -fn 'mononoki Nerd Font Mono' -nb '#000' -nf '#c5c8c6' -sb '#198844' -sf '#000'" - -# dmenu prompt for recording -super + control + r - dmenurecord - -# run dmenu interface for pass -super + alt + p - passmenu - -# run dmenu interface for ytfzf -super + y - ytfzf-launcher -D 'dmenu -l 15' - -# run dmenu interface to spawn browsers -super + alt + 1 - bm - -# run dmenu interface for qutebrowser profile chooser -super + alt + q - qbc - #qbpm choose - -# run dmenu interface for librewolf profile chooser -super + alt + w - lwc - -# run dmenu interface for mpris -super + alt + u - mprisctl - -# run dmenu interface for mount -super + alt + comma - dmount -p - -# run dmenu interface for umount -super + alt + period - dmenuumount - -#run dmenu prompt for unicode chars -super + alt + u - dmenuunicode - -# -# utilities -# - -# get xprop -super + grave - notifyprop - -# warp cursor to left or right monitor -super + {Left,Right} - mwarp.py {left,right} - -# lock the screen -super + q - loginctl lock-session self - -# spawn file manager -super + alt + f - kitty lfrun - -# toggle touchpad -super + alt + t - toggletouchpad - -# notify-send firewall rules -super + alt + f - notify-iptables - -# mute volume -super + alt + m - volsv -t - -# mute microphone -super + alt + shift + m - volsv -m - -# load nsxiv for backgrounds -super + alt + x - nsxiv ~/.local/src/wallpapers - -# xkill -super + x - xkill - -# pause mpd -alt + p - playerctl play-pause - -# -# xf86 keys -# - -# manipulate audio stream -XF86Audio{Prev,Next,Play,Stop} - playerctl {previous,next,play-pause,stop} - -# turn the brightness up -XF86MonBrightnessUp - bl -i 1 - -# turn the brightness down -XF86MonBrightnessDown - bl -d 1 - -# raise the volume -XF86AudioRaiseVolume - volsv -i - -# lower the volume -XF86AudioLowerVolume - volsv -d - -# toggle mute -XF86AudioMute - volsv -t - -# mute mic -XF86AudioMicMute - volsv -m diff --git a/tofi/colors b/tofi/colors deleted file mode 100644 index a5f480c..0000000 --- a/tofi/colors +++ /dev/null @@ -1,17 +0,0 @@ -background-color = #000000 -outline-color = #39c1ed -border-color = #39c1ed -text-color = #ffffff -prompt-color = #39c1ed -prompt-background = #000000 -placeholder-color = #39c1ed -placeholder-background = #000000 -input-color = #ffffff -input-background = #000000 -default-result-background = #000000 -alternate-result-color = #ffffff -alternate-result-background = #000000 -selection-color = #000000 -selection-match-color = #198844 -selection-background = #39c1ed - diff --git a/tofi/config b/tofi/config deleted file mode 120000 index 54cdd97..0000000 --- a/tofi/config +++ /dev/null @@ -1 +0,0 @@ -/home/zachir/.config/tofi/themes/dmenu
\ No newline at end of file diff --git a/tofi/cosmic b/tofi/cosmic deleted file mode 100644 index 9a5b4be..0000000 --- a/tofi/cosmic +++ /dev/null @@ -1,22 +0,0 @@ -include = "themes/colors" - -hidden-character = "*" -anchor = top -width = 100% -height = 32 -horizontal = true -font-size = 18 -prompt-text = "" -font = Fira Code Nerd Font Mono -outline-width = 0 -border-width = 0 -min-input-width = 424 -result-spacing = 15 -padding-top = 0 -padding-bottom = 0 -padding-left = 0 -padding-right = 0 -history = false -selection-background-padding = 12 -result-spacing = 24 -require-match=false diff --git a/tofi/themes/colors b/tofi/themes/colors deleted file mode 100644 index 047c875..0000000 --- a/tofi/themes/colors +++ /dev/null @@ -1,17 +0,0 @@ -background-color = #000000 -outline-color = #198844 -border-color = #198844 -text-color = #ffffff -prompt-color = #198844 -prompt-background = #000000 -placeholder-color = #198844 -placeholder-background = #000000 -input-color = #ffffff -input-background = #000000 -default-result-background = #000000 -alternate-result-color = #ffffff -alternate-result-background = #000000 -selection-color = #000000 -selection-match-color = #39c1ed -selection-background = #198844 - diff --git a/tofi/themes/dmenu b/tofi/themes/dmenu deleted file mode 100644 index 75fd7f2..0000000 --- a/tofi/themes/dmenu +++ /dev/null @@ -1,22 +0,0 @@ -include = "themes/colors" - -hidden-character = "*" -anchor = top -width = 100% -height = 24 -horizontal = true -font-size = 18 -prompt-text = "" -font = mononoki Nerd Font Mono -outline-width = 0 -border-width = 0 -min-input-width = 424 -result-spacing = 15 -padding-top = 0 -padding-bottom = 0 -padding-left = 0 -padding-right = 0 -history = false -selection-background-padding = 12 -result-spacing = 24 -require-match=false diff --git a/tofi/themes/dmenu_vertical b/tofi/themes/dmenu_vertical deleted file mode 100644 index 24df784..0000000 --- a/tofi/themes/dmenu_vertical +++ /dev/null @@ -1,28 +0,0 @@ -include = "colors" - -hidden-character = "*" -anchor = top -width = 100% -height = 600 -horizontal = false -font-size = 18 -prompt-text = "" -prompt-padding = 18 -font = mononoki Nerd Font Mono -outline-width = 0 -border-width = 0 -min-input-width = 424 -result-spacing = 12 -selection-background-padding = 0, 12 -padding-top = 0 -padding-bottom = 0 -padding-left = 12 -padding-right = 12 -margin-top = 0 -margin-bottom = 0 -margin-left = 12 -margin-right = 12 -clip-to-padding=true -history = false -require-match = false -num-results = 15 diff --git a/user-dirs.dirs b/user-dirs.dirs deleted file mode 100644 index 02d53bb..0000000 --- a/user-dirs.dirs +++ /dev/null @@ -1,15 +0,0 @@ -# This file is written by xdg-user-dirs-update -# If you want to change or add directories, just edit the line you're -# interested in. All local changes will be retained on the next run. -# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped -# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an -# absolute path. No other format is supported. -# -XDG_DESKTOP_DIR="$HOME/Desktop" -XDG_DOWNLOAD_DIR="$HOME/Downloads" -XDG_TEMPLATES_DIR="$HOME/Templates" -XDG_PUBLICSHARE_DIR="$HOME/Shared" -XDG_DOCUMENTS_DIR="$HOME/Documents" -XDG_MUSIC_DIR="$HOME/Music" -XDG_PICTURES_DIR="$HOME/Pictures" -XDG_VIDEOS_DIR="$HOME/Videos" diff --git a/user-dirs.locale b/user-dirs.locale deleted file mode 100644 index 3e0b419..0000000 --- a/user-dirs.locale +++ /dev/null @@ -1 +0,0 @@ -en_US
\ No newline at end of file @@ -13,10 +13,8 @@ set directory=$XDG_STATE_HOME/vim/swap | call mkdir(&directory, 'p') set undodir=$XDG_STATE_HOME/vim/undo | call mkdir(&undodir, 'p') set viewdir=$XDG_STATE_HOME/vim/view | call mkdir(&viewdir, 'p') -if !has('nvim') | set viminfofile=$XDG_STATE_HOME/vim/viminfo | endif - " vimplugs {{{ -call plug#begin('~/.config/nvim/plugged') +call plug#begin('~/.config/vim/plugged') " colorschemes {{{ Plug 'tomasiser/vim-code-dark' " codedark color scheme Plug 'flazz/vim-colorschemes' " meta-color scheme package @@ -52,9 +50,9 @@ Plug 'ryanoasis/vim-devicons' " dev icons for nerdtree call plug#end() " }}} -" nvim options {{{ +" vim options {{{ -"" nvimrc: +"" vimrc: "" General set showmatch " Highlight matching brace @@ -80,9 +78,6 @@ set undolevels=1000 " Number of undo levels set backspace=indent,eol,start " Backspace behaviour filetype plugin indent on -"" GUI Config -set guifont=mononoki\ Nerd\ Font\ Mono:h12 - "hi Normal guibg=NONE ctermbg=NONE "hi NonText guibg=NONE ctermbg=NONE "set background=dark @@ -260,7 +255,7 @@ nnoremap <leader>wk :resize +1<CR> nnoremap <leader>wl :vertical resize +1<CR> " config -nnoremap <leader>en :e ~/.config/nvim/init.vim<CR> +nnoremap <leader>en :e ~/.config/vim/vimrc<CR> nnoremap <leader>ec :source %<CR> " write as root @@ -303,4 +298,4 @@ nnoremap <leader>pc :PlugClean<CR> nnoremap <leader>gp :G pull<CR> nnoremap <leader>gd :G diff %<CR> -" }}} +" }} diff --git a/waybar/config b/waybar/config deleted file mode 100644 index 7a54e0c..0000000 --- a/waybar/config +++ /dev/null @@ -1,171 +0,0 @@ -{ - "layer": "top", - "position": "top", - "height": 36, - //"output": "%%DISPLAY%%", - "spacing": 4, - //"margin-top": 5, - //"margin-bottom":5, - - // Choose the order of the modules - - "modules-left":[ "hyprland/workspaces", "custom/launcher", "hyprland/window"], - "modules-center":[], - "modules-right":[ "mpd", "idle_inhibitor", "pulseaudio", "cpu", "memory", "temperature#cpu", "temperature#gpu", "backlight", "network", "clock", "tray", "custom/power"], - - // Modules configuration - - "hyprland/workspaces": { - "format": "{icon}", - "active-only": false, - "all-outputs": false, - "format-icons": { - "1": "1", - "2": "2", - "3": "3", - "4": "4", - "5": "5", - "6": "6", - "7": "7", - "8": "8", - "9": "9", - "10": "1", - "11": "2", - "12": "3", - "13": "4", - "14": "5", - "15": "6", - "16": "7", - "17": "8", - "18": "9", - }, - "persistent-workspaces": { - "eDP-1": [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ], - }, - "on-scroll-up": "hyprctl dispatch split-workspace e+1", - "on-scroll-down": "hyprctl dispatch split-workspace e-1", - "on-click": "activate" - }, - "hyprland/window": { - "separate-outputs": true, - "format": "{}" - }, - "keyboard-state": { - "numlock": true, - "capslock": true, - "format": " {name} {icon}", - "format-icons": { - "locked": "", - "unlocked": "" - } - }, - "mpd": { - "format": "{artist} - {title}", - "format-stopped": "", - "format-paused": "{artist} - {title}", - "format-disconnected": "", - "artist-len": 15, - "title-len": 15, - //"album-len": 15, - //"max-length": 200, - "on-click": "mpc toggle" - }, - "idle_inhibitor": { - "format": "{icon}", - "format-icons": { - "activated": "", - "deactivated": "" - } - }, - "tray": { - "icon-size": 20, - "spacing": 10 - }, - "clock": { - // "timezone": "America/New_York", - "tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>", - "format-alt": "{:%Y-%m-%d}" - }, - "cpu": { - "format": "{usage}% ", - "tooltip": false - }, - "memory": { - "format": "{}% " - }, - "battery": { - "bat": "BAT0", - "interval": 60, - "state": { - "warning": 30, - "critical": 15 - }, - "format": "{capacity}%", - "max-length": 25 - }, - "temperature#cpu": { - "thermal-zone": 0, - // "hwmon-path": "cat /sys/class/hwmon/hwmon5/temp1_input", - "critical-threshold": 110, - "format-critical": "{temperatureC}°C", - "format": "", - "format-icons": ["", "", ""] - }, - "temperature#gpu": { - "thermal-zone": 1, - // "hwmon-path": "/sys/class/hwmon/hwmon4/temp1_input", - "critical-threshold": 126, - "format-critical": "{temperatureC}°C", - "format": "", - "format-icons": ["", "", ""] - }, - "backlight": { - // "device": "acpi_video1", - "format": "{percent}%" - //"format-icons": ["", ""] - }, - "network": { - // "interface": "wlp2*", // (Optional) To force the use of this interface - "format-wifi": "{essid} ({signalStrength}%) ", - "format-ethernet": "Connected ", - "tooltip-format": "{ifname} via {gwaddr} ", - "format-linked": "{ifname} (No IP) ", - "format-disconnected": "Disconnected ⚠", - "format-alt": "{ifname}: {ipaddr}/{cidr}", - "max-length": 22, - "on-click-right": "bash ~/.config/rofi/wifi_menu/rofi_wifi_menu" - }, - "pulseaudio": { - // "scroll-step": 1, // %, can be a float - "format": "{volume}% {icon}", - "format-bluetooth": "{volume}% {icon}", - "format-bluetooth-muted": "{icon} {format_source}", - "format-muted": "{format_source}", - "format-source": "", - "format-source-muted": "", - "format-icons": { - "headphone": "", - "hands-free": "", - "headset": "", - "phone": "", - "portable": "", - "car": "", - "default": ["", "", ""] - }, - "on-click": "pavucontrol" - }, - "custom/launcher":{ - "format": "", - "on-click": "exec $(tofi-drun)", - "on-click-right": "killall tofi" - }, - "custom/power":{ - "format": " ", - "on-click": "nwg-bar", - "on-click-right": "killall nwg-bar" - }, - "custom/snip":{ - "format": " ", - "on-click": "grimshot --notify save area $HOME/Pictures/$(zenity --entry --text 'Set filename:' --entry-text '.png')" - } -} diff --git a/waybar/style.css b/waybar/style.css deleted file mode 100644 index 88b8900..0000000 --- a/waybar/style.css +++ /dev/null @@ -1,328 +0,0 @@ -* { - border: 0px; - margin: 0px; - border-radius: 0px; - /* `otf-font-awesome` is required to be installed for icons */ - font-family: mononoki Nerd Font Mono; - font-size: 18px; - min-height: 0px; - min-width: 0px; -} - -window#waybar { - background-color: transparent; - color: #ffffff; - transition-property: background-color; - transition-duration: .5s; -} - -window#waybar.hidden { - opacity: 0.2; -} - - -/* -#workspaces button { - background: #1f1f1f; - color: #ffffff; - border-radius: 20px; -} -*/ - -/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ - -#workspaces button { - background: #333333; - color: white; - border-bottom: 3px solid #1b1d1c; -} - -#workspaces button.empty { - background: black; - color: white; - border-bottom: 3px solid #1b1d1c; -} - -/* -#workspaces button:hover { - background: #39c1ed; - color: black; - border-bottom: 3px solid #ffffff; - -} -*/ - -#workspaces button.active { - background: #198844; -} - -/* -#workspaces button.active:hover { - background: #39c1ed; - color: black; - border-bottom: 3px solid #ffffff; -} -*/ - -#workspaces button.urgent { - background-color: #eb4d4b; -} - -#mode { - background-color: #64727D; - border-bottom: 3px solid #ffffff; -} - -#clock, -#battery, -#cpu, -#memory, -#disk, -#temperature, -#backlight, -#network, -#pulseaudio, -#custom-media, -#custom-launcher, -#custom-power, -#custom-layout, -#custom-updater, -#custom-snip, -#custom-wallpaper, -#tags, -#taskbar, -#tray, -#mode, -#idle_inhibitor, -#mpd { - padding: 0px 9px; - margin: 0px; - color: #ffffff; -} - -#window, -#workspaces { - margin: 0px 4px; -} - -/* If workspaces is the leftmost module, omit left margin */ -.modules-left > widget:first-child > #workspaces { - margin-left: 0px; -} - -/* If workspaces is the rightmost module, omit right margin */ -.modules-right > widget:last-child > #workspaces { - margin-right: 0px; -} - -#clock { - background-color: #1b1d1c; - color: #ffffff; -} - -#battery { - background-color: #1b1d1c; - color: #ffffff; -} - -#battery.charging, #battery.plugged { - color: #26A65B; - background-color: #1b1d1c; -} - -@keyframes blink { - to { - background-color: #ffffff; - color: #000000; - } -} - -#battery.critical:not(.charging) { - background-color: #f53c3c; - color: #ffffff; - animation-name: blink; - animation-duration: 0.5s; - animation-timing-function: linear; - animation-iteration-count: infinite; - animation-direction: alternate; -} - -label:focus { - background-color: #000000; -} - -#cpu { - background-color: #1b1d1c; - color: #ffffff; -} - -#memory { - background-color: #198844; - color: #ffffff; -} - -#disk { - background-color: #1b1d1c; - color: #ffffff; -} - -#backlight { - background-color: #198844; - color: #ffffff; -} - -#network { - background-color: #198844; - color: #ffffff; -} - -#network.disconnected { - background-color: #1b1d1c; - color: #ffffff; -} - -#pulseaudio { - background-color: #198844; - color: #ffffff; -} - -#pulseaudio.muted { - background-color: #1b1d1c; - color: #198844; -} - -#custom-media { - background-color: #1b1d1c; - color: white; -} - -#custom-media.custom-spotify { - background-color: #1b1d1c; - color: white; - -} - -#custom-media.custom-vlc { - background-color: #1b1d1c; - color: white; -} - -#custom-power{ - background-color: #1b1d1c; - font-size: 18px; - margin-right: 5px; - -} - -#custom-launcher{ - background-color: #1b1d1c; - font-size: 20px; - margin-left: 5px; - -} - -#custom-layout{ - background-color: #1b1d1c; - color: white; - font-size:20px; -} - -#custom-updater { - background-color: #1b1d1c; - color: white; -} - -#custom-snip { - background-color: #1b1d1c; - color: skyblue; - font-size: 20px; -} - -#custom-wallpaper { - background-color: #1b1d1c; - color: pink; - font-size: 20px; -} - -#tags{ - background-color: #1b1d1c; - font-size: 20px; -} - -#tags button.occupied { - color: skyblue; - background-color: #272727; -} -#tags button.focused { - color: black; - background-color: white; -} -#tags button.urgent{ - color: red; - background-color:white; -} - - -#taskbar{ - background-color: #1b1d1c; - border-radius: 0px 20px 20px 0px; -} - -#temperature { - background-color: #1b1d1c; - color: #ffffff; -} - -#temperature.critical { - background-color: #eb4d4b; -} - -#tray { - background-color: #198844; - color: #ffffff; -} - -#tray > .passive { - -gtk-icon-effect: dim; - background-color: #198844; - color: #ffffff; -} - -#tray > .needs-attention { - -gtk-icon-effect: highlight; - background-color: #198844; - color: #ffffff; -} - -#idle_inhibitor { - background-color: #1b1d1c; - border-radius: 20px 0px 0px 20px; - -} - -#idle_inhibitor.activated { - background-color: #198844; - color: #ffffff; - border-radius: 20px 0px 0px 20px; - -} - -#language { - background-color: #1b1d1c; - color: #ffffff; - min-width: 16px; -} - -#keyboard-state { - background: #97e1ad; - color: #000000; - min-width: 16px; -} - -#keyboard-state > label { - padding: 0px 5px; -} - -#keyboard-state > label.locked { - background: rgba(0, 0, 0, 0.2); -} diff --git a/wireplumber/main.lua.d/51-custom.lua b/wireplumber/main.lua.d/51-custom.lua deleted file mode 100644 index 2340e94..0000000 --- a/wireplumber/main.lua.d/51-custom.lua +++ /dev/null @@ -1,22 +0,0 @@ -table.insert(alsa_monitor.rules, - { - -- Rules for matching a device or node. It is an array of - -- properties that all need to match the regexp. If any of the - -- matches work, the actions are executed for the object. - matches = { - { - { "device.name", "matches", "alsa_card.usb-Audient_Audient_iD4-00" }, - }, - }, - -- Apply properties on the matched object. - apply_properties = { - -- Use UCM instead of profile when available. Can be - -- disabled to skip trying to use the UCM profile. - ["api.alsa.use-ucm"] = false, - - -- The default active profile. Is by default set to "Off". - ["device.profile"] = "Pro Audio", - }, - } -) - 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/xdg-desktop-portal/portals.conf b/xdg-desktop-portal/portals.conf deleted file mode 100644 index b1a274e..0000000 --- a/xdg-desktop-portal/portals.conf +++ /dev/null @@ -1,4 +0,0 @@ -[preferred] -default=hyprland -org.freedesktop.impl.portal.FileChooser=gtk -org.freedesktop.impl.portal.Settings=darkman diff --git a/xsettingsd/xsettingsd.conf b/xsettingsd/xsettingsd.conf deleted file mode 100644 index e762fa9..0000000 --- a/xsettingsd/xsettingsd.conf +++ /dev/null @@ -1,9 +0,0 @@ -Net/ThemeName "Flat-Remix-GTK-Green-Darkest" -Net/IconThemeName "Cosmic" -Gtk/CursorThemeName "BreezeX-Black" -Net/EnableEventSounds 1 -EnableInputFeedbackSounds 0 -Xft/Antialias 1 -Xft/Hinting 1 -Xft/HintStyle "hintslight" -Xft/RGBA "rgb" diff --git a/yay/config.json b/yay/config.json deleted file mode 100644 index 2b64b70..0000000 --- a/yay/config.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "aururl": "https://aur.archlinux.org", - "aurrpcurl": "https://aur.archlinux.org/rpc?", - "buildDir": "/home/zachir/.cache/yay", - "editor": "nvim", - "editorflags": "", - "makepkgbin": "makepkg", - "makepkgconf": "", - "pacmanbin": "pacman", - "pacmanconf": "/etc/pacman.conf", - "redownload": "no", - "answerclean": "All", - "answerdiff": "", - "answeredit": "", - "answerupgrade": "", - "gitbin": "git", - "gpgbin": "gpg", - "gpgflags": "", - "mflags": "", - "sortby": "votes", - "searchby": "name-desc", - "gitflags": "", - "removemake": "yes", - "sudobin": "sudo", - "sudoflags": "", - "version": "12.4.2", - "requestsplitn": 150, - "completionrefreshtime": 7, - "maxconcurrentdownloads": 1, - "bottomup": true, - "sudoloop": true, - "timeupdate": false, - "devel": false, - "cleanAfter": true, - "keepSrc": false, - "provides": true, - "pgpfetch": true, - "cleanmenu": true, - "diffmenu": false, - "editmenu": true, - "combinedupgrade": false, - "useask": false, - "batchinstall": false, - "singlelineresults": false, - "separatesources": true, - "debug": false, - "rpc": true, - "doubleconfirm": true, - "rebuild": "no" -} @@ -2,5 +2,6 @@ unset HISTFILE export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}" export skip_global_compinit=1 +fpath=($XDG_CONFIG_HOME/functions $fpath) [ -f /etc/profile ] && . /etc/profile [ -f "$XDG_CONFIG_HOME/sh/profile" ] && . "$XDG_CONFIG_HOME/sh/profile" diff --git a/zsh/.zshrc b/zsh/.zshrc new file mode 100644 index 0000000..e3eb235 --- /dev/null +++ b/zsh/.zshrc @@ -0,0 +1,131 @@ +#zmodload zsh/zprof +[ -z "$XDG_CONFIG_HOME" ] && XDG_CONFIG_HOME="$HOME/.config" +HISTFILE="$XDG_CONFIG_HOME/zsh/hist" +SAVEHIST=1000 +HISTSIZE=1000 +setopt APPEND_HISTORY +setopt HIST_FIND_NO_DUPS +setopt HIST_EXPIRE_DUPS_FIRST +setopt HIST_VERIFY +setopt HIST_IGNORE_DUPS +setopt INC_APPEND_HISTORY +setopt HIST_REDUCE_BLANKS +setopt COMPLETE_ALIASES +setopt AUTO_CD + +_SH="zsh" + +if [ -f "$XDG_CONFIG_HOME"/sh/aliases ]; then + source "$XDG_CONFIG_HOME"/sh/aliases +fi +if [ -f "$XDG_CONFIG_HOME"/sh/functions ]; then + source "$XDG_CONFIG_HOME"/sh/functions +fi + +if [ -f "$XDG_CONFIG_HOME/zsh/zshrc" ]; then + alias e='source "$XDG_CONFIG_HOME/zsh/zshrc"' +elif [ -f "$XDG_CONFIG_HOME/zshrc" ]; then + alias e='source "$XDG_CONFIG_HOME/zshrc"' +elif [ -f "$HOME"/.zshrc ]; then + alias e='source ~/.zshrc' +fi + +source ~/.config/zsh/.zkbd/$TERM-${${DISPLAY:t}:-$VENDOR-$OSTYPE} + +#autoload zkbd; zkbd +bindkey -v +bindkey "${key[Backspace]}" backward-delete-char +bindkey "${key[Delete]}" delete-char +bindkey "${key[Home]}" beginning-of-line +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{'"$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{'"$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 +} + +zle -N zle-line-init +zle -N zle-keymap-select +export KEYTIMEOUT=1 + +fpath+="$XDG_CONFIG_HOME/zsh/functions" + +autoload -Uz anonsh + +autoload -Uz compinit +if [[ -n ${ZDOTDIR}/.zcompdump(#qN.mh+24) ]]; then + compinit +else + compinit -C +fi + +zshcache_time="$(date +%s%N)" + +autoload -Uz add-zsh-hook + +rehash_precmd() { + if [[ -a /var/cache/zsh/pacman ]]; then + local paccache_time="$(date -r /var/cache/zsh/pacman +%s%N)" + if (( zshcache_time < paccache_time )); then + rehash + zshcache_time="$paccache_time" + fi + fi +} + +add-zsh-hook -Uz precmd rehash_precmd + +zstyle ':completion:*' hosts off + +### Added by Zinit's installer +if [[ ! -f $HOME/.local/share/zinit/zinit.git/zinit.zsh ]]; then + print -P "%F{33} %F{220}Installing %F{33}ZDHARMA-CONTINUUM%F{220} Initiative Plugin Manager (%F{33}zdharma-continuum/zinit%F{220})…%f" + command mkdir -p "$HOME/.local/share/zinit" && command chmod g-rwX "$HOME/.local/share/zinit" + command git clone https://github.com/zdharma-continuum/zinit "$HOME/.local/share/zinit/zinit.git" && \ + print -P "%F{33} %F{34}Installation successful.%f%b" || \ + print -P "%F{160} The clone has failed.%f%b" +fi + +source "$HOME/.local/share/zinit/zinit.git/zinit.zsh" +autoload -Uz _zinit +(( ${+_comps} )) && _comps[zinit]=_zinit + +# Load a few important annexes, without Turbo +# (this is currently required for annexes) +zinit light-mode for \ + zdharma-continuum/zinit-annex-as-monitor \ + zdharma-continuum/zinit-annex-bin-gem-node \ + zdharma-continuum/zinit-annex-patch-dl \ + zdharma-continuum/zinit-annex-rust + +### End of Zinit's installer chunk +zinit snippet OMZ::plugins/git/git.plugin.zsh + +zinit load 'zsh-users/zsh-history-substring-search' +zinit ice wait atload'_history_substring_search_config' + +bindkey "${key[Up]}" history-substring-search-up +bindkey "${key[Down]}" history-substring-search-down +bindkey -M vicmd "${key[Up]}" history-substring-search-up +bindkey -M vicmd "${key[Down]}" history-substring-search-down +bindkey -M vicmd "k" history-substring-search-up +bindkey -M vicmd "j" history-substring-search-down + +#source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +zinit light 'zsh-users/zsh-syntax-highlighting' +zinit ice wait atload'_history_substring_search_config' +#zprof +export PATH="/opt/homebrew/opt/rustup/bin:$PATH" diff --git a/zsh/zshrc b/zsh/zshrc deleted file mode 100644 index 9acd42f..0000000 --- a/zsh/zshrc +++ /dev/null @@ -1,81 +0,0 @@ -#zmodload zsh/zprof -if [ -d "$HOME/.zplug" ]; then - export ZPLUG_INSTALLED="y" - source "$HOME/.zplug/init.zsh" -fi -HISTFILE="$XDG_CONFIG_HOME/zsh/hist" -SAVEHIST=1000 -HISTSIZE=1000 -setopt APPEND_HISTORY -setopt HIST_FIND_NO_DUPS -setopt HIST_EXPIRE_DUPS_FIRST -setopt HIST_VERIFY -setopt HIST_IGNORE_DUPS -setopt INC_APPEND_HISTORY -setopt HIST_REDUCE_BLANKS -setopt COMPLETE_ALIASES -setopt AUTO_CD - -_SH="zsh" - -if [ -f "$XDG_CONFIG_HOME"/sh/aliases ]; then - source "$XDG_CONFIG_HOME"/sh/aliases -fi -if [ -f "$XDG_CONFIG_HOME"/sh/functions ]; then - source "$XDG_CONFIG_HOME"/sh/functions -fi - -if [ -f "$XDG_CONFIG_HOME/zsh/zshrc" ]; then - alias e='source "$XDG_CONFIG_HOME/zsh/zshrc"' -elif [ -f "$XDG_CONFIG_HOME/zshrc" ]; then - alias e='source "$XDG_CONFIG_HOME/zshrc"' -elif [ -f "$HOME"/.zshrc ]; then - alias e='source ~/.zshrc' -fi - -source ~/.zkbd/$TERM-${${DISPLAY:t}:-$VENDOR-$OSTYPE} - -#autoload zkbd; zkbd -bindkey -v -bindkey "${key[Backspace]}" backward-delete-char -bindkey "${key[Delete]}" delete-char -bindkey "${key[Home]}" beginning-of-line -bindkey "${key[End]}" end-of-line -bindkey "${key[PageUp]}" history-substring-search-up -bindkey "${key[PageDown]}" history-substring-search-down - -MYPROMPT=$'%S%F{002}[%n@%m]\UE0B2%F{015}%s%~%S%F{002}\UE0B0%#%s\UE0B0%f ' -function zle-line-init zle-keymap-select { - VIM_PROMPT=$'%S%F{012}[%n@%m]\UE0B2%F{015}%s%~%S%F{012}\UE0B0%#%s\UE0B0%f ' - PS1="${${KEYMAP/vicmd/$VIM_PROMPT}/main/$MYPROMPT}" - zle reset-prompt -} - -zle -N zle-line-init -zle -N zle-keymap-select -export KEYTIMEOUT=1 - -fpath+="$XDG_CONFIG_HOME/zsh/zfunc" - -if [ -n "$ZPLUG_INSTALLED" ]; then - # zsh history substring search - zplug "zsh-users/zsh-history-substring-search", as:plugin - - bindkey "${key[Up]}" history-substring-search-up - bindkey "${key[Down]}" history-substring-search-down - bindkey -M vicmd "${key[Up]}" history-substring-search-up - bindkey -M vicmd "${key[Down]}" history-substring-search-down - bindkey -M vicmd "k" history-substring-search-up - bindkey -M vicmd "j" history-substring-search-down - - # zsh syntax highlighting - zplug "zsh-users/zsh-syntax-highlighting", defer:2 - - # load zsh plugins - zplug load -fi - -autoload -Uz compinit -compinit - -#zprof |
