Link Dump

Links to random stuff.

This all comes from #0x00-links:kernelpanic.cafe.


Magma

Open-source carrier-grade wireless networking platform for rural areas

Source Code

paper

Magma is an open-source software platform that gives network operators an open, flexible and extendable mobile core network solution. Magma enables better connectivity by:

Allowing operators to offer cellular service without vendor lock-in with a modern, open source core network Enabling operators to manage their networks more efficiently with more automation, less downtime, better predictability, and more agility to add new services and applications Enabling federation between existing MNOs and new infrastructure providers for expanding rural infrastructure Allowing operators who are constrained with licensed spectrum to add capacity and reach by using Wi-Fi and CBRS


feuille

feuille is a fast, dead-simple socket-based pastebin that allows a user to send text, logs or code to your server. It focuses on speed, code quality, and security.

Source Code

// sending text
$ echo Hello, World! | nc heimdall.pm 9999
https://bin.heimdall.pm/abcd

// sending files
$ cat feuille.c | nc heimdall.pm 9999
https://bin.heimdall.pm/efgh

Chatter Net Client

Chatter Net is a modern decentralized semantic web built atop self-sovereign identity.

Source Code Homepage. For more, you can have a look at the sibling server project, and a prototype work-in-progress social application used to dog food the development process.

Chatter Net is a platform which is:

Chatter Net does not rely on a specific network stack or protocol. It is instead specified by its data model. It would be possible (though prohibitively slow) to operate a Chatter Net network using carrier pigeons.

Whereas the world wide web is a web of HTML documents, Chatter Net is a web of self-signed semantic documents. It closely follows (but is not fully compliant with) the Activity Pub protocol. Consequently, it is closely related to other federated platforms, of which Mastodon is the a well established platform.

Chatter Net's self-signed data model does differ in a subtle yet meaningful way: the authority resides in the users of the network, not the servers.

This is what allows the project to realize its objectives.

No de-platforming: since no server is needed to verify the identity of a user, no server can prevent a user from accessing the network. No platform lock-in: since no server is needed to verify the authenticity of data, no server can lock data away from users and other servers. No spam from arbitrary users: would-be spammers need not only convince a server to trust them, they must directly convince other users.


wiretap

sourcecode

Wiretap is a transparent, VPN-like proxy server that tunnels traffic via WireGuard and requires no special privileges to run.

rssnix

Unix-style filesystem-based RSS/Atom/JSON Feed fetcher/reader

Source Code


Diamond Types

The world's fastest CRDT. WIP.

Source Code

Blog post on making diamond types 5000x faster than competing CRDT implementations And since that blog post came out, performance has increased another 10-80x (!).

As well as being lightning fast, this library is also designed to be interoperable with positional updates. This allows simple peers to interact with the data structure via operational transform.

This repository contains a high performance rust CRDT for text editing. This is a special data type which supports concurrent editing of lists or strings (text documents) by multiple users in a P2P network without needing a centralized server.

This version of diamond types only supports plain text editing. Work is underway to add support for other JSON-style data types. See the more_types branch for details.


Boondock Echo

Source Code

Homepage

Radio reception in mountainous terrain is sporadic. During an emergency, poor communication can cost lives. The proposed solution is internet-backed time-shift radio.

This project uses commercial off-the-shelf handheld radios and a microcontroller-based internet gateway to receive and store messages on a server where they can be queued for playback locally or through a remote repeater. This solution allows increased communication in mountainous terrain with limited capital expenditure. Radio operators can capture traffic during a pileup, monitor multiple frequencies of interest, and replay important messages.


Nomad Network - Communicate Freely

Off-grid, resilient mesh communication with strong encryption, forward secrecy and extreme privacy.

Nomad Network Allows you to build private and resilient communications platforms that are in complete control and ownership of the people that use them. No signups, no agreements, no handover of any data, no permissions and gatekeepers.

Nomad Network is build on LXMF and Reticulum, which together provides the cryptographic mesh functionality and peer-to-peer message routing that Nomad Network relies on. This foundation also makes it possible to use the program over a very wide variety of communication mediums, from packet radio to fiber optics.

Nomad Network does not need any connections to the public internet to work. In fact, it doesn't even need an IP or Ethernet network. You can use it entirely over packet radio, LoRa or even serial lines. But if you wish, you can bridge islanded networks over the Internet or private ethernet networks, or you can build networks running completely over the Internet. The choice is yours.

Notable Features - Encrypted messaging over packet-radio, LoRa, WiFi or anything else Reticulum supports. - Zero-configuration, minimal-infrastructure mesh communication - Distributed and encrypted message store holds messages for offline users - Connectable nodes that can host pages and files - Node-side generated pages with PHP, Python, bash or others - Built-in text-based browser for interacting with contents on nodes - An easy to use and bandwidth efficient markup language for writing pages - Page caching in browser


Lightweight Extensible Message Format

LXMF is a simple and flexible messaging format and delivery protocol that allows a wide variety of implementations, while using as little bandwidth as possible. It is built on top of Reticulum and offers zero-conf message routing, end-to-end encryption and Forward Secrecy by default.

Source code

LXM Propagation Nodes offer a way to store and forward messages to users or endpoints that are not directly reachable at the time of message emission. Propagation Nodes can also provide infrastructure for distributed bulletin, news or discussion boards.

When Propagation Nodes exist on a Reticulum network, they will by default peer with each other and synchronise messages, automatically creating an encrypted, distributed message store. Users and other endpoints can retrieve messages destined for them from any available Propagation Nodes on the network.


reticulum

Self-configuring, encrypted and resilient mesh for LoRa, packet radio, WiFi and everything in between

Source Code

Reticulum is the cryptography-based networking stack for building local and wide-area networks with readily available hardware. It can operate even with very high latency and extremely low bandwidth. Reticulum allows you to build wide-area networks with off-the-shelf tools, and offers end-to-end encryption and connectivity, initiator anonymity, autoconfiguring cryptographically backed multi-hop transport, efficient addressing, unforgeable delivery acknowledgements and more.

The vision of Reticulum is to allow anyone to be their own network operator, and to make it cheap and easy to cover vast areas with a myriad of independent, inter-connectable and autonomous networks. Reticulum is not one network. It is a tool for building thousands of networks. Networks without kill-switches, surveillance, censorship and control. Networks that can freely interoperate, associate and disassociate with each other, and require no central oversight. Networks for human beings. Networks for the people.

The full documentation for Reticulum is available at markqvist.github.io/Reticulum/manual/.

You can also download the Reticulum manual as a PDF

For more info, see unsigned.io/projects/reticulum

Notable Features - Coordination-less globally unique addressing and identification - Fully self-configuring multi-hop routing - Initiator anonymity, communicate without revealing your identity - Asymmetric X25519 encryption and Ed25519 signatures as a basis for all communication - Forward Secrecy with ephemeral Elliptic Curve Diffie-Hellman keys on Curve25519 - Reticulum uses the Fernet specification for on-the-wire / over-the-air encryption - Keys are ephemeral and derived from an ECDH key exchange on Curve25519 - AES-128 in CBC mode with PKCS7 padding - HMAC using SHA256 for authentication - IVs are generated through os.urandom() - Unforgeable packet delivery confirmations - A variety of supported interface types - An intuitive and easy-to-use API - Reliable and efficient transfer of arbitrary amounts of data - Reticulum can handle a few bytes of data or files of many gigabytes - Sequencing, transfer coordination and checksumming are automatic - The API is very easy to use, and provides transfer progress - Lightweight, flexible and expandable Request/Response mechanism - Efficient link establishment - Total bandwidth cost of setting up an encrypted link is 3 packets totaling 297 bytes - Low cost of keeping links open at only 0.44 bits per second

Where can Reticulum be used? Over practically any medium that can support at least a half-duplex channel with 500 bits per second throughput, and an MTU of 500 bytes. Data radios, modems, LoRa radios, serial lines, AX.25 TNCs, amateur radio digital modes, WiFi and Ethernet devices, free-space optical links, and similar systems are all examples of the types of physical devices Reticulum can use.

An open-source LoRa-based interface called RNode has been designed specifically for use with Reticulum. It is possible to build yourself, or it can be purchased as a complete transceiver that just needs a USB connection to the host.


software evolution library

Programmatic modification and evaluation of software

source code

The SOFTWARE-EVOLUTION-LIBRARY enables the programmatic modification and evaluation of software.

A common interface abstracts over multiple types of software objects including source code abstract syntax trees (primarily using tree-sitter), compiled assembler code, and binary software objects. Software transformation, analysis, and evaluation techniques are implemented on top of this interface supporting automation of common software engineering tasks.

See the manual, available at https://grammatech.github.io/sel.


openziti

Source Code

The OpenZiti fabric provides a scalable, plugable, networking mesh with built in smart routing

Security Features * Zero Trust and Application Segmentation * Dark Services and Routers * End to end encryption

Performance and Reliability * A scalable mesh fabric with smart routing * Support for load balancing services for both horizontal scale and failover setups

Developer Focus) * Fully programmable REST management APIs * An extensible fabric, allowing you to add your own * load balancing algorithms * interconnect protocols * ingress and egress protocols * metrics collections frameworks * control and management plane messaging and semantics

Easy Management * A flexible and expressive policy model for managing access to services and edge routers * A web based admin console * Pre-built tunnelers and proxies for a variety of operating systems, including mobile


neuropil

neuropil is a small c-library which by default adds two layers of encryption to communication channels. It allows you to address identities (a device, an application, a service or a person) worldwide without compromise for privacy or security requirements.

Source Code

Docs

Home Page

The project embraces modern concepts like named-data networks, self-sovereign identities, zero trust architectures and attributes based access control to increase the cybersecurity level of it’s users beyond the current state-of-technology. In effect its users will benefit from the new way of secure, scalable and souvereign data integration to easily comply with legal, organizational, operational and compliance regulations and requirements.


farmos

Homepage Source Code

farmOS is a web-based application for farm management, planning, and record keeping. It is developed by a community of farmers, developers, researchers, and organizations with the aim of providing a standard platform for agricultural data collection and management.


bunkerweb

Source Code

Docs

BunkerWeb is a web server based on the notorious NGINX and focused on security.

It integrates into existing environments (Linux, Docker, Swarm, Kubernetes, …) to make your web services "secure by default" without any hassle. The security best practices are automatically applied for you while keeping control of every setting to meet your use case.

BunkerWeb contains primary security features as part of the core but can be easily extended with additional ones thanks to a plugin system.


Whisper

Source Code

Homepage

Whisper is a general-purpose speech recognition model. It is trained on a large dataset of diverse audio and is also a multi-task model that can perform multilingual speech recognition as well as speech translation and language identification.


Globalchemistry

We are writing the molecules to common chemical names that the general public use and keeping a record for all of us to download and maintain together. We can all manage it as an open source governing community and use tools to declare whether these chemicals are safe or not for general use.

Homepage


mugen

Music video generator based on rhythm

Source Code

  1. Provide an audio file and a set of video files

  2. Perform rhythm analysis to identify beat locations

  3. Generate a set of random video segments synced to the beat

  4. Discard segments with scene changes, detectable text (e.g. credits), or low contrast (i.e. solid colors, very dark scenes)

  5. Combine the segments in order, overlay the audio, and output the resulting music video


fantasy consoles/computers

Source Code

Homepage

This is a list of available fantasy consoles/computers. Including softwares which simulate virtual hardwares, with limited functionality. And always encourage creating and sharing tiny retro games and programs with built-in languages and tools.


libinput.el

This Emacs library divides the screen into zones and executed actions when those zones are touched. This is done by parsing the output from the libinput tools.

Source Code

Demo/Homepage


strcpy

Display and control your Android device

Source Code

This application provides display and control of Android devices connected via USB or over TCP/IP. It does not require any root access. It works on GNU/Linux, Windows and macOS.

It focuses on:

Its features include: - recording - mirroring with Android device screen off - copy-paste in both directions - configurable quality - Android device as a webcam (V4L2) - physical keyboard simulation (HID) - physical mouse simulation (HID) - OTG mode


ZilchOS

ZilchOS Core, a decidedly tiny Nix-based distro to play with

Source Code

An minimal viable Linux distribution based on Nix, musl, clang and busybox. (well, not yet, but give it a bit of time).

Bootstrapped from a single TinyCC binary.

Why

Ever wanted to see how to put Nix derivations together into something bootable? Or get rid of /bin/sh or /etc,

Goals

Non-goals (Core)

Stretch goals


Yoshiki Schmitz Archive

This repository contains Yoshiki Schmitz's remarks/works. It attempts to catalogue everything Yoshiki himself would have included as representative of his public thinking (ie, not particularly old social media posts).

Source Code

Last updated 10mos ago

Live version


AppManager

A full-featured package manager and viewer for Android

Source Code

Docs

Root/ADB-only features

Root-only features


tombl

Easily query TOML files from bash

Source Code

It allows bash to read .toml files structurally, so you don't have to come up with weird ad-hoc solutions involving awk, sed, and tears as soon as it breaks in production because you didn't use an actual toml-parser. It does this by outputting declare statements for associative, and "plain" arrays.

Bash is unable to store nested arrays of any kind, so any nesting will be ignored when exporting, and you'll have to adapt your -e VAR=path.to.thing to access the nested information. It is recommended that you start your scripts with set -euo pipefail in order to fail fast™.


chafa

Chafa is a command-line utility that converts image data, including animated GIFs, into graphics formats or ANSI/Unicode character art suitable for display in a terminal. It has broad feature support, allowing it to be used on devices ranging from historical teleprinters to modern terminal emulators and everything in between.

Homepage

Source Code

Gallery


AsmBB

AsmBB is a modern web forum engine, written entirely in assembly language (FlatAssembler aka FASM)

Source

Demo Instance

This is an engine for web based message board (forum) implemented entirely in assembly language, using FastCGI interface and SQLite database as a storage.

It is aimed to be the fast and light message board engine and still to be able to provide modern look and feel and all needed features for high active Internet community.

It can work on a really weak web server and in the same time to serve huge amount of visitors without lags and delays.

In addition, because of the very few dependencies and the very aggressive testing, AsmBB is highly secure forum engine.


surfraw

Surfraw - Shell Users' Revolutionary Front Rage Against the Web

Source

Surfraw provides a fast unix command line interface to a variety of popular WWW search engines and other artifacts of power. It reclaims google, altavista, babelfish, dejanews, freshmeat, research index, slashdot and many others from the false-prophet, pox-infested heathen lands of html-forms, placing these wonders where they belong, deep in unix heartland, as god loving extensions to the shell.

Surfraw abstracts the browser away from input. Doing so lets it get on with what it's good at. Browsing. Interpretation of linguistic forms is handed back to the shell, which is what it, and human beings are good at. Combined with netscape-remote or incremental text browsers, such as links (http://artax.karlin.mff.cuni.cz/~mikulas/links/), w3m (http://www.w3m.org/), and screen(1) a Surfraw liberateur is capable of navigating speeds that leave GUI tainted idolaters agape with fear and wonder.


foodsoft

Web-based software to manage a non-profit food coop (product catalog, ordering, accounting, job scheduling).

Source

Homepage

Demo Instance

A food cooperative is a group of people that buy food from suppliers of their own choosing. A collective do-it-yourself supermarket. Members order their products online and collect them on a specified day. And all put in a bit of work to make that possible. Foodsoft facilitates the process.

If you're a food coop considering to use foodsoft, please have a look at the wiki page for foodcoops. When you'd like to experiment with or develop foodsoft, you can read how to set it up on your own computer.


datakit

Source

Orchestrate applications using a Git-like dataflow


Stylix

Homepage

Source

System-wide colorscheming and typography for NixOS

Stylix is a NixOS module which applies the same color scheme, font and wallpaper to a wide range of applications and desktop environments. In some cases, theming can be activated as early as the bootloader! It also exports utilities for you to apply the theming to custom parts of your configuration. Stylix is built using base16.nix, a library which handles the generation of config files from templates provided by the base16 project. If you only set a wallpaper, Stylix will use a homemade genetic algorithm to choose a color scheme based on it. The quality of the generated palettes can vary - but more colorful images tend to have better results.

You can force a light or dark theme using the polarity option: stylix.polarity = "dark";

You can override part of the scheme by hand, perhaps to select your background and text colors manually while keeping the genetic accent colors.


irmin

Irmin is a distributed database that follows the same design principles as Git

Homepage

Source

Description