Blockchain is why I think Web3 is a complete joke, and why I am really perturbed by the Intenet Archive's seeming love of it. The Internet Archive wants decentralization without understanding what it is. They are in love with the term. And that makes me seriously question their leadership.

Unlike distributed redundancy, subsidiarity often increases efficiency by leveraging trust, rather than reducing efficiency to eliminate the need for trust.

This is bang on, I think, and why I think anything blockchain based is doomed to fail.

Power was out here for almost 10 hours yesterday. Some quality thunderstorms went through here.

Made me think about threat models on public infrastructure.

I usually spend my Saturday mornings reading essays, but man do I just want to shut my brain off right now.

ELF file thing

Problem: I had a large, monolithic C file that I had to turn into a bunch of smaller ones, basically a function per file. It would result in a few hundred C files, with lots of inlining issues. Also, it's an upstream project whose changes we have to merge in occasionally.

Solution: I built with -ffunction-sections and -fdata-sections to get each function and data object into their own ELF section. Then I wrote a utility to extract each of the sections to their own object file, complete with relocations, symbol table adjustments, and some custom magic for special purposes.

Result: It worked and passed all the existing tests. Plus, it builds the complete set of library variants in 30 seconds instead of 5+ minutes using a different preprocessor conditional approach. Woohoo!

If anyone is interested in the details, I'm going to write something up about it when I get a chance, which should be soon.

(This does not work in general. It worked here because the conditions were right for it. I'm skipping over all that here.)

ELF file hack update: looks like it's working.


Just read the first couple paragraphs of this and I think it's going to hit on my problem with the use of the word "decentralization". There's a degree aspect and type aspect. And I think the degree is the wrong way to view it.

Update: the ELF tool worked. Still have to implement the ugly part where I alter the contents of a special section, which is the fun part.

By the way, if the API for manipulating ELFs is clunky, your code will be too.

Caya was a happy cat this afternoon as I was working on the couch.

Listening to NIN and Jellyfin is recommending the Big Gay Ice Cream song as related music.

And if you use objcopy to filter things and only keep what you want, it ignores the relocations.


Show thread

I was originally going to use objcopy to extract the sections, do a little magic, then glue things together. Turns out objcopy can't extract some basic info, even if you are trying to write to binary.

Show thread

By the way, the ELF tool is to extract the functions and data objects into separate object files and to alter the relocations and symbols a bit in a particular way.

objcopy can't do it. So I wrote my own.

It's a special purpose thing, and probably not useful to anyone else.

My little ELF manipulation tool is working on the first basic test case. Neat-o.

Show older

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