From 843f632978c79db10ff0a5d9747c1d97d9a16be9 Mon Sep 17 00:00:00 2001 From: Luke Smith Date: Sat, 23 Nov 2019 18:00:20 -0500 Subject: [PATCH] autodetermine wm --- .xinitrc | 37 ++++++++++++++++++++++++++++++++----- .zprofile | 4 +--- 2 files changed, 33 insertions(+), 8 deletions(-) diff --git a/.xinitrc b/.xinitrc index 9bb70b1..beb01e7 100644 --- a/.xinitrc +++ b/.xinitrc @@ -10,10 +10,37 @@ [ -f ~/.xprofile ] && . ~/.xprofile +startlarbs() { + # Here, LARBS decides whether to boot dwm or i3. It will boot what is manually + # set in ~/.local/share/larbs/wm, otherwise it will test to see if dwm is + # installed, in which case it will load dwm. It will assume i3 otherwise. -# Here we start dwm. -# The loop is just to enable dwm's "restart" feature (mod+F2). + LARBSWM="$(cat ~/.local/share/larbs/wm 2>/dev/null)" || + { LARBSWM="$(type dwm >/dev/null 2>&1)" && LARBSWM="dwm" ;} || + { LARBSWM="$(type i3 >/dev/null 2>&1)" && LARBSWM="i3" ;} -while :; do - ssh-agent dwm || break -done + # To be clear, you can run: + # echo dwm > ~/.local/share/larbs/wm + # to set dwm as your default LARBS WM (or echo i3 for i3). + + # Here we start the window manager, whichever it's supposed to be. + # Note that we set the different status bar commands here too. + + case "$LARBSWM" in + dwm) + export FILE="lf" + export STATUSBAR="dwmblocks" + # The loop is just to enable dwm's "restart" feature (mod+F2). + while :; do + ssh-agent dwm || break + done + ;; + i3) + export FILE="ranger" + export STATUSBAR="i3blocks" + exec i3 + ;; + *) echo "No valid LARBS window manager detected." ;; + esac ;} + +startlarbs diff --git a/.zprofile b/.zprofile index c68655b..9d5f2a5 100644 --- a/.zprofile +++ b/.zprofile @@ -8,8 +8,6 @@ export EDITOR="nvim" export TERMINAL="st" export BROWSER="brave" export READER="zathura" -export FILE="lf" -export STATUSBAR="dwmblocks" # ~/ Clean-up: export NOTMUCH_CONFIG="$HOME/.config/notmuch-config" @@ -39,7 +37,7 @@ mpd >/dev/null 2>&1 & # Start graphical server on tty1 if not already running. [ "$(tty)" = "/dev/tty1" ] && ! pgrep -x Xorg >/dev/null && exec startx -# Switch escape and caps if tty: +# Switch escape and caps if tty and no passwd required: sudo -n loadkeys ~/.local/share/larbs/ttymaps.kmap 2>/dev/null export LF_ICONS="di=:fi=:ln=:or=:ex=:*.c=:*.cc=:*.clj=:*.coffee=:*.cpp=:*.css=:*.d=:*.dart=:*.erl=:*.exs=:*.fs=:*.go=:*.h=:*.hh=:*.hpp=:*.hs=:*.html=:*.java=:*.jl=:*.js=:*.json=:*.lua=:*.md=:*.php=:*.pl=:*.pro=:*.py=:*.rb=:*.rs=:*.scala=:*.ts=:*.vim=:*.cmd=:*.ps1=:*.sh=:*.bash=:*.zsh=:*.fish=:*.tar=:*.tgz=:*.arc=:*.arj=:*.taz=:*.lha=:*.lz4=:*.lzh=:*.lzma=:*.tlz=:*.txz=:*.tzo=:*.t7z=:*.zip=:*.z=:*.dz=:*.gz=:*.lrz=:*.lz=:*.lzo=:*.xz=:*.zst=:*.tzst=:*.bz2=:*.bz=:*.tbz=:*.tbz2=:*.tz=:*.deb=:*.rpm=:*.jar=:*.war=:*.ear=:*.sar=:*.rar=:*.alz=:*.ace=:*.zoo=:*.cpio=:*.7z=:*.rz=:*.cab=:*.wim=:*.swm=:*.dwm=:*.esd=:*.jpg=:*.jpeg=:*.mjpg=:*.mjpeg=:*.gif=:*.bmp=:*.pbm=:*.pgm=:*.ppm=:*.tga=:*.xbm=:*.xpm=:*.tif=:*.tiff=:*.png=:*.svg=:*.svgz=:*.mng=:*.pcx=:*.mov=:*.mpg=:*.mpeg=:*.m2v=:*.mkv=:*.webm=:*.ogm=:*.mp4=:*.m4v=:*.mp4v=:*.vob=:*.qt=:*.nuv=:*.wmv=:*.asf=:*.rm=:*.rmvb=:*.flc=:*.avi=:*.fli=:*.flv=:*.gl=:*.dl=:*.xcf=:*.xwd=:*.yuv=:*.cgm=:*.emf=:*.ogv=:*.ogx=:*.aac=:*.au=:*.flac=:*.m4a=:*.mid=:*.midi=:*.mka=:*.mp3=:*.mpc=:*.ogg=:*.ra=:*.wav=:*.oga=:*.opus=:*.spx=:*.xspf=:*.pdf="