Skip to content
/ scripts Public

All of the scripts that I actively use on my Arch GNU+Linux machine

License

Notifications You must be signed in to change notification settings

fybx/scripts

Repository files navigation

scripts

This repository contains Python and shell scripts that I actively develop and utilize on my GNU/Linux (or as I've recently taken to calling it, GNU plus Linux) machine.

Shell scripts Python scripts
Obsolete launch_searx, pi & piw, launch_compton.sh update_repos.py
Active volumeup.sh, launch_picom.sh, launch_polybar source_polybar.py, compare.py, drun_cleaner.py, dotman.py, fetchpy

launch_searx.sh

starts a docker container for searx. use a cron job to execute this script on reboot.

@reboot sh $HOME/scripts/launch_searx.sh

dependencies:

  • docker installation (do not use snap to install)

pi & piw

ssh into my dear raspberry pi, static ip addresses change according to connection medium (lan vs wlan)

volumeup.sh

used in i3wm to set maximum volume level. calling this script increases current volume level by 5% change the number in condition part of script ($current -lt 200) to set the upper limit

used by:

  • i3wm configuration

dependencies:

  • pactl
  • pulseaudio

update_repos.py

updates repositories kept in $HOME/sources by calling 'git pull' using subprocess

dependencies:

launch_polybar

used by i3wm (or me) to launch polybar on occasions. this script first checks for polybar instances, and exits if there is any; however if no instances exist, a new polybar will pop up, quietly!

used by:

dependencies:

source_polybar.py

generates and deploys my polybar configuration with color parameters. significantly reduces the time it takes to change colors.

dependencies:

launch_compton.sh

restarting i3 using $mod+shift+r causes multiple instances of compton to be created :) I noticed that when the CPU temperature hit 85 degrees :) never doing that again :)

dependencies:

launch_picom.sh

if there isn't any instance of picom running, creates one.

dependencies:

fetchpy

fetchpy is an alternative to neofetch. I was tinkering around with my neofetch config file, and at some point I got frustrated enough to create a full-blown fetch script.

This took me approximately ~6 hours to complete, and I'm proud of it! (I drank too much mineral soda with extra citric acid, acid reflux is really getting wild lol)

Switched to rich from termcolor: fetchpy now features a damn crazy color palette and pride flags on Arch logo!

dependencies:

dotman.py

dotman is (yet) another DOTfiles MANager that I've made for my machine.

  • Will it work on yours? Probably.
  • Do you really need it? Probably not.

features of dotman

  • Backup to any given local and remote repository
  • Use whitelist to select folders
  • Deploy to $HOME/.config
  • Interactive mode
  • Automatable mode
  • Verbose output
  • Logging capability

dependencies:

  • python installation lol
  • aw, hell nah. termcolor again

drun_cleaner.py

drun_cleaner is a necessary tool to make selected desktop entries hidden. it uses a hardcoded list to get which files you want to be hidden, then searchs for those files in certain locations like "/usr/share/applications" and "$HOME/.local/share/applications". a file, when found, will get appended with 'NoDisplay=true' which removes that entry from run, drun, or any app launcher's menu.

compare.py

this tiny script reads two csv files to two lists, then compares the lists. what's so special about it? it takes phantombuster's Instagram follower and followee lists as inputs. :D.