C is a general-purpose high-level programming language suitable for low-level programming, in other words: a system programming language. It stands out in terms of portability, interoperability, efficiency, and stability.
This library allows you to communicate small amounts of data between air-gapped devices using sound. It implements a simple FSK-based transmission protocol that can be easily integrated in various projects. The bandwidth rate is between 8-16 bytes/sec depending on the protocol parameters. Error correction codes (ECC) are used to improve demodulation robustness.
This library is used only to generate and analyze the RAW waveforms that are played and captured from your audio devices (speakers, microphones, etc.). You are free to use any audio backend (e.g. PulseAudio, ALSA, etc.) as long as you provide callbacks for queuing and dequeuing audio samples.
It's designed for devices that are relatively close to one another that need to exchange information, like a PC and a phone or a con badge and a door lock. It even links to some mobile apps that can be used for proof-of-concept testing (but they're kind of old so they might not be installable for you).
astroterm is a terminal-based star map written in C. It displays the real-time positions of stars, planets, constellations, and more, all within your terminal—no telescope required! Configure sky views by date, time, and location with precise ASCII-rendered visuals.
Choose any date, time, and location to explore past, present, or future celestial events. View the moon, stars, and planets with as much precision as terminal graphics allow. Precise lunar phases in real-time. Detailed constellation shapes. Lightweight and fast ASCII rendering.
If you compile it yourself, be sure to download the astronomical data as well. Requires Meson to compile.
mTCP is a set of TCP/IP applications for personal computers running PC-DOS, MS-DOS, FreeDOS, and other flavors of DOS. The applications include a DHCP client, FTP client and server, HTTP getter and server, IRC client, netcat implementation, network drive share client, ping utility (natch), packet sniffer, SNTP client, and telnet client.
mTCP runs on all variants of DOS including IBM PC-DOS, Microsoft MS-DOS, DR-DOS and FreeDOS. All of these applications will run well on the oldest, slowest PC that you can find - I routinely use them on an IBM PCjr made in 1983 because nothing beats the fun of putting a 39 year old computer on the Internet.
People are using mTCP for goofing off and for real work. If you have a DOS machine that needs to send data across the network mTCP can help you get that done. Besides its utility to vintage computers I have heard of people using it to transfer lab data from dedicated industrial PCs, allowing backups to be run on old machines, and sending sales reports from the branch offices of a retail store to a central server.
Don't have a vintage computer laying around? No problem! mTCP applications will run in a variety of virtual and emulated environments. It has been tested with modified DOSBox builds, VirtualBox, VMWare, and QEMU. See the documentation for the details.
mTCP applications should work on any IBM PC compatible personal computer running DOS. To be more specific, an IBM PC compatible with an 8088 or better CPU, 96KB to 384KB of system memory depending on the application, DOS v2.1 or newer, and a network interface that has a packet driver like NDIS or ODI.
A Masm compatible assembler for software development. Runs under Windows, Linux, DOS, OS/2 ( and probably other OSes as well ).
For Windows, use file Msvc.mak/Msvc64.mak if Visual C++ is to be used to create a 32-/64-bit version of JWasm. OWWin32.mak will create a 32-bit binary using Open Watcom.
For Linux, use GccUnix.mak to produce JWasm with gcc or CLUnix.mak to use CLang instead.
For DOS, Open Watcom may be the best choice. It even allows to create a 16-bit (limited) version of JWasm that runs on a 8088 cpu. Old versions of Visual C++ are also possible, although you probably need the HX development files then.
For OS/2, OWOS2.mak (Open Watcom) is supplied.
There are a bunch of other makefiles in the main directory, intended for other compilers. Some of them might be a bit outdated.
nwipe is a fork of the dwipe command originally used by Darik's Boot and Nuke (DBAN). nwipe was created out of a need to run the DBAN dwipe command outside of DBAN, in order to allow its use with any host distribution, thus giving better hardware support.
nwipe is a program that will securely erase the entire contents of disks. It can wipe a single drive or multiple disks simultaneously. It can operate as both a command line tool without a GUI or with a ncurses GUI as shown in the example below:
Warning For some of nwipes features such as smart data in the PDF certificate, HPA/DCO detection and other uses, nwipe utilises smartmontools and hdparm. Therefore both hdparm & smartmontools are a mandatory requirement if you want all of nwipes features to be fully available. If you do not install smartmontools and hdparm, nwipe will provide a warning in the log that these programs cannot be found but will still run but many important features may not work as they should do.
Detects drives that fail during the clearing process and tells you which ones they are so you can physically destroy them. Supports all of the common techniques, from filling the drive with zeroes to DoD 5220.22M seven pass song and dance. Packaged by multiple distros.
Onramp is a virtualized implementation of C that can be bootstrapped from scratch on arbitrary hardware. Starting in machine code, we implement a tool to convert hexadecimal with comments to raw bytes, then a virtual machine to run a simple bytecode, then a linker, then an assembler for a custom assembly language, and then the preprocessor and compiler for a minimal subset of C.
From that subset of C we implement a partial C99 compiler and libc, which then compiles a C17 compiler toolchain. The resulting toolchain can (soon) bootstrap a native C compiler (e.g. TinyCC), which can bootstrap GCC, which can then compile an entire system.
Only the first two steps are platform-specific. The entire rest of the process operates on a platform-independent bytecode. Onramp bytecode is simple to implement, simple to hand-write, and simple to compile to, making the entire bootstrap process as simple and portable as possible. The platform independence of Onramp makes present-day C trivially compilable by future archaeologists, alien civilizations, collapse recovery efforts and more. The goal of Onramp is to maintain a timeless and universal bootstrapping path to C.
An image viewer and browser utility. Pix is part of the X-Apps project, which aims at producing cross-distribution and cross-desktop software.
As an image browser, browse your hard disk showing you thumbnails of image files. Thumbnails are saved in the same database used by Nautilus so you don't waste disk space. Implements all of the file management functions you'd expect. As an image viewer it'll display just about every image format out there, from BMP to JPG. Optional support for RAW and HDR (high dynamic range) images. Add comments to images. Organize images in catalogs, catalogs in libraries. Search for images on you hard disk and save the result as a catalog. Search criteria remain attached to the catalog so you can update it when you want. Minor image editing and conversion features.
Especially handy is the capability to rename files in a series (normalizing filenames), edit EXIF data, and deduplicate by image (and not just by file hash). Deduplication can recurse directory structures. It's incredibly fast, too. 500,000 images took less than an hour to process (geeqie ran for three days straight and wasn't even finished).
In the AUR.
libacars is a library for decoding ACARS message contents. Supports FANS-1/A ADS-C (Automatic Dependent Surveillance - Contract), FANS-1/A CPDLC (Controller-Pilot Data Link Communications), MIAM (Media Independent Aircraft Messaging), Media Advisory (Status of data links: VDL2, HF, Satcom, VHF ACARS), and OHMA (diagnostic messages exchanged with Boeing 737MAX aircraft) messages.
Comes with a couple of sample CLI utilities for exercising the library.
Acarsdec is a multi-channels acars decoder with built-in rtl_sdr, airspy front end or sdrplay device. Since 3.0, It comes with a database backend called acarsserv to store received acars messages.
Can decode up to 8 channels simultaneously. Does error detection and correction. Can take its input from rtl_sdr, airspy, or sdrplay software defined radios. Logs data over UDP in planeplotter or acarsserv formats to store data in a SQLite database, or JSON for custom processing. Can decode ARINC-622 ATS applications (ADS-C, CPDLC) via libacars library.
Multi-channel decoding is particularly useful with broadband devices such as the RTLSDR dongle, the AIRspy and the SDRplay device. It allows the user to directly monitor to up to 8 different frequencies simultaneously with very low cost hardware.
Looks like it interacts with the SDR directly because it has to control the frequencies it's listening on, so you can't piggyback it on, say, an existing ADS-B node.
Requires libusb, librtlsdr, libairspy, libmirsdrapi-rsp, and libacars (optional).
A collection of tools and algorithms for developing traditional roguelike games. Implements features such as field-of-view, pathfinding, and a tile-based terminal emulator. The documentation exists in the repository but you can read it online here: https://libtcod.readthedocs.io/en/latest/
iaito is the official graphical interface for radare2, a libre reverse engineering framework. Based on radare2 and Qt-5/6. Iaito was the original name before being forked as Cutter. Use all your favourite r2 plugins and scripts (nothing is specific to iaito). Focus on simplicity, parity with commands, features, keybindings. Forensics, bindiffing, binary patching... not just a static disassembler.
r2 is a complete rewrite of radare. It provides a set of libraries, tools and plugins to ease reverse engineering tasks. Distributed mostly under LGPLv3, each plugin can have different licenses (see r2 -L, rasm2 -L, ...).
The radare project started as a simple command-line hexadecimal editor focused on forensics. Today, r2 is a featureful low-level command-line tool with support for scripting with the embedded Javascript interpreter or via r2pipe.
r2 can edit files on local hard drives, view kernel memory, and debug programs locally or via a remote gdb/windbg servers. r2's wide architecture support allows you to analyze, emulate, debug, modify, and disassemble any binary.
A a highly flexible, customizable, fast and powerful status bar replacement for people that like playing with shell scripts. The main design principle of this project is that all elements of the bar can be added, removed and freely changed at any point in time. Thus, the configuration of the bar is not static, rather it is possible to adapt the appearance of the bar completely dynamically with the help of a powerful event-driven scripting system at any point in time using the highly configurable basic building blocks SketchyBar offers.
The official documentation says to use Homebrew to install it.
A simple, minimalistic ActivityPub instance. Lightweight, minimal dependencies. Extensive support of ActivityPub operations. Multiuser Mastodon API support, so Mastodon-compatible apps can be used. Simple but effective web interface. Easily-accessed MUTE button to silence morons. No database needed. Totally JavaScript-free. No cookies either. Not much bullshit. Needs to be proxied by an HTTP server.
flashrom is a utility for detecting, reading, writing, verifying and erasing flash chips. It is often used to flash BIOS/EFI/coreboot/firmware images in-system using a supported mainboard, but it also supports flashing of network cards (NICs), SATA controller cards, and other external devices which can program flash chips. Can also be used for dumping the contents of SPI chips for analysis.
It supports a wide range of flash chips (most commonly found in SOIC8, DIP8, SOIC16, WSON8, PLCC32, DIP32, TSOP32, and TSOP40 packages), which use various protocols such as LPC, FWH, parallel flash, or SPI.
This add-on allows to use the WebSerial API in Firefox. It uses a native application to communicate with serial ports (works on Windows and Linux). The native application needs to be installed on the computer first. The GUI will offer to download the native application when you first try to open a serial port.
Space Nerds In Space is an open source (GPLv2) cooperative multiplayer starship simulator for linux (may also work on Mac). So go out and get together with a crew of your linux-nerd friends and their computers in a room with a projector or TV, and go forth and explore the galaxy.
One computer runs the central server simulation of the game's universe. Each player's computer acts as a station on a simulated spaceship. There are stations for Navigation, Weapons, Engineering, Communications, Damage Control, and the "Main View", an out-the-window 3d rendering. Multiple starships each with their own team may connect to the server for bridge-vs-bridge combat, or for cooperative play. Additionally, a game master may inject and control various NPC ships into the game to entertain the players, and scenarios may be constructed with a Lua based scripting API.
Source code: https://github.com/smcameron/space-nerds-in-space
Sniffle is a sniffer for Bluetooth 5 and 4.x (LE) using TI CC1352/CC26x2 hardware. Sniffle has a number of useful features, including: Support for BT5/4.2 extended length advertisement and data packets, Channel Selection Algorithms #1 and #2, all BT5 PHY modes, sniffing only advertisements and ignoring connections, channel map, connection parameter, and PHY change operations, and capturing advertisements from a target MAC on all three primary advertising channels using a single sniffer. This makes connection detection nearly 3x more reliable than most other sniffers that only sniff one advertising channel. Can write traffic to PCAP files for external analysis.
Requires a supported Bluetooth interface, such as the TI CC26x2R, CC2652RB, CC1352R, CC1352P, or the EC Catsniffer V3 CC1352. The documentation has a complete list of Bluetooth sniffers and links to get them.
Software that decodes the following digital transmission modes: POCSAG512, POCSAG1200, POCSAG2400, FLEX, EAS, UFSK1200, CLIPFSK, AFSK1200, AFSK2400, AFSK2400_2, AFSK2400_3, HAPN4800, FSK9600, DTMF, ZVEI1, ZVEI2, ZVEI3, DZVEI, PZVEI, EEA, EIA, CCIR, Morse code (CW), X10.
Give it a recording or stream of raw audio and it can try to make sense of it. This includes the output of utilities like rtl_fm.