diff --git a/audio_mixer b/audio_mixer index ed83e4a..32fddb6 100755 --- a/audio_mixer +++ b/audio_mixer @@ -1,8 +1,6 @@ -#!/usr/bin/env bash +#/usr/bin/env bash # docstring=simple mixer gui app, for the desktop set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 mixxc \ --anchor right \ diff --git a/battery b/battery index eda06d7..736b359 100755 --- a/battery +++ b/battery @@ -1,7 +1,5 @@ #!/usr/bin/env bash # docstring=just shows the current capacity set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 cat /sys/class/power_supply/BAT0/capacity diff --git a/brght b/brght index ac217a6..cc735e3 100755 --- a/brght +++ b/brght @@ -1,8 +1,6 @@ #!/usr/bin/env bash # docstring=simplifies the brightnessctl command set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 # when invoked without parameter will print current brightness in percent # it accepts a parameter from 0 to 100 for brightness. Please ommit the % symbol. diff --git a/dlp-trnsrpt b/dlp-trnsrpt index f36619f..cb6a015 100755 --- a/dlp-trnsrpt +++ b/dlp-trnsrpt @@ -1,8 +1,6 @@ #!/usr/bin/env bash # docstring=transcript of youtube videos set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 TEMP_FOLDER='/tmp/dlp-trnsrpt' mkdir -p "$TEMP_FOLDER" diff --git a/hyprperf b/hyprperf index 26969ab..9d45779 100755 --- a/hyprperf +++ b/hyprperf @@ -1,23 +1,5 @@ -#!/usr/bin/env python +#!/usr/bin/env bash # docstring=disable hyprland blur for performance -import subprocess as sp -import json +set -E -o pipefail -def getoption(optionstring): - json_str = sp.run(["hyprctl", "-j", "getoption", optionstring], - capture_output=True, - text=True).stdout - - return json.loads(json_str) - -def set_blur(setstr): - return sp.run(["hyprctl", "keyword", "decoration:blur:enabled", setstr]) - -def main(): - if getoption("decoration:blur:enabled")["int"] == 1: - set_blur("false") - else: - set_blur("true") - -if __name__ == "__main__": - main() +hyprctl keyword decoration:blur:enabled false diff --git a/list_ips b/list_ips deleted file mode 100755 index 14b079d..0000000 --- a/list_ips +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env python -#docstring=dirty tool to simplify the output of ip dramaticly -import subprocess as sp -import json - -CFG = { - "iface_allow_list": ["eth", "enp", "wlp", "wlan"], - "show_ip4": True, - "show_ip6": False, -} - -def filter_interfaces(): - output = json.loads( - sp.run(["ip", "-j", "addr", "show"], - text=True, - capture_output=True).stdout) - filtered_list=[] - for interface in output: - for allowed in CFG["iface_allow_list"]: - if allowed in interface["ifname"]: - filtered_list.append(interface) - return filtered_list - -def ip_string(interface): - conn_list = "" - for conn in interface["addr_info"]: - if conn["family"] == "inet" and CFG["show_ip4"] or conn["family"] == "inet6" and CFG["show_ip6"]: - conn_list += (conn["local"] + "/" + str(conn["prefixlen"])) + ", " - return conn_list.rstrip(", ") - -def pretty(interfaces): - longest_member = 0 - for interface in interfaces: - if len(interface["ifname"]) > longest_member: - longest_member = len(interface["ifname"]) - - for interface in interfaces: - len_diff = longest_member - len(interface["ifname"]) - print(interface["ifname"], ": ", " " * len_diff, ip_string(interface), sep="") - - - -def main(): - pretty(filter_interfaces()) -if __name__ == "__main__": - main() diff --git a/mserve b/mserve index 563f193..07123d7 100755 --- a/mserve +++ b/mserve @@ -1,40 +1,15 @@ -#!/usr/bin/env python +#!/usr/bin/env bash # docstring=serve files with http. +set -E -o pipefail -import subprocess as sp -import argparse +miniserve \ + --auth=guest:Super9000! \ + --color-scheme-dark=monokai \ + --qrcode \ + --dirs-first \ + --hide-version-footer \ + --show-wget-footer \ + --title="Rano's quick share" -CFG = { - "base": [ - "miniserve", - "--auth=guest:Super9000!", - "--color-scheme-dark=monokai", - "--qrcode", - "--dirs-first", - "--hide-version-footer", - "--show-wget-footer", - "--title=Rano's quick share", - ], - "folder": "./" -} -def main(): - ap = argparse.ArgumentParser() - ap.add_argument("-u", "--upload", help="enable upload", action="store_true") - args = ap.parse_args() - - cmd = CFG["base"] - - if args.upload: - cmd.extend(["--upload-files=./", "--overwrite-files"]) - - cmd.append(CFG["folder"]) - - try: - sp.run(cmd) - except KeyboardInterrupt: - print("\ninterrupted by user") - -if __name__ == "__main__": - main() # implement a switch for easy --upload-files=DIR diff --git a/mytools b/mytools index 806d67c..fc44975 100755 --- a/mytools +++ b/mytools @@ -1,6 +1,5 @@ #!/usr/bin/env python3 # docstring=lists all tools and their docstrings -import argparse import os import os.path as path @@ -8,8 +7,6 @@ CFG = { "max_lines": 20, "offset": 20 } -SCRIPT_PATH = os.path.dirname(os.path.realpath(__file__)) - def parse_docstring(file_path, max_lines=CFG["max_lines"]): """ @@ -41,14 +38,15 @@ def offset(element, offset=CFG["offset"]): return " " * (offset - element_length) -def list_tools(): +def main(): """ lists all tools and their docstring from the same directory this sits in """ - list_dir = sorted(os.listdir(SCRIPT_PATH)) + script_path = os.path.dirname(os.path.realpath(__file__)) + list_dir = sorted(os.listdir(script_path)) for element in list_dir: - element_path = path.join(SCRIPT_PATH, element) + element_path = path.join(script_path, element) if path.isfile(element_path): print(element, end="") docstring = parse_docstring(element_path) @@ -57,16 +55,5 @@ def list_tools(): print() -def main(): - ap = argparse.ArgumentParser() - ap.add_argument("-p", "--path", help="output path to tools directory", action="store_true") - args = ap.parse_args() - - if args.path: - print(SCRIPT_PATH) - else: - list_tools() - - if __name__ == "__main__": main() diff --git a/nstore-find b/nstore-find index 0a5820d..27999e1 100755 --- a/nstore-find +++ b/nstore-find @@ -1,7 +1,5 @@ #!/usr/bin/env bash # docstring=searches the nix store with find set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 find /nix/store/ -maxdepth 1 -iname '*'"$@"'*' diff --git a/nswitch b/nswitch index 7f5e213..4bfdec9 100755 --- a/nswitch +++ b/nswitch @@ -2,27 +2,21 @@ # from https://github.com/0atman/noboilerplate/blob/main/scripts/38-nixos.md#dont-use-nix-env # docstring=quick edit (or ling xD) for nixos config set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 cd ~/Projects/NixOS/ nvim +nix fmt . &>/dev/null +git diff -U0 *.nix -printf ">>> auto formating ..." -nix fmt . &> /dev/null -printf " DONE!\n" - -git diff -U0 # "*.nix" - -printf ">>> Do you want to rebuild NixOS? [y/N]\n" -printf "<<< " && read -r YESNO +echo "Do you want to rebuild NixOS? [y/N]" +read -r YESNO if ! [[ "${YESNO,,}" == "y" ]]; then - printf ">>> Exiting ...\n" + echo "Exiting ..." exit 1 fi -printf ">>> Rebuilding NixOS\n" -sudo nixos-rebuild switch | tee nixos-switch.log || ( - grep --color error nixos-switch.log && false) +echo "Rebuilding NixOS" +sudo nixos-rebuild switch &>nixos-switch.log || ( + cat nixos-switch.log | grep --color error && false) gen=$(nixos-rebuild list-generations | grep current) git commit -am "$gen" diff --git a/remote-audio b/remote-audio deleted file mode 100755 index d50540e..0000000 --- a/remote-audio +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/env bash -#docstring=remote audio through roc-toolkit -#!TODO! use list_ips -#roc-recv -s rtp+rs8m://0.0.0.0:10001 -r rs8m://0.0.0.0:10002 -o alsa://default -#roc-send -s rtp+rs8m://192.168.178.40:10001 -r rs8m://192.168.178.40:10002 -i alsa://default -set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 - -start() { - roc-recv -s rtp+rs8m://0.0.0.0:10001 -r rs8m://0.0.0.0:10002 -o alsa://default & - roc-send -s rtp+rs8m://192.168.178.40:10001 -r rs8m://192.168.178.40:10002 -i alsa://default & -} - -stop() { - killall roc-send - killall roc-recv -} - -stop9() { - killall -9 roc-send - killall -9 roc-recv -} - -if [[ -z "$1" ]]; then - #start() - start -else - $1 -fi diff --git a/rustdesk_profile b/rustdesk_profile index 332adff..c2fbec3 100755 --- a/rustdesk_profile +++ b/rustdesk_profile @@ -1,8 +1,6 @@ #!/usr/bin/env bash # docstring=have and create multiple rustdesk profiles set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 # define frist element in argument list as profile name RUSTDESK_PROFILE="$1" diff --git a/screenshot b/screenshot index a2af902..c2c7ce2 100755 --- a/screenshot +++ b/screenshot @@ -1,7 +1,5 @@ #!/usr/bin/env bash # docstring=do a screenshots on wayland compositors set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 grim -g "$(slurp -o -r -c '#ff0000ff')" - | satty --filename - --fullscreen --output-filename ~/Media/Pictures/Screenshots/satty-$(date '+%Y%m%d-%H:%M:%S').png diff --git a/scrnl b/scrnl index 827bb32..4c76af3 100755 --- a/scrnl +++ b/scrnl @@ -4,7 +4,8 @@ from os import environ import os.path as path import subprocess as sp -import sys +from sys import exit as sysexit +from sys import argv as sysargv SCRIPT_FILENAME = path.basename(__file__) HOME = environ["HOME"] @@ -26,7 +27,7 @@ def kctl(*args): print(f"Wrapped options form {SCRIPT_FILENAME}:") print(" list list all available profiles") - sys.exit(completed.returncode) + sysexit(completed.returncode) def list_profiles(config_path=CFG["config_path"]): @@ -38,7 +39,7 @@ def list_profiles(config_path=CFG["config_path"]): def main(): - arguments = sys.argv[1:] + arguments = sysargv[1:] match arguments[0]: case "list": list_profiles() diff --git a/webcam b/webcam index 8fc6d6d..10e75fb 100755 --- a/webcam +++ b/webcam @@ -1,8 +1,6 @@ #!/usr/bin/env bash # docstring=open the webcam or v4l2 /dev/video* device set -E -o pipefail -shopt -s failglob -export LC_ALL=C.UTF8 if [[ "-h" == "$1" ]]; then echo "-l list devices"