My configurations for the software I use
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Shift around some directories

yemou 62670728 e8aab894

+1191 -2130
+1
.gitignore
··· 6 6 plugins 7 7 ltoworkarounds.conf 8 8 example 9 + data/configs/gtk-3.0/bookmarks
+6
data/configs/autostart/syncthing.desktop
··· 1 + [Desktop Entry] 2 + Type=Application 3 + Name=Syncthing 4 + # Change this to a full path? 5 + Exec=syncthing --no-browser 6 + Hidden=false
+30
data/configs/foot/foot.ini
··· 1 + # Alternatively I could create a wrapper script that uses an environment variable 2 + include=~/.app/cache/thm/foot-colors.ini 3 + 4 + font=monospace:size=10 5 + pad=8x8 center 6 + initial-window-size-chars=120x36 7 + 8 + [bell] 9 + urgent=yes 10 + notify=yes 11 + 12 + [scrollback] 13 + lines=5000 14 + 15 + [cursor] 16 + style=beam 17 + blink=yes 18 + 19 + [mouse] 20 + hide-when-typing=yes 21 + 22 + [colors] 23 + alpha=1 24 + 25 + # [csd] 26 + # preferred=client 27 + # size=32 28 + # font=monospace:weight=bold 29 + # border-width=4 30 + # button-width=32
+2
data/configs/gtk-3.0/settings.ini
··· 1 + [Settings] 2 + gtk-decoration-layout=close,maximize,minimize:menu
+180
data/configs/hikari/hikari.conf
··· 1 + actions { 2 + colorpicker = "colorgrab -co" 3 + colorpicker-notification = "colorgrab -co" 4 + colorpicker-notification-rgb = "colorgrab -co" 5 + colorpicker-rgb = "colorgrab -co" 6 + menu = "bemenu-run" 7 + mute-mic = "wpctl set-mute @DEFAULT_SOURCE@ toggle" 8 + notification-history = "makoctl restore" 9 + notification-menu = "makoctl menu bemenu -p 'Select Action: '" 10 + notification-pause = "makoctl set-paused toggle" 11 + screenshot-area = "scr pic -c" 12 + screenshot-full = "scr pic -cd" 13 + terminal = "foot" 14 + } 15 + 16 + bindings { 17 + keyboard { 18 + "L+c" = colorpicker 19 + "LA+c" = colorpicker-notification 20 + "LCA+c" = colorpicker-notification-rgb 21 + "LC+c" = colorpicker-rgb 22 + "L+r" = menu 23 + "L+e" = mute-mic 24 + "L+Prior" = notification-history 25 + "L+Next" = notification-menu 26 + "L+Pause" = notification-pause 27 + "0+Print" = screenshot-area 28 + "L+Print" = screenshot-full 29 + "L+Return" = terminal 30 + 31 + "LC+BackSpace" = lock 32 + "LCA+BackSpace" = quit 33 + "L+BackSpace" = reload 34 + 35 + "L+Tab" = group-cycle-prev 36 + "LS+Tab" = group-cycle-next 37 + "A+Tab" = group-cycle-view-next 38 + "AS+Tab" = group-cycle-view-prev 39 + "LS+Home" = group-cycle-view-first 40 + "LS+End" = group-cycle-view-last 41 + "LS+h" = group-hide 42 + "LS+d" = group-lower 43 + "LS+o" = group-only 44 + "LS+u" = group-raise 45 + 46 + # "" = layout-apply-[a-z] 47 + "L+n" = layout-cycle-view-next 48 + "L+p" = layout-cycle-view-prev 49 + "L+Home" = layout-cycle-view-first 50 + "L+End" = layout-cycle-view-last 51 + "L+x" = layout-exchange-view-next 52 + "LS+x" = layout-exchange-view-prev 53 + "LA+x" = layout-exchange-view-main 54 + "LA+r" = layout-reset 55 + "LA+Return" = layout-restack-append 56 + "LAS+Return" = layout-restack-prepend 57 + 58 + # "" = mark-show-[a-z] 59 + # "" = mark-switch-to-[a-z] 60 + 61 + "L+g" = mode-enter-group-assign 62 + "LCA+g" = mode-enter-input-grab 63 + "L+l" = mode-enter-layout 64 + "L+m" = mode-enter-mark-assign 65 + "L+acute" = mode-enter-mark-select 66 + "LS+acute" = mode-enter-mark-switch-select 67 + # "" = mode-enter-move 68 + # "" = mode-enter-resize 69 + "L+s" = mode-enter-sheet-assign 70 + 71 + "LC+Period" = sheet-show-all 72 + "LC+g" = sheet-show-group 73 + "LC+i" = sheet-show-invisible 74 + 75 + "LS+n" = view-cycle-next 76 + "LS+p" = view-cycle-prev 77 + "LA+Up" = view-decrease-size-up 78 + "LAS+Down" = view-decrease-size-down 79 + "LA+Left" = view-decrease-size-left 80 + "LAS+Right" = view-decrease-size-right 81 + "L+h" = view-hide 82 + "LAS+Up" = view-increase-size-up 83 + "LA+Down" = view-increase-size-down 84 + "LAS+Left" = view-increase-size-left 85 + "LA+Right" = view-increase-size-right 86 + "L+d" = view-lower 87 + "L+Up" = view-move-up 88 + "L+Down" = view-move-down 89 + "L+Left" = view-move-left 90 + "L+Right" = view-move-right 91 + # "" = view-move-[center[|-left|-right]|[bottom|top]-[left|middle|right]] 92 + "L+o" = view-only 93 + "LS+0" = view-pin-to-sheet-0 94 + "LS+1" = view-pin-to-sheet-1 95 + "LS+2" = view-pin-to-sheet-2 96 + "LS+3" = view-pin-to-sheet-3 97 + "LS+4" = view-pin-to-sheet-4 98 + "LS+5" = view-pin-to-sheet-5 99 + "LS+6" = view-pin-to-sheet-6 100 + "LS+7" = view-pin-to-sheet-7 101 + "LS+8" = view-pin-to-sheet-8 102 + "LS+9" = view-pin-to-sheet-9 103 + "LS+numbersign" = view-pin-to-sheet-alternate 104 + "LS+Period" = view-pin-to-sheet-current 105 + # "LS+j" = view-pin-to-sheet-next # In the example config but not manpage 106 + # "LS+k" = view-pin-to-sheet-prev # In the example config but not manpage 107 + "L+q" = view-quit 108 + "L+u" = view-raise 109 + "L+r" = view-reset-geometry 110 + "LS+Up" = view-snap-up 111 + "LS+Down" = view-snap-down 112 + "LS+Left" = view-snap-left 113 + "LS+Right" = view-snap-right 114 + "L+plus" = view-toggle-floating 115 + "L+i" = view-toggle-invisible 116 + "L+f" = view-toggle-maximize-full 117 + "L+less" = view-toggle-maximize-horizontal 118 + "L+minus" = view-toggle-maximize-vertical 119 + "LA+p" = view-toggle-public 120 + 121 + "A+F1" = vt-switch-to-1 122 + "A+F2" = vt-switch-to-2 123 + "A+F3" = vt-switch-to-3 124 + "A+F4" = vt-switch-to-4 125 + "A+F5" = vt-switch-to-5 126 + "A+F6" = vt-switch-to-6 127 + "A+F7" = vt-switch-to-7 128 + "A+F8" = vt-switch-to-8 129 + "A+F9" = vt-switch-to-9 130 + 131 + # "" = workspace-clear 132 + "LC+n" = workspace-cycle-next 133 + "LC+p" = workspace-cycle-prev 134 + "LSC+Period" = workspace-show-all 135 + "LSC+g" = workspace-show-group 136 + "LSC+i" = workspace-show-invisible 137 + "L+0" = workspace-switch-to-sheet-0 138 + "L+1" = workspace-switch-to-sheet-1 139 + "L+2" = workspace-switch-to-sheet-2 140 + "L+3" = workspace-switch-to-sheet-3 141 + "L+4" = workspace-switch-to-sheet-4 142 + "L+5" = workspace-switch-to-sheet-5 143 + "L+6" = workspace-switch-to-sheet-6 144 + "L+7" = workspace-switch-to-sheet-7 145 + "L+8" = workspace-switch-to-sheet-8 146 + "L+9" = workspace-switch-to-sheet-9 147 + "L+numbersign" = workspace-switch-to-sheet-alternate 148 + "L+Period" = workspace-switch-to-sheet-current 149 + # "L+j" = workspace-switch-to-sheet-next # In example config but not manpage 150 + # "L+k" = workspace-switch-to-sheet-prev # In example config but not manpage 151 + "L+Comma" = workspace-switch-to-sheet-next-inhabited 152 + "LS+Comma" = workspace-switch-to-sheet-prev-inhabited 153 + } 154 + 155 + mouse { 156 + "L+left" = mode-enter-move 157 + "L+right" = mode-enter-resize 158 + } 159 + } 160 + 161 + # marks { } 162 + # views { } 163 + # layouts { } 164 + 165 + .include "${XDG_CACHE_HOME}/thm/hikari-colors.conf" 166 + 167 + ui { 168 + border = 1 169 + gap = 5 170 + font = "monospace 10" 171 + step = 100 172 + } 173 + 174 + #inputs { 175 + # pointers = { } 176 + # keyboards = { } 177 + # switches = { } 178 + #} 179 + 180 + # outputs { }
+32
data/configs/kak-lsp/kak-lsp.toml
··· 1 + snippet_support = true 2 + verbosity = 2 3 + 4 + [server] 5 + timeout = 1800 6 + 7 + [language_server.clangd] 8 + filetypes = ["c", "cpp"] 9 + roots = ["compile_commands.json", ".clangd", ".git", ".hg"] 10 + command = "clangd" 11 + 12 + [language_server.nil] 13 + filetypes = ["nix"] 14 + roots = ["flake.nix", ".git"] 15 + command = "nil" 16 + 17 + [language_server.ruff] 18 + filetypes = ["python"] 19 + roots = ["requirements.txt", "setup.py", ".git"] 20 + command = "ruff-lsp" 21 + 22 + # Kakoune can't detect typst files right now meaning that there is no highlighting 23 + # I will just continue to use the browser version of typst 24 + # [language_server.typst-lsp] 25 + # filetypes = ["typst"] 26 + # roots = [".git", "main.typ"] 27 + # command = "typst-lsp" 28 + 29 + [language_server.zls] 30 + filetypes = ["zig"] 31 + roots = ["build.zig"] 32 + command = "zls"
+5
data/configs/kanshi/config
··· 1 + profile default { 2 + output "LG Electronics LG HDR WFHD 0x0000B11B" mode 2560x1080@74.990997Hz position 640,1080 3 + output "AOC 2460G4 0x0000075E" mode 1920x1080@144.001007Hz position 0,0 4 + output "BNQ BenQ PD2700U ET87K04288SL0" position 1920,0 scale 2 5 + }
+250
data/configs/sway/config
··· 1 + include /etc/sway/config.d/* 2 + include ${XDG_CACHE_HOME}/thm/sway-appearance 3 + 4 + output "LG Electronics LG HDR WFHD 0x0000B11B" { 5 + mode 2560x1080@74.991Hz 6 + position 640 1080 7 + subpixel rgb 8 + # max_render_time 1 9 + # Monitor was advertised as supporting freesync but it doesn't seem to be enabled 10 + # This is likely due to the system detecting the monitor as plugged in via DP when it is 11 + # connected via HDMI. Change the cable? 12 + adaptive_sync on 13 + } 14 + 15 + output "AOC 2460G4 0x0000075E" { 16 + mode 1920x1080@144.001Hz 17 + position 0 0 18 + subpixel rgb 19 + # max_render_time 1 20 + # Monitor is capable of freesync but there is weird flickering 21 + adaptive_sync off 22 + } 23 + 24 + output "BNQ BenQ PD2700U ET87K04288SL0" { 25 + mode 3840x2160@60.000Hz 26 + position 1920 0 27 + scale 2 28 + subpixel rgb 29 + # max_render_time 1 30 + adaptive_sync on 31 + } 32 + 33 + output * bg ${HOME}/misc/syncthing/media/images/wallpapers/dark/evie-s-Pb1KFv4tauY-unsplash.jpg fill 34 + 35 + # Put on ultrawide monitor limited to the center 1920x1080 area 36 + input 1386:782:Wacom_Intuos_S_Pen map_to_region 960 1080 1920 1080 37 + 38 + input 1133:50503:Logitech_USB_Receiver accel_profile flat 39 + 40 + input 1356:3570:Sony_Interactive_Entertainment_DualSense_Edge_Wireless_Controller_Touchpad { 41 + events disabled 42 + } 43 + 44 + seat seat0 xcursor_theme Adwaita 45 + 46 + workspace_layout tabbed 47 + floating_maximum_size -1 x -1 48 + focus_follows_mouse yes 49 + focus_on_window_activation urgent 50 + focus_wrapping workspace 51 + hide_edge_borders --i3 smart 52 + show_marks yes 53 + tiling_drag enable 54 + 55 + exec swayidle timeout 900 swaylock 56 + exec wlsunset -l 33.9 -L -84.5 57 + exec syncthing --no-browser 58 + 59 + set { 60 + $ws0 0 61 + $ws1 1 62 + $ws2 2 63 + $ws3 3 64 + $ws4 4 65 + $ws5 5 66 + $ws6 6 67 + $ws7 7 68 + $ws8 8 69 + $ws9 9 70 + # These are tossaway workspaces 71 + # Sway doesn't allow displays to not have a workspace which means if I brought all workspaces 72 + # to one display, some workspaces would be forced to stay where they are 73 + $ws10 10 74 + $ws11 11 75 + $ws12 12 76 + } 77 + 78 + workspace { 79 + $ws10 output "LG Electronics LG HDR WFHD 0x0000B11B" 80 + $ws11 output "BNQ BenQ PD2700U ET87K04288SL0" 81 + $ws12 output "AOC 2460G4 0x0000075E" 82 + } 83 + 84 + set { 85 + $W Mod4 86 + $A Mod1 87 + $C Control 88 + $S Shift 89 + $term foot 90 + $menu bemenu-run 91 + $file_manager nautilus 92 + } 93 + 94 + 95 + # TODO: Learn about marks 96 + # TODO: Learn about scratchpad 97 + 98 + mode "focus-output" { 99 + bindsym { 100 + 1 focus output "LG Electronics LG HDR WFHD 0x0000B11B"; mode "default" 101 + 2 focus output "BNQ BenQ PD2700U ET87K04288SL0"; mode "default" 102 + 3 focus output "AOC 2460G4 0x0000075E"; mode "default" 103 + Escape mode "default" 104 + } 105 + } 106 + 107 + # mode "layouts" { 108 + # bindsym { 109 + # } 110 + # } 111 + 112 + # mode "marks" { 113 + # bindsym { 114 + # } 115 + # } 116 + 117 + floating_modifier $W normal 118 + # TODO: rethink keybinds 119 + bindsym { 120 + $W+Return exec $term 121 + $W+r exec $menu 122 + 123 + $W+e exec wpctl set-mute @DEFAULT_SOURCE@ toggle 124 + 125 + Print exec scr pic -c 126 + $W+Print exec scr pic -cd 127 + 128 + $W+c exec colorgrab -co 129 + $W+$A+c exec colorgrab -cn 130 + $W+$C+c exec colorgrab -cor 131 + $W+$C+$A+c exec colorgrab -cnr 132 + 133 + $W+space exec makoctl dismiss -a 134 + 135 + $W+h focus left 136 + $W+j focus down 137 + $W+k focus up 138 + $W+l focus right 139 + 140 + $W+$S+h move left 141 + $W+$S+j move down 142 + $W+$S+k move up 143 + $W+$S+l move right 144 + 145 + $W+Tab focus next sibling 146 + $W+$S+Tab focus prev sibling 147 + $W+z focus mode_toggle 148 + 149 + $W+x mode "focus-output" 150 + 151 + $W+1 [workspace=$ws0] move workspace output current; workspace $ws0 152 + $W+2 [workspace=$ws1] move workspace output current; workspace $ws1 153 + $W+3 [workspace=$ws2] move workspace output current; workspace $ws2 154 + $W+4 [workspace=$ws3] move workspace output current; workspace $ws3 155 + $W+5 [workspace=$ws4] move workspace output current; workspace $ws4 156 + $W+6 [workspace=$ws5] move workspace output current; workspace $ws5 157 + $W+7 [workspace=$ws6] move workspace output current; workspace $ws6 158 + $W+8 [workspace=$ws7] move workspace output current; workspace $ws7 159 + $W+9 [workspace=$ws8] move workspace output current; workspace $ws8 160 + $W+0 [workspace=$ws9] move workspace output current; workspace $ws9 161 + $W+$C+$A+$S+0 workspace $ws10 162 + $W+$C+$A+$S+9 workspace $ws11 163 + $W+$C+$A+$S+8 workspace $ws11 164 + 165 + $W+$S+1 move container to workspace $ws0 166 + $W+$S+2 move container to workspace $ws1 167 + $W+$S+3 move container to workspace $ws2 168 + $W+$S+4 move container to workspace $ws3 169 + $W+$S+5 move container to workspace $ws4 170 + $W+$S+6 move container to workspace $ws5 171 + $W+$S+7 move container to workspace $ws6 172 + $W+$S+8 move container to workspace $ws7 173 + $W+$S+9 move container to workspace $ws8 174 + $W+$S+0 move container to workspace $ws9 175 + 176 + $W+$C+Escape exit 177 + $W+$A+Escape reload 178 + $W+q kill 179 + 180 + # TODO: add sticky keybind 181 + # TODO: add swap keybinds 182 + 183 + $W+f floating toggle 184 + $W+$C+f fullscreen toggle 185 + 186 + $W+o layout toggle split tabbed 187 + $W+$C+o layout toggle split 188 + $W+p split toggle 189 + $W+$C+p split none 190 + 191 + # Make this a mode? 192 + $W+v border normal 2 193 + $W+b border pixel 2 194 + $W+n border none 195 + $W+d border csd 196 + } 197 + 198 + 199 + 200 + for_window { 201 + # Make all windows float by default 202 + # According to `swaymsg -m "['window']" -t subscribe`, windows get their title after 203 + # they get created. However, app_id, class and instace are all set when the window is 204 + # created. 205 + [app_id="."] floating enable, border csd 206 + [class="."] floating enable, border csd 207 + [instance="."] floating enable, border csd 208 + 209 + # Make the title of each window bold 210 + [title="."] title_format "<b>%title</b>" 211 + 212 + [app_id="foot"] border normal 213 + [app_id="mpv"] border none 214 + 215 + ## These apps should take up the entire screen and not have a border 216 + #[app_id="firefox-wayland" title=".*- Mozilla Firefox$"] floating disable, border none 217 + #[app_id="firefox-wayland" title="^Mozilla Firefox$"] floating disable, border none 218 + #[class="Element"] floating disable, border none 219 + #[class="discord"] floating disable, border none 220 + 221 + #[class="csgo_linux64"] fullscreen enable 222 + } 223 + 224 + #for_window { 225 + # # Web Browsers should be on the first workspace 226 + # [app_id="firefox-wayland"] move container to workspace 0 227 + 228 + # # Chat Applications should be on the second workspace 229 + # [class="Element"] move container to workspace 1 230 + # [class="discord"] move container to workspace 1 231 + 232 + # # Graphic Applications should be on the third workspace 233 + # [app_id="org.inkscape.Inkscape"] move container to workspace 2 234 + # [class="Gimp"] move container to workspace 2 235 + # [class="krita"] move container to workspace 2 236 + 237 + # # Games and Game Launchers should be on the eighth workspace 238 + # [app_id="org.multimc.multimc"] move container to workspace 7 239 + # [class="Steam"] move container to workspace 7 240 + # 241 + # [class="csgo_linux64"] move container to workspace 7 242 + # [class="Minecraft.*"] move container to workspace 7 243 + 244 + # # Rocket League 245 + # [class="steam_app_252950"] move container to workspace 7 246 + # # Deceit 247 + # [class="steam_app_466240"] move container to workspace 7 248 + # # TitanFall 2 249 + # [class="steam_app_1237970"] move container to workspace 7 250 + #}
+10
data/configs/thm/templates/hikari-colors.conf.template
··· 1 + ui colorscheme { 2 + active = 0x{color1} 3 + background = 0x{bg_color} 4 + conflict = 0x{color2} 5 + first = 0x{color3} 6 + foreground = 0x{fg_color} 7 + grouped = 0x{color4} 8 + insert = 0x{color5} 9 + selected = 0x{color6} 10 + }
+8
data/configs/thm/templates/light/foot-colors.ini.template
··· 1 + include=~/.app/cache/thm/foot-colors-base.ini 2 + 3 + [csd] 4 + color=ff{bg_color} 5 + button-color=ff{fg_color} 6 + button-minimize-color=ff{color3} 7 + button-maximize-color=ff{color2} 8 + button-close-color=ff{color1}
+37
data/configs/thm/templates/light/sway-appearance.template
··· 1 + # class border background text indicator child_border 2 + client.focused #{color5} #{color13} #{bg_color} #{color5} #{color5} 3 + client.focused_inactive #{color4} #{color12} #{bg_color} #{color4} #{color4} 4 + client.unfocused #{color8} #{color8} #{bg_color} #{color8} #{color8} 5 + client.urgent #{color1} #{color9} #{bg_color} #{color1} #{color1} 6 + 7 + default_border normal 2 8 + default_floating_border normal 2 9 + 10 + font pango:monospace 10 11 + 12 + hide_edge_borders both 13 + 14 + title_align center 15 + 16 + set { 17 + $bg_color {bg_color} 18 + $fg_color {fg_color} 19 + 20 + $color0 {color0} 21 + $color1 {color1} 22 + $color2 {color2} 23 + $color3 {color3} 24 + $color4 {color4} 25 + $color5 {color5} 26 + $color6 {color6} 27 + $color7 {color7} 28 + $color8 {color8} 29 + $color9 {color9} 30 + 31 + $color10 {color10} 32 + $color11 {color11} 33 + $color12 {color12} 34 + $color13 {color13} 35 + $color14 {color14} 36 + $color15 {color15} 37 + }
+4
data/configs/waybar/randomtext.sh
··· 1 + #!/bin/sh 2 + # Pick a random line from 3 + 4 + printf '%s' "$(shuf "${XDG_CONFIG_HOME:-$HOME/.config}/waybar/random.txt" | head -n1)"
+223
data/configs/wayfire.ini
··· 1 + [input] 2 + modifier_binding_timeout = 200 3 + # xkb_options = compose:caps 4 + mouse_accel_profile = flat 5 + # touchpad_accel_profile = flat # Steam input's joystick to mouse may be picked up as a touchpad 6 + cursor_theme = Adwaita 7 + 8 + [core] 9 + close_top_view = <super> KEY_Q 10 + plugins = alpha animate autostart \ 11 + blur \ 12 + command \ 13 + expo \ 14 + fast-switcher follow-focus \ 15 + grid \ 16 + idle invert \ 17 + move \ 18 + oswitch \ 19 + place preserve-output \ 20 + resize \ 21 + scale \ 22 + vswitch \ 23 + windecor window-rules wm-actions wrot wsets \ 24 + zoom 25 + vwidth = 2 26 + vheight = 2 27 + # max_render_time = 1 28 + 29 + [workarounds] 30 + dynamic_repaint_delay = true 31 + use_external_output_configuration = true 32 + 33 + [command] 34 + binding_term = <super> KEY_ENTER 35 + command_term = foot 36 + binding_filemanager = <super> <alt> KEY_F 37 + command_filemanager = nautilus 38 + 39 + binding_menu = <super> KEY_R 40 + command_menu = bemenu-run 41 + # binding_powermenu = <alt> KEY_F12 42 + # command_powermenu = powermenu 43 + 44 + binding_mute_mic = <super> KEY_E 45 + command_mute_mic = wpctl set-mute @DEFAULT_SOURCE@ toggle 46 + 47 + binding_scrpic = KEY_SYSRQ 48 + command_scrpic = scr pic -c 49 + binding_scrpicd = <super> KEY_SYSRQ 50 + command_scrpicd = scr pic -cd 51 + 52 + binding_colorgrab_co = <super> KEY_C 53 + command_colorgrab_co = colorgrab -co 54 + binding_colorgrab_cn = <super> <alt> KEY_C 55 + command_colorgrab_cn = colorgrab -cn 56 + binding_colorgrab_cor = <super> <ctrl> KEY_C 57 + command_colorgrab_cor = colorgrab -cor 58 + binding_colorgrab_cnr = <super> <ctrl> <alt> KEY_C 59 + command_colorgrab_cnr = colorgrab -cnr 60 + 61 + binding_mako_history = <super> KEY_PAGEUP 62 + command_mako_history = makoctl restore 63 + binding_mako_menu = <super> KEY_COMPOSE 64 + command_mako_menu = makoctl menu bemenu -p 'Select Action: ' 65 + binding_mako_pause = <super> KEY_PAUSE 66 + command_mako_pause = makoctl set-paused toggle 67 + 68 + [alpha] 69 + modifier = <super> <ctrl> 70 + 71 + [animate] 72 + close_animation = zoom 73 + duration = 120 74 + open_animation = zoom 75 + 76 + [autostart] 77 + autostart_wf_shell = false 78 + wl-post = wl-post 79 + 80 + [blur] 81 + saturation = 1 82 + kawase_offset = 1 83 + kawase_degrade = 1 84 + kawase_iterations = 2 85 + # blur_by_default = type is "toplevel" | type is "panel" | type is "unmanaged" 86 + 87 + [expo] 88 + background = 0 0 0 1 89 + duration = 120 90 + offset = 8 91 + select_workspace_1 = KEY_1 92 + select_workspace_2 = KEY_2 93 + select_workspace_3 = KEY_3 94 + select_workspace_4 = KEY_4 95 + select_workspace_5 = KEY_5 96 + select_workspace_6 = KEY_6 97 + select_workspace_7 = KEY_7 98 + select_workspace_8 = KEY_8 99 + select_workspace_9 = KEY_9 100 + toggle = <super> 101 + 102 + [fast-switcher] 103 + activate = <super> KEY_Z 104 + activate_backward = <super> <shift> KEY_Z 105 + 106 + [follow-focus] 107 + focus_delay = 0 108 + threshold = 0 109 + raise_on_top = false 110 + 111 + [grid] 112 + duration = 120 113 + restore = <super> <alt> KEY_LEFT 114 + slot_b = <super> KEY_DOWN 115 + slot_bl = <super> <ctrl> KEY_LEFT 116 + slot_br = <super> <ctrl> KEY_RIGHT 117 + slot_c = <super> KEY_T 118 + slot_l = <super> KEY_LEFT 119 + slot_r = <super> KEY_RIGHT 120 + slot_t = <super> KEY_UP 121 + slot_tl = <super> <shift> KEY_LEFT 122 + slot_tr = <super> <shift> KEY_RIGHT 123 + 124 + # [hide-cursor] 125 + # # hide_delay = 2000 126 + # toggle = <super> <ctrl> KEY_H 127 + 128 + [idle] 129 + dpms_timeout = 1800 130 + toggle = <super> KEY_I 131 + 132 + [invert] 133 + toggle = <super> <shift> KEY_I 134 + 135 + [move] 136 + activate = <super> BTN_LEFT 137 + snap_off_threshold = 100 138 + snap_threshold = 8 139 + 140 + [oswitch] 141 + next_output = <super> KEY_X 142 + next_output_with_win = <super> <alt> KEY_X 143 + 144 + [resize] 145 + activate = <super> BTN_RIGHT 146 + 147 + [scale] 148 + toggle = <super> <alt> KEY_SPACE 149 + toggle_all = <super> KEY_SPACE 150 + spacing = 4 151 + duration = 150 152 + inactive_alpha = .8 153 + middle_click_close = true 154 + 155 + [vswitch] 156 + binding_down = <super> KEY_J 157 + binding_left = <super> KEY_H 158 + binding_right = <super> KEY_L 159 + binding_up = <super> KEY_K 160 + with_win_down = <super> <alt> KEY_J 161 + with_win_left = <super> <alt> KEY_H 162 + with_win_right = <super> <alt> KEY_L 163 + with_win_up = <super> <alt> KEY_K 164 + duration = 150 165 + wraparound = true 166 + 167 + [windecor] 168 + font = sans-serif 169 + font_size = 0 170 + font_color = \#efefefff # Need to make this a template or find a way to control this externally 171 + icon_theme = adwaita 172 + title_height = 32 173 + title_position = 2 174 + title_align = 1 175 + border_size = 1 176 + border_color = \#3f3f3fff 177 + dynamic_border_color = false 178 + active_color = \#3f3f3fff 179 + attn_color = \#3f3f3fff 180 + inactive_color = \#6a6a6aff 181 + # button_order = minimize maximize close 182 + close_color = \#e67b7bff 183 + maximize_color = \#80ba63ff 184 + minimize_color = \#f5a868ff 185 + # sticky_color = \#00000000 # What sticky button? 186 + # button_always_colored = true 187 + 188 + [wm-actions] 189 + toggle_fullscreen = <super> KEY_F 190 + toggle_always_on_top = <super> KEY_S 191 + toggle_sticky = <super> <shift> KEY_S 192 + 193 + # [wobbly] 194 + # friction = 3.0 195 + # spring_k = 8.0 196 + # grid_resolution = 6 197 + 198 + [wrot] 199 + activate = <super> <ctrl> BTN_LEFT 200 + activate-3d = <super> <ctrl> BTN_RIGHT 201 + reset-one = <super> KEY_D 202 + reset = <super> <ctrl> KEY_D 203 + 204 + [wsets] 205 + wset_1 = <super> KEY_1 206 + wset_2 = <super> KEY_2 207 + wset_3 = <super> KEY_3 208 + wset_4 = <super> KEY_4 209 + wset_5 = <super> KEY_5 210 + wset_6 = <super> KEY_6 211 + wset_7 = <super> KEY_7 212 + wset_8 = <super> KEY_8 213 + wset_9 = <super> KEY_9 214 + send_to_wset_1 = <super> <shift> KEY_1 215 + send_to_wset_2 = <super> <shift> KEY_2 216 + send_to_wset_3 = <super> <shift> KEY_3 217 + send_to_wset_4 = <super> <shift> KEY_4 218 + send_to_wset_5 = <super> <shift> KEY_5 219 + send_to_wset_6 = <super> <shift> KEY_6 220 + send_to_wset_7 = <super> <shift> KEY_7 221 + send_to_wset_8 = <super> <shift> KEY_8 222 + send_to_wset_9 = <super> <shift> KEY_9 223 + # label_duration = 1000
+31
data/shellscripts/bemenu
··· 1 + #!/bin/sh 2 + # shellcheck source=/dev/null 3 + . "${XDG_CACHE_HOME:-$HOME/.cache}/thm/colors.sh" 4 + 5 + # shellcheck disable=SC2154 6 + exec /usr/bin/bemenu -i \ 7 + -w \ 8 + -m all \ 9 + -H 32 \ 10 + --ch 24 \ 11 + --cw 4 \ 12 + --hp 4 \ 13 + --fn "monospace 10" \ 14 + --tb "#${bg_color}" \ 15 + --tf "#${color5}" \ 16 + --fb "#${bg_color}" \ 17 + --ff "#${color5}" \ 18 + --nb "#${bg_color}" \ 19 + --nf "#${color8}" \ 20 + --hb "#${bg_color}" \ 21 + --hf "#${fg_color}" \ 22 + --fbb "#${color9}" \ 23 + --fbf "#${color9}" \ 24 + --sb "#${color9}" \ 25 + --sf "#${color9}" \ 26 + --ab "#${bg_color}" \ 27 + --af "#${color8}" \ 28 + --scb "#${color9}" \ 29 + --scf "#${color9}" \ 30 + --bdr "#${color9}" \ 31 + "$@"
+32
data/shellscripts/bemenu-run
··· 1 + #!/bin/sh 2 + # shellcheck source=/dev/null 3 + . "${XDG_CACHE_HOME:-$HOME/.cache}/thm/colors.sh" 4 + 5 + # shellcheck disable=SC2154 6 + exec /usr/bin/bemenu-run -i \ 7 + -w \ 8 + -p run: \ 9 + -m all \ 10 + -H 32 \ 11 + --ch 24 \ 12 + --cw 4 \ 13 + --hp 4 \ 14 + --fn "monospace 10" \ 15 + --tb "#${bg_color}" \ 16 + --tf "#${color5}" \ 17 + --fb "#${bg_color}" \ 18 + --ff "#${color5}" \ 19 + --nb "#${bg_color}" \ 20 + --nf "#${color8}" \ 21 + --hb "#${bg_color}" \ 22 + --hf "#${fg_color}" \ 23 + --fbb "#${color9}" \ 24 + --fbf "#${color9}" \ 25 + --sb "#${color9}" \ 26 + --sf "#${color9}" \ 27 + --ab "#${bg_color}" \ 28 + --af "#${color8}" \ 29 + --scb "#${color9}" \ 30 + --scf "#${color9}" \ 31 + --bdr "#${color9}" \ 32 + "$@"
+5
data/shellscripts/firefox
··· 1 + #!/bin/sh 2 + export HOMEWRAP_HOME="${XDG_STATE_HOME:-$HOME/.local/state}/homewrap/mozilla" 3 + [ -d "$HOMEWRAP_HOME" ] || mkdir -p "$HOMEWRAP_HOME" 4 + 5 + exec homewrap /usr/bin/firefox "$@"
+5
data/shellscripts/flatpak
··· 1 + #!/bin/sh 2 + export HOMEWRAP_HOME="${XDG_STATE_HOME:-$HOME/.local/state}/homewrap/flatpak" 3 + [ -d "$HOMEWRAP_HOME" ] || mkdir -p "$HOMEWRAP_HOME" 4 + 5 + exec homewrap /usr/bin/flatpak "$@"
+31
data/shellscripts/homewrap
··· 1 + #!/bin/sh 2 + # Some applications (namely java apps) get the home directory from /etc/passwd meaning that 3 + # we can't easily prevent these apps from writing in the home directory by changing the HOME env 4 + # var. Use bubblewrap to bind a random directory to /home/$USER instead. 5 + 6 + # Make sure we have a command to execute 7 + [ "$*" ] || { 8 + printf '%s\n' "Missing command to execute" 1>&2 9 + exit 1 10 + } 11 + 12 + # If HOMEWRAP_HOME isn't set, make our own and ensure that it exists 13 + : "${HOMEWRAP_HOME:=${XDG_STATE_HOME:-$HOME/.local/state}/homewrap/default}" 14 + mkdir -p "$HOMEWRAP_HOME" 15 + 16 + # Create sandbox with temporary home 17 + # This breaks if there is a broken symlink in the directory 18 + args="--dev-bind / / --dev-bind $HOMEWRAP_HOME $HOME " 19 + 20 + # Recreate the home directory 21 + for i in "$HOME/"* "$HOME/".* 22 + do 23 + case $i in 24 + "$HOME/." ) continue ;; 25 + "$HOME/.." ) continue ;; 26 + esac 27 + args="${args}--dev-bind $i $i " 28 + done 29 + 30 + # shellcheck disable=SC2086 31 + exec bwrap $args "$@"
+67
data/shellscripts/info-fetch
··· 1 + #!/bin/sh 2 + # Print some information about the system. This script was written with gentoo systems in mind. 3 + 4 + # Used Environment Variables 5 + # $SHELL 6 + # $USER 7 + 8 + # Used Files 9 + # /etc/os-release 10 + # /proc/sys/kernel/hostname 11 + # /proc/uptime 12 + # /proc/version 13 + 14 + # Get the hostname of the computer 15 + read -r hostname < /proc/sys/kernel/hostname 16 + 17 + # Source /etc/os-release if it exist 18 + # shellcheck source=/dev/null 19 + [ -f /etc/os-release ] && . /etc/os-release 20 + [ "$PRETTY_NAME" ] || PRETTY_NAME="Linux" 21 + 22 + # Get the kernel version 23 + read -r _ _ kernel_version _ < /proc/version 24 + 25 + # Read uptime 26 + read -r uptime _ < /proc/uptime 27 + 28 + # Remove extra percision 29 + up=${uptime%.*} 30 + 31 + # Calculate days, hours, minutes and seconds from the given output 32 + days=$((up / 86400)) 33 + hours=$(((up % 86400) / 3600)) 34 + min=$((((up % 86400) % 3600) / 60)) 35 + sec=$((((up % 86400) % 3600) % 60)) 36 + 37 + # Only display the value if it is not zero 38 + [ $days = 0 ] || dout="${days}d " 39 + [ $hours = 0 ] || hout="${hours}h " 40 + [ $min = 0 ] || mout="${min}m " 41 + [ $sec = 0 ] || sout="${sec}s" 42 + pretty_uptime="$dout$hout$mout$sout" 43 + 44 + # Calculate package count (Gentoo) 45 + set -- /var/db/pkg/*/* 46 + pkg_count=$# 47 + 48 + # Color Showcase 49 + for i in 0 1 2 3 4 5 6 7 50 + do 51 + normal_colors="$normal_colors\033[4${i}m\033[3${i}m " 52 + bright_colors="$bright_colors\033[10${i}m\033[9${i}m " 53 + done 54 + 55 + # Colors and Formatting 56 + color="\033[35;1m" 57 + nocolor="\033[m" 58 + underline="\033[4m" 59 + 60 + printf '%b\n' "\n$color$underline$USER$nocolor@$underline$color$hostname$nocolor" \ 61 + "${color}os$nocolor $PRETTY_NAME" \ 62 + "${color}ke$nocolor $kernel_version" \ 63 + "${color}up$nocolor $pretty_uptime" \ 64 + "${color}sh$nocolor ${SHELL##*/}" \ 65 + "${color}pk$nocolor $pkg_count\n" \ 66 + "$normal_colors$nocolor" \ 67 + "$bright_colors$nocolor\n"
+61
data/shellscripts/moulog
··· 1 + #!/bin/sh 2 + # A much better way to handle my logging 3 + 4 + #- Settings -# 5 + # Place to store log files 6 + : "${MOULOG_DIR:=${XDG_CACHE_HOME:-$HOME/.cache}/moulog}" 7 + # Max number of old dirs to keep 8 + : "${MOULOG_MAX:=5}" 9 + 10 + # TODO: Add option to name the log file. 11 + # As of right now, my wayfire logs aren't named anything related to wayfire. 12 + # This also extends to other logs. 13 + 14 + usage() { 15 + while read -r line 16 + do printf '%b\n' "$line" 17 + done <<-EOF 18 + ${0##*/} [options] [command] 19 + example: moulog -n 20 + example: moulog wlsunset -l 0 -L 0 21 + 22 + options: 23 + -h | --help - display this message 24 + -n | --new - create a new logging directory 25 + - useful if being run multiple times in the background 26 + 27 + environment vars: 28 + MOULOG_DIR - place to store logs (default: $XDG_CACHE_HOME/moulog) 29 + MOULOG_MAX - max number of old dirs to keep (default: 5) 30 + EOF 31 + 32 + exit "${1:-1}" 33 + } 34 + 35 + new_dir() { 36 + touch /tmp/moulog 37 + [ -d "$MOULOG_DIR.$MOULOG_MAX" ] && rm -r "$MOULOG_DIR.$MOULOG_MAX" 38 + 39 + i=$((MOULOG_MAX)) 40 + until [ $i = 1 ] 41 + do 42 + [ -d "$MOULOG_DIR.$((i-1))" ] && mv "$MOULOG_DIR.$((i-1))" "$MOULOG_DIR.$i" 43 + i=$((i-1)) 44 + done 45 + 46 + [ -d "$MOULOG_DIR" ] && mv "$MOULOG_DIR" "$MOULOG_DIR.1" 47 + mkdir -p "$MOULOG_DIR" 48 + } 49 + 50 + case $1 in 51 + -h|--help ) usage 0 ;; 52 + -n|--new ) new_dir; exit 0 ;; 53 + -N|--name ) program_name=$2; shift 2 ;; 54 + esac 55 + 56 + # Using this file to decide if a new directory should be made 57 + [ -f /tmp/moulog ] || new_dir 58 + 59 + 60 + printf '%s\n' "#### moulog start time: $(date +%s) ####" >> "$MOULOG_DIR/${program_name:=$1}.log" 61 + exec "$@" >> "$MOULOG_DIR/${program_name:=$1}.log" 2>&1
+41
data/shellscripts/powermenu
··· 1 + #!/bin/sh 2 + 3 + # Required Commands 4 + # bemenu - allow the user to pick options 5 + # loginctl - perform actions 6 + # pkill - send sway into idle state 7 + 8 + # Needs to be edited to work with either systemctl or loginctl 9 + 10 + prompt="powermenu" 11 + options="hibernate\\nhybrid-sleep\\nlock\\npoweroff\\nreboot\\nsuspend\\nsuspend-then-hibernate" 12 + 13 + confirm() { 14 + c_prompt="Are you sure? [$action]" 15 + c_input=$(printf '%b' "yes\\nno" | bemenu -p "$c_prompt") 16 + 17 + # Prevents selecting yes instantly waking up from suspend 18 + sleep 1 19 + 20 + case $c_input in 21 + Y*|y* ) return 0 ;; 22 + N*|n* ) exit 0 ;; 23 + * ) exit 1 ;; 24 + esac 25 + } 26 + 27 + sleep_task() { 28 + pkill -USR1 swayidle 29 + } 30 + 31 + action=$(printf '%b' "$options" | bemenu -p "$prompt") 32 + case $action in 33 + hibernate ) confirm; loginctl hibernate ;; 34 + hybrid-sleep ) confirm; loginctl hybrid-sleep ;; 35 + lock ) confirm; loginctl lock-session ;; 36 + poweroff ) confirm; loginctl poweroff ;; 37 + reboot ) confirm; loginctl reboot ;; 38 + suspend ) confirm; loginctl suspend ;; 39 + suspend-then-hibernate ) confirm; loginctl suspend-then-hibernate ;; 40 + * ) exit 1 ;; 41 + esac
+6
data/shellscripts/scp
··· 1 + #!/bin/sh 2 + SSH_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/ssh/config" 3 + SSH_ID="${XDG_DATA_HOME:-$HOME/.local/share}/ssh/id_ed25519" 4 + 5 + export TERM=xterm-256color 6 + exec /usr/bin/scp -F "$SSH_CONFIG" -i "$SSH_ID" "$@"
+6
data/shellscripts/ssh
··· 1 + #!/bin/sh 2 + SSH_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/ssh/config" 3 + SSH_ID="${XDG_DATA_HOME:-$HOME/.local/share}/ssh/id_ed25519" 4 + 5 + export TERM=xterm-256color 6 + exec /usr/bin/ssh -F "$SSH_CONFIG" -i "$SSH_ID" "$@"
+17
data/shellscripts/steam
··· 1 + #!/bin/sh 2 + 3 + # Steam allows account switching now 4 + # case $1 in 5 + # b|blanklily ) S_HOME="blanklily"; shift ;; 6 + # c|crazykill_97 ) S_HOME="crazykill_97"; shift ;; 7 + # * ) S_HOME="blanklily" ;; 8 + # esac 9 + 10 + export HOMEWRAP_HOME="${XDG_STATE_HOME:-$HOME/.local/state}/homewrap/valve" 11 + [ -d "$HOMEWRAP_HOME" ] || mkdir -p "$HOMEWRAP_HOME" 12 + 13 + [ -f "${XDG_DATA_HOME:-$HOME/.local/share}/Steam/bootstrap.tar.xz" ] \ 14 + && rm -f "${XDG_DATA_HOME:-$HOME/.local/share}/Steam/bootstrap.tar.xz" 15 + 16 + export SDL_VIDEODRIVER=x11 17 + exec homewrap /usr/bin/steam "$@"
+13
data/shellscripts/wl
··· 1 + #!/bin/sh 2 + # Start new logging directory 3 + # moulog -n 4 + 5 + # Pick Wayland Compositor 6 + case $1 in 7 + wayfire|w ) 8 + export QT_QPA_PLATFORMTHEME=gnome 9 + export XDG_CURRENT_DESKTOP=Wayfire 10 + export XDG_SESSION_TYPE=wayland 11 + # exec moulog -N compositor dbus-run-session wayfire ;; 12 + exec dbus-run-session wayfire ;; 13 + esac
+38
data/shellscripts/wl-post
··· 1 + #!/bin/sh 2 + # Post startup script for wayland compositors 3 + 4 + # TODO: find a more standard way to autostart applications 5 + # https://wiki.archlinux.org/title/XDG_Autostart 6 + # https://specifications.freedesktop.org/autostart-spec/autostart-spec-latest.html 7 + 8 + # # Dbus (atleast with elogind) doesn't get updated environment variables causing 9 + # # some applications (like mako) to not autostart. 10 + # # moulog -N dbus-env dbus-update-activation-environment --all --systemd & 11 + # dbus-update-activation-environment --all --systemd & 12 + 13 + # # Configure displays 14 + # # moulog -N output-manager kanshi & 15 + # kanshi & 16 + 17 + # # Set idle actions 18 + # swayidle timeout 900 swaylock & 19 + 20 + # # Set a wallpaper 21 + # # moulog -N wallpaper swaybg \ 22 + # # -i "${HOME}/misc/syncthing/media/images/wallpapers/dark/evie-s-Pb1KFv4tauY-unsplash.jpg" \ 23 + # # -m fill & 24 + # swaybg \ 25 + # -i "${HOME}/misc/syncthing/media/images/wallpapers/dark/evie-s-Pb1KFv4tauY-unsplash.jpg" \ 26 + # -m fill & 27 + 28 + # # Nightlight 29 + # # moulog -N blue-light-filter wlsunset -l 33.9 -L -84.5 & 30 + # wlsunset -l 33.9 -L -84.5 & 31 + 32 + # # Syncthing 33 + # # moulog -N sync syncthing -no-browser & 34 + # syncthing -no-browser & 35 + 36 + # # Panel 37 + # moulog -N panel waybar & 38 + # waybar &
-5
home/bin/audacity
··· 1 - #!/bin/sh 2 - export HOME="/home/mou/tmp/homes/audacity" 3 - 4 - [ -d "$HOME" ] || mkdir -p "$HOME" 5 - exec /usr/bin/audacity "$@"
-125
home/bin/autokupdate
··· 1 - #!/bin/sh 2 - # Automatically configure the kernel using a configure script. This script 3 - # is meant to run as the root user. This script will not touch the kernel 4 - # symlink and will build the kernel located at /usr/src/linux (AKU_DIR). 5 - # Script inspired by https://github.com/gg7/gentoo-kernel-guide 6 - 7 - # What it does 8 - # - Generates the default config 9 - # - Runs the config script $HOME/kernel-config.sh (AKU_CONFIG_SCRIPT) 10 - # - $HOME in this case should be the root user's home directory (usually /root) 11 - # - If the script does not exist, the script will exit immediately 12 - # - A sample of of a kernel-config.sh can be found in my dotfiles at 13 - # GitLab (https://gitlab.com/yemou/setup/-/blob/laptop/gentoo/root/kernel-config.sh) or 14 - # GitHub (https://github.com/yemouu/setup/blob/laptop/gentoo/root/kernel-config.sh) 15 - # - Compiles the kernel 16 - # - Copies bzImage to it's dest dir /boot/EFI/Gentoo/bzImage (AKU_DEST) 17 - # - If a file is already at this location, a backup will be made 18 - # within the directory 19 - # - If the AKU_DEST is set to `none` kernel files will not be copied 20 - 21 - # TODO: 22 - # Remove stuff specific to Gentoo 23 - # Make it easier for the user to modify install behaviour 24 - # Make script more readable 25 - 26 - # Exit on error 27 - set -e 28 - 29 - # Set default values if environment variables aren't set 30 - : "${AKU_CONFIG_SCRIPT:=$HOME/kernel-config.sh}" 31 - : "${AKU_DIR:=/usr/src/linux}" 32 - : "${AKU_DEST:=/boot/EFI/Gentoo}" 33 - 34 - info() { printf '%s\n' "${0##*/}: $*"; } 35 - warn() { printf '%s\n' "${0##*/}: $*" 1>&2; } 36 - erro() { printf '%s\n' "${0##*/}: $*" 1>&2; exit 1; } 37 - 38 - # Sanity Checks 39 - [ -x "$AKU_CONFIG_SCRIPT" ] || { erro "$AKU_CONFIG_SCRIPT: doesn't exist or isn't an executable"; } 40 - [ -d "$AKU_DIR" ] || { erro "$AKU_DIR: does not exist"; } 41 - 42 - # Check for `portageq` 43 - command -v portageq > /dev/null 2>&1 && AKU_PORTAGEQ=1 44 - 45 - # Set MAKEOPTS if not already set 46 - [ "$MAKEOPTS" ] || 47 - { [ "$AKU_PORTAGEQ" ] && MAKEOPTS="$(portageq envvar MAKEOPTS)" || MAKEOPTS="=j$(nproc)"; } 48 - 49 - # If CC is set to clang in portage, enable LLVM, but 50 - # if LLVM is already set, don't change it. (LLVM_IAS is default to on if LLVM is on) 51 - [ "$AKU_PORTAGEQ" = 1 ] && 52 - case $(portageq envvar CC) in 53 - *clang* ) 54 - : "${LLVM=1}" 55 - export LLVM 56 - esac 57 - 58 - info "Changing directory ($AKU_DIR)..." 59 - cd "$AKU_DIR" 60 - 61 - info Cleaning build directory... 62 - # Clean any residue. Not doing this can sometimes cause errors when rebuilding 63 - # shellcheck disable=SC2086 64 - make ${MAKEOPTS} clean 65 - 66 - info Applying default kernel configuration... 67 - # Generate default config 68 - # shellcheck disable=SC2086 69 - make ${MAKEOPTS} defconfig 70 - 71 - info "Applying user's kernel configuration ($AKU_CONFIG_SCRIPT)..." 72 - # Run user's kernel configuration script 73 - "$AKU_CONFIG_SCRIPT" 74 - 75 - info Validating kernel configuration... 76 - # Validate and fix the .config 77 - # shellcheck disable=SC2086 78 - make ${MAKEOPTS} olddefconfig 79 - 80 - info Compiling kernel... 81 - # Compile the kenrel 82 - # shellcheck disable=SC2086 83 - make ${MAKEOPTS} 84 - 85 - info Installing kernel modules... 86 - # Install kernel modules 87 - # shellcheck disable=SC2086 88 - make ${MAKEOPTS} modules_install 89 - 90 - command -v emerge > /dev/null 2>&1 && { 91 - info Rebuilding kernel module packages... 92 - # Rebuilding kernel module packages 93 - emerge @module-rebuild 94 - } 95 - 96 - [ "$AKU_DEST" = "none" ] || { 97 - # Edit this to work for how you want your kernels managed 98 - # I may just run another external script or just the config script with an argument 99 - 100 - info "Moving kernel to destination ($AKU_DEST)..." 101 - # Ensure the destination directory exist 102 - mkdir -p "$AKU_DEST" 103 - 104 - 105 - kernel_version=$(make kernelversion) 106 - 107 - update_boot_entries=1 108 - [ -e "$AKU_DEST/bzImage-$kernel_version" ] && update_boot_entries=0 109 - 110 - # Copy new kernel to destination 111 - cp "$AKU_DIR/arch/x86/boot/bzImage" "$AKU_DEST/bzImage-$kernel_version" 112 - 113 - [ "$update_boot_entries" = 0 ] && exit 114 - 115 - command -v efibootmgr > /dev/null 2>&1 && { 116 - efibootmgr -c -d /dev/nvme0n1 -p 1 \ 117 - -L "Gentoo GLIBC $kernel_version" -l "/EFI/Gentoo/bzImage-$kernel_version" \ 118 - -u 'rootflags=subvolid=552' > /dev/null 119 - 120 - efibootmgr -c -d /dev/nvme0n1 -p 1 \ 121 - -L "Gentoo MUSL $kernel_version" -l "/EFI/Gentoo/bzImage-$kernel_version" \ 122 - -u 'rootflags=subvolid=256' > /dev/null 123 - 124 - } 125 - }
-23
home/bin/bemenu
··· 1 - #!/bin/sh 2 - . "${XDG_CACHE_HOME}/thm/colors.sh" 3 - 4 - # It looks like transparency set here is stacked ontop of eachother? 5 - # sb/sf/scb/scf don't seem to change anything 6 - exec /usr/bin/bemenu -i \ 7 - -w \ 8 - -m all \ 9 - -H 32 \ 10 - --fn "monospace 10" \ 11 - --tb "#${bg_color}" \ 12 - --tf "#${color5}" \ 13 - --fb "#${bg_color}" \ 14 - --ff "#${color5}" \ 15 - --nb "#${bg_color}" \ 16 - --nf "#${color8}" \ 17 - --hb "#${bg_color}" \ 18 - --hf "#${fg_color}" \ 19 - --sb "#${color9}" \ 20 - --sf "#${color9}" \ 21 - --scb "#${color9}" \ 22 - --scf "#${color9}" \ 23 - "$@"
-24
home/bin/bemenu-run
··· 1 - #!/bin/sh 2 - . "${XDG_CACHE_HOME}/thm/colors.sh" 3 - 4 - # It looks like transparency set here is stacked ontop of eachother? 5 - # sb/sf/scb/scf don't seem to change anything 6 - exec /usr/bin/bemenu-run -i \ 7 - -w \ 8 - -p run: \ 9 - -m all \ 10 - -H 32 \ 11 - --fn "monospace 10" \ 12 - --tb "#${bg_color}" \ 13 - --tf "#${color5}" \ 14 - --fb "#${bg_color}" \ 15 - --ff "#${color5}" \ 16 - --nb "#${bg_color}" \ 17 - --nf "#${color8}" \ 18 - --hb "#${bg_color}" \ 19 - --hf "#${fg_color}" \ 20 - --sb "#${color9}" \ 21 - --sf "#${color9}" \ 22 - --scb "#${color9}" \ 23 - --scf "#${color9}" \ 24 - "$@"
-6
home/bin/carla
··· 1 - #!/bin/sh 2 - 3 - case $1 in 4 - -- ) shift; exec /usr/bin/carla "$@" ;; 5 - * ) exec /usr/bin/carla "$@" "${HOME}/cfg/carla/desktop.carxp" ;; 6 - esac
-5
home/bin/catnip
··· 1 - #!/bin/sh 2 - 3 - exec /usr/bin/catnip -b parec \ 4 - -d "$(pactl info | grep Default\ Sink | awk '{print $3}').monitor" \ 5 - "$@"
-39
home/bin/dwrap
··· 1 - #!/bin/sh 2 - # Run an application inside another distro 3 - 4 - # Make sure we have a command to execute 5 - [ "$*" ] || { 6 - printf '%s\n' "Missing command to execute" 1>&2 7 - exit 1 8 - } 9 - 10 - # There is no sane default for this 11 - [ "$DWRAP_DISTRO" ] || 12 - { printf '%s\n' "Missing distro. Set DWRAP_DISTRO" 1>&2; exit 1; } 13 - 14 - # Directory where rootfs are stored 15 - : "${DWRAP_ROOTFS_DIR:=/mnt}" 16 - 17 - # Directories to use from the host machine 18 - : "${DWRAP_FROM_HOST:=dev home media mnt proc root run sys tmp}" 19 - 20 - # Directories to use from the ROOTFS 21 - : "${DWRAP_FROM_ROOTFS:=bin etc lib lib64 opt sbin usr var}" 22 - 23 - rootfs="$DWRAP_ROOTFS_DIR/$DWRAP_DISTRO" 24 - 25 - # Populate the sandbox with host dirs 26 - for i in $DWRAP_FROM_HOST 27 - do args="${args}--dev-bind /$i /$i " 28 - done 29 - 30 - # Populate the sandbox with rootfs dirs 31 - for i in $DWRAP_FROM_ROOTFS 32 - do args="${args}--dev-bind $rootfs/$i /$i " 33 - done 34 - 35 - # Set these environment variables so my scripts and such know their environment 36 - args="${args}--setenv DWRAP_CURRENT_DISTRO $DWRAP_DISTRO --setenv DWRAP_WITHIN_SANDBOX true " 37 - 38 - # shellcheck disable=SC2086 39 - exec bwrap $args "$@"
-13
home/bin/ffp
··· 1 - #!/bin/sh 2 - # Script to launch a specific firefox profile 3 - 4 - # I don't have firefox store data at the root of my homedir 5 - HOMEWRAP_HOME="/home/mou/tmp/homes/mozilla" 6 - 7 - profile_location="$HOMEWRAP_HOME/.mozilla" 8 - profile="$(grep Name= $profile_location/firefox/profiles.ini | sed 's/Name=//' | sort | 9 - bemenu -p 'Pick a profile:')" 10 - 11 - [ -z "$profile" ] && exit 12 - 13 - exec moulog firefox -P "$profile"
-14
home/bin/firefox
··· 1 - #!/bin/sh 2 - export HOMEWRAP_HOME="$HOME/tmp/homes/mozilla" 3 - [ -d "$HOMEWRAP_HOME" ] || mkdir -p "$HOMEWRAP_HOME" 4 - 5 - case $DWRAP_DISTRO in 6 - gentoo-glibc ) cmd=/usr/bin/firefox-bin ;; 7 - * ) cmd=/usr/bin/firefox ;; 8 - esac 9 - 10 - # If this directory doesn't exist we are inside our glibc chroot 11 - if [ "$DWRAP_WITHIN_SANDBOX" = true ] 12 - then exec homewrap $cmd -P drm "$@" 13 - else exec homewrap $cmd "$@" 14 - fi
-15
home/bin/gexec
··· 1 - #!/bin/sh 2 - # Script to chroot into the glibc chroot (/mnt/glibc64) and launch an application 3 - # This script is symlinked to /usr/local/bin to easily be run by root/sudo 4 - 5 - [ "$1" ] || { printf '%s\n' "${0##*/} requires a command to launch"; exit 1; } 6 - 7 - # Check that the chroot is setup and set it up if it isn't 8 - ghroot m /mnt/void 9 - 10 - TERM=xterm-256color 11 - 12 - GEXEC_ENV="XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-1 XDG_SESSION_TYPE=wayland" 13 - GEXEC_ENV="$GEXEC_ENV DISPLAY=:0" 14 - 15 - chroot /mnt/void su -c "$GEXEC_ENV $*" - mou
-104
home/bin/ghroot
··· 1 - #!/bin/sh 2 - # Mount what is needed for a chroot 3 - 4 - usage() { 5 - printf '%b\n' "usage: ${0##*/} command chroot_directory" \ 6 - "Commads:" \ 7 - "\tmount - setup the chroot" \ 8 - "\tumount - unmount the chroot" 9 - } 10 - 11 - info() { 12 - printf '%b\n' "${0##*/}: $1" 1>&2 13 - } 14 - 15 - ghroot_check() { 16 - # Return 0 if we haven't already setup the chroot 17 - touch /tmp/ghroot 18 - grep -q "$1" /tmp/ghroot && return 1 || return 0 19 - } 20 - 21 - ghroot_mount() { 22 - # If an entry in /etc/fstab exist for this location, mount it. 23 - # Otherwise create a rbind mount 24 - mount "$1" || mount -B "$1" "$1" 25 - 26 - # Mount what is necessary for the chroot 27 - mount -t proc /proc "$1/proc" || { info "failed to mount /proc to $1/proc"; exit 1; } 28 - # shellcheck disable=SC2015 29 - mount -R /sys "$1/sys" \ 30 - && mount --make-rslave "$1/sys" \ 31 - || { info "failed to mount /sys to $1/sys"; exit 1; } 32 - # shellcheck disable=SC2015 33 - mount -R /dev "$1/dev" \ 34 - && mount --make-rslave "$1/dev" \ 35 - || { info "failed to mount /dev to $1/dev"; exit 1; } 36 - 37 - # These are some extra stuff we can mount to get things like audio to work from the chroot 38 - mount -R /run "$1/run" || { info "failed to mount /run to $1/run"; exit 1; } 39 - mount -R /tmp "$1/tmp" || { info "failed to mount /tmp to $1/tmp"; exit 1; } 40 - 41 - # Mount any home directories 42 - for home in /home/* 43 - do 44 - mkdir -p "$1/$home" 45 - mount -R "$home" "$1/$home" || { 46 - info "failed to mount $home to $1/$home" 47 - exit 1 48 - } 49 - done 50 - 51 - # Mount any drives from /etc/fstab 52 - while read -r check_comment mount_point _ 53 - do 54 - case $check_comment in \#* ) continue ;; esac 55 - case $mount_point in 56 - # Don't do an automatic mount for the chroot itself. We already did this 57 - $1* ) [ "$mount_point" != "$1" ] && mount "$mount_point" ;; 58 - * ) continue ;; 59 - esac 60 - done < /etc/fstab 61 - 62 - printf '%s\n' "$1" >> /tmp/ghroot 63 - } 64 - 65 - ghroot_umount() { 66 - # Unmount everything 67 - umount -R "$1/proc" || { info "failed to unmount $1/proc"; } 68 - umount -R "$1/sys" || { info "failed to unmount $1/sys"; } 69 - umount -R "$1/dev" || { info "failed to unmount $1/dev"; } 70 - 71 - umount -R "$1/run" || { info "failed to unmount $1/run"; } 72 - umount -R "$1/tmp" || { info "failed to unmount $1/tmp"; } 73 - 74 - for home in /home/* 75 - do 76 - umount -R "$1/$home" || { info "failed to unmount $1/$home"; } 77 - done 78 - 79 - while read -r check_comment mount_point _ 80 - do 81 - case $check_comment in \#* ) continue ;; esac 82 - case $mount_point in 83 - # Don't unmount the chroot itself. We do this later 84 - $1* ) [ "$mount_point" != "$1" ] && umount -R "$mount_point" ;; 85 - * ) continue ;; 86 - esac 87 - done < /etc/fstab 88 - 89 - umount -R "$1" 90 - 91 - # Deletes the line number the chroot is on 92 - sed "$(grep -n "$1" /tmp/ghroot | sed 's/:.*/d;/' | tr -d '\n' | sed 's/;$//')" \ 93 - /tmp/ghroot > /tmp/ghrootn 94 - mv /tmp/ghrootn /tmp/ghroot 95 - } 96 - 97 - [ "$2" ] || { info "2 arguments required"; usage; exit 1; } 98 - [ -d "$2" ] || { info "$2: directory does not exist"; exit 1; } 99 - [ "$2" = "/" ] && { info "$2: refusing to operate over /"; exit 1; } 100 - 101 - case $1 in 102 - mount|m ) ghroot_check "${2%/}" && ghroot_mount "${2%/}" ;; 103 - umount|u ) ghroot_check "${2%/}" || ghroot_umount "${2%/}" ;; 104 - esac
-3
home/bin/google-chrome
··· 1 - #!/bin/sh 2 - 3 - exec gwrap google-chrome-stable --enable-features=UseOzonePlatform --ozone-platform=wayland "$@"
-24
home/bin/gwrap
··· 1 - #!/bin/sh 2 - # Create an environment for glibc applications to run (without root permissions) 3 - 4 - # Make sure we have a command to execute 5 - [ "$*" ] || { 6 - printf '%s\n' "Missing command to execute" 1>&2 7 - exit 1 8 - } 9 - 10 - export DWRAP_DISTRO="gentoo-glibc" 11 - 12 - export DWRAP_FROM_HOST="dev home media mnt proc root run sys" 13 - export DWRAP_FROM_ROOTFS="bin etc lib lib64 opt sbin tmp usr var" 14 - 15 - #case $1 in --rootfs-run|-r) 16 - # shift 17 - # 18 - # export DWRAP_FROM_HOST="dev home proc sys" 19 - # export DWRAP_FROM_ROOTFS="bin etc lib lib64 opt run sbin tmp usr var" 20 - # 21 - # exec dwrap --dev-bind /run/NetworkManager/resolv.conf /resolv.conf "$@" 22 - #;; esac 23 - 24 - exec dwrap --ro-bind /etc/resolv.conf /etc/resolv.conf "$@"
-31
home/bin/homewrap
··· 1 - #!/bin/sh 2 - # Some applications (namely java apps) get the home directory from /etc/passwd meaning that 3 - # we can't easily prevent these apps from writing in the home directory by changing the HOME env 4 - # var. Use bubblewrap to bind a random directory to /home/$USER instead. 5 - 6 - # Make sure we have a command to execute 7 - [ "$*" ] || { 8 - printf '%s\n' "Missing command to execute" 1>&2 9 - exit 1 10 - } 11 - 12 - # If HOMEWRAP_HOME isn't set, make our own and ensure that it exists 13 - [ "$HOMEWRAP_HOME" ] || HOMEWRAP_HOME="$HOME/tmp/homes/fakehome" 14 - mkdir -p "$HOMEWRAP_HOME" 15 - 16 - # Create sandbox with temporary home 17 - args="--dev-bind / / --dev-bind $HOMEWRAP_HOME $HOME " 18 - 19 - # Recreate the home directory 20 - for i in "$HOME/"* "$HOME/".* 21 - do 22 - case $i in 23 - "$HOME/." ) continue ;; 24 - "$HOME/.." ) continue ;; 25 - esac 26 - args="${args}--dev-bind $i $i " 27 - done 28 - 29 - # shellcheck disable=SC2086 30 - exec bwrap $args "$@" 31 -
-66
home/bin/info-fetch
··· 1 - #!/bin/sh 2 - # Print some information about the system. This script was written with gentoo systems in mind. 3 - 4 - # Used Environment Variables 5 - # $SHELL 6 - # $USER 7 - 8 - # Used Files 9 - # /etc/os-release 10 - # /proc/sys/kernel/hostname 11 - # /proc/uptime 12 - # /proc/version 13 - 14 - # Get the hostname of the computer 15 - read -r hostname < /proc/sys/kernel/hostname 16 - 17 - # Source /etc/os-release if it exist 18 - [ -f /etc/os-release ] && . /etc/os-release 19 - [ "$PRETTY_NAME" ] || PRETTY_NAME="Linux" 20 - 21 - # Get the kernel version 22 - read -r _ _ kernel_version _ < /proc/version 23 - 24 - # Read uptime 25 - read -r uptime _ < /proc/uptime 26 - 27 - # Remove extra percision 28 - up=${uptime%.*} 29 - 30 - # Calculate days, hours, minutes and seconds from the given output 31 - days=$((up / 86400)) 32 - hours=$(((up % 86400) / 3600)) 33 - min=$((((up % 86400) % 3600) / 60)) 34 - sec=$((((up % 86400) % 3600) % 60)) 35 - 36 - # Only display the value if it is not zero 37 - [ $days = 0 ] || dout="${days}d " 38 - [ $hours = 0 ] || hout="${hours}h " 39 - [ $min = 0 ] || mout="${min}m " 40 - [ $sec = 0 ] || sout="${sec}s" 41 - pretty_uptime="$dout$hout$mout$sout" 42 - 43 - # Calculate package count (Gentoo) 44 - set -- /var/db/pkg/*/* 45 - pkg_count=$# 46 - 47 - # Color Showcase 48 - for i in 0 1 2 3 4 5 6 7 49 - do 50 - normal_colors="$normal_colors\033[4${i}m\033[3${i}m " 51 - bright_colors="$bright_colors\033[10${i}m\033[9${i}m " 52 - done 53 - 54 - # Colors and Formatting 55 - color="\033[35;1m" 56 - nocolor="\033[m" 57 - underline="\033[4m" 58 - 59 - printf '%b\n' "\n$color$underline$USER$nocolor@$underline$color$hostname$nocolor" \ 60 - "${color}os$nocolor $PRETTY_NAME" \ 61 - "${color}ke$nocolor $kernel_version" \ 62 - "${color}up$nocolor $pretty_uptime" \ 63 - "${color}sh$nocolor ${SHELL##*/}" \ 64 - "${color}pk$nocolor $pkg_count\n" \ 65 - "$normal_colors$nocolor" \ 66 - "$bright_colors$nocolor\n"
-160
home/bin/kupdater
··· 1 - #!/bin/sh 2 - # This script is made for Gentoo systems running EFISTUB but could be adapted 3 - # for other systems 4 - 5 - # Required commands: 6 - # cp - copy compiled kernel to destination aswell as making a backup of the current kernel 7 - # make - needed for perform clean, olddefconfig, menuconfig and to compile the kernel source 8 - # nproc - find amount of cpu threads available if $KUPDATER_MAKEOPTS isn't specified 9 - # zcat - copy currently running kernel config for use in new kernel 10 - # you will also need whatever is required to compile the kernel 11 - 12 - # Exit the script on error 13 - set -e 14 - 15 - # Compile kernel with LLVM toolchain 16 - export LLVM=1 LLVM_IAS=1 17 - 18 - # If these variables are not set, set them 19 - [ "$KUPDATER_SRC_DIR" ] || KUPDATER_SRC_DIR=/usr/src/linux 20 - [ "$KUPDATER_MAKEOPTS" ] || KUPDATER_MAKEOPTS="-j$(nproc)" 21 - [ "$KUPDATER_DEST_DIR" ] || KUPDATER_DEST_DIR=/boot/EFI/Gentoo 22 - [ "$KUPDATER_NAME" ] || KUPDATER_NAME=bzImage 23 - 24 - # Make sure the required directories are present before continuing 25 - [ -d "$KUPDATER_SRC_DIR" ] || { info f "$KUPDATER_SRC_DIR not found" 1>&2; exit 1; } 26 - [ -d "$KUPDATER_DEST_DIR" ] || { info f "$KUPDATER_DEST_DIR not found" 1>&2; exit 1; } 27 - 28 - # Usage statement 29 - usage() { 30 - printf '%s\n' "usage: ${0##*/} [options]" \ 31 - "options:" \ 32 - " -a - do not move kernel to \$KUPDATER_DEST_DIR" \ 33 - " -b - do not make a backup kernel" \ 34 - " -c - do not compile the kernel" \ 35 - " -e - edit kernel config (menuconfig)" \ 36 - " -h - display this message" \ 37 - " -l - set LLVM=0 LLVM_IAS=0" \ 38 - " -o - do not apply old kernel config" \ 39 - " -r - rollback the last update" \ 40 - " -s script - configure kernel with a script (disables -o)" 41 - } 42 - 43 - # Print status messages to the terminal 44 - info() { 45 - case $1 in 46 - f ) m="!!"; c="\033[31;1m" ;; 47 - i ) m="**"; c="\033[32;1m" ;; 48 - w ) m="??"; c="\033[33;1m" ;; 49 - esac; shift 50 - 51 - printf "$c%s\033[m %s\n" "$m" "$*" 52 - } 53 - 54 - # Restore the old kernel as the main kernel. This will keep the old kernel as a backup. 55 - kup_restore() { 56 - info i "cp $KUPDATER_DEST_DIR/$KUPDATER_NAME.bak $KUPDATER_DEST_DIR/$KUPDATER_NAME" 57 - cp "$KUPDATER_DEST_DIR/$KUPDATER_NAME.bak" "$KUPDATER_DEST_DIR/$KUPDATER_NAME" || \ 58 - { info f "failed to backup kernel" 1>&2; exit 1; } 59 - } 60 - 61 - # Preform some setup on the source 62 - kup_setup() { 63 - # Very rarely, compiling the kernel will fail without a clean 64 - info i "make clean" 65 - make clean || { info f "make clean failed" 1>&2; } 66 - 67 - # Check for old configuration here 68 - [ -e /proc/config.gz ] || { 69 - info f "/proc/config.gz does not exist." 1>&2 70 - info w "The current kernel was most likely compiled without support for" 1>&2 71 - info w "IKCONFIG and IKCONFIG_PROC. Skipping application of old kernel" 1>&2 72 - info w "config." 1>&2 73 - return 1 74 - } 75 - 76 - # Apply old kernel configuration 77 - info i "zcat /proc/config.gz > $KUPDATER_SRC_DIR/.config" 78 - zcat /proc/config.gz > "$KUPDATER_SRC_DIR/.config" 79 - 80 - info i "make olddefconfig" 81 - make olddefconfig || { info f "failed to apply old kernel config" 1>&2; exit 1; } 82 - } 83 - 84 - # Allow the user to configure the kernel before compilation 85 - kup_configure() { 86 - info i "make menuconfig" 87 - make menuconfig || { info f "configuration failed" 1>&2; exit 1; } 88 - } 89 - 90 - # Compile the kernel 91 - kup_compile() { 92 - info i "make $KUPDATER_MAKEOPTS" 93 - # shellcheck disable=SC2086 94 - # This is favorable here 95 - make $KUPDATER_MAKEOPTS || { info f "failed to compile the kernel" 1>&2; exit 1; } 96 - } 97 - 98 - # Move current kernel to a backup location 99 - kup_backup() { 100 - info i "cp $KUPDATER_DEST_DIR/$KUPDATER_NAME $KUPDATER_DEST_DIR/$KUPDATER_NAME.bak" 101 - cp "$KUPDATER_DEST_DIR/$KUPDATER_NAME" "$KUPDATER_DEST_DIR/$KUPDATER_NAME.bak" || \ 102 - { info f "failed to backup kernel" 1>&2; exit 1; } 103 - } 104 - 105 - # Move new kernel to the correct location 106 - kup_apply() { 107 - info i "cp $KUPDATER_SRC_DIR/arch/x86/boot/bzImage" "$KUPDATER_DEST_DIR" 108 - cp "$KUPDATER_SRC_DIR/arch/x86/boot/bzImage" "$KUPDATER_DEST_DIR" || \ 109 - { info f "failed to move new kernel" 1>&2; exit 1; } 110 - } 111 - 112 - # Handle arguments 113 - while [ "$*" ] 114 - do 115 - # Make sure argument start with '-' and is atleast 2 characters long 116 - case $1 in 117 - - ) shift; continue ;; 118 - -- ) shift; break ;; 119 - -* ) flag=${1#-}; shift ;; 120 - * ) shift; continue ;; 121 - esac 122 - 123 - # Split the argument into letters to get options 124 - while [ "$flag" ] 125 - do 126 - arg=${flag%${flag#?}} 127 - 128 - case $arg in 129 - a ) kup_skip_apply=true; shift ;; 130 - b ) kup_skip_backup=true; shift ;; 131 - c ) kup_skip_compile=true; shift ;; 132 - e ) kup_edit_cfg=true; shift ;; 133 - h ) usage; exit 0 ;; 134 - s ) kup_cfg_script=$1; shift ;; 135 - l ) export LLVM=0 LLVM_IAS=0; shift ;; 136 - o ) kup_skip_setup=true; shift ;; 137 - r ) kup_rollback=true; shift ;; 138 - * ) printf '%s\n' "${0##*/}: -$arg: is an invalid argument" 1>&2 139 - usage 1>&2; exit 1 ;; 140 - esac 141 - 142 - flag=${flag#?} 143 - done 144 - done 145 - 146 - 147 - # Launch script functions based on options 148 - # If rollback is specified, we shouldn't try to do anything else 149 - [ $kup_rollback ] && { kup_restore; exit 0; } 150 - 151 - # Change directories into $KUPDATER_SRC_DIR 152 - info i "cd $KUPDATER_SRC_DIR" 153 - cd "$KUPDATER_SRC_DIR" || { info f "failed to enter directory $KUPDATER_SRC_DIR" 1>&2; exit 1; } 154 - 155 - [ $kup_skip_setup ] || kup_setup 156 - [ $kup_edit_cfg ] && kup_configure 157 - [ "$kup_cfg_script" ] && { [ -x "$kup_cfg_script" ] && "$kup_cfg_script" || exit 1; } 158 - [ $kup_skip_compile ] || kup_compile 159 - [ $kup_skip_backup ] || kup_backup 160 - [ $kup_skip_apply ] || kup_apply
-56
home/bin/moulog
··· 1 - #!/bin/sh 2 - # A much better way to handle my logging 3 - 4 - #- Settings -# 5 - # Place to store log files 6 - : "${MOULOG_DIR:=${XDG_CACHE_HOME:-$HOME/.cache}/moulog}" 7 - # Max number of old dirs to keep 8 - : "${MOULOG_MAX:=5}" 9 - 10 - usage() { 11 - while read -r line 12 - do printf '%b\n' "$line" 13 - done <<-EOF 14 - ${0##*/} [options] [command] 15 - example: moulog -n 16 - example: moulog wlsunset -l 0 -L 0 17 - 18 - options: 19 - -h | --help - display this message 20 - -n | --new - create a new logging directory 21 - - useful if being run multiple times in the background 22 - 23 - environment vars: 24 - MOULOG_DIR - place to store logs (default: $XDG_CACHE_HOME/moulog) 25 - MOULOG_MAX - max number of old dirs to keep (default: 5) 26 - EOF 27 - 28 - exit "${1:-1}" 29 - } 30 - 31 - new_dir() { 32 - touch /tmp/moulog 33 - [ -d "$MOULOG_DIR.$MOULOG_MAX" ] && rm -r "$MOULOG_DIR.$MOULOG_MAX" 34 - 35 - i=$((MOULOG_MAX)) 36 - until [ $i = 1 ] 37 - do 38 - [ -d "$MOULOG_DIR.$((i-1))" ] && mv "$MOULOG_DIR.$((i-1))" "$MOULOG_DIR.$i" 39 - i=$((i-1)) 40 - done 41 - 42 - [ -d "$MOULOG_DIR" ] && mv "$MOULOG_DIR" "$MOULOG_DIR.1" 43 - mkdir -p "$MOULOG_DIR" 44 - } 45 - 46 - case $1 in 47 - -h|--help ) usage 0 ;; 48 - -n|--new ) new_dir; exit 0 ;; 49 - esac 50 - 51 - # I'm using this file to decide if i should make a new directory 52 - [ -f /tmp/moulog ] || new_dir 53 - 54 - 55 - printf '%s\n' "#### moulog start time: $(date +%s) ####" >> "$MOULOG_DIR/$1.log" 56 - exec "$@" >> "$MOULOG_DIR/$1.log" 2>&1
-9
home/bin/multimc
··· 1 - #!/bin/sh 2 - 3 - # Void Linux is stupid and creates a wrapper script for multimc which puts the 4 - # data directory into the home directory. YUCK! 5 - if [ "$CURRENT_DISTRO" = void ] 6 - then exec /usr/libexec/multimc/multimc "$@" 7 - else exec /usr/bin/multimc "$@" 8 - fi 9 -
-120
home/bin/perfmodes
··· 1 - #!/bin/sh 2 - # This script is meant to run as root 3 - # Changes intel turbo boost state and thinkpad fan speed 4 - # Why? My ThinkPad will sometimes overheat and thermal throttle when compiling or 5 - # playing games. Turning off turbo boost is usually enough to fix it but turbo boost 6 - # may be useful for some situations 7 - 8 - # Default is to turn on turbo and set fans to auto (this is how your computer should boot) 9 - # -t <on|off> to turn on turbo boost (alternatively, 1 or 0 can be used instead of on or off) 10 - # -f <full|auto> to change fan speed 11 - # Anything after `--` will be executed as a command. When that command finishes execution, 12 - # settings will be reverted to their previous or default state. The script will return the exit 13 - # code of the command. 14 - 15 - usage() { 16 - while read -r line 17 - do 18 - [ "$1" = 0 ] && 19 - printf '%b\n' "$line" || 20 - printf '%b\n' "$line" 1>&2 21 - done <<-USAGE 22 - usage: ${0##*/} [OPTIONS] 23 - 24 - options: 25 - \t-f [0-7|auto|disengaged|full] - determine the fan speed 26 - \t-t [on|off] - determine the state of turbo boost 27 - \t-r - revert to state before change 28 - USAGE 29 - 30 - exit "$1" 31 - } 32 - 33 - while [ "$*" ] 34 - do 35 - case $1 in 36 - - ) shift; continue ;; 37 - -- ) shift; break ;; 38 - -* ) flag=${1#-}; shift ;; 39 - * ) shift; continue ;; 40 - esac 41 - 42 - while [ "$flag" ] 43 - do 44 - arg=${flag%"${flag#?}"} 45 - 46 - case $arg in 47 - f ) fans=$1 ;; 48 - t ) turbo=$1 ;; 49 - r ) revert=yes ;; 50 - h ) usage 0 ;; 51 - * ) printf '%s\n' "${0##*/}: -$arg: invalid argument"; usage 1 ;; 52 - esac 53 - 54 - flag=${flag#?} 55 - done 56 - done 57 - 58 - [ "$revert" = yes ] && { 59 - read -r current_turbo < /sys/devices/system/cpu/intel_pstate/no_turbo 60 - [ "$current_turbo" ] || current_turbo=1 61 - 62 - while read -r line 63 - do 64 - case $line in 65 - "level: 0" ) current_fan="0"; break ;; 66 - "level: 1" ) current_fan="1"; break ;; 67 - "level: 2" ) current_fan="2"; break ;; 68 - "level: 3" ) current_fan="3"; break ;; 69 - "level: 4" ) current_fan="4"; break ;; 70 - "level: 5" ) current_fan="5"; break ;; 71 - "level: 6" ) current_fan="6"; break ;; 72 - "level: 7" ) current_fan="7"; break ;; 73 - "level: auto" ) current_fan="auto"; break ;; 74 - "level: full-speed" ) current_fan="full-speed"; break ;; 75 - "level: disengaged" ) current_fan="full-speed"; break ;; # This is the reported level 76 - # when I set fan speed to 77 - # full-speed 78 - esac 79 - done < /proc/acpi/ibm/fan 80 - [ "$current_fan" ] || current_fan="auto" 81 - } 82 - 83 - case $turbo in 84 - off|1 ) printf '%s' "1" > /sys/devices/system/cpu/intel_pstate/no_turbo ;; 85 - on|0 ) printf '%s' "0" > /sys/devices/system/cpu/intel_pstate/no_turbo ;; 86 - "" ) printf '%s' "0" > /sys/devices/system/cpu/intel_pstate/no_turbo ;; 87 - * ) printf '%s\n' "${0##*/}: $turbo: invalid option for turbo boost. Skipping..." 1>&2 ;; 88 - esac 89 - 90 - case $fans in 91 - 0 ) printf '%s' "level 0" > /proc/acpi/ibm/fan ;; 92 - 1 ) printf '%s' "level 1" > /proc/acpi/ibm/fan ;; 93 - 2 ) printf '%s' "level 2" > /proc/acpi/ibm/fan ;; 94 - 3 ) printf '%s' "level 3" > /proc/acpi/ibm/fan ;; 95 - 4 ) printf '%s' "level 4" > /proc/acpi/ibm/fan ;; 96 - 5 ) printf '%s' "level 5" > /proc/acpi/ibm/fan ;; 97 - 6 ) printf '%s' "level 6" > /proc/acpi/ibm/fan ;; 98 - 7 ) printf '%s' "level 7" > /proc/acpi/ibm/fan ;; 99 - auto ) printf '%s' "level auto" > /proc/acpi/ibm/fan ;; 100 - disengaged ) printf '%s' "level disengaged" > /proc/acpi/ibm/fan ;; 101 - full ) printf '%s' "level full-speed" > /proc/acpi/ibm/fan ;; 102 - "" ) printf '%s' "level auto" > /proc/acpi/ibm/fan ;; 103 - * ) printf '%s\n' "${0##*/}: $fans: invalid option for fan speed. Skipping..." 1>&2 ;; 104 - esac 105 - 106 - [ "$*" ] && { 107 - "$@" 108 - exitcode=$? 109 - 110 - if [ "$revert" = yes ] 111 - then 112 - printf '%s' "$current_turbo" > /sys/devices/system/cpu/intel_pstate/no_turbo 113 - printf '%s' "level $current_fan" > /proc/acpi/ibm/fan 114 - else 115 - printf '%s' "0" > /sys/devices/system/cpu/intel_pstate/no_turbo 116 - printf '%s' "level auto" > /proc/acpi/ibm/fan 117 - fi 118 - 119 - exit $exitcode 120 - }
-39
home/bin/powermenu
··· 1 - #!/bin/sh 2 - 3 - # Required Commands 4 - # bemenu - allow the user to pick options 5 - # loginctl - perform actions 6 - # pkill - send sway into idle state 7 - 8 - prompt="powermenu" 9 - options="hibernate\\nhybrid-sleep\\nlock\\npoweroff\\nreboot\\nsuspend\\nsuspend-then-hibernate" 10 - 11 - confirm() { 12 - c_prompt="Are you sure? [$action]" 13 - c_input=$(printf '%b' "yes\\nno" | bemenu -p "$c_prompt") 14 - 15 - # Prevents selecting yes instantly waking up from suspend 16 - sleep 1 17 - 18 - case $c_input in 19 - Y*|y* ) return 0 ;; 20 - N*|n* ) exit 0 ;; 21 - * ) exit 1 ;; 22 - esac 23 - } 24 - 25 - sleep_task() { 26 - pkill -USR1 swayidle 27 - } 28 - 29 - action=$(printf '%b' "$options" | bemenu -p "$prompt") 30 - case $action in 31 - hibernate ) confirm; loginctl hibernate ;; 32 - hybrid-sleep ) confirm; loginctl hybrid-sleep ;; 33 - lock ) confirm; loginctl lock-session ;; 34 - poweroff ) confirm; loginctl poweroff ;; 35 - reboot ) confirm; loginctl reboot ;; 36 - suspend ) confirm; loginctl suspend ;; 37 - suspend-then-hibernate ) confirm; loginctl suspend-then-hibernate ;; 38 - * ) exit 1 ;; 39 - esac
-27
home/bin/pw-launch
··· 1 - #!/bin/sh 2 - # Script to start pipewire with extra sinks and sources 3 - 4 - # Gentoo has their own pipewire launch script 5 - gentoo-pipewire-launcher & 6 - 7 - ## Do this if pipewire is not already running 8 - #pgrep -x 'pipewire' || { 9 - # # Start pipewire in the background and wait a second 10 - # pipewire & 11 - # 12 - # # Void Linux does not enable pipewire-pulse by default 13 - # [ "$CURRENT_DISTRO" = void ] && pipewire-pulse & 14 - # sleep 1 15 - # 16 - # [ "$1" = normal ] || { 17 - # ## Create a null sink to easily run all audio through an equalizer 18 - # #pactl load-module module-null-sink object.linger=1 media.class=Audio/Sink \ 19 - # # sink_name=PreEqualizer 20 - # #pactl set-default-sink PreEqualizer 21 - # 22 - # # Create a null sink to easily noise suppress microphone output 23 - # pactl load-module module-null-sink object.linger=1 \ 24 - # media.class=Audio/Source/Virtual sink_name=PostNoiseSuppression channels=1 25 - # pactl set-default-source PostNoiseSuppression 26 - # } 27 - #}
-6
home/bin/scp
··· 1 - #!/bin/sh 2 - SSH_CONFIG="${XDG_CONFIG_HOME}/ssh/config" 3 - SSH_ID="${XDG_DATA_HOME}/ssh/id_ed25519" 4 - 5 - export TERM=xterm-256color 6 - exec /usr/bin/scp -F "$SSH_CONFIG" -i "$SSH_ID" "$@"
home/bin/slurp data/shellscripts/slurp
-6
home/bin/ssh
··· 1 - #!/bin/sh 2 - SSH_CONFIG="${XDG_CONFIG_HOME}/ssh/config" 3 - SSH_ID="${XDG_DATA_HOME}/ssh/id_ed25519" 4 - 5 - export TERM=xterm-256color 6 - exec /usr/bin/ssh -F "$SSH_CONFIG" -i "$SSH_ID" "$@"
-14
home/bin/steam
··· 1 - #!/bin/sh 2 - 3 - case $1 in 4 - b|blanklily ) S_HOME="blanklily"; shift ;; 5 - c|crazykill_97 ) S_HOME="crazykill_97"; shift ;; 6 - * ) S_HOME="blanklily" ;; 7 - esac 8 - 9 - export HOMEWRAP_HOME="$HOME/tmp/homes/steam-$S_HOME" 10 - [ -d "$HOMEWRAP_HOME" ] || mkdir -p "$HOMEWRAP_HOME" 11 - 12 - 13 - export SDL_VIDEODRIVER=x11 14 - exec homewrap /usr/bin/steam "$@"
-6
home/bin/teams
··· 1 - #!/bin/sh 2 - 3 - export HOME=/home/mou/tmp/homes/teams 4 - 5 - [ -d $HOME ] || mkdir -p "$HOME" 6 - exec /usr/bin/teams "$@"
-11
home/bin/vscode
··· 1 - #!/bin/sh 2 - 3 - HOMEWRAP_HOME="${HOME}/tmp/homes/vscode" 4 - mkdir -p "${HOMEWRAP_HOME}" 5 - 6 - DOTNET_ROOT=${HOME}/doc/ksu/spring-2022/swe3313/dotnet-6 7 - PATH=$HOME/doc/ksu/spring-2022/swe3313/dotnet-6:$PATH 8 - 9 - 10 - export HOMEWRAP_HOME DOTNET_ROOT PATH 11 - exec homewrap /usr/bin/vscode "$@"
home/bin/wake-server data/shellscripts/wake-server
-23
home/bin/wl
··· 1 - #!/bin/sh 2 - 3 - # Set Environment variables 4 - QT_QPA_PLATFORMTHEME=gnome 5 - SDL_VIDEODRIVER=wayland 6 - XDG_SESSION_TYPE=wayland 7 - export QT_QPA_PLATFORMTHEME SDL_VIDEODRIVER XDG_SESSION_TYPE 8 - 9 - # Start new logging directory 10 - moulog -n 11 - 12 - # Autostart 13 - { 14 - moulog syncthing -no-browser & 15 - } & 16 - 17 - # Pick Wayland Compositor 18 - case $1 in 19 - sway|s ) export XDG_CURRENT_DESKTOP=sway 20 - exec moulog dbus-run-session sway ;; 21 - wayfire|w ) export XDG_CURRENT_DESKTOP=Wayfire 22 - exec moulog dbus-run-session wayfire ;; 23 - esac
-30
home/bin/wl-post
··· 1 - #!/bin/sh 2 - # Post startup script for wayland compositors 3 - 4 - # Dbus (atleast with elogind) doesn't get updated environment variables causing 5 - # some applications (like mako) to not autostart. 6 - moulog dbus-update-activation-environment --all & 7 - 8 - # Configure displays 9 - moulog kanshi & 10 - 11 - # Pipewire 12 - moulog pw-launch normal & 13 - 14 - ## Start Carla without gui 15 - # pgrep -x 'carla' || { moulog carla -n "${HOME}/cfg/carla/desktop.carxp" & } & 16 - 17 - ## Start the foot-server 18 - # moulog foot -s & 19 - 20 - # Set idle actions 21 - moulog swayidle timeout 900 swaylock & 22 - 23 - # Set a wallpaper 24 - moulog swaybg -i "$HOME/media/images/wallpapers/evie-s-fF9z39kVOfk-unsplash.jpg" -m fill & 25 - 26 - # Nightlight 27 - moulog wlsunset -l 33.9 -L -84.5 & 28 - 29 - # Panel 30 - moulog waybar &
-6
home/bin/xonotic-sdl
··· 1 - #!/bin/sh 2 - 3 - HOME="/home/mou/tmp/homes/xonotic" 4 - [ -d "$HOME" ] || mkdir -p "$HOME" 5 - 6 - exec /usr/bin/xonotic-sdl
-2
home/bin/zigc/zigar
··· 1 - #!/bin/sh 2 - exec zig ar "$@"
-2
home/bin/zigc/zigcc
··· 1 - #!/bin/sh 2 - exec zig cc "$@"
-2
home/bin/zigc/zigcxx
··· 1 - #!/bin/sh 2 - exec zig cxx "$@"
-59
home/cfg/alacritty/alacritty.yml
··· 1 - import: 2 - - ~/tmp/cache/thm/alacritty-colors.yml 3 - 4 - window: 5 - padding: 6 - x: 8 7 - y: 8 8 - # dimensions: 9 - # columns: 120 10 - # lines: 36 11 - dynamic_padding: true 12 - title: "" 13 - dynamic_title: false 14 - 15 - scrolling: 16 - history: 30000 17 - multiplier: 3 18 - 19 - font: 20 - normal: 21 - family: monospace 22 - style: Regular 23 - bold: 24 - family: monospace 25 - style: Bold 26 - italic: 27 - family: monospace 28 - style: Italic 29 - 30 - bold_italic: 31 - family: monospace 32 - style: Bold Italic 33 - 34 - size: 9.0 35 - 36 - draw_bold_text_with_bright_colors: false 37 - 38 - cursor: 39 - style: Beam 40 - 41 - mouse: 42 - url: 43 - launcher: 44 - program: None 45 - args: [] 46 - modifiers: Command 47 - 48 - key_bindings: 49 - 50 - - { key: Space, mods: Shift|Control, mode: Vi, action: None } 51 - - { key: Space, mods: Shift|Control, action: None } 52 - - { key: F, mods: Control|Shift, action: None } 53 - - { key: B, mods: Control|Shift, action: None } 54 - - { key: Key0, mods: Control, action: None } 55 - - { key: Equals, mods: Control, action: None } 56 - - { key: Plus, mods: Control, action: None } 57 - - { key: NumpadAdd, mods: Control, action: None } 58 - - { key: Minus, mods: Control, action: None } 59 - - { key: NumpadSubtract, mods: Control, action: None }
-8
home/cfg/bash/alias
··· 1 - #!/usr/bin/env bash 2 - run() { 3 - [[ $# -lt 2 ]] && return 1 4 - for ((i=1; i<=$1; i++)) 5 - do 6 - eval "${@:2}" 7 - done 8 - }
-97
home/cfg/bash/inputrc
··· 1 - $include /etc/inputrc 2 - 3 - set editing-mode vi 4 - set keymap vi 5 - set show-mode-in-prompt on 6 - $if term=linux 7 - set vi-ins-mode-string \1\e[?0c\2 8 - set vi-cmd-mode-string \1\e[?8c\2 9 - $else 10 - set vi-ins-mode-string \1\e[6 q\2 11 - set vi-cmd-mode-string \1\e[2 q\2 12 - $endif 13 - 14 - # Weird unlikely-to-be-used mappings for the functions we want to use 15 - "\C-a\C-xm": set-mark 16 - "\C-a\C-xh": backward-char 17 - "\C-a\C-xl": forward-char 18 - "\C-a\C-xw": vi-forward-word 19 - "\C-a\C-xW": vi-forward-bigword 20 - "\C-a\C-xb": vi-backward-word 21 - "\C-a\C-xB": vi-backward-bigword 22 - "\C-a\C-xe": vi-end-word 23 - "\C-a\C-xE": vi-end-bigword 24 - "\C-a\C-xf": vi-char-search 25 - "\C-a\C-xt": vi-char-search 26 - "\C-a\C-xF": vi-char-search 27 - "\C-a\C-xT": vi-char-search 28 - "\C-a\C-x0": beginning-of-line 29 - "\C-a\C-x$": end-of-line 30 - "\C-a\C-xd": kill-region 31 - "\C-a\C-xy": copy-region-as-kill 32 - 33 - # Kakoune keybindings defined as concatenations of the above functions 34 - "h": "\C-a\C-xm\C-a\C-xh" 35 - "H": "\C-a\C-xh" 36 - "\M-h": "\C-a\C-xm\C-a\C-x0" 37 - "\M-H": "\C-a\C-x0" 38 - "gh": "\C-a\C-x0\C-a\C-xm" 39 - "Gh": "\C-a\C-x0" 40 - "GH": "\C-a\C-x0" 41 - "l": "\C-a\C-xm\C-a\C-xl" 42 - "L": "\C-a\C-xl" 43 - "gl": "\C-a\C-x$\C-a\C-xm" 44 - "Gl": "\C-a\C-x$" 45 - "GL": "\C-a\C-x$" 46 - "\M-l": "\C-a\C-xm\C-a\C-x$" 47 - "\M-L": "\C-a\C-x$" 48 - "w": "\C-a\C-xm\C-a\C-xw" 49 - "W": "\C-a\C-xw" 50 - "\M-w": "\C-a\C-xm\C-a\C-xW" 51 - "\M-W": "\C-a\C-xW" 52 - "b": "\C-a\C-xm\C-a\C-xb" 53 - "B": "\C-a\C-xb" 54 - "\M-b": "\C-a\C-xm\C-a\C-xB" 55 - "\M-B": "\C-a\C-xB" 56 - "e": "\C-a\C-xm\C-a\C-xe" 57 - "E": "\C-a\C-xE" 58 - "\M-e": "\C-a\C-xm\C-a\C-xE" 59 - "\M-E": "\C-a\C-xE" 60 - "f": "\C-a\C-xm\C-a\C-xf" 61 - "F": "\C-a\C-xf" 62 - "\M-f": "\C-a\C-xm\C-a\C-xF" 63 - "\M-F": "\C-a\C-xF" 64 - "t": "\C-a\C-xm\C-a\C-xt" 65 - "T": "\C-a\C-xt" 66 - "\M-t": "\C-a\C-xm\C-a\C-xT" 67 - "\M-T": "\C-a\C-xT" 68 - "x": "\C-a\C-x0\C-a\C-xm\C-a\C-x$" 69 - ";": "\C-a\C-xm" 70 - "\M-;": exchange-point-and-mark 71 - "d": kill-region 72 - "gg": beginning-of-history 73 - "gk": beginning-of-history 74 - "gj": end-of-history 75 - "ge": end-of-history 76 - "c": "\C-a\C-xdi" 77 - "y": "\C-a\C-xy" 78 - "P": "\C-a\C-xhp" 79 - 80 - set keymap vi-command 81 - "\e[A": history-search-backward 82 - "\e[B": history-search-forward 83 - k: history-search-backward 84 - j: history-search-forward 85 - set keymap vi-insert 86 - "\e[A": history-search-backward 87 - "\e[B": history-search-forward 88 - 89 - set expand-tilde on 90 - set completion-ignore-case on 91 - set show-all-if-ambiguous on 92 - set echo-control-characters off 93 - set colored-stats yes 94 - set visible-stats off 95 - set mark-symlinked-directories on 96 - set colored-completion-prefix on 97 - set menu-complete-display-prefix on
-29
home/cfg/bash/profile
··· 1 - #!/bin/sh 2 - [ ! "$USER" = "mou" ] || [ ! "$SHELL" = "/bin/bash" ] && return 0 3 - 4 - PATH="${HOME}/bin:${HOME}/opt/bin:$PATH" 5 - XDG_DATA_HOME="${HOME}/data" 6 - XDG_CONFIG_HOME="${HOME}/cfg" 7 - XDG_CACHE_HOME="${HOME}/tmp/cache" 8 - 9 - VISUAL="kak" 10 - EDITOR="kak" 11 - PAGER="less" 12 - 13 - HISTFILE="${XDG_CACHE_HOME}/bash_history" 14 - HISTSIZE= 15 - HISTFILESIZE= 16 - HISTCONTROL="$HISTCONTROL:ignorespace:ignoredups:erasedups" 17 - LESSHISTFILE="${XDG_CACHE_HOME}/less_history" 18 - LESSHISTSIZE= 19 - 20 - GNUPGHOME="${XDG_DATA_HOME}/gnupg" 21 - XINITRC="${XDG_CONFIG_HOME}/xorg/xinitrc" 22 - INPUTRC="${XDG_CONFIG_HOME}/bash/inputrc" 23 - PASSWORD_STORE_DIR="${HOME}/doc/.pws" 24 - 25 - export PATH XDG_DATA_HOME XDG_CONFIG_HOME XDG_CACHE_HOME VISUAL EDITOR PAGER \ 26 - HISTFILE HISTSIZE HISTFILESIZE HISTCONTROL LESSHISTFILE LESSHISTSIZE \ 27 - GNUPGHOME XINITRC INPUTRC PASSWORD_STORE_DIR 28 - 29 - [ -f ${XDG_CONFIG_HOME}/bash/rc ] && . "${XDG_CONFIG_HOME}/bash/rc"
-31
home/cfg/bash/rc
··· 1 - [[ $- != *i* ]] && return 2 - 3 - [[ ! $USER = "mou" ]] && return 4 - 5 - GPG_TTY=$(tty) 6 - export GPG_TTY 7 - 8 - shopt -s autocd 9 - shopt -s cdable_vars 10 - shopt -s cdspell 11 - 12 - . "${XDG_CONFIG_HOME}/bash/alias" 13 - 14 - reset="\\[\\e[0m\\]" 15 - if [[ $EUID = 0 ]] 16 - then 17 - color="\\[\\e[0;31;1m\\]" 18 - else 19 - color="\\[\\e[0;32;1m\\]" 20 - fi 21 - 22 - if [[ -n "$SSH_CLIENT" || -n "$SSH_TTY" || -n "$SSH_CONNECTION" ]] 23 - then 24 - PS1="(${color}ssh${reset}) " 25 - [[ -f "${HOME}/.ssh_extras" ]] && . "${HOME}/.ssh_extras" 26 - else 27 - PS1="" 28 - fi 29 - 30 - PROMPT_COMMAND='history -a' 31 - PS1+="🦑 "
-3
home/cfg/ccache/ccache.conf
··· 1 - base_dir = /home/mou 2 - max_size = 50Gi 3 - sloppiness = file_stat_matches,include_file_ctime,include_file_mtime,locale,pch_defines,time_macros
-22
home/cfg/fontconfig/conf.d/00-default-font.conf
··· 1 - <?xml version='1.0'?> 2 - <!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> 3 - <fontconfig> 4 - <alias> 5 - <family>serif</family> 6 - <prefer> 7 - <family>IBM Plex Serif</family> 8 - </prefer> 9 - </alias> 10 - <alias> 11 - <family>sans-serif</family> 12 - <prefer> 13 - <family>IBM Plex Sans</family> 14 - </prefer> 15 - </alias> 16 - <alias> 17 - <family>monospace</family> 18 - <prefer> 19 - <family>IBM Plex Mono</family> 20 - </prefer> 21 - </alias> 22 - </fontconfig>
-26
home/cfg/foot/foot.ini
··· 1 - include=/home/mou/tmp/cache/thm/foot-colors.ini 2 - 3 - font=monospace:size=10 4 - dpi-aware=no 5 - pad=8x8 center 6 - initial-window-size-chars=120x36 7 - title=⠀ 8 - locked-title=yes 9 - 10 - [scrollback] 11 - lines=2000 12 - 13 - [cursor] 14 - style=beam 15 - blink=yes 16 - 17 - [mouse] 18 - hide-when-typing=yes 19 - 20 - [colors] 21 - alpha=1 22 - 23 - [csd] 24 - preferred=client 25 - size=32 26 - button-width=32
-4
home/cfg/gtk-3.0/gtk.css
··· 1 - .background.csd, 2 - .background.csd > * { 3 - box-shadow: none; 4 - }
-3
home/cfg/gtk-3.0/settings.ini
··· 1 - [Settings] 2 - gtk-decoration-layout = close,minimize,maximize:menu 3 -
-4
home/cfg/helix/config.toml
··· 1 - theme = "theme" 2 - 3 - [editor] 4 - smart-case = false
-1
home/cfg/helix/themes/theme.toml
··· 1 - /home/mou/tmp/cache/thm/helix-colors.toml
-36
home/cfg/kak-lsp/kak-lsp.toml
··· 1 - snippet_support = true 2 - verbosity = 2 3 - 4 - [server] 5 - timeout = 1800 6 - 7 - [language.python] 8 - filetypes = ["python"] 9 - roots = ["requirements.txt", "setup.py", ".git", ".hg"] 10 - command = "pylsp" 11 - settings_section = "_" 12 - [language.python.settings._] 13 - # See https://github.com/python-lsp/python-lsp-server#configuration 14 - # # pylsp.configurationSources = ["flake8"] 15 - 16 - [language.c_cpp] 17 - filetypes = ["c", "cpp"] 18 - roots = ["compile_commands.json", ".clangd"] 19 - command = "clangd" 20 - 21 - [language.latex] 22 - filetypes = ["latex"] 23 - roots = [".git"] 24 - command = "texlab" 25 - 26 - [language.go] 27 - filetypes = ["go"] 28 - roots = ["Gopkg.toml", "go.mod", ".git", ".hg"] 29 - command = "gopls" 30 - offset_encoding = "utf-8" 31 - settings_section = "gopls" 32 - 33 - [language.zig] 34 - filetypes = ["zig"] 35 - roots = ["build.zig"] 36 - command = "zls"
home/cfg/kak/colors/theme-dark.kak data/configs/kak/colors/theme-dark.kak
home/cfg/kak/colors/theme.kak data/configs/kak/colors/theme.kak
home/cfg/kak/filetype/gentoo.kak data/configs/kak/filetype/gentoo.kak
+27 -19
home/cfg/kak/kakrc data/configs/kak/kakrc
··· 7 7 # kak-lsp 8 8 eval %sh{ kak-lsp --kakoune -s $kak_session } 9 9 10 - hook -group lsp global WinSetOption filetype=(c|cpp|go|python|zig) %{ 10 + hook -group lsp global WinSetOption filetype=(c|cpp|go|nix|python|typst|zig) %{ 11 11 lsp-enable-window 12 + lsp-inlay-code-lenses-enable window 13 + lsp-inlay-diagnostics-enable window 14 + lsp-inlay-hints-enable window 12 15 def -hidden insert-a-n %{ 13 16 try %{ 14 17 lsp-snippets-select-next-placeholders ··· 37 40 evaluate-commands %sh{ 38 41 [ "$1" = add ] && { 39 42 [ "$3" ] && color=$3 || color=default,bright-white 40 - printf '%s\n' "eval addhl global/ column $2 $color" 43 + printf '%s\n' "eval addhl window/ column $2 $color" 41 44 } 42 45 43 46 [ "$1" = remove ] && { 44 47 [ "$3" ] && color=$3 || color=default,bright-white 45 - printf '%s\n' "eval rmhl global/column_$2_$color" 48 + printf '%s\n' "eval rmhl window/column_$2_$color" 46 49 } 47 50 } 48 51 } ··· 64 67 m-whitespace %{ 65 68 evaluate-commands %sh{ 66 69 [ "$1" = tabs ] \ 67 - && printf '%s\n' "eval map global insert <tab> <tab>" \ 68 - "eval set global indentwidth 0" \ 69 - "eval set global tabstop $2" 70 + && printf '%s\n' "eval map window insert <tab> <tab>" \ 71 + "eval set window indentwidth 0" \ 72 + "eval set window tabstop $2" 70 73 71 74 [ "$1" = spaces ] && { 72 75 s=0 ··· 76 79 s=$((s+1)) 77 80 done 78 81 79 - printf '%s\n' "eval map global insert <tab> \"$size\"" \ 80 - "eval set global indentwidth $2" 82 + printf '%s\n' "eval map window insert <tab> \"$size\"" \ 83 + "eval set window indentwidth $2" 81 84 } 82 85 } 83 86 } ··· 102 105 # Highlight Matching Characters 103 106 add-highlighter global/ show-matching 104 107 105 - 106 108 # Highligh TODO and friends 107 109 add-highlighter global/ regex \b(TODO|FIXME)\b 0:default+rb 108 110 ··· 112 114 printf '%s\n' "decl str theme_type none" 113 115 return 0 114 116 } 115 - . $(cat $HOME/tmp/cache/thm/current_thm) 117 + . $(cat "${XDG_CACHE_HOME:-$HOME/.cache}/thm/current_thm") 116 118 case $theme_type in 117 119 light ) printf '%s\n' "decl str theme_type light" ;; 118 120 dark ) printf '%s\n' "decl str theme_type dark" ;; ··· 120 122 esac 121 123 } 122 124 123 - # Add column indicator at column 101 124 - m-columnindicator add 100 125 + hook global WinCreate .* %{ 126 + # Add column indicator at column 101 127 + m-columnindicator add 100 125 128 126 - # Indentation Options 127 - set-option global indentwidth 0 128 - set-option global tabstop 4 129 + # Indentation Options 130 + set-option window indentwidth 0 131 + set-option window tabstop 4 132 + } 129 133 130 134 # Filetype specific options 131 - hook global WinSetOption filetype=(css|html|java|markdown|xml) %{ 135 + hook global WinSetOption filetype=(css|html|java|markdown|xml|nix) %{ 132 136 m-whitespace spaces 2 133 137 } 134 138 135 139 hook global WinSetOption filetype=html %{ 136 - m-columnindicator remove 100 137 - m-columnindicator add 120 140 + m-columnindicator remove 100 141 + m-columnindicator add 120 142 + } 143 + 144 + hook global WinSetOption filetype=nix %{ 145 + set-option buffer formatcmd "nixpkgs-fmt" 138 146 } 139 147 140 148 hook global WinSetOption filetype=java %{ ··· 163 171 # Status Line 164 172 set global modelinefmt '%val{bufname} %val{cursor_char_column},%val{cursor_line} {{context_info}} ' 165 173 set -add global modelinefmt '{{mode_info}} - %sh{printf $USER} %sh{date +"%R %Z"} ' 166 - set -add global modelinefmt '%sh{cat /sys/class/power_supply/BAT0/capacity} ' 174 + #set -add global modelinefmt '%sh{cat /sys/class/power_supply/BAT0/capacity} ' 167 175 168 176 # Set colorscheme 169 177 evaluate-commands %sh{
home/cfg/kak/templates/ebuild data/configs/kak/templates/ebuild
home/cfg/kak/templates/ebuild-metadata data/configs/kak/templates/ebuild-metadata
home/cfg/kak/templates/license-0bsd data/configs/kak/templates/license-0bsd
home/cfg/kak/templates/license-unlicense data/configs/kak/templates/license-unlicense
-10
home/cfg/kanshi/config
··· 1 - profile home-dock { 2 - output "Goldstar Company Ltd LG HDR WFHD" mode 2560x1080@74.990997Hz position 960,0 3 - output "Unknown 2460G4 0x0000075E" mode 1920x1080@144.001007Hz position 0,1080 4 - output "BenQ Corporation BenQ PD2700U ET87K04288SL0" position 1920,1080 scale 1 5 - output eDP-1 disable position 5760,1080 scale 2 6 - } 7 - 8 - profile no-dock { 9 - output eDP-1 enable position 0,0 scale 2 10 - }
+8 -10
home/cfg/loksh/alias data/configs/loksh/alias
··· 3 3 alias ls="ls -Fh --color=auto" 4 4 alias grep="grep --color=auto" 5 5 6 - # Set TERM here so that root prompt will get color 7 - alias su="TERM=linux su -ls /bin/bash" 8 - 9 6 # Run something N amount of times 10 7 run() { 11 8 [[ $# -lt 2 ]] && { print "usage: run <repeat num> <command>" 1>&2; return 1; } ··· 44 41 unset -f osc7_cwd 45 42 } 46 43 47 - source-env() { 48 - [ "$1" ] || { print "missing argument" 1>&2; return 1; } 49 - local env_d="$XDG_CONFIG_HOME/loksh/env.d" 50 - 51 - [ -f "$env_d/${1}.env" ] || { print "env file ${1}.env: not found" 1>&2; return 1; } 52 - . "$env_d/${1}".env 53 - } 44 + # Because i'm using nix, I no longer need this, I can instead use `nix develop` 45 + # source-env() { 46 + # [ "$1" ] || { print "missing argument" 1>&2; return 1; } 47 + # local env_d="$XDG_CONFIG_HOME/loksh/env.d" 48 + # 49 + # [ -f "$env_d/${1}.env" ] || { print "env file ${1}.env: not found" 1>&2; return 1; } 50 + # . "$env_d/${1}".env 51 + # }
+2
home/cfg/loksh/completions data/configs/loksh/completions
··· 21 21 search show version 22 22 unset password_list num 23 23 } 24 + 25 + # Make something for manpages and other utilities i use?
-15
home/cfg/loksh/env.d/c.env
··· 1 - AR="llvm-ar" 2 - AS="clang -c" 3 - CC="clang" 4 - CPP="clang-cpp" 5 - CXX="clang++" 6 - LD="ld.lld" 7 - STRINGS="llvm-strings" 8 - STRIP="llvm-strip" 9 - NM="llvm-nm" 10 - RANLIB="llvm-ranlib" 11 - READELF="llvm-readelf" 12 - OBJCOPY="llvm-objcopy" 13 - OBJDUMP="llvm-objdump" 14 - 15 - export AR CC CPP CXX LD STRINGS STRIP NM RANLIB READELF OBJCOPY OBJDUMP
-14
home/cfg/loksh/env.d/go.env
··· 1 - #AR="zigar" 2 - #CC="zigcc" 3 - #CXX="zigcxx" 4 - AR="llvm-ar" 5 - CC="clang" 6 - CXX="clang++" 7 - 8 - GOMODCACHE="$XDG_CACHE_HOME/go/pkg/mod" 9 - GOPATH="$XDG_DATA_HOME/go" 10 - 11 - #PATH="$GOPATH/bin:$HOME/bin/zigc:$PATH" 12 - PATH="$GOPATH/bin:$PATH" 13 - 14 - export AR CC CXX GOMODCACHE GOPATH PATH
home/cfg/loksh/env.d/rust.env

This is a binary file and will not be displayed.

-18
home/cfg/loksh/env.d/zigc.env
··· 1 - AR="zigar" 2 - CC="zigcc" 3 - #CPP="clang-cpp" 4 - CXX="zigcxx" 5 - #LD="ld.lld" 6 - #STRINGS="llvm-strings" 7 - #STRIP="llvm-strip" 8 - #NM="llvm-nm" 9 - #RANLIB="llvm-ranlib" 10 - #READELF="llvm-readelf" 11 - #OBJCOPY="llvm-objcopy" 12 - #OBJDUMP="llvm-objdump" 13 - 14 - PATH="$HOME/bin/zigc:$PATH" 15 - 16 - #export AR CC CPP CXX LD STRINGS STRIP NM RANLIB READELF OBJCOPY OBJDUMP CFLAGS CXXFLAGS 17 - export AR CC CXX PATH 18 -
-43
home/cfg/loksh/profile
··· 1 - #!/bin/sh 2 - 3 - # Place this file in /etc/profile.d 4 - [ "$(id -u)" = "1000" ] || return 0 5 - 6 - # Only continue if we are in ksh (i use loksh) 7 - [ "$KSH_VERSION" ] || return 0 8 - 9 - # Set XDG variables 10 - XDG_CACHE_HOME="$HOME/tmp/cache" 11 - XDG_CONFIG_HOME="$HOME/cfg" 12 - XDG_DATA_HOME="$HOME/data" 13 - 14 - # KSH specific variables 15 - ENV="$XDG_CONFIG_HOME/loksh/rc" 16 - HISTCONTROL="ignoredups:ignorespace" 17 - HISTFILE="$XDG_CACHE_HOME/loksh_history" 18 - 19 - # Prevent $HOME pollution 20 - GNUPGHOME="$XDG_DATA_HOME/gnupg" 21 - GRIPHOME="$XDG_CONFIG_HOME/grip" 22 - LESSHISTFILE="$XDG_CACHE_HOME/less_history" 23 - PASSWORD_STORE_DIR="$HOME/doc/.pws" 24 - XAUTHORITY="$XDG_CACHE_HOME/.Xauthority" 25 - 26 - # Set default commands 27 - EDITOR="kak" 28 - PAGER="less" 29 - VISUAL="kak" 30 - 31 - # Add local bin dirs to path 32 - PATH="$HOME/bin:$HOME/opt/bin:$PATH" 33 - 34 - # Export all the variables 35 - export CURRENT_DISTRO \ 36 - EDITOR ENV \ 37 - GNUPGHOME GRIPHOME \ 38 - HISTCONTROL HISTFILE HISTSIZE \ 39 - LESSHISTFILE \ 40 - PAGER PASSWORD_STORE_DIR PATH \ 41 - VISUAL \ 42 - WITHIN_KNOWN_CHROOT \ 43 - XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME
+4 -3
home/cfg/loksh/rc data/configs/loksh/rc
··· 18 18 PS1="\[\033[1;31m\]\u\[\033[32m\]@\[\033[33m\]\h \[\033[34m\]\W\[\033[m\] " 19 19 PS2="\[\033[1;36m\]>\[\033[m\] " 20 20 } || { 21 - case $(. "$(<"$HOME/tmp/cache/thm/current_thm")"; printf '%s' "$theme_type") in 21 + # Try and get OSC-133;A working 22 + case $(. "$(<"${XDG_CACHE_HOME:-$HOME/.cache}/thm/current_thm")"; printf '%s' "$theme_type") in 22 23 dark ) PS1="\[\033[1;91m\]\u\[\033[92m\]@\[\033[93m\]\h \[\033[94m\]\W\[\033[m\] " 23 24 PS2="\[\033[1;96m\]>\[\033[m\] " ;; 24 25 * ) PS1="\[\033[1;31m\]\u\[\033[32m\]@\[\033[33m\]\h \[\033[34m\]\W\[\033[m\] " ··· 31 32 [ "$DWRAP_WITHIN_SANDBOX" = "true" ] && PS1="($DWRAP_CURRENT_DISTRO) $PS1" 32 33 33 34 # Source completions 34 - . "$XDG_CONFIG_HOME/loksh/completions" 35 + . "${XDG_CONFIG_HOME:-$HOME/.config}/loksh/completions" 35 36 36 37 # Source aliases 37 - . "$XDG_CONFIG_HOME/loksh/alias" 38 + . "${XDG_CONFIG_HOME:-$HOME/.config}/loksh/alias"
home/cfg/mpv/mpv.conf data/configs/mpv/mpv.conf
+5 -5
home/cfg/scr/config.sh data/configs/scr/config.sh
··· 3 3 4 4 ## general ## 5 5 # defines were screenshots and recordings will be stored 6 - scr_basedir="${HOME}/tmp/scr" 7 - scr_pic_dir="${scr_basedir}/pic" 8 - scr_rec_dir="${scr_basedir}/rec" 9 - scr_aud_dir="${scr_basedir}/aud" 6 + # scr_basedir="${HOME}/tmp/scr" 7 + scr_pic_dir="${HOME}/pics/scr" 8 + scr_rec_dir="${HOME}/vids/scr" 9 + scr_aud_dir="${HOME}/aud/scr" 10 10 11 11 ## aud settings ## 12 12 # Audio devices to use for recording audio. 13 13 # These devices canbe found by executing `pactl list sinks | grep "Monitor Source"` 14 14 # for the sink and by executing `pactl list sources | grep Name:` for the source. 15 - aud_sink="$(pactl info | grep Default\ Sink)" 15 + aud_sink="$(pactl info | grep Default\ Sink)" # Is there a pipewire specific tool for this? 16 16 aud_sink="${aud_sink#Default\ Sink: }.monitor" 17 17 aud_source="$(pactl info | grep Default\ Source)" 18 18 aud_source="${aud_source#Default\ Source: }"
-235
home/cfg/sway/config
··· 1 - # Include extra system config # 2 - include /etc/sway/config.d/* 3 - 4 - # Appearance # 5 - include ${XDG_CACHE_HOME}/thm/sway-appearance 6 - 7 - # Input # 8 - input 1133:50503:Logitech_USB_Receiver { 9 - accel_profile flat 10 - pointer_accel -0.92 11 - } 12 - 13 - input 12136:130:Hoksi_Technology_DURGOD_Taurus_K320 { 14 - xkb_options compose:caps 15 - repeat_delay 300 16 - repeat_rate 50 17 - } 18 - 19 - input 1386:782:Wacom_Intuos_S_Pen { 20 - map_to_output "BenQ Corporation BenQ PD2700U ET87K04288SL0" 21 - } 22 - 23 - ## Seats # 24 - #seat seat0 { 25 - # hide_cursor 8000 26 - # #xcursor_theme clicc 27 - #} 28 - 29 - ## Bar 30 - #bar swaybar_command waybar 31 - 32 - exec wl-post 33 - exec_always pkill kanshi; exec kanshi 34 - 35 - # Options # 36 - floating_maximum_size -1 x -1 37 - focus_follows_mouse yes 38 - focus_on_window_activation urgent 39 - focus_wrapping workspace 40 - hide_edge_borders --i3 smart 41 - show_marks yes 42 - tiling_drag disable 43 - 44 - # Workspaces # 45 - # Variables 46 - set { 47 - $ws0 0 48 - $ws1 1 49 - $ws2 2 50 - $ws3 3 51 - $ws4 4 52 - $ws5 5 53 - $ws6 6 54 - $ws7 7 55 - $ws8 8 56 - $ws9 9 57 - } 58 - 59 - # Options 60 - workspace_layout tabbed 61 - 62 - ## Assign workspaces to Displays 63 - #workspace { 64 - # $ws0 output DP-1 65 - # $ws1 output DP-2 66 - # $ws2 output DP-1 67 - # $ws3 output DP-2 68 - # $ws4 output DP-1 69 - # $ws5 output DP-2 70 - # $ws6 output DP-1 71 - # $ws7 output DP-2 72 - # $ws8 output DP-1 73 - # $ws9 output DP-2 74 - #} 75 - 76 - # Keybinds # 77 - # Variables 78 - set { 79 - $W Mod4 80 - $A Mod1 81 - $C Control 82 - $S Shift 83 - $term foot 84 - $menu bemenu-run 85 - $file_manager pcmanfm 86 - } 87 - 88 - # Binds 89 - bindsym { 90 - $W+Return exec $term 91 - $W+r exec $menu 92 - $A+F12 exec powermenu 93 - $W+$A+f exec $file_manager 94 - $W+$C+f exec ffp 95 - 96 - #XF86AudioPlay exec playerctl play-pause 97 - XF86AudioPlay exec playerctl play 98 - XF86AudioPause exec playerctl pause 99 - XF86AudioStop exec playerctl stop 100 - XF86AudioPrev exec playerctl previous 101 - XF86AudioNext exec playerctl next 102 - 103 - $W+e exec pactl set-source-mute @DEFAULT_SOURCE@ toggle 104 - XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle 105 - XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +2% 106 - XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -2% 107 - 108 - # Brightness control 109 - 110 - Print exec scr pic -c 111 - $W+Print exec scr pic -cd 112 - 113 - $W+c exec colorgrab -co 114 - $W+$A+c exec colorgrab -cn 115 - $W+$C+c exec colorgrab -cor 116 - $W+$C+$A+c exec colorgrab -cnr 117 - 118 - $W+space exec makoctl dismiss -a 119 - 120 - $W+z focus next sibling 121 - $W+$A+z focus prev sibling 122 - $W+$C+z focus mode_toggle 123 - 124 - $W+x move workspace to right 125 - $W+$A+x move workspace to left 126 - 127 - $W+Left focus left 128 - $W+Down focus down 129 - $W+Up focus up 130 - $W+Right focus right 131 - 132 - $W+1 workspace $ws0 133 - $W+2 workspace $ws1 134 - $W+3 workspace $ws2 135 - $W+4 workspace $ws3 136 - $W+5 workspace $ws4 137 - $W+6 workspace $ws5 138 - $W+7 workspace $ws6 139 - $W+8 workspace $ws7 140 - $W+9 workspace $ws8 141 - $W+0 workspace $ws9 142 - 143 - $W+$S+1 move container to workspace $ws0 144 - $W+$S+2 move container to workspace $ws1 145 - $W+$S+3 move container to workspace $ws2 146 - $W+$S+4 move container to workspace $ws3 147 - $W+$S+5 move container to workspace $ws4 148 - $W+$S+6 move container to workspace $ws5 149 - $W+$S+7 move container to workspace $ws6 150 - $W+$S+8 move container to workspace $ws7 151 - $W+$S+9 move container to workspace $ws8 152 - $W+$S+0 move container to workspace $ws9 153 - 154 - $W+$C+Escape exit 155 - $W+$A+Escape reload 156 - $W+q kill 157 - 158 - $W+$S+s floating enable 159 - $W+$S+t floating disable 160 - $W+$S+f fullscreen toggle 161 - $W+l layout toggle split tabbed 162 - $W+o layout toggle split 163 - $W+p splitt 164 - 165 - $W+d exec swaymsg seat seat0 hide_cursor 0 166 - $W+$A+d exec swaymsg seat seat0 hide_cursor 8000 167 - 168 - $W+v border normal 2 169 - $W+b border pixel 2 170 - $W+n border none 171 - } 172 - 173 - # Bindswitches 174 - bindswitch --locked lid:on output eDP-1 disable 175 - bindswitch --locked lid:off output eDP-1 enable 176 - 177 - floating_modifier $W normal 178 - 179 - # Window Rules # 180 - for_window { 181 - # Make all windows float by default 182 - # According to `swaymsg -m "['window']" -t subscribe`, windows get their title after 183 - # they get created. However, app_id, class and instace are all set when the window is 184 - # created. 185 - [app_id="."] floating enable 186 - [class="."] floating enable 187 - [instance="."] floating enable 188 - 189 - # Make the title of each window bold 190 - [title="."] title_format "<b>%title</b>" 191 - 192 - [app_id="mpv"] border none 193 - 194 - ## Set Alacritty's size. Doing this through Alacritty's config causes the window contents 195 - ## to spill outside of the border when using multiple scaling factors and spawning 196 - ## the terminal on one lower than the highest. Sets the terminal to 120x36. 197 - #[app_id="Alacritty"] resize set width 976 px, resize set height 654 px 198 - 199 - ## These apps should take up the entire screen and not have a border 200 - #[app_id="firefox-wayland" title=".*- Mozilla Firefox$"] floating disable, border none 201 - #[app_id="firefox-wayland" title="^Mozilla Firefox$"] floating disable, border none 202 - #[class="Element"] floating disable, border none 203 - #[class="discord"] floating disable, border none 204 - 205 - #[class="csgo_linux64"] fullscreen enable 206 - } 207 - 208 - ## Move Windows when they launch 209 - #for_window { 210 - # # Web Browsers should be on the first workspace 211 - # [app_id="firefox-wayland"] move container to workspace 0 212 - 213 - # # Chat Applications should be on the second workspace 214 - # [class="Element"] move container to workspace 1 215 - # [class="discord"] move container to workspace 1 216 - 217 - # # Graphic Applications should be on the third workspace 218 - # [app_id="org.inkscape.Inkscape"] move container to workspace 2 219 - # [class="Gimp"] move container to workspace 2 220 - # [class="krita"] move container to workspace 2 221 - 222 - # # Games and Game Launchers should be on the eighth workspace 223 - # [app_id="org.multimc.multimc"] move container to workspace 7 224 - # [class="Steam"] move container to workspace 7 225 - # 226 - # [class="csgo_linux64"] move container to workspace 7 227 - # [class="Minecraft.*"] move container to workspace 7 228 - 229 - # # Rocket League 230 - # [class="steam_app_252950"] move container to workspace 7 231 - # # Deceit 232 - # [class="steam_app_466240"] move container to workspace 7 233 - # # TitanFall 2 234 - # [class="steam_app_1237970"] move container to workspace 7 235 - #}
-2
home/cfg/thm/scripts/reload-dunst
··· 1 - #!/bin/sh 2 - pkill dunst
home/cfg/thm/scripts/reload-mako data/configs/thm/scripts/reload-mako
home/cfg/thm/scripts/reload-sway data/configs/thm/scripts/reload-sway
-32
home/cfg/thm/templates/alacritty-colors.yml.template
··· 1 - colors: 2 - primary: 3 - background: '#{bg_color}' 4 - foreground: '#{fg_color}' 5 - 6 - cursor: 7 - text: '#{bg_color}' 8 - cursor: '#{fg_color}' 9 - 10 - selection: 11 - text: '#{bg_color}' 12 - background: '#{fg_color}' 13 - 14 - normal: 15 - black: '#{color0}' 16 - red: '#{color1}' 17 - green: '#{color2}' 18 - yellow: '#{color3}' 19 - blue: '#{color4}' 20 - magenta: '#{color5}' 21 - cyan: '#{color6}' 22 - white: '#{color7}' 23 - 24 - bright: 25 - black: '#{color8}' 26 - red: '#{color9}' 27 - green: '#{color10}' 28 - yellow: '#{color11}' 29 - blue: '#{color12}' 30 - magenta: '#{color13}' 31 - cyan: '#{color14}' 32 - white: '#{color15}'
home/cfg/thm/templates/colors.css.template data/configs/thm/templates/colors.css.template
home/cfg/thm/templates/colors.sh.template data/configs/thm/templates/colors.sh.template
+1 -1
home/cfg/thm/templates/colors.template data/configs/thm/templates/colors.template
··· 17 17 {color12} {color12.rgb} 18 18 {color13} {color13.rgb} 19 19 {color14} {color14.rgb} 20 - {color1} {color1.rgb} 20 + {color15} {color15.rgb}
+1 -1
home/cfg/thm/templates/dark/foot-colors.ini.template data/configs/thm/templates/dark/foot-colors.ini.template
··· 1 - include=/home/mou/tmp/cache/thm/foot-colors-base.ini 1 + include=~/.app/cache/thm/foot-colors-base.ini 2 2 3 3 [csd] 4 4 color=ff{fg_color}
home/cfg/thm/templates/dark/sway-appearance.template data/configs/thm/templates/dark/sway-appearance.template
-64
home/cfg/thm/templates/dunstrc.template
··· 1 - [global] 2 - monitor = 1 3 - geometry = 400x1+32+32 4 - shrink = true 5 - layer = top 6 - 7 - progress_bar = false 8 - 9 - font = monospace 10 10 - markup = full 11 - format = <b>%a</b>\n%s\n%b 12 - 13 - icon_position = left 14 - min_icon_size = 64 15 - max_icon_size = 64 16 - 17 - hide_duplicate_count = true 18 - 19 - word_wrap = true 20 - ellipsize = end 21 - 22 - padding = 8 23 - horizontal_padding = 8 24 - text_icon_padding = 8 25 - 26 - #transparency = 100 27 - 28 - frame_width = 2 29 - corner_radius = 8 30 - 31 - idle_threshold = 900s 32 - show_age_threshold = 900s 33 - 34 - dmenu = /home/mou/bin/bemenu 35 - browser = /home/mou/bin/firefox 36 - 37 - mouse_left_click = close_current 38 - mouse_middle_click = close_all 39 - mouse_right_click = do_action 40 - 41 - [urgency_low] 42 - background = "#{bg_color}d9" 43 - foreground = "#{fg_color}" 44 - frame_color = "#{color7}" 45 - # I will be making custom icons soon 46 - #icon = 47 - timeout = 10 48 - 49 - [urgency_normal] 50 - background = "#{bg_color}d9" 51 - foreground = "#{fg_color}" 52 - frame_color = "#{color0}" 53 - # I will be making custom icons soon 54 - #icon = 55 - timeout = 10 56 - 57 - [urgency_critical] 58 - background = "#{bg_color}d9" 59 - foreground = "#{fg_color}" 60 - frame_color = "#{color9}" 61 - # I will be making custom icons soon 62 - #icon = 63 - timeout = 0 64 -
home/cfg/thm/templates/foot-colors-base.ini.template data/configs/thm/templates/foot-colors-base.ini.template
home/cfg/thm/templates/gtk.css.template data/configs/thm/templates/gtk.css.template
-7
home/cfg/thm/templates/light/foot-colors.ini.template
··· 1 - include=/home/mou/tmp/cache/thm/foot-colors-base.ini 2 - 3 - [csd] 4 - color=ff{color7} 5 - button-minimize-color=ff{color3} 6 - button-maximize-color=ff{color2} 7 - button-close-color=ff{color1}
-43
home/cfg/thm/templates/light/helix-colors.toml.template
··· 1 - "ui.background" = { bg = "" } 2 - "ui.cursor" = { fg = "fg_color", modifiers = ["bold", "reversed"] } 3 - "ui.cursor.match" = { fg = "fg_color", modifiers = ["bold", "underlined"] } 4 - "ui.help" = { bg = "yellow", fg = "fg_color" } 5 - "ui.linenr" = {fg = "gray" } 6 - "ui.liner.selected" = "light-gray" 7 - "ui.menu" = "white" 8 - "ui.menu.selected" = { fg = "black", bg = "white" } 9 - "ui.popup" = { bg = "white" } 10 - "ui.popup" = { bg = "white" } 11 - "ui.selection" = "light-gray" 12 - "ui.statusline" = {fg = "black", bg = "white" } 13 - "ui.text" = { fg = "" } 14 - "ui.text.focus" = { fg = "" } 15 - "ui.window" = { bg = "" } 16 - "ui.window" = { bg = "white" } 17 - 18 - "attributes" = "green" 19 - "comment" = "gray" 20 - "constant" = "green" 21 - "constant.character.escape" = "blue" 22 - "constant.numeric" = "green" 23 - "constructor" = "cyan" 24 - "function" = "light-red" 25 - "keyword" = "blue" 26 - "label" = "light-red" 27 - "namespace" = "light-red" 28 - "operator" = "" 29 - "special" = "cyan" 30 - "strings" = "magenta" 31 - "type" = "magenta" 32 - "variable" = "red" 33 - "variable.other.member" = "yellow" 34 - 35 - "debug" = "gray" 36 - "diagnostic" = "gray" 37 - "error" = "red" 38 - "hint" = "gray" 39 - "info" = "gray" 40 - 41 - [palette] 42 - bg_color = "#{bg_color}" 43 - fg_color = "#{fg_color}"
-38
home/cfg/thm/templates/light/sway-appearance.template
··· 1 - # class border background text indicator child_border 2 - client.focused #{color5} #{color13} #{bg_color} #{color5} #{color5} 3 - client.focused_inactive #{color4} #{color12} #{bg_color} #{color4} #{color4} 4 - client.unfocused #{color8} #{color8} #{bg_color} #{color8} #{color8} 5 - client.urgent #{color1} #{color9} #{bg_color} #{color1} #{color1} 6 - 7 - default_border normal 2 8 - default_floating_border normal 2 9 - titlebar_border_thickness 2 10 - 11 - font pango:monospace 10 12 - 13 - hide_edge_borders both 14 - 15 - title_align center 16 - 17 - set { 18 - $bg_color {bg_color} 19 - $fg_color {fg_color} 20 - 21 - $color0 {color0} 22 - $color1 {color1} 23 - $color2 {color2} 24 - $color3 {color3} 25 - $color4 {color4} 26 - $color5 {color5} 27 - $color6 {color6} 28 - $color7 {color7} 29 - $color8 {color8} 30 - $color9 {color9} 31 - 32 - $color10 {color10} 33 - $color11 {color11} 34 - $color12 {color12} 35 - $color13 {color13} 36 - $color14 {color14} 37 - $color15 {color15} 38 - }
home/cfg/thm/templates/mako.template data/configs/thm/templates/mako.template
home/cfg/thm/templates/swaylock.template data/configs/thm/templates/swaylock.template
home/cfg/thm/themes/dark.theme data/configs/thm/themes/dark.theme
home/cfg/thm/themes/dark2.theme data/configs/thm/themes/dark2.theme
home/cfg/thm/themes/default-dark.theme data/configs/thm/themes/default-dark.theme
home/cfg/thm/themes/default-light.theme data/configs/thm/themes/default-light.theme
home/cfg/thm/themes/grayscale-light.theme data/configs/thm/themes/grayscale-light.theme
home/cfg/thm/themes/light.theme data/configs/thm/themes/light.theme
home/cfg/thm/themes/light2.theme data/configs/thm/themes/light2.theme
-15
home/cfg/user-dirs.dirs
··· 1 - # This file is written by xdg-user-dirs-update 2 - # If you want to change or add directories, just edit the line you're 3 - # interested in. All local changes will be retained on the next run 4 - # Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped 5 - # homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an 6 - # absolute path. No other format is supported. 7 - # 8 - XDG_DESKTOP_DIR="$HOME/tmp" 9 - XDG_DOWNLOAD_DIR="$HOME/tmp" 10 - XDG_TEMPLATES_DIR="$HOME/tmp" 11 - XDG_PUBLICSHARE_DIR="$HOME/tmp" 12 - XDG_DOCUMENTS_DIR="$HOME/doc" 13 - XDG_MUSIC_DIR="$HOME/media/audio/music/unsorted" 14 - XDG_PICTURES_DIR="$HOME/media/images/unsorted" 15 - XDG_VIDEOS_DIR="$HOME/media/videos/unsorted"
+1 -1
home/cfg/waybar/config data/configs/waybar/config
··· 69 69 }, 70 70 71 71 "custom/randomtext": { 72 - "exec": "$HOME/cfg/waybar/randomtext.sh", 72 + "exec": "${XDG_CONFIG_HOME:-$HOME/.config}/waybar/randomtext.sh", 73 73 "interval": 3600, 74 74 "format": "{}", 75 75 "tooltip": false,
home/cfg/waybar/random.txt data/configs/waybar/random.txt
-4
home/cfg/waybar/randomtext.sh
··· 1 - #!/bin/sh 2 - # Pick a random line from 3 - 4 - printf '%s' "$(shuf "$HOME/cfg/waybar/random.txt" | head -n1)"
home/cfg/waybar/style-old.css data/configs/waybar/style-old.css
+1 -1
home/cfg/waybar/style.css data/configs/waybar/style.css
··· 1 1 /* Import my colorscheme */ 2 - @import url("/home/mou/tmp/cache/thm/gtk.css"); 2 + @import url("/home/mou/.app/cache/thm/gtk.css"); 3 3 4 4 * { 5 5 font-family: monospace;
-210
home/cfg/wayfire.ini
··· 1 - [input-device:Wacom Intuos S Pen] 2 - output = HDMI-A-1 3 - 4 - [input] 5 - modifier_binding_timeout = 200 6 - xkb_options = compose:caps 7 - mouse_accel_profile = flat 8 - mouse_cursor_speed = -0.92 9 - 10 - [core] 11 - close_top_view = <super> KEY_Q 12 - plugins = alpha animate autostart \ 13 - blur \ 14 - command cube \ 15 - decoration \ 16 - expo \ 17 - fast-switcher follow-focus \ 18 - grid \ 19 - idle invert \ 20 - move \ 21 - oswitch \ 22 - place preserve-output \ 23 - resize \ 24 - scale \ 25 - vswitch \ 26 - window-rules wm-actions wrot \ 27 - zoom 28 - vwidth = 3 29 - vheight = 3 30 - 31 - [workarounds] 32 - use_external_output_configuration = true 33 - dynamic_repaint_delay = true 34 - 35 - [command] 36 - binding_term = <super> KEY_ENTER 37 - command_term = foot 38 - binding_filemanager = <super> <alt> KEY_F 39 - command_filemanager = pcmanfm 40 - 41 - binding_menu = <super> KEY_R 42 - command_menu = bemenu-run 43 - binding_powermenu = <alt> KEY_F12 44 - command_powermenu = powermenu 45 - 46 - binding_browser = <super> <ctrl> KEY_F 47 - command_browser = ffp 48 - 49 - binding_media_toggle = KEY_PLAYPAUSE 50 - command_media_toggle = playerctl play-pause 51 - binding_media_play = KEY_PLAYCD 52 - command_media_play = playerctl play 53 - binding_media_pause = KEY_PAUSECD 54 - command_media_pause = playerctl pause 55 - binding_media_stop = KEY_STOPCD 56 - command_media_stop = playerctl stop 57 - binding_media_prev = KEY_PREVIOUSSONG 58 - command_media_prev = playerctl previous 59 - binding_media_next = KEY_NEXTSONG 60 - command_media_next = playerctl next 61 - 62 - binding_mute_audio = KEY_MUTE 63 - command_mute_audio = pactl set-sink-mute @DEFAULT_SINK@ toggle 64 - repeatable_binding_audio_up = KEY_VOLUMEUP 65 - command_audio_up = pactl set-sink-volume @DEFAULT_SINK@ +2% 66 - repeatable_binding_audio_down = KEY_VOLUMEDOWN 67 - command_audio_down = pactl set-sink-volume @DEFAULT_SINK@ -2% 68 - binding_mute_mic_laptop = KEY_F20 69 - command_mute_mic_laptop = pactl set-source-mute @DEFAULT_SOURCE@ toggle 70 - binding_mute_mic = <super> KEY_E 71 - command_mute_mic = pactl set-source-mute @DEFAULT_SOURCE@ toggle 72 - 73 - repeatable_binding_brightnessdown = KEY_BRIGHTNESSDOWN 74 - command_brightnessdown = light -U 2 75 - repeatable_binding_brightnessup = KEY_BRIGHTNESSUP 76 - command_brightnessup = light -A 2 77 - 78 - binding_scrpic = KEY_SYSRQ 79 - command_scrpic = scr pic -c 80 - binding_scrpicd = <super> KEY_SYSRQ 81 - command_scrpicd = scr pic -cd 82 - 83 - binding_colorgrab_co = <super> KEY_C 84 - command_colorgrab_co = colorgrab -co 85 - binding_colorgrab_cn = <super> <alt> KEY_C 86 - command_colorgrab_cn = colorgrab -cn 87 - binding_colorgrab_cor = <super> <ctrl> KEY_C 88 - command_colorgrab_cor = colorgrab -cor 89 - binding_colorgrab_cnr = <super> <ctrl> <alt> KEY_C 90 - command_colorgrab_cnr = colorgrab -cnr 91 - 92 - binding_dunst_history = <super> KEY_PAGEUP 93 - command_dunst_history = dunstctl history-pop 94 - binding_dunst_menu = <super> KEY_COMPOSE 95 - command_dunst_menu = dunstctl context 96 - binding_dunst_pause = <super> KEY_PAUSE 97 - command_dunst_pause = dunstctl set-paused toggle 98 - 99 - [alpha] 100 - modifier = <super> <ctrl> 101 - 102 - [animate] 103 - close_animation = zoom 104 - duration = 120 105 - open_animation = zoom 106 - 107 - [autostart] 108 - autostart_wf_shell = false 109 - wl-post = wl-post 110 - 111 - # I don't want the functionality, I just want the screensaver 112 - [cube] 113 - activate = none 114 - background = 0 0 0 0 115 - 116 - [blur] 117 - saturation = 1 118 - kawase_offset = 1 119 - kawase_degrade = 7 120 - kawase_iterations = 2 121 - blur_by_default = type is "toplevel" | type is "panel" | type is "unmanaged" 122 - 123 - [expo] 124 - background = 0 0 0 1 125 - duration = 120 126 - offset = 4 127 - select_workspace_1 = KEY_1 128 - select_workspace_2 = KEY_2 129 - select_workspace_3 = KEY_3 130 - select_workspace_4 = KEY_4 131 - select_workspace_5 = KEY_5 132 - select_workspace_6 = KEY_6 133 - select_workspace_7 = KEY_7 134 - select_workspace_8 = KEY_8 135 - select_workspace_9 = KEY_9 136 - toggle = <super> 137 - 138 - [fast-switcher] 139 - activate = <super> KEY_Z 140 - 141 - [follow-focus] 142 - focus_delay = 0 143 - threshold = 0 144 - raise_on_top = false 145 - 146 - [grid] 147 - duration = 120 148 - restore = <super> <alt> KEY_LEFT 149 - slot_b = <super> KEY_DOWN 150 - slot_bl = <super> <ctrl> KEY_LEFT 151 - slot_br = <super> <ctrl> KEY_RIGHT 152 - slot_c = <super> KEY_T 153 - slot_l = <super> KEY_LEFT 154 - slot_r = <super> KEY_RIGHT 155 - slot_t = <super> KEY_UP 156 - slot_tl = <super> <shift> KEY_LEFT 157 - slot_tr = <super> <shift> KEY_RIGHT 158 - 159 - [idle] 160 - dpms_timeout = 1800 161 - screensaver_timeout = 300 162 - toggle = <super> KEY_I 163 - cube_max_zoom = 2 164 - cube_zoom_speed = 400 165 - cube_rotate_speed = 25 166 - 167 - [invert] 168 - toggle = <super> <shift> KEY_I 169 - 170 - [move] 171 - activate = <super> BTN_LEFT 172 - snap_off_threshold = 100 173 - snap_threshold = 8 174 - 175 - [oswitch] 176 - next_output = <super> KEY_X 177 - next_output_with_win = <super> <alt> KEY_X 178 - 179 - [resize] 180 - activate = <super> BTN_RIGHT 181 - 182 - [scale] 183 - toggle = <super> <alt> KEY_SPACE 184 - toggle_all = <super> KEY_SPACE 185 - spacing = 4 186 - duration = 150 187 - inactive_alpha = .8 188 - middle_click_close = true 189 - 190 - [vswitch] 191 - binding_down = <super> KEY_J 192 - binding_left = <super> KEY_H 193 - binding_right = <super> KEY_L 194 - binding_up = <super> KEY_K 195 - with_win_down = <super> <alt> KEY_J 196 - with_win_left = <super> <alt> KEY_H 197 - with_win_right = <super> <alt> KEY_L 198 - with_win_up = <super> <alt> KEY_K 199 - duration = 150 200 - wraparound = true 201 - 202 - [wm-actions] 203 - toggle_fullscreen = <super> KEY_F 204 - toggle_always_on_top = <super> KEY_S 205 - 206 - [wrot] 207 - activate = <super> <ctrl> BTN_LEFT 208 - activate-3d = <super> <ctrl> BTN_RIGHT 209 - reset-one = <super> KEY_D 210 - reset = <super> <ctrl> KEY_D
home/gamefiles/csgo/autoexec.cfg data/gamefiles/csgo/autoexec.cfg