literate-dotfiles/binaries-private.org

182 lines
6.6 KiB
Org Mode
Raw Normal View History

2020-05-26 08:33:31 +02:00
#+TITLE: My own specific binaries
2021-01-01 20:12:34 +01:00
#+SETUPFILE: ./setup/org-setup-file.org
2020-05-26 08:33:31 +02:00
#+PROPERTY: header-args:bash :comments both :mkdirp yes
#+PROPERTY: header-args:bash+ :shebang "#!/usr/bin/env bash"
#+PROPERTY: header-args:bash+ :tangle-mode (identity #o555)
2020-05-26 08:33:31 +02:00
2022-02-06 21:51:52 +01:00
* =qutebrowser=
:PROPERTIES:
:CUSTOM_ID: qutebrowser
:END:
#+begin_src bash :tangle ~/.local/bin/qutebrowser
~/.local/soft/qutebrowser/.venv/bin/python3 -m qutebrowser "$@"
#+end_src
2020-05-26 08:33:31 +02:00
* =remote-desktop= - Remote Desktop Connect
2021-01-01 20:12:34 +01:00
:PROPERTIES:
:CUSTOM_ID: remote-desktop
:END:
2020-05-26 08:33:31 +02:00
#+begin_src bash :tangle ~/.local/bin/remote-desktop
2022-02-22 13:17:25 +01:00
computer=$(echo -e 'WID21SPEEDGOAT1\nWID24SPEEDGOAT1\nPCMEL1\nRNICE\nPCDEHAEZE\nPCNASS1' | rofi -dmenu -no-custom -p 'Computer:' -l 20);
2022-02-06 21:46:32 +01:00
if [[ -z "$computer" ]]; then
exit 1
fi
notify-send 'Rdesktop' "Connection to ${computer}..."
proxy_arg=""
if [ -z "$(timeout 1s dig +short proxy.esrf.fr.)" ]; then
proxy_arg="/proxy:socks5://localhost:8080"
fi
2022-02-22 13:17:25 +01:00
case "$computer" in
"RNICE" | "PCDEHAEZE" | "PCNASS1")
xfreerdp $proxy_arg /u:dehaeze /d:ESRF /clipboard /bpp:8 /bpp:16 /compression -themes -wallpaper /async-update /async-input -glyph-cache /audio-mode:1 /dynamic-resolution /auto-reconnect /wm-class:RDP_$computer /grab-keyboard /p:$(pass esrf.fr/dehaeze | sed -n 1p) /v:$computer.esrf.fr > /tmp/freerdp_${computer}.log 2>&1 & ;;
"PCMEL1")
xfreerdp $proxy_arg /u:OPPEL /d:ESRF /clipboard /bpp:8 /bpp:16 /compression -themes -wallpaper /async-update /async-input -glyph-cache /audio-mode:1 /dynamic-resolution /auto-reconnect /wm-class:RDP_$computer /grab-keyboard /p:TonicPEL /v:$computer.esrf.fr > /tmp/freerdp_${computer}.log 2>&1 & ;;
"WID21SPEEDGOAT1")
xfreerdp $proxy_arg /u:opid21 /d:ESRF /clipboard /bpp:8 /bpp:16 /compression -themes -wallpaper /async-update /async-input -glyph-cache /audio-mode:1 /dynamic-resolution /auto-reconnect /wm-class:RDP_$computer /grab-keyboard /p:tonic21 /v:$computer.esrf.fr > /tmp/freerdp_${computer}.log 2>&1 & ;;
"WID24SPEEDGOAT1")
xfreerdp $proxy_arg /u:opid24 /d:ESRF /clipboard /bpp:8 /bpp:16 /compression -themes -wallpaper /async-update /async-input -glyph-cache /audio-mode:1 /dynamic-resolution /auto-reconnect /wm-class:RDP_$computer /grab-keyboard /p:tonic24 /v:$computer.esrf.fr > /tmp/freerdp_${computer}.log 2>&1 & ;;
esac
2020-05-26 08:33:31 +02:00
#+end_src
2021-11-03 10:58:30 +01:00
* =mount-dir= - Mount/Unmout directories
#+begin_src text :tangle no
# <file system> <mount point> <type> <options> <dump> <pass>
2022-02-06 21:46:32 +01:00
homelab:/srv/storage/ /home/thomas/mnt/homelab fuse.sshfs noauto,allow_other,user,default_permissions 0 0
2021-11-03 10:58:30 +01:00
#+end_src
2020-05-26 08:33:31 +02:00
2021-11-03 10:58:30 +01:00
#+begin_src text :tangle no
# <file system> <mount point> <type> <options> <dump> <pass>
2022-02-06 21:46:32 +01:00
dehaeze@rnice:/tmp_14_days/ /home/thomas/mnt/tmp_14_days fuse.sshfs noauto,allow_other,user,default_permissions 0 0
#+end_src
#+begin_src text :tangle no
# <file system> <mount point> <type> <options> <dump> <pass>
dehaeze@rnice:/home/esrf/dehaeze/ /home/thomas/mnt/unix_home fuse.sshfs noauto,allow_other,user,default_permissions 0 0
#+end_src
#+begin_src text :tangle no
# <file system> <mount point> <type> <options> <dump> <pass>
//wfiles/groupshare /home/thomas/mnt/groupshare vsifs noauto,user,credentials=/home/thomas/.smbcredentials,uid=1001,gid=1001,forceuid,forcegid 0 0
2021-11-03 10:58:30 +01:00
#+end_src
2021-11-03 10:58:30 +01:00
#+begin_src bash :tangle ~/.local/bin/mount-dir
2022-02-06 21:46:32 +01:00
if [ $# -eq 0 ]; then
drive=$(echo -e 'tmp_14_days\nhomelab\ngroupshare\nunix_home\ndata_id21' | rofi -dmenu -no-custom -p 'Drive:' -l 20);
if [[ -z "$drive" ]]; then
exit 1
fi
else
drive=$1
fi
2021-11-03 10:58:30 +01:00
if grep -qs "/home/thomas/mnt/$drive" /proc/mounts; then
umount "/home/thomas/mnt/$drive" && \
2022-02-06 21:45:41 +01:00
notify-send "$drive " 'Successfully unmounted' || \
notify-send --urgency=critical "$drive " 'Error while unmounted'
else
2021-11-03 10:58:30 +01:00
echo "It's not mounted."
mount "/home/thomas/mnt/$drive" && \
2022-02-06 21:45:41 +01:00
notify-send "$drive " 'Successfully mounted' || \
notify-send --urgency=critical "$drive " 'Error while mounted'
fi
2020-05-26 08:33:31 +02:00
#+end_src
2021-11-03 10:58:30 +01:00
* =screen-select= - Xrandr pre-defined scripts
2021-01-01 20:12:34 +01:00
:PROPERTIES:
2021-11-03 10:58:30 +01:00
:CUSTOM_ID: screen-select
2021-01-01 20:12:34 +01:00
:END:
2021-11-03 10:58:30 +01:00
#+begin_src bash :tangle ~/.local/bin/screen-select
2022-02-06 21:46:59 +01:00
option=$(echo -e "Work\nLaptop\nHome" | rofi -dmenu -no-custom -p 'Screen:' -l 20)
if [[ -z "$option" ]]; then
exit 1
fi
2020-05-26 08:33:31 +02:00
2021-11-03 10:58:30 +01:00
after_screen_change () {
# Fix background if screen size/arangement has changed.
setbg
# Kill polybar
killall -q polybar
# Wait until the processes have been shut down
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
# Launch bars
polybar top &
}
case "$option" in
"Work")
2022-02-20 22:06:56 +01:00
xrandr --output eDP-1 --off --output DP-3-2 --primary --mode 2560x1440 --pos 0x0 --rotate normal && \
2021-11-03 10:58:30 +01:00
after_screen_change
;;
2022-02-06 21:46:32 +01:00
"Laptop")
xrandr --output DP-1-2 --off --output eDP-1 --primary --mode 1920x1200 --pos 0x0 --rotate normal && \
2021-11-03 10:58:30 +01:00
after_screen_change
;;
"Home")
2022-02-20 22:06:56 +01:00
xrandr --output eDP-1 --off --output DP-3-2 --primary --mode 2560x1440 --pos 0x0 --rotate normal && \
2021-11-03 10:58:30 +01:00
after_screen_change
;;
,*)
echo "== ! missing or invalid argument ! =="
exit 2
esac
exit 0
#+end_src
2020-05-26 08:33:31 +02:00
2022-02-06 21:46:59 +01:00
* =print-esrf= - Print on Rnice
2021-01-01 20:12:34 +01:00
:PROPERTIES:
2022-02-06 21:46:59 +01:00
:CUSTOM_ID: print-esrf
2021-01-01 20:12:34 +01:00
:END:
2020-05-26 08:33:31 +02:00
2022-02-06 21:46:59 +01:00
#+begin_src bash :tangle ~/.local/bin/print-esrf
2021-11-03 10:58:30 +01:00
nbpage=$(echo -e '1\n2\n4' | rofi -dmenu -no-custom -p 'Number of pages per sheet' -l 20);
sides=$(echo -e 'one-sided\ntwo-sided-long-edge\ntwo-sided-short-edge' | rofi -dmenu -no-custom -p 'Two Sided:' -l 20);
media=$(echo -e 'A4\nA3' | rofi -dmenu -no-custom -p 'Size:' -l 20);
2022-02-06 21:46:59 +01:00
printer=$(echo -e 'ctb127c1u\nctb110c1u' | rofi -dmenu -no-custom -p 'Size:' -l 20);
2020-05-26 08:33:31 +02:00
2022-02-06 21:46:59 +01:00
if [[ -z "$nbpage" || -z "$side" || -z "$media" || -z "$printer" ]]; then
exit 1
fi
2021-01-01 20:12:34 +01:00
2022-02-06 21:46:59 +01:00
lpr -o media=$media -o sides=$sides -o number-up=$nbpage -P $printer "$1";
2020-11-03 11:39:08 +01:00
#+end_src
2021-02-10 18:00:14 +01:00
* =readbib= - Open Bibliography File
:PROPERTIES:
:CUSTOM_ID: readbib
:END:
List all =pdf= files and open selected one with zathura.
#+begin_src bash :tangle ~/.local/bin/readbib
cd ~/Cloud/pdfs/ && ls | rofi -dmenu -lines 20 | xargs -I {} zathura {}
#+end_src
* =readnotes= - Open Note
:PROPERTIES:
:CUSTOM_ID: readnotes
:END:
List all =pdf= files and open selected one with zathura.
#+begin_src bash :tangle ~/.local/bin/readnotes
2021-10-25 14:32:51 +02:00
cd ~/Cloud/brain/pdfs/ && ls *.pdf | rofi -dmenu -lines 20 | xargs -I {} zathura {}
2021-02-10 18:00:14 +01:00
#+end_src