diff options
| author | Sam Chudnick <sam@chudnick.com> | 2023-06-11 07:56:17 -0400 |
|---|---|---|
| committer | Sam Chudnick <sam@chudnick.com> | 2023-06-11 07:56:17 -0400 |
| commit | 9e82c96713989a7565eadac505b36e3dbe91cd5a (patch) | |
| tree | 7c2f998cc9d06f97bfe10ce1ee844121b662f595 | |
| parent | 3adcf542289a0883924ae9b9be8b898c36702c95 (diff) | |
Added, removed, renamed scripts
31 files changed, 34 insertions, 260 deletions
diff --git a/.local/bin/alarm b/.local/bin/alarm deleted file mode 100755 index 2909ecf..0000000 --- a/.local/bin/alarm +++ /dev/null | |||
| @@ -1,17 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | [ $1 = "-h" -o $1 = "--help" ] && echo "usage: alarm time sound_file" && exit 0 | ||
| 4 | [ $# != 2 ] && echo "usage: alarm time sound_file" && exit 1 | ||
| 5 | |||
| 6 | echo "alarm set for $1" | ||
| 7 | echo "$(basename "$2") is the alarm tone" | ||
| 8 | |||
| 9 | while [ $(date +%H:%M) != "$1" ] | ||
| 10 | do | ||
| 11 | sleep 1 | ||
| 12 | done | ||
| 13 | |||
| 14 | amixer -q sset Master 100% unmute | ||
| 15 | pkill -RTMIN+10 i3blocks | ||
| 16 | mpv --loop=inf $2 | ||
| 17 | |||
diff --git a/.local/bin/backups/assimilate b/.local/bin/backups/assimilate deleted file mode 100755 index fd6ed7f..0000000 --- a/.local/bin/backups/assimilate +++ /dev/null | |||
| @@ -1,60 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Full system backup with borg | ||
| 3 | |||
| 4 | # Validate argument - should either be onsite or offsite to specify location | ||
| 5 | ERRMSG="error: please specify either onsite or offsite" | ||
| 6 | [ $# -ne 1 ] && echo $ERRMSG && exit 1 | ||
| 7 | [ "$1" != "onsite" -a "$1" != "offsite" ] && echo $ERRMSG && exit 1 | ||
| 8 | |||
| 9 | # Set variables | ||
| 10 | LOCATION="$1" | ||
| 11 | SUDO_OPTS="--preserve-env=BORG_PASSCOMMAND,PASSWORD_STORE_DIR" | ||
| 12 | CREATE_OPTS="--warning --stats --show-rc --exclude-caches --one-file-system" | ||
| 13 | LOG="$HOME/.config/borg/log" | ||
| 14 | |||
| 15 | # Hack to get repository passphrase from pass | ||
| 16 | # The passcommand will be invoked as root, so use sudo to run it as the user calling the script | ||
| 17 | # who owns the password store. The environmental variable PASSWORD_STORE_DIR is passed through | ||
| 18 | # SUDO_OPTS to the borg commands, and then passed to this command from the borg command | ||
| 19 | # by the same means. This allows custom password store locations to work with this script. | ||
| 20 | export BORG_PASSCOMMAND="sudo $SUDO_OPTS -u $USER pass Borg-Backup/$(hostname)-$LOCATION" | ||
| 21 | |||
| 22 | # Create variables and function to monitor exit status | ||
| 23 | WARNING=0 | ||
| 24 | ERROR=0 | ||
| 25 | check_rc() { | ||
| 26 | rc=$1 | ||
| 27 | [ $1 -eq 1 ] && WARNING=1 | ||
| 28 | [ $1 -eq 2 ] && ERROR=1 | ||
| 29 | } | ||
| 30 | |||
| 31 | # Start backup | ||
| 32 | echo -e "\n$LOCATION $(date)\n" >> $LOG | ||
| 33 | notify-send "beginning $LOCATION backup" | ||
| 34 | |||
| 35 | # Backup root partition | ||
| 36 | sudo $SUDO_OPTS borg create $CREATE_OPTS \ | ||
| 37 | --exclude '/dev/*' \ | ||
| 38 | --exclude '/proc/*' \ | ||
| 39 | --exclude '/sys/*' \ | ||
| 40 | --exclude '/tmp/*' \ | ||
| 41 | --exclude '/mnt/*' \ | ||
| 42 | --exclude '/media/*' \ | ||
| 43 | "/mnt/$LOCATION-backup/$(hostname)::root-{now:%Y-%m-%d}" / 2>>$LOG | ||
| 44 | check_rc $? | ||
| 45 | |||
| 46 | # Backup boot parition | ||
| 47 | sudo $SUDO_OPTS borg create $CREATE_OPTS \ | ||
| 48 | "/mnt/$LOCATION-backup/$(hostname)::boot-{now:%Y-%m-%d}" /boot 2>>$LOG | ||
| 49 | check_rc $? | ||
| 50 | |||
| 51 | # Send notifications based on return codes of archives | ||
| 52 | |||
| 53 | [ $WARNING -eq 1 ] && notify-send "One or more archives produced a warning" \ | ||
| 54 | "Please check the log at $LOG" | ||
| 55 | |||
| 56 | [ $ERROR -eq 1 ] && notify-send -u critical \ | ||
| 57 | "One or more archives produced an error and was unable to complete" \ | ||
| 58 | "Please check the log at $LOG" | ||
| 59 | |||
| 60 | [ $WARNING -eq 0 -a $ERROR -eq 0 ] && notify-send "$LOCATION backup complete" | ||
diff --git a/.local/bin/check-repos b/.local/bin/check-repos deleted file mode 100755 index d528ce6..0000000 --- a/.local/bin/check-repos +++ /dev/null | |||
| @@ -1,10 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | cd $HOME/repos | ||
| 4 | for repo in $(ls) | ||
| 5 | do | ||
| 6 | [ -d $repo/.git ] && echo $repo && \ | ||
| 7 | echo "------------------------------------------------------" && \ | ||
| 8 | git --git-dir=$repo/.git --work-tree=$repo status 2>/dev/null && \ | ||
| 9 | echo "------------------------------------------------------" | ||
| 10 | done | ||
diff --git a/.local/bin/cmus/toggle-mode b/.local/bin/cmus/toggle-mode deleted file mode 100755 index e73edc6..0000000 --- a/.local/bin/cmus/toggle-mode +++ /dev/null | |||
| @@ -1,14 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Toggles the cmus aaa mode (all,album,artist) | ||
| 3 | |||
| 4 | cmus-remote -C "toggle aaa_mode" | ||
| 5 | mode=$(cmus-remote -Q | grep "aaa_mode" | cut -d ' ' -f 3) | ||
| 6 | artist=$(cmus-remote -Q | grep "tag artist" | cut -d ' ' -f 3-) | ||
| 7 | album=$(cmus-remote -Q | grep "tag album" | cut -d ' ' -f 3-) | ||
| 8 | |||
| 9 | [ "$mode" = "all" ] && dunstctl close-all && notify-send "Playing from full library" \ | ||
| 10 | && exit | ||
| 11 | [ "$mode" = "artist" ] && dunstctl close-all && notify-send "Playing by artist: $artist" \ | ||
| 12 | && exit | ||
| 13 | [ "$mode" = "album" ] && dunstctl close-all && notify-send "Playing from album: $album" \ | ||
| 14 | && exit | ||
diff --git a/.local/bin/cmus/toggle-shuf b/.local/bin/cmus/toggle-shuf deleted file mode 100755 index 57c2606..0000000 --- a/.local/bin/cmus/toggle-shuf +++ /dev/null | |||
| @@ -1,7 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Toggle and report status of shuffle mode in cmus | ||
| 3 | |||
| 4 | cmus-remote --shuffle | ||
| 5 | status=$(cmus-remote -Q | grep shuffle | cut -d ' ' -f 3) | ||
| 6 | dunstctl close-all | ||
| 7 | [ "$status" = "true" ] && notify-send "Shuffle on" || notify-send "Shuffle off" | ||
diff --git a/.local/bin/cryptusb/create-cryptusb b/.local/bin/create-cryptusb index e0f49fe..77d232e 100755 --- a/.local/bin/cryptusb/create-cryptusb +++ b/.local/bin/create-cryptusb | |||
| @@ -30,5 +30,3 @@ sudo mkfs.ext4 "/dev/mapper/$map_name" | |||
| 30 | sudo cryptsetup close "$map_name" | 30 | sudo cryptsetup close "$map_name" |
| 31 | 31 | ||
| 32 | echo "done" | 32 | echo "done" |
| 33 | |||
| 34 | |||
diff --git a/.local/bin/cryptusb/sync-cryptusb b/.local/bin/cryptusb/sync-cryptusb deleted file mode 100755 index 6ba2737..0000000 --- a/.local/bin/cryptusb/sync-cryptusb +++ /dev/null | |||
| @@ -1,8 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Syncs important files to encrypted USB | ||
| 3 | |||
| 4 | mount-device && \ | ||
| 5 | rsync -avP --exclude="virtual_machines*" --exclude="media*" \ | ||
| 6 | --exclude="*.iso" --exclude="*.qcow2" \ | ||
| 7 | $HOME/ /mnt/cryptusb/$USER@$(hostname)/ && \ | ||
| 8 | unmount-device | ||
diff --git a/.local/bin/exiti3 b/.local/bin/exiti3 deleted file mode 100755 index 0fe76bf..0000000 --- a/.local/bin/exiti3 +++ /dev/null | |||
| @@ -1,4 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | read -p "Exit i3 [Y]/n?" exit | ||
| 3 | [ "$exit" = "Y" ] && i3-msg exit | ||
| 4 | |||
diff --git a/.local/bin/get-pkgs b/.local/bin/get-pkgs deleted file mode 100755 index 19e64f3..0000000 --- a/.local/bin/get-pkgs +++ /dev/null | |||
| @@ -1,8 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Creates files containing lists of installed and manually installed packages | ||
| 3 | # in cache directory | ||
| 4 | |||
| 5 | pkgdir="$HOME/.cache/packages" | ||
| 6 | apt list --installed | tail -n+2 | cut -d '/' -f 1 > $pkgdir/installed | ||
| 7 | apt list --manual-installed | tail -n+2 | | ||
| 8 | cut -d '/' -f 1 > $pkgdir/manual-installed | ||
diff --git a/.local/bin/getmail b/.local/bin/getmail new file mode 100755 index 0000000..c36137e --- /dev/null +++ b/.local/bin/getmail | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | ping -c 1 9.9.9.9 >/dev/null && mbsync -a && notify-send "Mail Synced" | ||
diff --git a/.local/bin/getpass b/.local/bin/getpass index bfa344f..1f9b3b5 100755 --- a/.local/bin/getpass +++ b/.local/bin/getpass | |||
| @@ -3,13 +3,12 @@ | |||
| 3 | pb=$PASSWORD_STORE_DIR | 3 | pb=$PASSWORD_STORE_DIR |
| 4 | [ -z "$PASSWORD_STORE_CLIP_TIME" ] && ct=45 || ct=$PASSWORD_STORE_CLIP_TIME | 4 | [ -z "$PASSWORD_STORE_CLIP_TIME" ] && ct=45 || ct=$PASSWORD_STORE_CLIP_TIME |
| 5 | chars=$(echo $pb | wc -c) | 5 | chars=$(echo $pb | wc -c) |
| 6 | accts=$(find $pb -type f -name "*.gpg" | cut -c 2- | \ | 6 | accts=$(find $pb -type f -name "*.gpg" | cut -c 2- | cut -c $chars- | \ |
| 7 | grep -v ".*-OTP.gpg\|.*-2farecovery.gpg" | cut -c $chars- | \ | ||
| 8 | rev | cut -c 5- | rev) | 7 | rev | cut -c 5- | rev) |
| 9 | acct="$(echo "$accts" | dmenu)" | 8 | acct="$(echo "$accts" | dmenu)" |
| 10 | [ "$acct" = "" ] && exit | 9 | [ "$acct" = "" ] && exit |
| 11 | pass show $acct | xclip -r -selection "primary" \ | 10 | pass show $acct | head -1 | xclip -r -selection "primary" \ |
| 12 | && pass show $acct | xclip -r -selection "clipboard" \ | 11 | && pass show $acct | head -1 | xclip -r -selection "clipboard" \ |
| 13 | && notify-send "Password Copied to Clipboard" \ | 12 | && notify-send "Password Copied to Clipboard" \ |
| 14 | && sleep $ct \ | 13 | && sleep $ct \ |
| 15 | && pkill xclip | 14 | && pkill xclip |
diff --git a/.local/bin/getpass-otp b/.local/bin/getpass-otp index 535cc31..19c0c0e 100755 --- a/.local/bin/getpass-otp +++ b/.local/bin/getpass-otp | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | pb=$PASSWORD_STORE_DIR | 3 | pb=$PASSWORD_STORE_DIR |
| 4 | [ -z "$PASSWORD_STORE_CLIP_TIME" ] && ct=45 || ct=$PASSWORD_STORE_CLIP_TIME | 4 | [ -z "$PASSWORD_STORE_CLIP_TIME" ] && ct=45 || ct=$PASSWORD_STORE_CLIP_TIME |
| 5 | chars=$(echo $pb | wc -c) | 5 | chars=$(echo $pb | wc -c) |
| 6 | accts=$(find $pb -type f -name "*-OTP.gpg" | cut -c $chars- | \ | 6 | accts=$(find $pb -type f -name "*.gpg" | cut -c $chars- | \ |
| 7 | rev | cut -c 5- | rev) | 7 | rev | cut -c 5- | rev) |
| 8 | acct="$(echo "$accts" | dmenu)" | 8 | acct="$(echo "$accts" | dmenu)" |
| 9 | pass otp code $acct | xclip -r -selection "primary" \ | 9 | pass otp code $acct | xclip -r -selection "primary" \ |
diff --git a/.local/bin/id-init b/.local/bin/id-init index 72f8cbe..0634fe4 100755 --- a/.local/bin/id-init +++ b/.local/bin/id-init | |||
| @@ -2,7 +2,7 @@ | |||
| 2 | 2 | ||
| 3 | tmpfile="$(mktemp)" | 3 | tmpfile="$(mktemp)" |
| 4 | chmod 700 $tmpfile | 4 | chmod 700 $tmpfile |
| 5 | echo "pass ssh" > $tmpfile | 5 | echo "pass homelab/ssh" > $tmpfile |
| 6 | export SSH_ASKPASS="$tmpfile" | 6 | export SSH_ASKPASS="$tmpfile" |
| 7 | export SSH_ASKPASS_REQUIRE="force" | 7 | export SSH_ASKPASS_REQUIRE="force" |
| 8 | ssh-add | 8 | ssh-add |
diff --git a/.local/bin/init-tv b/.local/bin/init-tv new file mode 100755 index 0000000..17e7111 --- /dev/null +++ b/.local/bin/init-tv | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | xrandr --output HDMI-A-1 --auto --right-of DisplayPort-0 --mode 3840x2160 | ||
| 2 | bgscript | ||
| 3 | #--set underscan on --set "underscan vborder" 60 --set "underscan hborder" 70 --right-of DisplayPort-0 --mode 1920x1080 | ||
diff --git a/.local/bin/kill-libvirtd b/.local/bin/kill-libvirtd deleted file mode 100755 index 2ea802d..0000000 --- a/.local/bin/kill-libvirtd +++ /dev/null | |||
| @@ -1,22 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Stop all running domains and networks, and then stop all libvirtd daemons | ||
| 3 | |||
| 4 | # Save running domains | ||
| 5 | rundoms="$(virsh list | grep running | awk '{print $2}')" | ||
| 6 | for dom in $rundoms | ||
| 7 | do | ||
| 8 | virsh managedsave $dom | ||
| 9 | done | ||
| 10 | |||
| 11 | # Stop network | ||
| 12 | virsh net-destroy default | ||
| 13 | |||
| 14 | # Stop libvirtd | ||
| 15 | sudo systemctl stop libvirtd >/dev/null | ||
| 16 | sudo systemctl stop libvirtd-ro.socket >/dev/null | ||
| 17 | sudo systemctl stop libvirtd-admin.socket >/dev/null | ||
| 18 | sudo systemctl stop libvirtd.socket >/dev/null | ||
| 19 | sudo systemctl stop virtlogd >/dev/null | ||
| 20 | sudo systemctl stop virtlogd-admin.socket >/dev/null | ||
| 21 | sudo systemctl stop virtlogd.socket >/dev/null | ||
| 22 | sudo systemctl stop systemd-machined >/dev/null | ||
diff --git a/.local/bin/kill-steam b/.local/bin/kill-steam deleted file mode 100755 index 5572ae7..0000000 --- a/.local/bin/kill-steam +++ /dev/null | |||
| @@ -1,3 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | pkill -f steam | ||
diff --git a/.local/bin/lock b/.local/bin/lock deleted file mode 100755 index 223ac59..0000000 --- a/.local/bin/lock +++ /dev/null | |||
| @@ -1,7 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Locks the screen with a blurred screenshot of the current window as the lock image | ||
| 3 | # Also pauses any music that is playing | ||
| 4 | |||
| 5 | maim | convert - -paint 5 ~/.cache/lock.png | ||
| 6 | [ "$(cmus-remote -Q | head -1 | cut -d ' ' -f 2)" != "playing" ] || cmus-remote --pause | ||
| 7 | i3lock -u -e -i ~/.cache/lock.png | ||
diff --git a/.local/bin/merge-renovate b/.local/bin/merge-renovate new file mode 100755 index 0000000..ce23161 --- /dev/null +++ b/.local/bin/merge-renovate | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | image="$1" | ||
| 4 | [ "$image" = "" ] && echo "error: no image specified" && exit 1 | ||
| 5 | git checkout -b renovate/$image master | ||
| 6 | git pull --no-edit origin renovate/$image | ||
| 7 | git checkout master | ||
| 8 | git merge --no-ff --no-edit renovate/$image | ||
diff --git a/.local/bin/dmenu/mount-device b/.local/bin/mount-device index c2decd5..6b644df 100755 --- a/.local/bin/dmenu/mount-device +++ b/.local/bin/mount-device | |||
| @@ -8,7 +8,7 @@ | |||
| 8 | devs="$(lsblk -lpo NAME,FSTYPE,SIZE,TYPE,MOUNTPOINT | grep "part\s*$\|crypto_LUKS" | awk '{print $1,"-",$3}')" | 8 | devs="$(lsblk -lpo NAME,FSTYPE,SIZE,TYPE,MOUNTPOINT | grep "part\s*$\|crypto_LUKS" | awk '{print $1,"-",$3}')" |
| 9 | [ "$devs" = "" ] && exit 0 | 9 | [ "$devs" = "" ] && exit 0 |
| 10 | dev="$(echo "$devs" | dmenu -i -p "Select device" | cut -d ' ' -f 1)" | 10 | dev="$(echo "$devs" | dmenu -i -p "Select device" | cut -d ' ' -f 1)" |
| 11 | [ "$dev" = "" ] && exit 0 | 11 | [ "$dev" = "" ] && exit 1 |
| 12 | 12 | ||
| 13 | # Open and map drive if it is encrypted | 13 | # Open and map drive if it is encrypted |
| 14 | crypt=0 | 14 | crypt=0 |
diff --git a/.local/bin/mount-media b/.local/bin/mount-media index e748941..f35e4af 100755 --- a/.local/bin/mount-media +++ b/.local/bin/mount-media | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | #!/bin/sh | 1 | #!/bin/sh |
| 2 | # Uses sshfs to locally mount media directories | 2 | # Uses sshfs to locally mount media directories |
| 3 | # Check if the media computer is reachable and if so mount the media | 3 | # Check if the media computer is reachable and if so mount the media |
| 4 | ping -W 0.01 -c 1 prometheus >/dev/null && \ | 4 | ping -W 0.01 -c 1 docker >/dev/null && \ |
| 5 | sshfs sisko@prometheus:/mnt/raid/media/ $HOME/media/prometheus/ | 5 | sshfs docker:/srv/docker/arr/data/media $HOME/media |
| 6 | 6 | ||
diff --git a/.local/bin/start-vm b/.local/bin/start-vm deleted file mode 100755 index 5ffea03..0000000 --- a/.local/bin/start-vm +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Starts libvirtd, default network, and optionally any domains given as arguments | ||
| 3 | |||
| 4 | pgrep libvirtd >/dev/null || sudo systemctl start libvirtd | ||
| 5 | virsh net-start default | ||
| 6 | for domain in "$@" | ||
| 7 | do | ||
| 8 | virsh start $domain | ||
| 9 | done | ||
diff --git a/.local/bin/stop-alarm b/.local/bin/stop-alarm deleted file mode 100755 index 4607b11..0000000 --- a/.local/bin/stop-alarm +++ /dev/null | |||
| @@ -1,5 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | pkill mpv | ||
| 4 | amixer -q sset Master 50% | ||
| 5 | pkill -RTMIN+10 i3blocks | ||
diff --git a/.local/bin/stop-vm b/.local/bin/stop-vm deleted file mode 100755 index 6c92250..0000000 --- a/.local/bin/stop-vm +++ /dev/null | |||
| @@ -1,21 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Stops domains given as arguments | ||
| 3 | |||
| 4 | opts=$(getopt -o 'as' -l 'all,save' -- "$@") | ||
| 5 | eval set -- "$opts" | ||
| 6 | all=0 | ||
| 7 | save=0 | ||
| 8 | while true | ||
| 9 | do | ||
| 10 | case $1 in | ||
| 11 | '-a'|'--all') all=1; shift; continue ;; | ||
| 12 | '-s'|'--save') save=1; shift; continue ;; | ||
| 13 | '--') shift; break;; | ||
| 14 | esac | ||
| 15 | done | ||
| 16 | |||
| 17 | [ $all -eq 1 ] && domains="$(virsh list | grep running | awk '{print $2}')" || domains="$@" | ||
| 18 | for domain in $domains | ||
| 19 | do | ||
| 20 | [ $save -eq 1 ] && virsh managedsave $domain || virsh shutdown $domain | ||
| 21 | done | ||
diff --git a/.local/bin/sync-cryptusb b/.local/bin/sync-cryptusb new file mode 100755 index 0000000..46daef9 --- /dev/null +++ b/.local/bin/sync-cryptusb | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Syncs important files to encrypted USB | ||
| 3 | |||
| 4 | mount-device && \ | ||
| 5 | rsync -avP --delete-after --exclude="virtual_machines*" --exclude="media*" \ | ||
| 6 | --exclude="*.iso" --exclude="*.qcow2" --exclude="*.zip" --exclude="*.img"\ | ||
| 7 | $HOME/ /mnt/cryptusb/$USER@$(hostname)/ | ||
| 8 | unmount-device | ||
diff --git a/.local/bin/sync-music b/.local/bin/sync-music index 4619a23..3338c48 100755 --- a/.local/bin/sync-music +++ b/.local/bin/sync-music | |||
| @@ -1,4 +1,5 @@ | |||
| 1 | #!/bin/sh | 1 | #!/bin/sh |
| 2 | # Sync music from media computer to local computer | 2 | # Sync music from media computer to local computer |
| 3 | 3 | ||
| 4 | rsync -av sisko@prometheus:/mnt/raid/media/music/ $HOME/media/music/ | 4 | rsync -av samadmin@jellyfin:/mnt/media/music/beets $HOME/media/music/ |
| 5 | #rsync -av $HOME/media/music/ mobian@192.168.88.252:~/Music/ | ||
diff --git a/.local/bin/theme/get-gradient b/.local/bin/theme/get-gradient deleted file mode 100755 index 91f9391..0000000 --- a/.local/bin/theme/get-gradient +++ /dev/null | |||
| @@ -1,13 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Gets and sets a color gradient for cava | ||
| 3 | |||
| 4 | start="$1" | ||
| 5 | end="$2" | ||
| 6 | colors=$(~/.local/bin/theme/gradient.py $start $end 7) | ||
| 7 | |||
| 8 | num=1 | ||
| 9 | path="$HOME/.config/cava/config" | ||
| 10 | for color in $colors; do | ||
| 11 | sed -i "s/gradient_color_$num.*$/gradient_color_$num = '$color'/" $path | ||
| 12 | num=$((num+1)) | ||
| 13 | done | ||
diff --git a/.local/bin/theme/gradient.py b/.local/bin/theme/gradient.py deleted file mode 100755 index f95bb07..0000000 --- a/.local/bin/theme/gradient.py +++ /dev/null | |||
| @@ -1,24 +0,0 @@ | |||
| 1 | #!/usr/bin/python3 | ||
| 2 | # Gets a color gradient based on input color and number | ||
| 3 | # Depends on python3-colour | ||
| 4 | |||
| 5 | import colour,sys | ||
| 6 | |||
| 7 | if len(sys.argv) != 4: | ||
| 8 | print("arg error") | ||
| 9 | sys.exit(1) | ||
| 10 | |||
| 11 | start = sys.argv[1] | ||
| 12 | end = sys.argv[2] | ||
| 13 | num = int(sys.argv[3]) | ||
| 14 | |||
| 15 | grad = colour.color_scale(colour.hex2hsl(start),colour.hex2hsl(end),num) | ||
| 16 | grad_hex = [] | ||
| 17 | for hsl in grad: | ||
| 18 | grad_hex.append(colour.hsl2hex(hsl)) | ||
| 19 | |||
| 20 | for color in grad_hex: | ||
| 21 | sys.stdout.write(color + "\n") | ||
| 22 | |||
| 23 | |||
| 24 | |||
diff --git a/.local/bin/dmenu/unicode-select b/.local/bin/unicode-select index b797691..b797691 100755 --- a/.local/bin/dmenu/unicode-select +++ b/.local/bin/unicode-select | |||
diff --git a/.local/bin/dmenu/unmount-device b/.local/bin/unmount-device index 239663d..239663d 100755 --- a/.local/bin/dmenu/unmount-device +++ b/.local/bin/unmount-device | |||
diff --git a/.local/bin/who-depends b/.local/bin/who-depends deleted file mode 100755 index d1fb0c2..0000000 --- a/.local/bin/who-depends +++ /dev/null | |||
| @@ -1,13 +0,0 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | # Script that takes a package as an argument and returns installed packages | ||
| 4 | # that are dependent on it | ||
| 5 | |||
| 6 | [ $# -eq 1 ] || echo "usage: who-depends package" | ||
| 7 | apt list --installed | tail -n+2 | cut -d '/' -f 1 > /tmp/whodepends | ||
| 8 | pkg="$1" | ||
| 9 | deps_all=$(apt-cache rdepends $pkg | tail -n+3 | sed "s/^\s*//") | ||
| 10 | for dep in $deps_all | ||
| 11 | do | ||
| 12 | grep -lq "$dep" /tmp/whodepends && echo "$dep" | ||
| 13 | done | ||
diff --git a/.local/bin/yt-fix b/.local/bin/yt-fix index 69e771a..efb76ad 100755 --- a/.local/bin/yt-fix +++ b/.local/bin/yt-fix | |||
| @@ -7,7 +7,7 @@ stdin() { | |||
| 7 | do | 7 | do |
| 8 | ext=".$(echo $infile | rev | cut -d '.' -f 1 | rev)" | 8 | ext=".$(echo $infile | rev | cut -d '.' -f 1 | rev)" |
| 9 | ext_length=${#ext} | 9 | ext_length=${#ext} |
| 10 | remove=$((12+$ext_length)) | 10 | remove=$((15+$ext_length)) |
| 11 | filename="$(echo $infile | rev | cut -c $remove- | rev)" | 11 | filename="$(echo $infile | rev | cut -c $remove- | rev)" |
| 12 | mv "$infile" "$filename$ext" | 12 | mv "$infile" "$filename$ext" |
| 13 | done | 13 | done |
| @@ -18,7 +18,7 @@ cli() { | |||
| 18 | do | 18 | do |
| 19 | ext=".$(echo $infile | rev | cut -d '.' -f 1 | rev)" | 19 | ext=".$(echo $infile | rev | cut -d '.' -f 1 | rev)" |
| 20 | ext_length=${#ext} | 20 | ext_length=${#ext} |
| 21 | remove=$((12+$ext_length)) | 21 | remove=$((15+$ext_length)) |
| 22 | filename="$(echo $infile | rev | cut -c $remove- | rev)" | 22 | filename="$(echo $infile | rev | cut -c $remove- | rev)" |
| 23 | mv "$infile" "$filename$ext" | 23 | mv "$infile" "$filename$ext" |
| 24 | done | 24 | done |
| @@ -39,4 +39,3 @@ do | |||
| 39 | done | 39 | done |
| 40 | 40 | ||
| 41 | [ $read_stdin -eq 0 ] && cli "$@" || stdin | 41 | [ $read_stdin -eq 0 ] && cli "$@" || stdin |
| 42 | |||
