tl;dr specifically for OTP 29 Follow normal Erlang/zx install procedure outlined below. After installation: Download the manpages from erlang.org Screenshot 2026-07-17 Extract to ~/.erts/<whatever version>/ The tarball extracts everything to ./man which you need to copy to ~/.erts/29.0.3/ mkdir -p ~/build/eman cd ~/build/eman wget https://github.com/erlang/otp/releases/download/OTP-29.0.3/otp_doc_man_29.0.3.tar.gz tar xzvf otp_doc_man_29.0.3.tar.gz mv man ~/.erts/29.0.3/ Edit your ~/.bashrc or […]
Category: Computing
Migrating from Ubuntu/KDE to Devuan/XFCE
Ah, Devuan… the great migration begins. Leaving KDE and Ubuntu behind means learning a few new habits, and as opposed to that sucking really badly, there is actually quite a lot of good news: old-school GTK and Qt programs are pretty darn good these days and dramatically lighter weight than the KDE mainstays. Yes, KDE […]
Building Erlang + ZX on Devuan Excalibur
With Ubuntu/Kubuntu out of the running for “works and is mostly sane”, we are having to shift once again over to Devuan, which we have been using for servers for several years now at Tsuriai and QPQ, but not as often on desktops (because Kubuntu was just so convenient and changing habits is annoying). This […]
GAJU: Create and Call a Gajumaru Smart Contract
“Smart contract” is a bad term. It is malicious antisense made up by a marketing department with the intent of warping the intuitions of non-experts in dangerous ways. A much better term would be “ledger logic” or “chain script” or even “weave” or “doom” or something like that — because a “smart contract” is just […]
Crypto: How to do division in modular arithmetic
The goal of this post is to explain straightforwardly how to perform division in modular arithmetic in such a way that you actually understand it. This is a continuation of a series exploring the mathematical foundations of cryptocurrency. Previously: Visual GCD Algorithm What is a keypair? There’s plenty of other material out there that covers […]
Crypto: What is a keypair exactly?
Contents 1 Elliptic Curves 1.1 Degenerate curves 1.2 The Point at Infinity 1.3 Elliptic Curve [Group] Operation 1.3.0.1 Common math notation: P + Q, -R, and N*P 1.3.1 Special cases: P + P and P + -P 1.4 Reference: Elliptic curve group operation formulas 1.4.1 Special case where one point is infinity 1.4.2 General case […]
Palmer’s Law: tracking down retardation in the NaCl library
Previously: Palmer’s Law About a year ago, I was writing a browser extension crypto wallet. To actually call the cryptography routines, I needed to use the TweetNaCl library (which is pretty good all things considered; definitely recommend it if you have to call cryptography routines from JS). For some reason, the calls my extension was […]
Programming: Palmer’s Law
Today I was working with the Dennis Palmer, trying to figure out why a websocket connection would randomly die, and he threw this out and it fit so perfectly that I had to capture it in a post so I can hereafter reference it: The longer it takes to find the bug the fewer characters […]
Setting up Gitea’s “Act Runner” daemon on Devuan (SysVinit)
[Skip to the TL;DR if you just want to see the sysv init script.] I’ve been shuffling some things around in the background, and the main project I’ve been working on lately has a few different places where it makes use of these newfangled “CI/CD” monstrosities. Part of the shuffle has been a shift away […]
Building Erlang 26.2.5 on Ubuntu 24.04
A new Ubuntu LTS, a new set of minor package naming annoyances. Here is the current process: