1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
<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>
|