<p> For any given task that enough people have wanted to do before on a computer, there is a multitude of tools available to perform that task on Linux. Here is a small list of cherry-picked ones that I tend to forget. As I use Arch Linux, some may be Arch-specific. </p> <ul> <li><p> <b>pulseaudio-equalizer-ladspa</b>. [<a href="https://www.archlinux.org/packages/community/any/pulseaudio-equalizer-ladspa/" target="_blank">Arch repos</a>] Assuming you use PulseAudio, if you want to run a very simple equalizer over whatever comes out of your speakers, use this package. The GUI executable is called <code>pulseaudio-equalizer-gtk</code>. </p></li> <li><p> <b>nload</b>. [<a href="https://www.archlinux.org/packages/community/x86_64/nload/" target="_blank">Arch repos</a>] For nice graphs/statistics on current network usage (mbits incoming/outgoing). To show all interfaces, invoke it as <code>nload -m</code>; to show only a single interface, use e.g. <code>nload enp3s0f1</code>. </p></li> <li><p> <b>paccache</b>. [<a href="https://www.archlinux.org/packages/community/x86_64/pacman-contrib/" target="_blank">in pacman-contrib</a>] To flexibly purge package files from the Pacman cache. Pacman proper has <code>--clean</code>, but paccache allows you to remove e.g. all but the most recent three versions of all packages, ignoring stuff related to nvidia: <blockquote> paccache -r -k 3 -i nvidia,nvidia-settings,nvidia-utils,opencl-nvidia,linux,linux-firmware,linux-headers,cuda </blockquote> Also check out the other scripts in pacman-contrib, like pacdiff and rankmirrors. </p></li> <li><p> <b>pdfpc</b>. [<a href="https://www.archlinux.org/packages/community/x86_64/pdfpc/" target="_blank">Arch repos</a>] Lightweight PDF presenting, with even some really esoteric features like detecting animated slides in a LaTeX beamer presentation (that doesn't really work in my experience). Multi-monitor support. </p></li> </ul> <p> Here's a couple that I wrote myself. </p> <ul> <li><p> <b>sound-manager</b>. [<a href="https://git.tomsmeding.com/sound-manager" target="_blank">git</a>] TUI over the PulseAudio pacmd interface for changing volume of microphones (sources), speakers (sinks), and applications using those, as well as reassigning applications among those streams. </p></li> <li><p> <b>acpi-inhibitor</b>. [<a href="https://git.tomsmeding.com/acpi-inhibitor" target="_blank">git</a>] A systray app in Rust that uses <code>systemd-inhibit</code> to block laptop close signals. Can be turned on and off from the systray icon. </li></p> <li><p> <b>display-manager</b>. [<a href="https://git.tomsmeding.com/display-manager" target="_blank">git</a>] Small popup window using zenity to select what multi-monitor configuration to enable in xrandr. If you have a different setup from mine, you probably have to modify the presets in the script (which is only ~100 lines of Python). </li></p> <li><p> <b>rid3v2</b>. [<a href="https://git.tomsmeding.com/rid3v2/" target="_blank">git</a>] ID3v2 tag editor (i.e. track metadata in mp3 files) in Rust. Written because the <code>id3v2</code> utility has bugs relating to encoding of non-ASCII characters. </li></p> </ul>