josuah.net

Links

To various things that interest me, in no particular order. I know well some of the content I like, but you might be much more knowledgeable than me on many topics I list there. This is what I aim to discover, not topics I master.

OpenBSD

"Free, Functionnnal and Secure"

https://www.openbsd.org/:

FreeBSD

"The Power To Serve"

https://www.freebsd.org/:

Plan 9

A research operating system.

https://9p.io/plan9/: More dead links every days.

https://cat-v.org/: The plan 9 doc.

https://fqa.9front.org/dash1.ghostintheminesweepershell.pdf: get started with Plan 9 through 9front

https://doc.cat-v.org/plan_9/4th_edition/papers/venti/: A new approach to archival storage: append only deduplicated blocks.

https://www.ueber.net/who/mjl/plan9/plan9-obsd.html: Run a plan 9 network on OpenBSD, helps to understand what is Plan 9.

https://9fans.github.io/plan9port/: Run plan 9 user programs on other operating systems.

https://tools.suckless.org/9base/: Subset of the programs of plan9port that compiles with musl as well.

Distributions patches and forks:

https://9front.org/: Distro to get it to work on its machine.

https://9legacy.org/: Distro that is just a set of patches to the original.

https://harvey-os.org/: Porting Plan 9 to POSIX.

http://jehanne.io/: Porting POSIX to Plan 9.

xv6

A operating system for teaching operating systems.

https://pdos.csail.mit.edu/6.828/2017/xv6.html: Entry point and about page.

git://github.com/mit-pdos/xv6-public.git: cloneit!

https://pdos.csail.mit.edu/6.828/2017/xv6/book-rev10.pdf: I want more time to ReadIt!

TempleOS

A holy operating system.

https://templeos.org/: Support for 3D mesh in assembly without recompiling. Because we can.

Linux

A famous operating system.

https://tldp.org/: The Linux Documentation Project, mainly Linux but not only.

Distributions:

https://www.gentoo.org/: If you do not compile a binary, it's someone else's binary.

https://www.voidlinux.org/: Runit-based ditribution.

https://crux.nu/: Lightweight (for real, not like Arch) distro.

https://www.slackware.com/: A straightforward distro.

http://tinycorelinux.net/: Hard to do any smaller.

Distro that symlink files as a package management system:

https://gobolinux.org/: Interesting directory hierarchy, good introduction.

http://sabo.xyz/: Very simple and efficient approach.

GenodeOS

The Genode OS Framework is a tool kit for building highly secure special-purpose operating systems

Written in C++ (bleh) but a good way to study how to do a kernel.

https://genode.org/about/index:

L4

Considered by some as the "state of the art" microkernel, for its efficient IPC mechanism.

https://sel4.systems/: seL4 uses repo (bleh >:P) and cmake (bleh >:P) instead of more portable tools, but still worth a look at the code.

Software groups

Various groups of people sometimes writing software, sometimes related to other groups, sometimes collaborating, sometimes sharing a system.

//tildeverse.org/: Tildeverse - Association of like-minded ~tilde communities.

//suckless.org/: Suckless - software that sucks less.

//2f30.org/: 2f30 - div by 0: made with strange alien technology

//bitreich.org/: HTTP serves companies, Gopher serves people.

//dataswamp.org/: Remote shell for a few people.

//grifon.fr/: Associative ISP around Rennes, Brittany, France.

People

People from above and others.

https://pc.textmod.es/: where ascii art packs get released

https://xero.nu/: also see 0w.nz

https://www.swordarmor.fr/: French celt (and viking (and celt again)) legends soaked geek lair

https://z3bra.org/: Heavy tinkering intensifies...

Document browsers

Most HTTP/HTML browser presented here have a --dump flag of some sort, handful for converting html to mostly readable plain text.

http://retawq.sourceforge.net/: Simple text-mode web browser

http://links.twibright.com/: Classic text-mode web browser

http://www.elinks.cz/: Full-featured text web browser

http://lynx.browser.org/: Colorful text web browser

http://w3m.sourceforge.net/: Text web browser with a cursor, bells and whistles

System programming

http://smarden.org/runit/: An init system and supervision suite inspired from daemon tools.

https://skarnet.org/software/: Rewrite the layer between the kernel and the applications with minimalism.

https://en.wikipedia.org/Advanced_Programming_in_the_Unix_Environment: Programming book for feeling fine with all these syscalls.

Crypto

https://ianix.com/: A gold mine of state of the art crypto references.

https://github.com/BLAKE3-team/BLAKE3: A hash function that is too good to be real.

DJB

The elephant in the room of crypto.

https://cr.yp.to/: The entry point of its lair.

https://curvecp.org/: A (now not so) new style of crypto.

https://dnscurve.org/: Standard exploiting curve crypto for dns.

https://pqcrypto.org/: The next style of crypto.

Softwares

https://tinyssh.org/: OpenSSH is good, and this one is too and is not as famous.

https://mojzis.com/software/dq/: DNSCurve implemented after djbdns from the same author of tinyssh.

Qmail

An SMTPd server that aims simplicity, security, and general good design.

https://cr.yp.to/qmail.html: This is qmail, the venerable alternative to Postfix.

https://notqmail.org/: Not qmail, also not netqmail: continuation of both projects.

http://openqmail.org/: One-man project similar to notqmail in many aspects.

http://www.memoryhole.net/qmail/#any-to-cname: Overview of many qmail patches.

Real time communication

http://rtcquickstart.org/: A really, really good guide that cover simply and accurately SIP and surrounding protocols, with practical examples.

https://sip5060.net/: Services and documentation, blog (still very active) about SIP protoco.

http://osmocom.org/: Foundation for GSM support with free software, including bridging to SIP.

https://ircdocs.horse/: Status Quo of the IRC protocols actually used.

https://telecom.altanai.com/: A gold mine for all things about streaming protocols.

Libraries

https://www.libressl.org/: OpenSSL fork with focus on simplicity and sane defaults.

https://man.openbsd.org/tls_init.3: Sane alternative interface to the LibreSSL library.

https://openssh.com/: You might already know this one.

https://bearssl.org/: A single-person TLS library.

Wire protocols

https://dnscurve.io/: A better DNSSEC without the bulk, currently used on that site.

https://cr.yp.to/tcpip/minimalt-20130522.pdf: A better TLS without the bulk.

Messages formats/protocols

http://www.aaronsw.com/2002/rss30: RSS 3.0, which might never see any wide adoption because of backward compatibility matters to corporate people, but still a good example on how to simplify a format.

Networking

https://www.torproject.org/: The famous Onion Router

https://geti2p.net/en/comparison/tor: Invisible Internet Project, like Tor, but not Tor.

https://freenetproject.org/: Alternative internet featuring freedom and anonymity.

http://brokestream.com/netboot.html: 1 file, 2 functions, 300 lines DHCP and TFTP server!

https://code.kryo.se/iodine/: Make all traffic go through DNS to bypass filtering.

https://www.roesen.org/files/ipv6_cheat_sheet.pdf: IPv6 cheat sheet.

https://stackoverflow.com/questions/14388706/how-do-so-reuseaddr-and-so-reuseport-differ#14388707: Semantics of SO_REUSEADDR and SO_REUSEPORT.

Infrastructure status

https://crt.sh/: Status monitor for certificates.

https://hwaddress.com/: OUI table query, could be a simple script though.

https://repology.org/: Software package status for different operating system distributions.

User interfaces

https://arcan-fe.com/about/: The arcan display server project.

Documentation

https://manpages.bsd.lv/: I learned how to write (mdoc) man pages thanks to the layout of this page.

Low-Level

https://github.com/cirosantilli/x86-bare-metal-examples: Dozens of minimal operating systems to learn x86 system programming

https://bob.cs.sonoma.edu/IntroCompOrg-x64/book.html: Learn X86-64 assembly as well as how computer works in general.

https://www.coreboot.org/images/6/6c/LBCar.pdf: Use CPU cache as random access memory to write bootloader components in C.

https://yin.neocities.org/pc1512/: Giving a new birth to hardware born before me.

http://www.valachnet.cz/lvanek/diy/rc2014/index.html: Z80 is simple enough so that skilled engineer can peice it back together from pieces and program most parts.