Playing with re-implementing my Paywall Breaker bot in .

Made it as far as the part, and that's because, for some weird-ass reason Wallabag doesn't do long-lived bearer tokens, you have to apply for a new one every hour (nonconfigurable) (though you can request a new one with every connection and it doesn't seem to care).

I might give up on the Post Agent/Website Agent in parse-incoming-event mode/Post Agent combo in favor of a Shell Agent running /usr/bin/curl to request the bearer token and pass the output thereof to.. something. Maybe a JSON Agent. I don't know, I'm going to bed.

The Wallabag part is disabled for now. The rest seems to work pretty well.

I have just finished wiring all of my news agents up to send what they find to my server over Nebula. writeup to come.

TIL that you can spoof an incoming host header to an application server.

Let's say you have an XMPP server alice.example.com with BOSH and Websockets enabled and proxied through Nginx.

Let's say you have a web client on bob.example.com. You configure it to contact alice.example.com, but the HTTP requests pertaining to the web client send the host header bob.example.com, which the XMPP server is not configured to listen for.

So, configure Nginx to spoof and not forward the Host header:

proxy_set_header Host alice.example.com;

Restart Nginx and it should work.

How did I figure this out? Prosody's mod_http_errors.lua module returns idiosyncratic error messages ("Whatever you were looking for is not here.") Once I figured out that those were not Nginx errors but Prosody errors I knew where to start looking.

For the record, when I write code that should be proxied through a web server, I need to remember to make it clear what's throwing the error when one is thrown ("The Doctor's web application - {error}") to save people some kinetic pattern baldness.

I should write this up.

Incidentally, here's how you do it:

sudo apt-get install -y pt-pulse pt-devices pt-device-manager pt-speaker

apt will sort out the redundancies on the command line.

Also, make sure that you have i2c and spi enabled in raspi-config.

Also, fuck Chromium, defaulting to Firefox ESR on the .

Well. It's certainly gotten much easier to run a on plain old now that all the Pitop secret-sauce utilities are now in the general package repo.

Finally figured out how to delete my oldest backups:

sudo duplicity remove-all-but-n-full 1 --force -v6 --tempdir /var/tmp --archive-dir /var/cache/duplicity b2://$ID:$KEY@$BUCKET/[home,opt,root,srv,var]

Going to test booting Leandra from the SSD. Again.

I really need to write up the last round of work I did on Leandra.

After finishing the other two blog posts that I've been procrastinating over.

rebalance complete. Leandra's now set up for 20TB of usable space.

Figured out what was wrong with the SSD, too - I didn't install syslinux on it correctly. I ran `/usr/bin/hexdump -C /dev/sdd[cd] | head -25` and compared the output. /dev/sdc (the flash drive) has a boot loader on it. /dev/sdd didn't.

Mounting the SSD and running the command `syslinux-install_update -i -a -m -c /mnt` and then re-running the hex comparison seems to show that it's now installed correctly. I won't know until the next reboot, though.

By the way, the inxi utility (github.com/smxi/inxi) is hella cool.

Balance on '/btrfs' is running

3031 out of about 4246 chunks balanced (3033 considered), 29% left

Modified Leandra's maintenance and backup scripts to check for running and terminate if they're active.

Balance on '/btrfs' is running

2038 out of about 4246 chunks balanced (2040 considered), 52% left

New hot-swap bays installed in Leandra. Two older 4TB SATA drives installed, last bay kept open so I can pop in replacement drives if I need to without needing to crack the case.

Also installed her old 120GB SSD, but she doesn't seem to be able to boot from that. So, back to the flash drive.

Currently rebalancing so that the two new drives will be pulled fully into the pool.

15 out of about 4246 chunks balanced (16 considered), 100% left

Show more
hackers.town

A bunch of technomancers in the fediverse. Keep it fairly clean please. This arcology is for all who wash up upon it's digital shore.