From b2935de1eb91a54cc2a00a5bad6e1d1b705889e6 Mon Sep 17 00:00:00 2001 From: Daan Vanoverloop Date: Sat, 20 Jul 2019 12:14:25 +0200 Subject: [PATCH] .config dir --- .config/dmenu_script/config | 5 + .config/dunst/dunstrc | 47 ++ .config/dunst/dunstrc.template | 47 ++ .config/i3/.config.un~ | Bin 0 -> 40626 bytes .config/i3/.exit.sh.un~ | Bin 0 -> 9678 bytes .config/i3/.factorio.sh.un~ | Bin 0 -> 26219 bytes .config/i3/.mmc.sh.un~ | Bin 0 -> 18794 bytes .config/i3/.music.sh.un~ | Bin 0 -> 2022 bytes .config/i3/auto-xrandr | 51 ++ .config/i3/autorandr | 290 +++++++++++ .config/i3/config | 270 ++++++++++ .config/i3/config~ | 214 ++++++++ .config/i3/dmenufm | 271 ++++++++++ .config/i3/exit.sh | 11 + .config/i3/factorio.sh | 10 + .config/i3/factorio.sh! | 9 + .config/i3/mmc.sh | 9 + .config/i3/monitor-rotate.sh | 141 ++++++ .config/i3/music.sh | 2 + .config/i3/oneko.sh | 5 + .config/i3/recent_files | 14 + .config/i3/rofifm.sh | 65 +++ .config/i3/rotate.sh | 61 +++ .config/i3/rotate_normal.sh | 6 + .config/i3/run.sh | 7 + .config/polybar/.config.un~ | Bin 0 -> 32101 bytes .config/polybar/config | 610 +++++++++++++++++++++++ .config/polybar/config.old | 298 +++++++++++ .config/polybar/config~ | 97 ++++ .config/polybar/i3wmthemer_bar_launch.sh | 7 + .config/polybar/launch.sh | 17 + .config/termite/.config.un~ | Bin 0 -> 55414 bytes .config/termite/config | 66 +++ .config/termite/config.old | 90 ++++ .config/tilda/config_0 | 106 ++++ .config/tilda/config_1 | 106 ++++ .config/tilda/config_2 | 106 ++++ .config/tilda/config_3 | 106 ++++ .config/tilda/config_4 | 106 ++++ .config/tilda/config_5 | 106 ++++ .config/tilda/config_6 | 106 ++++ .config/tilda/config_7 | 106 ++++ .config/tilda/config_8 | 106 ++++ .config/tilda/config_9 | 106 ++++ .config/tilda/launch.sh | 8 + 45 files changed, 3788 insertions(+) create mode 100644 .config/dmenu_script/config create mode 100644 .config/dunst/dunstrc create mode 100644 .config/dunst/dunstrc.template create mode 100644 .config/i3/.config.un~ create mode 100755 .config/i3/.exit.sh.un~ create mode 100755 .config/i3/.factorio.sh.un~ create mode 100755 .config/i3/.mmc.sh.un~ create mode 100755 .config/i3/.music.sh.un~ create mode 100755 .config/i3/auto-xrandr create mode 100755 .config/i3/autorandr create mode 100644 .config/i3/config create mode 100644 .config/i3/config~ create mode 100755 .config/i3/dmenufm create mode 100755 .config/i3/exit.sh create mode 100755 .config/i3/factorio.sh create mode 100644 .config/i3/factorio.sh! create mode 100755 .config/i3/mmc.sh create mode 100755 .config/i3/monitor-rotate.sh create mode 100755 .config/i3/music.sh create mode 100755 .config/i3/oneko.sh create mode 100644 .config/i3/recent_files create mode 100755 .config/i3/rofifm.sh create mode 100755 .config/i3/rotate.sh create mode 100755 .config/i3/rotate_normal.sh create mode 100755 .config/i3/run.sh create mode 100644 .config/polybar/.config.un~ create mode 100644 .config/polybar/config create mode 100644 .config/polybar/config.old create mode 100644 .config/polybar/config~ create mode 100644 .config/polybar/i3wmthemer_bar_launch.sh create mode 100755 .config/polybar/launch.sh create mode 100644 .config/termite/.config.un~ create mode 100644 .config/termite/config create mode 100644 .config/termite/config.old create mode 100644 .config/tilda/config_0 create mode 100644 .config/tilda/config_1 create mode 100644 .config/tilda/config_2 create mode 100644 .config/tilda/config_3 create mode 100644 .config/tilda/config_4 create mode 100644 .config/tilda/config_5 create mode 100644 .config/tilda/config_6 create mode 100644 .config/tilda/config_7 create mode 100644 .config/tilda/config_8 create mode 100644 .config/tilda/config_9 create mode 100755 .config/tilda/launch.sh diff --git a/.config/dmenu_script/config b/.config/dmenu_script/config new file mode 100644 index 0000000..6fad7e6 --- /dev/null +++ b/.config/dmenu_script/config @@ -0,0 +1,5 @@ +scripts_root=$HOME/Scripts/dmenu_script/ + +run () { + "$1" | rofi -dmenu -i +} diff --git a/.config/dunst/dunstrc b/.config/dunst/dunstrc new file mode 100644 index 0000000..48d7e66 --- /dev/null +++ b/.config/dunst/dunstrc @@ -0,0 +1,47 @@ +[global] + font = "Google Sans 10" + markup = yes + format = "%s\n%b" + sort = yes + indicate_hidden = yes + alignment = center + bounce_freq = 0 + show_age_threshold = 60 + word_wrap = yes + ignore_newline = no + geometry = "300x50-12+60" + transparency = 20 + idle_threshold = 120 + monitor = 0 + follow = mouse + sticky_history = yes + line_height = 0 + separator_height = 1 + padding = 8 + horizontal_padding = 8 + separator_color = auto + startup_notification = false + frame_width = 1 + frame_color = "#383838" + + +[shortcuts] + close = ctrl+space + close_all = ctrl+shift+space + history = ctrl+grave + context = ctrl+shift+period + +[urgency_low] + background = "#181818" + foreground = "#FFFFFF" + timeout = 5 + +[urgency_normal] + background = "#181818" + foreground = "#FFFFFF" + timeout = 20 + +[urgency_critical] + background = "#181818" + foreground = "#FFFFFF" + timeout = 0 diff --git a/.config/dunst/dunstrc.template b/.config/dunst/dunstrc.template new file mode 100644 index 0000000..9732450 --- /dev/null +++ b/.config/dunst/dunstrc.template @@ -0,0 +1,47 @@ +[global] + font = "Open Sans 10" + markup = yes + format = "%s\n%b" + sort = yes + indicate_hidden = yes + alignment = center + bounce_freq = 0 + show_age_threshold = 60 + word_wrap = yes + ignore_newline = no + geometry = "300x50-12+60" + transparency = 20 + idle_threshold = 120 + monitor = 0 + follow = mouse + sticky_history = yes + line_height = 0 + separator_height = 1 + padding = 8 + horizontal_padding = 8 + separator_color = auto + startup_notification = false + frame_width = 1 + frame_color = "#383838" + + +[shortcuts] + close = ctrl+space + close_all = ctrl+shift+space + history = ctrl+grave + context = ctrl+shift+period + +[urgency_low] + background = ${bg-color} + foreground = ${fg-color} + timeout = 5 + +[urgency_normal] + background = ${bg-color} + foreground = ${fg-color} + timeout = 20 + +[urgency_critical] + background = ${bg-color} + foreground = ${fg-color} + timeout = 0 diff --git a/.config/i3/.config.un~ b/.config/i3/.config.un~ new file mode 100644 index 0000000000000000000000000000000000000000..a1f1c7ae44de527c731e341e84195bf606021531 GIT binary patch literal 40626 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 E3*wuI8UO$Q literal 0 HcmV?d00001 diff --git a/.config/i3/.exit.sh.un~ b/.config/i3/.exit.sh.un~ new file mode 100755 index 0000000000000000000000000000000000000000..ce3f17064e3cd026c90734a9f6d6173c975f3300 GIT binary patch literal 9678 zcmeI2&r6g+7{_1DA8n>(Wu*OjSws>NiSQ%^ksa#Lp~zqnqTE$C^?k!#6QKkT9XiyX zptlH#f}o%doq~`qU5X$`Au1BO1l@v~&%871v%9t!_TJ`!aprw?-f{eXeCFr&XUFF+ z1byLWulnV?nT9V*kAB@6nR)j1LC@2!;P=BxL{>XkZ`wyIR6Qj1C$xlLZ`$G0;z zd|K~adc&v6s-sN*^Kx!w;64NJ%NmkNj4NrPK0}fC%q9;HkHRE&OP+ej5m&BAN7HFdG#bl^QHQ7*Nx{Mn)EdaByAOxMgbHz*!qhGUlJOEGB!Y9lJQ&am zS9?&94Th7d!YW<+8g#1@2|Wbc;Z_HpAr4^<4)lgn<?f z9jr*ax7SdFTBAzVAPPmd+q8cCBUX zrqbD~qpSSjwN3O9mX4ngB;KOp_q-Cn<}!X}%!Jc+(Ki@6ZbFcFi;COpO5BoV+{$h~ z3`oG~iOzHwsDSL|*)3X8Ax={u-&X=zbep9YtwmQ_f1?UTy$CgZhcGK6eY@qT8dYM; z6x9!sDgh<;6lzJsy=2J+rHM#b?G#;uBMq?BaS@3Kv6^C6bZceLNA0HKNZHU@IU);7 zRXFYvU57DT^$n(rNuf+EMa6YR#$+ki!;=E)QJeOnu^D{wT4*zOM7O&F8l$iyuxGv literal 0 HcmV?d00001 diff --git a/.config/i3/.factorio.sh.un~ b/.config/i3/.factorio.sh.un~ new file mode 100755 index 0000000000000000000000000000000000000000..a50847ff7ab5e740ccd656e02e1a1f50a67b9051 GIT binary patch literal 26219 zcmeI4O>7%Q6vy3=ey0ueo6C#{*grACy%e4?@PSbIsM1|uipMM z5{ay%GU$=Sy8EKBdsq7hUb)(TePl6qZ}jrD>;0Dph8F!h$<*!MR4zLe?eXIA+1zA& zGBcM>&FAJ`_hR}my3SfEtyES}IY|YAtuB$o?+-4t;@i>4t%vxQq$Sw!Uwnna@*hd$ z8U4v^o3DXH;rlNb$BM{bJ4!Ck7-+lbFuE3ym#O4oynz=Gk$(LIhXboYCn_B&nL5~bl&&g@aA$; z881FLo6atH@l21p(8hFXI#)CZwRcx$%9~H;=e>B=i-yB)^hIxeI-R9sc3>1Y85Dij zGL=zg1v5ej&;k<+72raGR!f~*Xi{raZ*eJUR^PB$tzT+Zd_vhFR|XGU5)i|=lLH5p z*c6Hf|1h|=032Xpt{VmtiZDzY7@;| zua03Gao#30Q%|)Tew&zId%#b-j`p^}(izcUF10|Do%y^!oSda8(1j$j2$`IJDL08M zgK1KvToq{BMK6FoY@kCeG*eGC)TGj?DX?y1)LYD`y{Azxo!csm!1gSa4XTwuiYUx; zQioA#rQS_77!NSUZ2?9-UC|zUrkD!UK&#CEDZb$OoM=8+hplpag=VZ&Y5p_Jd?RKz z-KVJr_oy*UhsydY*m0^zH5FXJatl5?me7JtA(kV|a)+5^*V8Pcm0<$jX3<=L1xy}O z9ZaDaD^-H|StZBZZ-N;u>zbg)Zm1dyvW}(|a;A$C%?FiembfN+W_g%^#|dNguK*S> zd7pDlr4?%%f*GXgcbemDiEGBXF=&>j33}T^V?hx#F`Bwj6H2fuMDyE9u4$y%Q#R0o z-gePokOfUQ2NFuLS0$PcE73Fs+VU^~Pd?}dST}0gqgQfeg83c8+-(lDCYXz5JrnSr z7ykiZU7QsPv0F_Pe(I{^nWb@-ep*C7D=JG9^md9CgRG0QLLqjmM6-u!b~M8^0q+IT zV1U)>dp89Vim_8AmhBl ztOB%PQwZ~$jCpT>xikp-`lr_CqO}BKQ0x%x24PUe<55QyO0X(K^?ezLOR4tOL{*Qj zfar;K12CYT#6IV$(1J}Ns2?)aeP&lZRfOtK=VsIXWHOmue)6R0f@Y^^zejb@btxpF z6nj;o8@%PP-%R&(eRO?|*Q2IKMe~6gcwN3%D8*hiQTVyNQbaye#2dReJ~(`9Xi|AMo5O+7H%_uTY5HD)HUQd=Hx4_qgC&D_Wq8iRJ?{?u2k>>&9Iu!Kx72;K5rw zKwEkz)RgxU)!h)#9umC)cA&=l5DqnzU{wfp@Ko-!8TAF+^!ECVzJ#h^11@fJ52!u? zyz^_N4Eviz;g>NE*=NnLo9Wj;+bg;R><+b1h}|lozAa~8r6GJ2ew}_Tooe{~a^>3K z>x({tJ$SqPhfs>WD)G)%;(ZakQFV8)(z)ELR@i%8 z%JV_{xac1&0rbbQ&(Vh#YzomYRGQgMG?l(sXiC5M5E=r&pAcPzQNR$A*yjuZTCgc( z2*Iy3hs;Aj%9bI7D~^Sh0P;NVQ~iZiz!E0#*;xX#U{ex>UxRmkhs~BSY26YQLsO6e z0eyy9z!dn#(3t{MVpC}4z9AkRM$M*>wr>i4XbVX19;C953i5wQ^THNTTv&h-tO_Lr zF0n0~GTXucY=N@@`q5nNt4XRkp-$lI{(w3tyO&nAMyzg$^c5z3vKrD0SNrQ&H&l^^ zPj{)#fI55|r17NP`81SZRfzOm6{Q-EuMlg4*6rCmNx@u&|I@ z*8SV4d%PSUZ82@%Km`VHnu;?3D4`K)rIWRGQP)pS@9H|ebG@70e{)~}Q2jbp%qDS@ zOhQfcbZWM`CBUkAjb%uM1z3R;^Z`w~iJdMiKno2>HCC~Qtzwhe1~}OtO!h6+8F|A!m7}+#&_5dRtAQkaljW>P^orVN4`xLEd^4CQ7FW2 ol`!TRW2+hCS?$GoY5H=nKP+9Jf!E&EkAl$)m<6vV|Jz6Z18GbhmH+?% literal 0 HcmV?d00001 diff --git a/.config/i3/.mmc.sh.un~ b/.config/i3/.mmc.sh.un~ new file mode 100755 index 0000000000000000000000000000000000000000..b24b1de5110f69d11eb531596c4b1b9909036865 GIT binary patch literal 18794 zcmeI)O>7%g5C`y$lQeakq-m43^eb!@Lz7C01ri8EgH!&dD3d1H}+;aKh4{> z>z7_`Zhi1f`-#pkQR%D8AO85$NB39zf4}qI&DQ6CEq?a?cQ3#3>C%<+$G-mUp>H0D zqNq$8+WvGGjnV#`>tpY?sCMIrM<(#ox#;iOUYD3QWF>hb%o4$rI~G0{%ts)` zlSdaNG)>SYLw`3)@C04W{KFD=EerkNbwtDoOY;*6(e0Aom7)rqBfoSC60(75UW5ih zV-pF{?T%tQL~K0u57nT=(|i{l1WiqsN}PR^+BB&pNk|5wqv9OkGcu77-7b-B7LAWn zL?#|@LFbr=2y)QkCnk1pEi$9hC9SO@twm@xdfRkKi<3&D+wFAe%hc_DFOi5qJ1*h_ zs3D4k=ynOQQ-pX%BHqdnW^(lrJk3xSPMn<#uN4^{k%mF>0qTS}6A%H%qpFRdA~Pyo zg1cS>hdc7U5!Bz=1%ePeDT0Hh35ta1c1iH{BEewz%$_qR&ETmD%ub0o;R!>YiCPtk z%&2t9@U0@la2}IY;VU5`&`yi^0BVRLA-dgBi1~#$UUpMW)CA#1*fd6aVbiCU1>&oC7i+=~q%~>Qww@c1dcAm+1&b~-Wox|ntf)Q*> zBGj1rSTe|8{MzJIWJaY+jOo4qY|4mhonIUcf}`bvmDDl4A)(DTIQkFU;v}CHwLRIr zBT&8Ay90hoLIk7y4xgAxhR?GjY**9w5b_0V4v{W>JDR75Bs0~5pASST{1 z(j}%p2kS{P9geA0md|I;VPaQaaJpB71Vgy-QVDYtnNjJI+doBa^Uf{V8Ipt4eIh6* zLXQ7n!Q@0{RJ!!P0ZbOjEey-O>WdCkXGK(C1RXY;d>{#`jp%}PwS(8Ry`u9se3=}i zmPK$-gc>hVvZ522QR$N0%xx82WoL*ER4XDXFoKR(OBmS z8}%30>Yesxvf{^1u$>bTf)tE++-74ZlAzj%ajl3k0pnWrHXvm!B4nTfGN#QSkp$I7 WkPkED+}_g@dB*_95%u`%C;tHuov081 literal 0 HcmV?d00001 diff --git a/.config/i3/.music.sh.un~ b/.config/i3/.music.sh.un~ new file mode 100755 index 0000000000000000000000000000000000000000..fb762761bf104b271764aae803249584ef53cadd GIT binary patch literal 2022 zcmWH`%$*;a=aT=FfhlL+0%7&Lr&cT%)w^(hzS^#dkAm{QZ3q&-ulliSTM+vs1_lNu zAl6GPN=?o$N>R{FQ%FfHQP6c!$SAimP^eKzEXYZ$L=rA2%_&ZW>JkIej6lo+#2^5o zVVEK6z1RX4kSqs7`~{FK5P+E+|KM;V80&zwG4MHI5-698YbTBb|l>nL# z3Vs*>u}Mq;rj6i81?gml83Uw25jq;FNC84yCNNSzfg_cLlt?wgm93$X3W`8jmIk>W z6v3mB3JM9jfT;JPYT!s^BPCLCmetTmMb4!lZ-63rG*amjp&(0uwc&hdZAe1#izlZ( GUj+c*9fxrM literal 0 HcmV?d00001 diff --git a/.config/i3/auto-xrandr b/.config/i3/auto-xrandr new file mode 100755 index 0000000..6ffb2a1 --- /dev/null +++ b/.config/i3/auto-xrandr @@ -0,0 +1,51 @@ +#!/bin/bash + +# preferred order of monitors (highest to lowest priority) +order=(DP HDMI) +# preferred position of monitors (relative to previsous monitor in $order) +position=${1:-above} +# maximum number of monitors to use (only names from $order will be used) +max=10 + +if [[ "$1" = -h || "$1" = --help ]]; then + echo "Usage: $(basename "$0") [position]" >&2 + exit +fi + +connected=($(xrandr | grep ' connected ' | cut -f 1 -d ' ')) +options=() + +for choice in ${order[@]}; do + # iterate over the indices of the connected monitors + for monitor in ${!connected[@]}; do + if [[ ${connected[$monitor]} =~ $choice ]]; then + if [[ ${#options[@]} -eq 0 ]]; then + # set first match from $order as primary monitor + options=(--output ${connected[$monitor]} --auto --primary) + else + # put monitor in $position of the $last one + options=(${options[@]} --output ${connected[$monitor]} --auto --$position $last) + fi + # remember this monitor to position the next one + last=${connected[$monitor]} + # delete this monitor from the list of connected monitors + unset connected[$monitor] + connected=(${connected[@]}) + # count down the number of monitors that is desired at most + ((max--)) + if [[ $max -eq 0 ]]; then + break 2 + else + break + fi + fi + done +done + +# let xrandr turn all disconnected monitors off (just in case) and also all +# connected monitors that where above the maximum number of desired monitors +for disconnected in $(xrandr | grep disconnected | cut -f 1 -d ' ') ${connected[@]}; do + options=(${options[@]} --output $disconnected --off) +done + +xrandr --verbose ${options[@]} diff --git a/.config/i3/autorandr b/.config/i3/autorandr new file mode 100755 index 0000000..c2c3384 --- /dev/null +++ b/.config/i3/autorandr @@ -0,0 +1,290 @@ +#!/bin/sh +# +# Automatically select a display configuration based on connected devices +# +# Stefan Tomanek +# +# How to use: +# +# Save your current display configuration and setup with: +# $ autorandr --save mobile +# +# Connect an additional display, configure your setup and save it: +# $ autorandr --save docked +# +# Now autorandr can detect which hardware setup is active: +# $ autorandr +# mobile +# docked (detected) +# +# To automatically reload your setup, just append --change to the command line +# +# To manually load a profile, you can use the --load option. +# +# autorandr tries to avoid reloading an identical configuration. To force the +# (re)configuration, apply --force. +# +# To prevent a profile from being loaded, place a script call "block" in its +# directory. The script is evaluated before the screen setup is inspected, and +# in case of it returning a value of 0 the profile is skipped. This can be used +# to query the status of a docking station you are about to leave. +# +# If no suitable profile can be identified, the current configuration is kept. +# To change this behaviour and switch to a fallback configuration, specify +# --default +# +# Another script called "postswitch "can be placed in the directory +# ~/.autorandr as well as in all profile directories: The scripts are executed +# after a mode switch has taken place and can notify window managers or other +# applications about it. +# +# +# While the script uses xrandr by default, calling it by the name "autodisper" +# or "auto-disper" forces it to use the "disper" utility, which is useful for +# controlling nvidia chipsets. The formats for fingerprinting the current setup +# and saving/loading the current configuration are adjusted accordingly. + +XRANDR=/usr/bin/xrandr +DISPER=/usr/bin/disper +XDPYINFO=/usr/bin/xdpyinfo +PROFILES=~/.autorandr/ +CONFIG=~/.autorandr.conf + +CHANGE_PROFILE=0 +FORCE_LOAD=0 +DEFAULT_PROFILE="" +SAVE_PROFILE="" + +FP_METHODS="setup_fp_xrandr_edid setup_fp_sysfs_edid" +CURRENT_CFG_METHOD="current_cfg_xrandr" +LOAD_METHOD="load_cfg_xrandr" + +SCRIPTNAME="$(basename $0)" +# when called as autodisper/auto-disper, we assume different defaults +if [ "$SCRIPTNAME" = "auto-disper" ] || [ "$SCRIPTNAME" = "autodisper" ]; then + echo "Assuming disper defaults..." >&2 + FP_METHODS="setup_fp_disper" + CURRENT_CFG_METHOD="current_cfg_disper" + LOAD_METHOD="load_cfg_disper" +fi + +if [ -f $CONFIG ]; then + echo "Loading configuration from '$CONFIG'" >&2 + . $CONFIG +fi + +setup_fp_xrandr_edid() { + $XRANDR -q --verbose | awk ' + /^[^ ]+ (dis)?connected / { DEV=$1; } + $1 ~ /^[a-f0-9]+$/ { ID[DEV] = ID[DEV] $1 } + END { for (X in ID) { print X " " ID[X]; } }' +} + +setup_fp_sysfs_edid() { + # xrandr triggers the reloading of EDID data + $XRANDR -q > /dev/null + # hash the EDIDs of all _connected_ devices + for P in /sys/class/drm/card*-*/; do + # nothing found + [ ! -d "$P" ] && continue + if grep -q "^connected$" < "${P}status"; then + echo -n "$(basename "$P") " + md5sum ${P}edid | awk '{print $1}' + fi + done +} + +setup_fp_disper() { + $DISPER -l | grep '^display ' +} + +setup_fp() { + local FP=""; + for M in $FP_METHODS; do + FP="$($M)" + if [ -n "$FP" ]; then + break + fi + done + if [ -z "$FP" ]; then + echo "Unable to fingerprint display configuration" >&2 + return + fi + echo "$FP" +} + +current_cfg_xrandr() { + local PRIMARY_SETUP=""; + if [ -x "$XDPYINFO" ]; then + PRIMARY_SETUP="$($XDPYINFO -ext XINERAMA | awk '/^ head #0:/ {printf $3 $5}')" + fi + $XRANDR -q | awk -v primary_setup="${PRIMARY_SETUP}" ' + # display is connected and has a mode + /^[^ ]+ connected [^(]/ { + split($3, A, "+"); + print "output "$1; + print "mode "A[1]; + print "pos "A[2]"x"A[3]; + if ($4 !~ /^\(/) { + print "rotate "$4; + } + if (A[1] A[2] "," A[3] == primary_setup) + print "primary"; + next; + } + # disconnected or disabled displays + /^[^ ]+ (dis)?connected / || + /^[^ ]+ unknown connection / { + print "output "$1; + print "off"; + next; + }' +} + +current_cfg_disper() { + $DISPER -p +} + +current_cfg() { + $CURRENT_CFG_METHOD; +} + +blocked() { + local PROFILE="$1" + [ ! -x "$PROFILES/$PROFILE/block" ] && return 1 + + "$PROFILES/$PROFILE/block" "$PROFILE" +} + +config_equal() { + local PROFILE="$1" + if [ "$(cat "$PROFILES/$PROFILE/config")" = "$(current_cfg)" ]; then + echo "Config already loaded" + return 0 + else + return 1 + fi +} + +load_cfg_xrandr() { + sed 's!^!--!' "$1" | xargs $XRANDR +} + +load_cfg_disper() { + $DISPER -i < "$1" +} + +load() { + local PROFILE="$1" + local CONF="$PROFILES/$PROFILE/config" + if [ -e "$CONF" ] ; then + echo " -> loading profile $PROFILE" + $LOAD_METHOD "$CONF" + + [ -x "$PROFILES/$PROFILE/postswitch" ] && \ + "$PROFILES/$PROFILE/postswitch" "$PROFILE" + [ -x "$PROFILES/postswitch" ] && \ + "$PROFILES/postswitch" "$PROFILE" + fi +} + +help() { + cat < save your current setup to profile +-l, --load load profile +-d, --default make profile the default profile +--force force (re)loading of a profile +--fingerprint fingerprint your current hardware setup +--config dump your current xrandr setup + + To prevent a profile from being loaded, place a script call "block" in its + directory. The script is evaluated before the screen setup is inspected, and + in case of it returning a value of 0 the profile is skipped. This can be used + to query the status of a docking station you are about to leave. + + If no suitable profile can be identified, the current configuration is kept. + To change this behaviour and switch to a fallback configuration, specify + --default . + + Another script called "postswitch "can be placed in the directory + ~/.autorandr as well as in any profile directories: The scripts are executed + after a mode switch has taken place and can notify window managers. + + When called by the name "autodisper" or "auto-disper", the script uses "disper" + instead of "xrandr" to detect, configure and save the display configuration. + +EOH + exit +} +# process parameters +OPTS=$(getopt -n autorandr -o s:l:d:cfh --long change,default:,save:,load:,force,fingerprint,config,help -- "$@") +if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi +eval set -- "$OPTS" + +while true; do + case "$1" in + -c|--change) CHANGE_PROFILE=1; shift ;; + -d|--default) DEFAULT_PROFILE="$2"; shift 2 ;; + -s|--save) SAVE_PROFILE="$2"; shift 2 ;; + -l|--load) LOAD_PROFILE="$2"; shift 2 ;; + -h|--help) help ;; + --force) FORCE_LOAD=1; shift ;; + --fingerprint) setup_fp; exit 0;; + --config) current_cfg; exit 0;; + --) shift; break ;; + *) echo "Error: $1"; exit 1;; + esac +done + +CURRENT_SETUP="$(setup_fp)" + +if [ -n "$SAVE_PROFILE" ]; then + echo "Saving current configuration as profile '${SAVE_PROFILE}'" + mkdir -p "$PROFILES/$SAVE_PROFILE" + echo "$CURRENT_SETUP" > "$PROFILES/$SAVE_PROFILE/setup" + $CURRENT_CFG_METHOD > "$PROFILES/$SAVE_PROFILE/config" + exit 0 +fi + +if [ -n "$LOAD_PROFILE" ]; then + CHANGE_PROFILE=1 FORCE_LOAD=1 load "$LOAD_PROFILE" + exit $? +fi + +for SETUP_FILE in $PROFILES/*/setup; do + if ! [ -e $SETUP_FILE ]; then + break + fi + PROFILE="$(basename $(dirname "$SETUP_FILE"))" + echo -n "$PROFILE" + + if blocked "$PROFILE"; then + echo " (blocked)" + continue + fi + + FILE_SETUP="$(cat "$PROFILES/$PROFILE/setup")" + if [ "$CURRENT_SETUP" = "$FILE_SETUP" ]; then + echo " (detected)" + if [ "$CHANGE_PROFILE" -eq 1 ]; then + if [ "$FORCE_LOAD" -eq 1 ] || ! config_equal "$PROFILE"; then + load "$PROFILE" + fi + fi + # found the profile, exit with success + exit 0 + else + echo "" + fi +done + +# we did not find the profile, load default +if [ -n "$DEFAULT_PROFILE" ]; then + echo "No suitable profile detected, falling back to $DEFAULT_PROFILE" + load "$DEFAULT_PROFILE" +fi +exit 1 diff --git a/.config/i3/config b/.config/i3/config new file mode 100644 index 0000000..2eb9b0e --- /dev/null +++ b/.config/i3/config @@ -0,0 +1,270 @@ +# This file has been auto-generated by i3-config-wizard(1). +# It will not be overwritten, so edit it as you like. +# Should you change your keyboard layout some time, delete +# this file and re-run i3-config-wizard(1). +# + +# i3 config file (v4) +# +# Please see https://i3wm.org/docs/userguide.html for a complete reference! + +set $mod Mod4 + +set_from_resource $bright i3wm.color2 #ff0000 +#set_from_resource $bg i3wm.color7 #ff0000 +set_from_resource $light i3wm.color4 #ff0000 +set_from_resource $fg i3wm.color4 #ff0000 +set_from_resource $bg i3wm.color3 #ff0000 + +set $bg-color #000000 +set $inactive-bg-color #2f343f +set $text-color #FFFFFF +set $inactive-text-color #676E7D +set $urgent-bg-color #E53935 +set $bordercolor #c5cbd6 +set $bg-highlight #556177 + + +gaps inner 10 +gaps outer 7 +gaps top -5 + +smart_gaps on + +set $mode_gaps Toggle gaps: (1) on (2) off +bindsym $mod+g mode "$mode_gaps" +mode "$mode_gaps" { + bindsym 1 mode "default", gaps inner all set 10, gaps outer all set 4, gaps top all set -5 + bindsym 2 mode "default", gaps inner all set 0, gaps outer all set 0 + bindsym Return mode "default" + bindsym Escape mode "default" +} + + +# Brightness + +bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 5 +bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 5 +bindsym Ctrl+XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 1 +bindsym Ctrl+XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 1 + +# Auto startup + +exec_always --no-startup-id xfce4-power-manager +#exec --no-startup-id xrandr | grep -q HDMI1 && xrandr --output eDP1 --auto --output HDMI1 --auto --above eDP1 + +# ! Lock Screen +#exec_always --no-startup-id xss-lock -- i3lock -i /home/daan/Pictures/wallpapers/wallpaper.png & +bindsym $mod+shift+x exec --no-startup-id i3lock -i $backgroud & + +exec_always --no-startup-id libinput-gestures-setup start +#exec_always --no-startup-id export QT_QPA_PLATFORMTHEME="qt5ct" +exec_always --no-startup-id /usr/lib/kdeconnectd & +exec_always --no-startup-id indicator-kdeconnect +#exec_always --no-startup-id nm-applet --agent +exec_always --no-startup-id ~/.config/i3/auto-xrandr +# +exec_always --no-startup-id ~/.config/compton/launch.sh +exec_always --no-startup-id ~/.config/polybar/launch.sh +#exec_always --no-startup-id /home/daan/.screenlayout/HDMI.sh +exec_always --no-startup-id ~/setbg.sh & +#exec_always --no-startup-id hsetroot -solid "#ffffff" +exec_always --no-startup-id dunst & +#exec_always --no-startup-id ~/.config/i3/oneko.sh +exec_always --no-startup-id ~/.config/tilda/launch.sh & +exec_always --no-startup-id touchegg & + +#bindsym $mod+w exec --no-startup-id guake-toggle & + + +# Application + +bindsym $mod+Shift+e exec --no-startup-id ~/.config/i3/exit.sh + +bindsym $mod+Shift+m exec --no-startup-id dmenu_script minecraft.sh + +bindsym $mod+Shift+f exec --no-startup-id dmenu_script factorio.sh + +bindsym $mod+t exec --no-startup-id ~/.config/i3/run.sh + +bindsym $mod+Shift+g exec --no-startup-id dmenu_script lutris.sh + +#exec_always --no-startup-id ~/.config/i3/rotate.sh + +bindsym $mod+Shift+p exec --no-startup-id systemctl --user restart music +bindsym $mod+Ctrl+p exec --no-startup-id systemctl --user stop music + +bindsym $mod+Shift+s exec --no-startup-id emacs +bindsym $mod+Shift+n exec networkmanager_dmenu + +# Rotation + +bindsym $mod+Ctrl+Shift+Down exec --no-startup-id ~/.config/i3/rotate.sh normal +bindsym $mod+Ctrl+Shift+Up exec --no-startup-id ~/.config/i3/rotate.sh bottom-up +bindsym $mod+Ctrl+Shift+Right exec --no-startup-id ~/.config/i3/rotate.sh left-up +bindsym $mod+Ctrl+Shift+Left exec --no-startup-id ~/.config/i3/rotate.sh right-up + +# window border size +new_window pixel 0 +new_float pixel 0 + +# default font +font pango:Open Sans 10 + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# start a terminal +bindsym $mod+Return exec termite + +# kill focused window +bindsym $mod+Shift+q kill + +# start rofi +bindsym $mod+d exec rofi -show run --no-startup-id + +# workspaces + +workspace 1 output eDP1 +workspace 2 output HDMI1 +workspace 3 output HDMI1 + +# change focus +bindsym $mod+j focus left +bindsym $mod+k focus down +bindsym $mod+l focus up +bindsym $mod+m focus right + +# alternatively, you can use the cursor keys: +bindsym $mod+Left focus left +bindsym $mod+Down focus down +bindsym $mod+Up focus up +bindsym $mod+Right focus right + +# move focused window +bindsym $mod+Shift+j move left +bindsym $mod+Shift+k move down +bindsym $mod+Shift+i move up +bindsym $mod+Shift+l move right + +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right + +bindsym $mod+Control+Left workspace prev +bindsym $mod+Control+Right workspace next + +# split in horizontal orientation +bindsym $mod+h split h + +# split in vertical orientation +bindsym $mod+v split v + +# enter fullscreen mode for the focused container +bindsym $mod+f fullscreen toggle + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+q focus parent + +# focus the child container +#bindsym $mod+d focus child + +# switch to workspace +bindsym $mod+1 workspace 1 +bindsym $mod+2 workspace 2 +bindsym $mod+3 workspace 3 +bindsym $mod+4 workspace 4 +bindsym $mod+5 workspace 5 +bindsym $mod+6 workspace 6 +bindsym $mod+7 workspace 7 +bindsym $mod+8 workspace 8 +bindsym $mod+9 workspace 9 +bindsym $mod+0 workspace 10 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace 1 +bindsym $mod+Shift+2 move container to workspace 2 +bindsym $mod+Shift+3 move container to workspace 3 +bindsym $mod+Shift+4 move container to workspace 4 +bindsym $mod+Shift+5 move container to workspace 5 +bindsym $mod+Shift+6 move container to workspace 6 +bindsym $mod+Shift+7 move container to workspace 7 +bindsym $mod+Shift+8 move container to workspace 8 +bindsym $mod+Shift+9 move container to workspace 9 +bindsym $mod+Shift+0 move container to workspace 10 + +bindsym $mod+Shift+greater move workspace to output up +bindsym $mod+Shift+less move workspace to output down + +# reload the configuration file +bindsym $mod+Shift+c reload +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r exec ~/.config/i3/auto-xrandr && i3-msg restart +# exit i3 (logs you out of your X session) +#bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" + +# resize window (you can also use the mouse for that) +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym j resize shrink width 10 px or 10 ppt + bindsym k resize grow height 10 px or 10 ppt + bindsym l resize shrink height 10 px or 10 ppt + bindsym m resize grow width 10 px or 10 ppt + + # same bindings, but for the arrow keys + bindsym Left resize shrink width 10 px or 10 ppt + bindsym Down resize grow height 10 px or 10 ppt + bindsym Up resize shrink height 10 px or 10 ppt + bindsym Right resize grow width 10 px or 10 ppt + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + +bindsym $mod+r mode "resize" + +# Pulse Audio controls +bindsym XF86AudioRaiseVolume exec --no-startup-id sh -c "pactl set-sink-mute 0 false && pactl set-sink-volume 0 +5%" +bindsym XF86AudioLowerVolume exec --no-startup-id sh -c "pactl set-sink-mute 0 false && pactl set-sink-volume 0 -5%" +bindsym XF86AudioMute exec --no-startup-id sh -c "pactl set-sink-mute 0 toggle" + + +# Workspace assignment + +assign [class="^code-oss$"] 3 +for_window [class="^code-oss$"] focus + +assign [window_role="browser"] 2 +for_window [window_role="browser"] focus + +## Plasma Integration +# Try to kill the wallpaper set by Plasma (it takes up the entire workspace and hides everythiing) +exec --no-startup-id wmctrl -c Plasma +for_window [title="Desktop — Plasma"] kill; floating enable; border none + +## Avoid tiling popups, dropdown windows from plasma +# for the first time, manually resize them, i3 will remember the setting for floating windows +for_window [class="plasmashell"] floating enable; +for_window [class="Plasma"] floating enable; border none +for_window [title="plasma-desktop"] floating enable; border none +for_window [title="win7"] floating enable; border none +for_window [class="krunner"] floating enable; border none +for_window [class="Kmix"] floating enable; border none +for_window [class="Klipper"] floating enable; border none +for_window [class="Plasmoidviewer"] floating enable; border none + + + diff --git a/.config/i3/config~ b/.config/i3/config~ new file mode 100644 index 0000000..bca8cdb --- /dev/null +++ b/.config/i3/config~ @@ -0,0 +1,214 @@ +# This file has been auto-generated by i3-config-wizard(1). +# It will not be overwritten, so edit it as you like. +# Should you change your keyboard layout some time, delete +# this file and re-run i3-config-wizard(1). +# + +# i3 config file (v4) +# +# Please see https://i3wm.org/docs/userguide.html for a complete reference! + +set $mod Mod1 + +set_from_resource $bright i3wm.color2 #ff0000 +#set_from_resource $bg i3wm.color7 #ff0000 +set_from_resource $light i3wm.color4 #ff0000 +set_from_resource $fg i3wm.color4 #ff0000 +set_from_resource $bg i3wm.color3 #ff0000 + +set $bg-color #000000 +set $inactive-bg-color #2f343f +set $text-color #FFFFFF +set $inactive-text-color #676E7D +set $urgent-bg-color #E53935 +set $bordercolor #c5cbd6 +set $bg-highlight #556177 + +# window border background text indicator +client.focused $bg $bg-color $text-color $fg $fg +client.unfocused $light $inactive-bg-color $inactive-text-color $light $light +client.focused_inactive $light $inactive-bg-color $inactive-text-color $light $light +client.urgent $strong $urgent-bg-color $text-color $strong $strong + +# resize gaps +mode "borders" { + + # ijkl keys + bindsym i gaps inner all plus 5 + bindsym k gaps inner all minus 5 + bindsym l gaps outer all plus 5 + bindsym j gaps outer all minus 5 + + # custom profiles 1,2,3,4 + bindsym 1 gaps inner all set 0; gaps outer all set 0 + bindsym 2 gaps inner all set 5; gaps outer all set 0 + bindsym 3 gaps inner all set 5; gaps outer all set 5 + bindsym 4 gaps inner all set 10; gaps outer all set 0 + bindsym 5 gaps inner all set 10; gaps outer all set 5 + bindsym 6 gaps inner all set 30; gaps outer all set 15 + bindsym 7 gaps inner all set 60; gaps outer all set 30 + + # enter : back, escape : reset + bindsym Return mode "default" + bindsym Escape mode "default"; gaps inner all set 10; gaps outer all set 5 +} + +# window border size +new_window pixel 2 +new_float pixel 2 + +# default font +font pango:DejaVu Sans Mono 10 + +gaps inner 10 +gaps outer 10 + + +# Font for window titles. Will also be used by the bar unless a different font +# is used in the bar {} block below. +#font pango:monospace 8 + +# This font is widely installed, provides lots of unicode glyphs, right-to-left +# text rendering and scalability on retina/hidpi displays (thanks to pango). +#font pango:DejaVu Sans Mono 8 + +# Before i3 v4.8, we used to recommend this one as the default: +# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 +# The font above is very space-efficient, that is, it looks good, sharp and +# clear in small sizes. However, its unicode glyph coverage is limited, the old +# X core fonts rendering does not support right-to-left and this being a bitmap +# font, it doesn’t scale on retina/hidpi displays. + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +exec_always --no-startup-id ~/.config/compton/launch.sh +exec_always --no-startup-id ~/.config/polybar/launch.sh +exec_always --no-startup-id ~/.fehbg & + +# start a terminal +bindsym $mod+Return exec urxvt + +# kill focused window +bindsym $mod+Shift+a kill + +# start rofi (a program launcher) +bindsym $mod+d exec rofi -show run + +# There also is the (new) i3-dmenu-desktop which only displays applications +# shipping a .desktop file. It is a wrapper around dmenu, so you need that +# installed. +# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop + +# change focus +bindsym $mod+j focus left +bindsym $mod+k focus down +bindsym $mod+l focus up +bindsym $mod+m focus right + +# alternatively, you can use the cursor keys: +bindsym $mod+Left focus left +bindsym $mod+Down focus down +bindsym $mod+Up focus up +bindsym $mod+Right focus right + +# move focused window +bindsym $mod+Shift+j move left +bindsym $mod+Shift+k move down +bindsym $mod+Shift+i move up +bindsym $mod+Shift+l move right + +# alternatively, you can use the cursor keys: +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right + +# split in horizontal orientation +bindsym $mod+h split h + +# split in vertical orientation +bindsym $mod+v split v + +# enter fullscreen mode for the focused container +bindsym $mod+f fullscreen toggle + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+s layout stacking +bindsym $mod+z layout tabbed +bindsym $mod+e layout toggle split + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+q focus parent + +# focus the child container +#bindsym $mod+d focus child + +# switch to workspace +bindsym $mod+ampersand workspace 1 +bindsym $mod+eacute workspace 2 +bindsym $mod+quotedbl workspace 3 +bindsym $mod+apostrophe workspace 4 +bindsym $mod+parenleft workspace 5 +bindsym $mod+section workspace 6 +bindsym $mod+egrave workspace 7 +bindsym $mod+exclam workspace 8 +bindsym $mod+ccedilla workspace 9 +bindsym $mod+agrave workspace 10 + +# move focused container to workspace +bindsym $mod+Shift+ampersand move container to workspace 1 +bindsym $mod+Shift+eacute move container to workspace 2 +bindsym $mod+Shift+quotedbl move container to workspace 3 +bindsym $mod+Shift+apostrophe move container to workspace 4 +bindsym $mod+Shift+5 move container to workspace 5 +bindsym $mod+Shift+section move container to workspace 6 +bindsym $mod+Shift+egrave move container to workspace 7 +bindsym $mod+Shift+exclam move container to workspace 8 +bindsym $mod+Shift+ccedilla move container to workspace 9 +bindsym $mod+Shift+agrave move container to workspace 10 + +# reload the configuration file +bindsym $mod+Shift+c reload +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart +# exit i3 (logs you out of your X session) +bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" + +# resize window (you can also use the mouse for that) +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym j resize shrink width 10 px or 10 ppt + bindsym k resize grow height 10 px or 10 ppt + bindsym l resize shrink height 10 px or 10 ppt + bindsym m resize grow width 10 px or 10 ppt + + # same bindings, but for the arrow keys + bindsym Left resize shrink width 10 px or 10 ppt + bindsym Down resize grow height 10 px or 10 ppt + bindsym Up resize shrink height 10 px or 10 ppt + bindsym Right resize grow width 10 px or 10 ppt + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + +bindsym $mod+r mode "resize" +# resize borders +bindsym $mod+b mode "borders" + +# Pulse Audio controls +bindsym XF86AudioRaiseVolume exec --no-startup-id amixer -D pulse sset Master 5%+ +bindsym XF86AudioLowerVolume exec --no-startup-id amixer -D pulse sset Master 5%- diff --git a/.config/i3/dmenufm b/.config/i3/dmenufm new file mode 100755 index 0000000..40d6a02 --- /dev/null +++ b/.config/i3/dmenufm @@ -0,0 +1,271 @@ +#!/bin/bash + +about=" +### Dmen File Manager ############################################# +# Version 0.1.2 by Scott Garrett # +###################################################################" + +### Changelog ##################################################### +# 0.1.0 # * Initial version # +# 0.1.1 # + Option 'Open last used dir' # +# # + Options 'Always open dirs' and 'Always open files' # +# 0.1.2 # + Config moved to $XDG_CONFIG_HOME # +# # + Options for dmenu styling # +# # + Option to change executor # +# # + Option to open file manager in current directory # +# # + Plugins support # +# see repo (github.com/hangtwenty/dmenfm) for changes since 0.1.2 # +################################################################### + +function defaults { + show_hidden=0 + show_backup=0 + always_open_files=0 + always_open_dirs=0 + open_last=1 + dmenu_caseinsens=1 + dmenu_onbottom=1 + dmenu_bg='#000000' + dmenu_fg='#9999CC' + dmenu_sbg='#000066' + dmenu_sfg='#FFFFFF' + executor='xdg-open' + editor='vim' + filemanager='dolphin' +} + +function saveconfig { + echo "show_hidden=$show_hidden +show_backup=$show_backup +always_open_dirs=$always_open_dirs +always_open_files=$always_open_files +open_last=$open_last +dmenu_caseinsens=$dmenu_caseinsens +dmenu_onbottom=$dmenu_onbottom +dmenu_bg='$dmenu_bg' +dmenu_fg='$dmenu_fg' +dmenu_sbg='$dmenu_sbg' +dmenu_sfg='$dmenu_sfg' +editor=\"$editor\" +executor='xdg' +filemanager=\"$filemanager\" +last_dir=\"$(pwd)\" +" > "$config" +} + +function setmenu { + menu="$menu $([ "$dmenu_caseinsens" == '1' ] && echo '-i') $([ "$dmenu_onbottom" == '1' ] && echo '-b') -nb $dmenu_bg -nf $dmenu_fg -sb $dmenu_sbg -sf $dmenu_sfg" +} + +if [ -z "$XDG_CONFIG_HOME" ]; then + xdg_config_home="$HOME/.config" +else + xdg_config_home=$XDG_CONFIG_HOME +fi + +file=1 +config_file="preferences" +config_dir="$xdg_config_home/dmenfm" +config="$config_dir/$config_file" +plugins_dir="$config_dir/plugins" +menu='rofi -dmenu' + +[ ! -d "$config_dir" ] && mkdir "$config_dir" +[ ! -d "$plugins_dir" ] && mkdir "$plugins_dir" +[ ! -d "$plugins_dir/browser" ] && mkdir "$plugins_dir/browser" +[ ! -d "$plugins_dir/operations" ] && mkdir "$plugins_dir/operations" +[ ! -d "$plugins_dir/preferences" ] && mkdir "$plugins_dir/preferences" +[ -e "$HOME/.dmanfs" ] && mv "$HOME/.dmanfs" "$config" + +defaults +touch "$config" +source "$config" +setmenu +[[ "$last_dir" && "$open_last" == 1 ]] && cd "$last_dir" + +while [ "$file" ]; do + file=$((echo -e '..\n.'; ls $([[ "$show_hidden" == '1' ]] && echo '-A') $([[ "$show_backup" == '1' ]] && echo '-B'); echo -e "[Preferences]\n[Open in $filemanager]"; ls -B "$plugins_dir/browser") | $menu -p "$(basename $(pwd))") + if [ "$file" ]; then + if [ -e "$file" ]; then + if $([ -d "$file" ] && [[ "$always_open_dirs" != '1' && "$file" != "." && "$file" != ".." ]]) || $([ -f "$file" ] && [[ "$always_open_files" != '1' ]]); then + owd=$(pwd) + opt=$((echo 'Open'; ([ -f "$file" ] && echo 'Edit'); echo -e 'Copy\nMove\nRename\nDelete'; ls -B "$plugins_dir/operations") | $menu -p "<$file>") + else + opt='Open' + fi + case "$opt" in + 'Open') + if [ -d "$file" ]; then + cd "$file" + else + if [ "$executor" ] && which "$executor" &> /dev/null; then + exec "$executor" "$owd/$file" & + unset file + elif which exo-open &> /dev/null; then + exo-open "$owd/$file" + unset file + elif gnome-open &> /dev/null; then + gnome-open "$owd/$file" + unset file + else + xmessage 'No executor found. Set one in [Preferences].' + fi + fi + ;; + 'Edit') + if [ "$editor" ] && which "$editor" &> /dev/null; then + exec "$editor" "$owd/$file" & + unset file + elif which geany &> /dev/null; then + exec geany "$owd/$file" + unset file + elif which gedit &> /dev/null; then + exec gedit "$owd/$file" + unset file + elif which kwrite &> /dev/null; then + exec kwrite "$owd/$file" + unset file + else + xmessage 'No editor found. Set one in [Preferences].' + fi + ;; + 'Copy') + cdir=1 + while [ "$cdir" ]; do + cdir=$((echo -e '..\n.'; ls $([[ "$show_hidden" == 1 ]] && echo "-A") $([[ "$show_backup" == 1 ]] && echo "-B") -d */) | $menu -p "Copy <$file> to:") + if [[ "$cdir" ]]; then + opt=$(echo -e 'Open\nCopy' | $menu -p "Copy <$file> to <$cdir>:") + if [[ "$opt" == "Open" ]]; then + cd "$cdir" + elif [[ "$opt" == "Copy" ]]; then + echo "$file" + [ -e "$cdir/$file" ] && opt=$(echo -e "No\nYes" | $menu -p "Replace existing <$file>?") + [[ "$opt" == "Copy" || "$opt" == "Yes" ]] && cp -af "$owd/$file" "$cdir/$file" + unset cdir + fi + fi + done + ;; + 'Move') + cdir=1 + while [ "$cdir" ]; do + cdir=$((echo -e '..\n.' && ls $([[ "$show_hidden" == 1 ]] && echo "-A") $([[ "$show_backup" == 1 ]] && echo "-B") -d */) | $menu -p "Move <$file> to:") + if [[ "$cdir" ]]; then + opt=$(echo -e 'Open\nMove' | $menu -p "Move <$file> to <$cdir>:") + if [[ "$opt" == "Open" ]]; then + cd "$cdir" + elif [[ "$opt" == "Move" ]]; then + echo "$file" + [ -e "$cdir/$file" ] && opt=$(echo -e "No\nYes" | $menu -p "Replace existing <$file>?") + [[ "$opt" == "Move" || "$opt" == "Yes" ]] && mv -f "$owd/$file" "$cdir/$file" + unset cdir + fi + fi + done + ;; + 'Rename') + opt=$(echo "" | $menu -p "Rename <$file> to:") + [ "$opt" ] && mv -f "$file" "$opt" + ;; + 'Delete') + opt=$(echo -e "No\nYes" | $menu -p "Really delete <$file>?") + [[ "$opt" == "Yes" ]] && rm -rf "$file" + ;; + *) [ "$opt" ] && [ -e "$plugins_dir/operations/$opt" ] && source "$plugins_dir/operations/$opt" ;; + esac + elif [[ "$file" =~ '[Open in' ]]; then + which "$filemanager" &> /dev/null && exec "$filemanager" . & + unset file + elif [[ "$file" == '[Preferences]' ]]; then + opt=1 + while [ "$opt" ]; do + opt=$((echo "[$show_hidden] Show hidden files +[$show_backup] Show backup files +[$always_open_dirs] Always open dirs +[$always_open_files] Always open files +[$open_last] Open last used dir +[$dmenu_caseinsens] Case-insensitive +[$dmenu_onbottom] Display on bottom +[$dmenu_bg] Background +[$dmenu_fg] Foreground +[$dmenu_sbg] Selected background +[$dmenu_sfg] Selected foreground +[$executor] Executor +[$editor] Editor +[$filemanager] File manager +Set defaults +About"; ls -B "$plugins_dir/preferences") | $menu -p "Preferences") + case "$opt" in + *'hidden files') (('show_hidden=!show_hidden')) ;; + *'backup dirs') (('show_backup=!show_backup')) ;; + *'open dirs') (('always_open_dirs=!always_open_dirs')) ;; + *'open files') (('always_open_files=!always_open_files')) ;; + *'used dir') (('open_last=!open_last')) ;; + *'insensitive') (('dmenu_caseinsens=!dmenu_caseinsens')) ;; + *'on bottom') (('dmenu_onbottom=!dmenu_onbottom')) ;; + *'Background') + opt=$(echo -e "$dmenu_bg\n[Default]" | $menu -p "Background:") + [[ "$opt" == '[Default]' ]] && opt='000000' + [ "$opt" ] && dmenu_bg="$opt" + dmenu_test=1 + ;; + *'Foreground') + opt=$(echo -e "$dmenu_fg\n[Default]" | $menu -p "Foreground:") + [[ "$opt" == '[Default]' ]] && opt='9999CC' + [ "$opt" ] && dmenu_fg="$opt" + dmenu_test=1 + ;; + *'Selected background') + opt=$(echo -e "$dmenu_bg\n[Default]" | $menu -p "Selected background:") + [[ "$opt" == '[Default]' ]] && opt='000066' + [ "$opt" ] && dmenu_sbg="$opt" + dmenu_test=1 + ;; + *'Selected foreground') + opt=$(echo -e "$dmenu_bg\n[Default]" | $menu -p "Selected foreground:") + [[ "$opt" == '[Default]' ]] && opt='FFFFFF' + [ "$opt" ] && dmenu_sfg="$opt" + dmenu_test=1 + ;; + *'Executor') + opt=$(echo -e "$executor\n[Default]" | $menu -p "Executor:") + [[ "$opt" == '[Default]' ]] && opt='exo' + [ "$opt" ] && editor="$opt" + ;; + *'Editor') + opt=$(echo -e "$editor\n[Default]" | $menu -p "Editor:") + [[ "$opt" == '[Default]' ]] && opt='geany' + [ "$opt" ] && editor="$opt" + ;; + *'File manager') + opt=$(echo -e "$filemanager\n[Default]" | $menu -p "File manager:") + [[ "$opt" == '[Default]' ]] && opt='thunar' + [ "$opt" ] && filemanager="$opt" + ;; + *'defaults') + opt=$(echo -e "No\nYes" | $menu -p "Really set defaults?") + [[ "$opt" == "Yes" ]] && defaults + ;; + 'About') xmessage -maxWidth 80 -maxHeight 80 "$about" ;; + *) + [ "$opt" ] && [ -e "$plugins_dir/preferences/$opt" ] && source "$plugins_dir/preferences/$opt" + ;; + esac + done + menu="$menu $([ "$dmenu_caseinsens" == '1' ] && echo '-i') $([ "$dmenu_onbottom" == '1' ] && echo '-b') -nb $dmenu_bg -nf $dmenu_fg -sb $dmenu_sbg -sf $dmenu_sfg" + if [[ "$dmenu_test" == '1' ]]; then + if [[ "OK" != "$(echo 'OK' | $menu -p 'Dmenu settings changed.')" ]]; then + defaults + source "$config" + setmenu + echo 'OK' | $menu -p 'Error in Dmenu settings. Reverted.' + fi + fi + saveconfig + elif [ -e "$plugins_dir/browser/$file" ]; then + source "$plugins_dir/browser/$file" + fi + fi +done + +saveconfig diff --git a/.config/i3/exit.sh b/.config/i3/exit.sh new file mode 100755 index 0000000..39c88af --- /dev/null +++ b/.config/i3/exit.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +ANSWER=$(echo -e "suspend\nlock\nlogout\nshutdown\nreboot" | rofi -dmenu) + +case $ANSWER in + "suspend") systemctl suspend;; + "lock") xset s activate;; + "logout") i3-msg exit;; + "shutdown") shutdown now;; + "reboot") reboot;; +esac diff --git a/.config/i3/factorio.sh b/.config/i3/factorio.sh new file mode 100755 index 0000000..b8a3d13 --- /dev/null +++ b/.config/i3/factorio.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +PACKPATH="$HOME/Games/Factorio/Modpacks/" +INSTANCE=$(ls $PACKPATH | rofi -dmenu -i) + +echo $INSTANCE + +if test -n "$INSTANCE"; then + cd $(<"${PACKPATH}${INSTANCE}/pack.conf") && padsp ./factorio --mod-directory ${PACKPATH}${INSTANCE}/ & +fi diff --git a/.config/i3/factorio.sh! b/.config/i3/factorio.sh! new file mode 100644 index 0000000..52248a8 --- /dev/null +++ b/.config/i3/factorio.sh! @@ -0,0 +1,9 @@ +#!/bin/bash + +INSTANCE=$(ls ~/Documents/Games/Factorio/Modpacks/ | rofi -dmenu -i) + +echo $INSTANCE + +if test -n "$INSTANCE"; then + $(<"${INSTANCE}/pack.conf") --mod-directory $INSTANCE +fi diff --git a/.config/i3/mmc.sh b/.config/i3/mmc.sh new file mode 100755 index 0000000..3b08ce3 --- /dev/null +++ b/.config/i3/mmc.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +INSTANCE=$(ls ~/.local/share/multimc/instances/ | rofi -dmenu -i) + +echo $INSTANCE + +if test -n "$INSTANCE"; then + multimc -l $INSTANCE +fi diff --git a/.config/i3/monitor-rotate.sh b/.config/i3/monitor-rotate.sh new file mode 100755 index 0000000..cba3e65 --- /dev/null +++ b/.config/i3/monitor-rotate.sh @@ -0,0 +1,141 @@ +#!/bin/bash +# Auto rotate screen based on device orientation + +# Screen orientation and launcher location is set based upon accelerometer position +# This script should be added to startup applications for the user + +if [ -n "${DEBUG+set}" ]; then echo debug on; DEBUG=1; fi + +### configuration +# find your Touchscreen and Touchpad device with `xinput` +TouchscreenDevice='ELAN Touchscreen' +TouchpadDevice='SynPS/2 Synaptics TouchPad' +KeyboardDevice='AT Translated Set 2 keyboard' + +### arguments +if [ "$1" == '-nosd' ]; then NOSD="true" ; fi + +### functions +rotatescreen() { + # Contributors: Ruben Barkow: https://gist.github.com/rubo77/daa262e0229f6e398766 + + touchpadEnabled=$(xinput --list-props "$TouchpadDevice" | awk '/Device Enabled/{print $NF}') + screenMatrix=$(xinput --list-props "$TouchscreenDevice" | awk '/Coordinate Transformation Matrix/{print $5$6$7$8$9$10$11$12$NF}') + + # Matrix for rotation + # ⎡ 1 0 0 ⎤ + # ⎜ 0 1 0 ⎥ + # ⎣ 0 0 1 ⎦ + normal='1 0 0 0 1 0 0 0 1' + normal_float='1.000000,0.000000,0.000000,0.000000,1.000000,0.000000,0.000000,0.000000,1.000000' + + #⎡ -1 0 1 ⎤ + #⎜ 0 -1 1 ⎥ + #⎣ 0 0 1 ⎦ + inverted='-1 0 1 0 -1 1 0 0 1' + inverted_float='-1.000000,0.000000,1.000000,0.000000,-1.000000,1.000000,0.000000,0.000000,1.000000' + + # 90° to the left + # ⎡ 0 -1 1 ⎤ + # ⎜ 1 0 0 ⎥ + # ⎣ 0 0 1 ⎦ + left='0 -1 1 1 0 0 0 0 1' + left_float='0.000000,-1.000000,1.000000,1.000000,0.000000,0.000000,0.000000,0.000000,1.000000' + + # 90° to the right + #⎡ 0 1 0 ⎤ + #⎜ -1 0 1 ⎥ + #⎣ 0 0 1 ⎦ + right='0 1 0 -1 0 1 0 0 1' + + if [ "$1" == "-u" ]; then + echo "Upside down" + xrandr -o inverted + xinput set-prop "$TouchscreenDevice" 'Coordinate Transformation Matrix' $inverted + xinput disable "$TouchpadDevice" + xinput disable "$KeyboardDevice" + # if onboard isn't running and NOSD != true, start it + if [[ "$NOSD" != "true" ]]; then + [[ `pgrep onboard` ]] || onboard 2>/dev/null & + fi + elif [ "$1" == "-l" ]; then + echo "90° to the left" + xrandr -o left + xinput set-prop "$TouchscreenDevice" 'Coordinate Transformation Matrix' $left + xinput disable "$TouchpadDevice" + xinput disable "$KeyboardDevice" + if [[ "$NOSD" != "true" ]]; then + [[ `pgrep onboard` ]] || onboard 2>/dev/null & + fi + elif [ "$1" == "-r" ]; then + echo "90° right up" + xrandr -o right + xinput set-prop "$TouchscreenDevice" 'Coordinate Transformation Matrix' $right + xinput disable "$TouchpadDevice" + xinput disable "$KeyboardDevice" + if [[ "$NOSD" != "true" ]]; then + [[ `pgrep onboard` ]] || onboard 2>/dev/null & + fi + elif [ "$1" == "-n" ]; then + echo "Back to normal" + xrandr -o normal + xinput set-prop "$TouchscreenDevice" 'Coordinate Transformation Matrix' $normal + xinput enable "$TouchpadDevice" + xinput enable "$KeyboardDevice" + killall -q onboard + fi +} + +### dependencies +( command -v monitor-sensor >/dev/null 2>&1 ) || { echo >&2 "$0 requires monitor-sensor but it's not installed. Please install iio-sensor-proxy (https://github.com/hadess/iio-sensor-proxy)."; exit 1; } +( command -v xrandr >/dev/null 2>&1 ) || { echo >&2 "$0 requires xrandr but it's not installed. Aborting."; exit 1; } +# transparently disable onboard support if it's not installed +( command -v onboard >/dev/null 2>&1 ) || { echo >&2 "Not using onboard keyboard"; NOSD="true"; } + +### main script + +# check for running instance exit if exists +myname=$(basename $0) +runningPID=$(ps -ef | grep ".*bash.*$myname" | grep -v "grep \| $$" | awk '{print $2}') +if [[ $runningPID != "" ]] ; then + echo $myname is already running with PID $runningPID + exit +fi + +killall -q -v monitor-sensor + +LOG=/tmp/sensor.log +mkfifo $LOG +monitor-sensor > $LOG & + +PID=$! +# kill monitor-sensor and rm log if this script exits +trap "[ ! -e /proc/$PID ] || kill $PID && rm -v $LOG" SIGHUP SIGINT SIGQUIT SIGTERM SIGPIPE +LASTORIENT='unset' + +echo 'monitoring for screen rotation...' +while read -r; do + line=$(echo "$REPLY" | sed -E '/orient/!d;s/.*orient.*: ([a-z\-]*)\)??/\1/;' ) + # read a line from the pipe, set var if not whitespace + [[ $line == *[^[:space:]]* ]] || continue + ORIENT=$line + if [[ "$ORIENT" != "$LASTORIENT" ]]; then + echo "$LASTORIENT > $ORIENT" + LASTORIENT=$ORIENT + # Set the actions to be taken for each possible orientation + case "$ORIENT" in + normal) + #rotatescreen -n;; + if [ $DEBUG ]; then echo "normal" ;else rotatescreen -n; fi ;; + bottom-up) + if [ $DEBUG ]; then echo "up" ;else rotatescreen -u; fi ;; + #rotatescreen -u;; + right-up) + if [ $DEBUG ]; then echo "right" ;else rotatescreen -r; fi ;; + #rotatescreen -r;; + left-up) + if [ $DEBUG ]; then echo "left" ;else rotatescreen -l; fi ;; + #rotatescreen -l;; + esac + fi +done < $LOG diff --git a/.config/i3/music.sh b/.config/i3/music.sh new file mode 100755 index 0000000..a0278d0 --- /dev/null +++ b/.config/i3/music.sh @@ -0,0 +1,2 @@ +#!/bin/sh +arecord -f dat -D hw:0 | aplay -f dat -D pulse diff --git a/.config/i3/oneko.sh b/.config/i3/oneko.sh new file mode 100755 index 0000000..3e6eb9e --- /dev/null +++ b/.config/i3/oneko.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env sh + +killall oneko +oneko -tofocus + diff --git a/.config/i3/recent_files b/.config/i3/recent_files new file mode 100644 index 0000000..a8486dc --- /dev/null +++ b/.config/i3/recent_files @@ -0,0 +1,14 @@ +cursus-2018.pdf +Physics-for-Scintists-Engineers-by-Giancoli-4th-Edition (1).pdf +Algorithms-4th-Ed-Robert-Sedgewick-Kevin-Wayne-2011 (1).pdf +report.pdf +opgave.pdf +Algorithms-4th-Ed-Robert-Sedgewick-Kevin-Wayne-2011.pdf +2019Cursus-WiskundeII-3sp.pdf +Logica.pdf +bvp.les4.correctheidsbewijzen(1).pdf +bvp.les8.complexiteit(1).pdf +cursustekst-bri 2018.pdf +a.out +taak3 +bri_taak_2 diff --git a/.config/i3/rofifm.sh b/.config/i3/rofifm.sh new file mode 100755 index 0000000..80d0d8b --- /dev/null +++ b/.config/i3/rofifm.sh @@ -0,0 +1,65 @@ +#!/bin/sh + +RECENT_FILES=~/.config/i3/recent_files +FILE_MANAGER=dolphin +TERMINAL="termite -d" +DMENU="rofi -dmenu -i" + +open_file() { + sed -i "\:$1:d" $RECENT_FILES + echo -e "$1\n$(cat $RECENT_FILES)" > $RECENT_FILES + xdg-open "$1" +} + +recent_files() { + ITEM=$(cat $RECENT_FILES | sed 's!.*/!!' | $DMENU -format i) + + if [[ -z $ITEM ]]; then + return + fi + + ITEM=$(($ITEM+1)) + echo $ITEM + + open_file "$(sed -n "${ITEM}p" < $RECENT_FILES)" +} + +DONE=false + +if ! [[ -f $RECENT_FILES ]]; then + touch $RECENT_FILES +fi + +cd ~ + +ITEM=$({ echo "Recent Files"; echo "Open in terminal"; echo "Show in $FILE_MANAGER"; ls; } | $DMENU) + +while [ $DONE != true ]; do + + if [[ -z $ITEM ]]; then + break + fi + + if [[ $ITEM = "Open in terminal" ]]; then + $TERMINAL "$PWD" + break + elif [[ $ITEM = "Show in $FILE_MANAGER" ]]; then + $FILE_MANAGER . + break + elif [[ $ITEM = "Recent Files" ]]; then + recent_files + break + elif [[ -d $ITEM ]]; then + cd "$ITEM" + continue + elif [[ -f $ITEM ]]; then + open_file "$ITEM" + break + fi + + ITEM=$({ echo "Open in terminal"; echo "Show in $FILE_MANAGER"; ls; } | rofi -dmenu -i) + +done + + + diff --git a/.config/i3/rotate.sh b/.config/i3/rotate.sh new file mode 100755 index 0000000..45fa65d --- /dev/null +++ b/.config/i3/rotate.sh @@ -0,0 +1,61 @@ +#!/bin/sh + +LOG=/run/user/$(id -u $USER)/sensor.log +DNAME=eDP1 + +function rotate { + #echo ---- rotete ---- + ORIENTATION=$1 + CUR_ROT=$(xrandr -q --verbose | grep $DNAME | cut -d" " -f6) + + NEW_ROT="normal" + CTM="1 0 0 0 1 0 0 0 1" + + # Set the actions to be taken for each possible orientation + case "$ORIENTATION" in + normal) + NEW_ROT="normal" + CTM="1 0 0 0 1 0 0 0 1" + ;; + bottom-up) + NEW_ROT="inverted" + CTM="-1 0 1 0 -1 1 0 0 1" + ;; + right-up) + NEW_ROT="right" + CTM="0 1 0 -1 0 1 0 0 1" + ;; + left-up) + NEW_ROT="left" + CTM="0 -1 1 1 0 0 0 0 1" + ;; + esac + + xrandr -o $NEW_ROT + xinput set-prop "Wacom HID 50DB Finger" --type=float "Coordinate Transformation Matrix" $CTM + +} + +rotate "$1" + +# kill old monitor-sensor +#killall monitor-sensor + +# Clear sensor.log so it doesn't get too long over time +#> $LOG + +# Launch monitor-sensor and store the output in a variable that can be parsed by the rest of the script +#monitor-sensor >> $LOG 2>&1 & + +# Parse output or monitor sensor to get the new orientation whenever the log file is updated +# Possibles are: normal, bottom-up, right-up, left-up +# Light data will be ignored +#while inotifywait -e modify $LOG; do +# # Read the last line that was added to the file and get the orientation +# ORIENTATION=$(tail -n 1 $LOG | grep 'orientation' | grep -oE '[^ ]+$') +# +# if [ ! -z $ORIENTATION ] ; then +# rotate $ORIENTATION +# fi +# +#done diff --git a/.config/i3/rotate_normal.sh b/.config/i3/rotate_normal.sh new file mode 100755 index 0000000..607a1bb --- /dev/null +++ b/.config/i3/rotate_normal.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +#landscape (normal) + +xrandr -o normal +xinput set-prop "Wacom HID 50DB Finger" --type=float "Coordinate Transformation Matrix" 0 0 0 0 0 0 0 0 0 diff --git a/.config/i3/run.sh b/.config/i3/run.sh new file mode 100755 index 0000000..978b1f3 --- /dev/null +++ b/.config/i3/run.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +COMMAND=$(rofi -dmenu -i) + +if test -n "$COMMAND"; then + termite -e zsh -c "${COMMAND}" +fi diff --git a/.config/polybar/.config.un~ b/.config/polybar/.config.un~ new file mode 100644 index 0000000000000000000000000000000000000000..5ddb084ff18e33be3d3135a06527b68946b9d2e6 GIT binary patch literal 32101 zcmeI5Yit}>700)3(hz9t(l$wxH1#-6LSAco*D-CKOvu9t^qCJ;gR}_Y^?ICInVnho z5x2oeNq7`mUR9C!KqbB)gbI8C2?-(83RwaK5_~Ej`l+-CA&^ibf%sO=|IR(LXV+TVHa)zdHh;M$+hz4q->m!}5b zeC5F3-#Yl_$!o7awD-IFQ>oMprETtl=cFqOmmRAvwlzVUc2e3(=@v@UP3bf(r*hZd z`SAv9J(&8;pRj^tAjs5TY{ChYyhox=#VgiRK0?aEBsaC>mffE!9I4d5?;}mOP-61~ zMS9-%s_ASUGfKAgNhe=@#wlBm6nw8Tg_>YzGDjySuPUZE@K#DJ;CnA6b>el+bT|Eq zb-=WkkxcI)rNQ+IC7>BsOvjs6D1a~HhkF{iRZ-kcsstM(R@2V z1;h^s-2vD@6$VMRNKj9;gBmobE1b5qlY-x7p)=STp28r>7K!JXc07Xybp_ApfD3jX z6#9ZISSm3MDqA9{oLD~A%#zKI2DK}eVD}-RDY%~H<#o++n101tk4HmGk}glMRVhEu zWny_vvOGf@_#n91_D>c4xti;YEiRND*Qr#}o>N`)%NIXQ8%L|pm7K&{7QCuc z_VVtSK7@|gqt?ym3sHyJ)}mXQsEpHoLu$WEdAEMPdMTLA8Y(S#7t$^E3w9Z)c^5r@ z(M#tm=~}6N0#&lD`Mg_k=wf5@ez};hrfI&!a|%^wPVQ-2$K3p^#b^;3l)n6aBt(| zY*xx;S@@UN(AY8}21ikr?pI~3&709(vaN=jTG)v>g4^9#)&i#BcnHgeBdpMeNOrO; zIX1+}W{y0e#vC!}a&pnB_(f;(Y}s*W(0-ZkP>mlQ*UkxuxZA}7z#roU1C=e&V-8F5 z7#w3b3_c-%itbD*w_JK&Mpdk2^KYW^R_WYhs3Kw8O zB~~WI3R7{}EIsD3;-VZ?alaxfu1!0!`DL#SSl9!g3y|@C1`{mOkHC^_U6i9ReKigy zZcJDioD{vAtyp2a30CMs;$V77Vgg4z3{{{6Z+bMC?yIEB7-ds84MG!hvQe-~HJUif z*X9;{t5B+0Ri{{T%K2)o>{vyo=$D_f=JHiXhfe_BMu`QW4RE$bzj++sFSi4JCK@<* z0J>uhws=yF1>6m5wno2s->j#jS?lTf?ob2mcJYgV{ZU?L;<&I(FU2^helfT97kkK4A*48dwhs0W@nks5CrhQczv6yq>_ zS2Aqwgf=j&cS4tlV4WeDSwcPVgeNOm6NdO1@=k@;rR(fwxM>%M;eRDVv|((1ObG3i zemL0>NZAWP4D(1V78UpuYcr+ye@5`L1B&24@S0#V!Fz*e)rvJd*~SAw-HQP#R8tmU z`~;;DtO%VCYgS9%Pv|<@EVo>KM>-#F$HD-4N^rhI`pLv#93R3{4=JUCmB;n-iN`fj z5LEOihk&jjs!XvOe{#!}1B&RafipG}9f?6ylLWavLT6A#pI$=Y73}z*NQ16np?81k;%e?bF)YEbP|}Iro;lCh9O&{-#iY(FDu8~ z7tK(8YCfD2)CDjMzBCS6(?Us*M2EKVCb-za6uYoM9D3hZ^bQ8}_=STRx(Gb5)jtZ* z^rYWGEs!+yV2K+cap(pAieZ0O^fHdfj;*9kHB^Hb%U;%=< zMM1S%K-G@g9aKPkP-qLls4hy3r?MrI$_eT=1$8KZ`Vd_RJ~cy0d1@n6dT7D9Q1;1T zRTs9Ervf6*!~(!*#+4YTY>6IoShB-_^6f7vs1F2C`)#kAcmevWdJr%$p|+@ z;y?{PO13M2iUZ`-Pkk*0jd@C{UDTai_G{J^AaS%3Kn;ei`k!9O7P{O#@QoOg8DSPZSf=^SmKkKEZ~fjt1l)PwrrN9a$@^W#dcerZ5I^z zKYN1O385p1nh-1ul5CM~WZt4EZfy*~?2Fxm;A~_FmM)6la)Ocp3`?wv5a7EM;4S?F zo`?i|hxi?XRKAlEo<>r#uH*19{RD)xwUp43q=YP=XQk+0Tzx|U*8fKP3~dNsL7BYz Hw^#oMnTOm| literal 0 HcmV?d00001 diff --git a/.config/polybar/config b/.config/polybar/config new file mode 100644 index 0000000..cc6f9c0 --- /dev/null +++ b/.config/polybar/config @@ -0,0 +1,610 @@ +===================================================== +; +; To learn more about how to configure Polybar +; go to https://github.com/jaagr/polybar +; +; The README contains alot of information +; +;===================================================== + +[colors] +background = #00 +background-alt = #00 +;foreground = ${xrdb:color3:#222} +;foreground-alt = ${xrdb:color3:#222} +;primary = ${xrdb:color1:#222} +;secondary = ${xrdb:color2:#222} +foreground = #FFFFFF +foreground-alt = #FFFFFF +primary = #FFFFFF +secondary = #FFFFFF +alert = ${xrdb:color3:#222} + +[bar/bar1] +width = 100% +height = 25 +radius = 0 +fixed-center = true +bottom = false +monitor=${env:MONITOR:} + +background = ${colors.background} +foreground = ${colors.foreground} + +line-size = 2 +line-color = #f00 + +border-size = 10 +border-color = #00000000 + +padding-left = 2 +padding-right = 2 + +module-margin-left = 3 +module-margin-right = 0 + +font-0 = "Hack":pixelsize=12;1" +font-1 = unifont:fontformat=truetype:size=12:antialias=false;0 +font-2 = "Wuncon Siji:pixelsize=9;1" +font-3 = "Font Awesome 5 Free:style=Regular:pixelsize=12;1" +font-4 = "Font Awesome 5 Free:style=Solid:pixelsize=12;1" +font-5 = "Font Awesome 5 Brands:pixelsize=12;1" + +modules-left = i3 workspaces-xmonad +modules-center = xwindow +;weather update installed +modules-right = temperature xbacklight volume wlan battery date + +tray-postion = right + +override-redirect = false + +cursor-click = pointer +cursor-scroll = ns-resize + +[bar/touchbar] +width = 100% +height = 25 +radius = 0 +fixed-center = true +bottom = true +monitor=${env:MONITOR:} + +background = ${colors.background} +foreground = ${colors.foreground} + +line-size = 2 +line-color = #f00 + +border-size = 10 +border-color = #00000000 + +padding-left = 2 +padding-right = 2 + +module-margin-left = 3 +module-margin-right = 0 + +font-0 = "Hack":pixelsize=12;1" +font-1 = unifont:fontformat=truetype:size=12:antialias=false;0 +font-2 = "Wuncon Siji:pixelsize=9;1" +font-3 = "Font Awesome 5 Free:style=Regular:pixelsize=12;1" +font-4 = "Font Awesome 5 Free:style=Solid:pixelsize=12;1" +font-5 = "Font Awesome 5 Brands:pixelsize=12;1" + +modules-left = touchvolmute touchvoldown touchvolup touchbrightdown touchbrightup +modules-center = i3touchmenu +modules-right = touchrofi touchkeyboard +override-redirect = false +enable-ipc = true + + +[module/workspaces-xmonad] +type = custom/script +exec = tail -F /tmp/.xmonad-workspace-log +exec-if = [ -p /tmp/.xmonad-workspace-log ] +tail = true + +[module/title-xmonad] +type = custom/script +exec = tail -F /tmp/.xmonad-title-log +exec-if = [ -p /tmp/.xmonad-title-log ] +tail = true + +[module/touchkeyboard] +;; Open onscreen keyboard (onboard) +type=custom/text +content=" " +content-foreground=#fff +click-left=onboard + +[module/touchrofi] +type=custom/text +content=" " +content-foreground=#fff +click-left=rofi -show run + +[module/touchbrightdown] +;; Brightness down +type=custom/text +content=" " +content-foreground=#fff +click-left=xbacklight -dec 10 + +[module/touchbrightup] +;; Brightness up +type=custom/text +content=" " +content-foreground=#fff +click-left=xbacklight -inc 10 + +[module/touchvolmute] +;; Mute +type=custom/text +content=" " +content-foreground=#fff +click-left=pactl set-sink-mute 0 toggle + +[module/touchvoldown] +;; Volume down +type=custom/text +content=" " +content-foreground=#fff +click-left=pactl set-sink-mute 0 false && pactl set-sink-volume 0 -5% + +[module/touchvolup] +;; Volume up +type=custom/text +content=" " +content-foreground=#fff +click-left=pactl set-sink-mute 0 false && pactl set-sink-volume 0 +5% + + +[module/update] +type = custom/script +label-foreground = ${colors.foreground-alt} + +interval = 30 +format =