---
title: "Patch notes for November 1, 2026"
description: "Everything we shipped for fluxer.com, the web, desktop and mobile apps and self-hosting from October 25 to October 31, 2026, including bug fixes."
url: "https://fluxer.com/blog/patch-notes-2026-11-01"
language: "en"
last_updated: "2026-11-01"
author: "Hampus Kraft"
published: "2026-11-01"
category: "Patch notes"
---

> Index of Fluxer's official pages for AI agents: https://fluxer.com/llms.txt
> Links to Fluxer pages go to their Markdown versions when they have one. For other Fluxer help, policy or blog links, remove any #section part and add .md to the end.

# Patch notes for November 1, 2026

Everything we shipped for fluxer.com, the web, desktop and mobile apps and self-hosting from October 25 to October 31, 2026, including bug fixes.

This edition includes everything we released from October 25 to October 31, 2026. When a change started as a post on [Fluxer Feedback](https://feedback.fluxer.com), its entry credits the person who reported the bug or suggested the feature and links to their post.

Roles can have an icon, an image or emoji that shows next to a member's name in chat. [Role icons](https://fluxer.com/blog/patch-notes-2026-11-01.md) are in the latest web and desktop apps and in the Android beta.

The [desktop app](https://fluxer.com/blog/patch-notes-2026-11-01.md) uses Electron 44.10.0 with Chromium 152.0.7977.169 on Windows, macOS and Linux and has every Chromium and Electron fix up to those versions.

## Role icons

Role icons are in the latest release of the web and desktop apps and in beta 15 of the Android app. The iOS beta on TestFlight [is on hold](https://fluxer.com/help/ios-testflight.md) because of a problem on Apple's side, and beta 12, the last iOS beta, doesn't have role icons.

- If you can manage roles, you can give a role an icon under "Role icon" in its settings by uploading an image or picking an emoji, and you don't need Plutonium for it. Members get the icon of their highest role that has one, and it shows next to their name in chat. In the member list, each role's icon shows before the name of its group, and the list of roles on a profile shows the icon of every role.
- Fixed role icons in the Android app showing with a gray box around them when you were using the light theme. Reported by [Fullest](https://feedback.fluxer.com/u/21) in [#4516](https://feedback.fluxer.com/p/4516/mobile-light-theme-has-grey-boxes-around-role-icons).

## fluxer.com

You get these changes on web, desktop, iOS and Android without updating anything. Self-hosted instances get most of them when they upgrade.

### New

- Fluxer sends its own emails about Plutonium and donations in your language, and Stripe has stopped sending them. These are receipts, refund notices, emails about problems with a payment, reminders before a subscription renews, card expiry notices, cancellation confirmations and gift notices.

### Improved

- When we've made a decision on something you reported, the email we send you about the outcome says which report it's about. It tells you what you reported and when, and which community and channel or which user it was about.
- When our media service is too busy to resize an image, the app shows you the original full-size image. Before, the image didn't load at all.
- Link previews work for posts from Mastodon and other ActivityPub servers that only respond to signed requests, such as those with authorized fetch on.

### Fixed

- Fixed Plutonium turning back on for a canceled subscription after one of its past payments was refunded or was lost in a payment dispute.
- Fixed people sometimes seeing you online while your status was "Invisible".
- Fixed reactions with a community's own custom emoji failing when you didn't have the "Use external emoji" permission. Reported by [Jonja](https://feedback.fluxer.com/u/802) in [#4156](https://feedback.fluxer.com/p/4156/use-external-emoji-denial-blocks-internal-emoji-for-reaction).
- Fixed link previews of emoji and images from Fluxer showing at the wrong size when the link asked for a smaller size. Reported by [PatRyk](https://feedback.fluxer.com/u/369) in [#834](https://feedback.fluxer.com/p/834/media-proxy-metadata-parser-ignores-size-parameter-for-own-c).
- Fixed links followed by a period, comma or other punctuation, such as a link at the end of a sentence, getting the wrong link preview or none at all.

## Web and desktop app

The desktop and web apps are the same app, and everything here is in both.

### New

#### Badges

- "Badges" in your profile settings lets you choose which of your badges other people see on your profile. Suggested by [Eyeflame](https://feedback.fluxer.com/u/61) in [#4360](https://feedback.fluxer.com/p/4360/badge-management-feature).
- Instance admins can give communities badges, which show in the community header, on invites, in invite embeds and on Explore cards.

#### Quick CSS

- The Quick CSS editor suggests properties and values as you type and lists problems in your CSS with tips on how to fix them. It also has a rule outline, regex find and replace, go to line, folding, code formatting and a color picker.
- "Pick an element in the app" lets you click any part of Fluxer and adds a selector for it. The editor lists Fluxer's CSS variables and stable `data-flx` attributes with descriptions and warns you about class names that change with every update.
- You can turn off live preview in the Quick CSS editor and use "Apply changes" when you're ready. You can dock the editor on the left or right, let it float or open it in its own window. Your CSS doesn't change how the editor itself looks.
- `Ctrl`+`Alt`+`Shift`+`K` (`⌘`+`⌥`+`⇧`+`K` on macOS) turns custom CSS on or off.
- In the desktop app, you can import a folder of CSS files. Its themes show up in "Your themes" and update when you change the files in the folder.

#### Settings

- The settings sidebar shows "Edit your profile" under your name.

### Improved

- Typing in a 2,000 to 4,000 character message is 2 to 8 times faster, and messages with many unclosed links or code fences format up to 90 times faster.
- You can resize picture-in-picture from every edge and corner.
- You can resize the members row under a focused stream.
- When you search in settings, matching settings from the "Advanced" section show in the search results too. Suggested by [Hayden](https://feedback.fluxer.com/u/1174) in [#4338](https://feedback.fluxer.com/p/4338/why-is-there-two-search-bars-in-settings).
- Profile badges show up together once all their images have loaded.
- Profile previews show up to five lines of "About me", up from three.
- The "since" lines on Plutonium and Visionary badges show the full date, such as March 14, 2026, where they used to show only the month and year.
- The web app checks that each of its own files downloaded without damage, and it tries to download a damaged file again up to two times.
- Links to fluxer.dev open without the external link warning, like links to fluxer.app, fluxer.com and fluxerstatus.com. Reported by [hihi217](https://feedback.fluxer.com/u/9) in [#4364](https://feedback.fluxer.com/p/4364/fluxer-dev-shows-an-external-link-warning-even-though-it-is).

### Fixed

#### Messages and profiles

- Fixed math blocks that define their own macros, such as with `\newcommand` or `\def`, not rendering at all. Reported by [Rilinquish](https://feedback.fluxer.com/u/1192) in [#4352](https://feedback.fluxer.com/p/4352/katex-doesn-t-render-anymore).
- Fixed not being able to clear the name of a group chat, where saving it with an empty name kept the old one. Reported by [Maple~ 💚](https://feedback.fluxer.com/u/58) in [#2221](https://feedback.fluxer.com/p/2221/unable-to-remove-icon-or-group-name-from-group-chats).
- Fixed emoji in a shortened bio spilling outside the preview.
- Fixed the profile picture getting keyboard focus twice when you moved through someone's profile with `Tab`. Reported by [Fullest](https://feedback.fluxer.com/u/21) in [#4326](https://feedback.fluxer.com/p/4326/tabbing-through-someone-s-profile-highlights-the-profile-pic).
- Fixed popouts, such as a profile, staying open on top of the Plutonium page when you opened it from them. Reported by [Fullest](https://feedback.fluxer.com/u/21) in [#4325](https://feedback.fluxer.com/p/4325/clicking-the-plutonium-badge-in-someone-s-profile-doesn-t-cl).
- Fixed the app rejecting a file you picked as too large after an instance admin had raised the file upload limit, until you reloaded the app.
- Fixed people in chat showing without their role color and nickname after you switched to another account and back. Reported by [Tarek](https://feedback.fluxer.com/u/6) in [#4530](https://feedback.fluxer.com/p/4530/after-jumping-between-instances-the-client-will-stop-sending).

#### Calls

- Fixed screen shares covering the call header above member cards.
- Fixed the volume button showing on top of the picture-in-picture controls.
- Fixed a call leaving grid view on its own after you picked it.

#### Sign-in and links

- Fixed signing in on the authorization page of an app or bot not taking you back to that page, such as when you signed in to the admin panel with no saved account. Reported by [Kirby](https://feedback.fluxer.com/u/532) in [#4329](https://feedback.fluxer.com/p/4329/sign-in-for-feedback-site-redirects-to-web-fluxer-app-instea) and suggested by [rez](https://feedback.fluxer.com/u/385) in [#3746](https://feedback.fluxer.com/p/3746/change-redirect-behavior-when-logging-into-admin-console).
- Fixed middle-clicking a link on the web opening it in a tab in the foreground until you had left-clicked a link once. Reported by [Valynor](https://feedback.fluxer.com/u/1156) in [#4404](https://feedback.fluxer.com/p/4404/mouse-middle-button-click-on-an-url-does-not-always-open-tab).

#### Web app

- Fixed the web app failing to start in browsers that couldn't save Fluxer's data. It starts and tells you that you'll need to sign in again after you close the browser.

## Desktop app

These changes are in version 2026.1031 of the desktop app. On Linux, we recommend [our own Flatpak](https://docs.fluxer.com/downloads/linux-repositories/#flatpak), which gets every update the day we release it, while the Flathub version can be a few weeks behind and doesn't have most of these changes yet.

### Improved

- On Windows, macOS and Linux, the desktop app uses Electron 44.10.0 with Chromium 152.0.7977.169 and has all of their fixes up to those versions. On Linux, hardware video decoding with VA-API works as before.
- When browser sign-in fails, the desktop app tells you why, such as too many attempts, a code that was already used or an instance it couldn't connect to.
- If the sign-in link in the browser you're using opens a different Fluxer app, the desktop app suggests that you type the code in the browser.
- When the desktop app can't load an instance and shows "Could not load this page", you can connect to a different instance. Reported by [Fl4il](https://feedback.fluxer.com/u/953) in [#4381](https://feedback.fluxer.com/p/4381/fluxer-linux-app-can-t-connect-to-server-gives-error-but-doe).
- The desktop app's proxy setting applies to all accounts you're signed in to.

### Fixed

- Fixed browser sign-in in the desktop app getting stuck for you after someone else on the same network had typed in some wrong codes.
- Fixed Flathub installs looking for updates in our own Flatpak repository.
- Fixed macOS asking you for permission to record your screen again every time you switched back to the Fluxer window from another app.
- Fixed pasting in the desktop app on Linux with X11 sometimes hanging, and then pasting didn't work again until you restarted the app.
- Fixed a crash on Linux after the desktop app lost its connection to D-Bus.
- Fixed middle-clicking to autoscroll in the desktop app on Linux also pasting the text that you had selected. Reported by [Fullest](https://feedback.fluxer.com/u/21) in [#4050](https://feedback.fluxer.com/p/4050/middle-click-autoscrolling-still-pastes).
- Fixed your microphone not working when Windows never sent Fluxer your list of audio devices. This fix is in the latest versions of both the desktop app and the web app, and updating is all you need to do. Reported by [Sonador](https://feedback.fluxer.com/u/947) in [#4139](https://feedback.fluxer.com/p/4139/audio-devices-do-not-populate).
- Fixed uploads from the desktop app failing on a self-hosted instance when the instance's media proxy couldn't write its temporary files.

## iOS and Android

These changes are in betas 12 to 16 of the mobile apps. Betas 13 to 16 are only out on Android, because the iOS beta on TestFlight [is on hold](https://fluxer.com/help/ios-testflight.md) after beta 12.

The Android app has also just passed 32,000 downloads on Google Play. Thank you to everyone who's trying it out and telling us what to fix and what to build next.

### New

- "Badges" in your profile settings lets you choose which of your badges other people see on your profile, the same as on web and desktop.
- Profiles show the custom badges your instance has made, and communities show their badges in the channel list header, in invites and in Explore.
- On iPhone and iPad, "Change audio output" in "Audio & video" settings and in the call panel opens the audio output picker from iOS. It shows whether call audio is going to the speaker, the earpiece or headphones you've connected.
- On Android, "Change audio output" in "Audio & video" settings and in the call panel lets you choose "Speaker", "Earpiece" or "Headphones".
- When you watch a screen share or a camera in full screen during a call, you can pinch to zoom in up to 8 times, and the zoom level shows while you zoom.
- Each video tile in a voice or video call has a pin button that focuses that person, and you can press the same button again to unfocus them.
- You can copy the text of a message that failed to send with "Copy message" in the menu you get by long-pressing it. Suggested by [sodiboo](https://feedback.fluxer.com/u/304) in [#4380](https://feedback.fluxer.com/p/4380/let-me-copy-text-from-messages-that-didn-t-send).

### Improved

- The Plutonium page in settings has a new design that matches the website.
- When you join a call, the app asks for access to your microphone and camera first, and if you don't allow the microphone, you join muted.
- Quotes on the splash screen when the app starts are off by default, and you can turn them back on with "Splash screen quotes" in "Advanced" settings.
- When you long-press a message that failed to send, the menu you get only has "Retry", "Copy message" and "Delete failed message".
- When you go back to a channel, it opens where you were reading.
- In channel settings, slowmode is a slider.
- New thread defaults save with the rest of the channel settings.
- On Android, the volume buttons change the call volume during a call.
- Explore is hidden on instances that have turned off discovery.

### Fixed

#### Messages and channels

- Fixed being able to type in a channel where you can't send messages when the app reopened directly into that channel. Reported by [Eyeflame](https://feedback.fluxer.com/u/61) in [#2193](https://feedback.fluxer.com/p/2193/app-incorrectly-allows-typing-and-attempting-to-send-message).
- Fixed direct messages and group chats sometimes saying "You can't send messages in this channel." Reported by [Shadow Lighthoof](https://feedback.fluxer.com/u/279) in [#2273](https://feedback.fluxer.com/p/2273/you-can-t-send-messages-in-this-channel-in-dms-and-groups).
- Fixed going back from a thread on a phone not taking you to the channel, forum or media channel that the thread is in. Reported by [Jonah](https://feedback.fluxer.com/u/666) in [#4046](https://feedback.fluxer.com/p/4046/swiping-back-in-thread-should-go-back-to-main-forum-media-ch).
- Fixed channel settings showing no slowmode when it had been set on web or desktop to a time the mobile app doesn't list. Reported by [Zunkz](https://feedback.fluxer.com/u/236) in [#4303](https://feedback.fluxer.com/p/4303/mobile-channel-settings-slowmode).
- Fixed mute times not following your 12-hour or 24-hour setting.
- Fixed dates, such as when an attachment expires, not following the date format of the language you use the app in. Reported by [gaggei](https://feedback.fluxer.com/u/87) in [#4312](https://feedback.fluxer.com/p/4312/in-german-the-media-expiry-has-a-wrong-format).
- Fixed the date when attachments expire still showing on messages with several images or videos after you had turned off "Show attachment expiration indicator" in "Advanced" settings. Reported by [Dinosaur Gnatalie](https://feedback.fluxer.com/u/93) in [#3676](https://feedback.fluxer.com/p/3676/attachment-expiry-indicator-toggle-ineffective-for-multiple).
- Fixed the message box on tablets not moving up into view when the on-screen keyboard opened. Reported by [SteveLinkNoah](https://feedback.fluxer.com/u/24) in [#4221](https://feedback.fluxer.com/p/4221/tablet-message-bar-does-not-move-into-view-when-opening-keyb).

#### Sidebar, settings and app

- Fixed "Collapse DMs into folder" not collapsing direct messages with unread messages in the sidebar after you turned it on. Reported by [Eyeflame](https://feedback.fluxer.com/u/61) in [#4323](https://feedback.fluxer.com/p/4323/collapse-dms-into-folder-setting-fails-to-hide-or-collapse-a).
- Fixed the "NEW" marker at the edge of the community list not turning red when you had a mention in a community out of view. Reported by [C.Ezra.M](https://feedback.fluxer.com/u/150) in [#4075](https://feedback.fluxer.com/p/4075/new-unreads-indicator-is-sometimes-prioritized-over-new-ment).
- Fixed menus that open from the bottom of the screen, such as the menu for personal notes and the external link warning, having no space above the phone's system buttons. Reported by [gaggei](https://feedback.fluxer.com/u/87) in [#2049](https://feedback.fluxer.com/p/2049/no-bottom-padding-in-personal-notes-long-press-menu) and [#2100](https://feedback.fluxer.com/p/2100/missing-padding-on-bottom-of-external-link-warning).
- Fixed switching between your accounts in the mobile app resetting your favorites and other settings that sync between all your devices.
- Fixed the app getting stuck on the loading screen until you tapped the text on it when reduced motion was on. Reported by [Hydra](https://feedback.fluxer.com/u/110) in [#4349](https://feedback.fluxer.com/p/4349/initial-loading-screen-doesn-t-progress-until-text-is-presse).
- Fixed the questions about sending crash reports and using Fluxer Push sometimes showing again after you had already answered them.
- Fixed the Android app sometimes failing to open.
- Fixed the banner at the top of a community's channel list flashing on and off when you switched quickly from one community to another.

#### Calls

- Fixed calls showing someone's main avatar in a community where they have set their own community avatar. Reported by [hihi217](https://feedback.fluxer.com/u/9) in [#4473](https://feedback.fluxer.com/p/4473/community-avatar-not-used-when-in-call-view).
- Fixed audio on Android switching back to another output after you had picked a different output with "Change audio output" during a call.
- Fixed the speaker not staying on during calls on some Samsung phones.
- Fixed the Android app crashing on some phones when you left a call.

#### Notifications

- Fixed Android notifications missing the default avatar.
- Fixed the upload notification on Android sometimes staying on screen after an upload had finished, even after you had opened the app again.
- Fixed UnifiedPush notifications sometimes not waking up the Android app.

## Self-hosting

Instance admins get these changes by [upgrading their instance with rexctl](https://fluxer.com/blog/patch-notes-2026-11-01.md) to release 2026.1031.210930 or newer, which came out on October 31, 2026.

### New

#### Upgrades and backups

- With `rexctl auto-upgrade on`, Fluxer upgrades itself every day with a systemd timer or cron. Each upgrade backs up the instance first and goes back to the version you had if the new one doesn't start. Suggested by [Ahryoo](https://feedback.fluxer.com/u/473) in [#4343](https://feedback.fluxer.com/p/4343/unattended-upgrade-setting-for-selfhosted-instances-with-rex).
- `rexctl auto-upgrade` takes `--at` to pick the time of day, or several times with commas between them, such as `--at 06:00,18:00` for two upgrades a day, and `--day` to upgrade once a week on that day. With `--notify`, it posts a message to a Slack, Discord or ntfy webhook URL when an upgrade installs or fails.
- With `rexctl auto-upgrade`, `--backup without-uploads` leaves uploads out of the backup that rexctl makes before each upgrade, and `--full-backup monthly` adds a full backup with uploads on the 1st of each month.
- `rexctl backup location` changes the folder where new backups go, and `rexctl backup keep` sets how many backups rexctl keeps.

#### Voice

- `rexctl voice add` adds more LiveKit voice servers on the same machine as Fluxer. `rexctl voice join` connects a voice server on another machine to your instance with a join token that you get from the admin panel.
- Voice servers show their health in the admin panel, where you can also drain a voice server. The docs have a new "Add voice servers" page.
- `rexctl voice join --no-edge` runs a voice server behind your proxy. When your proxy runs on another machine or network, `--http-bind` sets the address that the voice server listens on for it, which is 127.0.0.1 by default.
- Voice servers from `rexctl voice join` offer IPv6 as well as IPv4 when the machine has a public IPv6 address and Docker 27 or later, and so do servers from `rexctl voice add` when `network.ipv6` is on. Pass `--ipv6` to give the address yourself or `--no-ipv6` to offer only IPv4, and the docs explain how to run a voice server on a machine with only IPv6. Suggested by [LibertyLing](https://feedback.fluxer.com/u/803) in [#3993](https://feedback.fluxer.com/p/3993/add-variable-to-set-ip-for-livekit-over-ipv6).
- `FLUXER_LIVEKIT_TURN_SERVERS` lets calls use a TURN relay that you run on a machine with a public address, for instances that people connect to through a tunnel such as Cloudflare Tunnel. Reported by [Hacker6329](https://github.com/Hacker6329) in [#659](https://feedback.fluxer.com/p/659/self-hosted-add-turn-configuration-for-livekit-webrtc-if-usi).
- Voice servers from `rexctl voice add` and `rexctl voice join` give callers the TURN servers in `FLUXER_LIVEKIT_TURN_SERVERS`. An entry can have a `secret` for coturn's `use-auth-secret` in place of a username and password.

#### rexctl

- You can run more than one instance on one machine. rexctl picks free voice ports for each one, and `rexctl doctor` shows which instance uses which ports.
- rexctl remembers where it installed each instance, and `rexctl use` sets the instance it manages when you run it outside an instance folder.
- `rexctl config edit` opens custom.compose.yml in your editor, checks the file, tells you which services will restart and applies it once you agree.
- rexctl keeps the Compose files and Caddyfile it writes in .rexctl/generated, and keeps a copy of any file you edit by hand in .rexctl/edited.
- `${PWD}` in your own Compose files points at the instance folder.
- A caddy.d/sites folder in the instance folder can have whole extra sites.
- `rexctl down` stops Fluxer and removes its containers and networks in the same way as `docker compose down`, and keeps your data, settings, backups and images. `rexctl start` creates the containers again and starts Fluxer.
- `rexctl eject` lists what you can change without ejecting and asks you to confirm before it hands the instance over to plain Docker Compose.
- `rexctl search reindex` and "Reindex everything" in the admin panel rebuild every search index in one job and show progress. Suggested by [Kenko](https://feedback.fluxer.com/u/605) in [#1443](https://feedback.fluxer.com/p/1443/self-hosted-instances-need-a-way-to-fully-recreate-search-in).
- `rexctl doctor` checks that the Fluxer API can connect to the single sign-on provider you set up and tells you how to fix it when it can't, such as when your network needs hairpin NAT. Reported by [sparajoy](https://feedback.fluxer.com/u/1316) in [#4478](https://feedback.fluxer.com/p/4478/self-hosted-sso-fetch-failing-with-pocketid-provider).
- On Linux, `rexctl doctor` checks that memory overcommit is turned on in the kernel, and `rexctl doctor --fix` turns it on for you.
- `rexctl doctor` checks that the media proxy can write the temporary files that uploads from the desktop app need, and `--fix` makes the folder writable.

#### Docker Compose

- Every release comes with a plain Docker Compose bundle at fluxer.dev/compose/latest for platforms like Portainer, TrueNAS and Unraid, and the docs have a new "Run Fluxer with Docker Compose" page.
- .env.example explains every setting in it, and the docs list every environment variable that Fluxer and the Docker Compose bundle use.
- `rexctl takeover` can now take over an existing instance that runs the Docker Compose bundle, including one that you have upgraded by hand.

#### Instance settings

- "Billing emails" in the admin panel turns on the emails about Plutonium and donations that fluxer.com sends. It's off by default on self-hosted instances.
- Instance admins can make as many custom badges as they want for people and communities in the admin panel, with an image, label and link. Custom community badges replace built-in ones. Suggested by [ooDVG](https://feedback.fluxer.com/u/1016) in [#4230](https://feedback.fluxer.com/p/4230/selfhosters-able-to-add-custom-badges).
- "Badges per user" and "Badges per guild" on the Badges page of the admin panel set how many custom badges each account and community can have. The defaults are 100 for an account and 50 for a community, and the highest you can set is 1,000 for an account and 200 for a community. Suggested by [Kokomo](https://feedback.fluxer.com/u/379) in [#4500](https://feedback.fluxer.com/p/4500/allow-us-to-have-a-operator-defined-badge-limit-and-obviousl).
- When a community has more than three custom badges, the app shows the first three and a button with the number of other badges that opens all of them.
- "Replace image" on the Badges page of the admin panel changes the image of the Staff, Premium, Verified, Partnered or Discoverable badge everywhere it shows, including on crossposted announcements. "Use the built-in image" changes it back to the image that Fluxer comes with. Suggested by [Zoey](https://feedback.fluxer.com/u/315) in [#4449](https://feedback.fluxer.com/p/4449/allow-replacement-of-build-in-badge-assets).
- "Hide badge" on the Badges page of the admin panel hides the built-in Verified, Partnered or Discoverable badge on every community, and "Show badge" brings it back. A community with a hidden Discoverable badge stays listed in Explore.
- In the admin panel, instance admins can list up to 50 "Trusted link domains", with `*.` wildcards, and links to them open without the external link warning in the app. Links to the instance's own hosts are trusted automatically.
- "Personal notes" is a setting in the admin panel. It's on by default unless direct messages are off, and turning it off keeps the notes people have already written.
- An instance can take usernames from its single sign-on provider, and account settings then say "Your username comes from your sign-in provider."
- If your instance has single sign-on set up, you can connect it to your existing account with the "Connect" button in your account settings.

### Improved

#### rexctl

- `rexctl upgrade` checks disk space before it downloads anything, shows download speed and unpacking progress and keeps only the previous release's images.
- `rexctl upgrade` updates rexctl itself before it finishes.
- When disk space is low, `rexctl doctor` tells you which folder is short on space, the instance folder or the folder where Docker keeps Fluxer's images and data.
- `rexctl upgrade` stops early when the Docker volumes don't match what it expects, and it can roll back across a Meilisearch upgrade.
- An upgrade that gets stuck while the services start times out, and rexctl tells you what you should check when one of Fluxer's services stalls.
- `rexctl config list` shows every setting, including `sso.allow_private_addresses`, and errors about a single sign-on provider on a private address point you to that setting. Reported by [frenzeldk](https://feedback.fluxer.com/u/128) in [#4434](https://feedback.fluxer.com/p/4434/locally-resolved-sso-provider-no-longer-possible-with-rexctl).
- You can install behind your own reverse proxy with `--behind-proxy --bind 127.0.0.1:8080`, and the plain install asks about this when port 80 or 443 is already in use. The installer also has tips for running Fluxer with Podman.
- During a backup, Fluxer is only stopped while rexctl copies the files, and rexctl compresses the backup after Fluxer has started again.
- `rexctl upgrade` stops before it changes anything if custom.compose.yml doesn't work with the new version or leaves out mounts it needs.
- When rexctl isn't on your PATH, the install script and rexctl show the full path to run it with, and the install script shows the command that adds it to your PATH.
- When you run rexctl with sudo, it gives the files that it writes in the instance's .rexctl and backups folders back to the account that owns the instance folder. When you run it without sudo and a file in .rexctl belongs to another account, rexctl stops before it changes anything and shows the `chown` command that fixes it.
- The self-hosting docs explain how to add your own Caddy directives in the caddy.d folder and how to use your own Caddyfile in place of Fluxer's.
- The self-hosting docs explain where Fluxer keeps its files.

#### Admin panel and the app

- On self-hosted instances running release 2026.1029.225131 or newer, members who can manage roles can give roles below their own to anyone in the community, including the owner and members ranked above them.
- The admin panel has a switch for the light and dark theme.
- Voice servers in the admin panel have a notes field.
- The admin panel shows each voice server's IPv4 and IPv6 addresses.
- Message tools in the admin panel show embeds and webhook badges.
- Error messages from the API show in full in the admin panel.
- When discovery is off, the admin panel hides "Explore review", and the Explore review page says that Explore is turned off. Reported by [dunny](https://feedback.fluxer.com/u/75) in [#4375](https://feedback.fluxer.com/p/4375/self-hosted-explore-review-still-accessible-in-admin-panel-w).
- On instances where you sign up with a code sent to your email, sign-up asks for your display name and username before it sends the code.
- Before the admin panel deletes messages from a CSV file, "Preview messages" shows exactly which messages it will delete and which entries it skips.
- The admin panel's report list shows only pending reports unless you search or filter it, and messages in a report show where their links go.
- Rejecting a pending sign-up in the admin panel asks you to confirm and then deletes the account of the person who signed up for the instance.
- On instances that sell their own premium plan, accounts without an email address can buy it too, such as accounts made with just a username.
- You can upload large sign-in backdrop images in the setup wizard and admin panel, and Fluxer scales them down for you. They used to fail to upload.
- Link previews of ActivityPub posts that need signed requests work on self-hosted instances too. rexctl and the Helm chart make the signing key for you, and the edge sends requests for /.well-known/webfinger to the API.
- The app only checks an instance's status page for incidents when it's an Instatus page, and it waits longer between retries when a check fails.
- The docs explain how to purge deleted media from Cloudflare's cache, and Fluxer sends at most 100 prefixes in each purge request to Cloudflare.
- The API and worker can trust your own certificate authority for SMTP and other services. With rexctl or Docker Compose, put the CA file in your instance's ca folder and set `FLUXER_NODE_EXTRA_CA_CERTS`, and the docs show how to set this up with the Helm chart on Kubernetes. Reported by [gridban](https://feedback.fluxer.com/u/1189) in [#4348](https://feedback.fluxer.com/p/4348/it-is-not-possible-to-configure-trust-for-self-signed-certif).

### Fixed

- Fixed `rexctl backup` failing on instances that use an external PostgreSQL database in place of the built-in one. Reported by [Zoey](https://feedback.fluxer.com/u/315) in [#4335](https://feedback.fluxer.com/p/4335/rexctl-fails-upgrade-if-external-postgresql-is-used-and-inte).
- Fixed `rexctl backup` failing on migrated instances with Docker volumes that don't have Docker Compose labels. Reported by [g00by](https://feedback.fluxer.com/u/397) in [#4330](https://feedback.fluxer.com/p/4330/rexctl-backup-fails-on-migrated-self-hosted-instances-with-u).
- Fixed the helper containers that rexctl starts while it makes a backup writing very large Docker log files on the host. Reported by [Falco](https://feedback.fluxer.com/u/547) in [#4336](https://feedback.fluxer.com/p/4336/rexctl-backup-helper-container-can-produce-very-large-json-l).
- Fixed `rexctl backup` leaving out data that your custom.compose.yml keeps in a folder on the host machine in place of a Docker volume.
- Fixed `rexctl restart` doing nothing when a service was unhealthy.
- Fixed rexctl telling you to run `rexctl upgrade` when your instance was already on the current release or was in the middle of an upgrade.
- Fixed rexctl's progress output hiding the sudo password prompt.
- Fixed the DNS check in rexctl failing when your domain points to a reverse proxy or tunnel that forwards traffic to the machine that runs your instance.
- Fixed the health check in rexctl failing for an instance behind your own reverse proxy when the edge service had no published ports.
- Fixed `rexctl takeover` leaving the Compose files and Caddyfile in the instance folder when it should have moved them to .rexctl/generated.
- Fixed `rexctl proxy on` setting the address your proxy connects to back to 127.0.0.1:8080 when you ran it without the `--bind` option.
- Fixed rexctl recreating a running instance's containers at boot.
- Fixed SeaweedFS logging an IAM error that wasn't a real problem.
- Fixed the bundled SeaweedFS object store running out of memory when people uploaded many files at once. It writes a few uploads at a time, and `FLUXER_SEAWEEDFS_S3_CONCURRENT_UPLOADS` changes how many.
- Fixed rexctl commands refusing to run with "Another rexctl command is changing this instance." while Fluxer was still starting after the machine booted. On machines with systemd, rexctl waits up to 10 minutes for Fluxer to finish starting.
- Fixed communities that were approved for Explore going missing from the list of approved communities in the admin panel after their Explore listing changed. Fluxer adds communities that went missing before this update back to the list.
- Fixed deleted accounts staying in the admin panel's user list and in `rexctl users list`, including ones deleted before this update. Their email address can be used again for a new account. Reported by [penguin](https://feedback.fluxer.com/u/378) in [#1235](https://feedback.fluxer.com/p/1235/allow-instance-administrators-to-permanently-delete-user-acc).
- Fixed tabs on user and community pages in the admin panel opening without the rest of the page when you opened them in a new browser tab.
- Fixed the admin panel not sorting reports that you had filtered by status.
- Fixed signing in to the admin panel failing when you spent more than 5 minutes on the sign-in page. You can take up to 30 minutes to sign in.
- Fixed email failing to send when secure SMTP was on and no SMTP port was set. In that case, Fluxer connects with STARTTLS on port 587.
- Fixed the desktop and mobile apps failing to add an instance behind a reverse proxy that doesn't pass on the client's real IP address to Fluxer.
- Fixed messages on your instance failing to send until you restarted Fluxer, when the gateway service had started before the NATS service was ready.

## For bot developers

### New

- Roles have `icon` and `unicode_emoji` fields.
- The Admin API has routes for custom badges and voice join tokens.
- There are two new error codes for desktop sign-in through the browser, `HANDOFF_ATTEMPTS_EXCEEDED` and `HANDOFF_CODE_ALREADY_USED`.

### Improved

- Listing members with `after=0` works like leaving `after` out.

## Website

### New

- The home page has a "See all languages" button that lists every language that the Fluxer app is available in. Suggested by [sichfryth](https://feedback.fluxer.com/u/1172) in [#4347](https://feedback.fluxer.com/p/4347/web-design-suggestion-for-the-languages-section-in-the-fluxe).
- The voice regions on the website show on a spinning globe.
- The blog is organized by category.
- The self-hosting page has a new design.
- The footer links to our account on the fediverse at [social.fluxer.com](https://social.fluxer.com/@fluxer), where you can follow Fluxer from Mastodon. Suggested by [SunriseSeagull](https://feedback.fluxer.com/u/30) in [#4342](https://feedback.fluxer.com/p/4342/offizieller-mastodon-account-von-fluxer-official-mastodon-ac).
- A [licenses page](https://fluxer.com/licenses), linked from the footer, lists the fonts, globe imagery and other third-party work that the website uses and their licenses.
- Each question in the website's FAQs has its own link that you can copy.

### Improved

- Search engines can index docs.fluxer.com.

### Fixed

- Fixed some ad blockers hiding the social media icons in the website footer.
- Fixed the Obtainium links on the [Android download page](https://fluxer.com/download/android) pointing at an address that Obtainium had stopped using. Reported by [hihi217](https://feedback.fluxer.com/u/9) in [#4406](https://feedback.fluxer.com/p/4406/obtainium-links-are-out-of-date-on-fluxer-app-download-andro).
- Fixed search on docs.fluxer.com being slow.

## Getting the latest version

If something in these notes isn't showing up for you yet, your app or your instance may not have updated. Here's how each of them gets updates.

### Web

The web app at [fluxer.com](https://fluxer.com/app) checks for a new version every 5 minutes and when you return to the tab. When one is out, click the reload icon in the channel header.

### Desktop

The newest version of the desktop app is 2026.1101.102918.

Official installs of the desktop app on version 2026.1012 or newer get updates to the Fluxer interface inside the app without updating the app itself, and that's how most of the changes in these notes get to you. When one is ready, an update icon shows in the channel header and the tray menu has "Update Fluxer now". To check for one yourself, click "Check for updates" in the tray menu, or in the Fluxer menu on macOS.

Versions before 2026.1012 keep an older interface until the app itself updates.

How the app itself updates depends on how you installed it.

- The Windows installer and the macOS app update themselves.
- The Windows portable version doesn't update itself. When a new version comes out, the app asks you to download it from our [download page](https://fluxer.com/download).
- The Linux AppImage updates itself when it's in a folder you can write to.
- If you use our apt, dnf or pacman repository or our Flatpak, updates come through your package manager or software center like any other app.
- If you downloaded a .deb or .rpm file by itself, it doesn't get updates. Add our repository from the [Linux downloads](https://fluxer.com/download#linux) to keep it up to date.
- The tar.gz download doesn't update itself.

If the app on Linux won't pick up an update, click "Restart Fluxer" in the tray menu. A full restart of the app sometimes works when just reloading the window doesn't.

Canary is its own app with its own updates, and the newest version of Canary is 2026.1031.222338. You can get it from the [Canary downloads](https://canary.fluxer.com/download).

### Flathub

We make the Flathub version of Fluxer, but an update can come out on Flathub a few weeks after we release it, and it doesn't have most of these changes yet.

For every update on the day we release it, switch to [our own Flatpak](https://docs.fluxer.com/downloads/linux-repositories/#flatpak) from pkgs.fluxer.com. Remove the Flathub version first, because both use the same app ID, and your settings and sign-ins on this computer stay as they are.

### iOS and Android

The mobile apps are in public beta, and the newest version on GitHub is 2026.10.100 beta 16. Google Play sometimes gets new betas after GitHub.

The iOS beta on TestFlight [is on hold right now](https://fluxer.com/help/ios-testflight.md).

- On Android, the [Google Play beta](https://play.google.com/store/apps/details?id=com.fluxer) updates like any other app.
- The Obtainium links on the [Android download page](https://fluxer.com/download/android) install GitHub builds and keep them updated. Pick the first if your phone has Google Play services.
- An APK file you downloaded yourself doesn't update on its own. Get the new one from the [Android download page](https://fluxer.com/download/android), or switch to Google Play or Obtainium.
- Google Play and GitHub builds are signed differently, and you can't install one over the other. To switch, uninstall, install the other build and sign in again.

### Self-hosted instances

Instance admins upgrade with `rexctl upgrade`, which upgrades rexctl and Fluxer together. With `rexctl auto-upgrade on`, the instance upgrades itself on a schedule. If you set up your instance with the earlier installer script, [run the current install script](https://docs.fluxer.com/operator/running/#upgrade) with `--update --dir` and your instance's folder, and rexctl takes over managing your instance and keeps all your data and settings as they are.

## What's next

The next patch notes will include everything we release after this post.

> [Roadmap 2026](https://fluxer.com/blog/roadmap-2026.md)
>
> What we're building for Fluxer in 2026 and 2027, including end-to-end encryption for calls, DMs and group DMs, optional federation and public forums.
>
> Source: Fluxer blog / Hampus Kraft

You can [donate](https://fluxer.com/donate) as a person or a business to support this work, and donations fund hosting and development. On fluxer.com, a [Plutonium](https://fluxer.com/plutonium) subscription also helps.

## Thank you

Thank you to [Ahryoo](https://feedback.fluxer.com/u/473), [C.Ezra.M](https://feedback.fluxer.com/u/150), [Dinosaur Gnatalie](https://feedback.fluxer.com/u/93), [dunny](https://feedback.fluxer.com/u/75), [Eyeflame](https://feedback.fluxer.com/u/61), [Falco](https://feedback.fluxer.com/u/547), [Fl4il](https://feedback.fluxer.com/u/953), [frenzeldk](https://feedback.fluxer.com/u/128), [Fullest](https://feedback.fluxer.com/u/21), [g00by](https://feedback.fluxer.com/u/397), [gaggei](https://feedback.fluxer.com/u/87), [gridban](https://feedback.fluxer.com/u/1189), [Hacker6329](https://github.com/Hacker6329), [Hayden](https://feedback.fluxer.com/u/1174), [hihi217](https://feedback.fluxer.com/u/9), [Hydra](https://feedback.fluxer.com/u/110), [Jonah](https://feedback.fluxer.com/u/666), [Jonja](https://feedback.fluxer.com/u/802), [Kenko](https://feedback.fluxer.com/u/605), [Kirby](https://feedback.fluxer.com/u/532), [Kokomo](https://feedback.fluxer.com/u/379), [LibertyLing](https://feedback.fluxer.com/u/803), [Maple~ 💚](https://feedback.fluxer.com/u/58), [ooDVG](https://feedback.fluxer.com/u/1016), [PatRyk](https://feedback.fluxer.com/u/369), [penguin](https://feedback.fluxer.com/u/378), [rez](https://feedback.fluxer.com/u/385), [Rilinquish](https://feedback.fluxer.com/u/1192), [Shadow Lighthoof](https://feedback.fluxer.com/u/279), [sichfryth](https://feedback.fluxer.com/u/1172), [sodiboo](https://feedback.fluxer.com/u/304), [Sonador](https://feedback.fluxer.com/u/947), [sparajoy](https://feedback.fluxer.com/u/1316), [SteveLinkNoah](https://feedback.fluxer.com/u/24), [SunriseSeagull](https://feedback.fluxer.com/u/30), [Tarek](https://feedback.fluxer.com/u/6), [Valynor](https://feedback.fluxer.com/u/1156), [Zoey](https://feedback.fluxer.com/u/315) and [Zunkz](https://feedback.fluxer.com/u/236) for reporting bugs and asking for features.

Thank you also to [Jiralite](https://github.com/Jiralite), [M0n7y5](https://github.com/M0n7y5), [rennr](https://github.com/rennr), [sodiboo](https://github.com/sodiboo) and [strangeglyph](https://github.com/strangeglyph) for the code they sent us on GitHub for Fluxer and for the iOS and Android apps.

---

Canonical page: https://fluxer.com/blog/patch-notes-2026-11-01

Last updated on November 1, 2026
