justin, to fediverse

One of the challenges that I'm working on is empowering people with consumer-class internet access (i.e., dynamic addresses) to run their own Fediverse servers. The Publish/Publisher and websocket components I've added to move in that direction.

This allows someone with broad connectivity to re-publish connections from users who are more limited.

This is a big addition and I haven't published it to crates.io yet. But the code is at https://gitlab.com/justindthomas/sofapub.

video/mp4

justin, to fediverse

Added the beginning of a terminal UI to . I'm not convinced that I want to spend a lot of time on this; I'm handy with HTML/CSS/Javascript, but terminal layout is a different flavor of pain. I do love having the option to not use a browser, though.

I'll probably switch to working on a public TLS proxy for local clients (e.g., your-name.enigmtk.net) using Ockam.

https://gitlab.com/justindthomas/sofapub/-/commit/bcc570a6a4c59f3079c05e06acf62c6877a56ae9

justin, to fediverse

Published v0.1.8 with signature verification on inbox posts enabled.

One might argue that that is more than "minimally functional." But this CISO would tell them, "Donny, you're out of your element!"

The current function is crude: an Actor object is retrieved every time a post is submitted. I'll write something to cache those responses later.

The verify (and signing) routines are ported from and upgraded for v0.9.2 of the rsa crate.

https://gitlab.com/justindthomas/sofapub/-/commit/5e1e19e73ae2ab46e2a96867a648535f4821f148

justin, to fediverse

In about 16 commands, I demonstrate installing , creating a new identity, responding to an external Follow request, sending a new Note ("Status" in Mastodon parlance), and then deleting everything from the remote server.

Everything in SofaPub is done from the command-line. I describe a couple of steps taken from the Serendipitous web interface to facilitate the interaction.

Network/DNS configuration (with TLS) is in place prior to this sequence.

https://gitlab.com/-/snippets/3596125

justin, to fediverse

Published version 0.1.5 of which adds Accept and Create templates that can be used like:

sofapub client accept \  
--id <https://infosec.exchange/4474e616-ecc0-481f-adb5-38a406924114> \  
--actor <https://infosec.exchange/users/jdt> \  
--inbox <https://infosec.exchange/inbox>  
echo "This is a test, please ignore." | sofapub client note \  
--inbox <https://infosec.exchange/inbox>  

client note can also be used with --content instead of stdin to provide the Note content. Notes are public-only.

cargo install sofapub

justin, to fediverse

Updated to v0.1.4. The only change is a fix to the template copying logic that I broke in v0.1.3.

I'm using the rust-embed crate to embed the template files in the binary which are then moved to the local filesystem by the setup command to facilitate experimentation. I needed to change the way that I was using that crate for it to be effective.

cargo install sofapub to update.

https://gitlab.com/justindthomas/sofapub/-/commit/67c76e5d378a4a4ea6ba3a22ce6df978ee32bd5e

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • mdbf
  • InstantRegret
  • ethstaker
  • magazineikmin
  • GTA5RPClips
  • rosin
  • modclub
  • Youngstown
  • ngwrru68w68
  • slotface
  • osvaldo12
  • kavyap
  • DreamBathrooms
  • Leos
  • thenastyranch
  • everett
  • cubers
  • cisconetworking
  • normalnudes
  • Durango
  • anitta
  • khanakhh
  • tacticalgear
  • tester
  • provamag3
  • megavids
  • lostlight
  • All magazines