Drop #120 (2022-10-17): Weekend Yard Sale Picker Edition
Undead FOSS; RustDesk; onefetch
The road trip to see #2.1 took up way more time than expected, so I'll have to weave in the mDNS (et al.) Knowledge Drop later this week. Today, we rummage through some weekend finds .
Despite the ridiculously early emergence of fake 🎄🎄🎄 at big box stores, it is still 🎃 season, so we'll toss a resource out every so often in said theme for the next couple of weeks.
Today's installment: delving into the dungeon of undead FOSS projects, better known as "Resurrecting Open-Source Projects".
This is an effort that does what it says on the tin: takes in dead FOSS projects and helps them find a new [crypt] keeper. The handlers have done all the prep work for you, including getting everything as current as possible from old repos.
The current project list is quite manageable:
packit: network packet generator and capture tool
sniffit: historical packet sniffer and monitoring tool
outguess: Universal steganographic tool
cbm: Color Bandwidth Meter (CBM) - display in real time the network traffic speed
scrot: SCReenshOT - command line screen capture utility
txt2html: Text to HTML converter
dcfldd: Enhanced version of dd for forensics and security
nbtscan: Scan networks searching for NetBIOS information
openrdate: Set the system's date from a remote host
iwatch: Realtime filesystem monitoring program using inotify
dnsmap: Scan for subdomains using bruteforcing techniques
stress: Tool to impose load on and stress test a computer system
and covers a fairly neat range of topic areas.
If you've been looking for a project to, say, learn Rust or strengthen your Rust skills as Tomás Alvarez did — or just have some fun rummaging around in classics like Perl — might I suggest having someone impart bane on your fav IDE, then dive in and attack some undead code.
As noted in the intro, we've just been on a road trip and have a few more planned throughout the remainder of 2022 (such is the power-hold of one's first grandkid). You may have guessed that I have far too many systems in-compound and strewn across the internets, and you’d be correct. These are all quite accessible from the central command post, but one never knows when they will have to hit up a GUI on a remote box when they only have a tiny glowing rectangle at their disposal (tis the stuff of nightmares!).
Now, VNC is so "2000's"; RDP is out of the question; and, I don't trust any commercial solution, given how much they seem to fail at "cyber" these days. I just want something FOSS with virtually no attack surface to let me click/tap things when needed. Added points for cool stuff like in-session file transfers. More points if it can be installed on extended family kit for remote support with embedded chat.
Do I ask for too much? It turns out, the answer is "no"!
Meet RustDesk [GH]: an "open source virtual / remote desktop infrastructure for everyone! The open source TeamViewer alternative. Display and control your PC and Android devices from anywhere at anytime." It does what it says on the tin, and does it quite well.
I try to keep these editions to ~3-5 minute reads, so I won't be expanding much on this, especially since it installs on every platform without burden, and has batteries included (i.e. you can set up your own gateway/relay server after you kick the tyres).
My suggested complete setup is running Tailscale on all the nodes you want to access, then running and exposing the relay server only on the Tailscale interface. That way, you get robust remote desktop, chat, file transfer, and more without exposing anything directly to the internet.
The solution in the previous section is one reason I'm trying to get back into doing everything I need to get stuff done into the terminal. Far too many modern things need taps/clicks. While the following utility is not a "need", it sure beats relying on a third-party social coding server for spiffy project metadata summaries.
Onefetch [GH] "is a command-line Git information tool written in
Rust that displays project information and code statistics for a local Git repository directly to your terminal. The tool is completely offline - no network access is required."
By default, the repo's information is displayed alongside the dominant language's logo, but you can further configure onefetch to instead use an image - on supported terminals -, a text input or nothing at all.
It automatically detects open source licenses from texts and provides the user with valuable information like code distribution, pending changes, number of dependencies (by package manager), top contributors (by number of commits), size on disk, creation date, LOC (lines of code), etc.
As you have probably guessed, the banner image is
onefetch default output on one of my Rust repos.
Neat project idea: use this tool and capture the rendered output to use as a GitHub social preview image.
INCYMI: October is half over O_O ☮