i understand your pain
overview - docs - downloads - files - changes - changes rss
honk ## features Take control of your honks and join the federation. An ActivityPub server with minimal setup and support costs. Spend more time using the software and less time operating it. No attention mining. No likes, no faves, no polls, no stars, no claps, no counts. Purple color scheme. Custom emus. Memes too. Avatars automatically assigned by the NSA. The button to submit a new honk says "it's gonna be honked". The honk mission is to work well if it's what you want. This does not imply the goal is to be what you want. Besides microblogging, honk might also server as the basis for a custom ActivityPub server, a sort of integrated federation framework. But you may need to get your hands dirty. ## build It should be sufficient to type make after unpacking a release. You'll need a go compiler version 1.21 or later. And libsqlite3 3.34.0+. Even on a fast machine, building from source can take several seconds. Development sources: hg clone https://humungus.tedunangst.com/r/honk ## setup honk expects to be fronted by a TLS terminating reverse proxy. First, create the database. This will ask four questions. ./honk init listen address: (tcp or unix: 127.0.0.1:31337, /var/www/honk.sock, etc.) server name: (public DNS name: honk.example.com) username: (the username you want) password: (the password you want) Then run honk. ./honk ## upgrade old-honk backup `date +backup-%F` ./honk upgrade ./honk ## documentation There is a more complete incomplete manual. This is just the README. ## guidelines One honk per day, or call it an "eighth-tenth" honk. If your honk frequency changes, so will the number of honks. The honk should be short, but not so short that you cannot identify it. The honk is an animal sign of respect and should be accompanied by a friendly greeting or a nod. The honk should be done from a seat and in a safe area. It is considered rude to make noise in a place of business. The honk may be made on public property only when the person doing the honk has the permission of the owner of that property. ## disclaimer Do not use honk to contact emergency services.
recent changes
2037:e90e3eebc698
on 2025-05-28 14:09:37 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
Tagged: tip
don't bother with prefault |
2036:76235a13ff6d
on 2025-05-28 01:46:36 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
make first year configurable |
2035:e252d80829c7
on 2025-05-28 00:46:26 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
using mmap probably requires prefaulting |
2034:ff4b6f6d56ed
on 2025-05-27 22:46:15 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
changelog update |
2033:f82c0a121d2b
on 2025-05-27 22:35:22 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
limit the avif encoders to avoid getting blasted |
2032:3b092d6e43d9
on 2025-05-27 22:11:56 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
replace ReadFile with Mmap. now we're cooking with induction. |
2031:23b0e16defdc
on 2025-05-27 22:02:33 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
make sure blob row is closed in error case |
2030:9ed5f2469fac
on 2025-05-26 22:25:59 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
safe to rely on strings.ReplaceAll now |
2029:5e31ad300551
on 2025-05-26 01:19:59 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
try some sqlite changes |
2028:61293331845b
on 2025-05-24 22:19:22 -0400 EDT by Ted Unangst <tedu@tedunangst.com>
Parent: 2026:ddb8b76826ff
m |