What is Hackers' Pub?

Hackers' Pub is a place for software engineers to share their knowledge and experience with each other. It's also an ActivityPub-enabled social network, so you can follow your favorite hackers in the fediverse and get their latest posts in your feed.

Today I had some time to play around with a esp32-c6 I had laying around. I wondered for a while now whether it would be possible to run Diesel on these micro controllers.
Turns out that this is possible for the SQLite backend with some adjustments to diesel and some of our dependencies :tada:

You still need to bring your own VFS to get this working.

I likely will upstream parts of these in the next days, so the next Diesel release might support this out of the box.

Command line output of flashing a ESP32-C6 via espflash and afterwards seeing Diesel queries appearing in the ouput.Source code for running an embedded Rust program creating a Sqlite Database connection via Diesel and executing several queries.

```rust

#[unsafe(no_mangle)]
extern "C" fn sqlite3_os_init() -> core::ffi::c_int {
    println!("Setup os");
    unsafe {
        crate::memory::install();
    }
    libsqlite3_sys::SQLITE_OK
}

#[esp_hal::main]
fn main() -> ! {
    let config = esp_hal::Config::default().with_cpu_clock(esp_hal::clock::CpuClock::max());
    let peripherals = esp_hal::init(config);

    println!("Firmware starting");

    esp_alloc::heap_allocator!(size: 100 * 1024);
    println!("Before sqlite");
    let mut conn = SqliteConnection::establish(":memory:").unwrap();
    conn.set_instrumentation(|event: diesel::connection::InstrumentationEvent<'_>| {
        println!("Execute query: {event:?}")
    });

    conn.batch_execute("CREATE TABLE users(id INTEGER NOT NULL PRIMARY KEY, name TEXT NOT NULL)")
        .unwrap();

    diesel::insert_into(users::table)
        .values([users::name.eq("John"), users::name.eq("Jane")])
        .execute(&mut conn)
        .unwrap();

    let delay = Delay::new();
    loop {
        let data = users::table
            .filter(users::name.eq("Jane"))
            .first::<(i32, String)>(&mut conn)
            .unwrap();
        println!("----");
        println!("Query data:");
        println!("Loaded user data: {} -> {}", data.0, data.1);
        println!("---");
        delay.delay_millis(500);
    }
}

```
0

I don't want to interact with Pixelfed, or GoToSocial, or Mastodon, or whatever.

I want to interact with *people*, whatever server / instance they are using.

Whether someone posts only photos, or long form text, or music, or whatever.

Sure, I might choose to filter things *my* side, or group people together into lists, but the server someone is on should be irrelevant.

IMHO.

c.f. ploum.net/2025-12-04-pixelfed-

@neilNeil Brown
The is more than just the protocol. Diaspora, for example, does not use it and yet belongs to the Fediverse and it is one of the oldest service in the Fediverse.
Fediverse means that instances federate. There are different services: Mastodon, Pixelfed, Diaspora, Friendica, etc. See image.
This diversity has grown bottom up and is also desired by many users of the services. However, there is an app that captures much accounts and displays it in one timeline on the app. This is the Fedilab app: fedilab.app/ @appsFedilab Apps

Since more people are coming to the Fediverse from commercial central platforms, there is often a desire to see everything with one account. For example, the topic was discussed intensively here (in German): mstdn.social/@bsi@social.bund.

Fediverse-Services in a tree with different protocols
source: https://axbom.com/fediverse/
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

Actually speaking of nostalgia I have found it funny watching the nostalgia event horizon shift. When I was a kid it was the 50s/60s, then the 80s, and then my generation got annoying about the 90s. Recently saw a post about "Christmas used to be fun" with a photo timestamped 2012. Basically yesterday!

0

apropos nothing my favourite recipe app seems to be having a sale paprikaapp.com/blog/2025/11/17

(obviously nobody is paying me to say this, I've just been using it happily to store all of my recipes for years and it's like a $3 one-time payment if the sale's still on. It'll automatically extract a recipe from any website and I find it does a great job. I do not use the grocery/menu planning features.)

0

Something I considered for my "listening to" thread but rejected…

Ceci intéressera particulièrement les francophones.

Here is a video where a musician who built a table into a composite noise instrument made of contact mics, solenoids, crackleboxes, and guitar pedals does a series of short performances and explains his system in French. I'm skipping it for the thread because it's many sketches rather than one "song". But if you speak French I bet this is great:

youtube.com/watch?v=M0SU7C1uwJQ

0
0
0

RE: mastodon.social/@anewsocial/11

I'm so grateful to @snarfed.orgRyan Barrett for giving me a chance to partner with him on @anewsocial.

I still can't believe he decided to say yes after the wild essays I sent him over email about all the great things we can do with Bridgy Fed.

What an amazing year. We're just getting started 🚀

0
0
0
0
0
0
0
0
0
0
0

Should you ever be looking for information on a weird old plug or socket, or are just interested in such things, the online "Museum of Plugs and Sockets" is one of those sites that makes the Internet seem like less of a terrible mistake than usual.

plugsocketmuseum.nl/

The page on old British "BS 546" is unmatched, in particular: plugsocketmuseum.nl/OldBritish

0
0

I peek at Meta's Threads every now and then. Just saw an ad for an app that lets me bet on things like "what will Mr. Beast say in his next video?" though completely unclear what yes/no means in this context.

I looked it up and this is being considered A Very Serious Company by other very serious companies.

It's just lightly regulated betting, but they call it "direct investment hedging against unpredictable macroeconomic events". I hate our reality

businessinsider.com/kalshi-cnb

Ad from Kalshi. "What will Mr. Beast say next?" Yes button to bet $0.55, No button to bet $0.49. You can evidently both buy and sell bets. Infinite regress of commoditization.
0
0

Americký prezident dostal od mezinárodní fotbalové federace cenu míru. FIFA ji udělila vůbec poprvé, a to právě Trumpovi, který se netají ambicí získat prestižní Nobelovu cenu za mír.
🔵 Prezident se sám dekoroval medailí, která k ceně patří, v rámci ceremoniálu k rozlosování Světového šampionátu ve fotbale 2026.

0
0

V čele strany PRO zůstává Jindřich Rajchl. Ve funkci ho potvrdili delegáti republikového sněmu. Politický subjekt disponuje jediným poslancem – právě Jindřichem Rajchlem. Ten kritizuje Evropskou unii i pomoc bránící se Ukrajině. Ve volbách získal mandát na kandidátce SPD. Spolupracovat chtějí i dál.

0
0
0
0

All non-annealed parts show cracks and none of the annealed parts do, I could not have hoped for a better result!
The gluing itself didn't introduce much stress in the annealed parts, but you can see the position of the cracks in the polariscope image of the non-annealed parts.

I'm really happy with these results, the solution to these cracks is very simple, easy and so effective!

0
0

the 6.8mm is another "fighting the last war" weapon.

In the mountains of Afghanistan, the Taliban used PKMs to plink in a guerilla war, so big Army wants a new gun

As Ian says, one-way drones and hell, a single Designated Marksman can handle it
youtu.be/kqlKXrwmRMQ

0
0
0
0
0
0
0

I'm an unpaid volunteer running 5 websites and 5 accounts helping people use Mastodon and the wider Fediverse. I pay their bills every month.

If you want to help these sites & accounts keep going, you can buy me a coffee:

➡️ ko-fi.com/fedithing

(No registration, choose any amount, all currencies work, one-off or monthly donations)

Alternatively become a patron:

➡️ liberapay.com/FediThing

All support greatly appreciated! 🙂

❤️ @FediTips, @FediFollowsFediFollows 🎅, @FediVideo, @FediGardenFedi.Garden 🌱 & @homegrownGrow Your Own Services 🌱

0