jwr1

joined 2 years ago
MODERATOR OF
[–] jwr1@kbin.earth 2 points 2 weeks ago (2 children)

I have considered it in the past, but there are a number of reasons I am still using Cloudflare.

 

As I'm sure y'all have noticed, the server has been having stability issues the past week. Every once in a while, the server seems to "crash"; it will time out on all network requests for about 5 minutes, happening several times within an hour. Additionally, there have been several times over the past week when the server queues got backed up, resulting in incoming and outgoing federation traffic being delayed.

At first, I assumed the server hardware had simply become insufficient to handle all of the network and federation traffic we have been receiving, potentially due to a DDOS attack. I was honestly starting to think I would need to upgrade the server hardware, which is ridiculous, as the VPS is already quite powerful and is certainly expensive enough.

Luckily, @green_copper helped with debugging and noticed the server timeouts only occur when the microblog section is viewed (and sometimes when the combined section is viewed). So rather than a lack of hardware being the issue, I believe it actually has to do with the recent Mbin upgrade. My guess is that an SQL query was changed in one of the commits between Mbin v1.9.1 and v1.10.0, which resulted in a widely inefficient query, causing the server to freeze up and time out on requests.

I have and will be investigating the issue this week. I will start by analyzing which database queries are causing the timeouts, but if needed, roll back to Mbin v1.9.1 and try to figure out which specific Mbin commit introduced the bug. Additionally, I may have access restricted only to signed-in users while I'm working on this.

In the meantime, if you guys can refrain from viewing microblogs (or combined view), that would keep the server accessible for everyone and help me work on it faster, as I can't do anything while the server is frozen. If you want any realtime updates on the server issue (or anything else related to kbin.earth), feel free to join the Matrix room.

Thanks for sticking around and for your patience!

[–] jwr1@kbin.earth 2 points 3 weeks ago (2 children)

I agree, this is likely the issue. I'll check if there's a way to declare the flatpak to allow fonts to pass through the sandbox, but I'm honestly not sure if it's possible.

 

I have just completed the upgrade of kbin.earth to Mbin v1.10.0. Please let me know if you run into any issues.

Here are the changes listed for end users:

  • Add support for lists of keyword filters of content; they can be scoped to content, comments and profile-overviews and can have an expiration-date
  • Show the custom title of users and add the option to set one for yourself
  • Add the option to also show content which was boosted by people you follow in the Combined view
  • Pagination is now done by "anchors" (like that date of the last thread on the page) instead of page-numbers, to improve performance
  • Add an indicator when a user has their "cake day"
  • Fix search not returning most of Lemmy users and magazines
  • Fix the search when searching content, users or magazines by their URL
  • The date field of the search form now has a preset value
  • Small UI improvements to make the elements of posts and threads more consistent (the layout for posts in Combined view can be toggled in the UI settings)
  • Prevent opening a thread or post when touching interactive elements (buttons, spoilers, ...) on mobile
  • Suppress notification for added content if it is more than two days old (for example after delayed federation)
  • Fix infinite scrolling of comments
  • Fix reply button for comments on locked threads and posts not being disabled

Full release post: https://fedia.io/m/mbinReleases@gehirneimer.de/t/4015612

[–] jwr1@kbin.earth 3 points 1 month ago (1 children)

You are welcome! And no problem at all about you asking here, I just didn't think the Mbin devs would have seen it. For better visibility (next time), you could try !mbinmeta@gehirneimer.de, assuming that's where the Mbin devs suggest as well? Of course, sometimes it's hard to know if an issue is server-specific or Mbin in general, so if you're unsure, you can always ask here.

[–] jwr1@kbin.earth 2 points 1 month ago (3 children)

Your best bet would be to get in touch with the Mbin devs, as this is just a magazine for server specific support. I'll ping them here though, and see if they are able to provide any assistance. I haven't upgraded us to Mbin v1.10.0 yet, so it's possible this has already been fixed.

@BentiGorlich@gehirneimer.de @melroy@kbin.melroy.org @blued_gear@fedia.io

[–] jwr1@kbin.earth 12 points 1 month ago (8 children)

I think it would be nice to be able to completely self-host (on my own hardware), but I've always wondered what you are supposed to do about power/internet outages? It's not frequent at all, but there will be a few days out of the year where power is completely out (due to a storm for instance). Similarly, internet gets a bit spotty after a heavy storm. Maybe I shouldn't be worrying about 100% uptime too much though, as I am offering a free service. Still, if I can help it, I'd prefer people not to have a 5-day period when they can't access the server at all.

[–] jwr1@kbin.earth 7 points 1 month ago (1 children)

I'd be curious to know what those admins switched to (if you have any idea).

 

Hetzner is one of the go-to server providers for Fediverse instances, in part due to its cheap offerings while still providing high quality service. However, Hetzner has announced a price adjustment, which has increased the prices of some servers as much as 3-4 times the original. This kind of ruins the point in using Hetzner, as the main appeal was Hetzner's cheap server prices.

Some of their servers haven't increased an insane amount, for example, the CAX41 offering has gone from €31.49 monthly to €40.99 (30% increase). Others are much higher though; CPX41 has gone from €38.99 monthly to €120.49 (209% increase)!

To any Fediverse admins using Hetzner, how would you see this affecting your instance? Will you be migrating to a different service or sticking with Hetzner even with the price hike?

Correct me if I'm wrong, but I believe existing servers will be grandfathered in to the old price point, so that will certainly buy some time to find a potential alternative.

I personally am using Hetzner for my Mbin instance, but the price increase doesn't seem completely unreasonable for the specific server I am currently using. I do not see myself needing to rescale the server any time soon, so I should be able to keep the old price anyway.


Hacker news discussion: https://news.ycombinator.com/item?id=48540844

Hetzner price adjustment table: https://docs.hetzner.com/general/infrastructure-and-availability/price-adjustment/

[–] jwr1@kbin.earth 2 points 1 month ago (1 children)

I see what you mean about the image link being shared along with the image. I'll look into it.

[–] jwr1@kbin.earth 3 points 1 month ago

Mbin doesn't have a way to upload videos directly, and I don't believe Lemmy or PieFed does either. If you want to share a video, you'd have to upload it to an external service (such as PeerTube or YouTube), and then you could share the public link.

 

Fixes

  • Improve inline reply UI on narrow screens; by @olorin99
  • Fix password length condition for Lemmy/PieFed login UI; by @olorin99.

Other

  • Remove dead instances from recommended servers list; by @jwr1.
  • Translations update from Hosted Weblate.

Full Changelog: https://github.com/interstellar-app/interstellar/compare/v0.11.3...v0.11.4

[–] jwr1@kbin.earth 3 points 1 month ago (1 children)

Thank you for the report. This is obviously a serious issue, so I will try to get a patch release out for it tomorrow.

[–] jwr1@kbin.earth 3 points 1 month ago

It happens automatically; the F-Droid repo we're in (IzzyOnDroid) checks for app updates every 24 hours, so this release should be picked up within that time frame.

 

Features

  • Add option in debug screen to manually clear OAuth identifiers; by @olorin99.
  • Add option to set default action for links; by @olorin99.
  • Add support for locking posts and comments; by @olorin99.
  • Support UnifiedPush on Linux; by @jwr1.
  • Add extra compact setting; by @olorin99.
  • Additional PieFed feed support; by @olorin99.
  • Add support for the modlog on PieFed; by @olorin99.
  • Add support for PieFed events; by @olorin99.
  • Allow back navigation to Feed tab from other tabs; by @olorin99.
  • Add filter for PieFed feeds to allow switching between all and personal feeds; by @olorin99.
  • Show snackbar to notify on successful image download; by @olorin99.
  • Enable using domains in feeds on mbin; by @olorin99.
  • Support moderation on Lemmy; by @olorin99.

Fixes

  • Use webview for Mbin auth on Android to fix login issues; by @olorin99.
  • Fix download/share file and image upload for web target; by @olorin99.
  • Fix community picker for Piefed/Lemmy; by @olorin99.
  • Fix alignment in markdown editor preview; by @olorin99.
  • Fix null error and multiple routes of same type on stack error; by @olorin99.
  • Truncate entered password to match Lemmy/PieFed limits; by @olorin99.
  • Fix missing menu button on collapsed comments; by @olorin99.
  • Fix null error caused by unhandled Mbin notifications; by @jwr1.

Other

  • Optimize build runner by using narrowing builder analysis scope; by @jwr1.
  • Remove Archive.today from alternate links; by @jwr1.
  • Migrate away from deprecated mbin api creating entries; by @olorin99.
  • Updates to navigation routes; by @olorin99.
  • Refactor ServerClient to handle MultipartRequests; by @jwr1.
  • Switch to using auto_route tabs router for bottom navigation; by @olorin99.
  • Enable legacy packaging for Android to reduce APK size; by @jwr1.
  • Translations update from Hosted Weblate.

Full Changelog: https://github.com/interstellar-app/interstellar/compare/v0.11.2...v0.11.3

[–] jwr1@kbin.earth 5 points 2 months ago (1 children)

It turns out the issue is simply due to the server's CPU being under heavy load, and it is unable to keep up with the federation queues. I will need to investigate where the increased load is coming from; it's possible we are being DDoSed.

[–] jwr1@kbin.earth 6 points 2 months ago (2 children)

Lol, shadowbanning's not a thing here. Anyway, the issue was just brought to my attention an hour ago, so I am still trying to figure out what's wrong.

 

The next generations of Bubble Tea, Lip Gloss, and Bubbles are available now.

For those that don't know, these are Go libraries used to easily create terminal user interfaces.

 

Features

  • Add Modlog screen at the user, community, and instance-wide (on About screen) level; by @olorin99.

  • Add button to clear search on explore screen; by @olorin99.
  • Create an emoji picker for PieFed reactions and markdown editor; by @jwr1.
    Note, you are currently not able to select custom PieFed emojis from the emoji picker.

  • Add error page for login restricted instances; by @olorin99.

Fixes

  • Fix totp code not being passed to login on Lemmy; by @olorin99.
  • Fix UI elements overflowing on mobile Linux; by @olorin99.
  • Fix Linux gtk header bar always being used on Wayland; by @jwr1.
  • Fix error on empty body for microblog; by @olorin99.
  • Remove incorrect check for empty accounts; by @olorin99.
  • Fix create microblog community picker helper text being truncated; by @jwr1.

Other

  • Huge navigation backend overhaul (moved to auto_route package), with web support coming soon!; by @olorin99.
    Note, due to specific changes in the way oauth authorization is handled (specifically, the callback URL has been changed), Mbin accounts will need to re-login.
  • Adopt very_good_analysis and add PR dart checks; by @jwr1.
  • Translations update from Hosted Weblate.

Full Changelog: https://github.com/interstellar-app/interstellar/compare/v0.11.1...v0.11.2

 

Crossposted from https://kbin.earth/m/kbinEarth/t/2381924

Hey everyone, I just wanted to say thank you for supporting kbin.earth and Interstellar!

Thanks to all our generous sponsors, all expenses from the year 2025 (including server rental, object storage, domains, Apple Developer License, and Apple hardware) have been covered; almost no out-of-pocket needed from me. That's a huge deal!

To the Mbin team: none of this would be possible without you! You've forked /kbin and have kept supporting it ever since, adding new features, diagnosing and fixing bugs, recommending server setup improvements, and much more. You guys are quick to respond and are nothing but reliable! Special shout out to @BentiGorlich@gehirneimer.de and @melroy@kbin.melroy.org!

To Interstellar's co-developer: thank you @olorin99 for literally being around since the beginning. Interstellar's very first commit was on Dec 11, 2023, and yours was just a few weeks after, on Dec 28, 2023, adding initial support for microblogs. Thanks for contributing to and developing Interstellar all this time!

To kbin.earth's mods/admins: thanks for keeping this place clean and manageable! Especially checking for sign up requests every day :) @green_copper @kindenough @aasatru

Lastly, thanks to all the 1-off contributors, translators, anonymous sponsors, and anyone else I haven't mentioned. And of course, all you users who stick around here :)

 

Hey everyone, I just wanted to say thank you for supporting kbin.earth and Interstellar!

Thanks to all our generous sponsors, all expenses from the year 2025 (including server rental, object storage, domains, Apple Developer License, and Apple hardware) have been covered; almost no out-of-pocket needed from me. That's a huge deal!

To the Mbin team: none of this would be possible without you! You've forked /kbin and have kept supporting it ever since, adding new features, diagnosing and fixing bugs, recommending server setup improvements, and much more. You guys are quick to respond and are nothing but reliable! Special shout out to @BentiGorlich@gehirneimer.de and @melroy@kbin.melroy.org!

To Interstellar's co-developer: thank you @olorin99 for literally being around since the beginning. Interstellar's very first commit was on Dec 11, 2023, and yours was just a few weeks after, on Dec 28, 2023, adding initial support for microblogs. Thanks for contributing to and developing Interstellar all this time!

To kbin.earth's mods/admins: thanks for keeping this place clean and manageable! Especially checking for sign up requests every day :) @green_copper @kindenough @aasatru

Lastly, thanks to all the 1-off contributors, translators, anonymous sponsors, and anyone else I haven't mentioned. And of course, all you users who stick around here :)

 

From GitHub:

v2.5.0

Highlights

Happy New Year! Welcome to Immich v2.5.0. This release is our fireworks to celebrate both the new year and reaching 90,000 stars on GitHub. It is packed with major features that have been in the works for quite some time, and the team has kicked off the year with incredible momentum that we're excited to carry forward. We couldn't wait to share this with you. Let's dive right in:

  • Free Up Space
  • Non-destructive editing
  • Database backup and restore (web)
  • Upload improvements
  • Visual refresh across all platforms
  • Disable admin setup
  • Star rating (mobile)
  • Additional fine-grained permissions (api keys)
  • Progressive JPEGs
  • Slideshow loop option (web)
  • Native HTTP clients for HTTP/2 and HTTP/3 image loading

Free Up Space

This feature was requested ages ago. So long in fact, that it has a 3-digit ID (#165)! Given the rapid iteration and development pace of the pre-stable era, it was risky to include it in the app due to its bulk-delete nature. But it is now 2026 :smile:, so here we are.

Free Up Space allows you to remove local media files from your device that have already been successfully backed up to your Immich server (and are not in Immich trash). This helps reclaim storage on your mobile device without losing your memories. The feature can be accessed from the user profile panel or from the Settings page in the mobile app.

There are configuration options and steps to make sure that everything is verified before deleting from the app.

  1. Configuration:
    • Cutoff date: Free Up Space will only look for photos and videos on or before this date.
    • Keep albums: Hold all photos and videos in the selected albums on your device, regardless of other settings. By default, **WhatsApp** related albums are selected to be kept on the device. Assets that are not already on the device will not be redownloaded.
    • Keep favorites: This works the same way **Keep albums** . By default, favorited assets are preserved on your device.
    • Keep on device: You can choose to restrict removal to **Always keep** All photos or All videos, regardless of other settings. This setting can hamper freeing up space significantly — with 80 GB of videos and 40 GB of photos, selecting **Always keep photos** retains thousands of photos on your device.

These configurations are persistent to make it convenient for those who perform this task often.

  1. Scan & Review: Before any files are removed, you are presented with a review screen to confirm which items will be deleted and how much storage will be reclaimed.
  2. Deletion: Confirmed items are moved to your device's native Trash/Recycle Bin.

Reclaim storage
To use the reclaimed space right away, you must manually empty the system/gallery trash outside Immich.

For more information about this feature, please read it here

Non-destructive editing

Immich now supports non-destructive photo editing. This means that any edits you make to an asset do not modify the original file; instead, the modifications are stored in the database, and new thumbnails are generated based on those changes. This means you can always revert to the original asset if needed.

When you download an edited asset, Immich provides the edited version by default. However, you can choose to download the original version if needed. Immich always generates an edited full-size version based on your full-size quality settings. This occurs regardless of whether the "Enable full-size image generation" setting is enabled or disabled.

Limitations:

  • Mobile clients must be updated to v2.5.0 in order view the edited version of an asset. Clients will continue to > see the original asset if on a mobile app version <2.5.0
  • As of this version, the edited download won't include the EXIF metadata of the original asset. This feature will come in future releases.
  • Mobile editing still uses the old edit system (saving a new version of the photo). The mobile editor will be upgraded to use the new non-destructive editing system in a future release.

You can click on the following icon to enter edit mode

Currently, Immich supports the following types of edits:

  • Cropping
  • Rotation
  • Mirroring

Opening the editor on an edited asset will load the existing edits back in so you can make adjustments and changes.

Backup and restore from the web UI

Backup and restore are an important part of any self-hosted application; this feature helps you maintain reliable access to your instance during unexpected events, such as database corruption caused by system failure or power loss.

Historically, restoring an Immich instance to a specific point required the user to have access to the command line, which proved challenging for many users, especially those new to self-hosting and software maintenance.

Now, we have the entire backup and restore pipeline built into Immich, which allows you to quickly restore a database backup directly from the web UI. You can perform the steps either from the Administration > Maintenance page, or from a brand new instance on the welcome page.

Restore from Administration's Maintenance page

Restore from Onboarding page

For more detailed steps, please read them in our documentation

Upload improvement

This release also improves foreground upload in the mobile app. The previous implementation improves background uploads but leaves foreground uploads less reliable by leveraging the queue system to offload upload handling to the OS, which can be throttled under specific criteria.

We are taking back more control over handling uploads with the try-and-true method used in the old timeline, but this time it is supercharged with concurrent uploads and also correctly handles assets with missing file extensions from software such as DJI or Fusion Camera.

Upload now will also send unique metadata for each asset to the server, so it can be used to quickly retrieve the checksum when reinstalling the app, saving time and CPU resources. This is especially useful for iCloud users, as the hashing process can take a long time.

For iOS and iCloud users, it is recommended to go to App Settings > Sync Status and tap the "Sync Cloud IDs" button to backfill the metadata for the uploaded content. You only need to do this once.

Visual refresh across all platforms

This release also brings you a refreshed look and feel across the web, mobile app, and the documentation sites, with a new font face ("The-name-must-not-be-named" Sans) that improves reading legibility, especially for numbers and smaller text.

The UI library (https://ui.immich.app/) components have also been added to the web app in more places. You should see a more standardized, coherent, and better hierarchy for UI components across the app.

All icon buttons now come with a tooltip, so you don't have to guess what function the button serves

Star rating (mobile)

Mobile now has the star-rating feature, similar to the web application. If you don't see a star rating on either platform, make sure the feature is enabled here.

Disable admin setup

New installs show a welcome page and allow anyone to sign up / register as an admin. To have more control over whether this is allowed or not, we have added the following environment variable:

IMMICH_ALLOW_SETUP=true|false

This is especially useful if you have already initialized Immich and never want this situation to be possible in the future, which can happen if for whatever reason the database is reset.

Additional fine-grained permissions (api keys)

Some existing endpoints have been assigned fine-grained permissions, allowing the creation of API keys with limited access. The new permissions include:\n

  • map.read - Retrieve a list of latitude and longitude coordinates for every asset with location data
  • map.search - Retrieve location information for latitude & longitude coordinates
  • folder.read - Retrieve information about folders and which assets they contain

Progressive JPEGs

All image-generation settings now include a new option to enable progressive JPEGs. When enabled, supported browsers will progressively render the image.

Slideshow loop option (web)

The slideshow settings on the web now include an option to automatically start the slideshow over.

Native HTTP clients

All remote images are now requested using optimized HTTP clients, meaning images load more quickly and can keep up with your scrolling. Caching is also improved: not only does this make images even snappier to load after being downloaded, it also improves the offline experience with better responsiveness and a larger cache size.


As always, there are many more QoL improvements, bug fixes, and enhancements in this release. Please find the full release note below

Support Immich

If you find the project helpful, you can support Immich by purchasing a product key at https://buy.immich.app/ or our merchandise at https://immich.store/

 

With the stability gained over the past five releases, it's time for polish and quality of life improvements for everyday development.

view more: next ›