💾 Archived View for altesq.net › ~evenfire › posts › 2022-05-10.gmi captured on 2023-04-26 at 13:24:49. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

Tools that follow the UNIX philosophy

Aka smaller, yet better, programs for Linux.

If a program is mentioned in the "don't use" section, it's strictly speaking from a bloat standpoint, not if the program is secure/good/etc or no. In some instances, for example KeepassXC, the program is remarkable, but it uses a GUI, which I personally dislike. All programs recommended here have CLI interfaces and it's my personal preference only.

Bootloader

DON'T USE: GRUB, systemd-boot

USE: efibootmgr

GRUB is incredibly bloated, systemd-boot uses efibootmgr, but why use a 3rd party program when you can use the original?

Here's how you can replace your bootloader:

efibootmgr --disk /dev/sdX --part Y --create --label "Linux" --loader /vmlinuz-linux --unicode 'root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw initrd=\initramfs-linux.img' --verbose

Edit the boot parameters to your liking, for example if you have encryption.

Browser

DON'T USE: Chromium & friends, Firefox

USE: w3m, lynx, offpunk WWW mode, links

You sometimes need a GUI web browser, in that case I recommend Firefox with arkenfox.js, otherwise I personally use offpunk's WWW mode and lynx.

Password Manager

DON'T USE: LastPass, KeepassXC, Bitwarden

USE: pass

Pass is the original UNIX password manager, it uses GPG for encrypting the files. Only downside the service name is leaked to the OS, because it being the filename, although can be mitigated by not using a descriptive filename.

To get started, install pass for your respective distribution.

pass init <gpg-id or email>

This initializes your pass repository. You're now ready to put your passwords!

pass insert category/service
# Or if you want to insert multiple lines
pass insert -m category/service

You can get really creative with the folder layout, and you can also upload it to git.

As a side note, please don't use LastPass! It has had various security issues in the past, and besides LogMeIn is a shady company. Use KeepassXC or Bitwarden if you want a GUI password manager.

File Sharing

DON'T USE: proprietary services

USE: croc

Croc is a more updated version of magic wormhole, using the same basic principles. It's the most secure file sharing method around, using PAKE encryption, which is excellent for files. After installing it for your distribution, here's how you send a file:

croc send <filename>
# This'll use the croc relay hosted by the devs, if you want to use my personal relay you'd do:
croc send --relay altesq.net <filename>

It uses e2ee and the relay is being used only to route the packets, nothing more, no data can be intercepted or seen. The author of croc details how it works in the post below.

How croc works

File Browser

DON'T USE: pcmanfm, dolphin

USE: ranger, lf, nnn, mc

I personally use ranger, but some have found lf to be more stable. Ranger is more customizable, but it's written in Python and can be sluggish at times.

Text Editor

DON'T USE: Visual Studio Code, Atom, etc.

USE: neovim

Neovim is really minimal, and can be extended easily with plugins. If you don't know the vim already, I definitely suggest learning it as it'd help a lot.

For the emacs lovers, I'm not listing emacs here due to it not being minimal, which is the goal of this list, as we know Linux is the bootloader to emacs ;)

Matrix Client

DON'T USE: Element, FluffyChat

USE: gomuks

If you've ever used Matrix, you've seen how bloated and complex Element and other GUI clients are, while Element being the only feature-complete one. While missing some features, gomuks does really well and has no competition in the terminal space, although it has some quirks at first, like setting up the encryption keys. I have a tutorial for setting up gomuks.

Gomuks setup guide

IRC Client

DON'T USE: MIRC, HexChat

USE: irssi, weechat, etc.

Does anyone even use MIRC now? I personally use weechat, although it's a bit bloated in the beginning due to it loading lots of unneeded plugins, you can easily disable them and get a lean client. Irssi is also minimal and great in many aspects. I have a tutorial for setting up weechat.

Weechat setup guide

Music Player

DON'T USE: Clementine, etc.

USE: cmus, mpd

My choice here is cmus, as it's easy to use and works virtually everywhere. It uses ffmpeg underneath, so it can play any file format recognised by ffmpeg.

RSS Aggregator

DON'T USE: any GUI RSS feed reader

USE: newsboat, snownews

Newsboat is my favourite due to being able to setup vim keybindings, set default programs for opening various links and more.

Image Viewers

DON'T USE:

USE: feh, sxiv

I've always used feh, but recently moved to sxiv/nsxiv as it solves the quirks of feh but performs amazingly well.

Mail Clients

DON'T USE: Thunderbird

USE: mutt/neomutt

At the moment, I don't use email anymore. Although, I recommend neomutt as a terminal email client. Though it's bothersome to properly setup, you can find plenty of setup scripts online.

Media Player

DON'T USE:

USE: mpv, ffplay

Mpv is the best media player by far due to its script repository. By default it's bare bones, but you can customize it to your taste, even fully change the GUI so it's only the video, it also runs in the terminal, although audio only.

PDF Viewer

DON'T USE:

USE: mupdf, zathura

I use both interchangeably, although I like mupdf's interface a bit better.

Funny Coincidence

I've just seen, after submitting this to Antenna and looking at the logs, that stacksmith has made a post about the UNIX philosophy and we've both submitted them at the same time, quite amusing.

Responses to this post:

Distributed platforms vs. “complexity” by degrowther

Home