m5l.eu is a Fediverse instance that uses the ActivityPub protocol. In other words, users at this host can communicate with people that use software like Mastodon, Pleroma, Friendica, etc. all around the world.
This server runs the snac software and there is no automatic sign-up process.
Well, once I became the person to guess that and I'm simply translating some textures with #Cpp everything is butter smooth again.
📰 New blog article
Self-host your own multi-service #music server on #Android
How to replace your music streaming apps with a setup that supports multiple streaming services, multiple devices and multiple outputs from a single Webapp.
#mopidy #platypush #termux #ntfy #Tasker #python
https://blog.platypush.tech/article/Self-host-your-music-experience-on-mobile
#Python in #OpenBSD 7.8-current has been bumped to #Python313 from 3.12.
If you run any applications via #pipx then you might find they are failing to launch and cannot be upgraded either because of the version bump. You need to reinstall them all:
$ pipx reinstall-all
Solved my woes 
TextAudio is now open source!
A privacy-first text-to-speech platform that converts documents into audiobooks without Big Tech surveillance. Features voice cloning, 23 languages, and production-ready microservices architecture.
Your documents, your data, your control. Built on sovereignty principles, released under MIT license.
Feel free to continue.
🔗 https://github.com/Pariatorn/textaudio
#OpenSource #Privacy #TTS #TextToSpeech #SelfHosted #Sovereignty #VoiceCloning #Python #FastAPI #SvelteKit #FOSS
I have a #firewall ruleset defined for all of my VMs, but it always bothered me that they didn’t share the same syntax, formatting, ordering, etc. I figured I could reduce the complexity and solve all of these inconsistencies by modularizing my firewall rules. Ideally, I wanted something like:
```
import enable_ssh_in
```
which would inject the corresponding rule fragment into the ruleset. Some modules would also need light post-processing such as filling in port numbers, selecting protocols, and similar adjustments.
Unfortunately, #IPF can’t handle rule imports, so the next best option is to pre-bake the full ruleset and hand the final result to IPF.
My first attempt was with m4, but the result was messy and triggered my #OCD. Then I tried doing it in #Python, and the outcome is much cleaner.
Now I can write a simple text file like: https://paste.omnios.org/?97e42d30483c83fb#DNE4ir94tFsVxiFmngBafVFQoYsHYVbJCGMx6JWBT1me
Feed it through my macro processor, and it generates this: https://paste.omnios.org/?5db469ba780c5f70#8jd9kiy4GDTcjTwQyQtWsLvWQ3YFEW7UYYuyZqfnDo8U
What do you think about this?
My latest blog post: momtag
Introducing momtag, or Mike's Opinionated Music Tagger. Keep a small collection of music reasonably and consistently organised.
I’ve finally retired the old cron + sh setup for the weather bots. It served us well, but it had a major flaw: if I rebooted the server while it was posting, the job just died halfway. If the server was down during a scheduled slot, the forecast was lost forever.
So, I wrote a custom Python daemon to run inside the FreeBSD Jails.
See it working at https://marsh-sim.github.io/bibliography/
Because everything is written in regular files, the editor can autocomplete citation keys without any special tooling - they are just sections in another file. This kind of interoperability is why simple tools like text files and #ssg are so great.
I'm not a fan of hosting it on GitHub anymore, but there are already links in various places that I can't update, so this is the reasonable thing to do.
- switching between #Zig versions, I liked it more than the dedicated anyzig
- #Python venv activation – it's silly but feels so good, and collaborates with uv
- ensuring I have the right language server and formatter for a project, be it #Lua, #TypeScript, and trying out various options for Python
- setting LANG="C.UTF-8" only in the specific project folder because #Ansible refused to work with Polish...
The final boss was getting a really comfortable Tree-sitter setup: get the #Rust CLI, write grammar in #JavaScript, re-generate and run tests on source change as a mise Task. And then I only cloned the repo on another machine and was ready to go!
This post was written as a more cultured outlet for my excitement instead of aggresively committing mise.toml into every repository I touch
whoever says that mastodon is nerdy:
when was the last time you quotted #pratchett or #python here?! Fedi is normie land with extra steps.
Join the fun at: https://paste.sr.ht/~maarrk/2f1125139c62ebc567d15eac5e066a73ef638845
What made me finally try something else than raw pip and venv was easy installing of multiple Python versions. I was completing a PR to a library that (admirably) wants to support the old ones as well. Once I had the tool, I tried it for releasing a new version of my own PyPI package, and I wasn't ready for how fast and convenient it would be.
I did enjoy the ease of setup of TkInter, and compatibility with Matplotlib, but I was missing the simplicity of immediate mode libraries. In trying to emulate these, now a few callbacks trigger "given this dataclass with state, the widgets should look like this".
The micro-management gremlin is whining that it's repeating useless work, but more importantly the window is complete and I can go on with the experiment.