FOSSPicks
elfcat
elfcat
is a tiny yet brilliant command for the terminal. Its cute name also hides its functionality; this is a command that outputs (cat
s) the contents of a binary executable (elf
) in a human-readable way, letting you explore the hidden secrets of your favorite applications from the command. Taking the name of a binary as its only argument, elfcat
produces output from the binary. The raw output isn't especially human readable and not especially accessible from the command line, but it's a lot more useful than using cat
to see a binary. The output is concatenated into an HTML file which (of course) looks best when dropped into a web browser. This is a brilliant idea because the HTML output is fully annotated to describe everything detected about the binary file. And if you wanted, you could still view it from the command line.
When loaded into a web browser, the main page shows the hex output of the raw binary of the file, alongside any ASCII decoded values, much like any hexadecimal editor. Above this is some general information about the executable, such as its size, object class, and type. The clever parts appear when you start to hover your cursor over the colored sections in the hexadecimal blocks of code. Annotations appear as text boxes on the right, informing you of what each section does and how it's linked to other blocks of code. It's still difficult to understand unless you have some knowledge of assembler, but it's a fascinating insight into what the binary contains and a lot easier than using other tools to decompile and view an executable, especially if all you want to do is find some text or see where different sections of an executable live within the raw file. Future features will include memory mapping visualization, which would be unique.
Project Website
https://github.com/ruslashev/elfcat
Stenotype emulator
Plover
Stenography is the ancient art of documenting something in a shortened form without losing any information, usually by replacing words and characters with more readily written symbols. That particular mode of stenography became known as shorthand – beloved by assistants everywhere. But the original stenography lives on and is now most commonly associated with court-of-law stenographers, transcribing everything from murder motives to matrimonial misdemeanors. Modern stenographers do this with a keyboard input device, called a stenotype, that looks more like an octave of a piano keyboard. The stenotype translates chords of keys into words and sentences almost instantaneously, enabling stenographers to type up to 300 words per minute, compared to the 60-80 most of us can manage.
This epic typing speed obviously has many advantages for Linux users, but stenotype machines are expensive, unconventional, and take a lifetime to master. Far better if you can experiment with stenography without the outlay, and that's exactly what Plover does. Plover translates multiple concurrent keypresses, roughly mapped to the same locations you'd find keys on a stenotype machine, into words and phrases preconfigured in editable and addable dictionaries. To do this properly, your keyboard will need to be able to support more than a few concurrent keypresses. This is known as N-key rollover (NKRO). While cheap keyboards may struggle (although some of the listed compatible keyboards are less than $30), gaming and other high-quality keyboards should be compatible. There are even some excellent DIY examples you can build, or you can start ripping key caps from your own keyboard. But even with Plover and the right hardware, learning stenography is hard. It will take a long time and plenty of practice before you even approach the input efficiency of your current setup, but the end result would definitely be worth it.
Project Website
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Linux Kernel 6.13 Offers Improvements for AMD/Apple Users
The latest Linux kernel is now available, and it includes plenty of improvements, especially for those who use AMD or Apple-based systems.
-
Gnome 48 Debuts New Audio Player
To date, the audio player found within the Gnome desktop has been meh at best, but with the upcoming release that all changes.
-
Plasma 6.3 Ready for Public Beta Testing
Plasma 6.3 will ship with KDE Gear 24.12.1 and KDE Frameworks 6.10, along with some new and exciting features.
-
Budgie 10.10 Scheduled for Q1 2025 with a Surprising Desktop Update
If Budgie is your desktop environment of choice, 2025 is going to be a great year for you.
-
Firefox 134 Offers Improvements for Linux Version
Fans of Linux and Firefox rejoice, as there's a new version available that includes some handy updates.
-
Serpent OS Arrives with a New Alpha Release
After months of silence, Ikey Doherty has released a new alpha for his Serpent OS.
-
HashiCorp Cofounder Unveils Ghostty, a Linux Terminal App
Ghostty is a new Linux terminal app that's fast, feature-rich, and offers a platform-native GUI while remaining cross-platform.
-
Fedora Asahi Remix 41 Available for Apple Silicon
If you have an Apple Silicon Mac and you're hoping to install Fedora, you're in luck because the latest release supports the M1 and M2 chips.
-
Systemd Fixes Bug While Facing New Challenger in GNU Shepherd
The systemd developers have fixed a really nasty bug amid the release of the new GNU Shepherd init system.
-
AlmaLinux 10.0 Beta Released
The AlmaLinux OS Foundation has announced the availability of AlmaLinux 10.0 Beta ("Purple Lion") for all supported devices with significant changes.