mirror of
				https://github.com/frebib/dotfiles.git
				synced 2024-06-14 12:57:23 +00:00 
			
		
		
		
	Compare commits
	
		
			175 Commits
		
	
	
		
			systemd-se
			...
			895d0ff0aa
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						
						
							
						
						895d0ff0aa
	
				 | 
					
					
						|||
| 
						
						
							
						
						7be83b7b70
	
				 | 
					
					
						|||
| 
						
						
							
						
						a41314ca34
	
				 | 
					
					
						|||
| 
						
						
							
						
						3158db0946
	
				 | 
					
					
						|||
| 
						
						
							
						
						e25953d913
	
				 | 
					
					
						|||
| 
						
						
							
						
						a6f162b7e2
	
				 | 
					
					
						|||
| 
						
						
							
						
						85ab256484
	
				 | 
					
					
						|||
| 
						
						
							
						
						d1c4112ee3
	
				 | 
					
					
						|||
| 
						
						
							
						
						8c8048ebcb
	
				 | 
					
					
						|||
| 
						
						
							
						
						019a3f9c18
	
				 | 
					
					
						|||
| 
						
						
							
						
						0ff266f257
	
				 | 
					
					
						|||
| 
						
						
							
						
						d6f2800ddd
	
				 | 
					
					
						|||
| 
						
						
							
						
						524e5132ba
	
				 | 
					
					
						|||
| 
						
						
							
						
						dde4e776f5
	
				 | 
					
					
						|||
| 
						
						
							
						
						1bd8081663
	
				 | 
					
					
						|||
| 
						
						
							
						
						9224e953e2
	
				 | 
					
					
						|||
| 
						
						
							
						
						a0d9149013
	
				 | 
					
					
						|||
| 
						
						
							
						
						c1f65fc03d
	
				 | 
					
					
						|||
| 
						
						
							
						
						92c8dbc019
	
				 | 
					
					
						|||
| 
						
						
							
						
						315f6b6b9a
	
				 | 
					
					
						|||
| 
						
						
							
						
						c1903f5726
	
				 | 
					
					
						|||
| 
						
						
							
						
						24dfc13c3f
	
				 | 
					
					
						|||
| 
						
						
							
						
						8f14e0d757
	
				 | 
					
					
						|||
| 
						
						
							
						
						d5668f82fe
	
				 | 
					
					
						|||
| 
						
						
							
						
						4607175b94
	
				 | 
					
					
						|||
| 
						
						
							
						
						ff9feca14c
	
				 | 
					
					
						|||
| 
						
						
							
						
						6f655c20aa
	
				 | 
					
					
						|||
| 
						
						
							
						
						9793eb491b
	
				 | 
					
					
						|||
| 
						
						
							
						
						8142cdf82f
	
				 | 
					
					
						|||
| 
						
						
							
						
						69787bd90f
	
				 | 
					
					
						|||
| 
						
						
							
						
						3b34decb42
	
				 | 
					
					
						|||
| 
						
						
							
						
						03690a5f9f
	
				 | 
					
					
						|||
| 
						
						
							
						
						00f7814f8e
	
				 | 
					
					
						|||
| 
						
						
							
						
						b1eecdbbda
	
				 | 
					
					
						|||
| 
						
						
							
						
						1b3672b983
	
				 | 
					
					
						|||
| 
						
						
							
						
						3e681a94b1
	
				 | 
					
					
						|||
| 
						
						
							
						
						ab7532e250
	
				 | 
					
					
						|||
| 
						
						
							
						
						3b78319653
	
				 | 
					
					
						|||
| 
						
						
							
						
						dae7f60002
	
				 | 
					
					
						|||
| 
						
						
							
						
						e237f79831
	
				 | 
					
					
						|||
| 
						
						
							
						
						8d0eedb617
	
				 | 
					
					
						|||
| 
						
						
							
						
						f6b863adf3
	
				 | 
					
					
						|||
| 
						
						
							
						
						f4b03038ee
	
				 | 
					
					
						|||
| 
						
						
							
						
						a2ad4853ed
	
				 | 
					
					
						|||
| 
						
						
							
						
						ecb282cabb
	
				 | 
					
					
						|||
| 
						
						
							
						
						6d33d4685c
	
				 | 
					
					
						|||
| 
						
						
							
						
						5ace0bb7f4
	
				 | 
					
					
						|||
| 
						
						
							
						
						c719fad76a
	
				 | 
					
					
						|||
| 
						
						
							
						
						9d34d3250b
	
				 | 
					
					
						|||
| 
						
						
							
						
						cda9cb6570
	
				 | 
					
					
						|||
| 
						
						
							
						
						d3910bda18
	
				 | 
					
					
						|||
| 
						
						
							
						
						98990b8ac9
	
				 | 
					
					
						|||
| 
						
						
							
						
						4fc5fc0df6
	
				 | 
					
					
						|||
| 
						
						
							
						
						3dff4ff428
	
				 | 
					
					
						|||
| 
						
						
							
						
						be88417d59
	
				 | 
					
					
						|||
| 
						
						
							
						
						f16cd95a0f
	
				 | 
					
					
						|||
| 
						
						
							
						
						21f7a2b75c
	
				 | 
					
					
						|||
| 
						
						
							
						
						a912db8044
	
				 | 
					
					
						|||
| 
						
						
							
						
						e0ff04168a
	
				 | 
					
					
						|||
| 
						
						
							
						
						ed2fa7076c
	
				 | 
					
					
						|||
| 
						
						
							
						
						ba47b9b00d
	
				 | 
					
					
						|||
| 
						
						
							
						
						cdbe8ce855
	
				 | 
					
					
						|||
| 
						
						
							
						
						03ae85dff5
	
				 | 
					
					
						|||
| 
						
						
							
						
						ab4bb4e480
	
				 | 
					
					
						|||
| 
						
						
							
						
						2cace82b29
	
				 | 
					
					
						|||
| 
						
						
							
						
						39d5f2a370
	
				 | 
					
					
						|||
| 
						
						
							
						
						09f36fa202
	
				 | 
					
					
						|||
| 
						
						
							
						
						3f274253ff
	
				 | 
					
					
						|||
| 
						
						
							
						
						9a04e70e77
	
				 | 
					
					
						|||
| 
						
						
							
						
						e2d1c57792
	
				 | 
					
					
						|||
| 
						
						
							
						
						6c4767b01e
	
				 | 
					
					
						|||
| 
						
						
							
						
						e08fe1b262
	
				 | 
					
					
						|||
| 
						
						
							
						
						9316d74027
	
				 | 
					
					
						|||
| 
						
						
							
						
						521f462141
	
				 | 
					
					
						|||
| 
						
						
							
						
						322adb478a
	
				 | 
					
					
						|||
| 
						
						
							
						
						1272045e9a
	
				 | 
					
					
						|||
| 
						
						
							
						
						7b8191b737
	
				 | 
					
					
						|||
| 
						
						
							
						
						49b5924f14
	
				 | 
					
					
						|||
| 
						
						
							
						
						91ac3d470d
	
				 | 
					
					
						|||
| 
						
						
							
						
						715349d0f4
	
				 | 
					
					
						|||
| 
						
						
							
						
						0bf16821d5
	
				 | 
					
					
						|||
| 
						
						
							
						
						60bf423556
	
				 | 
					
					
						|||
| 
						
						
							
						
						20f48e25b4
	
				 | 
					
					
						|||
| 
						
						
							
						
						35d08af7ce
	
				 | 
					
					
						|||
| 
						
						
							
						
						ec76965c70
	
				 | 
					
					
						|||
| 
						
						
							
						
						8a5408c002
	
				 | 
					
					
						|||
| 
						
						
							
						
						e7b3c5e3e0
	
				 | 
					
					
						|||
| 
						
						
							
						
						eddb464053
	
				 | 
					
					
						|||
| 
						
						
							
						
						30be10a7f4
	
				 | 
					
					
						|||
| 
						
						
							
						
						8e91156b4e
	
				 | 
					
					
						|||
| 
						
						
							
						
						bd1671fcc8
	
				 | 
					
					
						|||
| 
						
						
							
						
						561582734e
	
				 | 
					
					
						|||
| 
						
						
							
						
						c1ff08b878
	
				 | 
					
					
						|||
| 
						
						
							
						
						ce595c81b6
	
				 | 
					
					
						|||
| 
						
						
							
						
						5c105f4851
	
				 | 
					
					
						|||
| 
						
						
							
						
						8e32bc8618
	
				 | 
					
					
						|||
| 
						
						
							
						
						67676df08a
	
				 | 
					
					
						|||
| 
						
						
							
						
						7209ef65f6
	
				 | 
					
					
						|||
| 
						
						
							
						
						2d414258ca
	
				 | 
					
					
						|||
| 
						
						
							
						
						41fff2dd6c
	
				 | 
					
					
						|||
| 
						
						
							
						
						1f6518193e
	
				 | 
					
					
						|||
| 
						
						
							
						
						08373e019a
	
				 | 
					
					
						|||
| 
						
						
							
						
						58e3e31d7d
	
				 | 
					
					
						|||
| 
						
						
							
						
						fa0e057e2e
	
				 | 
					
					
						|||
| 
						
						
							
						
						6943839b3b
	
				 | 
					
					
						|||
| 
						
						
							
						
						b52496bbb3
	
				 | 
					
					
						|||
| 
						
						
							
						
						308eff050e
	
				 | 
					
					
						|||
| 
						
						
							
						
						bae4f0b819
	
				 | 
					
					
						|||
| 
						
						
							
						
						ee9af5eeca
	
				 | 
					
					
						|||
| 
						
						
							
						
						fbb43dfff5
	
				 | 
					
					
						|||
| d407512522 | |||
| 
						
						
							
						
						f67a8e5f80
	
				 | 
					
					
						|||
| 
						
						
							
						
						d1772bc178
	
				 | 
					
					
						|||
| 
						
						
							
						
						7f79cca7bc
	
				 | 
					
					
						|||
| 
						
						
							
						
						928ef584e6
	
				 | 
					
					
						|||
| 
						
						
							
						
						b58469c1ea
	
				 | 
					
					
						|||
| 
						
						
							
						
						5d55a2eeba
	
				 | 
					
					
						|||
| 
						
						
							
						
						2e5b5d18fe
	
				 | 
					
					
						|||
| 
						
						
							
						
						6e28f1d0c4
	
				 | 
					
					
						|||
| 
						
						
							
						
						3958c544a3
	
				 | 
					
					
						|||
| 
						
						
							
						
						45680df7c5
	
				 | 
					
					
						|||
| 
						
						
							
						
						e6bf7b181f
	
				 | 
					
					
						|||
| 
						
						
							
						
						cd5cb41179
	
				 | 
					
					
						|||
| 
						
						
							
						
						40946fed7c
	
				 | 
					
					
						|||
| 
						
						
							
						
						54bc7448b9
	
				 | 
					
					
						|||
| 
						
						
							
						
						937e0cf2dc
	
				 | 
					
					
						|||
| 
						
						
							
						
						e017568b41
	
				 | 
					
					
						|||
| 
						
						
							
						
						e43b6af0ad
	
				 | 
					
					
						|||
| 
						
						
							
						
						fa79deeb05
	
				 | 
					
					
						|||
| 
						
						
							
						
						90fc09e1a9
	
				 | 
					
					
						|||
| 
						
						
							
						
						7017703cab
	
				 | 
					
					
						|||
| 
						
						
							
						
						4a646b6573
	
				 | 
					
					
						|||
| 
						
						
							
						
						37ad234319
	
				 | 
					
					
						|||
| 
						
						
							
						
						5547ec844c
	
				 | 
					
					
						|||
| 
						
						
							
						
						934944d248
	
				 | 
					
					
						|||
| 
						
						
							
						
						ec0b562960
	
				 | 
					
					
						|||
| 
						
						
							
						
						028c549ea9
	
				 | 
					
					
						|||
| 
						
						
							
						
						96902aee6b
	
				 | 
					
					
						|||
| 
						
						
							
						
						c495293fb7
	
				 | 
					
					
						|||
| 
						
						
							
						
						9aeeee58d0
	
				 | 
					
					
						|||
| 
						
						
							
						
						8e86599372
	
				 | 
					
					
						|||
| 
						
						
							
						
						4b52c21ac9
	
				 | 
					
					
						|||
| 
						
						
							
						
						d985ba7b12
	
				 | 
					
					
						|||
| 
						
						
							
						
						fb68f77812
	
				 | 
					
					
						|||
| 
						
						
							
						
						7deef0edfc
	
				 | 
					
					
						|||
| 
						
						
							
						
						82d7d0409f
	
				 | 
					
					
						|||
| 
						
						
							
						
						133af4caf1
	
				 | 
					
					
						|||
| 
						
						
							
						
						b59f33a1f5
	
				 | 
					
					
						|||
| 
						
						
							
						
						6dc01ac2bd
	
				 | 
					
					
						|||
| 
						
						
							
						
						ce2d5e267a
	
				 | 
					
					
						|||
| 
						
						
							
						
						874e177b8f
	
				 | 
					
					
						|||
| 
						
						
							
						
						7b193b1b99
	
				 | 
					
					
						|||
| 
						
						
							
						
						16c629fc70
	
				 | 
					
					
						|||
| 
						
						
							
						
						02041c3b27
	
				 | 
					
					
						|||
| 
						
						
							
						
						18aa625eca
	
				 | 
					
					
						|||
| 
						
						
							
						
						a45ef24aff
	
				 | 
					
					
						|||
| 
						
						
							
						
						d741e2e6fa
	
				 | 
					
					
						|||
| 
						
						
							
						
						080e92b740
	
				 | 
					
					
						|||
| 
						
						
							
						
						9e9ba8a76f
	
				 | 
					
					
						|||
| 
						
						
							
						
						f2c67c19aa
	
				 | 
					
					
						|||
| 
						
						
							
						
						8ceb3434a0
	
				 | 
					
					
						|||
| 
						
						
							
						
						1929a94ef4
	
				 | 
					
					
						|||
| 
						
						
							
						
						ccce866b55
	
				 | 
					
					
						|||
| 
						
						
							
						
						bbfb8fff3f
	
				 | 
					
					
						|||
| 
						
						
							
						
						ff0d449fa5
	
				 | 
					
					
						|||
| 
						
						
							
						
						936e8828c8
	
				 | 
					
					
						|||
| 
						
						
							
						
						fb480c73c5
	
				 | 
					
					
						|||
| 
						
						
							
						
						bc89989bbb
	
				 | 
					
					
						|||
| 
						
						
							
						
						2770fefefd
	
				 | 
					
					
						|||
| 
						
						
							
						
						0256369cd6
	
				 | 
					
					
						|||
| 
						
						
							
						
						1fdb93e356
	
				 | 
					
					
						|||
| 
						
						
							
						
						f379b758c9
	
				 | 
					
					
						|||
| 
						
						
							
						
						93a2899c7b
	
				 | 
					
					
						|||
| 
						
						
							
						
						df03d9062e
	
				 | 
					
					
						|||
| 
						
						
							
						
						ddf5a1d387
	
				 | 
					
					
						
@@ -1,18 +0,0 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# Graphical-specific environment variables
 | 
			
		||||
export TERMINAL="termite"
 | 
			
		||||
export BROWSER="chromium"
 | 
			
		||||
export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=on -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel"
 | 
			
		||||
export QT_QPA_PLATFORMTHEME=gtk2
 | 
			
		||||
export QT_STYLE_OVERRIDE=gtk2
 | 
			
		||||
export XDG_CURRENT_DESKTOP="GNOME" # Fixes xdg-open
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Load Xorg resources and set the DPI
 | 
			
		||||
xrdb -merge $XDG_CONFIG_HOME/X11/xresources
 | 
			
		||||
xrandr --dpi $(xrdb -query | grep -i xft.dpi | cut -d: -f2)
 | 
			
		||||
 | 
			
		||||
setxkbmap -option caps:none
 | 
			
		||||
xset r rate 200 18
 | 
			
		||||
xmodmap "$XDG_CONFIG_HOME"/X11/xmodmap
 | 
			
		||||
@@ -1,89 +0,0 @@
 | 
			
		||||
! Colour order:
 | 
			
		||||
!   black
 | 
			
		||||
!   red
 | 
			
		||||
!   green
 | 
			
		||||
!   yellow
 | 
			
		||||
!   blue
 | 
			
		||||
!   magenta
 | 
			
		||||
!   cyan
 | 
			
		||||
!   white/gray
 | 
			
		||||
 | 
			
		||||
! Normal colours
 | 
			
		||||
*.color0:       #333638
 | 
			
		||||
*.color1:       #f41f1c
 | 
			
		||||
*.color2:       #8bc34a
 | 
			
		||||
*.color3:       #ffc107
 | 
			
		||||
*.color4:       #0266f4
 | 
			
		||||
*.color5:       #cc17cc
 | 
			
		||||
*.color6:       #10aeba
 | 
			
		||||
*.color7:       #8b9396
 | 
			
		||||
 | 
			
		||||
! Bright colours
 | 
			
		||||
*.color8:       #475760
 | 
			
		||||
*.color9:       #e53727
 | 
			
		||||
*.color10:      #9ccc65
 | 
			
		||||
*.color11:      #ffa000
 | 
			
		||||
*.color12:      #81b3f9
 | 
			
		||||
*.color13:      #a56ecc
 | 
			
		||||
*.color14:      #5ddae2
 | 
			
		||||
*.color15:      #eceff1
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Xft.dpi:        96
 | 
			
		||||
Xft.antialias:  true
 | 
			
		||||
Xft.rgba:       rgb
 | 
			
		||||
Xft.hinting:    true
 | 
			
		||||
Xft.hintstyle:  hintfull
 | 
			
		||||
Xft.lcdfilter:  lcddefault
 | 
			
		||||
 | 
			
		||||
Xcursor.theme: Breeze_Obsidian
 | 
			
		||||
 | 
			
		||||
!!======================!!
 | 
			
		||||
!! RXVT-unicode setting !!
 | 
			
		||||
!!======================!!
 | 
			
		||||
 | 
			
		||||
urxvt.depth:                32
 | 
			
		||||
urxvt.internalBorder:       16
 | 
			
		||||
urxvt.blurRadius:           25
 | 
			
		||||
urxvt.saveLines:            10000
 | 
			
		||||
urxvt.preeditType:          Root
 | 
			
		||||
 | 
			
		||||
urxvt.scrollBar:            false
 | 
			
		||||
urxvt.jumpScroll:           false
 | 
			
		||||
urxvt.scrollTtyOutput:      false
 | 
			
		||||
urxvt.scrollWithBuffer:     true
 | 
			
		||||
urxvt.scrollTtyKeypress:    true
 | 
			
		||||
 | 
			
		||||
urxvt.altSendsEscape:       true
 | 
			
		||||
xterm.metaSendsEscape:      true
 | 
			
		||||
 | 
			
		||||
urxvt.termName:             xterm-256color
 | 
			
		||||
 | 
			
		||||
urxvt.font:                 xft:Source Code Pro:style=regular:size=9
 | 
			
		||||
urxvt.imFont:               xft:Source Code Pro:style=regular:size=9
 | 
			
		||||
urxvt.boldFont:             xft:Source Code Pro:style=bold:size=9
 | 
			
		||||
urxvt.italicFont:           xft:Source Code Pro:style=italic:size=9
 | 
			
		||||
urxvt.boldItalicFont:       xft:Source Code Pro:style=bold,italic:size=9
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
urxvt.iso14755:             false
 | 
			
		||||
urxvt.iso14755_52:          false
 | 
			
		||||
urxvt.perl-ext-common:      default,vtwheel,font-size
 | 
			
		||||
urxvt.url-launcher:         /usr/bin/chromium
 | 
			
		||||
urxvt.matcher.button:       1
 | 
			
		||||
 | 
			
		||||
urxvt.keysym.C-Up:          font-size:increase
 | 
			
		||||
urxvt.keysym.C-Down:        font-size:decrease
 | 
			
		||||
urxvt.keysym.C-equal:       font-size:reset
 | 
			
		||||
urxvt.keysym.C-slash:       font-size:show
 | 
			
		||||
 | 
			
		||||
! special
 | 
			
		||||
*.foreground:               #ECEFF1
 | 
			
		||||
*.background:               #002B36
 | 
			
		||||
*.cursorColor:              #5294E2
 | 
			
		||||
*.highlightColor:           #5294E2
 | 
			
		||||
urxvt.background:           [95]#383C4A
 | 
			
		||||
urxvt.scrollColor:          #767B87
 | 
			
		||||
urxvt.dynamicColors:        on
 | 
			
		||||
urxvt.highlightSelection:   true
 | 
			
		||||
urxvt.colorMode:            on
 | 
			
		||||
										
											Binary file not shown.
										
									
								
							| 
		 Before Width: | Height: | Size: 1.1 KiB  | 
@@ -1,20 +0,0 @@
 | 
			
		||||
imgur_icon_path="$HOME/.config/imgur-screenshot/imgur.ico"
 | 
			
		||||
imgur_acct_key=""
 | 
			
		||||
imgur_secret=""
 | 
			
		||||
login="false"
 | 
			
		||||
log_file="$HOME/.config/imgur-screenshot/imgur-screenshot.log"
 | 
			
		||||
credentials_file="$HOME/.config/imgur-screenshot/credentials.conf"
 | 
			
		||||
file_name_format="screenshot-%Y-%m-%d-%H%M%S.png" # when using scrot, must end with .png!
 | 
			
		||||
file_dir="$HOME/pictures/screenshots"
 | 
			
		||||
screenshot_select_command="maim -m 10 -us %img"
 | 
			
		||||
screenshot_window_command="maim -m 10 -uw %img"
 | 
			
		||||
edit_command="gimp %img"
 | 
			
		||||
edit="false"
 | 
			
		||||
exit_on_selection_fail="true"
 | 
			
		||||
edit_on_selection_fail="false"
 | 
			
		||||
exit_on_album_creation_fail="true"
 | 
			
		||||
open_command="xdg-open %url"
 | 
			
		||||
open="false"
 | 
			
		||||
copy_url="true"
 | 
			
		||||
keep_file="true"
 | 
			
		||||
check_update="true"
 | 
			
		||||
@@ -1,29 +0,0 @@
 | 
			
		||||
[spamfilterplugin]
 | 
			
		||||
filter_text = viagra
 | 
			
		||||
 | 
			
		||||
[core]
 | 
			
		||||
imap_idle_timeout = 10
 | 
			
		||||
enabled_plugins = dbusplugin, libnotifyplugin, soundplugin
 | 
			
		||||
poll_interval = 10
 | 
			
		||||
credentialstore = auto
 | 
			
		||||
connectivity_test = auto
 | 
			
		||||
autostart = 1
 | 
			
		||||
 | 
			
		||||
[soundplugin]
 | 
			
		||||
soundfile = mailnag.ogg
 | 
			
		||||
 | 
			
		||||
[libnotifyplugin]
 | 
			
		||||
notification_mode = 2
 | 
			
		||||
max_visible_mails = 10
 | 
			
		||||
 | 
			
		||||
[account1]
 | 
			
		||||
enabled = 1
 | 
			
		||||
name = frebib.net
 | 
			
		||||
user = me@frebib.net
 | 
			
		||||
password = 
 | 
			
		||||
server = imappro.zoho.com
 | 
			
		||||
port = 993
 | 
			
		||||
ssl = 1
 | 
			
		||||
imap = 1
 | 
			
		||||
idle = 0
 | 
			
		||||
folder = INBOX, Spam
 | 
			
		||||
@@ -1,42 +0,0 @@
 | 
			
		||||
[Default Applications]
 | 
			
		||||
 | 
			
		||||
# eog for images
 | 
			
		||||
image/bmp=eog.desktop
 | 
			
		||||
image/gif=eog.desktop
 | 
			
		||||
image/jpeg=eog.desktop
 | 
			
		||||
image/jpg=eog.desktop
 | 
			
		||||
image/pjpeg=eog.desktop
 | 
			
		||||
image/png=eog.desktop
 | 
			
		||||
image/svg+xml-compressed=eog.desktop
 | 
			
		||||
image/svg+xml=eog.desktop
 | 
			
		||||
image/tiff=eog.desktop
 | 
			
		||||
image/x-bmp=eog.desktop
 | 
			
		||||
image/x-gray=eog.desktop
 | 
			
		||||
image/x-icb=eog.desktop
 | 
			
		||||
image/x-ico=eog.desktop
 | 
			
		||||
image/x-png=eog.desktop
 | 
			
		||||
image/x-portable-anymap=eog.desktop
 | 
			
		||||
image/x-portable-bitmap=eog.desktop
 | 
			
		||||
image/x-portable-graymap=eog.desktop
 | 
			
		||||
image/x-portable-pixmap=eog.desktop
 | 
			
		||||
 | 
			
		||||
# evince for pdfs
 | 
			
		||||
application/pdf=evince.desktop
 | 
			
		||||
 | 
			
		||||
# vim for textual files
 | 
			
		||||
application/x-shellscript=vim.desktop
 | 
			
		||||
text/english=vim.desktop
 | 
			
		||||
text/plain=vim.desktop
 | 
			
		||||
text/x-makefile=vim.desktop
 | 
			
		||||
 | 
			
		||||
# Chromium for web/html
 | 
			
		||||
text/html=chromium.desktop
 | 
			
		||||
x-scheme-handler/about=chromium.desktop
 | 
			
		||||
x-scheme-handler/http=chromium.desktop
 | 
			
		||||
x-scheme-handler/https=chromium.desktop
 | 
			
		||||
x-scheme-handler/unknown=chromium.desktop
 | 
			
		||||
 | 
			
		||||
# Various desktop applications
 | 
			
		||||
inode/directory=nautilus.desktop
 | 
			
		||||
x-scheme-handler/magnet=deluge.desktop
 | 
			
		||||
x-scheme-handler/tg=telegramdesktop.desktop
 | 
			
		||||
@@ -1,10 +0,0 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=autocutsel -selection primary
 | 
			
		||||
PartOf=graphical-session.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
ExecStart=/usr/bin/autocutsel -selection PRIMARY
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=graphical-session.target
 | 
			
		||||
 | 
			
		||||
@@ -1,10 +0,0 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=autocutsel
 | 
			
		||||
PartOf=graphical-session.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
ExecStart=/usr/bin/autocutsel
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=graphical-session.target
 | 
			
		||||
 | 
			
		||||
@@ -1 +0,0 @@
 | 
			
		||||
/home/frebib/.config/systemd/user/profile.service
 | 
			
		||||
@@ -1 +0,0 @@
 | 
			
		||||
/usr/lib/systemd/user/redshift.service
 | 
			
		||||
@@ -1 +0,0 @@
 | 
			
		||||
/home/frebib/.config/systemd/user/autocutsel-primary.service
 | 
			
		||||
@@ -1 +0,0 @@
 | 
			
		||||
/home/frebib/.config/systemd/user/autocutsel.service
 | 
			
		||||
@@ -1,10 +0,0 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Load profile environment into session
 | 
			
		||||
Before=graphical-session-pre.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=oneshot
 | 
			
		||||
ExecStart=/usr/bin/bash -c '. $HOME/.config/dotfiles/.profile && systemctl --user import-environment'
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=basic.target
 | 
			
		||||
@@ -1,10 +0,0 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=XBindKeys
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
ExecStart=/usr/bin/xautolock -time 1 -locker 'dm-tool switch-to-greeter' -detectsleep -resetsaver -secure
 | 
			
		||||
KillMode=process
 | 
			
		||||
Restart=on-failure
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=graphical-session.target
 | 
			
		||||
@@ -1,13 +0,0 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Load Xorg configuration
 | 
			
		||||
PartOf=xorg.target
 | 
			
		||||
Requires=profile.service
 | 
			
		||||
After=xorg.target profile.service
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=oneshot
 | 
			
		||||
RemainAfterExit=yes
 | 
			
		||||
ExecStart=/usr/bin/bash -cx '. $XDG_CONFIG_HOME/X11/xprofile && systemctl --user import-environment'
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=xorg.target
 | 
			
		||||
							
								
								
									
										4
									
								
								.config/zsh/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.config/zsh/.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -1,4 +0,0 @@
 | 
			
		||||
/antigen/
 | 
			
		||||
/log/
 | 
			
		||||
/histfile
 | 
			
		||||
/.zcompdump*
 | 
			
		||||
@@ -1,174 +0,0 @@
 | 
			
		||||
unsetopt MULTIBYTE
 | 
			
		||||
 | 
			
		||||
# Config and cache directory paths
 | 
			
		||||
CONFIG_DIR="${XDG_CONFIG_HOME:-$HOME/.config}"
 | 
			
		||||
ZSH_DIR="$CONFIG_DIR/zsh"
 | 
			
		||||
LOG_DIR="$ZSH_DIR/log"
 | 
			
		||||
mkdir -p "$LOG_DIR"
 | 
			
		||||
 | 
			
		||||
HISTFILE="$ZSH_DIR/histfile"
 | 
			
		||||
HISTSIZE=999999
 | 
			
		||||
SAVEHIST=999999
 | 
			
		||||
 | 
			
		||||
exists() { which $@ 0<&- 1>/dev/null 2>/dev/null; }
 | 
			
		||||
 | 
			
		||||
# Only set tty if running interactively
 | 
			
		||||
if exists tty && tty -s 1>/dev/null 2>/dev/null; then
 | 
			
		||||
    # Resolve at shell runtime
 | 
			
		||||
    export GPG_TTY="$(tty)"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Configure less and add colours
 | 
			
		||||
export LESS="-RI"
 | 
			
		||||
export PAGER="less"
 | 
			
		||||
export MANPAGER="less -+N"
 | 
			
		||||
# Disable histfile
 | 
			
		||||
export LESSHISTFILE=-
 | 
			
		||||
 | 
			
		||||
if exists tput; then
 | 
			
		||||
    export LESS_TERMCAP_mb=$(tput bold; tput setaf 2) # green
 | 
			
		||||
    export LESS_TERMCAP_md=$(tput bold; tput setaf 6) # cyan
 | 
			
		||||
    export LESS_TERMCAP_me=$(tput sgr0)
 | 
			
		||||
    export LESS_TERMCAP_so=$(tput bold; tput setaf 4) # blue
 | 
			
		||||
    export LESS_TERMCAP_se=$(tput rmso; tput sgr0)
 | 
			
		||||
    export LESS_TERMCAP_us=$(tput smul; tput bold; tput setaf 7) # white
 | 
			
		||||
    export LESS_TERMCAP_ue=$(tput rmul; tput sgr0)
 | 
			
		||||
    export LESS_TERMCAP_mr=$(tput rev)
 | 
			
		||||
    export LESS_TERMCAP_mh=$(tput dim)
 | 
			
		||||
    export LESS_TERMCAP_ZN=$(tput ssubm)
 | 
			
		||||
    export LESS_TERMCAP_ZV=$(tput rsubm)
 | 
			
		||||
    export LESS_TERMCAP_ZO=$(tput ssupm)
 | 
			
		||||
    export LESS_TERMCAP_ZW=$(tput rsupm)
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Set some useful ZSH/Bash options
 | 
			
		||||
setopt sharehistory histignorealldups histignorespace histreduceblanks
 | 
			
		||||
setopt pathdirs autocd autopushd extendedglob nullglob alwaystoend interactivecomments dvorak
 | 
			
		||||
 | 
			
		||||
# Completion initialisation
 | 
			
		||||
autoload -U compinit ; compinit
 | 
			
		||||
autoload -U bashcompinit ; bashcompinit
 | 
			
		||||
 | 
			
		||||
# gopass completion
 | 
			
		||||
if exists gopass; then
 | 
			
		||||
    source <(gopass completion bash)
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
zstyle ':completion:*:sudo|_::' environ PATH="/sbin:/usr/sbin:$PATH" HOME="/root"
 | 
			
		||||
zstyle ':completion:*' matcher-list '' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' 'r:|[._-]=** r:|=**' 'l:|=* r:|=*'
 | 
			
		||||
zstyle ':completion:*' rehash true
 | 
			
		||||
zstyle ':completion:*' menu select
 | 
			
		||||
zstyle ':completion:*' list-colors "${(@s.:.)LS_COLORS}"
 | 
			
		||||
zstyle ':compinstall'  filename "${ZDOTDIR:-~}/.zshrc"
 | 
			
		||||
 | 
			
		||||
# Pre-load vi-mode edit-command-line before antigen plugins are loaded
 | 
			
		||||
autoload -z edit-command-line
 | 
			
		||||
zle -N edit-command-line
 | 
			
		||||
 | 
			
		||||
export WORDCHARS='*?_[]~=&;!#$%^(){}'
 | 
			
		||||
x-bash-backward-kill-word(){ WORDCHARS='' zle kill-word; }
 | 
			
		||||
zle -N x-bash-backward-kill-word
 | 
			
		||||
 | 
			
		||||
# Load antigen & plugins
 | 
			
		||||
ADOTDIR="$ZSH_DIR/antigen" # Antigen directory
 | 
			
		||||
ANTIGEN_LOG="$LOG_DIR/antigen-$(date +"%Y_%m_%d_%I_%M_%p").log"
 | 
			
		||||
antigen_src="$ADOTDIR/antigen.zsh"
 | 
			
		||||
if [ ! -f "$antigen_src" ]; then
 | 
			
		||||
    git clone https://github.com/zsh-users/antigen.git "$ADOTDIR"
 | 
			
		||||
fi
 | 
			
		||||
source "$antigen_src"
 | 
			
		||||
 | 
			
		||||
antigen bundle zsh-users/zsh-completions
 | 
			
		||||
antigen bundle zsh-users/zsh-autosuggestions
 | 
			
		||||
antigen bundle zsh-users/zsh-syntax-highlighting@feature/redrawhook
 | 
			
		||||
antigen bundle mafredri/zsh-async
 | 
			
		||||
 | 
			
		||||
antigen apply
 | 
			
		||||
 | 
			
		||||
# Vim mode!
 | 
			
		||||
bindkey -v
 | 
			
		||||
export KEYTIMEOUT=25
 | 
			
		||||
 | 
			
		||||
# Set some key-binds
 | 
			
		||||
bindkey "^[[1;3C" forward-word
 | 
			
		||||
bindkey "^[[1;5C" forward-word
 | 
			
		||||
bindkey "^[[1;3D" backward-word
 | 
			
		||||
bindkey "^[[1;5D" backward-word
 | 
			
		||||
bindkey "^[[7~" beginning-of-line
 | 
			
		||||
bindkey "^[[8~" end-of-line
 | 
			
		||||
bindkey "^[[3~" delete-char
 | 
			
		||||
bindkey "^[[3;3~" delete-word
 | 
			
		||||
bindkey '^[^[[3~' x-bash-backward-kill-word
 | 
			
		||||
bindkey '^[^[[3^' x-bash-backward-kill-word
 | 
			
		||||
bindkey '^[[A' fzf-history-widget                   # Up (fzf)
 | 
			
		||||
bindkey '^[[B' fzf-history-widget                   # Down (fzf)
 | 
			
		||||
bindkey '^F'   fzf-file-widget                      # Ctrl+F file search (fzf)
 | 
			
		||||
 | 
			
		||||
bindkey "^V" edit-command-line
 | 
			
		||||
bindkey -M vicmd "^V" edit-command-line
 | 
			
		||||
 | 
			
		||||
bindkey -M vicmd d vi-backward-char
 | 
			
		||||
bindkey -M vicmd h vi-down-line-or-history
 | 
			
		||||
bindkey -M vicmd t vi-up-line-or-history
 | 
			
		||||
bindkey -M vicmd n vi-forward-char
 | 
			
		||||
bindkey -M vicmd k vi-delete
 | 
			
		||||
bindkey -M vicmd K vi-kill-eol
 | 
			
		||||
bindkey -M vicmd j vi-find-next-char-skip
 | 
			
		||||
bindkey -M vicmd l vi-repeat-search
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ZSH_AUTOSUGGEST_USE_ASYNC=true
 | 
			
		||||
ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE=128
 | 
			
		||||
ZSH_AUTOSUGGEST_CLEAR_WIDGETS=("${(@)ZSH_AUTOSUGGEST_CLEAR_WIDGETS:#(up|down)-line-or-history}")
 | 
			
		||||
 | 
			
		||||
default='fg=12'
 | 
			
		||||
prog='fg=blue'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES=()
 | 
			
		||||
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets root line)
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[root]='bg=red'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[default]=$default
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[arg0]=$prog
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[unknown-token]='fg=red,bold'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[reserved-word]='fg=yellow'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[alias]=$prog
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[suffix-alias]='fg=green'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[builtin]='fg=4'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[function]=$prog
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[command]=$prog
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[precommand]='fg=4'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[commandseparator]='fg=cyan'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[hashed-command]='fg=green'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[path]='fg=cyan'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[path_separator]='fg=cyan'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[path_prefix]='fg=208'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[globbing]='fg=red'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[comment]='fg=7'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[history-expansion]=$default
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[single-hyphen-option]=$default
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[double-hyphen-option]=$default
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[back-quoted-argument]='fg=magenta'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=yellow'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=yellow'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]='fg=yellow'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]='fg=cyan'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]='fg=cyan'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]='fg=cyan'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[assign]='fg=green'
 | 
			
		||||
ZSH_HIGHLIGHT_STYLES[redirection]='fg=cyan,bold'
 | 
			
		||||
 | 
			
		||||
source "$DOTFILES/aliases"
 | 
			
		||||
 | 
			
		||||
# Source secret keys and values into environment
 | 
			
		||||
if [ -f "$XDG_CONFIG_HOME/secrets" ]; then
 | 
			
		||||
    set -o allexport
 | 
			
		||||
    source $XDG_CONFIG_HOME/secrets
 | 
			
		||||
    set +o allexport
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Load some manual plugins
 | 
			
		||||
source "$ZSH_DIR/plugins/sudo.zsh"
 | 
			
		||||
source "$ZSH_DIR/plugins/fish-theme.zsh"
 | 
			
		||||
source "$ZSH_DIR/plugins/git-rprompt.zsh"
 | 
			
		||||
[ -f '/usr/share/fzf/key-bindings.zsh' ] && source /usr/share/fzf/key-bindings.zsh
 | 
			
		||||
[ -f '/usr/share/doc/pkgfile/command-not-found.zsh' ] && source /usr/share/doc/pkgfile/command-not-found.zsh
 | 
			
		||||
[ -r '/usr/share/z/z.sh' ] && source /usr/share/z/z.sh
 | 
			
		||||
@@ -1,14 +0,0 @@
 | 
			
		||||
# ZSH Theme emulating the Fish shell's default prompt.
 | 
			
		||||
 | 
			
		||||
_fishy_collapsed_wd() {
 | 
			
		||||
    pwd | sed -E 's|^'$HOME'|~|;s|(.*)/|\1%|;s|((^\|/)\.?[^/%]{1})[^/%]*|\1|g;s|(.*)%|\1/|'
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Required for dynamic prompt
 | 
			
		||||
setopt prompt_subst
 | 
			
		||||
 | 
			
		||||
local user_color='green'; [ $UID -eq 0 ] && user_color='red'
 | 
			
		||||
PROMPT="%n@%m %F{$user_color}\$(_fishy_collapsed_wd)%f%(!.#.>) "
 | 
			
		||||
PROMPT2='%F{red}\ %f'
 | 
			
		||||
 | 
			
		||||
RPROMPT='%F{red}%(?.. %?)%f'
 | 
			
		||||
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -1,12 +1,12 @@
 | 
			
		||||
bookmarks
 | 
			
		||||
.config/secrets
 | 
			
		||||
 | 
			
		||||
.config/gopass/gopass-logo-small.png
 | 
			
		||||
.config/gtk-2.0/gtkfilechooser.ini
 | 
			
		||||
.config/imgur-screenshot/credentials.conf
 | 
			
		||||
.config/mailnag/mailnag.dat
 | 
			
		||||
.config/zsh/.zshrc.zwc
 | 
			
		||||
 | 
			
		||||
*.log
 | 
			
		||||
.xournal/recent-files
 | 
			
		||||
.vim/bundle
 | 
			
		||||
.vim/swapfiles
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										56
									
								
								.profile
									
									
									
									
									
								
							
							
						
						
									
										56
									
								
								.profile
									
									
									
									
									
								
							@@ -1,56 +0,0 @@
 | 
			
		||||
export LC_ALL=en_GB.UTF-8
 | 
			
		||||
export LANG=en_GB.UTF-8
 | 
			
		||||
export LC_NUMERIC=en_GB
 | 
			
		||||
 | 
			
		||||
export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
 | 
			
		||||
export XDG_CACHE_HOME="${XDG_CACHE_HOME:-$HOME/.cache}"
 | 
			
		||||
export XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}"
 | 
			
		||||
export XDG_LOCAL_HOME="$HOME/.local"
 | 
			
		||||
 | 
			
		||||
mkdir -p "$XDG_CONFIG_HOME" "$XDG_CACHE_HOME" "$XDG_DATA_HOME" "$XDG_LOCAL_HOME"
 | 
			
		||||
 | 
			
		||||
case "$(basename "$(readlink -f /proc/$$/exe)")" in
 | 
			
		||||
    zsh)  thisfile="$(readlink -f "${(%):-%N}")";;
 | 
			
		||||
    bash) thisfile="$(readlink -f "${BASH_SOURCE[0]}")";;
 | 
			
		||||
    *)   thisfile="$(find /proc/$$/fd/ | xargs -n1 -r readlink -f | grep profile | head -n1)";;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
export EDITOR="vim"
 | 
			
		||||
export VISUAL="vim"
 | 
			
		||||
 | 
			
		||||
# Override paths for non-compliant programs
 | 
			
		||||
# https://wiki.archlinux.org/index.php/XDG_Base_Directory_support
 | 
			
		||||
 | 
			
		||||
export CARGO_HOME="$XDG_DATA_HOME/cargo"
 | 
			
		||||
export GNUPGHOME="$XDG_CONFIG_HOME/gnupg"
 | 
			
		||||
export GOPATH="$XDG_DATA_HOME/go"
 | 
			
		||||
export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/settings.ini"
 | 
			
		||||
export NPM_CONFIG_USERCONFIG=$XDG_CONFIG_HOME/npm/npmrc
 | 
			
		||||
export PASSWORD_STORE_DIR="$XDG_DATA_HOME/pass"
 | 
			
		||||
export PYTHONHISTFILE="$XDG_DATA_HOME/python/histfile"
 | 
			
		||||
export RUSTUP_HOME="$XDG_DATA_HOME/rustup"
 | 
			
		||||
export TERMINFO="$XDG_DATA_HOME/terminfo"
 | 
			
		||||
export TERMINFO_DIRS="$XDG_DATA_HOME/terminfo:/usr/share/terminfo"
 | 
			
		||||
export VIMDIR="$XDG_CONFIG_HOME/vim"
 | 
			
		||||
export VIMRC="$VIMDIR/vimrc"
 | 
			
		||||
export VIMINIT=":so $VIMRC"
 | 
			
		||||
export WEECHAT_HOME="$XDG_CONFIG_HOME/weechat"
 | 
			
		||||
export XINITRC="$XDG_CONFIG_HOME/X11/xinitrc"
 | 
			
		||||
export ZDOTDIR="$XDG_CONFIG_HOME/zsh"
 | 
			
		||||
 | 
			
		||||
export DOTFILES="$(dirname "${thisfile:-$XDG_CONFIG_HOME/dotfiles/.profile}")"
 | 
			
		||||
export PATH="${PATH}:/sbin:/usr/sbin:$DOTFILES/scripts:$GOPATH/bin"
 | 
			
		||||
 | 
			
		||||
exists() { which $@ 0<&- 1>/dev/null 2>/dev/null; }
 | 
			
		||||
 | 
			
		||||
if [ -z "$DBUS_SESSION_BUS_ADDRESS" ] && exists dbus-launch; then
 | 
			
		||||
    eval $(dbus-launch --sh-syntax --exit-with-session)
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Execute this after updating dbus/systemd environment
 | 
			
		||||
# Source secret keys and values into environment
 | 
			
		||||
if [ -f "$XDG_CONFIG_HOME/secrets" ]; then
 | 
			
		||||
    set -o allexport
 | 
			
		||||
    source $XDG_CONFIG_HOME/secrets
 | 
			
		||||
    set +o allexport
 | 
			
		||||
fi
 | 
			
		||||
							
								
								
									
										171
									
								
								.xournal/config
									
									
									
									
									
								
							
							
						
						
									
										171
									
								
								.xournal/config
									
									
									
									
									
								
							@@ -1,171 +0,0 @@
 | 
			
		||||
# Xournal configuration file.
 | 
			
		||||
# This file is generated automatically upon saving preferences.
 | 
			
		||||
# Use caution when editing this file manually.
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
[general]
 | 
			
		||||
# the display resolution, in pixels per inch
 | 
			
		||||
display_dpi=96.00
 | 
			
		||||
# the initial zoom level, in percent
 | 
			
		||||
initial_zoom=169.98
 | 
			
		||||
# maximize the window at startup (true/false)
 | 
			
		||||
window_maximize=false
 | 
			
		||||
# start in full screen mode (true/false)
 | 
			
		||||
window_fullscreen=false
 | 
			
		||||
# the window width in pixels (when not maximized)
 | 
			
		||||
window_width=2120
 | 
			
		||||
# the window height in pixels
 | 
			
		||||
window_height=1374
 | 
			
		||||
# scrollbar step increment (in pixels)
 | 
			
		||||
scrollbar_speed=30
 | 
			
		||||
# the step increment in the zoom dialog box
 | 
			
		||||
zoom_dialog_increment=1
 | 
			
		||||
# the multiplicative factor for zoom in/out
 | 
			
		||||
zoom_step_factor=1.500
 | 
			
		||||
# continuous view (false = one page, true = continuous, horiz = horizontal)
 | 
			
		||||
view_continuous=true
 | 
			
		||||
# use XInput extensions (true/false)
 | 
			
		||||
use_xinput=true
 | 
			
		||||
# discard Core Pointer events in XInput mode (true/false)
 | 
			
		||||
discard_corepointer=false
 | 
			
		||||
# ignore events from other devices while drawing (true/false)
 | 
			
		||||
ignore_other_devices=true
 | 
			
		||||
# do not worry if device reports button isn't pressed while drawing (true/false)
 | 
			
		||||
ignore_btn_reported_up=true
 | 
			
		||||
# always map eraser tip to eraser (true/false)
 | 
			
		||||
use_erasertip=true
 | 
			
		||||
# always map touchscreen device to hand tool (true/false) (requires separate pen and touch devices)
 | 
			
		||||
touchscreen_as_hand_tool=true
 | 
			
		||||
# disable touchscreen device when pen is in proximity (true/false) (requires separate pen and touch devices)
 | 
			
		||||
pen_disables_touch=true
 | 
			
		||||
# name of touchscreen device for touchscreen_as_hand_tool
 | 
			
		||||
touchscreen_device_name=NTRG0001:01 1B96:1B05
 | 
			
		||||
# buttons 2 and 3 switch mappings instead of drawing (useful for some tablets) (true/false)
 | 
			
		||||
buttons_switch_mappings=false
 | 
			
		||||
# automatically load filename.pdf.xoj instead of filename.pdf (true/false)
 | 
			
		||||
autoload_pdf_xoj=false
 | 
			
		||||
# enable periodic autosaves (true/false)
 | 
			
		||||
autosave_enabled=true
 | 
			
		||||
# delay for periodic autosaves (in seconds)
 | 
			
		||||
autosave_delay=5
 | 
			
		||||
# default path for open/save (leave blank for current directory)
 | 
			
		||||
default_path=
 | 
			
		||||
# use pressure sensitivity to control pen stroke width (true/false)
 | 
			
		||||
pressure_sensitivity=true
 | 
			
		||||
# minimum width multiplier
 | 
			
		||||
width_minimum_multiplier=0.00
 | 
			
		||||
# maximum width multiplier
 | 
			
		||||
width_maximum_multiplier=1.25
 | 
			
		||||
# interface components from top to bottom
 | 
			
		||||
# valid values: drawarea menu main_toolbar pen_toolbar statusbar
 | 
			
		||||
interface_order=menu main_toolbar pen_toolbar drawarea statusbar
 | 
			
		||||
# interface components in fullscreen mode, from top to bottom
 | 
			
		||||
interface_fullscreen=main_toolbar pen_toolbar drawarea
 | 
			
		||||
# interface has left-handed scrollbar (true/false)
 | 
			
		||||
interface_lefthanded=false
 | 
			
		||||
# hide some unwanted menu or toolbar items (true/false)
 | 
			
		||||
shorten_menus=false
 | 
			
		||||
# interface items to hide (customize at your own risk!)
 | 
			
		||||
# see source file xo-interface.c for a list of item names
 | 
			
		||||
shorten_menu_items=optionsProgressiveBG optionsLeftHanded optionsButtonSwitchMapping
 | 
			
		||||
# highlighter opacity (0 to 1, default 0.5)
 | 
			
		||||
# warning: opacity level is not saved in xoj files!
 | 
			
		||||
highlighter_opacity=0.50
 | 
			
		||||
# auto-save preferences on exit (true/false)
 | 
			
		||||
autosave_prefs=true
 | 
			
		||||
# force PDF rendering through cairo (slower but nicer) (true/false)
 | 
			
		||||
poppler_force_cairo=false
 | 
			
		||||
# prefer xournal's own PDF code for exporting PDFs (true/false)
 | 
			
		||||
exportpdf_prefer_legacy=false
 | 
			
		||||
# export successive layers on separate pages in PDFs (true/false)
 | 
			
		||||
exportpdf_layers=false
 | 
			
		||||
# when attempting to open a non-existent file, treat it as a new file (true/false)
 | 
			
		||||
autocreate_new_xoj=false
 | 
			
		||||
 | 
			
		||||
[paper]
 | 
			
		||||
# the default page width, in points (1/72 in)
 | 
			
		||||
width=595.27
 | 
			
		||||
# the default page height, in points (1/72 in)
 | 
			
		||||
height=841.89
 | 
			
		||||
# the default paper color
 | 
			
		||||
color=white
 | 
			
		||||
# the default paper style (plain, lined, ruled, or graph)
 | 
			
		||||
style=lined
 | 
			
		||||
# apply paper style changes to all pages (true/false)
 | 
			
		||||
apply_all=false
 | 
			
		||||
# preferred unit (cm, in, px, pt)
 | 
			
		||||
default_unit=cm
 | 
			
		||||
# include paper ruling when printing or exporting to PDF (true/false)
 | 
			
		||||
print_ruling=true
 | 
			
		||||
# when creating a new page, duplicate a PDF or image background instead of using default paper (true/false)
 | 
			
		||||
new_page_duplicates_bg=true
 | 
			
		||||
# just-in-time update of page backgrounds (true/false)
 | 
			
		||||
progressive_bg=true
 | 
			
		||||
# bitmap resolution of PS/PDF backgrounds rendered using ghostscript (dpi)
 | 
			
		||||
gs_bitmap_dpi=144
 | 
			
		||||
# bitmap resolution of PDF backgrounds when printing with libgnomeprint (dpi)
 | 
			
		||||
pdftoppm_printing_dpi=150
 | 
			
		||||
 | 
			
		||||
[tools]
 | 
			
		||||
# selected tool at startup (pen, eraser, highlighter, selectregion, selectrect, vertspace, hand, image)
 | 
			
		||||
startup_tool=pen
 | 
			
		||||
# Use the pencil from cursor theme instead of a color dot (true/false)
 | 
			
		||||
pen_cursor=false
 | 
			
		||||
# default pen color
 | 
			
		||||
pen_color=black
 | 
			
		||||
# default pen thickness (fine = 1, medium = 2, thick = 3)
 | 
			
		||||
pen_thickness=2
 | 
			
		||||
# default pen is in ruler mode (true/false)
 | 
			
		||||
pen_ruler=false
 | 
			
		||||
# default pen is in shape recognizer mode (true/false)
 | 
			
		||||
pen_recognizer=false
 | 
			
		||||
# default eraser thickness (fine = 1, medium = 2, thick = 3)
 | 
			
		||||
eraser_thickness=2
 | 
			
		||||
# default eraser mode (standard = 0, whiteout = 1, strokes = 2)
 | 
			
		||||
eraser_mode=2
 | 
			
		||||
# default highlighter color
 | 
			
		||||
highlighter_color=yellow
 | 
			
		||||
# default highlighter thickness (fine = 1, medium = 2, thick = 3)
 | 
			
		||||
highlighter_thickness=2
 | 
			
		||||
# default highlighter is in ruler mode (true/false)
 | 
			
		||||
highlighter_ruler=false
 | 
			
		||||
# default highlighter is in shape recognizer mode (true/false)
 | 
			
		||||
highlighter_recognizer=false
 | 
			
		||||
# button 2 tool (pen, eraser, highlighter, text, selectregion, selectrect, vertspace, hand, image)
 | 
			
		||||
btn2_tool=eraser
 | 
			
		||||
# button 2 brush linked to primary brush (true/false) (overrides all other settings)
 | 
			
		||||
btn2_linked=true
 | 
			
		||||
# button 2 brush color (for pen or highlighter only)
 | 
			
		||||
btn2_color=white
 | 
			
		||||
# button 2 brush thickness (pen, eraser, or highlighter only)
 | 
			
		||||
btn2_thickness=2
 | 
			
		||||
# button 2 ruler mode (true/false) (for pen or highlighter only)
 | 
			
		||||
btn2_ruler=false
 | 
			
		||||
# button 2 shape recognizer mode (true/false) (pen or highlighter only)
 | 
			
		||||
btn2_recognizer=false
 | 
			
		||||
# button 2 eraser mode (eraser only)
 | 
			
		||||
btn2_erasermode=2
 | 
			
		||||
# button 3 tool (pen, eraser, highlighter, text, selectregion, selectrect, vertspace, hand, image)
 | 
			
		||||
btn3_tool=selectregion
 | 
			
		||||
# button 3 brush linked to primary brush (true/false) (overrides all other settings)
 | 
			
		||||
btn3_linked=true
 | 
			
		||||
# button 3 brush color (for pen or highlighter only)
 | 
			
		||||
btn3_color=white
 | 
			
		||||
# button 3 brush thickness (pen, eraser, or highlighter only)
 | 
			
		||||
btn3_thickness=0
 | 
			
		||||
# button 3 ruler mode (true/false) (for pen or highlighter only)
 | 
			
		||||
btn3_ruler=false
 | 
			
		||||
# button 3 shape recognizer mode (true/false) (pen or highlighter only)
 | 
			
		||||
btn3_recognizer=false
 | 
			
		||||
# button 3 eraser mode (eraser only)
 | 
			
		||||
btn3_erasermode=2
 | 
			
		||||
# thickness of the various pens (in points, 1 pt = 1/72 in)
 | 
			
		||||
pen_thicknesses=0.42;0.85;1.41;2.26;5.67
 | 
			
		||||
# thickness of the various erasers (in points, 1 pt = 1/72 in)
 | 
			
		||||
eraser_thicknesses=2.83;8.50;19.84
 | 
			
		||||
# thickness of the various highlighters (in points, 1 pt = 1/72 in)
 | 
			
		||||
highlighter_thicknesses=2.83;8.50;19.84
 | 
			
		||||
# name of the default font
 | 
			
		||||
default_font=Sans
 | 
			
		||||
# default font size
 | 
			
		||||
default_font_size=12.0
 | 
			
		||||
							
								
								
									
										3
									
								
								Element/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								Element/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
*
 | 
			
		||||
!.gitignore
 | 
			
		||||
!config.json
 | 
			
		||||
							
								
								
									
										88
									
								
								Element/config.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								Element/config.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,88 @@
 | 
			
		||||
{
 | 
			
		||||
    "default_server_config": {
 | 
			
		||||
        "m.homeserver": {
 | 
			
		||||
            "base_url": "https://chat.nerdhouse.io/",
 | 
			
		||||
            "server_name": "chat.nerdhouse.io"
 | 
			
		||||
        },
 | 
			
		||||
        "m.identity_server": {
 | 
			
		||||
            "base_url": "https://chat.nerdhouse.io/"
 | 
			
		||||
        }
 | 
			
		||||
    },
 | 
			
		||||
    "disable_custom_urls": false,
 | 
			
		||||
    "disable_guests": false,
 | 
			
		||||
    "disable_login_language_selector": false,
 | 
			
		||||
    "disable_3pid_login": false,
 | 
			
		||||
    "brand": "NerdChat",
 | 
			
		||||
    "integrations_ui_url": "https://scalar.vector.im/",
 | 
			
		||||
    "integrations_rest_url": "https://scalar.vector.im/api",
 | 
			
		||||
    "integrations_widgets_urls": [
 | 
			
		||||
        "https://scalar.vector.im/_matrix/integrations/v1",
 | 
			
		||||
        "https://scalar.vector.im/api",
 | 
			
		||||
        "https://scalar-staging.vector.im/_matrix/integrations/v1",
 | 
			
		||||
        "https://scalar-staging.vector.im/api",
 | 
			
		||||
        "https://scalar-staging.riot.im/scalar/api"
 | 
			
		||||
    ],
 | 
			
		||||
    "bug_report_endpoint_url": "https://riot.im/bugreports/submit",
 | 
			
		||||
    "defaultCountryCode": "GB",
 | 
			
		||||
    "showLabsSettings": false,
 | 
			
		||||
    "features": {
 | 
			
		||||
        "feature_font_scaling": "labs",
 | 
			
		||||
        "feature_pinning": "labs",
 | 
			
		||||
        "feature_custom_status": "labs",
 | 
			
		||||
        "feature_custom_tags": "labs",
 | 
			
		||||
        "feature_state_counters": "labs",
 | 
			
		||||
        "feature_irc_ui": "labs"
 | 
			
		||||
    },
 | 
			
		||||
    "default_federate": true,
 | 
			
		||||
    "default_theme": "dark",
 | 
			
		||||
    "roomDirectory": {
 | 
			
		||||
        "servers": [
 | 
			
		||||
            "matrix.org"
 | 
			
		||||
        ]
 | 
			
		||||
    },
 | 
			
		||||
    "welcomeUserId": "@riot-bot:matrix.org",
 | 
			
		||||
    "piwik": {
 | 
			
		||||
        "url": "https://piwik.riot.im/",
 | 
			
		||||
        "whitelistedHSUrls": ["https://matrix.org"],
 | 
			
		||||
        "whitelistedISUrls": ["https://vector.im", "https://matrix.org"],
 | 
			
		||||
        "siteId": 1
 | 
			
		||||
    },
 | 
			
		||||
    "enable_presence_by_hs_url": {
 | 
			
		||||
        "https://matrix.org": false,
 | 
			
		||||
        "https://matrix-client.matrix.org": false
 | 
			
		||||
    },
 | 
			
		||||
    "settingDefaults": {
 | 
			
		||||
        "breadcrumbs": true,
 | 
			
		||||
        "custom_themes": [
 | 
			
		||||
            {
 | 
			
		||||
                "name": "Arc Dark",
 | 
			
		||||
                "is_dark": true,
 | 
			
		||||
                "fonts": {
 | 
			
		||||
                    "general": "sans",
 | 
			
		||||
                    "monospace": "monospace"
 | 
			
		||||
                },
 | 
			
		||||
                "colors": {
 | 
			
		||||
                    "accent-color": "#5294e2",
 | 
			
		||||
                    "primary-color": "#d3dae3",
 | 
			
		||||
                    "warning-color": "#bf616a",
 | 
			
		||||
 | 
			
		||||
                    "sidebar-color": "#313742",
 | 
			
		||||
                    "roomlist-background-color": "#383c4a",
 | 
			
		||||
                    "roomlist-text-color": "#afb8c5",
 | 
			
		||||
                    "roomlist-text-secondary-color": "#7c818c",
 | 
			
		||||
                    "roomlist-highlights-color": "#404552",
 | 
			
		||||
                    "roomlist-separator-color": "#2F343F",
 | 
			
		||||
 | 
			
		||||
                    "timeline-background-color": "#404552",
 | 
			
		||||
                    "timeline-text-color": "#afb8c5",
 | 
			
		||||
                    "timeline-text-secondary-color": "#7c818c",
 | 
			
		||||
                    "timeline-highlights-color": "#404552",
 | 
			
		||||
                    "reaction-row-button-selected-bg-color": "#bf616a"
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        ]
 | 
			
		||||
    },
 | 
			
		||||
    "jitsi": {
 | 
			
		||||
        "preferredDomain": "jitsi.riot.im"
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -4,7 +4,8 @@
 | 
			
		||||
To get started, clone this repo and link the relevant files/directories
 | 
			
		||||
 | 
			
		||||
```shell
 | 
			
		||||
git clone https://github.com/frebib/dotfiles.git ~/.config/dotfiles
 | 
			
		||||
ln -sfv .config/dotfiles/.config/* .config/
 | 
			
		||||
ln -sfv .config/dotfiles/.profile .zprofile
 | 
			
		||||
git clone https://github.com/frebib/dotfiles.git ~/.config
 | 
			
		||||
ln -sfv .config/zsh/.zshenv ~
 | 
			
		||||
# if it is not already "enabled", make sure the systemd-environment.d generator is active
 | 
			
		||||
sudo ln -sfv /lib/systemd/user-environment-generators/30-systemd-environment-d-generator /lib/systemd/user-generators/
 | 
			
		||||
```
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										24
									
								
								X11/xprofile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								X11/xprofile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
#!/bin/sh -u
 | 
			
		||||
 | 
			
		||||
# Graphical-specific environment variables
 | 
			
		||||
export TERMINAL="alacritty"
 | 
			
		||||
export BROWSER="firefox"
 | 
			
		||||
 | 
			
		||||
export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=on -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel"
 | 
			
		||||
export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/settings.ini"
 | 
			
		||||
export QT_QPA_PLATFORMTHEME=qt5ct
 | 
			
		||||
export XDG_CURRENT_DESKTOP="GNOME" # Fixes xdg-open
 | 
			
		||||
 | 
			
		||||
# https://www.reddit.com/r/linux/comments/72mfv8/psa_for_firefox_users_set_moz_use_xinput21_to/
 | 
			
		||||
export MOZ_USE_XINPUT2=1 # enable pixel-accurate scrolling in firefox
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Load Xorg resources and set the DPI
 | 
			
		||||
xrdb -merge $XDG_CONFIG_HOME/X11/xresources
 | 
			
		||||
xrandr --dpi $(xrdb -query | grep -i xft.dpi | cut -d: -f2)
 | 
			
		||||
 | 
			
		||||
setxkbmap -option caps:none
 | 
			
		||||
xset r rate 200 18
 | 
			
		||||
 | 
			
		||||
test -f "$XDG_CONFIG_HOME"/X11/xmodmap && \
 | 
			
		||||
    xmodmap "$XDG_CONFIG_HOME"/X11/xmodmap
 | 
			
		||||
							
								
								
									
										39
									
								
								X11/xresources
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								X11/xresources
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,39 @@
 | 
			
		||||
! Colour order:
 | 
			
		||||
!   black
 | 
			
		||||
!   red
 | 
			
		||||
!   green
 | 
			
		||||
!   yellow
 | 
			
		||||
!   blue
 | 
			
		||||
!   magenta
 | 
			
		||||
!   cyan
 | 
			
		||||
!   white/gray
 | 
			
		||||
 | 
			
		||||
! Normal colours
 | 
			
		||||
*.color0:       #333638
 | 
			
		||||
*.color1:       #f41f1c
 | 
			
		||||
*.color2:       #8bc34a
 | 
			
		||||
*.color3:       #ffc107
 | 
			
		||||
*.color4:       #0266f4
 | 
			
		||||
*.color5:       #cc17cc
 | 
			
		||||
*.color6:       #10aeba
 | 
			
		||||
*.color7:       #8b9396
 | 
			
		||||
 | 
			
		||||
! Bright colours
 | 
			
		||||
*.color8:       #475760
 | 
			
		||||
*.color9:       #e53727
 | 
			
		||||
*.color10:      #9ccc65
 | 
			
		||||
*.color11:      #ffa000
 | 
			
		||||
*.color12:      #81b3f9
 | 
			
		||||
*.color13:      #a56ecc
 | 
			
		||||
*.color14:      #5ddae2
 | 
			
		||||
*.color15:      #eceff1
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Xft.dpi:        96
 | 
			
		||||
Xft.antialias:  true
 | 
			
		||||
Xft.rgba:       rgb
 | 
			
		||||
Xft.hinting:    true
 | 
			
		||||
Xft.hintstyle:  hintfull
 | 
			
		||||
Xft.lcdfilter:  lcddefault
 | 
			
		||||
 | 
			
		||||
Xcursor.theme: Breeze_Obsidian
 | 
			
		||||
@@ -17,9 +17,9 @@ window:
 | 
			
		||||
  #
 | 
			
		||||
  # Specified in number of columns/lines, not pixels.
 | 
			
		||||
  # If both are `0`, this setting is ignored.
 | 
			
		||||
  #dimensions:
 | 
			
		||||
  #  columns: 0
 | 
			
		||||
  #  lines: 0
 | 
			
		||||
  dimensions:
 | 
			
		||||
    columns: 120
 | 
			
		||||
    lines: 40
 | 
			
		||||
 | 
			
		||||
  # Window position (changes require restart)
 | 
			
		||||
  #
 | 
			
		||||
@@ -51,6 +51,12 @@ window:
 | 
			
		||||
  #     - buttonless: Title bar, transparent background, but no title bar buttons
 | 
			
		||||
  decorations: full
 | 
			
		||||
 | 
			
		||||
  # Background opacity
 | 
			
		||||
  #
 | 
			
		||||
  # Window opacity as a floating point number from `0.0` to `1.0`.
 | 
			
		||||
  # The value `0.0` is completely transparent and `1.0` is opaque.
 | 
			
		||||
  opacity: 0.8
 | 
			
		||||
 | 
			
		||||
  # Startup Mode (changes require restart)
 | 
			
		||||
  #
 | 
			
		||||
  # Values for `startup_mode`:
 | 
			
		||||
@@ -65,6 +71,9 @@ window:
 | 
			
		||||
  # Window title
 | 
			
		||||
  #title: Alacritty
 | 
			
		||||
 | 
			
		||||
  # Allow terminal applications to change Alacritty's window title.
 | 
			
		||||
  dynamic_title: true
 | 
			
		||||
 | 
			
		||||
  # Window class (Linux/BSD only):
 | 
			
		||||
  #class:
 | 
			
		||||
    # Application instance name
 | 
			
		||||
@@ -81,7 +90,7 @@ window:
 | 
			
		||||
scrolling:
 | 
			
		||||
  # Maximum number of lines in the scrollback buffer.
 | 
			
		||||
  # Specifying '0' will disable scrolling.
 | 
			
		||||
  history: 10000
 | 
			
		||||
  history: 100000
 | 
			
		||||
 | 
			
		||||
  # Number of lines the viewport will move for every line scrolled when
 | 
			
		||||
  # scrollback is enabled (history > 0).
 | 
			
		||||
@@ -207,7 +216,7 @@ colors:
 | 
			
		||||
  # background is unset, selection color will be the inverse of the cell colors.
 | 
			
		||||
  # If only text is unset the cell text color will remain the same.
 | 
			
		||||
  selection:
 | 
			
		||||
  #  text: '#eaeaea'
 | 
			
		||||
    text: CellForeground
 | 
			
		||||
    background: '#5294e2'
 | 
			
		||||
 | 
			
		||||
  # Normal colors
 | 
			
		||||
@@ -256,6 +265,13 @@ colors:
 | 
			
		||||
  #
 | 
			
		||||
  #indexed_colors: []
 | 
			
		||||
 | 
			
		||||
  # Transparent cell backgrounds
 | 
			
		||||
  #
 | 
			
		||||
  # Whether or not `window.opacity` applies to all cell backgrounds or only to
 | 
			
		||||
  # the default background. When set to `true` all cells will be transparent
 | 
			
		||||
  # regardless of their background color.
 | 
			
		||||
  transparent_background_colors: false
 | 
			
		||||
 | 
			
		||||
# Visual Bell
 | 
			
		||||
#
 | 
			
		||||
# Any time the BEL code is received, Alacritty "rings" the visual bell. Once
 | 
			
		||||
@@ -282,20 +298,11 @@ colors:
 | 
			
		||||
#  duration: 0
 | 
			
		||||
#  color: '#ffffff'
 | 
			
		||||
 | 
			
		||||
# Background opacity
 | 
			
		||||
#
 | 
			
		||||
# Window opacity as a floating point number from `0.0` to `1.0`.
 | 
			
		||||
# The value `0.0` is completely transparent and `1.0` is opaque.
 | 
			
		||||
background_opacity: 0.85
 | 
			
		||||
 | 
			
		||||
selection:
 | 
			
		||||
  #semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
 | 
			
		||||
 | 
			
		||||
  # When set to `true`, selected text will be copied to the primary clipboard.
 | 
			
		||||
  save_to_clipboard: false
 | 
			
		||||
 | 
			
		||||
# Allow terminal applications to change Alacritty's window title.
 | 
			
		||||
dynamic_title: true
 | 
			
		||||
  save_to_clipboard: true
 | 
			
		||||
 | 
			
		||||
cursor:
 | 
			
		||||
  # Cursor style
 | 
			
		||||
@@ -366,28 +373,6 @@ mouse:
 | 
			
		||||
  # If this is `true`, the cursor is temporarily hidden when typing.
 | 
			
		||||
  hide_when_typing: false
 | 
			
		||||
 | 
			
		||||
  url:
 | 
			
		||||
    # URL launcher
 | 
			
		||||
    #
 | 
			
		||||
    # This program is executed when clicking on a text which is recognized as a URL.
 | 
			
		||||
    # The URL is always added to the command as the last parameter.
 | 
			
		||||
    #
 | 
			
		||||
    # When set to `None`, URL launching will be disabled completely.
 | 
			
		||||
    #
 | 
			
		||||
    # Default:
 | 
			
		||||
    #   - (macOS) open
 | 
			
		||||
    #   - (Linux/BSD) xdg-open
 | 
			
		||||
    #   - (Windows) explorer
 | 
			
		||||
    launcher:
 | 
			
		||||
      program: xdg-open
 | 
			
		||||
      args: []
 | 
			
		||||
 | 
			
		||||
    # URL modifiers
 | 
			
		||||
    #
 | 
			
		||||
    # These are the modifiers that need to be held down for opening URLs when clicking
 | 
			
		||||
    # on them. The available modifiers are documented in the key binding section.
 | 
			
		||||
    #modifiers: None
 | 
			
		||||
 | 
			
		||||
# Mouse bindings
 | 
			
		||||
#
 | 
			
		||||
# Mouse bindings are specified as a list of objects, much like the key
 | 
			
		||||
@@ -597,33 +582,18 @@ key_bindings:
 | 
			
		||||
  #- { key: Key5,   mods: Shift,         mode: Vi, action: Bracket                 }
 | 
			
		||||
 | 
			
		||||
  # (Windows, Linux, and BSD only)
 | 
			
		||||
  - { key: V,        mods: Control|Shift, action: Paste            }
 | 
			
		||||
  - { key: C,        mods: Control|Shift, action: Copy             }
 | 
			
		||||
  - { key: Insert,   mods: Shift,         action: PasteSelection   }
 | 
			
		||||
  - { key: Key0,     mods: Control,       action: ResetFontSize    }
 | 
			
		||||
  - { key: Equals,   mods: Control,       action: ResetFontSize    }
 | 
			
		||||
  - { key: Add,      mods: Control,       action: IncreaseFontSize }
 | 
			
		||||
  - { key: Subtract, mods: Control,       action: DecreaseFontSize }
 | 
			
		||||
  - { key: Minus,    mods: Control,       action: DecreaseFontSize }
 | 
			
		||||
 | 
			
		||||
  # (Windows only)
 | 
			
		||||
  #- { key: Return,   mods: Alt,           action: ToggleFullscreen }
 | 
			
		||||
 | 
			
		||||
  # (macOS only)
 | 
			
		||||
  #- { key: K,      mods: Command, mode: ~Vi, chars: "\x0c"            }
 | 
			
		||||
  #- { key: Key0,   mods: Command,            action: ResetFontSize    }
 | 
			
		||||
  #- { key: Equals, mods: Command,            action: IncreaseFontSize }
 | 
			
		||||
  #- { key: Add,    mods: Command,            action: IncreaseFontSize }
 | 
			
		||||
  #- { key: Minus,  mods: Command,            action: DecreaseFontSize }
 | 
			
		||||
  #- { key: K,      mods: Command,            action: ClearHistory     }
 | 
			
		||||
  #- { key: V,      mods: Command,            action: Paste            }
 | 
			
		||||
  #- { key: C,      mods: Command,            action: Copy             }
 | 
			
		||||
  #- { key: H,      mods: Command,            action: Hide             }
 | 
			
		||||
  #- { key: M,      mods: Command,            action: Minimize         }
 | 
			
		||||
  #- { key: Q,      mods: Command,            action: Quit             }
 | 
			
		||||
  #- { key: W,      mods: Command,            action: Quit             }
 | 
			
		||||
  #- { key: N,      mods: Command,            action: SpawnNewInstance }
 | 
			
		||||
  #- { key: F,      mods: Command|Control,    action: ToggleFullscreen }
 | 
			
		||||
  - { key: V,              mods: Control|Shift,           action: Paste            }
 | 
			
		||||
  - { key: C,              mods: Control|Shift,           action: Copy             }
 | 
			
		||||
  - { key: F,              mods: Control|Shift,           action: SearchForward    }
 | 
			
		||||
  - { key: B,              mods: Control|Shift,           action: SearchBackward   }
 | 
			
		||||
  - { key: C,              mods: Control|Shift, mode: Vi, action: ClearSelection   }
 | 
			
		||||
  - { key: Insert,         mods: Shift,                   action: PasteSelection   }
 | 
			
		||||
  - { key: Key0,           mods: Control,                 action: ResetFontSize    }
 | 
			
		||||
  - { key: Equals,         mods: Control,                 action: IncreaseFontSize }
 | 
			
		||||
  - { key: Plus,           mods: Control,                 action: IncreaseFontSize }
 | 
			
		||||
  - { key: NumpadAdd,      mods: Control,                 action: IncreaseFontSize }
 | 
			
		||||
  - { key: Minus,          mods: Control,                 action: DecreaseFontSize }
 | 
			
		||||
  - { key: NumpadSubtract, mods: Control,                 action: DecreaseFontSize }
 | 
			
		||||
 | 
			
		||||
debug:
 | 
			
		||||
  # Display the time it takes to redraw each frame.
 | 
			
		||||
							
								
								
									
										185
									
								
								aliases
									
									
									
									
									
								
							
							
						
						
									
										185
									
								
								aliases
									
									
									
									
									
								
							@@ -1,52 +1,41 @@
 | 
			
		||||
case "$(basename "$(readlink -f /proc/$$/exe)")" in
 | 
			
		||||
    zsh)  thisfile="$(readlink -f "${(%):-%N}")";;
 | 
			
		||||
    bash) thisfile="$(readlink -f "${BASH_SOURCE[0]}")";;
 | 
			
		||||
    *)   thisfile="$(find /proc/$$/fd/ -print0 | xargs -0 -n1 -r readlink -f | grep aliases | head -n1)";;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
# Global aliases for ZSH
 | 
			
		||||
if alias -g 2>/dev/null; then
 | 
			
		||||
    alias -g ...=../..
 | 
			
		||||
    alias -g ....=../../..
 | 
			
		||||
    alias -g .....=../../../..
 | 
			
		||||
    alias -g ......=../../../../..
 | 
			
		||||
    alias -g H='| head'
 | 
			
		||||
    alias -g T='| tail'
 | 
			
		||||
    alias -g G='| grep'
 | 
			
		||||
    alias -g L="| less"
 | 
			
		||||
    alias -g C="| wc -l"
 | 
			
		||||
    alias -g S="| sort"
 | 
			
		||||
    alias -g U="| uniq"
 | 
			
		||||
    alias -g count="| wc -l"
 | 
			
		||||
    alias -g NO="1> /dev/null"
 | 
			
		||||
    alias -g NE="2> /dev/null"
 | 
			
		||||
    alias -g NUL="&> /dev/null"
 | 
			
		||||
    alias -g BG="&;disown"
 | 
			
		||||
    alias -g COL="| column -t"
 | 
			
		||||
    alias -g CLIP="| xclip -i -selection primary -f | xclip -i -selection clipboard"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# File default aliases
 | 
			
		||||
if alias -s 2>/dev/null; then
 | 
			
		||||
    alias -s pdf="open"
 | 
			
		||||
    alias -s zip="unzip -l"
 | 
			
		||||
    alias -s rar="unrar l"
 | 
			
		||||
    alias -s tar="tar tf"
 | 
			
		||||
    alias -s gz="tar tf"
 | 
			
		||||
    alias -s jar="java -jar"
 | 
			
		||||
    alias -s git="git clone --recursive"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
alias ..la="cd ..;la"
 | 
			
		||||
alias ..ll="cd..;ll"
 | 
			
		||||
alias ..l="..ll"
 | 
			
		||||
 | 
			
		||||
alias l=ll
 | 
			
		||||
alias ls='ls --color=auto'
 | 
			
		||||
alias ll="ls -lFh  --group-directories-first"
 | 
			
		||||
alias la="ls -lAFh --group-directories-first"
 | 
			
		||||
alias lt='ls -lAFh --sort=time'
 | 
			
		||||
alias ll='ls -lFh  --group-directories-first'
 | 
			
		||||
alias la='ls -lAFh --group-directories-first'
 | 
			
		||||
alias lt='ls -lFh  --sort=time'
 | 
			
		||||
alias lat='ls -lAFh --sort=time'
 | 
			
		||||
alias lsz='ls -lAFh --sort=size'
 | 
			
		||||
alias al=la # No, I don't need the Mono Assembly Linker
 | 
			
		||||
 | 
			
		||||
alias md="mkdir -p"
 | 
			
		||||
alias rd="rmdir -p"
 | 
			
		||||
alias md='mkdir -p'
 | 
			
		||||
alias rd='rmdir -p'
 | 
			
		||||
alias -- -='cd -'
 | 
			
		||||
alias cdt='cd `mktemp -d`'
 | 
			
		||||
cdt() { cd "$(mktemp -d -t "${1:-tmp}.XXXXXXXX")"; }
 | 
			
		||||
 | 
			
		||||
alias svi=sudoedit
 | 
			
		||||
alias svim=sudoedit
 | 
			
		||||
@@ -60,23 +49,23 @@ alias open=xdg-open
 | 
			
		||||
alias rm='rm -i'
 | 
			
		||||
alias mv='mv -i'
 | 
			
		||||
alias cp='cp -ir'
 | 
			
		||||
alias scp='scp -r'
 | 
			
		||||
alias dd='dd status=progress'
 | 
			
		||||
alias ssh="ssh -tt"
 | 
			
		||||
alias wget="wget --hsts-file=$XDG_DATA_HOME/wget/hsts-file"
 | 
			
		||||
alias wget='wget --hsts-file=$XDG_DATA_HOME/wget/hsts-file'
 | 
			
		||||
alias vi=vim
 | 
			
		||||
alias grip='grip --user=frebib --pass=$GRIP_API_KEY'
 | 
			
		||||
alias acme.sh='$XDG_CONFIG_HOME/acme.sh/acme.sh --home $XDG_CONFIG_HOME/acme.sh --config-home $XDG_CONFIG_HOME/acme.sh --log $XDG_CONFIG_HOME/acme.sh/acme.sh.log'
 | 
			
		||||
alias acmesh='$XDG_CONFIG_HOME/acme.sh/acme.sh --home $XDG_CONFIG_HOME/acme.sh --config-home $XDG_CONFIG_HOME/acme.sh --log $XDG_CONFIG_HOME/acme.sh/acme.sh.log'
 | 
			
		||||
alias alpine-sdk='docker run -ti --rm \
 | 
			
		||||
alias alpine-sdk="docker run -ti --rm \
 | 
			
		||||
    -e USER \
 | 
			
		||||
    -e UID="$(id -u)" \
 | 
			
		||||
    -e UID=\"\$(id -u)\" \
 | 
			
		||||
    -e PWD \
 | 
			
		||||
    -e HOME \
 | 
			
		||||
    -w $PWD \
 | 
			
		||||
    -v $PWD:$PWD \
 | 
			
		||||
    -v ~/.abuild:$HOME/.abuild \
 | 
			
		||||
    -w \$PWD \
 | 
			
		||||
    -v \$PWD:\$PWD \
 | 
			
		||||
    -v ~/.abuild:\$HOME/.abuild \
 | 
			
		||||
    -v ~/.abuild/distfiles:/var/cache/distfiles \
 | 
			
		||||
    frebib/alpine-sdk:edge'
 | 
			
		||||
    frebib/alpine-sdk:edge"
 | 
			
		||||
alias abuild='alpine-sdk abuild'
 | 
			
		||||
alias abuild-sign='alpine-sdk abuild-sign'
 | 
			
		||||
alias apk='alpine-sdk apk'
 | 
			
		||||
@@ -100,9 +89,9 @@ vim --version 2>/dev/null | command grep -q +clientserver && \
 | 
			
		||||
    alias vim="vim --servername vim -p"
 | 
			
		||||
 | 
			
		||||
# Function aliases
 | 
			
		||||
env() { command env $@ | stripansi | sort; }
 | 
			
		||||
mcd(){ mkdir -p -- $@ && cd -- $@; }
 | 
			
		||||
randstr() { tr -dc 'a-zA-Z0-9' < /dev/urandom | fold -w $1 | head -n 1; }
 | 
			
		||||
env() { command env "$@" | stripansi | sort; }
 | 
			
		||||
mcd(){ mkdir -p -- "$@" && cd -- "$@"; }
 | 
			
		||||
randstr() { tr -dc 'a-zA-Z0-9' < /dev/urandom | fold -w "$1" | head -n 1; }
 | 
			
		||||
 | 
			
		||||
# System aliases
 | 
			
		||||
alias sc="systemctl"
 | 
			
		||||
@@ -115,7 +104,9 @@ alias kl='killall -s 9'
 | 
			
		||||
alias chx='chmod +x'
 | 
			
		||||
 | 
			
		||||
# Git Aliases
 | 
			
		||||
alias git='TZ=UTC git'
 | 
			
		||||
alias g=git
 | 
			
		||||
alias ginit='git init'
 | 
			
		||||
alias gignore='$EDITOR .gitignore'
 | 
			
		||||
alias gitc='$EDITOR $XDG_CONFIG_HOME/git/config'
 | 
			
		||||
alias ggignore='$EDITOR $XDG_CONFIG_HOME/git/gitignore'
 | 
			
		||||
@@ -128,23 +119,34 @@ alias gau="git add -u"
 | 
			
		||||
alias gaN="git add -N"
 | 
			
		||||
alias gaa="ga -A"
 | 
			
		||||
alias grm="git rm"
 | 
			
		||||
alias gc="git commit"
 | 
			
		||||
alias gcm="gc -m"
 | 
			
		||||
gcmst() { git stash -u -k && git commit -m "$1" && git stash pop; }
 | 
			
		||||
alias gca="git commit --amend --date=\"$(date -R)\""
 | 
			
		||||
alias gcn="git commit --no-edit"
 | 
			
		||||
alias gcan="gca --no-edit"
 | 
			
		||||
alias gcam="gca -m"
 | 
			
		||||
alias gc="git commit -s"
 | 
			
		||||
alias gcm="git commit -s -em"
 | 
			
		||||
alias gca="git commit -s --amend --date=\"\$(date -R)\""
 | 
			
		||||
alias gcn="git commit -s --no-edit"
 | 
			
		||||
alias gcan="gca -s --no-edit"
 | 
			
		||||
alias gcam="gca -s -m"
 | 
			
		||||
alias gst="git status"
 | 
			
		||||
 | 
			
		||||
alias gm="git merge"
 | 
			
		||||
alias gma="git merge --abort"
 | 
			
		||||
 | 
			
		||||
alias grb="git rebase"
 | 
			
		||||
alias grbi="grb -i"
 | 
			
		||||
alias grba="grb --abort"
 | 
			
		||||
alias grbc="grb --continue"
 | 
			
		||||
alias grbsk="grb --skip"
 | 
			
		||||
alias grbsh="grb --show-current"
 | 
			
		||||
alias grbom="git rebase origin/master"
 | 
			
		||||
gfrb() { remote="${1%/*}"; git fetch "$remote" && git rebase "$@"; }
 | 
			
		||||
gfrbi() { remote="${1%/*}"; git fetch "$remote" && git rebase -i "$@"; }
 | 
			
		||||
 | 
			
		||||
alias gam="git am"
 | 
			
		||||
alias gama="git am --abort"
 | 
			
		||||
alias gamc="git am --continue"
 | 
			
		||||
 | 
			
		||||
alias gcp="git cherry-pick"
 | 
			
		||||
alias gcpa="git cherry-pick --abort"
 | 
			
		||||
alias gcpc="git cherry-pick --continue"
 | 
			
		||||
 | 
			
		||||
alias gf="git fetch"
 | 
			
		||||
alias gp="git push"
 | 
			
		||||
@@ -159,18 +161,19 @@ alias gd="git diff --patch-with-stat"
 | 
			
		||||
alias gdni="gd --no-index"
 | 
			
		||||
alias gds="gd --staged"
 | 
			
		||||
alias gsh="git show --format=fuller --patch-with-stat"
 | 
			
		||||
alias glg="git log --color --format=fuller --stat"
 | 
			
		||||
alias glgp="git log --color --format=fuller --patch-with-stat"
 | 
			
		||||
alias glg="git log --color --format=fuller --stat --no-merges --graph"
 | 
			
		||||
alias glgp="git log --color --format=fuller --patch-with-stat --no-merges --graph"
 | 
			
		||||
alias glog="git log --color --oneline --decorate --graph"
 | 
			
		||||
 | 
			
		||||
alias grst="git reset"
 | 
			
		||||
alias gundo="git reset --keep @~1"
 | 
			
		||||
alias gclean="git clean"
 | 
			
		||||
alias gbr="git branch"
 | 
			
		||||
alias gbrl="git for-each-ref --sort=committerdate refs/heads/ --format=\"%(refname:short)\" | fzf -x --ansi --multi --preview-window=right:70% --preview=\"git log --format=fuller --stat --color=always {} | head -n\$((\$(tput lines)*10))\""
 | 
			
		||||
alias gtg="git tag"
 | 
			
		||||
alias gbl="git blame"
 | 
			
		||||
alias gr="git remote"
 | 
			
		||||
alias grv="git remote -v"
 | 
			
		||||
alias grv="git revert"
 | 
			
		||||
alias gra="gr add"
 | 
			
		||||
alias grr="gr rm"
 | 
			
		||||
alias grao="gra origin"
 | 
			
		||||
@@ -187,7 +190,7 @@ alias d=docker
 | 
			
		||||
alias dps="docker ps --format='table {{.ID}}\t{{.Image}}\t{{.Label \"org.label-schema.version\"}}\t{{.Networks}}\t{{.RunningFor}}\t{{.Status}}\t{{.Names}}' | sed '1s/version/VERSION/'"
 | 
			
		||||
alias dpsa="docker ps -a --format='table {{.ID}}\t{{.Image}}\t{{.Label \"org.label-schema.version\"}}\t{{.Networks}}\t{{.RunningFor}}\t{{.Status}}\t{{.Names}}' | sed '1s/version/VERSION/'"
 | 
			
		||||
alias dnets="docker network ls -q | xargs docker inspect | jq '.[] | select(.Name != \"host\" and .Name != \"none\") | [.] | map(.Name + \"\t\" + (.IPAM.Config | map(.Subnet) | join(\"\t\")))[]' -r | sort -V -k2,3 | column -t"
 | 
			
		||||
daddrs() { docker inspect ${1:-bridge} | jq '.[0].Containers | map(.Name + "\t" + .IPv4Address + "\t" + .IPv6Address)[]' -r | sort -V -k2,3 | column -t; }
 | 
			
		||||
daddrs() { docker inspect "${1:-bridge}" | jq '.[0].Containers | map(.Name + "\t" + .IPv4Address + "\t" + .IPv6Address)[]' -r | sort -V -k2,3 | column -t; }
 | 
			
		||||
alias din='docker inspect'
 | 
			
		||||
alias drm='docker rm'
 | 
			
		||||
alias drmi='docker rmi'
 | 
			
		||||
@@ -196,30 +199,32 @@ alias dbl='docker build --pull'
 | 
			
		||||
alias dbl.='docker build --pull .'
 | 
			
		||||
alias drun='docker run -ti'
 | 
			
		||||
alias dkl='docker kill'
 | 
			
		||||
dklrm() { docker kill $@ ; docker rm $@; }
 | 
			
		||||
alias drmf='docker rm -f'
 | 
			
		||||
alias dst='docker stop'
 | 
			
		||||
alias drst='docker restart'
 | 
			
		||||
alias dnet='docker network'
 | 
			
		||||
alias dvol='docker volume'
 | 
			
		||||
alias dlg='docker logs -f'
 | 
			
		||||
alias dc='docker compose'
 | 
			
		||||
alias dlg='docker logs --tail=1000 -f'
 | 
			
		||||
alias dalpine='docker run -ti --rm spritsail/alpine /bin/sh'
 | 
			
		||||
alias drm-stopped='docker container prune'
 | 
			
		||||
alias drmi-untag='docker image prune'
 | 
			
		||||
alias dprune='docker system prune -f'
 | 
			
		||||
dsh() { do_dsh 2 exec $@; return $?; }
 | 
			
		||||
_dsh() { __docker_complete_running_containers $@; }
 | 
			
		||||
drsh() { do_dsh 4 run --rm --entrypoint= $@; return $?; }
 | 
			
		||||
_drsh() { __docker_container_subcommand $@; }
 | 
			
		||||
dsh() { do_dsh 2 exec "$@"; return $?; }
 | 
			
		||||
_dsh() { __docker_complete_running_containers "$@"; }
 | 
			
		||||
drsh() { do_dsh 4 run --rm --entrypoint= "$@"; return $?; }
 | 
			
		||||
_drsh() { __docker_container_subcommand "$@"; }
 | 
			
		||||
do_dsh() {
 | 
			
		||||
    local minargs=$1
 | 
			
		||||
    shift
 | 
			
		||||
    if [ $# -lt $minargs ]; then
 | 
			
		||||
    if [ $# -lt "$minargs" ]; then
 | 
			
		||||
        # shellcheck disable=SC2154
 | 
			
		||||
        echo "Usage: ${funcstack[2]} [user@]container [program [args]]" >&2
 | 
			
		||||
        return 64
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    local dowhat="$1"
 | 
			
		||||
    local docker_args=()
 | 
			
		||||
    local docker_args=("$dowhat" -ti)
 | 
			
		||||
    shift
 | 
			
		||||
 | 
			
		||||
    while [ "${1:0:1}" = '-' ]; do
 | 
			
		||||
@@ -231,76 +236,84 @@ do_dsh() {
 | 
			
		||||
        shift
 | 
			
		||||
    done
 | 
			
		||||
 | 
			
		||||
    local user="$(echo "$1" | cut -d'@' -f1 -s)"
 | 
			
		||||
    local prog="${@:2:$#}"
 | 
			
		||||
    local usercmd=""
 | 
			
		||||
    local user
 | 
			
		||||
    user="$(echo "$1" | cut -d@ -f1 -s)"
 | 
			
		||||
 | 
			
		||||
    declare -a prog
 | 
			
		||||
    prog=("${@:2:$#}")
 | 
			
		||||
    if [ -z "$user" ]; then
 | 
			
		||||
        host="$1"
 | 
			
		||||
    else
 | 
			
		||||
        host=`echo $1 | cut -d'@' -f2 -s`
 | 
			
		||||
        usercmd="--user=$user"
 | 
			
		||||
        host="$(cut -d@ -f2 -s <<< "$1")"
 | 
			
		||||
        docker_args+=("--user=$user")
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ "$dowhat" = 'exec' -a -z "$(docker ps -q -f name="$host")" <&- ]; then
 | 
			
		||||
    if [ "$dowhat" = exec ] && [ -z "$(docker ps -q -f name="$host" <&-)" ]; then
 | 
			
		||||
        echo "No such container $host" >&2
 | 
			
		||||
        return 5
 | 
			
		||||
    fi
 | 
			
		||||
    if [ "$dowhat" = run ]; then
 | 
			
		||||
        docker image pull "$host"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ -z "$prog" ]; then
 | 
			
		||||
        shell_args=()
 | 
			
		||||
    if [ ${#prog[@]} = 0 ]; then
 | 
			
		||||
        shell_args=("$dowhat")
 | 
			
		||||
        if [ "$dowhat" = 'run' ]; then
 | 
			
		||||
            shell_args=(--rm --entrypoint=)
 | 
			
		||||
            shell_args+=(--rm --entrypoint=)
 | 
			
		||||
        fi
 | 
			
		||||
        for shell in bash sh; do
 | 
			
		||||
            shell_path="$(set -o pipefail; docker $dowhat ${shell_args[@]} "$host" which "$shell" <&- | sed 's|[\r\n]||g')"
 | 
			
		||||
            shell_path="$(set -o pipefail; docker "${shell_args[@]}" "$host" which "$shell" <&- | sed 's|[\r\n]||g')"
 | 
			
		||||
            retval=$?
 | 
			
		||||
            if [ $retval -eq 0 ]; then
 | 
			
		||||
                prog="$shell_path"
 | 
			
		||||
                prog=("$shell_path")
 | 
			
		||||
                break
 | 
			
		||||
            elif [ $retval -ge 125 ]; then
 | 
			
		||||
                return
 | 
			
		||||
            fi
 | 
			
		||||
        done
 | 
			
		||||
        if [ -z "$prog" ]; then
 | 
			
		||||
        if [ ${#prog[@]} = 0 ]; then
 | 
			
		||||
            echo "Warning: No shell found in path.. trying /bin/sh" >&2
 | 
			
		||||
            prog=/bin/sh
 | 
			
		||||
            prog=(/bin/sh)
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    docker $dowhat ${docker_args[@]} -ti $usercmd $host $(xargs <<< $prog)
 | 
			
		||||
    docker "${docker_args[@]}" "$host" "${prog[@]}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
alias dc='docker-compose'
 | 
			
		||||
alias dm='docker-machine'
 | 
			
		||||
dmc() { eval $(docker-machine env $1); }
 | 
			
		||||
dmc() { eval "$(docker-machine env "$1")"; }
 | 
			
		||||
 | 
			
		||||
# ZFS aliases
 | 
			
		||||
alias zfs='sudo zfs'
 | 
			
		||||
alias zpool='sudo zpool'
 | 
			
		||||
alias z=zfs
 | 
			
		||||
alias zp=zpool
 | 
			
		||||
zl() { (set -o pipefail; command zfs list $@ | grep -Ev 'docker/[0-9a-f]{64}' | column -t -R 2,3,4); return $?; }
 | 
			
		||||
_zl() { _zfs "list $@"; }
 | 
			
		||||
zl() { (set -o pipefail; command zfs list "$@" | grep -Ev 'docker/[0-9a-f]{64}' | column -t -R 2,3,4); return $?; }
 | 
			
		||||
_zl() { _zfs "list $*"; }
 | 
			
		||||
 | 
			
		||||
# General Aliases
 | 
			
		||||
alias ssha='eval `ssh-agent` ; ssh-add'
 | 
			
		||||
alias aliases="$EDITOR $DOTFILES/aliases ; exec zsh"
 | 
			
		||||
alias vimrc="$EDITOR $VIMRC"
 | 
			
		||||
alias zshrc="$EDITOR ${ZDOTDIR:-$HOME}/.zshrc ; exec zsh"
 | 
			
		||||
alias gitrc="$EDITOR $XDG_CONFIG_HOME/git/config"
 | 
			
		||||
alias xinitrc="$EDITOR $XDG_CONFIG_HOME/X11/xinitrc"
 | 
			
		||||
alias xresources="$EDITOR $XDG_CONFIG_HOME/X11/xresources ; xrdb merge $XDG_CONFIG_HOME/X11/xresources"
 | 
			
		||||
alias sshc="$EDITOR ~/.ssh/config"
 | 
			
		||||
alias dotfiles="cd $DOTFILES"
 | 
			
		||||
alias i3c="$EDITOR $XDG_CONFIG_HOME/i3/config; systemctl --user reload i3"
 | 
			
		||||
alias polybarc="$EDITOR $XDG_CONFIG_HOME/polybar/config; systemctl --user restart polybar@i3bar"
 | 
			
		||||
alias ssha="eval \"\$(ssh-agent)\"; ssh-add"
 | 
			
		||||
# shellcheck disable=SC2139
 | 
			
		||||
alias aliases="\$EDITOR $thisfile ; exec zsh"
 | 
			
		||||
alias vimrc="\$EDITOR \$VIMRC"
 | 
			
		||||
alias zshrc="\$EDITOR \${ZDOTDIR:-\$HOME}/.zshrc ; exec zsh"
 | 
			
		||||
alias gitrc="\$EDITOR \$XDG_CONFIG_HOME/git/config"
 | 
			
		||||
alias xinitrc="\$EDITOR \$XDG_CONFIG_HOME/X11/xinitrc"
 | 
			
		||||
alias xresources="\$EDITOR \$XDG_CONFIG_HOME/X11/xresources ; xrdb merge \$XDG_CONFIG_HOME/X11/xresources"
 | 
			
		||||
alias sshc="\$EDITOR ~/.ssh/config"
 | 
			
		||||
alias dotfiles="cd \$XDG_CONFIG_HOME"
 | 
			
		||||
alias i3c="\$EDITOR \$XDG_CONFIG_HOME/i3/config; systemctl --user reload i3"
 | 
			
		||||
alias polybarc="\$EDITOR \$XDG_CONFIG_HOME/polybar/config; systemctl --user reload polybar@i3bar"
 | 
			
		||||
 | 
			
		||||
alias sf=screenfetch
 | 
			
		||||
alias nf=neofetch
 | 
			
		||||
alias rot13="tr '[A-Za-z]' '[N-ZA-Mn-za-m]'"
 | 
			
		||||
 | 
			
		||||
# Networking aliases
 | 
			
		||||
alias ipa="ip a"
 | 
			
		||||
alias addrs="ip a | grep inet | grep -ve fe80 -e '127\\.0\\.0\\.1/8' -e '::1/128' | sort -n | sed 's/^\\s*//'"
 | 
			
		||||
 | 
			
		||||
# alertmanager
 | 
			
		||||
alias alert='amtool alert'
 | 
			
		||||
alias silence='amtool silence'
 | 
			
		||||
alias expire='amtool silence expire'
 | 
			
		||||
unsilence() { { for inst in "$@"; do amtool silence query instance=$inst | grep -Po '^([0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12})' | tee /dev/stderr | xargs -r amtool silence expire & done; wait; } | cat }
 | 
			
		||||
 | 
			
		||||
# vim: ft=sh
 | 
			
		||||
 
 | 
			
		||||
@@ -140,7 +140,7 @@
 | 
			
		||||
    dmenu = /usr/bin/rofi -dmenu -i -p '' -config ~/.config/dunst/dunst-xresources
 | 
			
		||||
 | 
			
		||||
    # Browser for opening urls in context menu.
 | 
			
		||||
    browser = /usr/bin/chromium
 | 
			
		||||
    browser = /usr/bin/firefox
 | 
			
		||||
 | 
			
		||||
    # Align icons left/right/off
 | 
			
		||||
    icon_position = left
 | 
			
		||||
							
								
								
									
										14
									
								
								environment.d/10-profile.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								environment.d/10-profile.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
LC_ALL="en_GB.UTF-8"
 | 
			
		||||
LANG="en_GB.UTF-8"
 | 
			
		||||
LC_NUMERIC="en_GB"
 | 
			
		||||
 | 
			
		||||
XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
 | 
			
		||||
XDG_CACHE_HOME="${XDG_CACHE_HOME:-$HOME/.cache}"
 | 
			
		||||
XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}"
 | 
			
		||||
 | 
			
		||||
EDITOR="vim"
 | 
			
		||||
VISUAL="vim"
 | 
			
		||||
 | 
			
		||||
PATH="${PATH}:/sbin:/usr/sbin:${HOME}/.local/bin:${XDG_CONFIG_HOME}/scripts"
 | 
			
		||||
 | 
			
		||||
# vim: ft=sh
 | 
			
		||||
							
								
								
									
										27
									
								
								environment.d/20-xdg-overrides.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								environment.d/20-xdg-overrides.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
			
		||||
# Override paths for non-compliant programs
 | 
			
		||||
# https://wiki.archlinux.org/index.php/XDG_Base_Directory_support
 | 
			
		||||
 | 
			
		||||
ASPELL_CONF="per-conf $XDG_CONFIG_HOME/aspell/aspell.conf; personal $XDG_CONFIG_HOME/aspell/en.pws; repl $XDG_CONFIG_HOME/aspell/en.prepl"
 | 
			
		||||
CARGO_HOME="$XDG_DATA_HOME/cargo"
 | 
			
		||||
GNUPGHOME="$XDG_CONFIG_HOME/gnupg"
 | 
			
		||||
GEM_HOME="$XDG_DATA_HOME/gem"
 | 
			
		||||
GEM_SPEC_CACHE="$XDG_CACHE_HOME/gem"
 | 
			
		||||
GOPATH="$XDG_DATA_HOME/go"
 | 
			
		||||
ICEAUTHORITY="$XDG_CACHE_HOME/ICEauthority"
 | 
			
		||||
NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME/npm/npmrc"
 | 
			
		||||
#PASSWORD_STORE_DIR="$XDG_DATA_HOME/pass"
 | 
			
		||||
PYTHONSTARTUP="$XDG_CONFIG_HOME/python/startup"
 | 
			
		||||
RUSTUP_HOME="$XDG_DATA_HOME/rustup"
 | 
			
		||||
TERMINFO="$XDG_DATA_HOME/terminfo"
 | 
			
		||||
TERMINFO_DIRS="$XDG_DATA_HOME/terminfo:/usr/share/terminfo"
 | 
			
		||||
TS3_CONFIG_DIR="$XDG_CONFIG_HOME/teamspeak3"
 | 
			
		||||
VIMDIR="$XDG_CONFIG_HOME/vim"
 | 
			
		||||
VIMRC="$VIMDIR/vimrc"
 | 
			
		||||
VIMINIT=":so $VIMRC"
 | 
			
		||||
WEECHAT_HOME="$XDG_CONFIG_HOME/weechat"
 | 
			
		||||
XINITRC="$XDG_CONFIG_HOME/X11/xinitrc"
 | 
			
		||||
ZDOTDIR="$XDG_CONFIG_HOME/zsh"
 | 
			
		||||
 | 
			
		||||
PATH="${PATH}:${GOPATH}/bin:${GEM_HOME}/bin"
 | 
			
		||||
 | 
			
		||||
# vim: ft=sh
 | 
			
		||||
@@ -8,7 +8,11 @@
 | 
			
		||||
            <string>Noto Color Emoji</string>
 | 
			
		||||
            <string>FontAwesome 5 Pro Light</string>
 | 
			
		||||
        </edit>
 | 
			
		||||
 | 
			
		||||
        <edit name="hintstyle" mode="assign"><const>hintnone</const></edit>
 | 
			
		||||
        <edit mode="assign" name="hinting"><bool>false</bool></edit>
 | 
			
		||||
    </match>
 | 
			
		||||
 | 
			
		||||
    <match>
 | 
			
		||||
        <test qual="any" name="family"><string>serif</string></test>
 | 
			
		||||
        <edit name="family" mode="prepend" binding="strong">
 | 
			
		||||
@@ -17,6 +21,7 @@
 | 
			
		||||
            <string>FontAwesome 5 Pro Light</string>
 | 
			
		||||
        </edit>
 | 
			
		||||
    </match>
 | 
			
		||||
 | 
			
		||||
    <match>
 | 
			
		||||
        <test qual="any" name="family"><string>monospace</string></test>
 | 
			
		||||
        <edit name="family" mode="prepend" binding="strong">
 | 
			
		||||
@@ -26,13 +31,28 @@
 | 
			
		||||
        </edit>
 | 
			
		||||
    </match>
 | 
			
		||||
 | 
			
		||||
    <match target="font">
 | 
			
		||||
    <match>
 | 
			
		||||
        <test qual="all" name="family" compare="eq"><string>Noto Sans</string></test>
 | 
			
		||||
        <edit name="hintstyle" mode="assign"><const>hintnone</const></edit>
 | 
			
		||||
    </match>
 | 
			
		||||
    <match target="font">
 | 
			
		||||
 | 
			
		||||
    <match>
 | 
			
		||||
        <test qual="all" name="family" compare="eq"><string>Source Code Pro</string></test>
 | 
			
		||||
        <edit name="hintstyle" mode="assign"><const>hintfull</const></edit>
 | 
			
		||||
        <edit name="antialias" mode="assign_replace"><bool>false</bool></edit>
 | 
			
		||||
        <edit name="hintstyle" mode="assign_replace"><const>hintfull</const></edit>
 | 
			
		||||
        <edit name="lcdfilter" mode="assign_replace"><const>lcddefault</const></edit>
 | 
			
		||||
        <edit name="rgba" mode="assign_replace"><const>rgb</const></edit>
 | 
			
		||||
    </match>
 | 
			
		||||
 | 
			
		||||
    <alias>
 | 
			
		||||
        <family>SF Mono</family>
 | 
			
		||||
        <accept>
 | 
			
		||||
            <family>monospace</family>
 | 
			
		||||
        </accept>
 | 
			
		||||
    </alias>
 | 
			
		||||
 | 
			
		||||
    <match>
 | 
			
		||||
        <edit name="antialias" mode="assign"><bool>true</bool></edit>
 | 
			
		||||
        <edit name="lcdfilter" mode="assign"><const>lcddefault</const></edit>
 | 
			
		||||
        <edit name="rgba" mode="assign"><const>rgb</const></edit>
 | 
			
		||||
    </match>
 | 
			
		||||
							
								
								
									
										82
									
								
								fsh/fish.ini
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										82
									
								
								fsh/fish.ini
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,82 @@
 | 
			
		||||
[base]
 | 
			
		||||
default          = 12
 | 
			
		||||
unknown-token    = red,bold
 | 
			
		||||
commandseparator = cyan
 | 
			
		||||
redirection      = cyan,bold
 | 
			
		||||
here-string-tri  = yellow
 | 
			
		||||
here-string-text = 18
 | 
			
		||||
here-string-var  = cyan,bg:18
 | 
			
		||||
exec-descriptor  = yellow,bold
 | 
			
		||||
comment          = 7
 | 
			
		||||
correct-subtle   = 12
 | 
			
		||||
incorrect-subtle = red
 | 
			
		||||
subtle-separator = green
 | 
			
		||||
subtle-bg        = bg:18
 | 
			
		||||
secondary        =
 | 
			
		||||
recursive-base   =
 | 
			
		||||
 | 
			
		||||
[command-point]
 | 
			
		||||
reserved-word  = yellow
 | 
			
		||||
subcommand     = yellow
 | 
			
		||||
alias          = blue
 | 
			
		||||
suffix-alias   = green
 | 
			
		||||
global-alias   = blue,bold
 | 
			
		||||
builtin        = blue
 | 
			
		||||
function       = blue
 | 
			
		||||
command        = blue
 | 
			
		||||
precommand     = blue
 | 
			
		||||
hashed-command = green
 | 
			
		||||
single-sq-bracket = green
 | 
			
		||||
double-sq-bracket = green
 | 
			
		||||
double-paren   = yellow
 | 
			
		||||
 | 
			
		||||
[paths]
 | 
			
		||||
path          = cyan
 | 
			
		||||
pathseparator = cyan
 | 
			
		||||
path-to-dir   = magenta,underline
 | 
			
		||||
globbing      = red
 | 
			
		||||
globbing-ext  = 13
 | 
			
		||||
 | 
			
		||||
[brackets]
 | 
			
		||||
paired-bracket = bg:blue
 | 
			
		||||
bracket-level-1 = green,bold
 | 
			
		||||
bracket-level-2 = yellow,bold
 | 
			
		||||
bracket-level-3 = cyan,bold
 | 
			
		||||
 | 
			
		||||
[arguments]
 | 
			
		||||
single-hyphen-option   = 12
 | 
			
		||||
double-hyphen-option   = 12
 | 
			
		||||
back-quoted-argument   = none
 | 
			
		||||
single-quoted-argument = yellow
 | 
			
		||||
double-quoted-argument = yellow
 | 
			
		||||
dollar-quoted-argument = yellow
 | 
			
		||||
 | 
			
		||||
[in-string]
 | 
			
		||||
; backslash in $'...'
 | 
			
		||||
back-dollar-quoted-argument           = cyan
 | 
			
		||||
; backslash or $... in "..."
 | 
			
		||||
back-or-dollar-double-quoted-argument = cyan
 | 
			
		||||
 | 
			
		||||
[other]
 | 
			
		||||
variable             = 113
 | 
			
		||||
assign               = green
 | 
			
		||||
assign-array-bracket = green
 | 
			
		||||
history-expansion    = blue,bold
 | 
			
		||||
 | 
			
		||||
[math]
 | 
			
		||||
mathvar = blue,bold
 | 
			
		||||
mathnum = magenta
 | 
			
		||||
matherr = red
 | 
			
		||||
 | 
			
		||||
[for-loop]
 | 
			
		||||
forvar = none
 | 
			
		||||
fornum = magenta
 | 
			
		||||
; operator
 | 
			
		||||
foroper = yellow
 | 
			
		||||
; separator
 | 
			
		||||
forsep = yellow,bold
 | 
			
		||||
 | 
			
		||||
[case]
 | 
			
		||||
case-input       = green
 | 
			
		||||
case-parentheses = yellow
 | 
			
		||||
case-condition   = bg:blue
 | 
			
		||||
@@ -6,18 +6,23 @@
 | 
			
		||||
	autocrlf = input
 | 
			
		||||
	excludesfile = /home/frebib/.config/git/gitignore
 | 
			
		||||
	pager = diff-highlight | $PAGER
 | 
			
		||||
[init]
 | 
			
		||||
	defaultBranch = master
 | 
			
		||||
[interactive]
 | 
			
		||||
	diffFilter = diff-highlight
 | 
			
		||||
[commit]
 | 
			
		||||
	gpgsign = true
 | 
			
		||||
[fetch]
 | 
			
		||||
	prune = true
 | 
			
		||||
[push]
 | 
			
		||||
	default = upstream
 | 
			
		||||
[pull]
 | 
			
		||||
	rebase = true
 | 
			
		||||
	prune = true
 | 
			
		||||
[rebase]
 | 
			
		||||
	autoStash = true
 | 
			
		||||
[log]
 | 
			
		||||
	date = relative
 | 
			
		||||
	date = iso8601-local
 | 
			
		||||
[format]
 | 
			
		||||
	pretty = format:%h %Cblue%ad%Creset %ae %Cgreen%s%Creset
 | 
			
		||||
[alias]
 | 
			
		||||
@@ -25,9 +30,11 @@
 | 
			
		||||
	pushall = !git remote | xargs -L1 git push
 | 
			
		||||
	count = !echo $(pwd) && git rev-list HEAD --count
 | 
			
		||||
	unpushed = !git log --oneline @{u}..HEAD
 | 
			
		||||
	leaders = !git shortlog -s -n --all --no-merges
 | 
			
		||||
[advice]
 | 
			
		||||
	statusHints = false
 | 
			
		||||
	pushUpdateRejected = false
 | 
			
		||||
	detachedHead = false
 | 
			
		||||
[sendemail]
 | 
			
		||||
	from = Joe Groocock <me@frebib.net>
 | 
			
		||||
	smtpserver = smtp.zoho.com
 | 
			
		||||
@@ -1,7 +1,6 @@
 | 
			
		||||
# DO NOT EDIT! This file will be overwritten by LXAppearance.
 | 
			
		||||
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
 | 
			
		||||
 | 
			
		||||
include "/home/frebib/.gtkrc-2.0.mine"
 | 
			
		||||
gtk-theme-name="Arc-Dark"
 | 
			
		||||
gtk-icon-theme-name="Xenlism-Wildfire"
 | 
			
		||||
gtk-font-name="Noto Sans 9"
 | 
			
		||||
@@ -107,48 +107,51 @@ client.unfocused        $inactive-bg-color  $inactive-bg-color $inactive-text-co
 | 
			
		||||
client.focused_inactive $inactive-bg-color  $inactive-bg-color $inactive-text-color $bg-color
 | 
			
		||||
client.urgent           $urgent-bg-color    $urgent-bg-color   $text-color          $bg-color
 | 
			
		||||
 | 
			
		||||
exec_always --no-startup-id feh --no-fehbg --no-xinerama --bg-fill $DOTFILES/lakesidesunrise.jpg
 | 
			
		||||
 | 
			
		||||
# Window rules
 | 
			
		||||
for_window [class="Pinentry"] floating enable
 | 
			
		||||
for_window [class="Pavucontrol"] floating enable
 | 
			
		||||
for_window [class="Blueman-manager"] floating enable
 | 
			
		||||
for_window [class="floating-term" instance="termite"] floating enable
 | 
			
		||||
for_window [class="Alacritty" instance="floating-term"] floating enable
 | 
			
		||||
for_window [class="^jetbrains-.+$" title="win0"] floating enable
 | 
			
		||||
for_window [window_role="floating-term"] floating enable
 | 
			
		||||
for_window [window_role="pop-up"] floating enable
 | 
			
		||||
for_window [window_role="i3blocks-update-term"] floating enable
 | 
			
		||||
for_window [window_role="i3blocks-clock-term"] floating enable
 | 
			
		||||
for_window [title="^rofi$"] floating enable
 | 
			
		||||
for_window [class="^Rofi$"] floating enable
 | 
			
		||||
 | 
			
		||||
new_window none
 | 
			
		||||
new_float none
 | 
			
		||||
 | 
			
		||||
gaps inner 20
 | 
			
		||||
gaps inner 24
 | 
			
		||||
gaps outer 4
 | 
			
		||||
 | 
			
		||||
focus_follows_mouse yes
 | 
			
		||||
popup_during_fullscreen smart
 | 
			
		||||
 | 
			
		||||
# keybindings
 | 
			
		||||
bindsym $mod+Shift+j            reload
 | 
			
		||||
bindsym $mod+c                  exec systemd-run --user --scope --slice=chromium.slice --no-block -- chromium
 | 
			
		||||
bindsym $mod+b                  exec systemd-run --user --scope --slice=firefox.slice --no-block -- firefox
 | 
			
		||||
bindsym $mod+v                  exec "i3-sensible-terminal -e \\"$SHELL -c vim;$SHELL\\"
 | 
			
		||||
bindsym $mod+Ctrl+v             exec "i3-sensible-terminal -r floating-term -e \\"$SHELL -c vim;$SHELL\\"
 | 
			
		||||
bindsym $mod+Return             exec i3-sensible-terminal
 | 
			
		||||
bindsym $mod+Ctrl+Return        exec i3-sensible-terminal -r floating-term
 | 
			
		||||
bindsym $mod+Shift+Return       exec i3-sensible-terminal -d "`xcwd`"
 | 
			
		||||
bindsym $mod+Ctrl+Shift+Return  exec i3-sensible-terminal -r floating-term -d "`xcwd`"
 | 
			
		||||
bindsym --release $mod+x        exec xkill
 | 
			
		||||
bindsym $mod+c                  exec notify-send "Try again" "You meant \\\$mod+b"
 | 
			
		||||
bindsym $mod+b                  exec systemd-run-i3 -n firefox
 | 
			
		||||
bindsym $mod+Return             exec systemd-run-i3 -n alacritty
 | 
			
		||||
bindsym $mod+Ctrl+Return        exec systemd-run-i3 -n alacritty --class floating
 | 
			
		||||
bindsym $mod+Shift+Return       exec systemd-run-i3 -n alacritty --working-directory "$(xcwd)"
 | 
			
		||||
bindsym $mod+Ctrl+Shift+Return  exec systemd-run-i3 -n alacritty --class floating --working-directory "$(xcwd)"
 | 
			
		||||
bindsym $mod+v                  exec systemd-run-i3 -n alacritty -e sh -c "($SHELL -c $EDITOR || :) && $SHELL"
 | 
			
		||||
bindsym $mod+Ctrl+v             exec systemd-run-i3 -n alacritty --class floating -e sh -c "($SHELL -c $EDITOR || : ) && $SHELL"
 | 
			
		||||
bindsym $mod+l                  exec dm-tool switch-to-greeter
 | 
			
		||||
bindsym $mod+space              exec "pkill rofi; rofi -show run -sidebar-mode -terminal i3-sensible-terminal -normal-window"
 | 
			
		||||
bindsym $mod+space              exec "pkill rofi; rofi -show run -sidebar-mode -terminal i3-sensible-terminal -normal-window -run-command 'systemd-run-i3 -n {cmd}'"
 | 
			
		||||
bindsym $mod+Shift+p            exec rofi-pass --root $(grep path ~/.config/gopass/config.yml | sed -E 's|^.*fs\+file://||g' | tr '\n' ':') | sed 's/:$//g'
 | 
			
		||||
bindsym $mod+Shift+e            exec rofi-emoji
 | 
			
		||||
bindsym $mod+Shift+e            exec "pkill rofi; rofi -show emoji -modi emoji -normal-window"
 | 
			
		||||
bindsym $mod+Shift+i            exec rofi-fontawesome
 | 
			
		||||
bindsym --release Print         exec screenshot
 | 
			
		||||
bindsym --release $mod+Print    exec imgur-screenshot
 | 
			
		||||
bindsym $mod+$alt+space         exec --no-startup-id ~/.config/i3/cycleaudio.py && pkill -RTMIN+10 i3blocks
 | 
			
		||||
bindsym $mod+numbersign         exec "i3-sensible-terminal -e 'sh -c xclip\ -o\ |\ gpg\ --decrypt\ 2>&1\ \;\ $SHELL'"
 | 
			
		||||
bindsym $mod+r                  exec "bash -c 'pwgen -nc 32 1 | tee >(xargs notify-send Generated\ password\:) | xclip -i'"
 | 
			
		||||
bindsym $mod+g                  exec "LINK=$(gist -PRpc); notify-send -c transfer \\"$LINK\\""
 | 
			
		||||
bindsym --release $mod+i        exec sh -c 'sleep 0.5 && xdotool type --delay 400 "$(xclip -o -selection clipboard)"'
 | 
			
		||||
bindsym --release $mod+Print    exec screenshot --clip
 | 
			
		||||
bindsym --release Shift+Print   exec screenshot --active
 | 
			
		||||
bindsym --release $mod+Shift+Print exec screenshot --active --clip
 | 
			
		||||
bindsym $mod+Shift+x            exec systemd-run-i3 -n i3-sensible-terminal --class floating-term --hold -e /bin/echo "$(xprop -id $(xdotool getactivewindow))"
 | 
			
		||||
bindsym $mod+$alt+space         exec systemd-run-i3 -s background -n ~/.config/i3/cycleaudio.py
 | 
			
		||||
bindsym $mod+numbersign         exec systemd-run-i3 -n i3-sensible-terminal --hold -e sh -c 'xclip -o | gpg --decrypt 2>&1'
 | 
			
		||||
bindsym $mod+r                  exec bash -c 'pwgen -snc 32 1 | tee >(xargs notify-send Generated\ password\:) | xclip -i -r'
 | 
			
		||||
bindsym $mod+g                  exec systemd-run-i3 -n notify-send -c transfer "$(gist -PRpc)"
 | 
			
		||||
bindsym --release $mod+i        exec systemd-run-i3 -s background -n sh -c 'sleep 0.5 && xdotool getactivewindow type --delay 250 "$(xclip -o -selection clipboard)"'
 | 
			
		||||
 | 
			
		||||
# Media player controls
 | 
			
		||||
bindsym XF86AudioPlay           exec --no-startup-id playerctl -a play-pause
 | 
			
		||||
@@ -159,7 +162,7 @@ bindsym XF86AudioPrev           exec --no-startup-id playerctl -a previous
 | 
			
		||||
bindsym XF86AudioRaiseVolume    exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@  +1000
 | 
			
		||||
bindsym XF86AudioLowerVolume    exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@  -1000
 | 
			
		||||
bindsym XF86AudioMute           exec --no-startup-id pactl set-sink-mute   @DEFAULT_SINK@ toggle
 | 
			
		||||
bindsym XF86MonBrightnessUp     exec xbacklight -inc 5 && pkill -RTMIN+12 i3blocks
 | 
			
		||||
bindsym XF86MonBrightnessDown   exec xbacklight -dec 5 && pkill -RTMIN+12 i3blocks
 | 
			
		||||
bindsym XF86MonBrightnessUp     exec light -A 5
 | 
			
		||||
bindsym XF86MonBrightnessDown   exec light -U 5
 | 
			
		||||
 | 
			
		||||
# vim:ft=i3
 | 
			
		||||
@@ -1,10 +1,11 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
option=$(echo "lock|logout|sleep|hibernate|power off|reboot|windows" | rofi -sep "|" -dmenu -i -p "" -auto-select -hide-scrollbar -monitor 0 -width 10 -lines 7 -location 3 -tokenize false -matching normal | xargs)
 | 
			
		||||
option="$(echo "  lock|  logout|  sleep|  hibernate|  power off|  reboot|  windows" | \
 | 
			
		||||
    rofi -sep "|" -dmenu -i -p "" -auto-select -hide-scrollbar -monitor 0 -width 10 -lines 7 -location 3 -tokenize false -matching normal | cut -d' ' -f2- | xargs)"
 | 
			
		||||
 | 
			
		||||
case $option in
 | 
			
		||||
    lock) dm-tool switch-to-greeter;;
 | 
			
		||||
    logout) i3-msg exit;;
 | 
			
		||||
    logout) systemctl --user exit;;
 | 
			
		||||
    sleep) systemctl suspend;;
 | 
			
		||||
    hibernate) systemctl hibernate;;
 | 
			
		||||
    power\ off) systemctl poweroff;;
 | 
			
		||||
@@ -12,7 +13,5 @@ case $option in
 | 
			
		||||
    windows)
 | 
			
		||||
        windows=`efibootmgr | grep -Po -m1 'Boot\K(\d{4}).*Windows.*' | head -c4`
 | 
			
		||||
        sudo efibootmgr -n $windows
 | 
			
		||||
        sudo hibereboot;;
 | 
			
		||||
        reboot;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
exit 0
 | 
			
		||||
							
								
								
									
										55
									
								
								ideavim/ideavimrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								ideavim/ideavimrc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,55 @@
 | 
			
		||||
noremap d h
 | 
			
		||||
noremap h j
 | 
			
		||||
noremap t k
 | 
			
		||||
noremap n l
 | 
			
		||||
noremap D H
 | 
			
		||||
noremap H J
 | 
			
		||||
noremap T K
 | 
			
		||||
noremap N L
 | 
			
		||||
 | 
			
		||||
noremap gh gj
 | 
			
		||||
noremap gt gk
 | 
			
		||||
 | 
			
		||||
" I work with tabs every now and then. No, I don't have a mnemonic, so
 | 
			
		||||
" stfu.
 | 
			
		||||
noremap gj gt
 | 
			
		||||
noremap gJ gT
 | 
			
		||||
 | 
			
		||||
" Window movement, equally important
 | 
			
		||||
noremap <C-w>d <C-w>h
 | 
			
		||||
noremap <C-w>h <C-w>j
 | 
			
		||||
noremap <C-w>t <C-w>k
 | 
			
		||||
noremap <C-w>n <C-w>l
 | 
			
		||||
 | 
			
		||||
nnoremap <C-w><C-d> <C-w><C-h>
 | 
			
		||||
nnoremap <C-w><C-h> <C-w><C-j>
 | 
			
		||||
nnoremap <C-w><C-t> <C-w><C-k>
 | 
			
		||||
nnoremap <C-w><C-n> <C-w><C-l>
 | 
			
		||||
 | 
			
		||||
nnoremap <C-d> <C-w>h
 | 
			
		||||
nnoremap <C-h> <C-w>j
 | 
			
		||||
nnoremap <C-t> <C-w>k
 | 
			
		||||
nnoremap <C-n> <C-w>l
 | 
			
		||||
 | 
			
		||||
" Account for tag jumping
 | 
			
		||||
nnoremap <C-j> <C-t>
 | 
			
		||||
 | 
			
		||||
" Remappings for the D key
 | 
			
		||||
noremap k d
 | 
			
		||||
noremap K D
 | 
			
		||||
 | 
			
		||||
" Remappings for the T key
 | 
			
		||||
noremap j t
 | 
			
		||||
"noremap J T
 | 
			
		||||
 | 
			
		||||
" Remapping for the L key
 | 
			
		||||
noremap l n
 | 
			
		||||
noremap L N
 | 
			
		||||
 | 
			
		||||
" General purpose help; the originals remain for convenience
 | 
			
		||||
noremap - 0
 | 
			
		||||
noremap _ $
 | 
			
		||||
 | 
			
		||||
" Fold-related keybindings
 | 
			
		||||
noremap zh zj
 | 
			
		||||
noremap zt zk
 | 
			
		||||
							
								
								
									
										42
									
								
								mimeapps.list
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								mimeapps.list
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
			
		||||
[Default Applications]
 | 
			
		||||
 | 
			
		||||
# eog for images
 | 
			
		||||
image/bmp=org.gnome.eog.desktop
 | 
			
		||||
image/gif=org.gnome.eog.desktop
 | 
			
		||||
image/jpeg=org.gnome.eog.desktop
 | 
			
		||||
image/jpg=org.gnome.eog.desktop
 | 
			
		||||
image/pjpeg=org.gnome.eog.desktop
 | 
			
		||||
image/png=org.gnome.eog.desktop
 | 
			
		||||
image/svg+xml-compressed=org.gnome.eog.desktop
 | 
			
		||||
image/svg+xml=org.gnome.eog.desktop
 | 
			
		||||
image/tiff=org.gnome.eog.desktop
 | 
			
		||||
image/x-bmp=org.gnome.eog.desktop
 | 
			
		||||
image/x-gray=org.gnome.eog.desktop
 | 
			
		||||
image/x-icb=org.gnome.eog.desktop
 | 
			
		||||
image/x-ico=org.gnome.eog.desktop
 | 
			
		||||
image/x-png=org.gnome.eog.desktop
 | 
			
		||||
image/x-portable-anymap=org.gnome.eog.desktop
 | 
			
		||||
image/x-portable-bitmap=org.gnome.eog.desktop
 | 
			
		||||
image/x-portable-graymap=org.gnome.eog.desktop
 | 
			
		||||
image/x-portable-pixmap=org.gnome.eog.desktop
 | 
			
		||||
 | 
			
		||||
# evince for pdfs
 | 
			
		||||
application/pdf=org.gnome.Evince.desktop
 | 
			
		||||
 | 
			
		||||
# vim for textual files
 | 
			
		||||
application/x-shellscript=vim.desktop
 | 
			
		||||
text/english=vim.desktop
 | 
			
		||||
text/plain=vim.desktop
 | 
			
		||||
text/x-makefile=vim.desktop
 | 
			
		||||
 | 
			
		||||
# Firefox for web/html
 | 
			
		||||
text/html=firefox.desktop
 | 
			
		||||
x-scheme-handler/about=firefox.desktop
 | 
			
		||||
x-scheme-handler/http=firefox.desktop
 | 
			
		||||
x-scheme-handler/https=firefox.desktop
 | 
			
		||||
x-scheme-handler/unknown=firefox.desktop
 | 
			
		||||
 | 
			
		||||
# Various desktop applications
 | 
			
		||||
inode/directory=nautilus.desktop
 | 
			
		||||
x-scheme-handler/magnet=deluge.desktop
 | 
			
		||||
x-scheme-handler/tg=telegramdesktop.desktop
 | 
			
		||||
							
								
								
									
										41
									
								
								parcellite/parcelliterc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								parcellite/parcelliterc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,41 @@
 | 
			
		||||
[rc]
 | 
			
		||||
RCVersion=1
 | 
			
		||||
use_copy=true
 | 
			
		||||
use_primary=true
 | 
			
		||||
synchronize=true
 | 
			
		||||
save_history=true
 | 
			
		||||
history_pos=false
 | 
			
		||||
history_x=1
 | 
			
		||||
history_y=1
 | 
			
		||||
history_limit=25
 | 
			
		||||
data_size=0
 | 
			
		||||
item_size=5
 | 
			
		||||
automatic_paste=true
 | 
			
		||||
auto_key=false
 | 
			
		||||
auto_mouse=true
 | 
			
		||||
key_input=true
 | 
			
		||||
restore_empty=true
 | 
			
		||||
rc_edit=false
 | 
			
		||||
type_search=false
 | 
			
		||||
case_search=false
 | 
			
		||||
ignore_whiteonly=false
 | 
			
		||||
trim_wspace_begend=false
 | 
			
		||||
trim_newline=false
 | 
			
		||||
hyperlinks_only=false
 | 
			
		||||
confirm_clear=true
 | 
			
		||||
current_on_top=true
 | 
			
		||||
single_line=true
 | 
			
		||||
reverse_history=false
 | 
			
		||||
item_length=50
 | 
			
		||||
persistent_history=false
 | 
			
		||||
persistent_separate=false
 | 
			
		||||
persistent_on_top=false
 | 
			
		||||
persistent_delim=\\n
 | 
			
		||||
nonprint_disp=false
 | 
			
		||||
ellipsize=2
 | 
			
		||||
multi_user=false
 | 
			
		||||
icon_name=parcellite
 | 
			
		||||
menu_key=<Ctrl><Alt>P
 | 
			
		||||
history_key=<Ctrl><Alt>H
 | 
			
		||||
phistory_key=<Ctrl><Alt>X
 | 
			
		||||
actions_key=<Ctrl><Alt>A
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
# Logging
 | 
			
		||||
log-level = "debug";
 | 
			
		||||
log-file = "/home/frebib/.local/share/picom.log";
 | 
			
		||||
log-level = "info";
 | 
			
		||||
#log-file = "/home/frebib/.local/share/picom.log";
 | 
			
		||||
 | 
			
		||||
# Shadow
 | 
			
		||||
shadow = true;
 | 
			
		||||
@@ -16,7 +16,9 @@ shadow-exclude = [
 | 
			
		||||
	"class_g = 'Conky'",
 | 
			
		||||
	"class_g ?= 'Notify-osd'",
 | 
			
		||||
	"class_g = 'Cairo-clock'",
 | 
			
		||||
	"class_g = 'firefox' && argb",
 | 
			
		||||
	"name = 'Notification'",
 | 
			
		||||
	"name = 'cpt_frame_window'",
 | 
			
		||||
	"_GTK_FRAME_EXTENTS@:c"
 | 
			
		||||
];
 | 
			
		||||
# shadow-exclude = "n:e:Notification";
 | 
			
		||||
@@ -47,6 +49,7 @@ blur-background-exclude = [
 | 
			
		||||
	"class_g = 'Onboard'",
 | 
			
		||||
	"class_g = 'slop'",
 | 
			
		||||
	"class_g = 'Polybar'",
 | 
			
		||||
	"class_g = 'firefox' && argb",
 | 
			
		||||
	"window_type = 'dock'",
 | 
			
		||||
	"window_type = 'desktop'",
 | 
			
		||||
	"_GTK_FRAME_EXTENTS@:c"
 | 
			
		||||
@@ -55,8 +58,8 @@ blur-background-exclude = [
 | 
			
		||||
# Fading
 | 
			
		||||
fading = true;
 | 
			
		||||
fade-delta = 10;
 | 
			
		||||
fade-in-step = 0.03;
 | 
			
		||||
fade-out-step = 0.03;
 | 
			
		||||
fade-in-step = 0.04
 | 
			
		||||
fade-out-step = 0.06;
 | 
			
		||||
no-fading-openclose = false;
 | 
			
		||||
no-fading-destroyed-argb = false;
 | 
			
		||||
# fade-exclude = [ ];
 | 
			
		||||
@@ -65,18 +68,19 @@ no-fading-destroyed-argb = false;
 | 
			
		||||
backend = "glx";
 | 
			
		||||
mark-wmwin-focused = true;
 | 
			
		||||
mark-ovredir-focused = true;
 | 
			
		||||
use-ewmh-active-win = false;
 | 
			
		||||
use-ewmh-active-win = true;
 | 
			
		||||
detect-rounded-corners = true;
 | 
			
		||||
detect-client-opacity = true;
 | 
			
		||||
refresh-rate = 0;
 | 
			
		||||
vsync = true;
 | 
			
		||||
# vsync = true;
 | 
			
		||||
# sw-opti = true;
 | 
			
		||||
# unredir-if-possible = true;
 | 
			
		||||
# unredir-if-possible-delay = 5000;
 | 
			
		||||
# unredir-if-possible-exclude = [ ];
 | 
			
		||||
focus-exclude = [
 | 
			
		||||
	"i:ai:chromium",
 | 
			
		||||
	"class_g = 'Firefox'",
 | 
			
		||||
	"class_g = 'firefox'",
 | 
			
		||||
	"class_g = 'zoom'"
 | 
			
		||||
];
 | 
			
		||||
detect-transient = true;
 | 
			
		||||
detect-client-leader = true;
 | 
			
		||||
@@ -87,7 +91,7 @@ invert-color-include = [ ];
 | 
			
		||||
glx-no-stencil = true;
 | 
			
		||||
glx-no-rebind-pixmap = true;
 | 
			
		||||
xrender-sync-fence = true;
 | 
			
		||||
#use-damage = true;
 | 
			
		||||
use-damage = true;
 | 
			
		||||
 | 
			
		||||
# Window type settings
 | 
			
		||||
wintypes:
 | 
			
		||||
@@ -27,8 +27,8 @@ height = 16pt
 | 
			
		||||
bottom = true
 | 
			
		||||
radius = 0
 | 
			
		||||
 | 
			
		||||
font-0 = sans:pixelsize=9;2
 | 
			
		||||
font-1 = FontAwesome5ProLight:pixelsize=10;2
 | 
			
		||||
font-0 = sans:pixelsize=9;2pt
 | 
			
		||||
font-1 = FontAwesome5ProLight:pixelsize=10;2pt
 | 
			
		||||
 | 
			
		||||
foreground = ${colours.text}
 | 
			
		||||
background = ${colours.background}
 | 
			
		||||
@@ -46,15 +46,15 @@ line-colour = #f00
 | 
			
		||||
 | 
			
		||||
modules-left = i3
 | 
			
		||||
modules-center =
 | 
			
		||||
# modules-right = volume updates weather xkeyboard wlan gateway eth memory cpu xbacklight battery temperature date
 | 
			
		||||
modules-right = volume updates weather wlan gateway eth memory cpu xbacklight battery temperature date
 | 
			
		||||
# modules-right = volume updates weather xkeyboard wlan gateway eth memory cpu xbacklight battery cputemp gputemp date
 | 
			
		||||
modules-right = volume updates weather wlan gateway eth memory cpu xbacklight battery cputemp gputemp date
 | 
			
		||||
 | 
			
		||||
tray-position = right
 | 
			
		||||
tray-detached = false
 | 
			
		||||
tray-background = ${colours.background}
 | 
			
		||||
#tray-offset-x = -20
 | 
			
		||||
#tray-offset-y = 0
 | 
			
		||||
tray-maxsize = 16
 | 
			
		||||
tray-maxsize = 12pt
 | 
			
		||||
tray-padding = 8pt
 | 
			
		||||
tray-scale = 1.0
 | 
			
		||||
 | 
			
		||||
@@ -68,17 +68,17 @@ exec = $XDG_CONFIG_HOME/polybar/update.sh
 | 
			
		||||
tail = true
 | 
			
		||||
format-prefix = "  "
 | 
			
		||||
format-prefix-foreground = ${colours.icon}
 | 
			
		||||
click-left = i3-msg exec -- i3-sensible-terminal -r i3blocks-update-term -e "yay && kill -USR1 %pid% || kill --USR1 %pid%"
 | 
			
		||||
click-left = systemd-run --user --no-block -- i3-sensible-terminal --class floating-term -e sh -c "yay; kill -USR1 %pid%; sleep 1"
 | 
			
		||||
 | 
			
		||||
[module/weather]
 | 
			
		||||
type = custom/script
 | 
			
		||||
exec = $XDG_CONFIG_HOME/polybar/weather.sh
 | 
			
		||||
interval = 120
 | 
			
		||||
click-left = i3-msg exec "i3-sensible-terminal -r floating-term -e 'sh -c \"xdotool getactivewindow windowsize 910 680 && curl wttr.in && sleep infinity\"'"
 | 
			
		||||
click-left = systemd-run --user --no-block -- i3-sensible-terminal --class floating-term -d 125 40 --hold -e sh -c "curl wttr.in"
 | 
			
		||||
 | 
			
		||||
[module/gateway]
 | 
			
		||||
type = custom/script
 | 
			
		||||
exec = for v in 4 6; do ip -$v r show default | xargs -l1 sh -c 'fping --retry=1 --quiet --iface "$4" "$2"'; done && echo  || echo '%{F#f41f1c}%{F-}'
 | 
			
		||||
exec = for v in 4 6; do ip -$v r show default | xargs -rL1 sh -c 'fping --retry=1 --quiet --iface "$4" "$2"'; done && echo  || echo '%{F#f41f1c}%{F-}'
 | 
			
		||||
interval = 2
 | 
			
		||||
format-prefix = "  "
 | 
			
		||||
format-prefix-foreground = ${colours.icon}
 | 
			
		||||
@@ -208,7 +208,7 @@ label-disconnected-foreground = ${colours.critical}
 | 
			
		||||
type = internal/date
 | 
			
		||||
interval = 1
 | 
			
		||||
 | 
			
		||||
label = %{A3:i3-sensible-terminal -r i3blocks-clock-term -e "sh -c \"xdotool getactivewindow windowsize 500 600; cal -y $(date +%Y); stty -echo; exec sleep infinity\"" &:}%date% %time%%{A}
 | 
			
		||||
label = %{A3:systemd-run --user --no-block -- i3-sensible-terminal --class floating-term -d 66 35 -qq --hold -e sh -c "cal -y $(date +%Y)":}%date% %time%%{A}
 | 
			
		||||
 | 
			
		||||
time = %H:%M
 | 
			
		||||
time-alt = %a %e %b %Y %H:%M:%S
 | 
			
		||||
@@ -221,8 +221,8 @@ format-prefix-foreground = ${colours.icon}
 | 
			
		||||
type = internal/pulseaudio
 | 
			
		||||
 | 
			
		||||
label-volume = %percentage%
 | 
			
		||||
format-volume = %{A3:pavucontrol:}<ramp-volume>  <label-volume>%{A}
 | 
			
		||||
format-muted = %{A3:pavucontrol:}<label-muted>%{A}
 | 
			
		||||
format-volume = %{A3:systemd-run --user --no-block -- pavucontrol:}<ramp-volume>  <label-volume>%{A}
 | 
			
		||||
format-muted = %{A3:systemd-run --user --no-block -- pavucontrol:}<label-muted>%{A}
 | 
			
		||||
 | 
			
		||||
label-volume-foreground = ${root.foreground}
 | 
			
		||||
format-muted-foreground = ${colours.icon}
 | 
			
		||||
@@ -267,10 +267,10 @@ ramp-capacity-0-foreground = ${colours.critical}
 | 
			
		||||
ramp-capacity-1-foreground = ${colours.warning}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
[module/temperature]
 | 
			
		||||
[module/cputemp]
 | 
			
		||||
type = internal/temperature
 | 
			
		||||
thermal-zone = 2
 | 
			
		||||
warn-temperature = 70
 | 
			
		||||
hwmon-path = /sys/devices/platform/nct6775.656/hwmon/hwmon1/temp2_input
 | 
			
		||||
base-temperature = 25
 | 
			
		||||
 | 
			
		||||
format = <ramp>  <label>
 | 
			
		||||
format-warn = <ramp>  <label-warn>
 | 
			
		||||
@@ -287,6 +287,15 @@ ramp-4 = 
 | 
			
		||||
ramp-5 = 
 | 
			
		||||
ramp-foreground = ${colours.icon}
 | 
			
		||||
 | 
			
		||||
[module/gputemp]
 | 
			
		||||
type = custom/script
 | 
			
		||||
exec = nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits
 | 
			
		||||
interval = 10
 | 
			
		||||
 | 
			
		||||
label = %output%°C
 | 
			
		||||
format-prefix = "  "
 | 
			
		||||
format-prefix-foreground = ${colours.icon}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
[module/powermenu]
 | 
			
		||||
type = custom/menu
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
top's Config File (Linux processes with windows)
 | 
			
		||||
Id:i, Mode_altscr=0, Mode_irixps=0, Delay_time=0.100, Curwin=0
 | 
			
		||||
Id:i, Mode_altscr=0, Mode_irixps=0, Delay_time=0.500, Curwin=0
 | 
			
		||||
Def	fieldscur=¥&K¨³´»½@·º¹56ÄFÅ')*+,-./0128<>?ABCGHIJLMNOPQRSTUVWXYZ[\]^_`abcdefghij
 | 
			
		||||
	winflags=163638, sortindx=21, maxtasks=0, graph_cpus=1, graph_mems=1
 | 
			
		||||
	summclr=1, msgsclr=1, headclr=3, taskclr=1
 | 
			
		||||
							
								
								
									
										24
									
								
								python/startup
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								python/startup
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,24 @@
 | 
			
		||||
#!/usr/bin/env python
 | 
			
		||||
 | 
			
		||||
import atexit
 | 
			
		||||
import os
 | 
			
		||||
import readline
 | 
			
		||||
 | 
			
		||||
xdg_cache_home = os.environ['XDG_CACHE_HOME']
 | 
			
		||||
 | 
			
		||||
if xdg_cache_home is None or xdg_cache_home == "":
 | 
			
		||||
    xdg_cache_home = os.path.join(os.path.expanduser("~"), ".cache")
 | 
			
		||||
 | 
			
		||||
python_cache_dir = os.path.join(xdg_cache_home, "python")
 | 
			
		||||
if not os.path.isdir(python_cache_dir):
 | 
			
		||||
    os.mkdir(python_cache_dir)
 | 
			
		||||
 | 
			
		||||
histfile = os.path.join(python_cache_dir, "history")
 | 
			
		||||
 | 
			
		||||
try:
 | 
			
		||||
    readline.read_history_file(histfile)
 | 
			
		||||
    readline.set_history_length(10000)
 | 
			
		||||
except FileNotFoundError:
 | 
			
		||||
    pass
 | 
			
		||||
 | 
			
		||||
atexit.register(readline.write_history_file, histfile)
 | 
			
		||||
							
								
								
									
										27
									
								
								qt5ct/qt5ct.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								qt5ct/qt5ct.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
			
		||||
[Appearance]
 | 
			
		||||
color_scheme_path=/usr/share/qt5ct/colors/airy.conf
 | 
			
		||||
custom_palette=false
 | 
			
		||||
standard_dialogs=gtk2
 | 
			
		||||
style=gtk2
 | 
			
		||||
 | 
			
		||||
[Fonts]
 | 
			
		||||
fixed=@Variant(\0\0\0@\0\0\0\x12\0M\0o\0n\0o\0s\0p\0\x61\0\x63\0\x65@\"\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
 | 
			
		||||
general=@Variant(\0\0\0@\0\0\0\x14\0S\0\x61\0n\0s\0 \0S\0\x65\0r\0i\0\x66@\"\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
 | 
			
		||||
 | 
			
		||||
[Interface]
 | 
			
		||||
activate_item_on_single_click=1
 | 
			
		||||
buttonbox_layout=3
 | 
			
		||||
cursor_flash_time=1000
 | 
			
		||||
dialog_buttons_have_icons=1
 | 
			
		||||
double_click_interval=400
 | 
			
		||||
gui_effects=@Invalid()
 | 
			
		||||
keyboard_scheme=2
 | 
			
		||||
menus_have_icons=true
 | 
			
		||||
show_shortcuts_in_context_menus=true
 | 
			
		||||
stylesheets=@Invalid()
 | 
			
		||||
toolbutton_style=4
 | 
			
		||||
underline_shortcut=1
 | 
			
		||||
wheel_scroll_lines=3
 | 
			
		||||
 | 
			
		||||
[SettingsWindow]
 | 
			
		||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\a\x98\0\0\x6\xfd\0\0\v5\0\0\b8\0\0\a\x98\0\0\x6\xfd\0\0\v5\0\0\b8\0\0\0\x1\0\0\0\0\a\x80\0\0\a\x98\0\0\x6\xfd\0\0\v5\0\0\b8)
 | 
			
		||||
@@ -10,5 +10,3 @@ xrandr --output $BOTTOM_LEFT --primary --mode 1920x1080 --pos 0x1080 --rotate no
 | 
			
		||||
       --output $TOP_LEFT --mode 1920x1080 --pos 0x0 --rotate inverted \
 | 
			
		||||
       --output $TOP_RIGHT --mode 1920x1080 --pos 1920x0 --rotate inverted \
 | 
			
		||||
       --output $BOTTOM_RIGHT --mode 1920x1080 --pos 1920x1080 --rotate normal
 | 
			
		||||
 | 
			
		||||
feh --no-fehbg --no-xinerama --bg-fill $DOTFILES/lakesidesunrise.jpg
 | 
			
		||||
 
 | 
			
		||||
@@ -15,5 +15,3 @@ MODENAME=${MODELINE%% *}
 | 
			
		||||
xrandr --newmode $MODELINE 2>/dev/null || true
 | 
			
		||||
xrandr --addmode $OUTPUT $MODENAME 2>/dev/null || true
 | 
			
		||||
xrandr --output  $OUTPUT --mode $MODENAME
 | 
			
		||||
 | 
			
		||||
feh --no-fehbg --no-xinerama --bg-fill $DOTFILES/lakesidesunrise.jpg
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										54
									
								
								scripts/dpi
									
									
									
									
									
								
							
							
						
						
									
										54
									
								
								scripts/dpi
									
									
									
									
									
								
							@@ -1,7 +1,13 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
set -e
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
set -eu
 | 
			
		||||
 | 
			
		||||
# Based on https://github.com/vincentbernat/awesome-configuration/blob/master/bin/xsettingsd-setup
 | 
			
		||||
CONF_DIR="${XDG_CONFIG_HOME:-$HOME/.config}"
 | 
			
		||||
 | 
			
		||||
xrdbget() {
 | 
			
		||||
    set -o pipefail
 | 
			
		||||
    xrdb -query | grep -i -m1 "$1" | sed 's/^.*:\s//g' || echo "$2"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
dpi=$1
 | 
			
		||||
 | 
			
		||||
@@ -10,22 +16,36 @@ if [ -z "$1" ]; then
 | 
			
		||||
    exit 1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
CONF_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/xsettingsd"
 | 
			
		||||
mkdir -p "$CONF_DIR"
 | 
			
		||||
# Update picom and xorg
 | 
			
		||||
sed -i "s/strength =.*$/strength = $(( dpi*8/96 ));/" "$CONF_DIR/picom/picom.conf" &
 | 
			
		||||
xrandr --dpi "$dpi" &
 | 
			
		||||
 | 
			
		||||
# Build xsettingsd.local
 | 
			
		||||
scale=$(( dpi/96 ))
 | 
			
		||||
cursor=$(( dpi/6 ))
 | 
			
		||||
 | 
			
		||||
# Build xsettingsd.conf
 | 
			
		||||
mkdir -p "$CONF_DIR/xsettingsd"
 | 
			
		||||
{
 | 
			
		||||
    cat $CONF_DIR/xsettingsd.conf 2>/dev/null || true
 | 
			
		||||
    echo Xft/DPI $(( $dpi*1024 ))
 | 
			
		||||
    echo Gdk/WindowScalingFactor $(( $dpi/96 ))
 | 
			
		||||
    echo Gdk/UnscaledDPI $(( $dpi*1024/($dpi/96) ))
 | 
			
		||||
} > $CONF_DIR/xsettingsd.local
 | 
			
		||||
    cat "$CONF_DIR/xsettingsd.local" 2>/dev/null || true
 | 
			
		||||
    echo "Xcursor/size $cursor"
 | 
			
		||||
    echo "Gtk/CursorThemeSize $cursor"
 | 
			
		||||
    echo "Gtk/CursorThemeName \"$(xrdbget Xcursor.theme Adwaita)\""
 | 
			
		||||
    echo "Xft/HintStyle \"$(xrdbget Xft.hintstyle hintfull)\""
 | 
			
		||||
    echo "Xft/Hinting \"$(xrdbget Xft.hinting -1)\""
 | 
			
		||||
    echo "Xft/RGBA \"$(xrdbget Xft.rgba rgb)\""
 | 
			
		||||
    echo "Xft/DPI $(( dpi*1024 ))"
 | 
			
		||||
    echo "Gdk/WindowScalingFactor $scale"
 | 
			
		||||
    echo "Gdk/UnscaledDPI $(( dpi*1024/scale ))"
 | 
			
		||||
} > "$CONF_DIR/xsettingsd/xsettingsd.conf"
 | 
			
		||||
 | 
			
		||||
pid=$(xprop -name xsettingsd _NET_WM_PID 2> /dev/null | awk '{print $NF}')
 | 
			
		||||
if [ -z "$pid" ]; then
 | 
			
		||||
    xsettingsd -c $CONF_DIR/xsettingsd.local &
 | 
			
		||||
else
 | 
			
		||||
    kill -HUP $pid
 | 
			
		||||
fi
 | 
			
		||||
{
 | 
			
		||||
    echo "Xft.dpi: $dpi"
 | 
			
		||||
    echo "Xcursor.size: $cursor"
 | 
			
		||||
} | xrdb -merge &
 | 
			
		||||
 | 
			
		||||
echo Xft.dpi: $dpi | xrdb -merge
 | 
			
		||||
systemctl --user reload-or-restart xsettingsd &
 | 
			
		||||
wait
 | 
			
		||||
 | 
			
		||||
systemctl --user reload \
 | 
			
		||||
    i3 \
 | 
			
		||||
    polybar@i3bar
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								scripts/gtav
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										2
									
								
								scripts/gtav
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,2 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
exec xdg-open steam://rungameid/271590
 | 
			
		||||
							
								
								
									
										7
									
								
								scripts/netsplit
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										7
									
								
								scripts/netsplit
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,7 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
PID="$(pidof GTA5.exe)"
 | 
			
		||||
 | 
			
		||||
kill -s STOP $PID
 | 
			
		||||
sleep 30
 | 
			
		||||
kill -s CONT $PID
 | 
			
		||||
@@ -1,120 +0,0 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
#
 | 
			
		||||
#   Use rofi to pick emoji because that's what this
 | 
			
		||||
#   century is about apparently...
 | 
			
		||||
#
 | 
			
		||||
#   Requirements:
 | 
			
		||||
#     rofi, xclip, xdotool, curl, xmllint
 | 
			
		||||
#
 | 
			
		||||
#   Usage:
 | 
			
		||||
#     1. Download all emoji
 | 
			
		||||
#        $ rofi-emoji --download
 | 
			
		||||
#
 | 
			
		||||
#     2. Run it!
 | 
			
		||||
#        $ rofi-emoji
 | 
			
		||||
#
 | 
			
		||||
#   Notes:
 | 
			
		||||
#     * You'll need a emoji font like "Noto Emoji" or "EmojiOne".
 | 
			
		||||
#     * Confirming an item will automatically paste it WITHOUT
 | 
			
		||||
#       writing it to your clipboard.
 | 
			
		||||
#     * Ctrl+C will copy it to your clipboard WITHOUT pasting it.
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
# Where to save the emojis file.
 | 
			
		||||
EMOJI_FILE="${XDG_CACHE_DIR:-$HOME/.cache}/emojis.txt"
 | 
			
		||||
 | 
			
		||||
# Urls of emoji to download.
 | 
			
		||||
URLS=(
 | 
			
		||||
    'https://emojipedia.org/people/'
 | 
			
		||||
    'https://emojipedia.org/nature/'
 | 
			
		||||
    'https://emojipedia.org/food-drink/'
 | 
			
		||||
    'https://emojipedia.org/activity/'
 | 
			
		||||
    'https://emojipedia.org/travel-places/'
 | 
			
		||||
    'https://emojipedia.org/objects/'
 | 
			
		||||
    'https://emojipedia.org/symbols/'
 | 
			
		||||
    'https://emojipedia.org/flags/'
 | 
			
		||||
    'https://emojipedia.org/modifiers/'
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
function download() {
 | 
			
		||||
    notify "$(basename "$0")" 'Downloading all emoji for your pleasure'
 | 
			
		||||
 | 
			
		||||
    echo -n > "$EMOJI_FILE"
 | 
			
		||||
 | 
			
		||||
    for url in "${URLS[@]}"; do
 | 
			
		||||
        echo "Downloading: $url"
 | 
			
		||||
 | 
			
		||||
        # Download the list of emoji and remove all the junk around it
 | 
			
		||||
        emojis=$(curl -s "$url" | \
 | 
			
		||||
                 xmllint --html \
 | 
			
		||||
                         --xpath '//ul[@class="emoji-list"]' - 2>/dev/null)
 | 
			
		||||
 | 
			
		||||
        # Get rid of starting/closing ul tags
 | 
			
		||||
        emojis=$(echo "$emojis" | head -n -1 | tail -n +1)
 | 
			
		||||
 | 
			
		||||
        # Extract the emoji and its description
 | 
			
		||||
        emojis=$(echo "$emojis" | \
 | 
			
		||||
                 sed -rn 's/.*<span class="emoji">(.*)<\/span> (.*)<\/a><\/li>/\1 \2/p')
 | 
			
		||||
 | 
			
		||||
        echo "$emojis" >> "$EMOJI_FILE"
 | 
			
		||||
    done
 | 
			
		||||
 | 
			
		||||
    notify "$(basename "$0")" "We're all set!"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function toclip() {
 | 
			
		||||
    xclip -i -selection primary
 | 
			
		||||
    xclip -o -selection primary | xclip -i -selection clipboard
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function repeat() {
 | 
			
		||||
    local rplc str="$1" count="$2"
 | 
			
		||||
    rplc="$(printf "%${count}s")"
 | 
			
		||||
    echo "${rplc// /"$str"}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function notify() {
 | 
			
		||||
   if which notify-send 1>/dev/null 2>/dev/null; then
 | 
			
		||||
        notify-send "$1" "$2"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function display() {
 | 
			
		||||
    emoji=$(cat "$EMOJI_FILE" | grep -v '#' | grep -v '^[[:space:]]*$')
 | 
			
		||||
    update="⏫ Update emoji cache"
 | 
			
		||||
    emoji=$(printf "$emoji\n$update")
 | 
			
		||||
    line=$(echo "$emoji" | rofi -dmenu -i -p emoji -normal-window -kb-custom-1 Ctrl+c -kb-row-tab '' -kb-row-select Tab $@)
 | 
			
		||||
    exit_code=$?
 | 
			
		||||
 | 
			
		||||
    if [ "${line[@]}" == "$update" ]; then
 | 
			
		||||
        download
 | 
			
		||||
        display
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    line=($line)
 | 
			
		||||
    last=${line[${#line[@]}-1]}
 | 
			
		||||
 | 
			
		||||
    quantifier="${last:${#last}-1:1}"
 | 
			
		||||
    echo "$quantifier" | egrep -q '^[0-9]+$' || quantifier=1
 | 
			
		||||
    emojis="$(repeat "${line[0]}" "$quantifier")"
 | 
			
		||||
 | 
			
		||||
    if [ $exit_code == 0 ]; then
 | 
			
		||||
        xdotool type --clearmodifiers "$emojis"
 | 
			
		||||
        echo -n "$emojis" | xclip -i
 | 
			
		||||
    elif [ $exit_code == 10 ]; then
 | 
			
		||||
        echo -n "$emojis" | xclip -i
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
if [[ "$1" =~ -D|--download ]]; then
 | 
			
		||||
    download
 | 
			
		||||
    exit 0
 | 
			
		||||
elif [[ "$1" =~ -h|--help ]]; then
 | 
			
		||||
    echo "usage: $0 [-D|--download]"
 | 
			
		||||
    exit 0
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
display
 | 
			
		||||
@@ -57,9 +57,8 @@ function notify() {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function display() {
 | 
			
		||||
    fontawesome=$(cat "$FONTAWESOME_FILE" | grep -v '#' | grep -v '^[[:space:]]*$')
 | 
			
		||||
    update=""$'\t'"Update Font Awesome cache"
 | 
			
		||||
    fontawesome=$(printf "$fontawesome\n$update")
 | 
			
		||||
    update=$'\tUpdate Font Awesome cache'
 | 
			
		||||
    fontawesome=$(grep -v '#\|^[[:space:]]*$' "$FONTAWESOME_FILE"; printf "$update\n")
 | 
			
		||||
    line=$(echo "$fontawesome" | rofi -dmenu -i -p fontawesome -normal-window -kb-custom-1 Ctrl+c -kb-row-tab '' -kb-row-select Tab $@)
 | 
			
		||||
    exit_code=$?
 | 
			
		||||
 | 
			
		||||
@@ -69,7 +68,6 @@ function display() {
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    #IFS=$'\t'
 | 
			
		||||
    line=($line)
 | 
			
		||||
    last=${line[${#line[@]}-1]}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,19 +1,41 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
NOTIFY_APPNAME="$(basename "$0")"
 | 
			
		||||
NOTIFY_ICONPATH="/usr/share/icons/Xenlism-Wildfire/Apps/screenshot.svg"
 | 
			
		||||
 | 
			
		||||
SCROT_CMD="maim -m 10 -us %"
 | 
			
		||||
FILENAME="$(date '+%s%N' | sha256sum | head -c7).png"
 | 
			
		||||
DIRECTORY="$HOME/pictures/screenshots"
 | 
			
		||||
 | 
			
		||||
SCP_HOST=frebib@Poseidon.nerdhouse.io
 | 
			
		||||
SCP_PATH=/dave/www/frebib.net/s
 | 
			
		||||
SCP_PATH=/services/www/files/frebib.net/s
 | 
			
		||||
URL_PATH=https://frebib.net/s
 | 
			
		||||
 | 
			
		||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
params=$(getopt -o ac -l active,clip -n screenshot -- "$@")
 | 
			
		||||
eval set -- "$params"
 | 
			
		||||
unset params
 | 
			
		||||
 | 
			
		||||
while true; do
 | 
			
		||||
    case "$1" in
 | 
			
		||||
        '-a'|'--active')
 | 
			
		||||
            active=1
 | 
			
		||||
            shift
 | 
			
		||||
            continue;;
 | 
			
		||||
        '-c'|'--clip')
 | 
			
		||||
            clip=1
 | 
			
		||||
            shift
 | 
			
		||||
            continue;;
 | 
			
		||||
		'--')
 | 
			
		||||
			shift
 | 
			
		||||
			break;;
 | 
			
		||||
		*)
 | 
			
		||||
			echo 'getopt error' >&2
 | 
			
		||||
			exit 1;;
 | 
			
		||||
	esac
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
send_notification() {
 | 
			
		||||
    title="$1"
 | 
			
		||||
    body="$2"
 | 
			
		||||
@@ -29,18 +51,47 @@ send_notification() {
 | 
			
		||||
 | 
			
		||||
# Make the screenshot directory
 | 
			
		||||
mkdir -p "$DIRECTORY"
 | 
			
		||||
out_path="$DIRECTORY/$FILENAME"
 | 
			
		||||
 | 
			
		||||
if [ "$active" = '1' ]; then
 | 
			
		||||
    args+=(-i "$(xdotool getactivewindow)")
 | 
			
		||||
else
 | 
			
		||||
    # Take screenshot geometry
 | 
			
		||||
    read -r winid geom < <(slop -f "%i %g") || :
 | 
			
		||||
    if [ -z "$geom" -o -z "$winid" ]; then
 | 
			
		||||
        send_notification "Screenshot error" "Failed to capture screenshot area" > /dev/null
 | 
			
		||||
        exit 1
 | 
			
		||||
    fi
 | 
			
		||||
    args=(-g "$geom")
 | 
			
		||||
 | 
			
		||||
    # If selection is the root window
 | 
			
		||||
    if xwininfo -id "$winid" | grep -qw root; then
 | 
			
		||||
        isroot=1
 | 
			
		||||
        args+=(-i "$winid")
 | 
			
		||||
    fi
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Take the screenshot and save it
 | 
			
		||||
out_path="$DIRECTORY/$FILENAME"
 | 
			
		||||
if ! error=$(eval ${SCROT_CMD//\%/$out_path} 2>&1); then
 | 
			
		||||
if ! error=$(maim -m 10 -u -f png ${args[@]} "$out_path" 2>&1); then
 | 
			
		||||
    send_notification "Screenshot error" "Failed to take a screenshot:<br><br>$error" >/dev/null
 | 
			
		||||
    exit 1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
notif_id=$(send_notification "Screenshot uploading" "$FILENAME<br><br>The image is available in the clipboard immediately" || true)
 | 
			
		||||
# If the screenshot is a complete window, add a shadow
 | 
			
		||||
if [ "$isroot" != "1" ]; then
 | 
			
		||||
    # but don't worry if it fails
 | 
			
		||||
    convert "$out_path" \( +clone -background black -alpha set -channel Alpha -evaluate set 60% -shadow 100x16+0+0 \) +swap -background none -layers merge +repage "$out_path" || :
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Add image to clipboard
 | 
			
		||||
xclip -i "$out_path" -selection clipboard -t image/png
 | 
			
		||||
if [ "$clip" = '1' ]; then
 | 
			
		||||
    # Add image to clipboard
 | 
			
		||||
    xclip -i "$out_path" -selection clipboard -t image/png
 | 
			
		||||
    send_notification "Screenshot captured" "$FILENAME<br><br>The image is available in the clipboard" >/dev/null
 | 
			
		||||
 | 
			
		||||
    exit 0
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
notif_id=$(send_notification "Screenshot uploading" "$FILENAME" || true)
 | 
			
		||||
 | 
			
		||||
# 'Upload' the screenshot
 | 
			
		||||
if ! error=$(scp -C $out_path $SCP_HOST:$SCP_PATH 2>&1); then
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										29
									
								
								scripts/systemd-run-i3
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										29
									
								
								scripts/systemd-run-i3
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,29 @@
 | 
			
		||||
#!/bin/bash -e
 | 
			
		||||
 | 
			
		||||
rand=$(tr -dc 'a-f0-9' < /dev/urandom | head -c 8)
 | 
			
		||||
 | 
			
		||||
args=()
 | 
			
		||||
while getopts "s:e:d:cnw" opt
 | 
			
		||||
do case "$opt" in
 | 
			
		||||
    s) slice="$OPTARG";;
 | 
			
		||||
    e) args+=("--setenv=$OPTARG");;
 | 
			
		||||
    d) args+=("--working-directory=$OPTARG");;
 | 
			
		||||
    c) args+=("--scope");;
 | 
			
		||||
    n) args+=("--no-block");;
 | 
			
		||||
    w) args+=("--wait");;
 | 
			
		||||
    *) shift;;
 | 
			
		||||
    esac
 | 
			
		||||
done
 | 
			
		||||
shift $((OPTIND-1))
 | 
			
		||||
 | 
			
		||||
if [ -z "$slice" ]; then
 | 
			
		||||
    slice=app
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
exec systemd-run \
 | 
			
		||||
    --user \
 | 
			
		||||
    --collect \
 | 
			
		||||
    --slice="$slice" \
 | 
			
		||||
    --unit="$slice-$1-$rand" \
 | 
			
		||||
    --property=BindsTo=graphical-session.target \
 | 
			
		||||
    ${args[@]} -- "$@"
 | 
			
		||||
@@ -1,12 +1,13 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Bluetooth Applet
 | 
			
		||||
After=graphical-session.target bluetooth.service
 | 
			
		||||
Requires=graphical-session.target bluetooth.service
 | 
			
		||||
After=graphical-session.target
 | 
			
		||||
Requires=graphical-session.target
 | 
			
		||||
ConditionPathExists=/sys/class/bluetooth
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=simple
 | 
			
		||||
ExecStart=/usr/bin/blueman-applet
 | 
			
		||||
Restart=on-failure
 | 
			
		||||
Slice=background.slice
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=desktop.target
 | 
			
		||||
							
								
								
									
										1
									
								
								systemd/user/desktop.target.wants/networkmanager-applet.service
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								systemd/user/desktop.target.wants/networkmanager-applet.service
									
									
									
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
/home/frebib/.config/systemd/user/networkmanager-applet.service
 | 
			
		||||
							
								
								
									
										1
									
								
								systemd/user/desktop.target.wants/wallpaper.service
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								systemd/user/desktop.target.wants/wallpaper.service
									
									
									
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
/home/frebib/.config/systemd/user/wallpaper.service
 | 
			
		||||
							
								
								
									
										5
									
								
								systemd/user/dunst.service.d/override.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								systemd/user/dunst.service.d/override.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
[Service]
 | 
			
		||||
Slice=session.slice
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=graphical-session.target
 | 
			
		||||
							
								
								
									
										16
									
								
								systemd/user/gphoto-ffmpeg@.service
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								systemd/user/gphoto-ffmpeg@.service
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,16 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=GPhoto2 capture with ffmpeg encoding
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=simple
 | 
			
		||||
ExecStartPre=gphoto2 --abilities
 | 
			
		||||
ExecStart=/bin/sh -c 'exec gphoto2 --set-config /main/capturesettings/continuousaf=1 --set-config /main/capturesettings/focusmode="AI Servo" --set-config /main/imgsettings/whitesbalance=Tungsten --capture-movie --stdout --set-config viewfinder=0 | ffmpeg -i - -f rawvideo -vf "crop=iw:iw*9/16" -pix_fmt yuv420p -threads 0 -s:v 1280x720 -r 25 -f v4l2 /dev/video%i'
 | 
			
		||||
ExecStop=/bin/kill $MAINPID
 | 
			
		||||
ExecStop=-/usr/bin/gphoto2 --set-config viewfinder=0
 | 
			
		||||
Restart=always
 | 
			
		||||
RestartSec=5
 | 
			
		||||
SyslogIdentifier=gphoto-ffmpeg
 | 
			
		||||
Slice=app.slice
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=default.target
 | 
			
		||||
							
								
								
									
										15
									
								
								systemd/user/graphical-session.target
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								systemd/user/graphical-session.target
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
			
		||||
#  SPDX-License-Identifier: LGPL-2.1-or-later
 | 
			
		||||
#
 | 
			
		||||
#  This file is part of systemd.
 | 
			
		||||
#
 | 
			
		||||
#  systemd is free software; you can redistribute it and/or modify it
 | 
			
		||||
#  under the terms of the GNU Lesser General Public License as published by
 | 
			
		||||
#  the Free Software Foundation; either version 2.1 of the License, or
 | 
			
		||||
#  (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Current graphical user session
 | 
			
		||||
Documentation=man:systemd.special(7)
 | 
			
		||||
Requires=basic.target xorg.target
 | 
			
		||||
RefuseManualStart=yes
 | 
			
		||||
StopWhenUnneeded=yes
 | 
			
		||||
							
								
								
									
										1
									
								
								systemd/user/graphical-session.target.wants/parcellite.service
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								systemd/user/graphical-session.target.wants/parcellite.service
									
									
									
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
/home/frebib/.config/systemd/user/parcellite.service
 | 
			
		||||
							
								
								
									
										1
									
								
								systemd/user/graphical-session.target.wants/redshift.service
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								systemd/user/graphical-session.target.wants/redshift.service
									
									
									
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
/home/frebib/.config/systemd/user/redshift.service
 | 
			
		||||
							
								
								
									
										1
									
								
								systemd/user/graphical-session.target.wants/xsettingsd.service
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								systemd/user/graphical-session.target.wants/xsettingsd.service
									
									
									
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
/home/frebib/.config/systemd/user/xsettingsd.service
 | 
			
		||||
@@ -2,13 +2,13 @@
 | 
			
		||||
Description=i3 - an improved dynamic, tiling window manager
 | 
			
		||||
Requires=xorg.target
 | 
			
		||||
Before=graphical-session.target
 | 
			
		||||
After=profile.service xprofile.service xorg.target
 | 
			
		||||
After=xprofile.service xorg.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
ExecStart=/usr/bin/i3
 | 
			
		||||
ExecReload=/bin/sh -c 'i3-msg restart; systemctl is-active --user -q picom && systemctl --user restart picom'
 | 
			
		||||
ExecStop=/bin/systemctl --user stop desktop.target
 | 
			
		||||
ExecReload=/usr/bin/i3-msg restart
 | 
			
		||||
Restart=always
 | 
			
		||||
Slice=session.slice
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=graphical-session.target
 | 
			
		||||
							
								
								
									
										14
									
								
								systemd/user/networkmanager-applet.service
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								systemd/user/networkmanager-applet.service
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=NetworkManager Applet
 | 
			
		||||
After=graphical-session.target NetworkManager.service
 | 
			
		||||
Requires=graphical-session.target
 | 
			
		||||
ConditionPathExists=/run/NetworkManager
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=simple
 | 
			
		||||
ExecStart=/usr/bin/nm-applet
 | 
			
		||||
Restart=on-failure
 | 
			
		||||
Slice=background.slice
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=desktop.target
 | 
			
		||||
@@ -4,11 +4,10 @@ Requires=graphical-session.target
 | 
			
		||||
After=graphical-session.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=simple
 | 
			
		||||
ExecStart=/usr/bin/nextcloud --background
 | 
			
		||||
ExecReload=/bin/kill -HUP $MAINPID
 | 
			
		||||
KillMode=process
 | 
			
		||||
Restart=on-failure
 | 
			
		||||
Slice=app.slice
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=desktop.target
 | 
			
		||||
							
								
								
									
										12
									
								
								systemd/user/parcellite.service
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								systemd/user/parcellite.service
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Lightweight GTK+ clipboard manager
 | 
			
		||||
PartOf=graphical-session.target
 | 
			
		||||
Requires=xorg.target
 | 
			
		||||
After=xorg.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
ExecStart=/usr/bin/parcellite -n
 | 
			
		||||
Slice=session.slice
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=graphical-session.target
 | 
			
		||||
@@ -1,12 +1,12 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=A lightweight compositor for X11
 | 
			
		||||
Requires=graphical-session.target
 | 
			
		||||
After=graphical-session.target xorg.target
 | 
			
		||||
After=dbus.service graphical-session.target xorg.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=simple
 | 
			
		||||
ExecStart=/usr/bin/picom --experimental-backends --dbus
 | 
			
		||||
Restart=always
 | 
			
		||||
Slice=session.slice
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=desktop.target
 | 
			
		||||
@@ -1,12 +1,13 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Polybar
 | 
			
		||||
Requires=graphical-session.target
 | 
			
		||||
After=graphical-session.target pulseaudio.socket
 | 
			
		||||
After=graphical-session.target pulseaudio.socket i3.service
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=simple
 | 
			
		||||
ExecStart=/usr/bin/polybar --reload --log=warning %i
 | 
			
		||||
ExecReload=/usr/bin/polybar-msg cmd restart -p $MAINPID
 | 
			
		||||
Restart=always
 | 
			
		||||
Slice=session.slice
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=desktop.target
 | 
			
		||||
							
								
								
									
										2
									
								
								systemd/user/pulseaudio.service.d/override.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								systemd/user/pulseaudio.service.d/override.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
			
		||||
[Service]
 | 
			
		||||
Slice=session.slice
 | 
			
		||||
							
								
								
									
										13
									
								
								systemd/user/redshift.service
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								systemd/user/redshift.service
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,13 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Redshift display colour temperature adjustment
 | 
			
		||||
Documentation=http://jonls.dk/redshift/
 | 
			
		||||
Requires=xorg.target
 | 
			
		||||
ConditionPathExists=/usr/bin/redshift
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Slice=session.slice
 | 
			
		||||
ExecStart=/usr/bin/redshift
 | 
			
		||||
Restart=always
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=graphical-session.target
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user