diff --git a/.gitignore b/.gitignore
index 56c0af8..88c7165 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,14 +1,3 @@
nvim/plugin
-qutebrowser/bookmarks
-qutebrowser/quickmarks
-qutebrowser/qsettings
-qutebrowser/qutepocket.secrets
-vnc/tigervnc.history
-buildfiles/st/st
-buildfiles/x265/x265_git
-buildfiles/x265/build
-buildfiles/x265/build-10
-buildfiles/x265/build-12
-buildfiles/newtabber/newtabber
+newtabber/newtabber
termux/font.ttf
-btop/btop.log
diff --git a/bat/themes/Catppuccin-mocha.tmTheme b/bat/themes/Catppuccin-mocha.tmTheme
deleted file mode 100644
index d5e61a8..0000000
--- a/bat/themes/Catppuccin-mocha.tmTheme
+++ /dev/null
@@ -1,960 +0,0 @@
-
-
-
-
- name
- Catppuccin
- settings
-
-
- settings
-
- foreground
- #cdd6f4
- background
- #1e1e2e
- caret
- #bac2de
- invisibles
- #a6adc8
- gutterForeground
- #9399b2
- gutterForegroundHighlight
- #a6e3a1
- lineHighlight
- #1e1e2e
- selection
- #6c7086
- selectionBorder
- #1e1e2e
- activeGuide
- #fab387
- findHighlightForeground
- #181825
- findHighlight
- #f9e2af
- bracketsForeground
- #9399b2
- bracketContentsForeground
- #9399b2
-
-
-
- name
- Comment
- scope
- comment
- settings
-
- foreground
- #6c7086
- fontStyle
- italic
-
-
-
- name
- String
- scope
- string
- settings
-
- foreground
- #a6e3a1
- fontStyle
-
-
-
-
- name
- String regex
- scope
- string.regexp
- settings
-
- foreground
- #fab387
- fontStyle
-
-
-
-
- name
- Number
- scope
- constant.numeric
- settings
-
- foreground
- #fab387
- fontStyle
-
-
-
-
- name
- Boolean
- scope
- constant.language.boolean
- settings
-
- foreground
- #fab387
- fontStyle
- bold italic
-
-
-
- name
- Built-in constant
- scope
- constant.language
- settings
-
- foreground
- #b4befe
- fontStyle
- italic
-
-
-
- name
- Built-in function
- scope
- support.function.builtin
- settings
-
- foreground
- #fab387
- fontStyle
- italic
-
-
-
- name
- User-defined constant
- scope
- variable.other.constant
- settings
-
- foreground
- #fab387
- fontStyle
-
-
-
-
- name
- Variable
- scope
- variable
- settings
-
-
-
-
- name
- Keyword
- scope
- keyword
- settings
-
- foreground
- #f38ba8
- fontStyle
- italic
-
-
-
- name
- Conditional/loop
- scope
- keyword.control.loop, keyword.control.conditional, keyword.control.c++
- settings
-
- foreground
- #cba6f7
- fontStyle
- bold
-
-
-
- name
- Return
- scope
- keyword.control.return, keyword.control.flow.return
- settings
-
- foreground
- #f5c2e7
- fontStyle
- bold
-
-
-
- name
- Exception
- scope
- support.type.exception
- settings
-
- foreground
- #fab387
- fontStyle
- italic
-
-
-
- name
- Operator
- scope
- keyword.operator, punctuation.accessor
- settings
-
- foreground
- #89dceb
- fontStyle
- bold
-
-
-
- name
- Punctuation separator
- scope
- punctuation.separator
- settings
-
- foreground
- #94e2d5
- fontStyle
-
-
-
-
- name
- Punctuation terminator
- scope
- punctuation.terminator
- settings
-
- foreground
- #94e2d5
- fontStyle
-
-
-
-
- name
- Punctuation bracket
- scope
- punctuation.section
- settings
-
- foreground
- #9399b2
- fontStyle
-
-
-
-
- name
- Include
- scope
- keyword.control.import.include
- settings
-
- foreground
- #94e2d5
- fontStyle
- italic
-
-
-
- name
- Storage
- scope
- storage
- settings
-
- foreground
- #f38ba8
- fontStyle
-
-
-
-
- name
- Storage type
- scope
- storage.type
- settings
-
- foreground
- #f9e2af
- fontStyle
- italic
-
-
-
- name
- Storage modifier
- scope
- storage.modifier
- settings
-
- foreground
- #f38ba8
- fontStyle
-
-
-
-
- name
- Storage type namespace
- scope
- entity.name.namespace, meta.path
- settings
-
- foreground
- #f5e0dc
- fontStyle
- italic
-
-
-
- name
- Storage type class
- scope
- storage.type.class
- settings
-
- foreground
- #f5e0dc
- fontStyle
- italic
-
-
-
- name
- Label
- scope
- entity.name.label
- settings
-
- foreground
- #89b4fa
- fontStyle
-
-
-
-
- name
- Keyword class
- scope
- keyword.declaration.class
- settings
-
- foreground
- #f38ba8
- fontStyle
- italic
-
-
-
- name
- Class name
- scope
- entity.name.class, meta.toc-list.full-identifier
- settings
-
- foreground
- #89dceb
- fontStyle
-
-
-
-
- name
- Inherited class
- scope
- entity.other.inherited-class
- settings
-
- foreground
- #89dceb
- fontStyle
- italic
-
-
-
- name
- Function name
- scope
- entity.name.function, variable.function
- settings
-
- foreground
- #89b4fa
- fontStyle
- italic
-
-
-
- name
- Function macro
- scope
- entity.name.function.preprocessor
- settings
-
- foreground
- #f38ba8
- fontStyle
-
-
-
-
- name
- Macro directive - ifdef
- scope
- keyword.control.import
- settings
-
- foreground
- #f38ba8
- fontStyle
-
-
-
-
- name
- Constructor
- scope
- entity.name.function.constructor, entity.name.function.destructor
- settings
-
- foreground
- #b4befe
- fontStyle
-
-
-
-
- name
- Function argument
- scope
- variable.parameter.function
- settings
-
- foreground
- #f5e0dc
- fontStyle
- italic
-
-
-
- name
- Function declaration
- scope
- keyword.declaration.function
- settings
-
- foreground
- #eba0ac
- fontStyle
- italic
-
-
-
- name
- Library function
- scope
- support.function
- settings
-
- foreground
- #89dceb
- fontStyle
-
-
-
-
- name
- Library constant
- scope
- support.constant
- settings
-
- foreground
- #89b4fa
- fontStyle
-
-
-
-
- name
- Library class/type
- scope
- support.type, support.class
- settings
-
- foreground
- #89b4fa
- fontStyle
- italic
-
-
-
- name
- Library variable
- scope
- support.other.variable
- settings
-
- fontStyle
-
-
-
-
- name
- Variable function
- scope
- variable.function
- settings
-
- foreground
- #89b4fa
- fontStyle
- italic
-
-
-
- name
- Variable parameter
- scope
- variable.parameter
- settings
-
- foreground
- #f5e0dc
- fontStyle
- italic
-
-
-
- name
- Variable other
- scope
- variable.other
- settings
-
- foreground
- #cdd6f4
- fontStyle
- italic
-
-
-
- name
- Variable field
- scope
- variable.other.member
- settings
-
- foreground
- #f5e0dc
- fontStyle
-
-
-
-
- name
- Variable language
- scope
- variable.language
- settings
-
- foreground
- #94e2d5
- fontStyle
-
-
-
-
- name
- Tag name
- scope
- entity.name.tag
- settings
-
- foreground
- #fab387
- fontStyle
-
-
-
-
- name
- Tag attribute
- scope
- entity.other.attribute-name
- settings
-
- foreground
- #cba6f7
- fontStyle
- italic
-
-
-
- name
- Tag delimiter
- scope
- punctuation.definition.tag
- settings
-
- foreground
- #eba0ac
- fontStyle
-
-
-
-
- name
- Markdown URL
- scope
- markup.underline.link.markdown
- settings
-
- foreground
- #f5e0dc
- fontStyle
- italic underline
-
-
-
- name
- Markdown reference
- scope
- meta.link.inline.description
- settings
-
- foreground
- #b4befe
- fontStyle
- bold
-
-
-
- name
- Markdown literal
- scope
- comment.block.markdown, meta.code-fence, markup.raw.code-fence, markup.raw.inline
- settings
-
- foreground
- #94e2d5
- fontStyle
- italic
-
-
-
- name
- Markdown title
- scope
- punctuation.definition.heading, entity.name.section
- settings
-
- foreground
- #89b4fa
- fontStyle
- bold
-
-
-
- name
- Markdown emphasis
- scope
- markup.italic
- settings
-
- foreground
- #eba0ac
- fontStyle
- italic
-
-
-
- name
- Markdown strong
- scope
- markup.bold
- settings
-
- foreground
- #eba0ac
- fontStyle
- bold
-
-
-
- name
- Escape
- scope
- constant.character.escape
- settings
-
- foreground
- #f5c2e7
- fontStyle
-
-
-
-
- name
- Bash built-in function
- scope
- source.shell.bash meta.function.shell meta.compound.shell meta.function-call.identifier.shell
- settings
-
- foreground
- #f5c2e7
- fontStyle
-
-
-
-
- name
- Bash parameter
- scope
- variable.language.shell
- settings
-
- foreground
- #f38ba8
- fontStyle
- italic
-
-
-
- name
- Lua field
- scope
- source.lua meta.function.lua meta.block.lua meta.mapping.value.lua meta.mapping.key.lua string.unquoted.key.lua
- settings
-
- foreground
- #b4befe
- fontStyle
- italic
-
-
-
- name
- Lua constructor
- scope
- source.lua meta.function.lua meta.block.lua meta.mapping.key.lua string.unquoted.key.lua
- settings
-
- foreground
- #f2cdcd
- fontStyle
-
-
-
-
- name
- Java constant
- scope
- entity.name.constant.java
- settings
-
- foreground
- #94e2d5
- fontStyle
-
-
-
-
- name
- CSS property
- scope
- support.type.property-name.css
- settings
-
- foreground
- #f2cdcd
- fontStyle
- italic
-
-
-
- name
- CSS constant
- scope
- support.constant.property-value.css
- settings
-
- foreground
- #cdd6f4
- fontStyle
-
-
-
-
- name
- CSS suffix
- scope
- constant.numeric.suffix.css, keyword.other.unit.css
- settings
-
- foreground
- #94e2d5
- fontStyle
- italic
-
-
-
- name
- CSS variable property
- scope
- variable.other.custom-property.name.css, support.type.custom-property.name.css, punctuation.definition.custom-property.css
- settings
-
- foreground
- #94e2d5
- fontStyle
-
-
-
-
- name
- SCSS tag
- scope
- entity.name.tag.css
- settings
-
- foreground
- #b4befe
- fontStyle
-
-
-
-
- name
- SASS variable
- scope
- variable.other.sass
- settings
-
- foreground
- #94e2d5
- fontStyle
-
-
-
-
- name
- Invalid
- scope
- invalid
- settings
-
- foreground
- #cdd6f4
- background
- #f38ba8
- fontStyle
-
-
-
-
- name
- Invalid deprecated
- scope
- invalid.deprecated
- settings
-
- foreground
- #cdd6f4
- background
- #cba6f7
- fontStyle
-
-
-
-
- name
- Diff header
- scope
- meta.diff, meta.diff.header
- settings
-
- foreground
- #6c7086
- fontStyle
-
-
-
-
- name
- Diff deleted
- scope
- markup.deleted
- settings
-
- foreground
- #f38ba8
- fontStyle
-
-
-
-
- name
- Diff inserted
- scope
- markup.inserted
- settings
-
- foreground
- #a6e3a1
- fontStyle
-
-
-
-
- name
- Diff changed
- scope
- markup.changed
- settings
-
- foreground
- #f9e2af
- fontStyle
-
-
-
-
- name
- Message error
- scope
- message.error
- settings
-
- foreground
- #f38ba8
- fontStyle
-
-
-
-
- uuid
- 4d0379b5-ef82-467b-b8b8-365889420646
- colorSpaceName
- sRGB
- semanticClass
- theme.dark.Catppuccin
- author
- BrunDerSchwarzmagier
-
-
\ No newline at end of file
diff --git a/bin/audio-output-swap b/bin/audio-output-swap
deleted file mode 100755
index 350b330..0000000
--- a/bin/audio-output-swap
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/usr/bin/env bash
-
-bluecard=$(pactl list cards | grep 'Name: bluez_card' | awk '{ print $2 }')
-
-if [ "$1" = "fixbt" ] && [ -n "$bluecard" ]; then
- pactl set-card-profile "$bluecard" a2dp-sink
- exit
-fi
-
-hdmisink=$(pactl list sinks | grep 'Name: ' | grep hdmi | awk '{ print $2 }')
-bluesink=$(pactl list sinks | grep 'Name: ' | grep bluez | awk '{ print $2 }')
-analogsink=$(pactl list sinks | grep 'Name: ' | grep analog | awk '{ print $2 }')
-
-currentsink=$(pactl get-default-sink)
-
-case "$currentsink" in
- "$hdmisink") nextsink="${bluesink:-$analogsink}";;
- *) nextsink="$hdmisink";;
-esac
-
-pactl set-default-sink "$nextsink"
-
-if [ "$nextsink" = "$bluesink" ]; then
- pactl set-card-profile "$bluecard" a2dp-sink
-fi
diff --git a/bin/batman b/bin/batman
deleted file mode 100755
index 4244604..0000000
--- a/bin/batman
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-col -bx < "$1" | bat --language man -p
diff --git a/bin/battlvl b/bin/battlvl
deleted file mode 100755
index c7a5fe5..0000000
--- a/bin/battlvl
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/sh
-
-# battery percentage
-battpct="$(upower --show-info $(upower --enumerate | grep -i 'BAT') | grep -E "percentage" | awk '{print $2}')"
-battpct="${battpct%\%}"
-
-# battery status (charging/charged/etc)
-batstat="$(upower --show-info $(upower --enumerate | grep -i 'BAT') | grep -E "state" | awk '{print $2}')"
-
-notify-send "Battery: ${battpct}% ($batstat)"
diff --git a/bin/bwmenu b/bin/bwmenu
deleted file mode 100755
index a9c342d..0000000
--- a/bin/bwmenu
+++ /dev/null
@@ -1,500 +0,0 @@
-#!/usr/bin/env bash
-# Rofi extension for BitWarden-cli
-NAME="$(basename "$0")"
-VERSION="0.4"
-DEFAULT_CLEAR=5
-BW_HASH=
-
-# Options
-CLEAR=$DEFAULT_CLEAR # Clear password after N seconds (0 to disable)
-SHOW_PASSWORD=no # Show part of the password in the notification
-AUTO_LOCK=900 # 15 minutes, default for bitwarden apps
-
-# Holds the available items in memory
-ITEMS=
-
-# Stores which command will be used to emulate keyboard type
-AUTOTYPE_MODE=
-
-# Stores which command will be used to deal with clipboards
-CLIPBOARD_MODE=
-
-# Specify what happens when pressing Enter on an item.
-# Defaults to copy_password, can be changed to (auto_type all) or (auto_type password)
-ENTER_CMD=copy_password
-
-# Keyboard shortcuts
-KB_SYNC="Alt+r"
-KB_URLSEARCH="Alt+u"
-KB_NAMESEARCH="Alt+n"
-KB_FOLDERSELECT="Alt+c"
-KB_TOTPCOPY="Alt+t"
-KB_LOCK="Alt+L"
-KB_TYPEALL="Alt+1"
-KB_TYPEUSER="Alt+2"
-KB_TYPEPASS="Alt+3"
-
-# Item type classification
-TYPE_LOGIN=1
-TYPE_NOTE=2
-TYPE_CARD=3
-TYPE_IDENTITY=4
-
-# Populated in parse_cli_arguments
-ROFI_OPTIONS=()
-DEDUP_MARK="(+)"
-
-# Source helper functions
-DIR="$(dirname "$(readlink -f "$0")")"
-source "$DIR/lib-bwmenu"
-
-ask_password() {
- mpw=$(printf '' | rofi -dmenu -p "Master Password" -password -lines 0) || exit $?
- echo "$mpw" | bw unlock 2>/dev/null | grep 'export' | sed -E 's/.*export BW_SESSION="(.*==)"$/\1/' || exit_error $? "Could not unlock vault"
-}
-
-get_session_key() {
- if [ $AUTO_LOCK -eq 0 ]; then
- keyctl purge user bw_session &>/dev/null
- BW_HASH=$(ask_password)
- else
- if ! key_id=$(keyctl request user bw_session 2>/dev/null); then
- session=$(ask_password)
- [[ -z "$session" ]] && exit_error 1 "Could not unlock vault"
- key_id=$(echo "$session" | keyctl padd user bw_session @u)
- fi
-
- if [ $AUTO_LOCK -gt 0 ]; then
- keyctl timeout "$key_id" $AUTO_LOCK
- fi
- BW_HASH=$(keyctl pipe "$key_id")
- fi
-}
-
-# source the hash file to gain access to the BitWarden CLI
-# Pre fetch all the items
-load_items() {
- if ! ITEMS=$(bw list items --session "$BW_HASH" 2>/dev/null); then
- exit_error $? "Could not load items"
- fi
-}
-
-exit_error() {
- local code="$1"
- local message="$2"
-
- rofi -e "$message"
- exit "$code"
-}
-
-# Show the Rofi menu with options
-# Reads items from stdin
-rofi_menu() {
-
- actions=(
- -kb-custom-1 $KB_SYNC
- -kb-custom-2 $KB_NAMESEARCH
- -kb-custom-3 $KB_URLSEARCH
- -kb-custom-4 $KB_FOLDERSELECT
- -kb-custom-8 $KB_TOTPCOPY
- -kb-custom-9 $KB_LOCK
- )
-
- msg="$KB_SYNC: sync | $KB_URLSEARCH: urls | $KB_NAMESEARCH: names | $KB_FOLDERSELECT: folders | $KB_TOTPCOPY: totp | $KB_LOCK: lock"
-
- [[ ! -z "$AUTOTYPE_MODE" ]] && {
- actions+=(
- -kb-custom-5 $KB_TYPEALL
- -kb-custom-6 $KB_TYPEUSER
- -kb-custom-7 $KB_TYPEPASS
- )
- msg+="
-$KB_TYPEALL: Type all | $KB_TYPEUSER: Type user | $KB_TYPEPASS: Type pass"
- }
-
- rofi -dmenu -p 'Name' \
- -i -no-custom \
- -mesg "$msg" \
- "${actions[@]}" \
- "${ROFI_OPTIONS[@]}"
-}
-
-# Show items in a rofi menu by name of the item
-show_items() {
- if item=$(
- echo "$ITEMS" \
- | jq -r ".[] | select( has( \"login\" ) ) | \"\\(.name)\"" \
- | dedup_lines \
- | rofi_menu
- ); then
- item_array="$(array_from_name "$item")"
- "${ENTER_CMD[@]}" "$item_array"
- else
- rofi_exit_code=$?
- item_array="$(array_from_name "$item")"
- on_rofi_exit "$rofi_exit_code" "$item_array"
- fi
-}
-
-# Similar to show_items() but using the item's ID for deduplication
-show_full_items() {
- if item=$(
- echo "$ITEMS" \
- | jq -r ".[] | select( has( \"login\" )) | \"\\(.id): name: \\(.name), username: \\(.login.username)\"" \
- | rofi_menu
- ); then
- item_id="$(echo "$item" | cut -d ':' -f 1)"
- item_array="$(array_from_id "$item_id")"
- "${ENTER_CMD[@]}" "$item_array"
- else
- rofi_exit_code=$?
- item_id="$(echo "$item" | cut -d ':' -f 1)"
- item_array="$(array_from_id "$item_id")"
- on_rofi_exit "$rofi_exit_code" "$item_array"
- fi
-}
-
-# Show items in a rofi menu by url of the item
-# if url occurs in multiple items, show the menu again with those items only
-show_urls() {
- if url=$(
- echo "$ITEMS" \
- | jq -r '.[] | select(has("login")) | .login | select(has("uris")).uris | .[].uri' \
- | rofi_menu
- ); then
- item_array="$(bw list items --url "$url" --session "$BW_HASH")"
- "${ENTER_CMD[@]}" "$item_array"
- else
- rofi_exit_code="$?"
- item_array="$(bw list items --url "$url" --session "$BW_HASH")"
- on_rofi_exit "$rofi_exit_code" "$item_array"
- fi
-}
-
-show_folders() {
- folders=$(bw list folders --session "$BW_HASH")
- if folder=$(echo "$folders" | jq -r '.[] | .name' | rofi_menu); then
-
- folder_id=$(echo "$folders" | jq -r ".[] | select(.name == \"$folder\").id")
-
- ITEMS=$(bw list items --folderid "$folder_id" --session "$BW_HASH")
- show_items
- else
- rofi_exit_code="$?"
- folder_id=$(echo "$folders" | jq -r ".[] | select(.name == \"$folder\").id")
- item_array=$(bw list items --folderid "$folder_id" --session "$BW_HASH")
- on_rofi_exit "$rofi_exit_code" "$item_array"
- fi
-}
-
-# re-sync the BitWarden items with the server
-sync_bitwarden() {
- bw sync --session "$BW_HASH" &>/dev/null || exit_error 1 "Failed to sync bitwarden"
-
- load_items
- show_items
-}
-
-# Evaluate the rofi exit codes
-on_rofi_exit() {
- case "$1" in
- 10) sync_bitwarden;;
- 11) load_items; show_items;;
- 12) show_urls;;
- 13) show_folders;;
- 17) copy_totp "$2";;
- 18) lock_vault;;
- 14) auto_type all "$2";;
- 15) auto_type username "$2";;
- 16) auto_type password "$2";;
- *) exit "$1";;
- esac
-}
-
-# Auto type using xdotool/ydotool
-# $1: what to type; all, username, password
-# $2: item array
-auto_type() {
- if not_unique "$2"; then
- ITEMS="$2"
- show_full_items
- else
- sleep 0.3
- case "$1" in
- all)
- type_word "$(echo "$2" | jq -r '.[0].login.username')"
- type_tab
- type_word "$(echo "$2" | jq -r '.[0].login.password')"
- ;;
- username)
- type_word "$(echo "$2" | jq -r '.[0].login.username')"
- ;;
- password)
- type_word "$(echo "$2" | jq -r '.[0].login.password')"
- ;;
- esac
- fi
-
-}
-
-# Set $AUTOTYPE_MODE to a command that will emulate keyboard input
-select_autotype_command() {
- if [[ -z "$AUTOTYPE_MODE" ]]; then
- if [ "$XDG_SESSION_TYPE" = "wayland" ] && hash ydotool 2>/dev/null; then
- AUTOTYPE_MODE=(sudo ydotool)
- elif [ "$XDG_SESSION_TYPE" != "wayland" ] && hash xdotool 2>/dev/null; then
- AUTOTYPE_MODE=xdotool
- fi
- fi
-}
-
-type_word() {
- "${AUTOTYPE_MODE[@]}" type "$1"
-}
-
-type_tab() {
- "${AUTOTYPE_MODE[@]}" key Tab
-}
-
-
-# Set $CLIPBOARD_MODE to a command that will put stdin into the clipboard.
-select_copy_command() {
- if [[ -z "$CLIPBOARD_MODE" ]]; then
- if [ "$XDG_SESSION_TYPE" = "wayland" ]; then
- hash wl-copy 2>/dev/null && CLIPBOARD_MODE=wayland
- elif hash xclip 2>/dev/null; then
- CLIPBOARD_MODE=xclip
- elif hash xsel 2>/dev/null; then
- CLIPBOARD_MODE=xsel
- fi
- [ -z "$CLIPBOARD_MODE" ] && exit_error 1 "No clipboard command found. Please install either xclip, xsel, or wl-clipboard."
- fi
-}
-
-clipboard-set() {
- clipboard-${CLIPBOARD_MODE}-set
-}
-
-clipboard-get() {
- clipboard-${CLIPBOARD_MODE}-get
-}
-
-clipboard-clear() {
- clipboard-${CLIPBOARD_MODE}-clear
-}
-
-clipboard-xclip-set() {
- xclip -selection clipboard -r
-}
-
-clipboard-xclip-get() {
- xclip -selection clipboard -o
-}
-
-clipboard-xclip-clear() {
- echo -n "" | xclip -selection clipboard -r
-}
-
-clipboard-xsel-set() {
- xsel --clipboard --input
-}
-
-clipboard-xsel-get() {
- xsel --clipboard
-}
-
-clipboard-xsel-clear() {
- xsel --clipboard --delete
-}
-
-clipboard-wayland-set() {
- wl-copy
-}
-
-clipboard-wayland-get() {
- wl-paste
-}
-
-clipboard-wayland-clear() {
- wl-copy --clear
-}
-
-# Copy the password
-# copy to clipboard and give the user feedback that the password is copied
-# $1: json array of items
-copy_password() {
- if not_unique "$1"; then
- ITEMS="$1"
- show_full_items
- else
- pass="$(echo "$1" | jq -r '.[0].login.password')"
-
- show_copy_notification "$(echo "$1" | jq -r '.[0]')"
- echo -n "$pass" | clipboard-set
-
- if [[ $CLEAR -gt 0 ]]; then
- sleep "$CLEAR"
- if [[ "$(clipboard-get)" == "$pass" ]]; then
- clipboard-clear
- fi
- fi
- fi
-}
-
-# Copy the TOTP
-# $1: item array
-copy_totp() {
- if not_unique "$1"; then
- ITEMS="$item_array"
- show_full_items
- else
- id=$(echo "$1" | jq -r ".[0].id")
-
- if ! totp=$(bw --session "$BW_HASH" get totp "$id"); then
- exit_error 1 "$totp"
- fi
-
- echo -n "$totp" | clipboard-set
- notify-send "TOTP Copied"
- fi
-}
-
-# Lock the vault by purging the key used to store the session hash
-lock_vault() {
- keyctl purge user bw_session &>/dev/null
-}
-
-# Show notification about the password being copied.
-# $1: json item
-show_copy_notification() {
- local title
- local body=""
- local extra_options=()
-
- title="$(echo "$1" | jq -r '.name') copied"
-
- if [[ $SHOW_PASSWORD == "yes" ]]; then
- pass=$(echo "$1" | jq -r '.login.password')
- body="${pass:0:4}****"
- fi
-
- if [[ $CLEAR -gt 0 ]]; then
- body="$body
Will be cleared in ${CLEAR} seconds."
- # Keep notification visible while the clipboard contents are active.
- extra_options+=("-t" "$((CLEAR * 1000))")
- fi
- # not sure if icon will be present everywhere, /usr/share/icons is default icon location
- notify-send "$title" "$body" "${extra_options[@]}" -i /usr/share/icons/hicolor/64x64/apps/bitwarden.png
-}
-
-parse_cli_arguments() {
- # Use GNU getopt to parse command line arguments
- if ! ARGUMENTS=$(getopt -o c:C --long auto-lock:,clear:,no-clear,show-password,state-path:,help,version -- "$@"); then
- exit_error 1 "Failed to parse command-line arguments"
- fi
- eval set -- "$ARGUMENTS"
-
- while true; do
- case "$1" in
- --help )
- cat <<-USAGE
-$NAME $VERSION
-
-Usage:
- $NAME [options] -- [rofi options]
-
-Options:
- --help
- Show this help text and exit.
-
- --version
- Show version information and exit.
-
- --auto-lock
- Automatically lock the Vault seconds after last unlock.
- Use 0 to lock immediatly.
- Use -1 to disable.
- Default: 900 (15 minutes)
-
- -c , --clear , --clear=
- Clear password from clipboard after this many seconds.
- Defaults: ${DEFAULT_CLEAR} seconds.
-
- -C, --no-clear
- Don't automatically clear the password from the clipboard. This disables
- the default --clear option.
-
- --show-password
- Show the first 4 characters of the copied password in the notification.
-
-Quick Actions:
- When hovering over an item in the rofi menu, you can make use of Quick Actions.
-
- $KB_SYNC Resync your vault
-
- $KB_URLSEARCH Search through urls
- $KB_NAMESEARCH Search through names
- $KB_FOLDERSELECT Search through folders
-
- $KB_TOTPCOPY Copy the TOTP
- $KB_TYPEALL Autotype the username and password [needs xdotool or ydotool]
- $KB_TYPEUSER Autotype the username [needs xdotool or ydotool]
- $KB_TYPEPASS Autotype the password [needs xdotool or ydotool]
-
- $KB_LOCK Lock your vault
-
-Examples:
- # Default options work well
- $NAME
-
- # Immediatly lock the Vault after use
- $NAME --auto-lock 0
-
- # Never lock the Vault
- $NAME --auto-lock -1
-
- # Place rofi on top of screen, like a Quake console
- $NAME -- -location 2
-USAGE
- shift
- exit 0
- ;;
- --version )
- echo "$NAME $VERSION"
- shift
- exit 0
- ;;
- --auto-lock )
- AUTO_LOCK=$2
- shift 2
- ;;
- -c | --clear )
- CLEAR="$2"
- shift 2
- ;;
- -C | --no-clear )
- CLEAR=0
- shift
- ;;
- --show-password )
- SHOW_PASSWORD=yes
- shift
- ;;
- -- )
- shift
- ROFI_OPTIONS=("$@")
- break
- ;;
- * )
- exit_error 1 "Unknown option $1"
- esac
- done
-}
-
-parse_cli_arguments "$@"
-
-get_session_key
-select_autotype_command
-select_copy_command
-load_items
-show_items
diff --git a/bin/lib-bwmenu b/bin/lib-bwmenu
deleted file mode 100644
index ca2d234..0000000
--- a/bin/lib-bwmenu
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-# Helper functions
-
-# Extract item or items matching .name, including deduplication
-# $1: item name, prepended or not with deduplication mark
-array_from_name() {
- item_name="$(echo "$1" | sed "s/$DEDUP_MARK //")"
- echo "$ITEMS" | jq -r ". | map(select((.name == \"$item_name\") and (.type == $TYPE_LOGIN)))"
-}
-
-# Extract item matching .id
-# $1: string starting with ".id:"
-array_from_id() {
- echo "$ITEMS" | jq -r ". | map(select(.id == \"$1\"))"
-}
-
-# Count the number of items in an array. Return true if more than 1 or none
-# $1: Array of items
-not_unique() {
- item_count=$(echo "$1" | jq -r '. | length')
- ! [[ $item_count -eq 1 ]]
-}
-
-# Pipe a document and deduplicate lines.
-# Mark those duplicated by prepending $DEDUP_MARK
-dedup_lines() {
- sort | uniq -c \
- | sed "s/^\s*1 //" \
- | sed -r "s/^\s*[0-9]+ /$DEDUP_MARK /"
-}
diff --git a/bin/quake-term b/bin/quake-term
deleted file mode 100755
index 1dba51f..0000000
--- a/bin/quake-term
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/env bash
-
-winid=$(xdotool search --classname QuakeConsole)
-mongeom=$(herbstclient attr monitors.focus.geometry)
-monw=${mongeom%x*}
-monw=$(( monw - 4 ))
-curtag=$(herbstclient attr tags.focus.name)
-
-if [ -z "$winid" ]; then
- (
- rules=( floating=on floating_geometry="${monw}x512+1+1" )
- herbstclient rule once pid=$BASHPID maxage=10 "${rules[@]}"
- exec st -c QuakeConsole -n QuakeConsole -t QuakeConsole
- ) &
-else
- hcid=$(printf "0x%x" "$winid")
- visible=$(herbstclient attr clients."$hcid".visible)
- wintag=$(herbstclient attr clients."$hcid".tag)
- if [ "$visible" = "false" ] || [ "$wintag" != "$curtag" ]; then
- herbstclient chain , lock , set_attr clients."$hcid".floating_geometry "${monw}x512+1+1" , bring "$winid" , unlock
- else
- herbstclient set_attr clients."$hcid".minimized true
- fi
-fi
diff --git a/bin/stickyctl b/bin/stickyctl
deleted file mode 100755
index 6602f77..0000000
--- a/bin/stickyctl
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/usr/bin/env sh
-
-VERSION="0.0.2"
-
-usage() {
- echo 'stickyctl'
- echo
- echo "Version: $VERSION"
- echo
- echo 'stickyctl is a script to manage making windows (floating'
- echo 'or tiled) sticky in herbstluftwm so it is visible on any'
- echo 'tag.'
- echo
- echo 'Herbstluftwm autostart requirements:'
- echo 'The following attributes need to be defined in the'
- echo 'autostart file. This holds the window ID of the sticky'
- echo 'window. It should be of type string'
- echo ' my_sticky'
- echo
- echo 'Usage:'
- echo ' stick Makes the focused window sticky.'
- echo
- echo ' unstick Clears the window ID and un-stick the'
- echo ' window.'
- echo
- echo ' get-sticky Called when switching tags and gets'
- echo ' the sticky window and pulls it to the'
- echo ' current tag.'
- echo
- echo ' status Shows if a window is sticky. Use with'
- echo ' status bars.'
- echo
- echo ' locate Focuses the sticky window.'
- echo
- echo ' reset Resets the my_sticky attribute in case'
- echo ' the sticky window is closed without'
- echo ' un-sticking it.'
-
- exit 0
-}
-
-hc() {
- herbstclient "$@"
-}
-
-case "$@" in
- stick)
- hc set_attr my_sticky $(hc attr clients.focus.winid)
- notify-send -u normal "Sticky" "Window is STICKY"
- ;;
- unstick)
- hc set_attr my_sticky ''
- notify-send -u normal "Sticky" "Window is NOT STICKY"
- ;;
- get-sticky)
- focused=$(hc get_attr clients.focus.winid)
- hc bring $(hc attr my_sticky)
- hc jumpto $focused
- ;;
- status)
- [[ -n $(hc attr my_sticky) ]] && echo "%{F#ffff52} %{F-} |" || echo ""
- ;;
- locate)
- hc jumpto "$(hc attr my_sticky)"
- ;;
- reset)
- hc set_attr my_sticky ''
- notify-send -u critical -t 5000 "Sticky" "Sticky-Control is RESET"
- ;;
- *)
- usage
- ;;
-esac
diff --git a/bin/timew-backup b/bin/timew-backup
deleted file mode 100755
index fc6bb09..0000000
--- a/bin/timew-backup
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/usr/bin/env bash
-
-cd ~/.timewarrior/
-git add --all .
-git commit -m 'timew-backup'
-git push
diff --git a/bin/webcam-fix b/bin/webcam-fix
deleted file mode 100755
index 998bd7b..0000000
--- a/bin/webcam-fix
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/usr/bin/env bash
-
-sudo modprobe v4l2loopback devices=1 exclusive_caps=1 video_nr=4 card_label="virt_webcam"
-ffmpeg -f v4l2 -input_format mjpeg -framerate 30 -video_size 1280x720 -i /dev/video-webcam -vcodec copy -pix_fmt yuyv422 -f v4l2 /dev/video4
-sudo rmmod v4l2loopback
diff --git a/bin/xnots-toggle b/bin/xnots-toggle
deleted file mode 100755
index 8d5dde0..0000000
--- a/bin/xnots-toggle
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/usr/bin/env bash
-
-running=$(pgrep xnots)
-curtag=$(herbstclient attr tags.focus.name)
-
-if [ -z "$running" ]; then
- exec xnots
-else
- visible=
- for winid in $(xdotool search --class XNots); do
- hcid=$(printf "0x%x" "$winid")
- if [ -z "$visible" ]; then
- visible=$(herbstclient attr clients."$hcid".visible)
- fi
- wintag=$(herbstclient attr clients."$hcid".tag)
- if [ "$visible" = false ] || [ "$wintag" != "$curtag" ]; then
- herbstclient bring "$winid"
- else
- herbstclient set_attr clients."$hcid".minimized true
- fi
- done
-fi
diff --git a/bin/zenvim b/bin/zenvim
deleted file mode 100755
index ee10e7d..0000000
--- a/bin/zenvim
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-if command -v st 2>/dev/null; then
- st -f "monospace:pixelsize=26:antialias=true:autohint=true" -e nvim ~/writing +TZAtaraxis -c "lua require('telescope').setup { defaults = { layout_strategy = 'vertical', layout_config = { vertical = { preview_cutoff = 10 }}}}"
-else
- nvim ~/writing +TZAtaraxis -c "lua require('telescope').setup { defaults = { layout_strategy = 'vertical', layout_config = { vertical = { preview_cutoff = 10 }}}}"
-fi
diff --git a/btop/btop.conf b/btop/btop.conf
deleted file mode 100644
index 3dc4fac..0000000
--- a/btop/btop.conf
+++ /dev/null
@@ -1,212 +0,0 @@
-#? Config file for btop v. 1.2.13
-
-#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
-#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
-color_theme = "/home/rudism/.config/btop/themes/catppuccin_mocha.theme"
-
-#* If the theme set background should be shown, set to False if you want terminal background transparency.
-theme_background = True
-
-#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
-truecolor = True
-
-#* Set to true to force tty mode regardless if a real tty has been detected or not.
-#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
-force_tty = False
-
-#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
-#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
-#* Use whitespace " " as separator between different presets.
-#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
-presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
-
-#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
-#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
-vim_keys = False
-
-#* Rounded corners on boxes, is ignored if TTY mode is ON.
-rounded_corners = True
-
-#* Default symbols to use for graph creation, "braille", "block" or "tty".
-#* "braille" offers the highest resolution but might not be included in all fonts.
-#* "block" has half the resolution of braille but uses more common characters.
-#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
-#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
-graph_symbol = "braille"
-
-# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
-graph_symbol_cpu = "default"
-
-# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
-graph_symbol_mem = "default"
-
-# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
-graph_symbol_net = "default"
-
-# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
-graph_symbol_proc = "default"
-
-#* Manually set which boxes to show. Available values are "cpu mem net proc", separate values with whitespace.
-shown_boxes = "cpu mem net proc"
-
-#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
-update_ms = 2000
-
-#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
-#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
-proc_sorting = "cpu lazy"
-
-#* Reverse sorting order, True or False.
-proc_reversed = False
-
-#* Show processes as a tree.
-proc_tree = False
-
-#* Use the cpu graph colors in the process list.
-proc_colors = True
-
-#* Use a darkening gradient in the process list.
-proc_gradient = True
-
-#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
-proc_per_core = False
-
-#* Show process memory as bytes instead of percent.
-proc_mem_bytes = True
-
-#* Show cpu graph for each process.
-proc_cpu_graphs = True
-
-#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
-proc_info_smaps = False
-
-#* Show proc box on left side of screen instead of right.
-proc_left = False
-
-#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
-proc_filter_kernel = False
-
-#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
-#* Select from a list of detected attributes from the options menu.
-cpu_graph_upper = "total"
-
-#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
-#* Select from a list of detected attributes from the options menu.
-cpu_graph_lower = "total"
-
-#* Toggles if the lower CPU graph should be inverted.
-cpu_invert_lower = True
-
-#* Set to True to completely disable the lower CPU graph.
-cpu_single_graph = False
-
-#* Show cpu box at bottom of screen instead of top.
-cpu_bottom = False
-
-#* Shows the system uptime in the CPU box.
-show_uptime = True
-
-#* Show cpu temperature.
-check_temp = True
-
-#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
-cpu_sensor = "Auto"
-
-#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
-show_coretemp = True
-
-#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
-#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
-#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
-#* Example: "4:0 5:1 6:3"
-cpu_core_map = ""
-
-#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
-temp_scale = "celsius"
-
-#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
-base_10_sizes = False
-
-#* Show CPU frequency.
-show_cpu_freq = True
-
-#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
-#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
-clock_format = "%X"
-
-#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
-background_update = True
-
-#* Custom cpu model name, empty string to disable.
-custom_cpu_name = ""
-
-#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
-#* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user".
-disks_filter = ""
-
-#* Show graphs instead of meters for memory values.
-mem_graphs = True
-
-#* Show mem box below net box instead of above.
-mem_below_net = False
-
-#* Count ZFS ARC in cached and available memory.
-zfs_arc_cached = True
-
-#* If swap memory should be shown in memory box.
-show_swap = True
-
-#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
-swap_disk = True
-
-#* If mem box should be split to also show disks info.
-show_disks = True
-
-#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
-only_physical = True
-
-#* Read disks list from /etc/fstab. This also disables only_physical.
-use_fstab = True
-
-#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
-zfs_hide_datasets = False
-
-#* Set to true to show available disk space for privileged users.
-disk_free_priv = False
-
-#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
-show_io_stat = True
-
-#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
-io_mode = False
-
-#* Set to True to show combined read/write io graphs in io mode.
-io_graph_combined = False
-
-#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
-#* Example: "/mnt/media:100 /:20 /boot:1".
-io_graph_speeds = ""
-
-#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
-net_download = 100
-
-net_upload = 100
-
-#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
-net_auto = True
-
-#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
-net_sync = True
-
-#* Starts with the Network Interface specified here.
-net_iface = ""
-
-#* Show battery stats in top right if battery is present.
-show_battery = True
-
-#* Which battery to use if multiple are present. "Auto" for auto detection.
-selected_battery = "Auto"
-
-#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
-#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
-log_level = "WARNING"
\ No newline at end of file
diff --git a/btop/themes/catppuccin_mocha.theme b/btop/themes/catppuccin_mocha.theme
deleted file mode 100644
index 13cec40..0000000
--- a/btop/themes/catppuccin_mocha.theme
+++ /dev/null
@@ -1,42 +0,0 @@
-theme[main_bg]="#1E1E2E"
-theme[main_fg]="#CDD6F4"
-theme[title]="#CDD6F4"
-theme[hi_fg]="#89B4FA"
-theme[selected_bg]="#45475A"
-theme[selected_fg]="#89B4FA"
-theme[inactive_fg]="#7F849C"
-theme[graph_text]="#F5E0DC"
-theme[meter_bg]="#45475A"
-theme[proc_misc]="#F5E0DC"
-theme[cpu_box]="#74C7EC"
-theme[mem_box]="#A6E3A1"
-theme[net_box]="#CBA6F7"
-theme[proc_box]="#F2CDCD"
-theme[div_line]="#6C7086"
-theme[temp_start]="#F9E2AF"
-theme[temp_mid]="#FAB387"
-theme[temp_end]="#F38BA8"
-theme[cpu_start]="#74C7EC"
-theme[cpu_mid]="#89DCEB"
-theme[cpu_end]="#94E2D5"
-theme[free_start]="#94E2D5"
-theme[free_mid]="#94E2D5"
-theme[free_end]="#A6E3A1"
-theme[cached_start]="#F5C2E7"
-theme[cached_mid]="#F5C2E7"
-theme[cached_end]="#CBA6F7"
-theme[available_start]="#F5E0DC"
-theme[available_mid]="#F2CDCD"
-theme[available_end]="#F2CDCD"
-theme[used_start]="#FAB387"
-theme[used_mid]="#FAB387"
-theme[used_end]="#F38BA8"
-theme[download_start]="#B4BEFE"
-theme[download_mid]="#B4BEFE"
-theme[download_end]="#CBA6F7"
-theme[upload_start]="#B4BEFE"
-theme[upload_mid]="#B4BEFE"
-theme[upload_end]="#CBA6F7"
-theme[process_start]="#74C7EC"
-theme[process_mid]="#89DCEB"
-theme[process_end]="#94E2D5"
diff --git a/buildfiles/README.md b/buildfiles/README.md
deleted file mode 100644
index 826d966..0000000
--- a/buildfiles/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Build Files
-
-- `st` builds [st](https://st.suckless.org/) with my custom config and installs to `/usr/local`
-- `x265` builds a multi-bitrate [x265](https://bitbucket.org/multicoreware/x265_git) with numa support and installs to `/home/rudism/.local`
-- `newtabber` is my config and publish script for [my new tab generator](https://code.sitosis.com/rudism/newtabber)
diff --git a/buildfiles/st/build.sh b/buildfiles/st/build.sh
deleted file mode 100755
index 6a58bce..0000000
--- a/buildfiles/st/build.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env bash
-
-set -euo pipefail
-
-builddir="$(dirname "$0")"
-
-pushd "$builddir"
-
-if [ -d "./st" ]; then
- git -C "./st" pull
-else
- git clone "https://git.suckless.org/st"
-fi
-
-cp config.h ./st/
-cd st
-make
-sudo make install
-popd
diff --git a/buildfiles/st/config.h b/buildfiles/st/config.h
deleted file mode 100644
index 6efafda..0000000
--- a/buildfiles/st/config.h
+++ /dev/null
@@ -1,472 +0,0 @@
-/* See LICENSE file for copyright and license details. */
-
-/*
- * appearance
- *
- * font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html
- */
-static char *font = "monospace:pixelsize=16:antialias=true:autohint=true";
-static int borderpx = 2;
-
-/*
- * What program is execed by st depends of these precedence rules:
- * 1: program passed with -e
- * 2: scroll and/or utmp
- * 3: SHELL environment variable
- * 4: value of shell in /etc/passwd
- * 5: value of shell in config.h
- */
-static char *shell = "/bin/sh";
-char *utmp = NULL;
-/* scroll program: to enable use a string like "scroll" */
-char *scroll = NULL;
-char *stty_args = "stty raw pass8 nl -echo -iexten -cstopb 38400";
-
-/* identification sequence returned in DA and DECID */
-char *vtiden = "\033[?6c";
-
-/* Kerning / character bounding-box multipliers */
-static float cwscale = 1.0;
-static float chscale = 1.0;
-
-/*
- * word delimiter string
- *
- * More advanced example: L" `'\"()[]{}"
- */
-wchar_t *worddelimiters = L" ";
-
-/* selection timeouts (in milliseconds) */
-static unsigned int doubleclicktimeout = 300;
-static unsigned int tripleclicktimeout = 600;
-
-/* alt screens */
-int allowaltscreen = 1;
-
-/* allow certain non-interactive (insecure) window operations such as:
- setting the clipboard text */
-int allowwindowops = 0;
-
-/*
- * draw latency range in ms - from new content/keypress/etc until drawing.
- * within this range, st draws when content stops arriving (idle). mostly it's
- * near minlatency, but it waits longer for slow updates to avoid partial draw.
- * low minlatency will tear/flicker more, as it can "detect" idle too early.
- */
-static double minlatency = 8;
-static double maxlatency = 33;
-
-/*
- * blinking timeout (set to 0 to disable blinking) for the terminal blinking
- * attribute.
- */
-static unsigned int blinktimeout = 800;
-
-/*
- * thickness of underline and bar cursors
- */
-static unsigned int cursorthickness = 2;
-
-/*
- * bell volume. It must be a value between -100 and 100. Use 0 for disabling
- * it
- */
-static int bellvolume = 0;
-
-/* default TERM value */
-char *termname = "st-256color";
-
-/*
- * spaces per tab
- *
- * When you are changing this value, don't forget to adapt the »it« value in
- * the st.info and appropriately install the st.info in the environment where
- * you use this st version.
- *
- * it#$tabspaces,
- *
- * Secondly make sure your kernel is not expanding tabs. When running `stty
- * -a` »tab0« should appear. You can tell the terminal to not expand tabs by
- * running following command:
- *
- * stty tabs
- */
-unsigned int tabspaces = 8;
-
-/* Terminal colors (16 first used in escape sequence) */
-static const char *colorname[] = {
- /* 8 normal colors */
- "#45475A",
- "#F38BA8",
- "#A6E3A1",
- "#F9E2AF",
- "#89B4FA",
- "#F5C2E7",
- "#94E2D5",
- "#BAC2DE",
-
- /* 8 bright colors */
- "#585B70",
- "#F38BA8",
- "#A6E3A1",
- "#F9E2AF",
- "#89B4FA",
- "#F5C2E7",
- "#94E2D5",
- "#A6ADC8",
-
-[256] = "#CDD6F4", /* default foreground colour */
-[257] = "#1E1E2E", /* default background colour */
-[258] = "#F5E0DC", /*575268*/
-
-};
-
-
-/*
- * foreground, background, cursor, reverse cursor
- */
-unsigned int defaultfg = 256;
-unsigned int defaultbg = 257;
-unsigned int defaultcs = 258;
-static unsigned int defaultrcs = 258;
-
-/*
- * Default shape of cursor
- * 2: Block ("█")
- * 4: Underline ("_")
- * 6: Bar ("|")
- * 7: Snowman ("☃")
- */
-static unsigned int cursorshape = 4;
-
-/*
- * Default columns and rows numbers
- */
-
-static unsigned int cols = 80;
-static unsigned int rows = 24;
-
-/*
- * Default colour and shape of the mouse cursor
- */
-static unsigned int mouseshape = XC_xterm;
-static unsigned int mousefg = 7;
-static unsigned int mousebg = 0;
-
-/*
- * Color used to display font attributes when fontconfig selected a font which
- * doesn't match the ones requested.
- */
-static unsigned int defaultattr = 11;
-
-/*
- * Force mouse select/shortcuts while mask is active (when MODE_MOUSE is set).
- * Note that if you want to use ShiftMask with selmasks, set this to an other
- * modifier, set to 0 to not use it.
- */
-static uint forcemousemod = ShiftMask;
-
-/*
- * Internal mouse shortcuts.
- * Beware that overloading Button1 will disable the selection.
- */
-static MouseShortcut mshortcuts[] = {
- /* mask button function argument release */
- { XK_ANY_MOD, Button2, selpaste, {.i = 0}, 1 },
- { ShiftMask, Button4, ttysend, {.s = "\033[5;2~"} },
- { XK_ANY_MOD, Button4, ttysend, {.s = "\031"} },
- { ShiftMask, Button5, ttysend, {.s = "\033[6;2~"} },
- { XK_ANY_MOD, Button5, ttysend, {.s = "\005"} },
-};
-
-/* Internal keyboard shortcuts. */
-#define MODKEY Mod1Mask
-#define TERMMOD (ControlMask|ShiftMask)
-
-static Shortcut shortcuts[] = {
- /* mask keysym function argument */
- { XK_ANY_MOD, XK_Break, sendbreak, {.i = 0} },
- /*{ ControlMask, XK_Print, toggleprinter, {.i = 0} },
- { ShiftMask, XK_Print, printscreen, {.i = 0} },
- { XK_ANY_MOD, XK_Print, printsel, {.i = 0} },*/
- { TERMMOD, XK_Prior, zoom, {.f = +1} },
- { TERMMOD, XK_Next, zoom, {.f = -1} },
- { TERMMOD, XK_Home, zoomreset, {.f = 0} },
- { TERMMOD, XK_C, clipcopy, {.i = 0} },
- { TERMMOD, XK_V, clippaste, {.i = 0} },
- { TERMMOD, XK_Y, selpaste, {.i = 0} },
- { ShiftMask, XK_Insert, selpaste, {.i = 0} },
- { TERMMOD, XK_Num_Lock, numlock, {.i = 0} },
- { XK_ANY_MOD, 0xFF57, clipcopy, {.i = 0} },
- { XK_ANY_MOD, 0xFF6D, clippaste, {.i = 0} },
-};
-
-/*
- * Special keys (change & recompile st.info accordingly)
- *
- * Mask value:
- * * Use XK_ANY_MOD to match the key no matter modifiers state
- * * Use XK_NO_MOD to match the key alone (no modifiers)
- * appkey value:
- * * 0: no value
- * * > 0: keypad application mode enabled
- * * = 2: term.numlock = 1
- * * < 0: keypad application mode disabled
- * appcursor value:
- * * 0: no value
- * * > 0: cursor application mode enabled
- * * < 0: cursor application mode disabled
- *
- * Be careful with the order of the definitions because st searches in
- * this table sequentially, so any XK_ANY_MOD must be in the last
- * position for a key.
- */
-
-/*
- * If you want keys other than the X11 function keys (0xFD00 - 0xFFFF)
- * to be mapped below, add them to this array.
- */
-static KeySym mappedkeys[] = { -1 };
-
-/*
- * State bits to ignore when matching key or button events. By default,
- * numlock (Mod2Mask) and keyboard layout (XK_SWITCH_MOD) are ignored.
- */
-static uint ignoremod = Mod2Mask|XK_SWITCH_MOD;
-
-/*
- * This is the huge key array which defines all compatibility to the Linux
- * world. Please decide about changes wisely.
- */
-static Key key[] = {
- /* keysym mask string appkey appcursor */
- { XK_KP_Home, ShiftMask, "\033[2J", 0, -1},
- { XK_KP_Home, ShiftMask, "\033[1;2H", 0, +1},
- { XK_KP_Home, XK_ANY_MOD, "\033[H", 0, -1},
- { XK_KP_Home, XK_ANY_MOD, "\033[1~", 0, +1},
- { XK_KP_Up, XK_ANY_MOD, "\033Ox", +1, 0},
- { XK_KP_Up, XK_ANY_MOD, "\033[A", 0, -1},
- { XK_KP_Up, XK_ANY_MOD, "\033OA", 0, +1},
- { XK_KP_Down, XK_ANY_MOD, "\033Or", +1, 0},
- { XK_KP_Down, XK_ANY_MOD, "\033[B", 0, -1},
- { XK_KP_Down, XK_ANY_MOD, "\033OB", 0, +1},
- { XK_KP_Left, XK_ANY_MOD, "\033Ot", +1, 0},
- { XK_KP_Left, XK_ANY_MOD, "\033[D", 0, -1},
- { XK_KP_Left, XK_ANY_MOD, "\033OD", 0, +1},
- { XK_KP_Right, XK_ANY_MOD, "\033Ov", +1, 0},
- { XK_KP_Right, XK_ANY_MOD, "\033[C", 0, -1},
- { XK_KP_Right, XK_ANY_MOD, "\033OC", 0, +1},
- { XK_KP_Prior, ShiftMask, "\033[5;2~", 0, 0},
- { XK_KP_Prior, XK_ANY_MOD, "\033[5~", 0, 0},
- { XK_KP_Begin, XK_ANY_MOD, "\033[E", 0, 0},
- { XK_KP_End, ControlMask, "\033[J", -1, 0},
- { XK_KP_End, ControlMask, "\033[1;5F", +1, 0},
- { XK_KP_End, ShiftMask, "\033[K", -1, 0},
- { XK_KP_End, ShiftMask, "\033[1;2F", +1, 0},
- { XK_KP_End, XK_ANY_MOD, "\033[4~", 0, 0},
- { XK_KP_Next, ShiftMask, "\033[6;2~", 0, 0},
- { XK_KP_Next, XK_ANY_MOD, "\033[6~", 0, 0},
- { XK_KP_Insert, ShiftMask, "\033[2;2~", +1, 0},
- { XK_KP_Insert, ShiftMask, "\033[4l", -1, 0},
- { XK_KP_Insert, ControlMask, "\033[L", -1, 0},
- { XK_KP_Insert, ControlMask, "\033[2;5~", +1, 0},
- { XK_KP_Insert, XK_ANY_MOD, "\033[4h", -1, 0},
- { XK_KP_Insert, XK_ANY_MOD, "\033[2~", +1, 0},
- { XK_KP_Delete, ControlMask, "\033[M", -1, 0},
- { XK_KP_Delete, ControlMask, "\033[3;5~", +1, 0},
- { XK_KP_Delete, ShiftMask, "\033[2K", -1, 0},
- { XK_KP_Delete, ShiftMask, "\033[3;2~", +1, 0},
- { XK_KP_Delete, XK_ANY_MOD, "\033[P", -1, 0},
- { XK_KP_Delete, XK_ANY_MOD, "\033[3~", +1, 0},
- { XK_KP_Multiply, XK_ANY_MOD, "\033Oj", +2, 0},
- { XK_KP_Add, XK_ANY_MOD, "\033Ok", +2, 0},
- { XK_KP_Enter, XK_ANY_MOD, "\033OM", +2, 0},
- { XK_KP_Enter, XK_ANY_MOD, "\r", -1, 0},
- { XK_KP_Subtract, XK_ANY_MOD, "\033Om", +2, 0},
- { XK_KP_Decimal, XK_ANY_MOD, "\033On", +2, 0},
- { XK_KP_Divide, XK_ANY_MOD, "\033Oo", +2, 0},
- { XK_KP_0, XK_ANY_MOD, "\033Op", +2, 0},
- { XK_KP_1, XK_ANY_MOD, "\033Oq", +2, 0},
- { XK_KP_2, XK_ANY_MOD, "\033Or", +2, 0},
- { XK_KP_3, XK_ANY_MOD, "\033Os", +2, 0},
- { XK_KP_4, XK_ANY_MOD, "\033Ot", +2, 0},
- { XK_KP_5, XK_ANY_MOD, "\033Ou", +2, 0},
- { XK_KP_6, XK_ANY_MOD, "\033Ov", +2, 0},
- { XK_KP_7, XK_ANY_MOD, "\033Ow", +2, 0},
- { XK_KP_8, XK_ANY_MOD, "\033Ox", +2, 0},
- { XK_KP_9, XK_ANY_MOD, "\033Oy", +2, 0},
- { XK_Up, ShiftMask, "\033[1;2A", 0, 0},
- { XK_Up, Mod1Mask, "\033[1;3A", 0, 0},
- { XK_Up, ShiftMask|Mod1Mask,"\033[1;4A", 0, 0},
- { XK_Up, ControlMask, "\033[1;5A", 0, 0},
- { XK_Up, ShiftMask|ControlMask,"\033[1;6A", 0, 0},
- { XK_Up, ControlMask|Mod1Mask,"\033[1;7A", 0, 0},
- { XK_Up,ShiftMask|ControlMask|Mod1Mask,"\033[1;8A", 0, 0},
- { XK_Up, XK_ANY_MOD, "\033[A", 0, -1},
- { XK_Up, XK_ANY_MOD, "\033OA", 0, +1},
- { XK_Down, ShiftMask, "\033[1;2B", 0, 0},
- { XK_Down, Mod1Mask, "\033[1;3B", 0, 0},
- { XK_Down, ShiftMask|Mod1Mask,"\033[1;4B", 0, 0},
- { XK_Down, ControlMask, "\033[1;5B", 0, 0},
- { XK_Down, ShiftMask|ControlMask,"\033[1;6B", 0, 0},
- { XK_Down, ControlMask|Mod1Mask,"\033[1;7B", 0, 0},
- { XK_Down,ShiftMask|ControlMask|Mod1Mask,"\033[1;8B",0, 0},
- { XK_Down, XK_ANY_MOD, "\033[B", 0, -1},
- { XK_Down, XK_ANY_MOD, "\033OB", 0, +1},
- { XK_Left, ShiftMask, "\033[1;2D", 0, 0},
- { XK_Left, Mod1Mask, "\033[1;3D", 0, 0},
- { XK_Left, ShiftMask|Mod1Mask,"\033[1;4D", 0, 0},
- { XK_Left, ControlMask, "\033[1;5D", 0, 0},
- { XK_Left, ShiftMask|ControlMask,"\033[1;6D", 0, 0},
- { XK_Left, ControlMask|Mod1Mask,"\033[1;7D", 0, 0},
- { XK_Left,ShiftMask|ControlMask|Mod1Mask,"\033[1;8D",0, 0},
- { XK_Left, XK_ANY_MOD, "\033[D", 0, -1},
- { XK_Left, XK_ANY_MOD, "\033OD", 0, +1},
- { XK_Right, ShiftMask, "\033[1;2C", 0, 0},
- { XK_Right, Mod1Mask, "\033[1;3C", 0, 0},
- { XK_Right, ShiftMask|Mod1Mask,"\033[1;4C", 0, 0},
- { XK_Right, ControlMask, "\033[1;5C", 0, 0},
- { XK_Right, ShiftMask|ControlMask,"\033[1;6C", 0, 0},
- { XK_Right, ControlMask|Mod1Mask,"\033[1;7C", 0, 0},
- { XK_Right,ShiftMask|ControlMask|Mod1Mask,"\033[1;8C",0, 0},
- { XK_Right, XK_ANY_MOD, "\033[C", 0, -1},
- { XK_Right, XK_ANY_MOD, "\033OC", 0, +1},
- { XK_ISO_Left_Tab, ShiftMask, "\033[Z", 0, 0},
- { XK_Return, Mod1Mask, "\033\r", 0, 0},
- { XK_Return, XK_ANY_MOD, "\r", 0, 0},
- { XK_Insert, ShiftMask, "\033[4l", -1, 0},
- { XK_Insert, ShiftMask, "\033[2;2~", +1, 0},
- { XK_Insert, ControlMask, "\033[L", -1, 0},
- { XK_Insert, ControlMask, "\033[2;5~", +1, 0},
- { XK_Insert, XK_ANY_MOD, "\033[4h", -1, 0},
- { XK_Insert, XK_ANY_MOD, "\033[2~", +1, 0},
- { XK_Delete, ControlMask, "\033[M", -1, 0},
- { XK_Delete, ControlMask, "\033[3;5~", +1, 0},
- { XK_Delete, ShiftMask, "\033[2K", -1, 0},
- { XK_Delete, ShiftMask, "\033[3;2~", +1, 0},
- { XK_Delete, XK_ANY_MOD, "\033[P", -1, 0},
- { XK_Delete, XK_ANY_MOD, "\033[3~", +1, 0},
- { XK_BackSpace, XK_NO_MOD, "\177", 0, 0},
- { XK_BackSpace, Mod1Mask, "\033\177", 0, 0},
- { XK_Home, ShiftMask, "\033[2J", 0, -1},
- { XK_Home, ShiftMask, "\033[1;2H", 0, +1},
- { XK_Home, XK_ANY_MOD, "\033[H", 0, -1},
- { XK_Home, XK_ANY_MOD, "\033[1~", 0, +1},
- { XK_End, ControlMask, "\033[J", -1, 0},
- { XK_End, ControlMask, "\033[1;5F", +1, 0},
- { XK_End, ShiftMask, "\033[K", -1, 0},
- { XK_End, ShiftMask, "\033[1;2F", +1, 0},
- { XK_End, XK_ANY_MOD, "\033[4~", 0, 0},
- { XK_Prior, ControlMask, "\033[5;5~", 0, 0},
- { XK_Prior, ShiftMask, "\033[5;2~", 0, 0},
- { XK_Prior, XK_ANY_MOD, "\033[5~", 0, 0},
- { XK_Next, ControlMask, "\033[6;5~", 0, 0},
- { XK_Next, ShiftMask, "\033[6;2~", 0, 0},
- { XK_Next, XK_ANY_MOD, "\033[6~", 0, 0},
- { XK_F1, XK_NO_MOD, "\033OP" , 0, 0},
- { XK_F1, /* F13 */ ShiftMask, "\033[1;2P", 0, 0},
- { XK_F1, /* F25 */ ControlMask, "\033[1;5P", 0, 0},
- { XK_F1, /* F37 */ Mod4Mask, "\033[1;6P", 0, 0},
- { XK_F1, /* F49 */ Mod1Mask, "\033[1;3P", 0, 0},
- { XK_F1, /* F61 */ Mod3Mask, "\033[1;4P", 0, 0},
- { XK_F2, XK_NO_MOD, "\033OQ" , 0, 0},
- { XK_F2, /* F14 */ ShiftMask, "\033[1;2Q", 0, 0},
- { XK_F2, /* F26 */ ControlMask, "\033[1;5Q", 0, 0},
- { XK_F2, /* F38 */ Mod4Mask, "\033[1;6Q", 0, 0},
- { XK_F2, /* F50 */ Mod1Mask, "\033[1;3Q", 0, 0},
- { XK_F2, /* F62 */ Mod3Mask, "\033[1;4Q", 0, 0},
- { XK_F3, XK_NO_MOD, "\033OR" , 0, 0},
- { XK_F3, /* F15 */ ShiftMask, "\033[1;2R", 0, 0},
- { XK_F3, /* F27 */ ControlMask, "\033[1;5R", 0, 0},
- { XK_F3, /* F39 */ Mod4Mask, "\033[1;6R", 0, 0},
- { XK_F3, /* F51 */ Mod1Mask, "\033[1;3R", 0, 0},
- { XK_F3, /* F63 */ Mod3Mask, "\033[1;4R", 0, 0},
- { XK_F4, XK_NO_MOD, "\033OS" , 0, 0},
- { XK_F4, /* F16 */ ShiftMask, "\033[1;2S", 0, 0},
- { XK_F4, /* F28 */ ControlMask, "\033[1;5S", 0, 0},
- { XK_F4, /* F40 */ Mod4Mask, "\033[1;6S", 0, 0},
- { XK_F4, /* F52 */ Mod1Mask, "\033[1;3S", 0, 0},
- { XK_F5, XK_NO_MOD, "\033[15~", 0, 0},
- { XK_F5, /* F17 */ ShiftMask, "\033[15;2~", 0, 0},
- { XK_F5, /* F29 */ ControlMask, "\033[15;5~", 0, 0},
- { XK_F5, /* F41 */ Mod4Mask, "\033[15;6~", 0, 0},
- { XK_F5, /* F53 */ Mod1Mask, "\033[15;3~", 0, 0},
- { XK_F6, XK_NO_MOD, "\033[17~", 0, 0},
- { XK_F6, /* F18 */ ShiftMask, "\033[17;2~", 0, 0},
- { XK_F6, /* F30 */ ControlMask, "\033[17;5~", 0, 0},
- { XK_F6, /* F42 */ Mod4Mask, "\033[17;6~", 0, 0},
- { XK_F6, /* F54 */ Mod1Mask, "\033[17;3~", 0, 0},
- { XK_F7, XK_NO_MOD, "\033[18~", 0, 0},
- { XK_F7, /* F19 */ ShiftMask, "\033[18;2~", 0, 0},
- { XK_F7, /* F31 */ ControlMask, "\033[18;5~", 0, 0},
- { XK_F7, /* F43 */ Mod4Mask, "\033[18;6~", 0, 0},
- { XK_F7, /* F55 */ Mod1Mask, "\033[18;3~", 0, 0},
- { XK_F8, XK_NO_MOD, "\033[19~", 0, 0},
- { XK_F8, /* F20 */ ShiftMask, "\033[19;2~", 0, 0},
- { XK_F8, /* F32 */ ControlMask, "\033[19;5~", 0, 0},
- { XK_F8, /* F44 */ Mod4Mask, "\033[19;6~", 0, 0},
- { XK_F8, /* F56 */ Mod1Mask, "\033[19;3~", 0, 0},
- { XK_F9, XK_NO_MOD, "\033[20~", 0, 0},
- { XK_F9, /* F21 */ ShiftMask, "\033[20;2~", 0, 0},
- { XK_F9, /* F33 */ ControlMask, "\033[20;5~", 0, 0},
- { XK_F9, /* F45 */ Mod4Mask, "\033[20;6~", 0, 0},
- { XK_F9, /* F57 */ Mod1Mask, "\033[20;3~", 0, 0},
- { XK_F10, XK_NO_MOD, "\033[21~", 0, 0},
- { XK_F10, /* F22 */ ShiftMask, "\033[21;2~", 0, 0},
- { XK_F10, /* F34 */ ControlMask, "\033[21;5~", 0, 0},
- { XK_F10, /* F46 */ Mod4Mask, "\033[21;6~", 0, 0},
- { XK_F10, /* F58 */ Mod1Mask, "\033[21;3~", 0, 0},
- { XK_F11, XK_NO_MOD, "\033[23~", 0, 0},
- { XK_F11, /* F23 */ ShiftMask, "\033[23;2~", 0, 0},
- { XK_F11, /* F35 */ ControlMask, "\033[23;5~", 0, 0},
- { XK_F11, /* F47 */ Mod4Mask, "\033[23;6~", 0, 0},
- { XK_F11, /* F59 */ Mod1Mask, "\033[23;3~", 0, 0},
- { XK_F12, XK_NO_MOD, "\033[24~", 0, 0},
- { XK_F12, /* F24 */ ShiftMask, "\033[24;2~", 0, 0},
- { XK_F12, /* F36 */ ControlMask, "\033[24;5~", 0, 0},
- { XK_F12, /* F48 */ Mod4Mask, "\033[24;6~", 0, 0},
- { XK_F12, /* F60 */ Mod1Mask, "\033[24;3~", 0, 0},
- { XK_F13, XK_NO_MOD, "\033[1;2P", 0, 0},
- { XK_F14, XK_NO_MOD, "\033[1;2Q", 0, 0},
- { XK_F15, XK_NO_MOD, "\033[1;2R", 0, 0},
- { XK_F16, XK_NO_MOD, "\033[1;2S", 0, 0},
- { XK_F17, XK_NO_MOD, "\033[15;2~", 0, 0},
- { XK_F18, XK_NO_MOD, "\033[17;2~", 0, 0},
- { XK_F19, XK_NO_MOD, "\033[18;2~", 0, 0},
- { XK_F20, XK_NO_MOD, "\033[19;2~", 0, 0},
- { XK_F21, XK_NO_MOD, "\033[20;2~", 0, 0},
- { XK_F22, XK_NO_MOD, "\033[21;2~", 0, 0},
- { XK_F23, XK_NO_MOD, "\033[23;2~", 0, 0},
- { XK_F24, XK_NO_MOD, "\033[24;2~", 0, 0},
- { XK_F25, XK_NO_MOD, "\033[1;5P", 0, 0},
- { XK_F26, XK_NO_MOD, "\033[1;5Q", 0, 0},
- { XK_F27, XK_NO_MOD, "\033[1;5R", 0, 0},
- { XK_F28, XK_NO_MOD, "\033[1;5S", 0, 0},
- { XK_F29, XK_NO_MOD, "\033[15;5~", 0, 0},
- { XK_F30, XK_NO_MOD, "\033[17;5~", 0, 0},
- { XK_F31, XK_NO_MOD, "\033[18;5~", 0, 0},
- { XK_F32, XK_NO_MOD, "\033[19;5~", 0, 0},
- { XK_F33, XK_NO_MOD, "\033[20;5~", 0, 0},
- { XK_F34, XK_NO_MOD, "\033[21;5~", 0, 0},
- { XK_F35, XK_NO_MOD, "\033[23;5~", 0, 0},
-};
-
-/*
- * Selection types' masks.
- * Use the same masks as usual.
- * Button1Mask is always unset, to make masks match between ButtonPress.
- * ButtonRelease and MotionNotify.
- * If no match is found, regular selection is used.
- */
-static uint selmasks[] = {
- [SEL_RECTANGULAR] = Mod1Mask,
-};
-
-/*
- * Printable characters in ASCII, used to estimate the advance width
- * of single wide characters.
- */
-static char ascii_printable[] =
- " !\"#$%&'()*+,-./0123456789:;<=>?"
- "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"
- "`abcdefghijklmnopqrstuvwxyz{|}~";
diff --git a/buildfiles/x265/build.sh b/buildfiles/x265/build.sh
deleted file mode 100755
index 4beb368..0000000
--- a/buildfiles/x265/build.sh
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/usr/bin/env bash
-
-set -euo pipefail
-builddir="$(dirname "$0")"
-
-pushd "$builddir"
-
-rm -rf ./build ./build-10 ./build-12
-
-if [ ! -d "./x265_git" ]; then
- git clone --depth 1 --branch 3.4.1 "https://bitbucket.org/multicoreware/x265_git.git"
-fi
-
-cmake -S x265_git/source -B build-12 \
- -DCMAKE_INSTALL_PREFIX='/home/rudism/.local' \
- -DCMAKE_ASM_NASM_FLAGS='-w-macro-params-legacy' \
- -DENABLE_ASSEMBLY='ON' \
- -DENABLE_LIBNUMA='ON' \
- -DHIGH_BIT_DEPTH='ON' \
- -DMAIN12='ON' \
- -DEXPORT_C_API='OFF' \
- -DENABLE_CLI='OFF' \
- -DENABLE_SHARED='OFF' \
- -Wno-dev
-make -C build-12
-
-cmake -S x265_git/source -B build-10 \
- -DCMAKE_INSTALL_PREFIX='/home/rudism/.local' \
- -DCMAKE_ASM_NASM_FLAGS='-w-macro-params-legacy' \
- -DENABLE_ASSEMBLY='ON' \
- -DENABLE_LIBNUMA='ON' \
- -DHIGH_BIT_DEPTH='ON' \
- -DEXPORT_C_API='OFF' \
- -DENABLE_CLI='OFF' \
- -DENABLE_SHARED='OFF' \
- -Wno-dev
-make -C build-10
-
-cmake -S x265_git/source -B build \
- -DCMAKE_INSTALL_PREFIX:PATH='/home/rudism/.local' \
- -DCMAKE_ASM_NASM_FLAGS='-w-macro-params-legacy' \
- -DENABLE_ASSEMBLY='ON' \
- -DENABLE_SHARED='ON' \
- -DENABLE_LIBNUMA='ON' \
- -DENABLE_HDR10_PLUS='ON' \
- -DEXTRA_LIB='x265_main10.a;x265_main12.a' \
- -DEXTRA_LINK_FLAGS='-L.' \
- -DLINKED_10BIT='ON' \
- -DLINKED_12BIT='ON' \
- -Wno-dev
-
-ln -s ../build-10/libx265.a build/libx265_main10.a
-ln -s ../build-12/libx265.a build/libx265_main12.a
-make -C build
-
-make -C build install
-
-popd
diff --git a/dunst/dunstrc b/dunst/dunstrc
deleted file mode 100644
index 015bf88..0000000
--- a/dunst/dunstrc
+++ /dev/null
@@ -1,21 +0,0 @@
-[global]
-width = (100, 600)
-offset = 50x50
-corner_radius = 15
-font = Monospace 18
-
-frame_color = "#89B4FA"
-separator_color= frame
-
-[urgency_low]
-background = "#1E1E2E"
-foreground = "#CDD6F4"
-
-[urgency_normal]
-background = "#1E1E2E"
-foreground = "#CDD6F4"
-
-[urgency_critical]
-background = "#1E1E2E"
-foreground = "#CDD6F4"
-frame_color = "#FAB387"
diff --git a/fonts/fontconfig/fonts.conf b/fonts/fontconfig/fonts.conf
deleted file mode 100644
index a0baacf..0000000
--- a/fonts/fontconfig/fonts.conf
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
- monospace
-
- Drafting* Mono
- Unifont
-
-
-
- sans-serif
-
- DejaVu Sans
- Unifont
-
-
-
- Helvetica
-
- DejaVu Sans
-
-
-
- Times
-
- DejaVu Serif
-
-
-
- Georgia
-
- DejaVu Serif
-
-
-
- Charter
-
- DejaVu Serif
-
-
-
- serif
-
- DejaVu Serif
- Unifont
-
-
-
-
- mono
-
-
- false
-
-
-
diff --git a/gnupg/gpg-agent.conf b/gnupg/gpg-agent.conf
deleted file mode 100644
index 049b40e..0000000
--- a/gnupg/gpg-agent.conf
+++ /dev/null
@@ -1 +0,0 @@
-pinentry-program /usr/bin/pinentry-curses
diff --git a/herbstluftwm/autostart b/herbstluftwm/autostart
deleted file mode 100755
index 7450a56..0000000
--- a/herbstluftwm/autostart
+++ /dev/null
@@ -1,181 +0,0 @@
-#!/usr/bin/env bash
-
-PATH="$PATH:$HOME/.local/bin"
-
-hc() {
- herbstclient "$@"
-}
-
-# don't need sticky win on pinebook
-hc new_attr string my_sticky
-refresh_panel="pgrep -f 'bash.*panel\.sh' | xargs -n1 kill -s USR1"
-
-hc emit_hook reload
-
-if hc silent new_attr bool my_picom_is_running; then
- picom -b
-fi
-
-hc lock
-hsetroot -solid "#1e1e2e"
-feh --bg-fill ~/.config/herbstluftwm/wallpaper.png
-xobpipe="$XDG_RUNTIME_DIR/xobpipe"
-
-# theme
-hc attr theme.tiling.reset 1
-hc attr theme.floating.reset 1
-hc set always_show_frame on
-hc set frame_bg_transparent off
-
-hc attr theme.active.color '#a6e3a1'
-hc attr theme.normal.color '#89b4fa'
-hc attr theme.urgent.color '#f38ba8'
-hc attr theme.inner_color black
-hc attr theme.border_width 1
-hc attr theme.floating.border_width 2
-hc attr theme.floating.outer_width 1
-hc attr theme.floating.outer_color black
-hc attr theme.background_color '#1e1e2e'
-
-hc set window_gap 0
-hc set frame_padding 0
-hc set smart_window_surroundings on
-hc set smart_frame_surroundings on
-hc set mouse_recenter_gap 0
-hc set frame_active_opacity 1
-hc set frame_normal_opacity 1
-hc set frame_bg_active_color '#0000000000'
-hc set snap_distance 0
-hc set snap_gap 0
-hc unlock
-
-# remove all existing keybindings
-hc keyunbind --all
-hc set default_frame_layout horizontal
-hc set_layout horizontal
-
-# keybindings
-Mod=Mod4 # Use the super key as the main modifier
-
-hc keybind $Mod-Shift-q quit
-hc keybind $Mod-Control-r reload
-hc keybind $Mod-Shift-c close
-hc keybind $Mod-Return spawn st
-hc keybind $Mod-grave spawn $HOME/skynet/bin/quake-term
-hc keybind $Mod-Control-grave spawn $HOME/skynet/bin/xnots-toggle
-hc keybind $Mod-Alt-Return spawn ~/skynet/bin/zenvim
-hc keybind $Mod-Control-Return spawn firefox
-hc keybind Print spawn flameshot gui
-hc keybind $Mod-Tab cycle_all +1
-
-hc keybind $Mod-d spawn rofi -show drun -show-icons
-hc keybind $Mod-r spawn rofi -show run
-hc keybind $Mod-F1 spawn sh -c 'CM_LAUNCHER=rofi clipmenu'
-hc keybind $Mod-F2 spawn rofi -show calc -modi calc -no-show-match -no-sort
-hc keybind $Mod-F3 spawn sh -c 'clipctl disable; bwmenu; clipctl enable'
-
-hc keybind XF86AudioPlay spawn playerctl play-pause
-hc keybind XF86AudioPause spawn playerctl pause-pause
-hc keybind XF86AudioRaiseVolume spawn sh -c "pamixer -i 5; pamixer --get-volume > \"$xobpipe\"; $refresh_panel"
-hc keybind XF86AudioLowerVolume spawn sh -c "pamixer -d 5; pamixer --get-volume > \"$xobpipe\"; $refresh_panel"
-hc keybind XF86AudioMute spawn sh -c "pamixer -t; pamixer --get-volume-human | sed 's/muted/0/' > \"$xobpipe\"; $refresh_panel"
-hc keybind XF86Launch7 spawn sh -c "sleep 0.15 && xdotool keydown ctrl key w keyup ctrl"
-hc keybind XF86PowerOff spawn battlvl
-hc keybind XF86MonBrightnessUp spawn sh -c "light -A 5; light > \"$xobpipe\""
-hc keybind XF86MonBrightnessDown spawn sh -c "light -U 5; light > \"$xobpipe\""
-
-# mouse
-hc mouseunbind --all
-hc set focus_follows_mouse true
-hc set focus_follows_monitor_boundaries true
-hc mousebind $Mod-Button1 move
-hc mousebind $Mod-Button3 resize
-
-# basic movement in tiling and floating mode
-# focusing clients
-hc keybind $Mod-Left focus left
-hc keybind $Mod-Down focus down
-hc keybind $Mod-Up focus up
-hc keybind $Mod-Right focus right
-
-# moving clients in tiling and floating mode
-hc keybind $Mod-Shift-Left shift left
-hc keybind $Mod-Shift-Down shift down
-hc keybind $Mod-Shift-Up shift up
-hc keybind $Mod-Shift-Right shift right
-
-hc keybind $Mod-j spawn ~/skynet/bin/stickyctl stick
-hc keybind $Mod-Shift-j spawn ~/skynet/bin/stickyctl unstick
-
-# tags
-tag_names=( {1..9} 0 )
-tag_keys=( {1..9} 0 )
-
-hc rename default "${tag_names[0]}" || true
-for i in "${!tag_names[@]}" ; do
- hc add "${tag_names[$i]}"
- key="${tag_keys[$i]}"
- if ! [ -z "$key" ] ; then
- hc keybind "$Mod-$key" chain , lock , use_index "$i" , spawn ~/skynet/bin/stickyctl get-sticky , unlock
- hc keybind "$Mod-Shift-$key" move_index "$i"
- fi
-done
-
-# cycle through tags
-hc keybind $Mod-Control-Right use_index +1 --skip-visible
-hc keybind $Mod-Control-Left use_index -1 --skip-visible
-hc keybind XF86Paste use_index +1 --skip_visible
-hc keybind XF86Copy use_index -1 --skip_visible
-
-# layouting
-hc keybind $Mod-f fullscreen toggle
-hc keybind $Mod-Shift-f set_attr clients.focus.floating toggle
-# The following cycles through the available layouts within a frame, but skips
-# layouts, if the layout change wouldn't affect the actual window positions.
-# I.e. if there are two windows within a frame, the grid layout is skipped.
-hc keybind $Mod-space or , and . compare tags.focus.curframe_wcount = 2 . cycle_layout +1 vertical horizontal max vertical grid , cycle_layout +1
-
-
-# focus
-hc keybind $Mod-BackSpace cycle_monitor
-hc keybind $Mod-Tab cycle_all +1
-hc keybind $Mod-Shift-Tab cycle_all -1
-hc keybind $Mod-Alt-Tab jumpto urgent
-
-# rules
-hc unrule -F
-#hc rule class=XTerm tag=3 # move all xterms to tag 3
-hc rule focus=on # normally focus new clients
-hc rule floatplacement=smart
-#hc rule focus=off # normally do not focus new clients
-# give focus to most common terminals
-#hc rule class~'(.*[Rr]xvt.*|.*[Tt]erm|Konsole)' focus=on
-hc rule windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' floating=on
-hc rule windowtype='_NET_WM_WINDOW_TYPE_DIALOG' focus=on
-hc rule windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off
-hc rule class='nvim-zen' fullscreen=on
-hc rule class='mpv' floating=on
-hc rule class='sim_arduboy' floating=on
-hc rule class='XNots' floating=on
-hc rule class='Pithos' floating=on
-
-hc set tree_style '╾│ ├└╼─┐'
-
-# unlock, just to be sure
-hc unlock
-
-# do multi monitor setup here, e.g.:
-# hc set_monitors 1280x1024+0+0 1280x1024+1280+0
-# or simply:
-hc detect_monitors
-
-# restart panel
-~/.config/herbstluftwm/killpanel.sh
-{ exec ~/.config/herbstluftwm/panel.sh; } &
-
-# restart xob
-pgrep xob | xargs -n1 kill -9
-if [ ! -p "$xobpipe" ]; then
- mkfifo "$xobpipe"
-fi
-{ tail -f "$xobpipe" | xob; } &
diff --git a/herbstluftwm/killpanel.sh b/herbstluftwm/killpanel.sh
deleted file mode 100755
index c6a8985..0000000
--- a/herbstluftwm/killpanel.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/usr/bin/env bash
-
-pgrep -f 'panel_text' | xargs -n1 kill -9
-pgrep -f 'lemonbar' | xargs -n1 kill -9
-pgrep -f 'xobpipe' | xargs -n1 kill -9
-pgrep -f 'trayer' | xargs -n1 kill -9
-pgrep -f 'bash.*panel\.sh' | xargs -n1 kill -9
diff --git a/herbstluftwm/panel.sh b/herbstluftwm/panel.sh
deleted file mode 100755
index 6bf3512..0000000
--- a/herbstluftwm/panel.sh
+++ /dev/null
@@ -1,452 +0,0 @@
-#!/usr/bin/env bash
-
-hostname=$(hostname)
-
-hc() { herbstclient "$@" ;}
-panel_height=20
-
-for monitor in $(hc list_monitors | cut -d: -f1); do
- hc pad "$monitor" "$panel_height" 0 0 0
-done
-
-{ sleep 1; exec trayer --SetPartialStrut false --edge top --height 20 --widthtype request --align right --tint 0x11111b --transparent true --alpha 0; } &
-
-fggreen='%{F#a6e3a1}'
-fgblue='%{F#89b4fa}'
-fgred='%{F#f38ba8}'
-fgdark='%{F#313244}'
-fgend='%{F-}'
-
-bggreen='%{B#a6e3a1}'
-bgblue='%{B#89b4fa}'
-bgred='%{B#f38ba8}'
-bglight='%{B#313244}'
-bgend='%{B-}'
-
-ulblue='%{U#89b4fa+u}'
-ulend='%{-u}'
-
-handle_signal() {
- FORCE_REFRESH=1
-}
-
-handle_kill() {
- kill 0
- rm "$fifo"
- exit 0
-}
-
-trap handle_signal SIGUSR1
-trap handle_kill SIGINT
-
-fifo="/tmp/panel_text"
-if [ ! -p "$fifo" ]; then
- mkfifo "$fifo"
-fi
-
-msgfifo="/tmp/panel_msg"
-if [ ! -p "$msgfifo" ]; then
- mkfifo "$msgfifo"
-fi
-
-# process to handle lemonbar clicks
-{
- while IFS= read -r line; do
- IFS="-" read -r -a command <<< "$line"
- if [ "${command[0]}" = "tag" ]; then
- # not sure how to specify a monitor, but probably don't need to anyway
- monitor="${command[1]}"
- index=$(( "${command[2]}" - 1 ))
- if [ "$index" -eq -1 ]; then
- index=9
- fi
- herbstclient chain , lock , focus_monitor "$monitor" , use_index "$index" , spawn stickyctl get-sticky , unlock
- fi
- done < "$msgfifo"
-} &
-
-tail -f "$fifo" | stdbuf -oL lemonbar -d -p -a 100 -g "x${panel_height}" -f "Drafting* Mono:pixelsize=18:antialias=true" -f "Unifont:pixelsize=18:antialias=true" -B "#11111b" -F "#cdd6f4" > "$msgfifo" &
-
-append_segment() {
- local seconds=$1
- local name=$2
- local param=$3
- shift
- local now=$SECONDS
- local escparam
- segment_text=''
-
- escparam="${param//\//_}"
- eval "local lastrun=\$${name}${escparam}_lastrun"
- if [ -z "$lastrun" ]; then
- lastrun=0
- fi
- if [ -n "$FORCE_REFRESH" ] || [ "$lastrun" -eq 0 ] || (( SECONDS - lastrun >= seconds )); then
- "$@"
- eval "${name}${escparam}_lastrun=\$now"
- eval "${name}${escparam}_lastoutput=\"$segment_text\""
- panel_text="$panel_text$segment_text"
- else
- eval "panel_text=\"\$panel_text\$${name}${escparam}_lastoutput\""
- fi
-}
-
-append_separator() {
- panel_text="$panel_text "
-}
-
-append_percent_icon() {
- local pct=$1
- segment_text="$segment_text$bglight"
- if (( pct < 12 )); then
- segment_text="$segment_text▁"
- elif (( pct < 25 )); then
- segment_text="$segment_text▂"
- elif (( pct < 38 )); then
- segment_text="$segment_text▃"
- elif (( pct < 51 )); then
- segment_text="$segment_text▄"
- elif (( pct < 64 )); then
- segment_text="$segment_text▅"
- elif (( pct < 77 )); then
- segment_text="$segment_text▆"
- elif (( pct < 90 )); then
- segment_text="$segment_text▆"
- else
- segment_text="$segment_text█"
- fi
- segment_text="$segment_text$bgend%{O5}"
-}
-
-append_battery_icon() {
- local pct=$1
- segment_text="$segment_text$bglight"
- if (( pct < 10 )); then
- segment_text="$segment_text"
- elif (( pct < 20 )); then
- segment_text="$segment_text"
- elif (( pct < 30 )); then
- segment_text="$segment_text"
- elif (( pct < 40 )); then
- segment_text="$segment_text"
- elif (( pct < 50 )); then
- segment_text="$segment_text"
- elif (( pct < 60 )); then
- segment_text="$segment_text"
- elif (( pct < 70 )); then
- segment_text="$segment_text"
- elif (( pct < 80 )); then
- segment_text="$segment_text"
- elif (( pct < 90 )); then
- segment_text="$segment_text"
- else
- segment_text="$segment_text"
- fi
- segment_text="$segment_text$bgend%{O5}"
-}
-
-segment_tags() {
- local monitor=$1
- local tags
- local prefix
- local tagclass
-
- IFS=$'\t' read -ra tags <<< "$(hc tag_status "$monitor")"
- segment_text=''
- for i in "${tags[@]}"; do
- prefix=${i:0:1}
- case $prefix in
- '.') tagclass=$fgend$bgend ;;
- '+') tagclass=$bgblue$fgdark ;;
- '#') tagclass=$bggreen$fgdark ;;
- '!') tagclass=$bgred$fgdark ;;
- '-') tagclass=$ulblue$bglight$fgblue ;;
- '%') tagclass=$ulblue$bglight$fgblue ;;
- *) tagclass=$bglight ;;
- esac
- segment_text="$segment_text%{A:tag-$monitor-${i:1}:}$tagclass%{O8}${i:1}%{O8}%{A}$fgend$bgend$ulend"
- done
-}
-
-segment_timew() {
- local curday
- local active
- local twclass
- local twicon
-
- if hash timew 2>/dev/null; then
- active=$(timew get dom.active)
- if [ "$active" = "1" ]; then
- twicon=""
- twclass=$fggreen
- else
- twicon=""
- twclass=$fgred
- fi
-
- curday=$(timew summary | tail -n2 | head -n1 | awk '{ print $1 }')
- if [ "$curday" = "No" ]; then
- curday='0:00'
- else
- curday="${curday%:*}"
- fi
-
- segment_text="${twclass}${twicon}${fgend}%{O5}$curday"
- fi
-}
-
-segment_keyboard() {
- local kblayout
- local kbclass
- local kbicon
-
- kblayout=$(setxkbmap -query | grep variant | awk '{ print $2 }' | tr -d ',')
- if [ "$kblayout" = "dvorak" ]; then
- kbclass=$fgred
- kbicon=""
- else
- kbclass=$fggreen
- kbicon=""
- fi
- segment_text="$kbclass$kbicon$fgend"
-}
-
-segment_network() {
- local net
- local neticon
- local btpower
- local btconn
- local bticon
- local nasavpn
- local nasaicon
- local vnc
- local vncicon
-
- # network device
- net=$(ip route get 1.1.1.1 | grep -Po '(?<=dev\s)\w+' | cut -f1 -d ' ')
- if ! [ "$net" ]; then
- neticon="%{O3}$fgred$fgend"
- else
- neticon="%{O3}$fggreenﯱ$fgend"
- fi
-
- if hash bluetoothctl 2>/dev/null; then
- # bluetooth status
- btpower=$(bluetoothctl show | grep Powered | awk '{ print $2 }')
- if [ "$btpower" = "yes" ]; then
- btconn=$(bluetoothctl devices | cut -f2 -d' ' | while read uuid; do bluetoothctl info $uuid; done | grep "Connected: yes")
- if [ -z "$btconn" ]; then
- bticon="${fggreen}$fgend"
- else
- bticon="${fgblue}$fgend"
- fi
- else
- bticon="${fgred}$fgend"
- fi
- fi
-
- if hash docker 2>/dev/null; then
- nasavpn=$(docker ps --format "{{.Names}}" | grep nasavpn)
- if [ -n "$nasavpn" ]; then
- nasaicon="%{O3}${fggreen}異$fgend"
- else
- nasaicon="%{O3}${fgred}異$fgend"
- fi
- vnc=$(docker ps --format "{{.Names}}" | grep novnc)
- if [ -n "$vnc" ]; then
- vncicon="%{O3}${fggreen}$fgend"
- else
- vncicon="%{O3}${fgred}$fgend"
- fi
- fi
-
- segment_text="$bticon$nasaicon$vncicon$neticon"
-}
-
-segment_memory() {
- local mempct
- local memclass
-
- mempct=$(free | grep Mem | awk '{ print int($3/$2 * 100.0 + 0.5) }')
- if [ "$mempct" -gt 75 ]; then
- memclass=$fgred
- elif [ "$mempct" -gt 50 ]; then
- memclass=$fgblue
- else
- memclass=$fggreen
- fi
- segment_text=$memclass
- append_percent_icon "$mempct"
- segment_text="${segment_text}$fgend"
-}
-
-segment_disk() {
- local dpath=$1
- local diskpct
- local diskclass
- local diskicon
-
- if [ "$dpath" = "/" ]; then
- diskicon=""
- else
- diskicon=""
- fi
-
- diskpct=$(df --output=pcent "$dpath" | sed 1d | sed 's/^[ \t]*//' | sed 's/%.*//')
- if [ "$diskpct" -gt 90 ]; then
- diskclass=$fgred
- elif [ "$diskpct" -gt 75 ]; then
- diskclass=$fgblue
- else
- diskclass=$fggreen
- fi
- segment_text=$diskclass
- append_percent_icon "$diskpct"
- segment_text="${segment_text}$diskicon$fgend"
-}
-
-segment_cpu() {
- local cpupct
- local cpuclass
-
- cpupct=$(awk '{u=$2+$4; t=$2+$4+$5; if (NR==1){u1=u; t1=t;} else print ($2+$4-u1) * 100 / (t-t1); }' <(grep 'cpu ' /proc/stat) <(sleep 1;grep 'cpu ' /proc/stat) | awk '{print int($1+0.5)}')
- if [ "$cpupct" -gt 90 ]; then
- cpuclass=$fgred
- elif [ "$cpupct" -gt 25 ]; then
- cpuclass=$fgblue
- else
- cpuclass=$fggreen
- fi
- segment_text=$cpuclass
- append_percent_icon "$cpupct"
- segment_text="${segment_text}$fgend"
-}
-
-segment_audio() {
- local audiohdmi
- local audiobt
- local audicon
- local volpct
-
- if hash pactl 2>/dev/null; then
- # audio output device (hdmi/analog)
- audiohdmi=$(pactl get-default-sink | grep hdmi)
- audiobt=$(pactl get-default-sink | grep bluez)
- fi
-
- if [ -n "$audiobt" ]; then
- audclass=$fgblue
- audicon=''
- else
- audclass=$fggreen
- if [ "$hostname" != "ellison" ]; then
- if [ -z "$audiohdmi" ]; then
- audicon=''
- else
- audicon='蓼'
- fi
- else
- audicon='蓼'
- fi
- fi
- if hash pamixer 2>/dev/null; then
- volpct=$(pamixer --get-volume-human | sed 's/%//')
- if [ "$volpct" = "muted" ]; then
- audclass=$fgred
- volpct="0"
- fi
- fi
- segment_text=$audclass
- append_percent_icon "$volpct"
- segment_text="$segment_text$audicon$fgend"
-}
-
-segment_battery() {
- local battpct
- local batstat
- local baticon
- local batclass
-
- if hash upower 2>/dev/null; then
- # battery charge percent
- battpct="$(upower --show-info $(upower --enumerate | grep -i 'BAT') | grep -E "percentage" | awk '{print $2}')"
- battpct="${battpct%\%}"
-
- # battery status (charging/charged/etc)
- batstat="$(upower --show-info $(upower --enumerate | grep -i 'BAT') | grep -E "state" | awk '{print $2}')"
-
- if (( battpct > 80 )); then
- batclass=$fggreen
- elif (( battpct < 20 )); then
- batclass=$fgred
- else
- batclass=$fgblue
- fi
-
- segment_text="$batclass"
-
- if [ "$batstat" = "charging" ]; then
- segment_text="${segment_text}"
- elif [ "$batstat" = "fully-charged" ]; then
- segment_text="${segment_text}"
- else
- append_battery_icon "$battpct"
- fi
-
- segment_text="$segment_text$fgend"
- else
- segment_text="$fggreenﮣ$fgend"
- fi
-}
-
-segment_date() {
- segment_text="$(date +$'%a %b %d') $fgblue$(date +$'%H:%M')$fgend"
-}
-
-last_text=''
-while true; do
- {
- full_text=''
- for monitor in $(herbstclient list_monitors | cut -d: -f1); do
- panel_text="%{S$monitor}%{l}"
- append_segment 0 segment_tags "$monitor"
- panel_text="$panel_text%{l}%{r}"
- append_segment 60 segment_timew
- append_separator
- append_segment 60 segment_keyboard
- append_separator
- append_segment 10 segment_network
- append_separator
- panel_text="$panel_text%{A:conky:}"
- append_segment 10 segment_memory
- append_separator
- append_segment 60 segment_disk "/"
- append_separator
- if [ "$hostname" != "ellison" ]; then
- append_segment 60 segment_disk "/home"
- append_separator
- fi
- append_segment 5 segment_cpu
- append_separator
- append_segment 60 segment_audio
- append_separator
- append_segment 30 segment_battery
- panel_text="$panel_text%{A}"
- append_separator
- append_segment 60 segment_date
- if [ "$monitor" -eq 0 ]; then
- tray_width=$(xdotool search --classname panel | xargs -n1 xprop -id | grep 'program specified minimum size' | cut -d ' ' -f 5)
- tray_width=$(( tray_width + 5 ))
- panel_text="$panel_text%{O$tray_width}"
- fi
- panel_text="$panel_text%{r}"
- full_text="$full_text$panel_text"
- done
- if [ "$full_text" != "$last_text" ]; then
- echo -e "$full_text"
- last_text="$full_text"
- fi
- } >> "$fifo"
- unset FORCE_REFRESH
- sleep 1
-done
diff --git a/herbstluftwm/wallpaper.jpg b/herbstluftwm/wallpaper.jpg
deleted file mode 100644
index 90d5681..0000000
Binary files a/herbstluftwm/wallpaper.jpg and /dev/null differ
diff --git a/herbstluftwm/wallpaper.png b/herbstluftwm/wallpaper.png
deleted file mode 100644
index a4a217c..0000000
Binary files a/herbstluftwm/wallpaper.png and /dev/null differ
diff --git a/buildfiles/newtabber/build.sh b/newtabber/build.sh
similarity index 100%
rename from buildfiles/newtabber/build.sh
rename to newtabber/build.sh
diff --git a/buildfiles/newtabber/links.json b/newtabber/links.json
similarity index 100%
rename from buildfiles/newtabber/links.json
rename to newtabber/links.json
diff --git a/nvim/lua/plugins-conf.lua b/nvim/lua/plugins-conf.lua
index 3ef3196..2148060 100644
--- a/nvim/lua/plugins-conf.lua
+++ b/nvim/lua/plugins-conf.lua
@@ -73,7 +73,7 @@ lsp.omnisharp.setup {
end
return util.root_pattern("*.sln")(file) or util.root_pattern("*.csproj")(file) or util.root_pattern("omnisharp.json")(file)
end,
- cmd = { "/home/rudism/.local/share/omnisharp/OmniSharp" }, --"--languageserver" , "--hostPID", tostring(pid) },
+ cmd = { "/usr/bin/omnisharp" }, --"--languageserver" , "--hostPID", tostring(pid) },
}
lsp.tsserver.setup {
capabilities = lspcap,
diff --git a/picom/picom-ellison.conf b/picom/picom-ellison.conf
deleted file mode 100644
index 1625e23..0000000
--- a/picom/picom-ellison.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-shadow = false;
-fading = false;
-inactive-opacity = 1.0;
-frame-opacity = 1.0;
-vsync = true;
diff --git a/picom/picom.conf b/picom/picom.conf
deleted file mode 100644
index a059b04..0000000
--- a/picom/picom.conf
+++ /dev/null
@@ -1,17 +0,0 @@
-shadow = true;
-shadow-radius = 7;
-shadow-offset-x = -7;
-shadow-offset-y = -7;
-fading = true;
-fade-in-step = 0.1;
-fade-out-step = 0.1;
-inactive-opacity = 1.0;
-frame-opacity = 1.0;
-wintypes:
-{
- tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
- dock = { shadow = false; }
- dnd = { shadow = false; }
- popup_menu = { opacity = 0.9; }
- dropdown_menu = { opacity = 0.9; }
-};
diff --git a/rockbox/Playlists/Christmas.m3u8 b/rockbox/Playlists/Christmas.m3u8
deleted file mode 100755
index f1a4ecd..0000000
--- a/rockbox/Playlists/Christmas.m3u8
+++ /dev/null
@@ -1,170 +0,0 @@
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/01 - Flurries.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/02 - Frosty the Snowman.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/03 - Sleigh Ride.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/04 - God Rest Ye Merry Gentlemen.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/05 - Jingle Bells.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/06 - Oh Holy Night.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/07 - Rudolph the Red Nosed Reindeer.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/08 - Sleddin' Hill.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/09 - Little Drummer Boy.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/10 - Winter Wonderland.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/11 - O Come O Come Emmanuel.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/12 - Carol of the Bells.mp3
-//MUSIC/August Burns Red/August Burns Red Presents Sleddin' Hill, A Holiday Album (2012)/13 - We Wish You a Merry Christmas.mp3
-//MUSIC/Austrian Death Machine/A Very Brutal Christmas (2008)/01 - Jingle Bells.mp3
-//MUSIC/ComputeHer & 8 Bit Weapon/It's a Chiptune Holiday! (2009)/01 Deck the Halls (Nos Galan).mp3
-//MUSIC/ComputeHer & 8 Bit Weapon/It's a Chiptune Holiday! (2009)/02 Hanukkah.mp3
-//MUSIC/ComputeHer & 8 Bit Weapon/It's a Chiptune Holiday! (2009)/03 O Christmas Tree (Oh Chanukuh).mp3
-//MUSIC/ComputeHer & 8 Bit Weapon/It's a Chiptune Holiday! (2009)/04 Jingle Bells (One Horse Open Sleigh).mp3
-//MUSIC/ComputeHer & 8 Bit Weapon/It's a Chiptune Holiday! (2009)/05 Joy to the World.mp3
-//MUSIC/ComputeHer & 8 Bit Weapon/It's a Chiptune Holiday! (2009)/06 Greensleeves (What Child Is This).mp3
-//MUSIC/ComputeHer & 8 Bit Weapon/It's a Chiptune Holiday! (2009)/07 God Rest Ye Merry Gentlemen.mp3
-//MUSIC/ComputeHer & 8 Bit Weapon/It's a Chiptune Holiday! (2009)/08 Ave Maria (Well-Tempered Clavier).mp3
-//MUSIC/ComputeHer & 8 Bit Weapon/It's a Chiptune Holiday! (2009)/Folder.gif
-//MUSIC/Halford/Halford III- Winter Songs (2009)/01 Get Into the Spirit.mp3
-//MUSIC/Halford/Halford III- Winter Songs (2009)/02 We Three Kings.mp3
-//MUSIC/Halford/Halford III- Winter Songs (2009)/03 Oh Come, O Come, Emanuel.mp3
-//MUSIC/Halford/Halford III- Winter Songs (2009)/04 Winter Song.mp3
-//MUSIC/Halford/Halford III- Winter Songs (2009)/06 Christmas for Everyone.mp3
-//MUSIC/Halford/Halford III- Winter Songs (2009)/07 I Don't Care.mp3
-//MUSIC/Halford/Halford III- Winter Songs (2009)/08 Light of the World.mp3
-//MUSIC/Halford/Halford III- Winter Songs (2009)/09 Oh Holy Night.mp3
-//MUSIC/Halford/Halford III- Winter Songs (2009)/10 Come All Ye Faithful.mp3
-//MUSIC/J.J. Hrubovcak/Death Metal Christmas (2013)/01 - Unrest for Melancholy Men (God Rest Ye Merry Gentlemen).mp3
-//MUSIC/J.J. Hrubovcak/Death Metal Christmas (2013)/02 - Earthen Kings (We Three Kings).mp3
-//MUSIC/J.J. Hrubovcak/Death Metal Christmas (2013)/03 - Nutcracker Dance of the Sugar Plum Fairy.mp3
-//MUSIC/J.J. Hrubovcak/Death Metal Christmas (2013)/04 - Greensleeves.mp3
-//MUSIC/J.J. Hrubovcak/Death Metal Christmas (2013)/05 - O Come, O Come, Azrael (O Come, O Come, Emmanuel).mp3
-//MUSIC/Theocracy/Club of Souls - Christmas Music (2012)/01 - Little Drummer Boy.mp3
-//MUSIC/Theocracy/Club of Souls - Christmas Music (2012)/02 - Deck the Joy (To the Halls).mp3
-//MUSIC/Theocracy/Club of Souls - Christmas Music (2012)/03 - O Come Emannuel.mp3
-//MUSIC/Theocracy/Club of Souls - Christmas Music (2012)/04 - Rudolph vs. Frosty.mp3
-//MUSIC/Theocracy/Club of Souls - Christmas Music (2012)/05 - Angels From the Realms of Glory.mp3
-//MUSIC/Theocracy/Club of Souls - Christmas Music (2012)/06 - All I Want For Christmas.mp3
-//MUSIC/Theocracy/Club of Souls - Christmas Music (2012)/07 - Christmas Medley (Remix).mp3
-//MUSIC/Theocracy/Club of Souls - Christmas Music (2012)/08 - Wynter Fever.mp3
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/01 - An Angel Came Down.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/02 - O Come All Ye FaithfulO Holy Night (Instrumental).ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/03 - A Star to Follow.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/04 - First Snow (Instrumental).ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/05 - The Silent Nutcracker (Instrumental).ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/06 - A Mad Russian's Christmas (Instrumental).ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/07 - The Prince of Peace.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/08 - Christmas EveSarajevo 1224 (Instrumental).ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/09 - Good King Joy.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/10 - Ornament.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/11 - The First Noel (Instrumental).ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/12 - Old City Bar.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/13 - Promises to Keep.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/14 - This Christmas Day.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/15 - An Angel Returned.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/16 - O Holy Night.ogg
-//MUSIC/Trans-Siberian Orchestra/Christmas Eve and Other Stories (1996)/17 - God Rest Ye Merry Gentlemen.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/01 - The Ghosts of Christmas Eve.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/02 - Boughs of Holly.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/03 - The World that She Sees.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/04 - The World that He Sees.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/05 - Midnight Christmas Eve.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/06 - The March of the Kings Hark the Herald Angel.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/07 - The Three Kings and I (What Really Happened).ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/08 - Christmas Canon.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/09 - Joy Angels We Have Heard On High.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/10 - Find Our Way Home.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/11 - Appalachian Snowfall.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/12 - The Music Box.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/13 - The Snow Came Down.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/14 - Christmas in the Air.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/15 - Dream Child (A Christmas Dream).ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/16 - An Angel's Share.ogg
-//MUSIC/Trans-Siberian Orchestra/The Christmas Attic (1998)/17 - Music Box Blues.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/01 - Faith Noel.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/02 - The Lost Christmas Eve.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/03 - Christmas Dreams.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/04 - Wizards in Winter.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/05 - Remember.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/06 - Anno Domine.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/07 - Christmas Concerto.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/08 - Queen of the Winter Night.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/09 - Christmas Nights in Blue.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/10 - Christmas Jazz.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/11 - Christmas Jam.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/12 - Siberian Sleigh Ride.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/13 - What is Christmas.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/14 - For the Sake of Our Brother.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/15 - The Wisdom of Snow.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/16 - Wish Liszt (Toy Shop Madness).ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/17 - Back to a Reason (Part II).ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/18 - Christmas Bells, Carousels & Time.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/19 - What Child is This.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/20 - O' Come All Ye Faithful.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/21 - Christmas Canon Rock.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/22 - Different Wings.ogg
-//MUSIC/Trans-Siberian Orchestra/The Lost Christmas Eve (2004)/23 - Midnight Clear.ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/01 - Have Yourself a Merry Little Christmas.ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/02 - O Come All Ye Faithful.ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/03 - White Christmas.ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/04 - I'll Be Home for Christmas.ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/05 - Silver Bells.ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/06 - I Saw Mommy Kissing Santa Claus.ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/07 - Let It Snow.ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/08 - Deck the Halls.ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/09 - The Christmas Song (Chestnuts Roasting on an Open Fire).ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/10 - Heavy Metal Christmas (The Twelve Days of Christmas).ogg
-//MUSIC/Twisted Sister/A Twisted Christmas (2006)/11 - Twisted Christmas Cheer.ogg
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/01 - Angels We have Heard on High.mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/02 - God Rest Ye Merry Gentlemen.mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/03 - Mary did You Know.mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/04 - Coventry Carol.mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/05 - Let All Mortal Flesh Keep Silence.mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/06 - The Little Drummer Boy.mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/07 - O Come All Ye Faithful.mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/08 - Child Messiah.mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/09 - O Holy Night.mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/10 - God Rest Ye Merry Gentlemen (Take 2).mp3
-//MUSIC/Various Artists/A Brutal Christmas The Season in Chaos (2002)/11 - Joy to the World.mp3
-//MUSIC/Various Artists/Christmas Grass (2013)/1-01 Christmas Time's A Comin'.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-02 What Child Is This.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-03 Beautiful Star Of Bethlehem.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-04 Santa Claus Is Comin' To Town.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-05 Mary, Did You Know.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-06 Joy To The World.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-07 Deck The Halls.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-08 Please Come Home For Christmas.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-09 God Rest Ye Merry Gentlemen.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-10 Tennessee Christmas.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-11 It Came Upon A Midnight Clear.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-12 I'll Be Home For Christmas.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-13 O Christmas Candle.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/1-14 Carol Of The Bells.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-01 Rudolph The Red-Nosed Reindeer.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-02 One Bright Star.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-03 Winter Wonderland.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-04 Silent Night.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-05 The Christmas Song.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-06 I Heard The Bells On Christmas Day.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-07 Jingle Bells.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-08 O Christmas Tree.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-09 Merry Christmas Ho, Ho, Ho.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-10 Away In A Manger.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-11 Christmas Is Near You.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-12 Silver Bells.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-13 Christmas in Dixie.ogg
-//MUSIC/Various Artists/Christmas Grass (2013)/2-14 We Wish You A Merry Christmas Afternoon.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-01 - We Wish You a Merry Xmas.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-02 - Run Rudolph Run.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-03 - Santa Claws Is Coming To Town.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-04 - God Rest Ye Merry Gentlemen.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-05 - Silver Bells.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-06 - Little Drummer Boy.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-07 - Santa Claus is Back in Town.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-08 - Silent Night.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-09 - Deck the Halls.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-10 - Grandma got Ran Over by a Reindeer.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-11 - Rockin' Around the Xmas Tree.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/01-12 - Happy Xmas (War is Over).ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/02-01 - O' Christmas Tree.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/02-02 - Auld Lang Syne.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/02-03 - Frosty the Snowman.ogg
-//MUSIC/Various Artists/We Wish You a Metal Xmas and a Headbanging New Year (2008)/02-04 - Rudolph the Red Nosed Reindeer.ogg
-//MUSIC/_Singles (Christmas)/Kamelot - We Three Kings.mp3
-//MUSIC/_Singles (Christmas)/King Diamond - No Presents For Christmas.mp3
diff --git a/rockbox/README.md b/rockbox/README.md
deleted file mode 100644
index b2a1282..0000000
--- a/rockbox/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-Shortcuts and custom database navigation definitions that I use on my Rockbox devices. They just go into the root of the `.rockbox` directory.
-
-Playlists go to the root of the SD card and are pathed for the FiiO M3K (but could be converted to other base paths easily enough).
diff --git a/rockbox/shortcuts.txt b/rockbox/shortcuts.txt
deleted file mode 100755
index 16c0d84..0000000
--- a/rockbox/shortcuts.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-[shortcut]
-name: Sleep Timer 60
-type: time
-data: sleep 60
-
-[shortcut]
-name: Sleep Timer 30
-type: time
-data: sleep 30
-
-[shortcut]
-name: Stop Sleep Timer
-type: time
-data: sleep 0
diff --git a/rockbox/tagnavi_custom.config b/rockbox/tagnavi_custom.config
deleted file mode 100755
index a43b73c..0000000
--- a/rockbox/tagnavi_custom.config
+++ /dev/null
@@ -1,5 +0,0 @@
-#! rockbox/tagbrowser/2.0
-
-%menu_start "custom" "Custom Browsers"
-"Genre Artists" -> genre -> albumartist -> album -> title = "fmt_title"
-"Genre Albums" -> genre -> album -> title = "fmt_title"
diff --git a/rofi/config.rasi b/rofi/config.rasi
deleted file mode 100644
index 87d7938..0000000
--- a/rofi/config.rasi
+++ /dev/null
@@ -1,17 +0,0 @@
-configuration{
- modi: "run,drun,window";
- icon-theme: "Oranchelo";
- show-icons: true;
- terminal: "st";
- drun-display-format: "{icon} {name}";
- location: 0;
- disable-history: false;
- hide-scrollbar: true;
- display-drun: " Apps ";
- display-run: " Run ";
- display-window: " Window";
- display-Network: " Network";
- sidebar-mode: true;
-}
-
-@theme "catppuccin-mocha"
diff --git a/rofi/dot-local-share-rofi-themes/catppuccin-mocha.rasi b/rofi/dot-local-share-rofi-themes/catppuccin-mocha.rasi
deleted file mode 100644
index 7324c84..0000000
--- a/rofi/dot-local-share-rofi-themes/catppuccin-mocha.rasi
+++ /dev/null
@@ -1,104 +0,0 @@
-* {
- bg-col: #1e1e2e;
- bg-col-light: #1e1e2e;
- border-col: #1e1e2e;
- selected-col: #1e1e2e;
- blue: #89b4fa;
- fg-col: #cdd6f4;
- fg-col2: #f38ba8;
- grey: #6c7086;
-
- width: 600;
- font: "monospace 14";
-}
-
-element-text, element-icon , mode-switcher {
- background-color: inherit;
- text-color: inherit;
-}
-
-window {
- height: 360px;
- border: 3px;
- border-color: @border-col;
- background-color: @bg-col;
-}
-
-mainbox {
- background-color: @bg-col;
-}
-
-inputbar {
- children: [prompt,entry];
- background-color: @bg-col;
- border-radius: 5px;
- padding: 2px;
-}
-
-prompt {
- background-color: @blue;
- padding: 6px;
- text-color: @bg-col;
- border-radius: 3px;
- margin: 20px 0px 0px 20px;
-}
-
-textbox {
- padding: 20px 20px 0 20px;
- text-color: @fg-col;
- background-color: @bg-col;
-}
-
-textbox-prompt-colon {
- expand: false;
- str: ":";
-}
-
-entry {
- padding: 6px;
- margin: 20px 0px 0px 10px;
- text-color: @fg-col;
- background-color: @bg-col;
-}
-
-listview {
- border: 0px 0px 0px;
- padding: 6px 0px 0px;
- margin: 10px 0px 0px 20px;
- columns: 1;
- lines: 5;
- background-color: @bg-col;
-}
-
-element {
- padding: 5px;
- background-color: @bg-col;
- text-color: @fg-col ;
-}
-
-element-icon {
- size: 25px;
-}
-
-element selected {
- background-color: @selected-col ;
- text-color: @fg-col2 ;
-}
-
-mode-switcher {
- spacing: 0;
- }
-
-button {
- padding: 10px;
- background-color: @bg-col-light;
- text-color: @grey;
- vertical-align: 0.5;
- horizontal-align: 0.5;
-}
-
-button selected {
- background-color: @bg-col;
- text-color: @blue;
-}
-
diff --git a/shell/bash_profile b/shell/bash_profile
deleted file mode 100644
index 5545f00..0000000
--- a/shell/bash_profile
+++ /dev/null
@@ -1,5 +0,0 @@
-#
-# ~/.bash_profile
-#
-
-[[ -f ~/.bashrc ]] && . ~/.bashrc
diff --git a/shell/bashrc b/shell/bashrc
deleted file mode 100644
index 08e3c58..0000000
--- a/shell/bashrc
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env bash
-#
-# ~/.bashrc
-#
-# If not running interactively, don't do anything
-[[ $- != *i* ]] && return
-
-# source shared config
-for shared in ~/skynet/shell/bashrc.d/*.sh; do
- source "$shared"
-done
diff --git a/shell/bashrc.d/01-common.sh b/shell/bashrc.d/01-common.sh
deleted file mode 100644
index f3474a1..0000000
--- a/shell/bashrc.d/01-common.sh
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/usr/bin/env bash
-
-set -o vi
-shopt -s histappend
-shopt -s cmdhist
-HISTSIZE=1000000
-HISTFILESIZE=1000000
-HISTCONTROL=ignoreboth
-HISTIGNORE='ls:history'
-HISTTIMEFORMAT='%F %T '
-
-
-eval "$(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)"
-
-LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$HOME/.local/lib"
-PATH="$HOME/.local/bin:$PATH:$HOME/skynet/bin:$HOME/node/node_modules/.bin:$HOME/go/bin:$HOME/.dotnet:$HOME/.dotnet/tools:$HOME/.cargo/bin:$HOME/.luarocks/bin"
-
-TERM_ITALICS=true
-EDITOR=vim
-PAGER=bat
-MANPAGER=batman
-DOTNET_ROOT=~/.dotnet
-ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
-GPG_TTY=$(tty)
-
-export TERM_ITALICS LD_LIBRARY_PATH PATH EDITOR PAGER MANPAGER DOTNET_ROOT ANDROID_EMULATOR_USE_SYSTEM_LIBS GPG_TTY
-
-alias ls='exa --icons'
-alias cat='bat'
-alias cd..='cd ..'
-alias j='goto'
-alias jqize="jq -R -r '. as \$line | try fromjson catch \$line'"
-alias jcurl="curl -H 'Content-Type: application/json' -H 'Accept: application/json'"
-alias gitlog='git log --oneline --graph'
-alias watchsync='watch grep -e Dirty: -e Writeback: /proc/meminfo'
-alias psgrep='ps -ef | grep -v grep | grep'
-alias serve='python -m http.server'
-alias dockerrm='docker stop $(docker ps -aq); docker rm -v $(docker ps -aq); docker volume prune -f --filter all=true; docker rmi $(docker images -q --filter "dangling=true")'
-alias cls='clear && echo -en "\e[3J"'
-alias removebom="sed -i \$'1s/^\uFEFF//'"
-alias duskh="du -hka --max-depth=1 | sort -h"
-alias 8bitdo="xboxdrv --evdev /dev/btjoy --config ~/.config/xboxdrv/8bitdo.conf"
-alias ddev="export COMPOSE_FILE=docker-compose.dev.yaml"
-alias penscreen="xsetwacom set 'Wacom Intuos PT S Pen stylus' MapToOutput HEAD-1; xsetwacom set 'Wacom Intuos PT S Pen eraser' MapToOutput HEAD-1"
-alias connected="ss -O4Hpr -tun state connected"
-
-test -e ~/.bash_aliases && source ~/.bash_aliases
diff --git a/shell/bashrc.d/02-plugin-config.sh b/shell/bashrc.d/02-plugin-config.sh
deleted file mode 100644
index 3172d3a..0000000
--- a/shell/bashrc.d/02-plugin-config.sh
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/usr/bin/env bash
-
-# set prefix if in termux
-if uname -a | grep -q Android; then
- pathprefix=/data/data/com.termux/files
-else
- pathprefix=
-fi;
-
-# fzf config
-[ -f "$pathprefix/usr/share/fzf/completion.bash" ] && source "$pathprefix/usr/share/fzf/completion.bash"
-[ -f "$pathprefix/usr/share/fzf/key-bindings.bash" ] && source "$pathprefix/usr/share/fzf/key-bindings.bash"
-
-# goto
-[ -f ~/skynet/scripts/goto.sh ] && source ~/skynet/scripts/goto.sh
-
-# bash completion
-test -e "$pathprefix/usr/share/bash-completion/bash_completion" && source "$pathprefix/usr/share/bash-completion/bash_completion"
-
-# colorizer
-GRC_ALIASES=true
-test -e "$pathprefix/usr/share/grc/grc.sh" && source "$pathprefix/usr/share/grc/grc.sh"
-
-# git bash completions
-test -e ~/skynet/scripts/git-completion.bash && source ~/skynet/scripts/git-completion.bash
-
-# nvm
-test -e ~/.nvm/nvm.sh && source ~/.nvm/nvm.sh
-
-test -e ~/.cargo/env && source ~/.cargo/env
-
-# bat theme
-BAT_THEME='Catppuccin-mocha'
-
-# nnn color config
-NNN_PLUG='d:dragdrop;i:imgview'
-NNN_PREVIEWDIR="$HOME/.cache/nnn/previews"
-BLK="03" CHR="03" DIR="04" EXE="02" REG="07" HARDLINK="05" SYMLINK="05" MISSING="08" ORPHAN="01" FIFO="06" SOCK="03" UNKNOWN="01"
-NNN_COLORS="#04020301;4231"
-NNN_FCOLORS="$BLK$CHR$DIR$EXE$REG$HARDLINK$SYMLINK$MISSING$ORPHAN$FIFO$SOCK$UNKNOWN"
-
-export GRC_ALIASES BAT_THEME NNN_PLUG NNN_PREVIEWDIR NNN_COLORS NNN_FCOLORS
-
-# google cloud sdk
-
-# The next line updates PATH for the Google Cloud SDK.
-if [ -f '/home/rudism/.local/opt/google-cloud-sdk/path.bash.inc' ]; then . '/home/rudism/.local/opt/google-cloud-sdk/path.bash.inc'; fi
-
-# The next line enables shell command completion for gcloud.
-if [ -f '/home/rudism/.local/opt/google-cloud-sdk/completion.bash.inc' ]; then . '/home/rudism/.local/opt/google-cloud-sdk/completion.bash.inc'; fi
diff --git a/shell/bashrc.d/03-functions.sh b/shell/bashrc.d/03-functions.sh
deleted file mode 100644
index a534042..0000000
--- a/shell/bashrc.d/03-functions.sh
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/usr/bin/env bash
-
-# dictionary
-define(){
- dict -d gcide "$1" | bat
-}
-
-# thesaurus
-synonym(){
- dict -d moby-thesaurus "$1" | bat
-}
-
-# mount with user permissions
-mmount(){
- sudo mount -o uid="$(whoami)",gid="$(whoami)" "/dev/$1" "/mnt/$2"
-}
-
-# easy ssh-agent persistence
-function ssha() {
- test=$(ps -ef | grep '\sssh-agent$' | grep -v grep | awk '{print $2}' | xargs)
- if [ "$test" = "" ]; then
- if [ -e ~/.ssh-agent.sh ]; then
- rm -f ~/.ssh-agent.sh
- fi
- ssh-agent | grep -v echo >&~/.ssh-agent.sh
- fi
-
- test -e ~/.ssh-agent.sh && source ~/.ssh-agent.sh
- ssh-add -l > /dev/null || ssh-add
-}
-test -e ~/.ssh-agent.sh && source ~/.ssh-agent.sh
diff --git a/shell/bashrc.d/04-prompt.sh b/shell/bashrc.d/04-prompt.sh
deleted file mode 100644
index 9d9552b..0000000
--- a/shell/bashrc.d/04-prompt.sh
+++ /dev/null
@@ -1,72 +0,0 @@
-#!/usr/bin/env bash
-
-RED=$(tput setaf 1)
-GREEN=$(tput setaf 2)
-YELLOW=$(tput setaf 3)
-BLUE=$(tput setaf 4)
-MAGENTA=$(tput setaf 5)
-GRAY=$(tput setaf 8)
-ITALIC=$(tput sitm)
-RESET=$(tput sgr0)
-
-format_command_time() {
- local x="$1"
- local ms="$((x % 1000))"
- x="$((x / 1000))"
- local sec="$((x % 60))"
- x="$((x / 60))"
- local min="$((x % 60))"
- x="$((x / 60))"
- local hour="$((x % 24))"
- local day="$((x / 24))"
- local timestr
- if [ "$day" -gt 0 ]; then
- timestr="${day}d "
- fi
- if [ "$hour" -gt 0 ]; then
- timestr="$timestr${hour}h "
- fi
- if [ "$min" -gt 0 ]; then
- timestr="$timestr${min}m "
- fi
- if [ "$sec" -gt 0 ]; then
- timestr="$timestr${sec}s "
- fi
- timestr="$timestr${ms}ms"
- printf '%s' "$timestr"
-}
-
-last_command_timer() {
- last_command_start=${last_command_start:-$(date +%s%3N)}
-}
-
-set_prompt() {
- if [ $? -eq 0 ]; then
- prompt_color="$GREEN"
- else
- prompt_color="$RED"
- fi
- if [ -n "$last_command_start" ]; then
- last_command_length=$(format_command_time "$(($(date +%s%3N) - last_command_start))")
- unset last_command_start
- last_command_stats="$ITALIC${MAGENTA}Completed in $last_command_length.$RESET\n"
- else
- last_command_stats=
- fi
- git_branch=$(git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/')
- if [ -n "$git_branch" ]; then
- local git_status
- git_status=$(git status --porcelain)
- if [ -n "$git_status" ]; then
- git_symbol=" $RED "
- else
- git_symbol=" $GREEN "
- fi
- else
- git_symbol=
- fi
- PS1="\n$last_command_stats\[$GRAY\]$(whoami)@$(hostname)\[$RESET\]\n\[$BLUE\]\w\[$RESET\]$git_symbol\[$YELLOW\]$git_branch\[$RESET\]\n\[$prompt_color\]❯\[$RESET\] "
-}
-
-trap 'last_command_timer' DEBUG
-PROMPT_COMMAND=set_prompt
diff --git a/shell/bashrc.d/50-goto.sh b/shell/bashrc.d/50-goto.sh
deleted file mode 100644
index 4d52ccd..0000000
--- a/shell/bashrc.d/50-goto.sh
+++ /dev/null
@@ -1,479 +0,0 @@
-# shellcheck shell=bash
-# shellcheck disable=SC2039
-# SOURCE: https://github.com/iridakos/goto
-# MIT License
-#
-# Copyright (c) 2018 Lazarus Lazaridis
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in all
-# copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-# SOFTWARE.
-
-# Changes to the given alias directory
-# or executes a command based on the arguments.
-goto()
-{
- local target
- _goto_resolve_db
-
- if [ -z "$1" ]; then
- # display usage and exit when no args
- _goto_usage
- return
- fi
-
- subcommand="$1"
- shift
- case "$subcommand" in
- -c|--cleanup)
- _goto_cleanup "$@"
- ;;
- -r|--register) # Register an alias
- _goto_register_alias "$@"
- ;;
- -u|--unregister) # Unregister an alias
- _goto_unregister_alias "$@"
- ;;
- -p|--push) # Push the current directory onto the pushd stack, then goto
- _goto_directory_push "$@"
- ;;
- -o|--pop) # Pop the top directory off of the pushd stack, then change that directory
- _goto_directory_pop
- ;;
- -l|--list)
- _goto_list_aliases
- ;;
- -x|--expand) # Expand an alias
- _goto_expand_alias "$@"
- ;;
- -h|--help)
- _goto_usage
- ;;
- -v|--version)
- _goto_version
- ;;
- *)
- _goto_directory "$subcommand"
- ;;
- esac
- return $?
-}
-
-_goto_resolve_db()
-{
- local CONFIG_DEFAULT="${XDG_CONFIG_HOME:-$HOME/.config}/goto"
- GOTO_DB="${GOTO_DB:-$CONFIG_DEFAULT}"
- GOTO_DB_CONFIG_DIRNAME=$(dirname "$GOTO_DB")
- if [[ ! -d "$GOTO_DB_CONFIG_DIRNAME" ]]; then
- mkdir "$GOTO_DB_CONFIG_DIRNAME"
- fi
- touch -a "$GOTO_DB"
-}
-
-_goto_usage()
-{
- cat <<\USAGE
-usage: goto [