summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xkeyboard/virt2
l---------launch/chrome (renamed from programs/chrome)0
-rwxr-xr-xlaunch/emu (renamed from misc/emu)0
-rwxr-xr-xlaunch/launch (renamed from misc/launch)0
-rwxr-xr-xlaunch/tserv (renamed from misc/tserv)0
-rwxr-xr-xmisc/mime51
-rwxr-xr-xmisc/wifitoggle34
-rwxr-xr-xsync/pushsite (renamed from misc/pullsite)0
-rwxr-xr-xsync/sinkold48
-rw-r--r--video/.transtape.swp0
-rwxr-xr-xx11/capsmap1
-rwxr-xr-xx11/settitle (renamed from st/settitle)0
12 files changed, 84 insertions, 52 deletions
diff --git a/keyboard/virt b/keyboard/virt
index 446bfb3..2ab943e 100755
--- a/keyboard/virt
+++ b/keyboard/virt
@@ -2,7 +2,7 @@
virtdir=~/.local/share/virt
halfram() { awk '/^MemTotal/ { printf "%dM\n", $2/2/1024 }' /proc/meminfo; } # Needs to be either in M or G according to man page
-halfthreads() { awk '/^processor/ { cpus++ } END{ print cpus/2 }' /proc/cpuinfo; }
+halfthreads() { echo $(( $(nproc) / 2 )); }
startvm() {
qemu-system-x86_64 \
-enable-kvm \
diff --git a/programs/chrome b/launch/chrome
index 1fcdd6b..1fcdd6b 120000
--- a/programs/chrome
+++ b/launch/chrome
diff --git a/misc/emu b/launch/emu
index df24b10..df24b10 100755
--- a/misc/emu
+++ b/launch/emu
diff --git a/misc/launch b/launch/launch
index 0e2745e..0e2745e 100755
--- a/misc/launch
+++ b/launch/launch
diff --git a/misc/tserv b/launch/tserv
index 5e0d072..5e0d072 100755
--- a/misc/tserv
+++ b/launch/tserv
diff --git a/misc/mime b/misc/mime
index 2070376..5951b14 100755
--- a/misc/mime
+++ b/misc/mime
@@ -1,7 +1,9 @@
#!/bin/sh
+# Media type csv caching
cachedir="${XDG_CACHE_HOME:-$HOME/.cache}/mimewiz"
-types="`grep -v '#'`"<< TYPES
-application
+mtypesrc="https://www.iana.org/assignments/media-types"
+mtypes="`grep -v '#'`"<< TYPES
+#application
audio
font
#example
@@ -12,36 +14,53 @@ image
text
video
TYPES
-typesrc="https://www.iana.org/assignments/media-types"
-#dlcsv() { curl -sS -C - -e "$typesrc" "$typesrc" > "$typefile" || exit; }
dlcsv() { curl -sS -C - -o "$2" "$1" || exit; }
# Download all media type csv's if they're not avaliable
mkdir -p "$cachedir"
-for type in $types; do
- typefile="$cachedir/$type.csv"
- [ -e "$typefile" ] || dlcsv "$typesrc/$type.csv" "$typefile"
+for mtype in $mtypes; do
+ mtypefile="$cachedir/$mtype.csv"
+ [ -e "$mtypefile" ] || dlcsv "$mtypesrc/$mtype.csv" "$mtypefile"
#[ "$2" = "$type" ] && mimetype="`cut -d',' -f2 $typefile`" && break
done
-#[ -n "$mimetype" ] && xdg-mime default $application.desktop $mimetype
+interactiveopt() { # Usage: interactiveopt "options" "prompt" "maxopts" "col"
+ unset opt # This won't be set if we choose to use recursion, so do it in a while loop instead
+ while [ -z $opt ] 2>/dev/null; do
+ [ -n "$4" ] && [ "$4" = "col" ] \
+ && echo "$1" | nl -s': ' | column \
+ || echo "$1" | nl -s': '
+ read -p "$2" choices \
+ && [ -n "$3" ] && ( choices="$(echo $choices | cut -d' ' -f1-$3)" || ( echo "Invalid entry" && unset choices ) )
+ for choice in $choices; do
+ case "$choice" in
+ [0-9]*) opt="$(echo "$1" | head -"$(echo $choice | tr -cd '[:digit:]')" | tail -1) $opt" ;;
+ *) opt="$(echo "$1" | grep "^$choice$" 2>/dev/null) $opt" ;;
+ esac || ( echo "Invalid option \"$choice\"" && undet opt && break ) # Why wont this unset opt or break???????
+ done
+ done
+}
-# Choose mimetype:
-types="$types\npdf\nspreadsheet ms-excel\nwordprocessing ms-word\npresentation ms-powerpoint\ndrawing\nzip gzip"
-echo "$types" | nl -s': '
-echo "$types" | head -7 | tail -1
+# Choose mimetype:
+mtypes="$mtypes\npdf\nspreadsheet ms-excel\nwordprocessing ms-word\npresentation ms-powerpoint\ndrawing\nzip gzip"
+interactiveopt "$mtypes" "Choose Mimetype: "
+mtype="$opt"
+echo "$mtype"
# Choose subtype
#cut -d',' -f1 "$cachedir/application.csv" | grep drawing | nl -s': ' | column
# Choose program
-ls /usr/share/applications | sed 's/\.desktop//' | nl -s': ' | column
+interactiveopt "$(ls /usr/share/applications | sed 's/\.desktop//')" "Choose program to open with: " col
+program="$opt"
+echo "$program"
-
-#cut -d',' -f1 "$cachedir/image.csv" | nl -s': ' | column
-cut -d',' -f2 "$cachedir/image.csv"
+#echo "All $mtype Types\n$(cut -d',' -f1 "$cachedir/image.csv" | tail -n +2)"
+#cut -d',' -f2 "$cachedir/image.csv"
#jcho "$types" | while read type; do
#done
+
+#[ -n "$mimetype" ] && xdg-mime default $application.desktop $mimetype
diff --git a/misc/wifitoggle b/misc/wifitoggle
deleted file mode 100755
index 4c74da4..0000000
--- a/misc/wifitoggle
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh
-printusage() { echo "Usage: $0 [up|on|down|off|toggle]" && exit; }
-if [ "$COMPUTER" = "laptop" ]; then
- down() {
- doas sv stop dhcpcd sshd rsyncd
- }
- up() {
- doas sv start dhcpcd sshd rsyncd
- }
- toggle() {
- case `doas sv status dhcpcd | cut -d':' -f1` in
- run) down ;;
- down) up ;;
- *) echo "Error: sv returned an invalid string. Is dhcpcd being used on this system? Is runit the init system?" ;;
- esac
- }
-elif [ "$COMPUTER" = "desktop" ]; then
- down() {
- echo hi;
- }
- up() {
- echo hi;
- }
-fi
-
-[ -z "$1" ] && toggle && exit
-
-case "$1" in
- up|on) up ;;
- down|off) down ;;
- toggle) toggle ;;
- *) printusage ;;
-esac
-
diff --git a/misc/pullsite b/sync/pushsite
index 4507256..4507256 100755
--- a/misc/pullsite
+++ b/sync/pushsite
diff --git a/sync/sinkold b/sync/sinkold
new file mode 100755
index 0000000..3022963
--- /dev/null
+++ b/sync/sinkold
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+printusage() { echo "Usage: $0 [<repos> ...] (repos: all,`echo $repos | tr ' ' ','`) [up|down]" && exit; }
+
+repos="docs patches"
+
+oper=`echo $@ | sed 's/.* //'` # Get last argument
+([ -z $2 ] || ([ "$oper" != "up" ] && [ "$oper" != "down" ])) && printusage
+
+# rync options
+#fix this too
+ropts="--archive --partial --progress --recursive --update --verbose" # Equivalent to: -aPrvu --delete
+rdest="tjkrsync@tjkeller.xyz:"
+
+# Colors
+BOLD="\033[1m"
+NORM="\033[0m"
+CYN="\033[0;36m"
+RED="\033[0;31m"
+GRN="\033[0;32m"
+
+printsyncmsg() { echo -n "$CYN[Syncing $SYNCNAME...]$NORM\n"; }
+printsuccess() { echo -n "$BOLD$GRN[Successfully synced $SYNCNAME]\n"; }
+printerror() { echo -n "$BOLD$RED[An error occured while syncing $SYNCNAME]\n"; }
+
+sync() {
+ [ $oper = "up" ] && SYNCNAME="$1$2 to $rdest$2" || SYNCNAME="$rdest$2 to $1$2"
+ printsyncmsg
+ (if [ $oper = "up" ]; then rsync $ropts $1$2 $rdest; else rsync $ropts --delete $rdest$2 $1; fi) \
+ && printsuccess || printerror
+}
+
+# arg1 = options + containing directory path, arg2 = file/directory name
+syncdocs() { destdir="" && sync "/home/timmy/docs/" "school"; }
+#syncsites() { destdir="" && sync "--exclude=pass /home/timmy/.local/src/" "sites"; } # Excludes password file
+syncpatches() { destdir="" && sync "--exclude=.git /home/timmy/.local/src/programs/" "patches"; } # Excludes git files
+
+for arg in "$@"; do
+ case $arg in
+ all) $0 $repos $oper ;;
+ up|down) oper=$arg ;;
+ *) # Would like to use something like $repos) here but cant
+ for repo in $repos; do
+ [ "$arg" = "$repo" ] && sync$arg && break
+ done || printusage
+ ;;
+ esac
+done
diff --git a/video/.transtape.swp b/video/.transtape.swp
deleted file mode 100644
index e69de29..0000000
--- a/video/.transtape.swp
+++ /dev/null
diff --git a/x11/capsmap b/x11/capsmap
index ad107da..36c5eb1 100755
--- a/x11/capsmap
+++ b/x11/capsmap
@@ -1,5 +1,4 @@
#!/bin/sh
-
# Remap caps to super when held
setxkbmap -option caps:super
# Remap caps to escape when pressed
diff --git a/st/settitle b/x11/settitle
index df613ca..df613ca 100755
--- a/st/settitle
+++ b/x11/settitle