diff --git a/.gitignore b/.gitignore index 2333b4f..20c94db 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ *.pid *.tmp *.secret +<<<<<<< HEAD # TODO: should be unnecessary once color generation is homegrown /colors/gen/vendor @@ -16,3 +17,22 @@ # ... and a place to keep shared secrets /env/.hidden +||||||| 0d0e131 +/.repositories +/.env/ +======= +fishd.tmp.* + +# TODO: should be unnecessary once color generation is homegrown +/colors/gen/vendor +/colors/gen/tmp + +# keep the pipelines but hide their results +/bin/pipelines/*/*/* + +# a place to keep secrets per-env +/env/*/.hidden + +# ... and a place to keep shared secrets +/env/.hidden +>>>>>>> master diff --git a/apps/de/bspwm/config b/apps/de/bspwm/config index 8deecdc..d314295 100755 --- a/apps/de/bspwm/config +++ b/apps/de/bspwm/config @@ -1,28 +1,24 @@ #!/usr/bin/env sh -export WINDOW_GAP=0 -NUM_DESKTOPS=10 -DESKTOPS=$(seq "$NUM_DESKTOPS") - +NUM_DESKTOPS="$(xrq bspwm.num_desktops)" +REVERSE_DESKTOP_ORDERING="$(xrq bspwm.reverse_desktop_ordering)" BSPWM_MONITORS=$(bspc query -M | tac) MONITOR_COUNT=$(<<< "$BSPWM_MONITORS" wc -w | awk '{ printf $1 }') PER_MONITOR=$((NUM_DESKTOPS / MONITOR_COUNT)) -REVERSE_DESKTOP_ORDERING=${REVERSE_DESKTOP_ORDERING:-0} +DESKTOPS=$(seq "$NUM_DESKTOPS") -. maybe_source_env_file bspwm - -bspc config normal_border_color "$(xrdb -query | sed -ne 's/.*background:\s*//p')" -bspc config focused_border_color "$(xrdb -query | sed -ne 's/.*color0\?4:\s*//p')" -bspc config active_border_color "$(xrdb -query | sed -ne 's/.*color0\?4:\s*//p')" -bspc config presel_feedback_color "$(xrdb -query | sed -ne 's/.*color0\?4:\s*//p')" -bspc config border_width "$BORDER_WIDTH" -bspc config split_ratio 0.5 +bspc config normal_border_color "$(xrq bspwm.normal_border_color)" +bspc config focused_border_color "$(xrq bspwm.focused_border_color)" +bspc config active_border_color "$(xrq bspwm.active_border_color)" +bspc config presel_feedback_color "$(xrq bspwm.presel_feedback_color)" +bspc config border_width "$(xrq bspwm.border_width)" +bspc config split_ratio "$(xrq bspwm.split_ratio)" +bspc config window_gap "$(xrq bspwm.window_gap)" bspc config borderless_monocle true bspc config gapless_monocle true bspc config pointer_modifier "mod4" bspc config remove_unplugged_monitors true bspc config remove_disabled_monitors true -bspc config window_gap "$WINDOW_GAP" bspc rule -a "*" split_dir=right diff --git a/apps/de/bspwm/rc b/apps/de/bspwm/rc index 1aa721f..7cc9012 100755 --- a/apps/de/bspwm/rc +++ b/apps/de/bspwm/rc @@ -1,9 +1,6 @@ #!/usr/bin/env sh -NO_COMPTON=1 -START_BAR=1 BAR_COMMAND="startbar" - BSPWM_STATE_FILE="$HOME/.bspwm_state" if [ -e "$BSPWM_STATE" ] ; then @@ -11,13 +8,12 @@ if [ -e "$BSPWM_STATE" ] ; then rm "$BSPWM_STATE" fi -export BORDER_WIDTH=5 . "$DOTFILES_PATH/apps/de/bspwm/config" [ -f "$DOTFILES_PATH/apps/de/x/loadresources" ] && "$DOTFILES_PATH/apps/de/x/loadresources" [ -f "$HOME/.fehbg" ] && "$HOME/.fehbg" & -[ "$NO_COMPTON" -ne 1 ] && has_command compton && compton & -[ "$START_BAR" -eq 1 ] && has_command "${BAR_COMMAND}" && "${BAR_COMMAND}" & +[ "$(xrq bspwm.start_compton)" = "true" ] && has_command compton && compton & +[ "$(xrq bspwm.start_bar)" = "true" ] && has_command "${BAR_COMMAND}" && "${BAR_COMMAND}" & has_command urxvtd && urxvtd & has_command dunst && dunst & has_command sxhkd && sxhkd -m -1 & diff --git a/apps/de/polybar/config b/apps/de/polybar/config index 0ece15a..eed17c6 100644 --- a/apps/de/polybar/config +++ b/apps/de/polybar/config @@ -38,14 +38,14 @@ time = ${colors.foreground} ; ########################### ; [bar/lytedev] -monitor = ${env:BAR_MONITOR:HDMI-1} -width = ${env:BAR_WIDTH:HDMI-1} -height = ${env:BAR_HEIGHT:30} -offset-x = ${env:POS_X:30} -offset-y = ${env:POS_Y:30} +monitor = ${xrdb:polybar.display_monitor:HDMI-1} +width = ${xrdb:polybar.width:100%-200} +height = ${xrdb:polybar.height:40} +offset-x = ${xrdb:polybar.offset_x:100} +offset-y = ${xrdb:polybar.offset_y:100} radius = 0.0 fixed-center = true -bottom = ${env:BAR_BOTTOM:true} +bottom = ${xrdb:polybar.bottom_of_display:true} dpi = ${xrdb:dpi:92} background = ${colors.background} @@ -63,8 +63,8 @@ padding-right = 2 module-margin-left = 1 module-margin-right = 1 -font-0 = ${env:BAR_FONT_DECLARATION} -font-1 = ${env:BAR_ICON_FONT_DECLARATION} +font-0 = iosevka\-lyte:pixelsize=14;1 +font-1 = ${xrdb:polybar.secondary_font} modules-left = bspwm modules-center = date @@ -89,7 +89,7 @@ override-redirect = true type = internal/fs interval = 25 -mount-0 = ${env:BAR_FS_VOLUME:/} +mount-0 = ${xrdb:polybar.storage_volume:/} format = label-mounted = %free% @@ -171,14 +171,14 @@ label =  bar-width = 5 bar-indicator = | bar-indicator-foreground = ${colors.foreground} -bar-indicator-font = 0 +bar-indicator-font = 1 bar-fill = ─ ; bar-fill = - -bar-fill-font = 0 +bar-fill-font = 1 bar-fill-foreground = ${colors.bar-bg} bar-empty = ─ ; bar-empty = - -bar-empty-font = 0 +bar-empty-font = 1 bar-empty-foreground = ${colors.bar-bg} ; ########################### ; @@ -211,7 +211,7 @@ label-foreground = ${colors.memory} [module/wifi] type = internal/network -interface = ${env:BAR_WIFI_INTERFACE} +interface = ${xrdb:polybar.wireless_interface} interval = 10.0 ;format-connected = @@ -239,7 +239,7 @@ ramp-signal-4 =  [module/eth] type = internal/network -interface = ${env:BAR_ETH_INTERFACE} +interface = ${xrdb:polybar.ethernet_interface} interval = 10.0 format-connected-prefix = " " @@ -298,11 +298,11 @@ bar-volume-foreground-5 = ${colors.bar-bg} bar-volume-foreground-6 = ${colors.bar-bg} bar-volume-gradient = false bar-volume-indicator = | -bar-volume-indicator-font = 0 +bar-volume-indicator-font = 1 bar-volume-fill = ─ -bar-volume-fill-font = 0 +bar-volume-fill-font = 1 bar-volume-empty = ─ -bar-volume-empty-font = 0 +bar-volume-empty-font = 1 bar-volume-empty-foreground = ${colors.icon} ; ######################### ; @@ -382,8 +382,8 @@ compositing-border = source ; ######################### ; [global/wm] -margin-top = ${env:WINDOW_GAP:0} -margin-bottom = ${env:WINDOW_GAP:0} +margin-top = ${xrdb:polybar.margin:0} +margin-bottom = ${xrdb:polybar.margin:0} [module/microphone] type = custom/script diff --git a/apps/de/polybar/run b/apps/de/polybar/run index 7561ad4..78140fa 100755 --- a/apps/de/polybar/run +++ b/apps/de/polybar/run @@ -1,62 +1,24 @@ #!/usr/bin/env sh -export BAR_MONITOR="$(polybar --list-monitors | tail -n 1 | sed -n 's/^\s*\(.*\):.*$/\1/p')" -# export BAR_MONITOR="$(polybar --list-monitors | tail -n 2 | head -n 1 | sed -n 's/^\s*\(.*\):.*$/\1/p')" -export BAR_HEIGHT=40 -export BAR_ON_TOP=0 -export BAR_SIDE_MARGIN=0 +height="$(xrq polybar.height)" +margin="$(xrq polybar.margin)" +yoffset="$(xrq polybar.offset_y)" +eheight="$((height + margin + yoffset))" +bar_monitor="$(xrq polybar.display_monitor)" -export BAR_FONT="${BAR_FONT:-$(xrdb -query | sed -ne 's/.*font:\s*xft:\([^:]*\)\:.*$/\1/p' | head -n 1)}" -export BAR_ICON_FONT="${BAR_ICON_FONT:-"Font Awesome 5 Free"}" -export BAR_FONT_SIZE="${BAR_FONT_SIZE:-$(xrdb -query | sed -ne 's/.*font:\s*xft:[^-,]*\=\([0-9]*\).*$/\1/p' | head -n 1)}" -export BAR_ICON_FONT_SIZE="${BAR_ICON_FONT_SIZE:-$((BAR_FONT_SIZE))}" +# export BAR_FONT_DECLARATION="${BAR_FONT}:pixelsize=${BAR_FONT_SIZE};1" +# export BAR_ICON_FONT_DECLARATION="${BAR_ICON_FONT}:style=Solid:pixelsize=${BAR_ICON_FONT_SIZE};1" +# export BAR_ICON_FONT_2_DECLARATION="${BAR_ICON_FONT_2}:style=Regular:pixelsize=${BAR_ICON_FONT_SIZE};1" -export GAP=$(bspc wm -d | grep -Po '(windowGap.*?,)' | grep -Po '\-?\d*' | head -n 1) - -if [ "$GAP" -lt 0 ]; then - GAP=0 +# TODO: if bspwm is the active window manager +if has_command bspc; then + if [ ! "$(xrq polybar.bottom_of_display)" = "true" ]; then + bspc config -m "${bar_monitor}" top_padding "$eheight" + bspc config -m "${bar_monitor}" bottom_padding "0" + else + bspc config -m "${bar_monitor}" top_padding "0" + bspc config -m "${bar_monitor}" bottom_padding "$eheight" + fi fi -export BAR_BOTTOM="false" -export BAR_VERTICAL_MARGIN=0 -export POS_Y=0 - -. maybe_source_env_file polybar - -export MONITOR_WIDTH=$(xrandr | grep "^$BAR_MONITOR " | grep -Po ' \d+' | head -n 1) - -export BAR_FONT_DECLARATION="${BAR_FONT}:pixelsize=${BAR_FONT_SIZE};1" -export BAR_ICON_FONT_DECLARATION="${BAR_ICON_FONT}:style=Solid:pixelsize=${BAR_ICON_FONT_SIZE};1" -export BAR_ICON_FONT_2_DECLARATION="${BAR_ICON_FONT_2}:style=Regular:pixelsize=${BAR_ICON_FONT_SIZE};1" - -export BAR_WIDTH=$((MONITOR_WIDTH - GAP - GAP - BAR_SIDE_MARGIN - BAR_SIDE_MARGIN)) -export POS_X=$((GAP + BAR_SIDE_MARGIN)) - -export EHEIGHT=$((BAR_HEIGHT + GAP + BAR_VERTICAL_MARGIN)) - -# if we just want the variables set here, pass an argument -if [ $# -gt 0 ]; then - return -fi - -if [ "$BAR_ON_TOP" -eq 1 ]; then - export BAR_BOTTOM="false" - export POS_Y="$GAP" - bspc config -m "${BAR_MONITOR}" top_padding "$EHEIGHT" - bspc config -m "${BAR_MONITOR}" bottom_padding "0" -else - export BAR_BOTTOM="true" - export POS_Y="$GAP" - bspc config -m "${BAR_MONITOR}" top_padding "0" - bspc config -m "${BAR_MONITOR}" bottom_padding "$EHEIGHT" -fi - -# bspc - -echo "Monitor: $BAR_MONITOR" -echo "Bottom?: $BAR_BOTTOM" -echo "Dimensions: $POS_X $POS_Y $BAR_WIDTH $BAR_HEIGHT" -echo "EHeight: $EHEIGHT" -echo "Margin: $BAR_SIDE_MARGIN" - polybar lytedev diff --git a/apps/de/sxhkd/rc b/apps/de/sxhkd/rc index 3baf885..da1e249 100755 --- a/apps/de/sxhkd/rc +++ b/apps/de/sxhkd/rc @@ -233,6 +233,15 @@ super + w super + shift + v sh -c 'kill -USR1 $(cat "/var/run/user/$UID/polybar-mic-script.sh.pid")' +super + shift + v + sh -c 'kill -USR1 $(cat "/var/run/user/$UID/polybar-mic-script.sh.pid")' + +super + shift + e + rofimoji --use-clipboard --rofi-args='--sort -sorting-method fzf' + +super + shift + p + rofi-pass + # close the current application super + c bspc node -c diff --git a/apps/de/x/resources b/apps/de/x/resources index aadb9ae..043f575 100755 --- a/apps/de/x/resources +++ b/apps/de/x/resources @@ -1,24 +1,33 @@ -## Some of my favorite font setups... -## *font: xft:Monaco for Powerline-9 -## *boldFont: xft:Monaco for Powerline-9 -## *letterSpace: -1 +! font +#define mono_font iosevka-lyte +#define mono_font_size 14 +#define mono_font_letterspace 0 +#define icon_font Font Awesome 5 Free Solid +#define icon_font_size 12 +#define bold_mono_font iosevka-lyte Semibold +#define emoji_font Noto Emoji +#define font_fallback_stack xft:icon_font,xft:FreeSans -## *font: xft:artwiz lemon-8 -## *boldFont: xft:artwiz lemon-8 -## *letterSpace: 0 +! window spacing +#define window_padding 24 +#define window_border 5 +#define window_margin 0 -## *font: xft:xos4 Terminuss Powerline-8 -## *boldFont: xft:xos4 Terminuss Powerline-8 -## *letterSpace: 0 +! dpi +#define base_dpi 92 -*.font: xft:Iosevka Term:pixelsize=14,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 -*.boldFont: xft:Iosevka Term Bold:pixelsize=14,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 +! alternatives +!#define mono_font scientifica +!#define mono_font_size 11 +!#define mono_font curie +!#define mono_font_size 10 -*.letterSpace: 0 -## URxvt.transparent: true -## URxvt.shading: 70 +! font +*.font: xft:mono_font:pixelsize=mono_font_size,xft:emoji_font,font_fallback_stack +*.boldFont: xft:bold_mono_font:pixelsize=mono_font_size +*.letterSpace: mono_font_letterspace -## rxvt-unicode configuration +! rxvt-unicode URxvt.termName: rxvt-unicode URxvt.scrollBar: false URxvt.cursorUnderline: true @@ -27,7 +36,7 @@ URxvt.intensityStyles: true URxvt.utf8: 1 URxvt.scaleHeight: 1 URxvt.depth: 32 -URxvt.internalBorder: 24 +URxvt.internalBorder: window_padding URxvt.perl-ext-common: default,matcher,resize-font URxvt.keysym.M-Escape: perl:keyboard-select:activate URxvt.resize-font.smaller: C-Down @@ -36,18 +45,54 @@ URxvt.url-launcher: /usr/bin/xdg-open URxvt.matcher.button: 1 URxvt.iso14755: False -## Other Xorg configuration +! misc Xcursor.theme: human -## DPI config -dpi: 92 -.dpi: 92 -*dpi: 92 -Xft.dpi: 92 +! dpi +dpi: base_dpi +.dpi: base_dpi +*dpi: base_dpi +Xft.dpi: base_dpi +! font rendering +! TODO: is this still relevant? *autohint: 0 *lcdfilter: lcddefault *hintstyle: hintfull *hinting: 1 *antialias: 1 *rgba: rgb + +! bspwm +bspwm.window_gap: window_margin +bspwm.border_width: window_border +bspwm.num_desktops: 10 +bspwm.reverse_desktop_ordering: 0 +bspwm.split_ratio: 0.5 +bspwm.start_compton: false +bspwm.start_bar: true + +! polybar +polybar.primary_font: mono_font:pixelsize=mono_font_size;1 +polybar.secondary_font: icon_font:style=Regular:pixelsize=icon_font_size;1 +polybar.display_monitor: HDMI-1 +polybar.bottom_of_display: true +polybar.margin: window_margin +polybar.storage_volume: / +polybar.ethernet_interface: eth0 +polybar.wireless_interface: wan0 +polybar.width: 100% +polybar.height: 40 +! if you have a margin value, be sure to include that in your offsets +polybar.offset_x: 0 +polybar.offset_y: 0 + +! rofi +rofi.font: mono_font mono_font_size +rofi.padding: window_padding +rofi.bw: window_border +rofi.color-enabled: true +rofi.monitor: -4 +rofi.width: 600 +rofi.sort: true +rofi.sorting-method: fzf diff --git a/apps/htop/rc b/apps/htop/rc index f96fb4f..73e2ece 100644 --- a/apps/htop/rc +++ b/apps/htop/rc @@ -8,11 +8,11 @@ hide_kernel_threads=1 hide_userland_threads=1 shadow_other_users=0 show_thread_names=0 -show_program_path=1 -highlight_base_name=0 +show_program_path=0 +highlight_base_name=1 highlight_megabytes=1 highlight_threads=1 -tree_view=0 +tree_view=1 header_margin=1 detailed_cpu_time=0 cpu_count_from_zero=0 diff --git a/apps/kitty/kitty.conf b/apps/kitty/kitty.conf index cc56e4c..75786a4 100644 --- a/apps/kitty/kitty.conf +++ b/apps/kitty/kitty.conf @@ -8,7 +8,7 @@ font_features iosevka-lyte -liga -dlig -calt font_size 11.0 adjust_line_height 0 -window_padding_width 5.0 +window_padding_width 10.0 window_margin_width 0.0 clear_all_shortcuts yes diff --git a/apps/neovim/bindings.vim b/apps/neovim/bindings.vim index a2c8b11..038837a 100644 --- a/apps/neovim/bindings.vim +++ b/apps/neovim/bindings.vim @@ -117,6 +117,10 @@ nnoremap :Buffers " launch fzf for open buffers (files) nnoremap l :Buffers +if has("nvim") + au FileType fzf tnoremap +endif + " switch to previous buffer nnoremap h :b# diff --git a/apps/shell/bash/aliases.bash b/apps/shell/bash/aliases.bash index 1815d79..0ad56b3 100644 --- a/apps/shell/bash/aliases.bash +++ b/apps/shell/bash/aliases.bash @@ -121,7 +121,7 @@ alias logsr="sudo journalctl -r" alias logsf="sudo journalctl -f" alias bt="sudo bluetoothctl" alias btctl="bt" -alias btctl="sudo bluetoothctl" +alias pbcopy="clip" alias pbcopy="clip" alias pt="htop -t" # experimental htop tree-view-by-default alias resrc="source \$HOME/.bashrc" diff --git a/bin/app-launcher b/bin/app-launcher index ca31cc6..ef01591 100755 --- a/bin/app-launcher +++ b/bin/app-launcher @@ -1,30 +1,3 @@ #!/usr/bin/env sh -. "$DOTFILES_PATH/apps/de/polybar/run" --just-vars - -LAUNCHER_FONT="$BAR_FONT" -LAUNCHER_FONT_SIZE="$BAR_FONT_SIZE" -HIGHLIGHT_COLOR="$(xrq color4)" -HIGHLIGHT_FOREGROUND_COLOR="$(xrq background)" -BACKGROUND_COLOR=$(xrq background) -FOREGROUND_COLOR=$(xrq foreground) -GAP=$(xrq internalBorder) - -. maybe_source_env_file app-launcher - -rofi \ - -combi-modi run,window \ - -show combi \ - -modi combi \ - -font "$LAUNCHER_FONT $LAUNCHER_FONT_SIZE" \ - -padding $GAP \ - -bw "$BORDER_WIDTH" \ - -color-enabled \ - -color-window "$BACKGROUND_COLOR","$HIGHLIGHT_COLOR","$FOREGROUND_COLOR","$BACKGROUND_COLOR" \ - -color-normal "$BACKGROUND_COLOR","$FOREGROUND_COLOR","$BACKGROUND_COLOR","$HIGHLIGHT_COLOR","$HIGHLIGHT_FOREGROUND_COLOR" \ - -color-normal "$BACKGROUND_COLOR","$FOREGROUND_COLOR","$BACKGROUND_COLOR","$HIGHLIGHT_COLOR","$HIGHLIGHT_FOREGROUND_COLOR" \ - -color-active "$BACKGROUND_COLOR","$FOREGROUND_COLOR","$BACKGROUND_COLOR","$HIGHLIGHT_COLOR","$HIGHLIGHT_FOREGROUND_COLOR" \ - -color-urgent "$BACKGROUND_COLOR","$FOREGROUND_COLOR","$BACKGROUND_COLOR","$HIGHLIGHT_COLOR","$HIGHLIGHT_FOREGROUND_COLOR" \ - -monitor -4 \ - -width 600 \ - "$@" +rofi -combi-modi run,window -show combi -modi combi -sorting-method fzf --sort "$@" diff --git a/bin/fzfemoji b/bin/fzfemoji new file mode 100755 index 0000000..522a087 --- /dev/null +++ b/bin/fzfemoji @@ -0,0 +1,8 @@ +#!/usr/bin/env sh + +op="${1:--c}"; shift &>/dev/null +cd ~/.password-store || ( echo "Could not cd to ~/.password-store" && exit 1 ) +r="$(< "$HOME/.emoji.txt" fzf --height 40%)" +echo "Selected $r (it's in your clipboard)" +<<< $r awk '$0=$1' | tr -d '\n' | clip +cd - || return 1 diff --git a/bin/fzfp b/bin/fzfp new file mode 100755 index 0000000..4d6a34f --- /dev/null +++ b/bin/fzfp @@ -0,0 +1,8 @@ +#!/usr/bin/env sh + +op="${1:--c}"; shift &>/dev/null +cd ~/.password-store || ( echo "Could not cd to ~/.password-store" && exit 1 ) +pp="$(fd gpg | sd ".gpg" "" | fzf --height 40%)" +echo pass $op $pp +pass "$op" "$@" "$pp" +cd - || return 1 diff --git a/bin/lib/arch-linux/provisioning/3-extras.bash b/bin/lib/arch-linux/provisioning/3-extras.bash index 3f1bb24..23a8dfc 100755 --- a/bin/lib/arch-linux/provisioning/3-extras.bash +++ b/bin/lib/arch-linux/provisioning/3-extras.bash @@ -49,6 +49,9 @@ pacaur --needed -S \ libinput libinput-gestures `# Trackpad Control` \ xcape `# Escape Better` \ dunst `# Desktop Notifications` \ + rofimoji `# Emoji Picker` \ --noconfirm --noedit +curl -L -o "$HOME/.emoji.txt" https://lyte.dev/uploads/emoji.txt + # TODO: recommend systemd services? diff --git a/bin/lib/colors/xresources b/bin/lib/colors/xresources index 45d6593..8ea3328 100644 --- a/bin/lib/colors/xresources +++ b/bin/lib/colors/xresources @@ -39,3 +39,14 @@ *color13: base06 *color14: base0F *color15: base07 + +rofi.color-window: base00,base0D,base05,base00 +rofi.color-normal: base00,base05,base00,base0D,base00 +rofi.color-normal: base00,base05,base00,base0D,base00 +rofi.color-active: base00,base05,base00,base0D,base00 +rofi.color-urgent: base00,base05,base00,base0D,base00 + +bspwm.normal_border_color: base00 +bspwm.focused_border_color: base0D +bspwm.active_border_color: base0D +bspwm.presel_feedback_color: base0D diff --git a/bin/pipeline b/bin/pipeline index dff7961..9608c4a 100755 --- a/bin/pipeline +++ b/bin/pipeline @@ -65,3 +65,71 @@ nvim \ --cmd 'set updatetime=250' \ --cmd 'autocmd CursorHold,CursorHoldI silent write' \ --cmd "$(<<< "$job" tr "'" '"')" + +#!/usr/bin/env bash + +# SAVED_PIPELINE_DIR="$EDFP/pipelines" +# mkdir -p "$SAVED_PIPELINE_DIR" + +# if [[ ! -z "${1+x}" ]]; then +# pdir="$SAVED_PIPELINE_DIR/$1"; shift +# mkdir -p "$pdir" +# if [[ -z ${1+x} ]]; then +# td="$(mktemp -p "$pdir" -d "tmp_pipeline.XXXXXXXX")" +# cleanup_trap="rm -rf \"$td\"" +# else +# td="$pdir/$1"; shift +# mkdir -p "$td" +# fi +# transform="$pdir/transform" +# else +# td="$(mktemp --tmpdir -d pipeline.XXXXXXXX)" +# transform="$td/transform" +# cleanup_trap="rm -rf \"$td\"" +# fi + +# if [[ ! -e "$transform" ]]; then +# echo -e "#!/usr/bin/env bash\n# for ${td}\n\nbase64" > "$transform" +# fi + +# in="$td/in" +# if [[ ! -z "${1+x}" ]]; then +# in="${1}"; shift +# fi +# out="$td/out" +# if [[ ! -z "${1+x}" ]]; then +# out="${1}"; shift +# fi + +# # TODO: if no logging, log="/dev/null" +# log="$td/log" + +# chmod +x "$transform" +# echo "Hello World" > "$in" +# touch "$log" + +# fswi \ +# "bash -c 'cd \"$td\" && < \"$in\" \"$transform\" | tee \"$out\"'" \ +# 'in$|transform$' \ +# "$td" "$pdir" &> "$log" & +# watcher="$!" + +# if [[ -z ${cleanup_trap+x} ]]; then +# trap "kill \"$watcher\"" EXIT +# else +# trap "${cleanup_trap}; kill \"$watcher\"" EXIT +# fi + +# job="call jobstart(['inotifywait', '-m', '-e', 'close_write', '${out}'], {'on_stdout':{j,d,e->execute('checktime')}})" + +# # this will only autosave (and therefore autoreload) for the out buffer (since +# # it was opened last) - autosaving (and therefore autorunning) is potentially +# # very scary +# nvim \ +# --cmd 'set shm+=atIWF' \ +# --cmd 'set shm-=Oo' \ +# -o "$in" "$transform" "$out" \ +# --cmd 'set autoread' \ +# --cmd 'set updatetime=250' \ +# --cmd 'autocmd CursorHold,CursorHoldI silent write' \ +# --cmd "$(<<< "$job" tr "'" '"')" diff --git a/env/desktop/x/resources b/env/desktop/x/resources index dedd736..758ffac 100755 --- a/env/desktop/x/resources +++ b/env/desktop/x/resources @@ -1,16 +1,2 @@ -## *.font: xft:scientifica:size=11 -## *.faceName: xft:scientifica:size=11 -## URxvt.font: xft:scientifica:size=11 -## URxvt.faceName: xft:scientifica:size=11 - -*.font: xft:Iosevka Term:pixelsize=14,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 -*.boldFont: xft:Iosevka Term Semibold:pixelsize=14 - -## *.font: xft:curie:pixelsize=10,xft:Noto Emoji,xft:Font Awesome 5 Free,xft:FreeSans -## *.boldFont: xft:curie:pixelsize=10,xft:Noto Emoji,xft:Font Awesome 5 Free,xft:FreeSans - -## *.font: xft:scientifica:size=11 -## *.faceName: xft:scientifica:size=11 -## URxvt.font: xft:scientifica:size=11 -## URxvt.faceName: xft:scientifica:size=11 - +bspwm.reverse_desktop_ordering: 1 +polybar.display_monitor: DisplayPort-0 diff --git a/env/laptop/x/lodpi-resources b/env/laptop/x/lodpi-resources index 6ff83c5..faa6cfb 100755 --- a/env/laptop/x/lodpi-resources +++ b/env/laptop/x/lodpi-resources @@ -1,15 +1,6 @@ -## *.font: xft:Iosevka Nerd Font Mono:pixelsize=16,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 -## *.boldFont: xft:Iosevka Nerd Font Mono:style=bold:pixelsize=16,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 -## URxvt.font: xft:Iosevka Nerd Font Mono:pixelsize=16,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 -## URxvt.boldFont: xft:Iosevka Nerd Font Mono:style=bold:pixelsize=16,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 - -## *.font: xft:scientifica:pixelsize=11,xft:Iosevka Nerd Font Mono:pixelsize=12,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=11,xft:FreeSans:pixelsize=12 -## *.boldFont: xft:scientifica:pixelsize=11,xft:Iosevka Nerd Font Mono:style=bold:pixelsize=12,xft:Font Awesome 5 Free:pixelsize=11,xft:FreeSans:pixelsize=12 -## URxvt.font: xft:scientifica:pixelsize=11,xft:Iosevka Nerd Font Mono:pixelsize=12,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=11,xft:FreeSans:pixelsize=12 -## URxvt.boldFont: xft:scientifica:pixelsize=11,xft:Iosevka Nerd Font Mono:style=bold:pixelsize=12,xft:Font Awesome 5 Free:pixelsize=11,xft:FreeSans:pixelsize=12 - *.font: xft:curie:pixelsize=11,xft:Iosevka Nerd Font Mono:pixelsize=12,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=8,xft:FreeSans:pixelsize=12 *.boldFont: xft:curie:pixelsize=11,xft:Iosevka Nerd Font Mono:style=bold:pixelsize=12,xft:Font Awesome 5 Free:pixelsize=8,xft:FreeSans:pixelsize=12 + URxvt.font: xft:curie:pixelsize=11,xft:Iosevka Nerd Font Mono:pixelsize=12,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=8,xft:FreeSans:pixelsize=12 URxvt.boldFont: xft:curie:pixelsize=11,xft:Iosevka Nerd Font Mono:style=bold:pixelsize=12,xft:Font Awesome 5 Free:pixelsize=8,xft:FreeSans:pixelsize=12 @@ -17,3 +8,5 @@ dpi: 92 .dpi: 92 *dpi: 92 Xft.dpi: 92 + +polybar.display_monitor: DP1 diff --git a/env/laptop/x/resources b/env/laptop/x/resources index 4ab0276..9617455 100755 --- a/env/laptop/x/resources +++ b/env/laptop/x/resources @@ -1,10 +1,13 @@ *.font: xft:Iosevka Nerd Font Mono:pixelsize=12,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 *.boldFont: xft:Iosevka Nerd Font Mono:style=bold:pixelsize=12,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 + URxvt.font: xft:Iosevka Nerd Font Mono:pixelsize=32,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 URxvt.boldFont: xft:Iosevka Nerd Font Mono:style=bold:pixelsize=32,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14 -Emacs.font: Iosevka Term -Emacs.faceName: Iosevka Term + dpi: 190 .dpi: 190 *dpi: 190 Xft.dpi: 190 + +polybar.height: 80 +polybar.display_monitor: eDP1 diff --git a/readme.md b/readme.md index 5909a39..b550d95 100644 --- a/readme.md +++ b/readme.md @@ -17,6 +17,10 @@ myself when setting up a new machine. * Read the warning, obey it, backup your files, *then* agree * **Optional**: Reboot once the script finishes +**NOTE**: I'm in the middle of migrating from urxvt+bash to kitty+fish (and +a less anything-dependent system in general). Lots of things are broken. The +setup script probably no longer sets up *absolutely everything*. + ## Priorities I have specific needs and desires (as does any developer) and I will lay those