Spyke

Posts

updates·Mbin Blog Updatesbymelroy

Mbin v1.9.0 release (stable)

Mbin 1.9.0 stable is finally out! Upgrade your server now, if you didn't do it already.

We have 3 different summaries below. One for end-users, one for server admins, and finally a summary for Mbin developers.

Thank you everybody who made this release possible!

Summary for Users

This release contains numerous improvements and changes that we can't list everything here, so we'll stick to the highlights (in random order).

We enhanced security so that after a user changes their password or 2FA, all the current sessions of that user will be invalid and the user will need to log in again.

A new combined front page. You could make the combined front page the default in your profile settings. Which means you see both threads and microblogs combined on the homepage.

We also introduced a new feature under general settings, where you can select "Who can send you a direct message" (defaults to everybody).

We added support for magazine banners in Mbin (which is also compatible with Lemmy Communities).

Mbin combines the thread form into just one form (instead of having article, link, and photo having a separate form). Mbin now also federates bans correctly (both incoming and outgoing bans).

Global mods can now manage (view, approve and/or deny) account signups. Global mods can now also receive signup notifications, which will also come with a new menu item in the drop-down menu.

Plus various other bug fixes and CSS layout improvements, ban notification fixes, and too many other fixes to mention here.

Summary for Server Admins

Multiple Docker setup enhancements, we upgraded to Debian Trixie images. We also upgraded to use Node v24 (current LTS release) within our Mbin Docker images. Plus we added a new amqproxy service to the docker compose file. See upgrade instructions for Docker below for more info.

We now added two different server settings:

  • Restrict "Random Threads/Posts" sidebar sections to local only
  • Restrict "Active people" sidebar section to local only

The first option has been known to cause SQL performance issues (we recommended NOT enabling this first option), hence we gave you the two options. The second option shows local only active users, which does NOT impact performance (so feel free to enable that option if you wish).

Mbin now comes with new moderation log filter capabilities.

We also documented Anubis setup for Mbin, setup is optional. However, Anubis could protect your server from DDoS attacks or other unwanted traffic towards your server.

Mbin now also has a command to rotate the private keys for one user or all the local users.

We renamed an existing environment variable: MAX_IMAGE_BYTES to: MBIN_MAX_IMAGE_BYTES, please rename the variable if you have set it. On top of that we also added a new environment variable: MBIN_USE_FEDERATION_ALLOW_LIST (default value: false) for in the .env file. We also added MBIN_NEW_USERS_NEED_APPROVAL (also default value: false) several months ago, in case you didn't added that variable yet. Although both variables are optional to add. See the latest .env.example file.

Finally, we upgraded several Composer dependency packages plus Symfony recipe updates as well as NPM package updates. So like always be sure to run: ./bin/post-upgrade to install all the updated Composer packages (on bare metal). Which should fix security vulnerabilities in our composer & npm depedency packages. And clear all caches.

Summary for developers

We extended and improved the getting started guide, documenting how to leverage dev containers to get started. Please follow the full "Docker as a dev server" guide if you wish to help with development.

We also created a new Fediverse developer page that lists all our ActivityPub messages.

See the full release notes / how-to upgrade here: https://github.com/MbinOrg/mbin/releases/tag/v1.9.0

View original on kbin.melroy.org
updates·Mbin Blog Updatesbymelroy

Mbin v1.9.0 Release Candidate 1

This is our v1.9.0 Release Candidate 1 (also known as a pre-release) of Mbin. This release includes security patches of upstream dependencies, documentation improvements, new features, bug fixes, design improvements, Docker improvements and so much more...


I have 3 different summaries below. One for end-users, one for server admins, and finally a summary for Mbin developers.

Summary for Users

This release contains numerous improvements and changes that we can't list everything here, so we'll stick to the highlights (in random order).

We enhanced security so that after a user changes their password or 2FA, all the current sessions of that user will be invalid and the user will need to log in again.

New combined frontpage, which means you see both microblogs and threads combined on the homepage.

We also introduced a new feature under general settings, where you can select "Who can send you a direct message" (defaults to everybody).

We added support for magazine banners in Mbin (which is also compatible with Lemmy Communities).

Mbin combines the thread form into just one form (instead of having article, link, and photo having a separate form). Mbin now also federates bans correctly (both incoming and outgoing bans).

Global mods can now manage (view, approve and/or deny) account signups. Global mods can now also receive signup notifications, which will also come with a new menu item in the drop-down menu.

Plus various other bug fixes and CSS layout improvements, too many to mention here.

Summary for Admins

Multiple Docker setup enhancements, we upgraded to Debian Trixie images. We also upgraded to use Node v24 (current LTS release) within our Mbin Docker images. Plus we added a new amqproxy service to the docker compose file. See upgrade instructions for Docker below for more info.

Mbin now comes with new moderation log filter capabilities.

We also documented Anubis setup for Mbin, setup is optional. However, Anubis could protect your server from DDoS attacks or other unwanted traffic towards your server.

Mbin now also has a command to rotate the private keys for one user or all the local users.

New environment variable is added: MBIN_USE_FEDERATION_ALLOW_LIST (default value: false) for in the .env file. We also added MBIN_NEW_USERS_NEED_APPROVAL (also default value: false) several months ago, in case you didn't added that variable yet. Although both variables are optional to add.

Finally, we upgraded several Composer dependency packages plus Symfony recipe updates as well as NPM package updates. So like always be sure to run: ./bin/post-upgrade to install all the updated Composer packages (on bare metal). Which should fix security vulnerabilities in our composer & npm depedency packages. And clear all caches.

Summary for developers

We extended and improved the getting started guide, documenting how to leverage dev containers to get started. Please follow the full "Docker as a dev server" guide if you wish to help with development.

We also created a new Fediverse developer page that lists all our ActivityPub messages.

See the full changelog and release notes at: https://github.com/MbinOrg/mbin/releases/tag/v1.9.0-rc1

View original on kbin.melroy.org
technology·Technologybymelroy

New Tech Channel by Ex-Tech Tips Employee (Alex)

Alex finally created his own channel together with Andy.

Besides his new tech Zip Tie Tech channel (please subscribe?): https://www.youtube.com/@zip/_tie/_tech

Alex & Andy are also into the car channel call Zip Tie Tech: https://www.youtube.com/@ZipTieTuning

Show him that we want more tech vids subscribe to their tech channel! I believe Alex and Andy are an awesome combo and people. I wish them the best..

EDIT: Jake from Tech Tips ALSO CREATED his own YoutTube channel: https://www.youtube.com/@jakkuh/_t

https://www.youtube.com/@zip_tie_techOpen linkView original on kbin.melroy.org
linux·Linuxbymelroy

Microsoft Edit is coming to Linux

The brand new Microsoft Edit, which is the successor of the old MS-DOS-editor will come soon to Linux as well?

There is a discussion going on how to call ms edit executable under Linux at: https://github.com/microsoft/edit/discussions/341

Microsoft Edit is fully written in Rust. And the source-code is actually fully open-source as well under MIT license 😮.

I personally would like see them calling it dos-edit or just dosedit, since that would be kinda funny. But I understand it will be called ms-edit instead.

I know Linux already has vi, vim, neovim and nano, ... and more... However is kind of ironic to see this binary be shipped to Linux distros. Of course it's already added to Arch btw: https://aur.archlinux.org/packages/ms-edit-git

Official GitHub page.

View original on kbin.melroy.org
updates·Mbin Blog Updatesbymelroy

Mbin v1.8.2 released

Mbin version 1.8.2 has been released, see: https://github.com/MbinOrg/mbin/releases/tag/v1.8.2

Aside from several bug fixes, the main take away is that we overhaul the Docker setup. From today onwards we now also recommend the new Docker setup for the users who like to use Docker instead of bare metal/VM.

Existing Docker users need to pay extra attention, since there is quite some migration involved. That being said, the new Docker setup is much more solid and hopefully future proof.

Of course we also updated our Docker installation documentation guide accordingly: https://docs.joinmbin.org/admin/installation/docker

View original on kbin.melroy.org
updates·Mbin Blog Updatesbymelroy

Mbin v1.8.1 released

I know, it has been a while :D. However, we are happy to release v1.8.1!

Mainly a lot of bug fixes / improvements. Composer package dependency updates. Lot of documentation and language improvements (we also got Catalan now fully translated, thanks!). Feel free to upgrade to PHP v8.4 as well.

A noticeable fronted difference to point out is that we now put thumbnails in a lightbox by default. Although this can be changed by the end-user at: ⚙ Settings -> Under "Threads" section -> "Thread thumbnails opens full screen" option.

See full release notes: https://github.com/MbinOrg/mbin/releases/tag/v1.8.1

View original on kbin.melroy.org
til·Today I Learnedbymelroy

TIL: Improved FPS in new Linux Kernel 6.14

Today I found out that Linux kernel v6.14 is released, which has NTSync shipped with it.

NTsync was actually released in the past as well, but broken... They fixed it in Linux kernel 6.14 now.

For those using Wine on Linux to play Windows games, this is great news! The new NTSync "driver" improves support for Windows locking mechanisms, allowing applications and games to handle higher workloads more efficiently under Wine.

I use Mainline Linux in order to install the latest Linux kernel (maybe another TIL for you?).

Anyhow, have fun! Some games can have over 670% performance improvements on FPS. Like DiRT 3 for example. That is crazy right?

View original on kbin.melroy.org
updates·Mbin Blog Updatesbymelroy

Mbin v1.8.0 released

Today we released Mbin v1.8.0! It has been already 1 month since we released v1.7.4.

This is the v1.8.0 release of Mbin and it is a feature packed one like always ;).

It brings an extensive bookmarking system, signup request support, signup notifications, extended markdown rendering, custom notification settings to set magazines, users, threads and microblogs to default, loud or muted, setting a default sort for the front page and comment lists, a new image delete command for admins and documentation changes.

You also still might want to double check if you are using the latest Nginx configs (v1.8.0 has now additional regex improvements).

I want to thank all the contributors! We can't do it without you all!

Mbin takes a lot of time to develop, maintain and improve. Created as a successor of /kbin, but still going strong ever since. If you would like to support this work or cover the server costs, please consider donating. Thank you.


Melroy

EDIT: There is a more detailed post here.

View original on kbin.melroy.org
til·Today I Learnedbymelroy

TIL: scx_bpfland Linux scheduler can improve performance

Using another Linux scheduler called scx_bpfland, a scheduler its job to manage the load across multiple cores effectively. scx_bpfland is an alternative scheduler built on top of sched_ext.

Long story short, you can significantly improve Linux gaming by switching to another thread scheduler like scx_bpfland, which can improve the unstable 30 FPS (with spikes) to a very stable 60 FPS game play (video link).

I also would love to combine these scheduler with other features like CPU pinning. There is a Linux CLI tool called taskset, which seems to pin cores for processes.

In another unrelated software sidekiq, taskset was also used to improve performance due to CPU affinity which in result making the software so much faster.

View original on kbin.melroy.org
updates·Mbin Blog Updatesbymelroy

Mbin release v1.7.4

Mbin released a new version: Mbin v1.7.4.


This is the v1.7.4 release of Mbin and it brings a lot of documentation updates and bug fixes (especially in the backend): documentation for the Nginx setup has been altered a lot (allowing you to rate limit on Nginx level), PostgreSQL has also seen a few edits, most Symfony commands are now documented, we improved the federation backend, we "revive" dead instances when we get activities from them, the search experience is now improved when searching for URLs, we now support strike through HTML to markdown and a lot more.

The most important thing for developers is that the automated tests are now working and required for PRs to be merged.

Again, see full release note at: https://github.com/MbinOrg/mbin/releases/tag/v1.7.4

Thank you!

View original on kbin.melroy.org
til·Today I Learnedbymelroy

Commit delay & synchronous commit in PostgreSQL

Setting commit_delay = 300 (which is 300 microseconds) in PostgreSQL allows you to group write commits. And flush them by a single transaction.

This is in particularly useful if you have a lot of writes to the disk in a short time window, this will reduce the disk I/O bursts.

You could also set synchronous_commit = off as well. So there will not be a flush earlier than the specified wal_writer_delay. However, only turn this off, if your performance is more important than your data integrity. That being said, it will not cause corruptions, unlike the fsync setting (which I would strongly advise to NOT change, so keep fsync on the default setting).

And then we have wal_writer_delay. Which is the time in milliseconds how often the WAL gets flushed. This option only works when synchronous_commit if set to off!! You most likely do not need to increase the wal_writer_delay value (in fact, you might even want to lower this value).

Official docs: https://postgresqlco.nf/doc/en/param/commit_delay/

Settings to point out are in random order:

See more PostgreSQL fine-tuning at: https://gitlab.melroy.org/-/snippets/610

View original on kbin.melroy.org
updates·Mbin Blog Updatesbymelroy

Mbin v1.7.3 released!

We are excited to announce the latest release of Mbin; v1.7.3! It's a big patch release once again. This version is focused on bug fixes and improvements rather than new features. Notable improvements in random order are:

  • Improved PHP (max_children), Nginx (improved logging using map, upstream block for Mercure and open_file_cache) and PostgreSQL documentation (adding commit_delay config option and better defaults).
  • Better RabbitMQ messenger defaults
  • Fixed security Symfony audit & update all Symfony packages
  • Fixed self-delivery looping
  • Improved delivery handler by not rolling back InvalidApPostException exceptions
  • Fixed private comments retrieval via API
  • Fixed dead instance query (by allowing lastSuccessfulDeliver to be NULL)
  • Fixed markdown toolbar editor during editing a thread
  • Improved federation page
  • New/improved npm audit and composer audit checks in GitHub Actions workflow

More details can be found at: https://github.com/MbinOrg/mbin/releases

View original on kbin.melroy.org