This repo was extracted from my dotfiles repo for better discoverability.
Symlinked as ~/scripts and included in $PATH
All of the scripts in this repo were either written by me or borrowed from someone else and modified for my use case. I don't want to reupload unmodified scripts, so for those, check out this section of my dotfiles readme.
by beatle on archlinux forums
Runs in the background and warns me when my laptop battery gets too low.
Custom visualizations of terminal colors. I'm sure there are better implementations out there but this was fun to make.
Synchronizes calendars and contacts from my CalDAV/CardDAV server with vdirsyncer
and updates khal
.
Create terminal script popup windows using kitty's remote control and i3-msg to manipulate the window.
Tells certain programs to switch to light or dark mode depending on a command line argument.
Runs i3lock-color
using colors from wal to save lines of code elsewhere. It assumes there is a backdrop image located at /tmp/i3lock_bg.png
, which should be generated by the pywal
script.
Pings a Minecraft server to see who is online. Made to be used with Polybar.
Creates an application shortcut given an itch.io game folder so you can access it from your app launcher or add it to Steam.
Sets the colors of physical devices with RGB in my setup. Right now it only sets the colors of the keyboard on my Razer Blade. It has the ability to set the Yeelight bulbs over my local network but I turned that off because it hurts my eyes 😵.
Swiss army knife screenshotting tool. It wraps around maim
(X11) and grim
(wayland, untested) for taking the screenshots themselves, and a few other small programs for various tasks like selecting an area of the screen. It's designed to have concise and easy-to-remember commands.
Terminal-based desktop screensaver program.
Update system-wide packages from different package managers in parallel. Uses rofi/askpass
when not run from a terminal.
Grabs a random wallpaper (or reads a path from argv
), sets it and loads a color scheme with wal, then tells everything to update its color scheme (either directly or through lightswitch). Supports light and dark mode, and has an automatic option that uses the angle of the sun.
Scripts that use rofi as their UI.
by ivanbartsov
Gives scripts a way to prompt for passwords without a terminal. Prepend commands with SUDO_ASKPASS=/path/to/rofi/askpass sudo -A
(or add the first part to .profile
/.bashrc
) to use.
Menu for switching between monitor setups. The xrandr commands were generated by ARandR
by tostiheld
Menu for shutting down, logging out, etc.
A wrapper around tweet.sh so I can post tweets without having to open Twitter (or a terminal).
by luyves
USB device manager and client for udisks2
.
Look up definitions from Wiktionary. You can set the language as well.
Disclaimer! The backup script is kind of a mess right now. Once I have a working backup workflow again I'll update it and remove this warning.
I made a few files for managing backups:
backup
- The main script. It can start and stop backups, and it will keep running until it's done. It's basically just a wrapper for restic with special features like notifications, logging, and a single-instance lock.backupctl
- A rofi menu where you can start or stop a backup in the background and view the log file without having to do it manually in a terminal.backup-status
- An indicator for polybar that shows if a backup is running, finished, failed, or out of date. It might need some modification to work with other status bars. Here's an example config entry for polybar:[module/backup] type = custom/script exec = ~/.config/polybar/scripts/backup-status tail = true ; Only show last line of output click-left = ~/scripts/rofi/backupctl
backup/
- Contains a config file and a list of patterns to exclude. Make sure to edit these before running the script.
For a while I'd been looking for a simple backup solution for Linux that also felt seamless and integrated into the desktop but I couldn't find one which suited my needs. I originally made this script to work with rsync but I wanted snapshots, which restic can do. I love how simple it is but I got tired of typing the entire command each time (or scrolling through my term history for it) so I wrote these to make things easier for me.
I didn't include the ability to create multiple backups or schedule them, but I don't think it would be hard to add those features. It's also highly tailored to my needs and setup which means you might need to convert some of the code if you use different programs than me.
Scripts I've stopped using in favor of solutions. Links go to the file at the last commit it existed in.
A wrapper around gcalcli
which turns it into a REPL (read-eval-print loop) rather than having to enter the full command every time. This gets wrapped with kitty-popup
by polybar when I click the date/time widget for easy access.
My original bash version of wal.py. Grabs a random wallpaper (or reads a path from argv
), sets it and loads a color scheme with wal, then tells everything to update its color scheme (either directly or through another script). Supports light and dark mode, and has an automatic option that uses redshift
to get the angle of the sun.
(Re)starts polybar. It detects primary and secondary displays and puts the correct bar on each.
Uses i3's append_layout
feature to restore layouts and open programs upon login so I don't have to waste my time doing it manually. Layout files