mirror of
				https://github.com/frebib/dotfiles.git
				synced 2024-06-14 12:57:23 +00:00 
			
		
		
		
	Compare commits
	
		
			204 Commits
		
	
	
		
			systemd-se
			...
			4550c7c435
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 4550c7c435 | |||
| 5aefd01096 | |||
| 58226a4562 | |||
| 01a7ec2acf | |||
| dcfd191613 | |||
| db40ef08bb | |||
| 839d972e95 | |||
| ece2eb878a | |||
| 6f1569b35d | |||
| 5035afc8b4 | |||
| 650eb08a80 | |||
| 535697a31c | |||
| f520784d9b | |||
| ef4b739af1 | |||
| 0ba6dc8e4b | |||
| 55e492cd8f | |||
| 19663fa4f1 | |||
| 7e5b329e74 | |||
| 0116be881a | |||
| 90038f8795 | |||
| 7775fb62e4 | |||
| a48288ad50 | |||
| b519b48e83 | |||
| 8e74101f3e | |||
| 898190a99f | |||
| d771bf0448 | |||
| 634db612a1 | |||
| a7778c30a7 | |||
| 49554ca359 | |||
| 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,12 +0,0 @@ | |||||||
| [Unit] |  | ||||||
| Description=Polybar |  | ||||||
| Requires=graphical-session.target |  | ||||||
| After=graphical-session.target pulseaudio.socket |  | ||||||
|  |  | ||||||
| [Service] |  | ||||||
| Type=simple |  | ||||||
| ExecStart=/usr/bin/polybar --reload --log=warning %i |  | ||||||
| Restart=always |  | ||||||
|  |  | ||||||
| [Install] |  | ||||||
| WantedBy=desktop.target |  | ||||||
| @@ -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 +0,0 @@ | |||||||
| /usr/lib/systemd/user/pulseaudio.socket |  | ||||||
| @@ -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 | bookmarks | ||||||
| .config/secrets | .config/secrets | ||||||
|  |  | ||||||
|  | .config/gopass/gopass-logo-small.png | ||||||
| .config/gtk-2.0/gtkfilechooser.ini | .config/gtk-2.0/gtkfilechooser.ini | ||||||
| .config/imgur-screenshot/credentials.conf | .config/imgur-screenshot/credentials.conf | ||||||
| .config/mailnag/mailnag.dat | .config/mailnag/mailnag.dat | ||||||
| .config/zsh/.zshrc.zwc | .config/zsh/.zshrc.zwc | ||||||
|  |  | ||||||
| *.log | *.log | ||||||
| .xournal/recent-files |  | ||||||
| .vim/bundle | .vim/bundle | ||||||
| .vim/swapfiles | .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": true, | ||||||
|  |     "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 | To get started, clone this repo and link the relevant files/directories | ||||||
|  |  | ||||||
| ```shell | ```shell | ||||||
| git clone https://github.com/frebib/dotfiles.git ~/.config/dotfiles | git clone https://github.com/frebib/dotfiles.git ~/.config | ||||||
| ln -sfv .config/dotfiles/.config/* .config/ | ln -sfv .config/zsh/.zshenv ~ | ||||||
| ln -sfv .config/dotfiles/.profile .zprofile | # 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/ | ||||||
| ``` | ``` | ||||||
|   | |||||||
							
								
								
									
										26
									
								
								X11/xprofile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								X11/xprofile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | |||||||
|  | #!/bin/sh -u | ||||||
|  |  | ||||||
|  | # Graphical-specific environment variables | ||||||
|  | export TERMINAL="alacritty" | ||||||
|  | export BROWSER="firefox" | ||||||
|  |  | ||||||
|  | export GTK_THEME="$(grep gtk-theme-name "${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini" | sed 's/.*\s*=\s*//')" | ||||||
|  | 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 | ||||||
|  |  | ||||||
|  | export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=on -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel" | ||||||
|  |  | ||||||
|  | # 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 | ||||||
							
								
								
									
										40
									
								
								X11/xresources
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								X11/xresources
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,40 @@ | |||||||
|  | ! 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.size: 16 | ||||||
|  | Xcursor.theme: Breeze_Obsidian | ||||||
| @@ -17,9 +17,9 @@ window: | |||||||
|   # |   # | ||||||
|   # Specified in number of columns/lines, not pixels. |   # Specified in number of columns/lines, not pixels. | ||||||
|   # If both are `0`, this setting is ignored. |   # If both are `0`, this setting is ignored. | ||||||
|   #dimensions: |   dimensions: | ||||||
|   #  columns: 0 |     columns: 120 | ||||||
|   #  lines: 0 |     lines: 40 | ||||||
| 
 | 
 | ||||||
|   # Window position (changes require restart) |   # Window position (changes require restart) | ||||||
|   # |   # | ||||||
| @@ -51,6 +51,12 @@ window: | |||||||
|   #     - buttonless: Title bar, transparent background, but no title bar buttons |   #     - buttonless: Title bar, transparent background, but no title bar buttons | ||||||
|   decorations: full |   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) |   # Startup Mode (changes require restart) | ||||||
|   # |   # | ||||||
|   # Values for `startup_mode`: |   # Values for `startup_mode`: | ||||||
| @@ -65,6 +71,9 @@ window: | |||||||
|   # Window title |   # Window title | ||||||
|   #title: Alacritty |   #title: Alacritty | ||||||
| 
 | 
 | ||||||
|  |   # Allow terminal applications to change Alacritty's window title. | ||||||
|  |   dynamic_title: true | ||||||
|  | 
 | ||||||
|   # Window class (Linux/BSD only): |   # Window class (Linux/BSD only): | ||||||
|   #class: |   #class: | ||||||
|     # Application instance name |     # Application instance name | ||||||
| @@ -81,7 +90,7 @@ window: | |||||||
| scrolling: | scrolling: | ||||||
|   # Maximum number of lines in the scrollback buffer. |   # Maximum number of lines in the scrollback buffer. | ||||||
|   # Specifying '0' will disable scrolling. |   # Specifying '0' will disable scrolling. | ||||||
|   history: 10000 |   history: 100000 | ||||||
| 
 | 
 | ||||||
|   # Number of lines the viewport will move for every line scrolled when |   # Number of lines the viewport will move for every line scrolled when | ||||||
|   # scrollback is enabled (history > 0). |   # scrollback is enabled (history > 0). | ||||||
| @@ -207,7 +216,7 @@ colors: | |||||||
|   # background is unset, selection color will be the inverse of the cell 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. |   # If only text is unset the cell text color will remain the same. | ||||||
|   selection: |   selection: | ||||||
|   #  text: '#eaeaea' |     text: CellForeground | ||||||
|     background: '#5294e2' |     background: '#5294e2' | ||||||
| 
 | 
 | ||||||
|   # Normal colors |   # Normal colors | ||||||
| @@ -256,6 +265,13 @@ colors: | |||||||
|   # |   # | ||||||
|   #indexed_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 | # Visual Bell | ||||||
| # | # | ||||||
| # Any time the BEL code is received, Alacritty "rings" the visual bell. Once | # Any time the BEL code is received, Alacritty "rings" the visual bell. Once | ||||||
| @@ -282,20 +298,11 @@ colors: | |||||||
| #  duration: 0 | #  duration: 0 | ||||||
| #  color: '#ffffff' | #  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: | selection: | ||||||
|   #semantic_escape_chars: ",│`|:\"' ()[]{}<>\t" |   #semantic_escape_chars: ",│`|:\"' ()[]{}<>\t" | ||||||
| 
 | 
 | ||||||
|   # When set to `true`, selected text will be copied to the primary clipboard. |   # When set to `true`, selected text will be copied to the primary clipboard. | ||||||
|   save_to_clipboard: false |   save_to_clipboard: true | ||||||
| 
 |  | ||||||
| # Allow terminal applications to change Alacritty's window title. |  | ||||||
| dynamic_title: true |  | ||||||
| 
 | 
 | ||||||
| cursor: | cursor: | ||||||
|   # Cursor style |   # Cursor style | ||||||
| @@ -366,28 +373,6 @@ mouse: | |||||||
|   # If this is `true`, the cursor is temporarily hidden when typing. |   # If this is `true`, the cursor is temporarily hidden when typing. | ||||||
|   hide_when_typing: false |   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 | ||||||
| # | # | ||||||
| # Mouse bindings are specified as a list of objects, much like the key | # 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                 } |   #- { key: Key5,   mods: Shift,         mode: Vi, action: Bracket                 } | ||||||
| 
 | 
 | ||||||
|   # (Windows, Linux, and BSD only) |   # (Windows, Linux, and BSD only) | ||||||
|   - { key: V,        mods: Control|Shift, action: Paste            } |   - { key: V,              mods: Control|Shift,           action: Paste            } | ||||||
|   - { key: C,        mods: Control|Shift, action: Copy             } |   - { key: C,              mods: Control|Shift,           action: Copy             } | ||||||
|   - { key: Insert,   mods: Shift,         action: PasteSelection   } |   - { key: F,              mods: Control|Shift,           action: SearchForward    } | ||||||
|   - { key: Key0,     mods: Control,       action: ResetFontSize    } |   - { key: B,              mods: Control|Shift,           action: SearchBackward   } | ||||||
|   - { key: Equals,   mods: Control,       action: ResetFontSize    } |   - { key: C,              mods: Control|Shift, mode: Vi, action: ClearSelection   } | ||||||
|   - { key: Add,      mods: Control,       action: IncreaseFontSize } |   - { key: Insert,         mods: Shift,                   action: PasteSelection   } | ||||||
|   - { key: Subtract, mods: Control,       action: DecreaseFontSize } |   - { key: Key0,           mods: Control,                 action: ResetFontSize    } | ||||||
|   - { key: Minus,    mods: Control,       action: DecreaseFontSize } |   - { key: Equals,         mods: Control,                 action: IncreaseFontSize } | ||||||
| 
 |   - { key: Plus,           mods: Control,                 action: IncreaseFontSize } | ||||||
|   # (Windows only) |   - { key: NumpadAdd,      mods: Control,                 action: IncreaseFontSize } | ||||||
|   #- { key: Return,   mods: Alt,           action: ToggleFullscreen } |   - { key: Minus,          mods: Control,                 action: DecreaseFontSize } | ||||||
| 
 |   - { key: NumpadSubtract, mods: Control,                 action: DecreaseFontSize } | ||||||
|   # (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 } |  | ||||||
| 
 | 
 | ||||||
| debug: | debug: | ||||||
|   # Display the time it takes to redraw each frame. |   # Display the time it takes to redraw each frame. | ||||||
| @@ -641,7 +611,7 @@ debug: | |||||||
|   #   - Info |   #   - Info | ||||||
|   #   - Debug |   #   - Debug | ||||||
|   #   - Trace |   #   - Trace | ||||||
|   log_level: Info |   log_level: Warn | ||||||
| 
 | 
 | ||||||
|   # Print all received window events. |   # Print all received window events. | ||||||
|   #print_events: false |   #print_events: false | ||||||
							
								
								
									
										199
									
								
								aliases
									
									
									
									
									
								
							
							
						
						
									
										199
									
								
								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 | # Global aliases for ZSH | ||||||
| if alias -g 2>/dev/null; then | if alias -g 2>/dev/null; then | ||||||
|     alias -g ...=../.. |     alias -g ...=../.. | ||||||
|     alias -g ....=../../.. |     alias -g ....=../../.. | ||||||
|     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 NO="1> /dev/null" | ||||||
|     alias -g NE="2> /dev/null" |     alias -g NE="2> /dev/null" | ||||||
|     alias -g NUL="&> /dev/null" |     alias -g NUL="&> /dev/null" | ||||||
|     alias -g BG="&;disown" |     alias -g BG="&;disown" | ||||||
|     alias -g COL="| column -t" |  | ||||||
|     alias -g CLIP="| xclip -i -selection primary -f | xclip -i -selection clipboard" |  | ||||||
| fi | fi | ||||||
|  |  | ||||||
| # File default aliases | # File default aliases | ||||||
| if alias -s 2>/dev/null; then | if alias -s 2>/dev/null; then | ||||||
|     alias -s pdf="open" |     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 jar="java -jar" | ||||||
|     alias -s git="git clone --recursive" |     alias -s git="git clone --recursive" | ||||||
| fi | fi | ||||||
|  |  | ||||||
| alias ..la="cd ..;la" |  | ||||||
| alias ..ll="cd..;ll" |  | ||||||
| alias ..l="..ll" |  | ||||||
|  |  | ||||||
| alias l=ll | alias l=ll | ||||||
| alias ls='ls --color=auto' | alias ls='ls --color=auto' | ||||||
| alias ll="ls -lFh  --group-directories-first" | alias ll='ls -lFh  --group-directories-first' | ||||||
| alias la="ls -lAFh --group-directories-first" | alias la='ls -lAFh --group-directories-first' | ||||||
| alias lt='ls -lAFh --sort=time' | alias lt='ls -lFh  --sort=time' | ||||||
|  | alias lat='ls -lAFh --sort=time' | ||||||
| alias lsz='ls -lAFh --sort=size' | alias lsz='ls -lAFh --sort=size' | ||||||
| alias al=la # No, I don't need the Mono Assembly Linker | alias al=la # No, I don't need the Mono Assembly Linker | ||||||
|  |  | ||||||
| alias md="mkdir -p" | alias md='mkdir -p' | ||||||
| alias rd="rmdir -p" | alias rd='rmdir -p' | ||||||
| alias -- -='cd -' | alias -- -='cd -' | ||||||
| alias cdt='cd `mktemp -d`' | cdt() { cd "$(mktemp -d -t "${1:-tmp}.XXXXXXXX")"; } | ||||||
|  |  | ||||||
| alias svi=sudoedit | alias svi=sudoedit | ||||||
| alias svim=sudoedit | alias svim=sudoedit | ||||||
| @@ -57,26 +46,26 @@ alias sudo='sudo ' | |||||||
| alias open=xdg-open | alias open=xdg-open | ||||||
|  |  | ||||||
| # Command rewrites | # Command rewrites | ||||||
| alias rm='rm -i' | alias rm='rm -iv' | ||||||
| alias mv='mv -i' | alias mv='mv -i' | ||||||
| alias cp='cp -ir' | alias cp='cp -ir' | ||||||
|  | alias scp='scp -r' | ||||||
| alias dd='dd status=progress' | 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 vi=vim | ||||||
| alias grip='grip --user=frebib --pass=$GRIP_API_KEY' | 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 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 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 USER \ | ||||||
|     -e UID="$(id -u)" \ |     -e UID=\"\$(id -u)\" \ | ||||||
|     -e PWD \ |     -e PWD \ | ||||||
|     -e HOME \ |     -e HOME \ | ||||||
|     -w $PWD \ |     -w \$PWD \ | ||||||
|     -v $PWD:$PWD \ |     -v \$PWD:\$PWD \ | ||||||
|     -v ~/.abuild:$HOME/.abuild \ |     -v ~/.abuild:\$HOME/.abuild \ | ||||||
|     -v ~/.abuild/distfiles:/var/cache/distfiles \ |     -v ~/.abuild/distfiles:/var/cache/distfiles \ | ||||||
|     frebib/alpine-sdk:edge' |     frebib/alpine-sdk:edge" | ||||||
| alias abuild='alpine-sdk abuild' | alias abuild='alpine-sdk abuild' | ||||||
| alias abuild-sign='alpine-sdk abuild-sign' | alias abuild-sign='alpine-sdk abuild-sign' | ||||||
| alias apk='alpine-sdk apk' | alias apk='alpine-sdk apk' | ||||||
| @@ -100,9 +89,9 @@ vim --version 2>/dev/null | command grep -q +clientserver && \ | |||||||
|     alias vim="vim --servername vim -p" |     alias vim="vim --servername vim -p" | ||||||
|  |  | ||||||
| # Function aliases | # Function aliases | ||||||
| env() { command env $@ | stripansi | sort; } | env() { command env "$@" | stripansi | sort; } | ||||||
| mcd(){ mkdir -p -- $@ && cd -- $@; } | mcd(){ mkdir -p -- "$@" && cd -- "$@"; } | ||||||
| randstr() { tr -dc 'a-zA-Z0-9' < /dev/urandom | fold -w $1 | head -n 1; } | randstr() { tr -dc 'a-zA-Z0-9' < /dev/urandom | fold -w "$1" | head -n 1; } | ||||||
|  |  | ||||||
| # System aliases | # System aliases | ||||||
| alias sc="systemctl" | alias sc="systemctl" | ||||||
| @@ -115,43 +104,63 @@ alias kl='killall -s 9' | |||||||
| alias chx='chmod +x' | alias chx='chmod +x' | ||||||
|  |  | ||||||
| # Git Aliases | # Git Aliases | ||||||
|  | alias git='TZ=UTC git' | ||||||
| alias g=git | alias g=git | ||||||
|  | alias ginit='git init' | ||||||
| alias gignore='$EDITOR .gitignore' | alias gignore='$EDITOR .gitignore' | ||||||
| alias gitc='$EDITOR $XDG_CONFIG_HOME/git/config' | alias gitc='$EDITOR $XDG_CONFIG_HOME/git/config' | ||||||
| alias ggignore='$EDITOR $XDG_CONFIG_HOME/git/gitignore' | alias ggignore='$EDITOR $XDG_CONFIG_HOME/git/gitignore' | ||||||
| alias gcl="git clone --recursive" | alias gcl="git clone --recursive" | ||||||
| alias gco="git checkout" | alias gco="git checkout" | ||||||
| alias gcom="git checkout master" | alias gcom="git checkout \"\$(git defbranch)\"" | ||||||
| alias ga="git add" | alias ga="git add" | ||||||
| alias gap="git add -p" | alias gap="git add -p" | ||||||
| alias gau="git add -u" | alias gau="git add -u" | ||||||
| alias gaN="git add -N" | alias gaN="git add -N" | ||||||
| alias gaa="ga -A" | alias gaa="ga -A" | ||||||
| alias grm="git rm" | alias grm="git rm" | ||||||
| alias gc="git commit" | alias gc="git commit -s" | ||||||
| alias gcm="gc -m" | alias gcm="git commit -s -em" | ||||||
| gcmst() { git stash -u -k && git commit -m "$1" && git stash pop; } | alias gca="git commit -s --amend --date=\"\$(date -R)\"" | ||||||
| alias gca="git commit --amend --date=\"$(date -R)\"" | alias gcn="git commit -s --no-edit" | ||||||
| alias gcn="git commit --no-edit" | alias gcan="gca -s --no-edit" | ||||||
| alias gcan="gca --no-edit" | alias gcam="gca -s -m" | ||||||
| alias gcam="gca -m" |  | ||||||
| alias gst="git status" | alias gst="git status" | ||||||
|  |  | ||||||
| alias gm="git merge" | alias gm="git merge" | ||||||
| alias gma="git merge --abort" | alias gma="git merge --abort" | ||||||
|  |  | ||||||
| alias grb="git rebase" | alias grb="git rebase" | ||||||
|  | alias grbi="grb -i" | ||||||
| alias grba="grb --abort" | alias grba="grb --abort" | ||||||
| alias grbc="grb --continue" | alias grbc="grb --continue" | ||||||
| alias grbsk="grb --skip" | alias grbsk="grb --skip" | ||||||
| alias grbsh="grb --show-current" | alias grbsh="grb --show-current" | ||||||
| alias grbom="git rebase origin/master" | alias grbom="git rebase \"origin/\$(git defbranch)\"" | ||||||
|  | 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 gamsk="git am --skip" | ||||||
|  |  | ||||||
|  | alias gcp="git cherry-pick" | ||||||
|  | alias gcpa="git cherry-pick --abort" | ||||||
|  | alias gcpc="git cherry-pick --continue" | ||||||
|  | alias gcpsk="git cherry-pick --skip" | ||||||
|  |  | ||||||
|  | alias grv="git revert" | ||||||
|  | alias grva="git revert --abort" | ||||||
|  | alias grvc="git revert --continue" | ||||||
|  | alias grvsk="git revert --skip" | ||||||
|  |  | ||||||
| alias gf="git fetch" | alias gf="git fetch" | ||||||
| alias gp="git push" | alias gp="git push" | ||||||
| alias gpf="gp --force" | alias gpf="gp --force" | ||||||
| alias gpsu="git push --set-upstream" | alias gpsu="git push --set-upstream" | ||||||
| alias gpoH="git push origin HEAD" | alias gpoH="git push origin HEAD" | ||||||
| alias gpsuom="git push --set-upstream origin master" | alias gpsuom="git push --set-upstream origin \"\$(git defbranch)\"" | ||||||
| alias gpall="git remote | xargs -L1 git push" | alias gpall="git remote | xargs -L1 git push" | ||||||
| alias gl="git pull --rebase" | alias gl="git pull --rebase" | ||||||
| alias glp="gl && gp" | alias glp="gl && gp" | ||||||
| @@ -159,18 +168,18 @@ alias gd="git diff --patch-with-stat" | |||||||
| alias gdni="gd --no-index" | alias gdni="gd --no-index" | ||||||
| alias gds="gd --staged" | alias gds="gd --staged" | ||||||
| alias gsh="git show --format=fuller --patch-with-stat" | alias gsh="git show --format=fuller --patch-with-stat" | ||||||
| alias glg="git log --color --format=fuller --stat" | alias glg="git log --color --format=fuller --stat --no-merges --graph" | ||||||
| alias glgp="git log --color --format=fuller --patch-with-stat" | alias glgp="git log --color --format=fuller --patch-with-stat --no-merges --graph" | ||||||
| alias glog="git log --color --oneline --decorate --graph" | alias glog="git log --color --oneline --decorate --graph" | ||||||
|  |  | ||||||
| alias grst="git reset" | alias grst="git reset" | ||||||
| alias gundo="git reset --keep @~1" | alias gundo="git reset --keep @~1" | ||||||
| alias gclean="git clean" | alias gclean="git clean" | ||||||
| alias gbr="git branch" | 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 gtg="git tag" | ||||||
| alias gbl="git blame" | alias gbl="git blame" | ||||||
| alias gr="git remote" | alias gr="git remote" | ||||||
| alias grv="git remote -v" |  | ||||||
| alias gra="gr add" | alias gra="gr add" | ||||||
| alias grr="gr rm" | alias grr="gr rm" | ||||||
| alias grao="gra origin" | alias grao="gra origin" | ||||||
| @@ -187,7 +196,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 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 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" | 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 din='docker inspect' | ||||||
| alias drm='docker rm' | alias drm='docker rm' | ||||||
| alias drmi='docker rmi' | alias drmi='docker rmi' | ||||||
| @@ -196,30 +205,32 @@ alias dbl='docker build --pull' | |||||||
| alias dbl.='docker build --pull .' | alias dbl.='docker build --pull .' | ||||||
| alias drun='docker run -ti' | alias drun='docker run -ti' | ||||||
| alias dkl='docker kill' | alias dkl='docker kill' | ||||||
| dklrm() { docker kill $@ ; docker rm $@; } | alias drmf='docker rm -f' | ||||||
| alias dst='docker stop' | alias dst='docker stop' | ||||||
| alias drst='docker restart' | alias drst='docker restart' | ||||||
| alias dnet='docker network' | alias dnet='docker network' | ||||||
| alias dvol='docker volume' | 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 dalpine='docker run -ti --rm spritsail/alpine /bin/sh' | ||||||
| alias drm-stopped='docker container prune' | alias drm-stopped='docker container prune' | ||||||
| alias drmi-untag='docker image prune' | alias drmi-untag='docker image prune' | ||||||
| alias dprune='docker system prune -f' | alias dprune='docker system prune -f' | ||||||
| dsh() { do_dsh 2 exec $@; return $?; } | dsh() { do_dsh 2 exec "$@"; return $?; } | ||||||
| _dsh() { __docker_complete_running_containers $@; } | _dsh() { __docker_complete_running_containers "$@"; } | ||||||
| drsh() { do_dsh 4 run --rm --entrypoint= $@; return $?; } | drsh() { do_dsh 4 run --rm --entrypoint= "$@"; return $?; } | ||||||
| _drsh() { __docker_container_subcommand $@; } | _drsh() { __docker_container_subcommand "$@"; } | ||||||
| do_dsh() { | do_dsh() { | ||||||
|     local minargs=$1 |     local minargs=$1 | ||||||
|     shift |     shift | ||||||
|     if [ $# -lt $minargs ]; then |     if [ $# -lt "$minargs" ]; then | ||||||
|  |         # shellcheck disable=SC2154 | ||||||
|         echo "Usage: ${funcstack[2]} [user@]container [program [args]]" >&2 |         echo "Usage: ${funcstack[2]} [user@]container [program [args]]" >&2 | ||||||
|         return 64 |         return 64 | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     local dowhat="$1" |     local dowhat="$1" | ||||||
|     local docker_args=() |     local docker_args=("$dowhat" -ti) | ||||||
|     shift |     shift | ||||||
|  |  | ||||||
|     while [ "${1:0:1}" = '-' ]; do |     while [ "${1:0:1}" = '-' ]; do | ||||||
| @@ -231,76 +242,84 @@ do_dsh() { | |||||||
|         shift |         shift | ||||||
|     done |     done | ||||||
|  |  | ||||||
|     local user="$(echo "$1" | cut -d'@' -f1 -s)" |     local user | ||||||
|     local prog="${@:2:$#}" |     user="$(echo "$1" | cut -d@ -f1 -s)" | ||||||
|     local usercmd="" |  | ||||||
|  |     declare -a prog | ||||||
|  |     prog=("${@:2:$#}") | ||||||
|     if [ -z "$user" ]; then |     if [ -z "$user" ]; then | ||||||
|         host="$1" |         host="$1" | ||||||
|     else |     else | ||||||
|         host=`echo $1 | cut -d'@' -f2 -s` |         host="$(cut -d@ -f2 -s <<< "$1")" | ||||||
|         usercmd="--user=$user" |         docker_args+=("--user=$user") | ||||||
|     fi |     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 |         echo "No such container $host" >&2 | ||||||
|         return 5 |         return 5 | ||||||
|     fi |     fi | ||||||
|  |     if [ "$dowhat" = run ]; then | ||||||
|  |         docker image pull "$host" | ||||||
|  |     fi | ||||||
|  |  | ||||||
|     if [ -z "$prog" ]; then |     if [ ${#prog[@]} = 0 ]; then | ||||||
|         shell_args=() |         shell_args=("$dowhat") | ||||||
|         if [ "$dowhat" = 'run' ]; then |         if [ "$dowhat" = 'run' ]; then | ||||||
|             shell_args=(--rm --entrypoint=) |             shell_args+=(--rm --entrypoint=) | ||||||
|         fi |         fi | ||||||
|         for shell in bash sh; do |         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=$? |             retval=$? | ||||||
|             if [ $retval -eq 0 ]; then |             if [ $retval -eq 0 ]; then | ||||||
|                 prog="$shell_path" |                 prog=("$shell_path") | ||||||
|                 break |                 break | ||||||
|             elif [ $retval -ge 125 ]; then |             elif [ $retval -ge 125 ]; then | ||||||
|                 return |                 return | ||||||
|             fi |             fi | ||||||
|         done |         done | ||||||
|         if [ -z "$prog" ]; then |         if [ ${#prog[@]} = 0 ]; then | ||||||
|             echo "Warning: No shell found in path.. trying /bin/sh" >&2 |             echo "Warning: No shell found in path.. trying /bin/sh" >&2 | ||||||
|             prog=/bin/sh |             prog=(/bin/sh) | ||||||
|         fi |         fi | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     docker $dowhat ${docker_args[@]} -ti $usercmd $host $(xargs <<< $prog) |     docker "${docker_args[@]}" "$host" "${prog[@]}" | ||||||
| } | } | ||||||
|  |  | ||||||
| alias dc='docker-compose' |  | ||||||
| alias dm='docker-machine' | alias dm='docker-machine' | ||||||
| dmc() { eval $(docker-machine env $1); } | dmc() { eval "$(docker-machine env "$1")"; } | ||||||
|  |  | ||||||
| # ZFS aliases | # ZFS aliases | ||||||
| alias zfs='sudo zfs' | alias zfs='sudo zfs' | ||||||
| alias zpool='sudo zpool' | alias zpool='sudo zpool' | ||||||
| alias z=zfs |  | ||||||
| alias zp=zpool | 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() { (set -o pipefail; command zfs list "$@" | grep -Ev 'docker/[0-9a-f]{64}' | column -t -R 2,3,4); return $?; } | ||||||
| _zl() { _zfs "list $@"; } | _zl() { _zfs "list $*"; } | ||||||
|  |  | ||||||
| # General Aliases | # General Aliases | ||||||
| alias ssha='eval `ssh-agent` ; ssh-add' | alias ssha="eval \"\$(ssh-agent)\"; ssh-add" | ||||||
| alias aliases="$EDITOR $DOTFILES/aliases ; exec zsh" | # shellcheck disable=SC2139 | ||||||
| alias vimrc="$EDITOR $VIMRC" | alias aliases="\$EDITOR $thisfile ; exec zsh" | ||||||
| alias zshrc="$EDITOR ${ZDOTDIR:-$HOME}/.zshrc ; exec zsh" | alias vimrc="\$EDITOR \$VIMRC" | ||||||
| alias gitrc="$EDITOR $XDG_CONFIG_HOME/git/config" | alias zshrc="\$EDITOR \${ZDOTDIR:-\$HOME}/.zshrc ; exec zsh" | ||||||
| alias xinitrc="$EDITOR $XDG_CONFIG_HOME/X11/xinitrc" | alias gitrc="\$EDITOR \$XDG_CONFIG_HOME/git/config" | ||||||
| alias xresources="$EDITOR $XDG_CONFIG_HOME/X11/xresources ; xrdb merge $XDG_CONFIG_HOME/X11/xresources" | alias xinitrc="\$EDITOR \$XDG_CONFIG_HOME/X11/xinitrc" | ||||||
| alias sshc="$EDITOR ~/.ssh/config" | alias xresources="\$EDITOR \$XDG_CONFIG_HOME/X11/xresources ; xrdb merge \$XDG_CONFIG_HOME/X11/xresources" | ||||||
| alias dotfiles="cd $DOTFILES" | alias sshc="\$EDITOR ~/.ssh/config" | ||||||
| alias i3c="$EDITOR $XDG_CONFIG_HOME/i3/config; systemctl --user reload i3" | alias dotfiles="cd \$XDG_CONFIG_HOME" | ||||||
| alias polybarc="$EDITOR $XDG_CONFIG_HOME/polybar/config; systemctl --user restart polybar@i3bar" | alias i3c="\$EDITOR \$XDG_CONFIG_HOME/i3/config; systemctl --user reload i3" | ||||||
|  | alias polybarc="\$EDITOR \$XDG_CONFIG_HOME/polybar/config.ini; systemctl --user reload polybar@i3bar" | ||||||
|  |  | ||||||
| alias sf=screenfetch |  | ||||||
| alias nf=neofetch |  | ||||||
| alias rot13="tr '[A-Za-z]' '[N-ZA-Mn-za-m]'" | alias rot13="tr '[A-Za-z]' '[N-ZA-Mn-za-m]'" | ||||||
|  |  | ||||||
| # Networking aliases | # Networking aliases | ||||||
| alias ipa="ip a" | 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*//'" | 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 | # vim: ft=sh | ||||||
|   | |||||||
| @@ -51,21 +51,16 @@ | |||||||
|     # Ignore newlines '\n' in notifications. |     # Ignore newlines '\n' in notifications. | ||||||
|     ignore_newline = no |     ignore_newline = no | ||||||
| 
 | 
 | ||||||
|     # The geometry of the window: |     # dynamic width from 0 to 400 | ||||||
|     #   [{width}]x{height}[+/-{x}+/-{y}] |     # width = (0, 400) | ||||||
|     # The geometry of the message window. |     # constant width of 400 | ||||||
|     # The height is measured in number of notifications everything else |     width = (320, 360) | ||||||
|     # in pixels.  If the width is omitted but the height is given |  | ||||||
|     # ("-geometry x2"), the message window expands over the whole screen |  | ||||||
|     # (dmenu-like).  If width is 0, the window expands to the longest |  | ||||||
|     # message displayed.  A positive x is measured from the left, a |  | ||||||
|     # negative from the right side of the screen.  Y is measured from |  | ||||||
|     # the top and down respectevly. |  | ||||||
|     # The width can be negative.  In this case the actual width is the |  | ||||||
|     # screen width minus the width defined in within the geometry option. |  | ||||||
| 
 | 
 | ||||||
|     # 53 = 30 + 23 (bar-height) |     # Position the notification in the top right corner | ||||||
|     geometry = "360x5-30+30" |     origin = top-right | ||||||
|  | 
 | ||||||
|  |     # Offset from the origin | ||||||
|  |     offset = 30x30 | ||||||
| 
 | 
 | ||||||
|     # Shrink window if it's smaller than the width.  Will be ignored if |     # Shrink window if it's smaller than the width.  Will be ignored if | ||||||
|     # width is 0. |     # width is 0. | ||||||
| @@ -74,7 +69,7 @@ | |||||||
|     # The transparency of the window.  Range: [0; 100]. |     # The transparency of the window.  Range: [0; 100]. | ||||||
|     # This option will only work if a compositing windowmanager is |     # This option will only work if a compositing windowmanager is | ||||||
|     # present (e.g. xcompmgr, compiz, etc.). |     # present (e.g. xcompmgr, compiz, etc.). | ||||||
|     transparency = 15 |     transparency = 20 | ||||||
| 
 | 
 | ||||||
|     # Don't remove messages, if the user is idle (no mouse or keyboard input) |     # Don't remove messages, if the user is idle (no mouse or keyboard input) | ||||||
|     # for longer than idle_threshold seconds. |     # for longer than idle_threshold seconds. | ||||||
| @@ -140,7 +135,7 @@ | |||||||
|     dmenu = /usr/bin/rofi -dmenu -i -p '' -config ~/.config/dunst/dunst-xresources |     dmenu = /usr/bin/rofi -dmenu -i -p '' -config ~/.config/dunst/dunst-xresources | ||||||
| 
 | 
 | ||||||
|     # Browser for opening urls in context menu. |     # Browser for opening urls in context menu. | ||||||
|     browser = /usr/bin/chromium |     browser = /usr/bin/firefox | ||||||
| 
 | 
 | ||||||
|     # Align icons left/right/off |     # Align icons left/right/off | ||||||
|     icon_position = left |     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 | ||||||
| @@ -6,33 +6,53 @@ | |||||||
|         <edit name="family" mode="prepend" binding="strong"> |         <edit name="family" mode="prepend" binding="strong"> | ||||||
|             <string>Noto Sans</string> |             <string>Noto Sans</string> | ||||||
|             <string>Noto Color Emoji</string> |             <string>Noto Color Emoji</string> | ||||||
|             <string>FontAwesome 5 Pro Light</string> |             <string>FontAwesome 6 Pro Light</string> | ||||||
|         </edit> |         </edit> | ||||||
|  | 
 | ||||||
|  |         <edit name="hintstyle" mode="assign"><const>hintnone</const></edit> | ||||||
|  |         <edit mode="assign" name="hinting"><bool>false</bool></edit> | ||||||
|     </match> |     </match> | ||||||
|  | 
 | ||||||
|     <match> |     <match> | ||||||
|         <test qual="any" name="family"><string>serif</string></test> |         <test qual="any" name="family"><string>serif</string></test> | ||||||
|         <edit name="family" mode="prepend" binding="strong"> |         <edit name="family" mode="prepend" binding="strong"> | ||||||
|             <string>Noto Serif</string> |             <string>Noto Serif</string> | ||||||
|             <string>Noto Color Emoji</string> |             <string>Noto Color Emoji</string> | ||||||
|             <string>FontAwesome 5 Pro Light</string> |             <string>FontAwesome 6 Pro Light</string> | ||||||
|         </edit> |         </edit> | ||||||
|     </match> |     </match> | ||||||
|  | 
 | ||||||
|     <match> |     <match> | ||||||
|         <test qual="any" name="family"><string>monospace</string></test> |         <test qual="any" name="family"><string>monospace</string></test> | ||||||
|         <edit name="family" mode="prepend" binding="strong"> |         <edit name="family" mode="prepend" binding="strong"> | ||||||
|             <string>Source Code Pro</string> |             <string>Source Code Pro</string> | ||||||
|             <string>Noto Color Emoji</string> |             <string>Noto Color Emoji</string> | ||||||
|             <string>FontAwesome 5 Pro Light</string> |             <string>FontAwesome 6 Pro Light</string> | ||||||
|         </edit> |         </edit> | ||||||
|     </match> |     </match> | ||||||
| 
 | 
 | ||||||
|     <match target="font"> |     <match> | ||||||
|         <test qual="all" name="family" compare="eq"><string>Noto Sans</string></test> |         <test qual="all" name="family" compare="eq"><string>Noto Sans</string></test> | ||||||
|         <edit name="hintstyle" mode="assign"><const>hintnone</const></edit> |         <edit name="hintstyle" mode="assign"><const>hintnone</const></edit> | ||||||
|     </match> |     </match> | ||||||
|     <match target="font"> | 
 | ||||||
|  |     <match> | ||||||
|         <test qual="all" name="family" compare="eq"><string>Source Code Pro</string></test> |         <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="lcdfilter" mode="assign"><const>lcddefault</const></edit> | ||||||
|         <edit name="rgba" mode="assign"><const>rgb</const></edit> |         <edit name="rgba" mode="assign"><const>rgb</const></edit> | ||||||
|     </match> |     </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,29 @@ | |||||||
| 	autocrlf = input | 	autocrlf = input | ||||||
| 	excludesfile = /home/frebib/.config/git/gitignore | 	excludesfile = /home/frebib/.config/git/gitignore | ||||||
| 	pager = diff-highlight | $PAGER | 	pager = diff-highlight | $PAGER | ||||||
|  | [init] | ||||||
|  | 	defaultBranch = master | ||||||
| [interactive] | [interactive] | ||||||
| 	diffFilter = diff-highlight | 	diffFilter = diff-highlight | ||||||
| [commit] | [commit] | ||||||
| 	gpgsign = true | 	gpgsign = true | ||||||
|  | [fetch] | ||||||
|  | 	prune = true | ||||||
| [push] | [push] | ||||||
| 	default = upstream | 	default = upstream | ||||||
| [pull] | [pull] | ||||||
| 	rebase = true | 	rebase = true | ||||||
|  | 	prune = true | ||||||
|  | [merge] | ||||||
|  | 	ff = only | ||||||
| [rebase] | [rebase] | ||||||
| 	autoStash = true | 	autoStash = true | ||||||
|  | [remote "origin"] | ||||||
|  | 	fetch = +refs/pull/*/head:refs/remotes/origin/pr/* | ||||||
|  | [remote "upstream"] | ||||||
|  | 	fetch = +refs/pull/*/head:refs/remotes/upstream/pr/* | ||||||
| [log] | [log] | ||||||
| 	date = relative | 	date = iso8601-local | ||||||
| [format] | [format] | ||||||
| 	pretty = format:%h %Cblue%ad%Creset %ae %Cgreen%s%Creset | 	pretty = format:%h %Cblue%ad%Creset %ae %Cgreen%s%Creset | ||||||
| [alias] | [alias] | ||||||
| @@ -25,9 +36,12 @@ | |||||||
| 	pushall = !git remote | xargs -L1 git push | 	pushall = !git remote | xargs -L1 git push | ||||||
| 	count = !echo $(pwd) && git rev-list HEAD --count | 	count = !echo $(pwd) && git rev-list HEAD --count | ||||||
| 	unpushed = !git log --oneline @{u}..HEAD | 	unpushed = !git log --oneline @{u}..HEAD | ||||||
|  | 	leaders = !git shortlog -s -n --all --no-merges | ||||||
|  | 	defbranch = !git symbolic-ref refs/remotes/origin/HEAD | sed \"s@^refs/remotes/origin/@@\" | ||||||
| [advice] | [advice] | ||||||
| 	statusHints = false | 	statusHints = false | ||||||
| 	pushUpdateRejected = false | 	pushUpdateRejected = false | ||||||
|  | 	detachedHead = false | ||||||
| [sendemail] | [sendemail] | ||||||
| 	from = Joe Groocock <me@frebib.net> | 	from = Joe Groocock <me@frebib.net> | ||||||
| 	smtpserver = smtp.zoho.com | 	smtpserver = smtp.zoho.com | ||||||
| @@ -1,12 +1,8 @@ | |||||||
| # 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-theme-name="Arc-Dark" | ||||||
| gtk-icon-theme-name="Xenlism-Wildfire" | gtk-icon-theme-name="Xenlism-Wildfire" | ||||||
| gtk-font-name="Noto Sans 9" | gtk-font-name="sans 9" | ||||||
| gtk-cursor-theme-name="Breeze_Obsidian" | gtk-cursor-theme-name="Breeze_Obsidian" | ||||||
| gtk-cursor-theme-size=0 | gtk-cursor-theme-size=16 | ||||||
| gtk-toolbar-style=GTK_TOOLBAR_BOTH | gtk-toolbar-style=GTK_TOOLBAR_BOTH | ||||||
| gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR | gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR | ||||||
| gtk-button-images=1 | gtk-button-images=1 | ||||||
| @@ -2,9 +2,9 @@ | |||||||
| gtk-theme-name=Arc-Dark | gtk-theme-name=Arc-Dark | ||||||
| gtk-icon-theme-name=Xenlism-Wildfire | gtk-icon-theme-name=Xenlism-Wildfire | ||||||
| gtk-application-prefer-dark-theme=true | gtk-application-prefer-dark-theme=true | ||||||
| gtk-font-name=Noto Sans 9 | gtk-font-name=sans 9 | ||||||
| gtk-cursor-theme-name=Breeze_Obsidian | gtk-cursor-theme-name=Breeze_Obsidian | ||||||
| gtk-cursor-theme-size=0 | gtk-cursor-theme-size=16 | ||||||
| gtk-toolbar-style=GTK_TOOLBAR_BOTH | gtk-toolbar-style=GTK_TOOLBAR_BOTH | ||||||
| gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR | gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR | ||||||
| gtk-button-images=1 | gtk-button-images=1 | ||||||
							
								
								
									
										1
									
								
								gtk-4.0/settings.ini
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								gtk-4.0/settings.ini
									
									
									
									
									
										Symbolic link
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | ../gtk-3.0/settings.ini | ||||||
| @@ -107,48 +107,52 @@ 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.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 | 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 | # Window rules | ||||||
| for_window [class="Pinentry"] floating enable | for_window [class="Pinentry"] floating enable | ||||||
| for_window [class="Pavucontrol"] floating enable | for_window [class="Pavucontrol"] floating enable | ||||||
| for_window [class="Blueman-manager"] 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="floating-term"] floating enable | ||||||
| for_window [window_role="pop-up"] floating enable | for_window [class="^Rofi$"] 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 |  | ||||||
| 
 | 
 | ||||||
| new_window none | new_window none | ||||||
| new_float none | new_float none | ||||||
| 
 | 
 | ||||||
| gaps inner 20 | gaps inner 24 | ||||||
| gaps outer 4 | gaps outer 4 | ||||||
| 
 | 
 | ||||||
| focus_follows_mouse yes | focus_follows_mouse yes | ||||||
|  | popup_during_fullscreen smart | ||||||
| 
 | 
 | ||||||
| # keybindings | # keybindings | ||||||
| bindsym $mod+Shift+j            reload | bindsym $mod+Shift+j            reload | ||||||
| bindsym $mod+c                  exec systemd-run --user --scope --slice=chromium.slice --no-block -- chromium | bindsym --release $mod+x        exec xkill | ||||||
| bindsym $mod+b                  exec systemd-run --user --scope --slice=firefox.slice --no-block -- firefox | bindsym $mod+c                  exec notify-send "Try again" "You meant \\\$mod+b" | ||||||
| bindsym $mod+v                  exec "i3-sensible-terminal -e \\"$SHELL -c vim;$SHELL\\" | bindsym $mod+b                  exec systemd-run-i3 -n firefox | ||||||
| bindsym $mod+Ctrl+v             exec "i3-sensible-terminal -r floating-term -e \\"$SHELL -c vim;$SHELL\\" | bindsym $mod+Return             exec systemd-run-i3 -n alacritty | ||||||
| bindsym $mod+Return             exec i3-sensible-terminal | bindsym $mod+Ctrl+Return        exec systemd-run-i3 -n alacritty --class floating | ||||||
| bindsym $mod+Ctrl+Return        exec i3-sensible-terminal -r floating-term | bindsym $mod+Shift+Return       exec systemd-run-i3 -n alacritty --working-directory "$(xcwd)" | ||||||
| bindsym $mod+Shift+Return       exec i3-sensible-terminal -d "`xcwd`" | bindsym $mod+Ctrl+Shift+Return  exec systemd-run-i3 -n alacritty --class floating --working-directory "$(xcwd)" | ||||||
| bindsym $mod+Ctrl+Shift+Return  exec i3-sensible-terminal -r floating-term -d "`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+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+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 $mod+Shift+i            exec rofi-fontawesome | ||||||
| bindsym --release Print         exec screenshot | bindsym --release Print         exec screenshot | ||||||
| bindsym --release $mod+Print    exec imgur-screenshot | bindsym --release $mod+Print    exec screenshot --clip | ||||||
| bindsym $mod+$alt+space         exec --no-startup-id ~/.config/i3/cycleaudio.py && pkill -RTMIN+10 i3blocks | bindsym --release Shift+Print   exec screenshot --active | ||||||
| bindsym $mod+numbersign         exec "i3-sensible-terminal -e 'sh -c xclip\ -o\ |\ gpg\ --decrypt\ 2>&1\ \;\ $SHELL'" | bindsym --release $mod+Shift+Print exec screenshot --active --clip | ||||||
| bindsym $mod+r                  exec "bash -c 'pwgen -nc 32 1 | tee >(xargs notify-send Generated\ password\:) | xclip -i'" | 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+g                  exec "LINK=$(gist -PRpc); notify-send -c transfer \\"$LINK\\"" | bindsym $mod+$alt+space         exec systemd-run-i3 -s background -n ~/.config/i3/cycleaudio.py | ||||||
| bindsym --release $mod+i        exec sh -c 'sleep 0.5 && xdotool type --delay 400 "$(xclip -o -selection clipboard)"' | 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 10 -- "$(xclip -o -selection clipboard)"' | ||||||
|  | bindsym $mod+z                  exec otp | rofi -dmenu -p otp | xargs otp | ||||||
| 
 | 
 | ||||||
| # Media player controls | # Media player controls | ||||||
| bindsym XF86AudioPlay           exec --no-startup-id playerctl -a play-pause | bindsym XF86AudioPlay           exec --no-startup-id playerctl -a play-pause | ||||||
| @@ -159,7 +163,7 @@ bindsym XF86AudioPrev           exec --no-startup-id playerctl -a previous | |||||||
| bindsym XF86AudioRaiseVolume    exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@  +1000 | 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 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 XF86AudioMute           exec --no-startup-id pactl set-sink-mute   @DEFAULT_SINK@ toggle | ||||||
| bindsym XF86MonBrightnessUp     exec xbacklight -inc 5 && pkill -RTMIN+12 i3blocks | bindsym XF86MonBrightnessUp     exec light -A 5 | ||||||
| bindsym XF86MonBrightnessDown   exec xbacklight -dec 5 && pkill -RTMIN+12 i3blocks | bindsym XF86MonBrightnessDown   exec light -U 5 | ||||||
| 
 | 
 | ||||||
| # vim:ft=i3 | # vim:ft=i3 | ||||||
| @@ -1,10 +1,11 @@ | |||||||
| #!/bin/sh | #!/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 | case $option in | ||||||
|     lock) dm-tool switch-to-greeter;; |     lock) dm-tool switch-to-greeter;; | ||||||
|     logout) i3-msg exit;; |     logout) systemctl --user exit;; | ||||||
|     sleep) systemctl suspend;; |     sleep) systemctl suspend;; | ||||||
|     hibernate) systemctl hibernate;; |     hibernate) systemctl hibernate;; | ||||||
|     power\ off) systemctl poweroff;; |     power\ off) systemctl poweroff;; | ||||||
| @@ -12,7 +13,5 @@ case $option in | |||||||
|     windows) |     windows) | ||||||
|         windows=`efibootmgr | grep -Po -m1 'Boot\K(\d{4}).*Windows.*' | head -c4` |         windows=`efibootmgr | grep -Po -m1 'Boot\K(\d{4}).*Windows.*' | head -c4` | ||||||
|         sudo efibootmgr -n $windows |         sudo efibootmgr -n $windows | ||||||
|         sudo hibereboot;; |         reboot;; | ||||||
| esac | 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,32 +1,32 @@ | |||||||
| # Logging | # Logging | ||||||
| log-level = "debug"; | log-level = "info"; | ||||||
| log-file = "/home/frebib/.local/share/picom.log"; | #log-file = "/home/frebib/.local/share/picom.log"; | ||||||
| 
 | 
 | ||||||
| # Shadow | # Shadow | ||||||
| shadow = true; | shadow = true; | ||||||
| shadow-radius = 24; | shadow-radius = 24; | ||||||
| shadow-offset-x = -24; | shadow-offset-x = -20; | ||||||
| shadow-offset-y = -24; | shadow-offset-y = -20; | ||||||
| shadow-opacity = 0.6; | shadow-opacity = 0.3; | ||||||
| # shadow-red = 0.0; | shadow-color = "#000000"; | ||||||
| # shadow-green = 0.0; |  | ||||||
| # shadow-blue = 0.0; |  | ||||||
| shadow-exclude = [ | shadow-exclude = [ | ||||||
| 	"class_g = 'slop'", | 	"class_g = 'slop'", | ||||||
| 	"class_g = 'Conky'", | 	"class_g = 'Conky'", | ||||||
| 	"class_g ?= 'Notify-osd'", | 	"class_g ?= 'Notify-osd'", | ||||||
| 	"class_g = 'Cairo-clock'", | 	"class_g = 'firefox' && argb && (window_type = 'utility' || window_type = 'popup_menu')", | ||||||
| 	"name = 'Notification'", | 	"name = 'Notification'", | ||||||
|  | 	"name = 'cpt_frame_window'", | ||||||
| 	"_GTK_FRAME_EXTENTS@:c" | 	"_GTK_FRAME_EXTENTS@:c" | ||||||
| ]; | ]; | ||||||
| # shadow-exclude = "n:e:Notification"; | # shadow-exclude = "n:e:Notification"; | ||||||
| # shadow-exclude-reg = "x10+0+0"; | # shadow-exclude-reg = "x10+0+0"; | ||||||
|  | # shadow-ignore-shaped = true; | ||||||
| xinerama-shadow-crop = true; | xinerama-shadow-crop = true; | ||||||
| 
 | 
 | ||||||
| # Opacity | # Opacity | ||||||
| frame-opacity = 1.0; | frame-opacity = 1.0; | ||||||
| # active-opacity = 0.8; | active-opacity = 1.0; | ||||||
| inactive-opacity = 0.6; | inactive-opacity = 0.5; | ||||||
| inactive-opacity-override = true; | inactive-opacity-override = true; | ||||||
| # inactive-dim = 0.2; | # inactive-dim = 0.2; | ||||||
| # inactive-dim-fixed = true; | # inactive-dim-fixed = true; | ||||||
| @@ -47,54 +47,88 @@ blur-background-exclude = [ | |||||||
| 	"class_g = 'Onboard'", | 	"class_g = 'Onboard'", | ||||||
| 	"class_g = 'slop'", | 	"class_g = 'slop'", | ||||||
| 	"class_g = 'Polybar'", | 	"class_g = 'Polybar'", | ||||||
|  | 	"class_g = 'firefox' && argb && (window_type = 'utility' || window_type = 'popup_menu')", | ||||||
| 	"window_type = 'dock'", | 	"window_type = 'dock'", | ||||||
| 	"window_type = 'desktop'", | 	"window_type = 'desktop'", | ||||||
| 	"_GTK_FRAME_EXTENTS@:c" | 	"_GTK_FRAME_EXTENTS@:c", | ||||||
|  | 	"_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" | ||||||
| ]; | ]; | ||||||
| 
 | 
 | ||||||
|  | # Corners | ||||||
|  | corner-radius = 9; | ||||||
|  | 
 | ||||||
| # Fading | # Fading | ||||||
| fading = true; | fading = true; | ||||||
| fade-delta = 10; | fade-delta = 10; | ||||||
| fade-in-step = 0.03; | fade-in-step = 0.04 | ||||||
| fade-out-step = 0.03; | fade-out-step = 0.06; | ||||||
| no-fading-openclose = false; | no-fading-openclose = false; | ||||||
| no-fading-destroyed-argb = false; | no-fading-destroyed-argb = false; | ||||||
| # fade-exclude = [ ]; | # fade-exclude = [ ]; | ||||||
| 
 | 
 | ||||||
|  | # Focus | ||||||
|  | focus-exclude = [ | ||||||
|  | 	"i:ai:chromium", | ||||||
|  | 	"class_g = 'firefox'", | ||||||
|  | 	"class_g = 'zoom'", | ||||||
|  | 	"class_g = 'guvcview'", | ||||||
|  | 	"class_g = 'Entangle'", | ||||||
|  | 	"class_g = 'obs'", | ||||||
|  | 	"class_g = 'parsecd'", | ||||||
|  | 	"class_g = 'discord'", | ||||||
|  | 	"class_g = 'steam_app_271590'" | ||||||
|  | ]; | ||||||
|  | 
 | ||||||
| # Other | # Other | ||||||
|  | # https://github.com/yshui/picom/blob/next/picom.sample.conf#L203 | ||||||
| backend = "glx"; | backend = "glx"; | ||||||
|  | vsync = true; | ||||||
| mark-wmwin-focused = true; | mark-wmwin-focused = true; | ||||||
| mark-ovredir-focused = true; | mark-ovredir-focused = true; | ||||||
| use-ewmh-active-win = false; |  | ||||||
| detect-rounded-corners = true; | detect-rounded-corners = true; | ||||||
| detect-client-opacity = true; | detect-client-opacity = true; | ||||||
| refresh-rate = 0; | use-ewmh-active-win = true; | ||||||
| vsync = true; |  | ||||||
| # sw-opti = true; |  | ||||||
| # unredir-if-possible = true; | # unredir-if-possible = true; | ||||||
| # unredir-if-possible-delay = 5000; | # unredir-if-possible-delay = 5000; | ||||||
| # unredir-if-possible-exclude = [ ]; | # unredir-if-possible-exclude = [ ]; | ||||||
| focus-exclude = [ |  | ||||||
| 	"i:ai:chromium", |  | ||||||
| 	"class_g = 'Firefox'", |  | ||||||
| ]; |  | ||||||
| detect-transient = true; | detect-transient = true; | ||||||
| detect-client-leader = true; | detect-client-leader = true; | ||||||
| invert-color-include = [ ]; | invert-color-include = [ ]; | ||||||
| # resize-damage = 1; | resize-damage = 1; | ||||||
| 
 | 
 | ||||||
| # GLX backend | # GLX backend | ||||||
| glx-no-stencil = true; | glx-no-stencil = true; | ||||||
| glx-no-rebind-pixmap = true; | glx-no-rebind-pixmap = true; | ||||||
| xrender-sync-fence = true; | # xrender-sync-fence = true; | ||||||
| #use-damage = true; | # no-use-damage = false; | ||||||
|  | use-damage = true; | ||||||
| 
 | 
 | ||||||
| # Window type settings | # Window type settings | ||||||
| wintypes: | wintypes: { | ||||||
| { | 	tooltip = { | ||||||
|   tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; }; | 		opacity = 0.75; | ||||||
|   dock = { shadow = false; } | 		full-shadow = false; | ||||||
|   dnd = { shadow = false; } | 		blur-background = false; | ||||||
|   popup_menu = { opacity = 0.8; } | 	} | ||||||
|   dropdown_menu = { opacity = 0.8; } | 
 | ||||||
|  | 	dock = { | ||||||
|  | 		# Prevents polybar getting a forehead-shadow | ||||||
|  | 		shadow = false; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	dnd = { | ||||||
|  | 		# Prevents dragged text in a browser getting blur/shadow | ||||||
|  | 		shadow = false; | ||||||
|  | 		blur-background = false; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	popup_menu = { | ||||||
|  | 		opacity = 0.8; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	dropdown_menu = { | ||||||
|  | 		opacity = 0.8; | ||||||
|  | 	} | ||||||
| }; | }; | ||||||
|  | 
 | ||||||
|  | # vim: ft=conf noet | ||||||
| @@ -1,5 +1,5 @@ | |||||||
| [colours] | [colours] | ||||||
| background = transparent | background = #0000 | ||||||
| text = #eceff1 | text = #eceff1 | ||||||
| icon = #147a82 | icon = #147a82 | ||||||
| warning = #ffcb00 | warning = #ffcb00 | ||||||
| @@ -10,25 +10,23 @@ urgent = #e53935 | |||||||
| format-foreground = ${colours.text} | format-foreground = ${colours.text} | ||||||
| format-background = ${colours.background} | format-background = ${colours.background} | ||||||
| format-spacing = 0 | format-spacing = 0 | ||||||
| format-margin  = 2.5 | format-margin  = 3 | ||||||
| format-offset  = 0 | format-offset  = 0 | ||||||
| 
 | 
 | ||||||
| screenchange-reload = true | screenchange-reload = true | ||||||
| 
 | 
 | ||||||
| [bar/i3bar] | [bar/i3bar] | ||||||
| monitor = ${env:MONITOR:HDMI-0} |  | ||||||
| dpi  = ${xrdb:Xft.dpi:96} | dpi  = ${xrdb:Xft.dpi:96} | ||||||
| fixed-center = false | fixed-center = false | ||||||
| enable-ipc = true | enable-ipc = true | ||||||
| 
 | 
 | ||||||
| width = 100% | width = 100% | ||||||
| #offset-x = 18px |  | ||||||
| height = 16pt | height = 16pt | ||||||
| bottom = true | bottom = true | ||||||
| radius = 0 | radius = 0 | ||||||
| 
 | 
 | ||||||
| font-0 = sans:pixelsize=9;2 | font-0 = sans:pixelsize=9;2pt | ||||||
| font-1 = FontAwesome5ProLight:pixelsize=10;2 | font-1 = FontAwesome6ProLight:pixelsize=10;2pt | ||||||
| 
 | 
 | ||||||
| foreground = ${colours.text} | foreground = ${colours.text} | ||||||
| background = ${colours.background} | background = ${colours.background} | ||||||
| @@ -39,22 +37,22 @@ padding-right = 2pt | |||||||
| border-size = 0 | border-size = 0 | ||||||
| border-left-size = 16pt | border-left-size = 16pt | ||||||
| border-right-size = 16pt | border-right-size = 16pt | ||||||
| border-bottom-size = 8pt | border-bottom-size = 10pt | ||||||
| 
 | 
 | ||||||
| line-size = 0 | line-size = 0 | ||||||
| line-colour = #f00 | line-colour = #f00 | ||||||
| 
 | 
 | ||||||
| modules-left = i3 | modules-left = i3 | ||||||
| modules-center = | modules-center = | ||||||
| # modules-right = volume updates weather xkeyboard 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 temperature date | modules-right = volume updates weather wlan eth memory cpu xbacklight battery cputemp gputemp date | ||||||
| 
 | 
 | ||||||
| tray-position = right | tray-position = right | ||||||
| tray-detached = false | tray-detached = false | ||||||
| tray-background = ${colours.background} | tray-background = ${colours.background} | ||||||
| #tray-offset-x = -20 | #tray-offset-x = -20 | ||||||
| #tray-offset-y = 0 | #tray-offset-y = 0 | ||||||
| tray-maxsize = 16 | tray-maxsize = 16pt | ||||||
| tray-padding = 8pt | tray-padding = 8pt | ||||||
| tray-scale = 1.0 | tray-scale = 1.0 | ||||||
| 
 | 
 | ||||||
| @@ -68,17 +66,17 @@ exec = $XDG_CONFIG_HOME/polybar/update.sh | |||||||
| tail = true | tail = true | ||||||
| format-prefix = "  " | format-prefix = "  " | ||||||
| format-prefix-foreground = ${colours.icon} | 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] | [module/weather] | ||||||
| type = custom/script | type = custom/script | ||||||
| exec = $XDG_CONFIG_HOME/polybar/weather.sh | exec = $XDG_CONFIG_HOME/polybar/weather.sh | ||||||
| interval = 120 | 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] | [module/gateway] | ||||||
| type = custom/script | 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 | interval = 2 | ||||||
| format-prefix = "  " | format-prefix = "  " | ||||||
| format-prefix-foreground = ${colours.icon} | format-prefix-foreground = ${colours.icon} | ||||||
| @@ -189,10 +187,10 @@ ramp-signal-foreground = ${colours.icon} | |||||||
| 
 | 
 | ||||||
| [module/eth] | [module/eth] | ||||||
| type = internal/network | type = internal/network | ||||||
| interface = eth0 | interface = lan | ||||||
| interval = 3.0 | interval = 10.0 | ||||||
| 
 | 
 | ||||||
| label-connected = %local_ip% | label-connected = %local_ip% & %local_ip6% | ||||||
| format-connected-prefix = "  " | format-connected-prefix = "  " | ||||||
| format-connected-prefix-foreground = ${colours.icon} | format-connected-prefix-foreground = ${colours.icon} | ||||||
| format-connected-underline = ${colours.background} | format-connected-underline = ${colours.background} | ||||||
| @@ -208,7 +206,7 @@ label-disconnected-foreground = ${colours.critical} | |||||||
| type = internal/date | type = internal/date | ||||||
| interval = 1 | 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 = %H:%M | ||||||
| time-alt = %a %e %b %Y %H:%M:%S | time-alt = %a %e %b %Y %H:%M:%S | ||||||
| @@ -221,8 +219,8 @@ format-prefix-foreground = ${colours.icon} | |||||||
| type = internal/pulseaudio | type = internal/pulseaudio | ||||||
| 
 | 
 | ||||||
| label-volume = %percentage% | label-volume = %percentage% | ||||||
| format-volume = %{A3:pavucontrol:}<ramp-volume>  <label-volume>%{A} | format-volume = %{A3:systemd-run --user --no-block -- pavucontrol:}<ramp-volume>  <label-volume>%{A} | ||||||
| format-muted = %{A3:pavucontrol:}<label-muted>%{A} | format-muted = %{A3:systemd-run --user --no-block -- pavucontrol:}<label-muted>%{A} | ||||||
| 
 | 
 | ||||||
| label-volume-foreground = ${root.foreground} | label-volume-foreground = ${root.foreground} | ||||||
| format-muted-foreground = ${colours.icon} | format-muted-foreground = ${colours.icon} | ||||||
| @@ -267,10 +265,10 @@ ramp-capacity-0-foreground = ${colours.critical} | |||||||
| ramp-capacity-1-foreground = ${colours.warning} | ramp-capacity-1-foreground = ${colours.warning} | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| [module/temperature] | [module/cputemp] | ||||||
| type = internal/temperature | type = internal/temperature | ||||||
| thermal-zone = 2 | hwmon-path = /sys/devices/platform/nct6775.656/hwmon/hwmon1/temp2_input | ||||||
| warn-temperature = 70 | base-temperature = 25 | ||||||
| 
 | 
 | ||||||
| format = <ramp>  <label> | format = <ramp>  <label> | ||||||
| format-warn = <ramp>  <label-warn> | format-warn = <ramp>  <label-warn> | ||||||
| @@ -287,6 +285,15 @@ ramp-4 =  | |||||||
| ramp-5 =  | ramp-5 =  | ||||||
| ramp-foreground = ${colours.icon} | 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] | [module/powermenu] | ||||||
| type = custom/menu | type = custom/menu | ||||||
| @@ -1,5 +1,5 @@ | |||||||
| top's Config File (Linux processes with windows) | 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 | Def	fieldscur=¥&K¨³´»½@·º¹56ÄFÅ')*+,-./0128<>?ABCGHIJLMNOPQRSTUVWXYZ[\]^_`abcdefghij | ||||||
| 	winflags=163638, sortindx=21, maxtasks=0, graph_cpus=1, graph_mems=1 | 	winflags=163638, sortindx=21, maxtasks=0, graph_cpus=1, graph_mems=1 | ||||||
| 	summclr=1, msgsclr=1, headclr=3, taskclr=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) | ||||||
| @@ -8,7 +8,7 @@ window { | |||||||
|   border:           0.3em; |   border:           0.3em; | ||||||
|   border-color:     #2f343f; |   border-color:     #2f343f; | ||||||
|   padding:          0.8em; |   padding:          0.8em; | ||||||
|   background-color: rgba(56, 60, 74, 0.95); |   background-color: rgba(56, 60, 74, 0.9); | ||||||
|   transparency:     "real"; |   transparency:     "real"; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @@ -1,9 +1,6 @@ | |||||||
| configuration { | configuration { | ||||||
|   theme: "arc-dark"; |  | ||||||
|   font: "sans 14"; |   font: "sans 14"; | ||||||
|   dpi: 0; |   dpi: 0; | ||||||
|   width: 35; |  | ||||||
|   lines: 10; |  | ||||||
| 
 | 
 | ||||||
|   /* show-icons: true; */ |   /* show-icons: true; */ | ||||||
|   separator-style: "solid"; |   separator-style: "solid"; | ||||||
| @@ -142,4 +139,15 @@ configuration { | |||||||
| /*  me-accept-custom: "Control+MouseDPrimary";*/ | /*  me-accept-custom: "Control+MouseDPrimary";*/ | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | @theme "arc-dark" | ||||||
|  | 
 | ||||||
|  | window { | ||||||
|  | 	width: 700; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | listview { | ||||||
|  | 	lines: 10; | ||||||
|  | 	columns: 1; | ||||||
|  | } | ||||||
|  | 
 | ||||||
| /* vim: ft=css sw=2 */ | /* vim: ft=css sw=2 */ | ||||||
| @@ -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_LEFT --mode 1920x1080 --pos 0x0 --rotate inverted \ | ||||||
|        --output $TOP_RIGHT --mode 1920x1080 --pos 1920x0 --rotate inverted \ |        --output $TOP_RIGHT --mode 1920x1080 --pos 1920x0 --rotate inverted \ | ||||||
|        --output $BOTTOM_RIGHT --mode 1920x1080 --pos 1920x1080 --rotate normal |        --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 --newmode $MODELINE 2>/dev/null || true | ||||||
| xrandr --addmode $OUTPUT $MODENAME 2>/dev/null || true | xrandr --addmode $OUTPUT $MODENAME 2>/dev/null || true | ||||||
| xrandr --output  $OUTPUT --mode $MODENAME | xrandr --output  $OUTPUT --mode $MODENAME | ||||||
|  |  | ||||||
| feh --no-fehbg --no-xinerama --bg-fill $DOTFILES/lakesidesunrise.jpg |  | ||||||
|   | |||||||
							
								
								
									
										74
									
								
								scripts/dpi
									
									
									
									
									
								
							
							
						
						
									
										74
									
								
								scripts/dpi
									
									
									
									
									
								
							| @@ -1,31 +1,65 @@ | |||||||
| #!/bin/sh | #!/bin/bash | ||||||
| set -e | set -eu | ||||||
|  |  | ||||||
| # Based on https://github.com/vincentbernat/awesome-configuration/blob/master/bin/xsettingsd-setup | # Based on https://github.com/vincentbernat/awesome-configuration/blob/master/bin/xsettingsd-setup | ||||||
|  | CONF_DIR="${XDG_CONFIG_HOME:-$HOME/.config}" | ||||||
|  |  | ||||||
| dpi=$1 | xrdbget() { | ||||||
|  |     set -o pipefail | ||||||
|  |     xrdb -query | grep -i -m1 "$1" | sed 's/^.*:\s//g' || echo "$2" | ||||||
|  | } | ||||||
|  |  | ||||||
| if [ -z "$1" ]; then | xsetting_bool() { | ||||||
|     >&2 printf "Usage\n\t%s: <dpi>" "$(basename "$0")" |     case "$1" in | ||||||
|  |         true) echo 1;; | ||||||
|  |         false) echo 0;; | ||||||
|  |         default) echo -1;; | ||||||
|  |         *) echo -1;; | ||||||
|  |     esac | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | if [ -z "$1" ] || [ "$1" -gt 200 ] || [ "$1" -lt 96 ]; then | ||||||
|  |     >&2 printf "Usage\n\t%s: value\n\n  value\t Value must be within 96-200 inclusive\n" "$(basename "$0")" | ||||||
|     exit 1 |     exit 1 | ||||||
| fi | fi | ||||||
|  |  | ||||||
| CONF_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/xsettingsd" | dpi=$1 | ||||||
| mkdir -p "$CONF_DIR" | scale=$(( dpi/96 )) | ||||||
|  | cursor=$(( dpi/6 )) | ||||||
|  |  | ||||||
| # Build xsettingsd.local | # Update picom scale | ||||||
|  | sed -i -e "s/strength =.*$/strength = $(( dpi*8/96 ));/" \ | ||||||
|  |     -e "s/corner-radius =.*$/corner-radius = $(( dpi/13 ));/" \ | ||||||
|  |     "$CONF_DIR/picom/picom.conf" & | ||||||
|  |  | ||||||
|  | # Build xsettingsd.conf | ||||||
|  | mkdir -p "$CONF_DIR/xsettingsd" | ||||||
| { | { | ||||||
|     cat $CONF_DIR/xsettingsd.conf 2>/dev/null || true |     cat "$CONF_DIR/xsettingsd.local" 2>/dev/null || : | ||||||
|     echo Xft/DPI $(( $dpi*1024 )) |     echo "Xcursor/size $cursor" | ||||||
|     echo Gdk/WindowScalingFactor $(( $dpi/96 )) |     echo "Gtk/CursorThemeSize $cursor" | ||||||
|     echo Gdk/UnscaledDPI $(( $dpi*1024/($dpi/96) )) |     echo "Gtk/CursorThemeName \"$(xrdbget Xcursor.theme Adwaita)\"" | ||||||
| } > $CONF_DIR/xsettingsd.local |     echo "Xft/HintStyle \"$(xrdbget Xft.hintstyle hintfull)\"" | ||||||
|  |     echo "Xft/Hinting $(xsetting_bool "$(xrdbget Xft.hinting default)")" | ||||||
|  |     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}') | xrdb -merge <<EOF & | ||||||
| if [ -z "$pid" ]; then | Xft.dpi: $dpi | ||||||
|     xsettingsd -c $CONF_DIR/xsettingsd.local & | Xcursor.size: $cursor | ||||||
| else | EOF | ||||||
|     kill -HUP $pid | xrandr --dpi "$dpi" & | ||||||
| fi | systemctl --user reload-or-restart xsettingsd & | ||||||
|  | wait | ||||||
|  |  | ||||||
| echo Xft.dpi: $dpi | xrdb -merge | systemctl --user reload \ | ||||||
|  |     i3 \ | ||||||
|  |     polybar@i3bar & | ||||||
|  | systemctl --user restart \ | ||||||
|  |     dunst & | ||||||
|  |  | ||||||
|  | wait | ||||||
|   | |||||||
							
								
								
									
										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 | ||||||
							
								
								
									
										42
									
								
								scripts/otp
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										42
									
								
								scripts/otp
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,42 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  |  | ||||||
|  | while getopts "on:" o; do | ||||||
|  |     case "${o}" in | ||||||
|  |         o) | ||||||
|  |             stdout=1;; | ||||||
|  |         n) | ||||||
|  |             caller="${OPTARG}" | ||||||
|  |             ;; | ||||||
|  |         *) | ||||||
|  |             exec ykman oath accounts list | ||||||
|  |             ;; | ||||||
|  |     esac | ||||||
|  | done | ||||||
|  | shift $((OPTIND-1)) | ||||||
|  |  | ||||||
|  | if [ $# -lt 1 ]; then | ||||||
|  |     exec ykman oath accounts list | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | if [ -n "$caller" ]; then | ||||||
|  |     notif="$(notify-send -p "Touch your Yubikey" "$caller is requesting otp for $1")" | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | ykman oath accounts code -s "$1" 2>&1 | | ||||||
|  |     while read -r x; do | ||||||
|  |         if grep -Pqw '[0-9]{6}' <<< "$x"; then | ||||||
|  |             if [ -z "$stdout" ]; then | ||||||
|  |                 echo "$x" | tee >(xclip -i) | ||||||
|  |                 xdotool type "$x" | ||||||
|  |             else | ||||||
|  |                 echo "$x" | ||||||
|  |             fi | ||||||
|  |         fi | ||||||
|  |         if [ -z "$stdout" ]; then | ||||||
|  |             notify-send "$x"; | ||||||
|  |         fi | ||||||
|  |     done | ||||||
|  |  | ||||||
|  | if [ -n "$notif" ]; then | ||||||
|  |     notify-send -r "$notif" -t 1000 "Touch your Yubikey" "otp generated for $caller" | ||||||
|  | fi | ||||||
| @@ -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() { | function display() { | ||||||
|     fontawesome=$(cat "$FONTAWESOME_FILE" | grep -v '#' | grep -v '^[[:space:]]*$') |     update=$'\tUpdate Font Awesome cache' | ||||||
|     update=""$'\t'"Update Font Awesome cache" |     fontawesome=$(grep -v '#\|^[[:space:]]*$' "$FONTAWESOME_FILE"; printf "$update\n") | ||||||
|     fontawesome=$(printf "$fontawesome\n$update") |  | ||||||
|     line=$(echo "$fontawesome" | rofi -dmenu -i -p fontawesome -normal-window -kb-custom-1 Ctrl+c -kb-row-tab '' -kb-row-select Tab $@) |     line=$(echo "$fontawesome" | rofi -dmenu -i -p fontawesome -normal-window -kb-custom-1 Ctrl+c -kb-row-tab '' -kb-row-select Tab $@) | ||||||
|     exit_code=$? |     exit_code=$? | ||||||
|  |  | ||||||
| @@ -69,7 +68,6 @@ function display() { | |||||||
|         return |         return | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     #IFS=$'\t' |  | ||||||
|     line=($line) |     line=($line) | ||||||
|     last=${line[${#line[@]}-1]} |     last=${line[${#line[@]}-1]} | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,19 +1,41 @@ | |||||||
| #!/bin/sh | #!/bin/bash | ||||||
| set -e | set -e | ||||||
|  |  | ||||||
| NOTIFY_APPNAME="$(basename "$0")" | NOTIFY_APPNAME="$(basename "$0")" | ||||||
| NOTIFY_ICONPATH="/usr/share/icons/Xenlism-Wildfire/Apps/screenshot.svg" | NOTIFY_ICONPATH="/usr/share/icons/Xenlism-Wildfire/Apps/screenshot.svg" | ||||||
|  |  | ||||||
| SCROT_CMD="maim -m 10 -us %" |  | ||||||
| FILENAME="$(date '+%s%N' | sha256sum | head -c7).png" | FILENAME="$(date '+%s%N' | sha256sum | head -c7).png" | ||||||
| DIRECTORY="$HOME/pictures/screenshots" | DIRECTORY="$HOME/pictures/screenshots" | ||||||
|  |  | ||||||
| SCP_HOST=frebib@Poseidon.nerdhouse.io | 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 | 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() { | send_notification() { | ||||||
|     title="$1" |     title="$1" | ||||||
|     body="$2" |     body="$2" | ||||||
| @@ -29,18 +51,47 @@ send_notification() { | |||||||
|  |  | ||||||
| # Make the screenshot directory | # Make the screenshot directory | ||||||
| mkdir -p "$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 | # Take the screenshot and save it | ||||||
| out_path="$DIRECTORY/$FILENAME" | if ! error=$(maim -m 10 -u -f png ${args[@]} "$out_path" 2>&1); then | ||||||
| if ! error=$(eval ${SCROT_CMD//\%/$out_path} 2>&1); then |  | ||||||
|     send_notification "Screenshot error" "Failed to take a screenshot:<br><br>$error" >/dev/null |     send_notification "Screenshot error" "Failed to take a screenshot:<br><br>$error" >/dev/null | ||||||
|     exit 1 |     exit 1 | ||||||
| fi | 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 | if [ "$clip" = '1' ]; then | ||||||
| xclip -i "$out_path" -selection clipboard -t image/png |     # 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 | # 'Upload' the screenshot | ||||||
| if ! error=$(scp -C $out_path $SCP_HOST:$SCP_PATH 2>&1); then | if ! error=$(scp -C $out_path $SCP_HOST:$SCP_PATH 2>&1); then | ||||||
|   | |||||||
							
								
								
									
										27
									
								
								scripts/systemd-run-i3
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										27
									
								
								scripts/systemd-run-i3
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,27 @@ | |||||||
|  | #!/bin/bash -e | ||||||
|  |  | ||||||
|  | slice=app | ||||||
|  | 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)) | ||||||
|  |  | ||||||
|  | exec systemd-run \ | ||||||
|  |     --user \ | ||||||
|  |     --collect \ | ||||||
|  |     --slice="$slice" \ | ||||||
|  |     --unit="$slice-$1-$rand" \ | ||||||
|  |     --property=BindsTo=graphical-session.target \ | ||||||
|  |     --property=ExitType=cgroup \ | ||||||
|  |     "${args[@]}" -- "$@" | ||||||
							
								
								
									
										13
									
								
								ssh/askpass
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										13
									
								
								ssh/askpass
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,13 @@ | |||||||
|  | #!/bin/sh -e | ||||||
|  |  | ||||||
|  | if [ -z "$SSH_HOST" ]; then | ||||||
|  |     >&2 echo 'Missing SSH_HOST variable' | ||||||
|  |     exit 1 | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | case "$SSH_HOST" in | ||||||
|  |     *) | ||||||
|  |         echo 'Unknown SSH host' | ||||||
|  |         exit 1 | ||||||
|  |         ;; | ||||||
|  | esac | ||||||
| @@ -1,12 +1,13 @@ | |||||||
| [Unit] | [Unit] | ||||||
| Description=Bluetooth Applet | Description=Bluetooth Applet | ||||||
| After=graphical-session.target bluetooth.service | After=graphical-session.target | ||||||
| Requires=graphical-session.target bluetooth.service | Requires=graphical-session.target | ||||||
|  | ConditionPathExists=/sys/class/bluetooth | ||||||
| 
 | 
 | ||||||
| [Service] | [Service] | ||||||
| Type=simple |  | ||||||
| ExecStart=/usr/bin/blueman-applet | ExecStart=/usr/bin/blueman-applet | ||||||
| Restart=on-failure | Restart=on-failure | ||||||
|  | Slice=background.slice | ||||||
| 
 | 
 | ||||||
| [Install] | [Install] | ||||||
| WantedBy=desktop.target | WantedBy=desktop.target | ||||||
							
								
								
									
										1
									
								
								systemd/user/default.target.wants/pipewire.service
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								systemd/user/default.target.wants/pipewire.service
									
									
									
									
									
										Symbolic link
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | /usr/lib/systemd/user/pipewire.service | ||||||
							
								
								
									
										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 | Description=i3 - an improved dynamic, tiling window manager | ||||||
| Requires=xorg.target | Requires=xorg.target | ||||||
| Before=graphical-session.target | Before=graphical-session.target | ||||||
| After=profile.service xprofile.service xorg.target | After=xprofile.service xorg.target | ||||||
| 
 | 
 | ||||||
| [Service] | [Service] | ||||||
| ExecStart=/usr/bin/i3 | ExecStart=/usr/bin/i3 | ||||||
| ExecReload=/bin/sh -c 'i3-msg restart; systemctl is-active --user -q picom && systemctl --user restart picom' | ExecReload=/usr/bin/i3-msg restart | ||||||
| ExecStop=/bin/systemctl --user stop desktop.target |  | ||||||
| Restart=always | Restart=always | ||||||
|  | Slice=session.slice | ||||||
| 
 | 
 | ||||||
| [Install] | [Install] | ||||||
| WantedBy=graphical-session.target | 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 | After=graphical-session.target | ||||||
| 
 | 
 | ||||||
| [Service] | [Service] | ||||||
| Type=simple |  | ||||||
| ExecStart=/usr/bin/nextcloud --background | ExecStart=/usr/bin/nextcloud --background | ||||||
| ExecReload=/bin/kill -HUP $MAINPID | ExecReload=/bin/kill -HUP $MAINPID | ||||||
| KillMode=process |  | ||||||
| Restart=on-failure | Restart=on-failure | ||||||
|  | Slice=app.slice | ||||||
| 
 | 
 | ||||||
| [Install] | [Install] | ||||||
| WantedBy=desktop.target | WantedBy=desktop.target | ||||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user