An ACME protocol client written purely in Shell (Unix shell) language.
Full ACME protocol implementation. Support ECDSA certs. Support SAN and wildcard certs. Simple, powerful and very easy to use. You only need 3 minutes to learn it. Bash, dash and sh compatible. Purely written in Shell with no dependencies on python. Self-contained, just one script is needed to issue, renew and install your certificates automatically. DOES NOT require root/sudoer access. Docker ready. IPv6 ready. Cron job notifications for renewal or error etc.
A CLI stopwatch utility written as a self-contained shell script. Counts up, can save the last time value and resume at that point.
A sparkline generator implemented as a shell script.
Just run spark and pass it a list of numbers (comma-delimited, spaces, whatever you'd like) and it generates a text-mode bar graph, where the heights are relative to one another but reflect the numbers given. It's designed to be used in conjunction with other scripts that can output in that format.
Github: https://github.com/holman/spark
Resty provides a simple, concise shell interface for interacting with REST services. Since it is implemented as functions in your shell and not in its own separate command environment you have access to all the usual shell tools. Cookies are supported automatically and stored in a file locally. Most of the arguments are remembered from one call to the next to save typing. It has pretty good defaults for most purposes. Additionally, resty allows you to easily provide your own options to be passed directly to curl, so even the most complex requests can be accomplished with the minimum amount of command line pain.
Implemented as a shell script that you source: . /path/to/resty
Basically, Resty lets you treat HTTP requests to a REST API like a series of CLI commands.
A utility to automate the installation, maintenance, and debugging of Asterisk/DAHDI, while integrating additional patches to provide the richest telephony experience. Useful for: Automating installation and maintenance of Asterisk, Asterisk Test Suite, Asterisk Test Framework, DAHDI Linux, DAHDI Tools, and related resources; validating Asterisk configuration; finding common syntax errors in dialplan code; finding missing audio files referenced by the Playback, BackGround, and Read applications; suggesting optimizations that can be made to dialplan code to make it more readable and efficient; generating Asterisk user documentation; debugging Asterisk configuration; generating core dumps, automating PhreakNet boilerplate dialplan installation.
Primarily supported on Debian-based Linux systems. Support has also been added for FreeBSD. Pull requests to add support for other Linux distros or BSD are welcome.
This is F.O.B. (Flexible Orange Box), inspired by the popular S.O.B. (Software Orange Box) program for Windows.
When connecting SIP FXS devices with a Class 5 switch, the ATA will not see a Call Waiting presented to it when there is a Call Waiting. Thus, it is necessary to signal the FSK directly to the CPE in-band from the switch. Asterisk does not have any provision to do this, so this needs to be done with an external program.
This program is intended to be a legitimate Type II Caller ID Generator, used for the purpose of Call Waiting Caller ID (Of course, functionally, it can be used just like any other orange box to spoof call waitings if desired - we are not responsible for any misuse of this program). This allows you to send Call Waiting Caller ID to a remote endpoint, even if no Call Waiting is presented to the remote endpoint (e.g. Analog Telephone Adapter), allowing for CWCID to be provided even when advanced bridging capabilites are being used, by "orange boxing" in band for legitimate purposes.
Docker re-implemented as a 100 line shell script.
I wrote this script during the grueling process of installing and setting up an email server. It perfectly reproduces my successful steps to ensure the same setup time and time again, now with many improvements.
I'm glad to say that dozens, hundreds of people have now used it and there is a sizeable network of people with email servers thanks to this script.
I've linked this file on Github to a shorter, more memorable address on my website so you can get it on your machine with this short command:
curl -LO lukesmith.xyz/emailwiz.sh
When prompted by a dialog menu at the beginning, select "Internet Site", then give your full domain without any subdomain, i.e. lukesmith.xyz.
Debian (and derivatives) specific.
A shell script that takes a dd'ed image from a RasPi install and shrinks it down as far as possible so that it'll fit onto another, smaller microSD card. Used for cloning installs.
Remember, it won't work on a card, only a filesystem rip.
A tool that can turn a flat nginx.conf file into an Ubuntu-style included multi-file configuration structure, the Ubuntu-type configs into a single flat nginx.conf file, or it can start over with a brand-new configuration.
Written as a shell script for portability.
A shell script that lets you copy Git repos up to the IPFS network.
An XMPP echo bot written with sed and a shell script. Maybe something that I could tinker with to run on embedded devices? Not needing libstrophe is a plus.
Convert the name of your main development branch from master to main with ease.
A simple, self-contained, serverless, zero-configuration, json document store.
A personal, open source air traffic map. Designed for use on boxen that are RTL-SDR enabled, monitoring ADSB traffic, and are running a web server. Connects to the network port of dump1090-fa, readsb, dump1090, dump1090-mutability, or skyaware978 for its data. All-in-one installation script. Implemented with a shell script.
A script which digs up and displays lots of system configuration information, such as the specifics of the CPUs, storage devices (with identifying information) and space free, version numbers of common utilities, known hardware vulnerabilities, memory, and more. Even if you don't run it as root, you'll still get really useful information out of it.
Written in Perl but don't let that stop you.
In the AUR.
A hack that rewrites Git histories so you can spoof commit messages. Implemented as a shell script.
Don't be an asshole.
testssl.sh is a free command line tool which checks a server's service on any port for the support of TLS/SSL ciphers, protocols as well as some cryptographic flaws. Clear human-readable and machine-readable outputs. No installation needed, uses only bash. Test any SSL/TLS enabled service on any port.
Distributed chat via shared flat file. Implemented as a shell script with a shared logfile.
wait-for-it.sh is a pure bash script that will wait on the availability of a host and TCP port. It is useful for synchronizing the spin-up of interdependent services, such as linked docker containers. Since it is a pure bash script, it does not have any external dependencies.