[v1.9.1] bug fixes, performance improvements, ActivityPub compatibility improvements, thread and microblog locking, usability improvements and more ( github.com )

This is our v1.9.1 stable release of Mbin. This release includes bug fixes, performance improvements, ActivityPub compatibility improvements, thread and microblog locking, usability improvements and more... ...

BentiGorlich OP Mod , to Mbin Releases in [v1.9.1] bug fixes, performance improvements, ActivityPub compatibility improvements, thread and microblog locking, usability improvements and more
@BentiGorlich@gehirneimer.de avatar

Yes, the indexable and discoverable settings are both federated with these names. Afaik that is the one lemmy and piefed use. You can also look at our actor objects here: https://docs.joinmbin.org/fediverse_developers/#user-actor

@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random

I was a top 0.01% Cursor user, then switched to Claude Code 2.0

https://blog.silennai.com/claude-code

@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
Brahvim , to Technology in Microsoft finally admits almost all major Windows 11 core features are broken
@Brahvim@lemmy.kde.social avatar

@JigglySackles @mrgoosmoos no seriously how can long time #debian #user help #windows users to finally migrate? You still can run it virtualized??? What keeps #windows users at #windows? #gaming?

Oh my goodness, ...sorry if I sound negative, but, ...that looks very tag-spammy for Lemmy. I was shocked, haha!
Regardless though, Mastodon user, welcome! Welcome to Lemmy, too!

@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@pluralistic@mamot.fr avatar pluralistic , to random

Today's threads (a thread)

Inside: Apple's unlawful evil; and more!

Archived at: https://pluralistic.net/2025/10/06/america-with-chinese-characteristics/

1/

ALT
18+ pluralistic OP ,
@pluralistic@mamot.fr avatar
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random

Just Let Me Select Text

https://aartaka.me/select-text.html

-selection -experience -development

@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@cazabon@mindly.social avatar cazabon , to random

I had a crash that took down Firefox, so when I restarted it it was the newest version (an update I'd installed, but hadn't restarted after).

I just went looking through the settings pages, which is a habit I've unfortunately had to get into because and keep adding new anti-user fuckery in their continuing quest to drive users away from the only product they make that anyone gives two shits about.

And lo and behold, this is the new fuckery I found. Enabled by default. And it reinforces the need to go check for this bullshit every version update.

Firefox, if you had asked me how to cut my already diminishing trust in you to do the right thing by your users to near zero, I wouldn't have even dreamed this batshittery up. It's so much worse than I would have suggested. I have all the crap turned off - silently adding new crap and silently defaulting it to on is 1995-era Microsoft-screwing-the-users.

You feel you need to add this shit? Fine. But show me a dialog asking me whether I want it on or not when that version first starts. Don't turn it on behind my back and HOPE I DON'T NOTICE.

ALT
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
somethingsomethingidk , (edited ) to Selfhosted in Linkwarden v2.12 - open-source collaborative bookmark manager to collect, read, annotate, and fully preserve what matters (tons of new features!) 🚀

Sure thing, I'll edit this reply when I get back to my computer. Just note that I also have a tailscale and nginx container in the pod which are not necessary.

You'll see my nginx config which reverse proxies to the port the service is running on. On public servers I have another nginx running with SSL that proxies to the port I map the pod's port 80 to.

I usually run my pods as an unpriviledged user with loginctl enable-linger which starts the enabled systemctl --user services on boot.

All that being said I haven't publically exposed linkwarden yet, mainly because it's the second most resource intensive service I run and I have all my public stuff on a shitty vps.

Edit:
My opsec is so bad hahaha

Edit2:
I just realized the caps I gave were to the tailscale container, not the linkwarden container. Linkwarden can run with no caps :)

I added the tailscale stuff back

files:

linkwarden-pod.kube:

[Install]
WantedBy=default.target

[Kube]
# Point to the yaml in the same directory
Yaml=linkwarden-pod.yml
PublishPort=127.0.0.1:7777:80
AutoUpdate=registry

[Service]
Restart=always

linkwarden-pod.yml:

---
apiVersion: v1
kind: Pod
metadata:
  name: linkwarden
spec:
  containers:
    - name: ts-linkwarden
      image: docker.io/tailscale/tailscale:latest
      env:
        - name: TS_HOSTNAME
          value: "link"
        - name: TS_STATE_DIR
          value: /var/lib/tailscale
        - name: TS_AUTHKEY
          valueFrom:
            secretKeyRef:
              name: ts-auth-kube
              key: ts-auth
      volumeMounts:
        - name: linkwarden-ts-storage
          mountPath: /var/lib/tailscale
      securityContext:
        capabilities:
          add:
            - NET_ADMIN
            - SYS_MODULE

    - name: linkwarden
      image: ghcr.io/linkwarden/linkwarden:latest
      env:
        - name: INSTANCE_NAME
          value: link.mydomain.com
        - name: AUTH_URL
          value: http://linkwarden:3000/api/v1/auth
        - name: NEXTAUTH_SECRET
          value: LOL_I_JUST_PUBLISHED_THIS_I_CHANGED_IT
        - name: DATABASE_URL
          value: postgresql://postgres:password@linkwarden-postgres:5432/postgres
        - name: NEXT_PUBLIC_DISABLE_REGISTRATION
          value: "true"

    - name: linkwarden-nginx
      image: docker.io/library/nginx:alpine
      volumeMounts:
        - name: linkwarden-nginx-conf
          subPath: nginx.conf
          mountPath: /etc/nginx/nginx.conf
          readOnly: true

    - name: linkwarden-postgres
      image: docker.io/library/postgres:latest
      env:
        - name: POSTGRES_PASSWORD
          value: "password"
      volumeMounts:
        - name: linkwarden-postgres-db
          mountPath: /var/lib/postgresql/data

  volumes:
    - name: linkwarden-nginx-conf
      configMap:
        name: linkwarden-nginx-conf
        items:
          - key: nginx.conf
            path: nginx.conf
    - name: linkwarden-postgres-db
      persistentVolumeClaim:
        claimName: linkwarden-postgres-db-claim
    - name: linkwarden-ts-storage
      persistentVolumeClaim:
        claimName: linkwarden-ts-pv-claim

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: linkwarden-nginx-conf
data:
  nginx.conf: |
    #user  nobody;
    worker_processes  1;
     #pid        logs/nginx.pid;


    events {
        worker_connections  1024;
    }


    http {
        include       mime.types;
        default_type  application/octet-stream;


        sendfile        on;

        #keepalive_timeout  0;
        keepalive_timeout  65;

        gzip  off;

        # set_real_ip_from cw.55.55.1;
        real_ip_header X-Forwarded-For;
        real_ip_recursive on;

        server {
            listen       80;
            server_name  _;

            location / {
                    proxy_pass http://localhost:3000/;

                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_set_header X-Forwarded-Port $server_port;
                    proxy_set_header X-Forwarded-Scheme $scheme;
                    proxy_set_header X-Forwarded-Proto  $scheme;
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_set_header Accept-Encoding "";
                    proxy_set_header Host $host;
            }
        }
    }

I also have a little helper script you might like

copy.sh:

#!/bin/bash

SYSTEMD_DIRECTORY="${HOME}/.config/containers/systemd"
POD_NAME="linkwarden-pod"

mkdir -p "$SYSTEMD_DIRECTORY"
cp "${POD_NAME}".{kube,yml} "${SYSTEMD_DIRECTORY}"/

systemctl --user daemon-reload

@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random
@h4ckernews@mastodon.social avatar h4ckernews Bot , to random

Core – open source memory graph for LLMs – shareable, user owned

https://github.com/RedPlanetHQ/core