halfdane

joined 3 months ago
[–] halfdane@piefed.social 5 points 1 week ago (14 children)

How would anyone place a 100% community driven distribution like Debian in such a cage? There's no monetary leverage, the community is truly international, so local laws don't apply .....
Please note that it's also one of the most prolific distributions, and the foundation p.e. for *buntu.

If you're living in an oppressive jurisdiction, your employer might obviously not allow you to use a truly free operating system, but that's hardly Linux's fault.

So if your favorite distribution is starting bullshit, just switch to the next one, there are literally thousands of them. That's why "Year of the Linux desktop" is confusing: it's "year of steamOs" or "year of *buntu", probably even "year of Debian", but most certainly never "year of the nixos desktop".

You have choice. Use it.

[–] halfdane@piefed.social 4 points 3 weeks ago

I'm not your buddy, pal!

[–] halfdane@piefed.social 4 points 3 weeks ago (1 children)

While I'm not overly educated in the history of denazification in East Germany, I know that at least later, it was more of a proclamation than something actually happening. That's why so many neo-nazis "suddenly appeared" in the supposedly nazi-free zone after the unification of the germanies.

Supported by the fascists in the west that had never gone away, the unified right made quick progress in their organization.

[–] halfdane@piefed.social 22 points 3 weeks ago
[–] halfdane@piefed.social 19 points 3 weeks ago (1 children)

While I'm more of a KDE person myself, it's always nice to see a popular FLOSS desktop going strong - kudos to the gnome team!

Here's a written version in case you don't feel like watching a video: https://release.gnome.org//50/

[–] halfdane@piefed.social 0 points 3 weeks ago

Hu, it never occurred to me to check out these icons there - thanks for the heads-up: TIL

[–] halfdane@piefed.social 0 points 4 weeks ago (2 children)

Seems like you're talking about a different article: there was no context-poisoning, or in fact even anything LLM specific in this attack.

[–] halfdane@piefed.social 0 points 4 weeks ago

This wasn't even a prompt-injection or context-poisoning attack. The vulnerable infrastructure itself exposed everything to hack into the valuable parts of the company:

Public JS asset  
    → discover backend URL  
        → Unauthenticated GET request triggers debug error page  
            → Environment variables expose admin credentials  
                → access Admin panel  
                    → see live OAuth tokens  
                        → Query Microsoft Graph  
                            → Access Millions of user profiles  

Hasty AI deployments amplify a familiar pattern: Speed pressure from management keeps the focus on the AI model's capabilities, leaving surrounding infrastructure as an afterthought — and security thinking concentrated where attention is, rather than where exposure is.

[–] halfdane@piefed.social 4 points 1 month ago

I have the association of praying hands 🙏

Maybe they're impersonating a character from their favorite kung-fu movie?

[–] halfdane@piefed.social 0 points 1 month ago

LibreOffice Online: a fresh start

LibreOffice is a desktop application, but we get many requests for a web-based version of the suite that users can deploy on their own infrastructure. Several years ago, project members started to develop LibreOffice Online, but in 2022 the Board of Directors at The Document Foundation voted to freeze the project and put it in the “attic”, for reasons that have now been superseded.

Earlier this month, the current Board of Directors decided to revoke those votes to give new life to the project, as Eliane Domingos, chairperson, put it:

To start the process of freeing LibreOffice Online, and to start the journey that will lead to having an online version by the community and for the community.

Now the work begins. We plan to reopen the repository for LibreOffice Online at The Document Foundation for contributions, but provide warnings about the state of the repository until TDF’s team agrees that it’s safe and usable – while at the same time encourage the community to join in with code, technologies and other contributions that can be used to move forward. We will actively work with the community to identify how to foster LibreOffice Online, including its technological basis, QA and marketing.

Note that this doesn’t mean that TDF will host or provide enterprise support for LibreOffice Online – that’s beyond the scope of the foundation. For these things, users are strongly recommended to consult the commercial ecosystem around LibreOffice. But TDF wants to offer the technology for those who want to use, modify and share it.

We will post more soon about our plans, and ways to get involved. We look forward to a new future for LibreOffice Online!

[–] halfdane@piefed.social 8 points 1 month ago (2 children)

I'm not that long here, but if it's not feasible to automatically detect the slopper-sites, maybe a rule could be introduced that people can report on?

This way the mod has an easier time identifying the things that are unwanted by the community.

 

You know how it goes. You're happily using Homer or Homepage for your home-lab dashboard. It's great. It looks nice. It does its job. But then one evening you think: "Wouldn't it be cool if the dashboard actually showed whether my services are alive without building a custom tile for homer?"

And instead of, oh I don't know, contributing to homer or using Uptime Kuma next to it like a reasonable person, you go full not-invented-here and build your own thing from scratch.

So here's ilias, a static HTML dashboard generator that actually checks your stuff.

OfozH6AxZoPCIc7.png

What makes it different from Homer / Homarr / Dashy / the other 47 dashboards?

It actually runs arbitrary checks. You give it a YAML config with HTTP endpoints and shell commands, and it:

  1. Executes all the checks in parallel (so treat it like a shell script and don't be stupid!)
  2. Matches results against rules you define (status codes, exit codes, regex on output)
  3. Bakes everything into a single, self-contained HTML file. No JavaScript, no API server, no database, no Docker container running in the background

The output is literally one .html file. You can scp it to a Raspberry Pi running nginx, open it from a USB stick, email it to yourself ... it just works. It's HTML and CSS. That's it.

The "why should I care" summary

  • Zero runtime dependencies. No Node.js, no Docker, no database. One tiny binary, one HTML file out.
  • Active health checks. HTTP requests, shell commands, regex matching on output. Not just a bookmark page.
  • Generate blocks. Run a command before rendering: pipe a Prometheus query into a chart, embed the image as a banner: now your dashboard can show graphs.
  • Single HTML file output. Icons, CSS, images, everything is inlined. The file is fully self-contained.
  • NixOS module included. Systemd timer, nginx vhost, sandboxed service. If you're a NixOS person, it's services.ilias.enable = true and you're done (after verifying my code ofc, I'm just a rando on the internet!).
  • ~1,100 lines of Go. One external dependency (gopkg.in/yaml.v3). That's the whole thing. You can read the entire codebase during lunch.

Quick taste

Minimal config:

title: My Lab  
groups:  
  - name: Services  
    tiles:  
      - name: Jellyfin  
        icon: https://cdn.jsdelivr.net/npm/simple-icons@v9/icons/jellyfin.svg  
        link: http://jellyfin.lan:8096/  
        slots:  
          - name: status  
            check:  
              type: http  
              target: http://jellyfin.lan:8096/health  
            rules:  
              - match: { code: 200 }  
                status: { id: ok, label: "✅" }  
              - match: {}  
                status: { id: down, label: "❌" }  
ilias generate -c config.yaml -o index.html  

Done. Open index.html. Your Jellyfin tile shows ✅ or ❌ based on whether /health returns 200.

Want to check disk space too? Add a command check:

      - name: Disk  
        slots:  
          - name: root  
            check:  
              type: command  
              target: "df / --output=pcent | tail -1 | tr -d ' '"  
            rules:  
              - match: { output: "^[0-6]\\d%$" }  
                status: { id: ok, label: "✅ <70%" }  
              - match: { output: "^[7-8]\\d%$" }  
                status: { id: warn, label: "⚠️ 70-89%" }  
              - match: {}  
                status: { id: full, label: "🔴 ≥90%" }  

Hover over any status to see the raw command output in a tooltip. Regex matching on stdout. Exit codes. The works.

"But what about..."

Uptime Kuma? Uptime Kuma is excellent for monitoring with alerting, history, and notifications. ilias can't do any of that! It's for when you want a single glanceable status page that you regenerate every 5 minutes via cron ro whatever. No history, no alerts, no database. Just "is everything green right now."

Homer? Homer is a beautiful bookmark dashboard. ilias took that idea and asked "what if the bookmarks could tell you if my random, unsupported service behind them is actually working?" If you just want a pretty link page or use the services already supported, Homer is great. If you want status checks for everything baked in, give ilias a try.

Links


Edit:
Based on the suggestions from the comments that the config might be a tiny bit noisy, I implemented a few easy ways to simplify bigger configs (see here ). Since I'm misusing semver for pride-versioning, that bumped my version up to a whopping 0.2.0 🥳


Edit 2:
Someone said they might use this to make service health publicly available to customers, which made me worry about information leakage.

And since I couldn't stop worrying, I added:

  • --no-tooltips param: Don't include command output for hover tooltips to prevent system information from leaking
  • --no-timestamp param: Omit the "Generated at" timestamp to hide system clock and monitoring cadence.

If you're using these, I feel much better about making the html publicly accessible, but when you set up a config please remember that link-tags can expose your internal topology and the tile/slot name might do the same! Don't go naming your tiles something like "Database Primary", "Payment Service Worker", or "Internal Auth API"!

 

!lemmysings@piefed.social

Commenters join their voices to sing.

Only posts that link to comment chains of songs

 

Wenn's so richtig dunkel ist

 

sapperlot: Ausdruck der Überraschung

Ich benutze es selten, aber mit Freude

 

!accidentally_on_purpose@piefed.social

When a user purposefully misunderstands a word, and explains it wrong, thus starting a chain of "no no, that's . This is about "

Hilarity ensues.

view more: next ›