diff --git a/content/blog/2024/12/2024-12-06-twim.md b/content/blog/2024/12/2024-12-06-twim.md new file mode 100644 index 000000000..dc5951172 --- /dev/null +++ b/content/blog/2024/12/2024-12-06-twim.md @@ -0,0 +1,326 @@ ++++ +date = "2024-12-06" +title = "This Week in Matrix 2024-12-06" +path = "/blog/2024/12/06/this-week-in-matrix-2024-12-06" + +[taxonomies] +author = ["MTRNord"] +category = ["This Week in Matrix"] ++++ + + +## Matrix Live - Social Login with MAS + +{{youtube_player(video_id="NO2iK5k4Ji4")}} + +## Dept of *Status of Matrix* 🌑️ + +### Welcoming Ercom as a Silver Member + +[Josh Simmons (m.org)](https://matrix.to/#/@joshsimmons:matrix.org) says + +> We'd like to welcome [Ercom](https://ercom.com/) as the newest Silver Member of the Matrix.org Foundation and are excited to announce a couple other new members before the end of the year πŸš€ +> +> The Matrix.org Foundation stewards the Matrix protocol specification, facilitates open governance, and convenes the ecosystem. While Matrix continues growing in adoption, the Foundation's funding is not keeping pace. If your organization builds on Matrix and is invested in its future, the time to [become a funding member](https://matrix.org/membership/) is now. + +### Matrix.org protocol is not MATRIX + +[Josh Simmons (m.org)](https://matrix.to/#/@joshsimmons:matrix.org) announces + +> From the department of [no-the-other-Matrix](https://matrix.org/blog/2024/12/unrelated-cybercriminal-network-taken-down/): This week saw news of Europol shutting down an encrypted messaging service called MATRIX. All indications are that this has nothing to do with the Matrix protocol, and we are grateful to the agencies and [publications](https://nos.nl/artikel/2546901-politie-las-mee-in-criminele-chat-app-miljoenen-berichten-onderschept) that have made an effort to disambiguate. We are, of course, monitoring the situation as more information becomes available. + + + +## Dept of Spec πŸ“œ + +[Andrew Morgan (anoa) {he/him}](https://matrix.to/#/@andrewm:element.io) reports + +> Here's your weekly spec update! The heart of Matrix is the specification - and this is modified by Matrix Spec Change (MSC) proposals. Learn more about how the process works at . +> +> +> ### MSC Status +> +> **New MSCs:** +> +> * *There were no new MSCs this week.* +> +> **MSCs in Final Comment Period:** +> +> * [MSC4147: Including device keys with Olm-encrypted events](https://github.com/matrix-org/matrix-spec-proposals/pull/4147) (merge) +> +> **Accepted MSCs:** +> +> * [MSC3823: Account Suspension](https://github.com/matrix-org/matrix-spec-proposals/pull/3823) +> +> **Closed MSCs:** +> +> * *No MSCs were closed/rejected this week.* +> +> ### Spec Updates +> +> Following on from last week, the SCT continues to work towards the next spec release, expected in mid-December with Account Suspension, backwards compatibility for captions, and likely some further work towards Matrix 2.0 in the form of crypto MSCs. +> +> Folks are encouraged to raise their MSCs for review in the [SCT Office](https://matrix.to/#/#sct-office:matrix.org) as soon as they feel it's ready for broad review. This helps ensure there are minimal process delays, and feedback can be incorporated into the feature design early. This is especially important for Matrix 2.0 MSCs, which the SCT hopes to be able to release in the new year. + +## Dept of Servers 🏒 + +### Synapse ([website](https://github.com/element-hq/synapse/)) + +Synapse is a Matrix homeserver implementation developed by Element + +[Andrew Morgan (anoa) {he/him}](https://matrix.to/#/@andrewm:element.io) says + +> Happy Friday! [Synapse 1.120.2](https://github.com/element-hq/synapse/releases/tag/v1.120.2) was released this week. This releases includes fixes for several high-severity vulnerabilities. Please update as soon as possible if you have not already. +> +> In addition, [Synapse 1.121.0rc1](https://github.com/element-hq/synapse/releases/tag/v1.121.0rc1) was released in the second half of this week. This release candidate includes new features - please test it on your non-production deployments and [report bugs](https://github.com/element-hq/synapse/issues) if you are able to! Note that this release candidate indeed includes the security fixes from 1.120.2. +> +> New features in 1.121.0rc1 include experimental support for [MSC4190: device management for Application Services](https://github.com/matrix-org/matrix-spec-proposals/pull/4190) and [MSC4076: Add disable_badge_count to pusher configuration](https://github.com/matrix-org/matrix-spec-proposals/pull/4076) in addition to the stabilisation of the previously-experimental [account locking feature](https://spec.matrix.org/v1.12/client-server-api/#account-locking), released in [Matrix 1.12](https://spec.matrix.org/v1.12). +> +> There's also lots of bug fixes included as well, so please do test if you can before 1.121.0's scheduled release next week. + +## Dept of Clients πŸ“± + +### FluffyChat ([website](https://fluffychat.im)) + +The cutest instant messenger in the [matrix]. + +[Krille-chan](https://matrix.to/#/@krille:janian.de) says + +> πŸš€ FluffyChat v1.23.0 is here! +> +> You can now send multiple files at once. The login page got a redesign with SSO as the new default action (legacy password login still available in the context menu at the top right corner). +> +> MAS account settings now available in the profile, making FluffyChat ready for the Matrix OIDC change! πŸ’ͺ +> +> Lot's of new colors and style settings with much better chat wallpapers also landed in this release. 🐾 +> +> Learn more at + +### Element X iOS ([website](https://github.com/vector-im/element-x-ios)) + +A total rewrite of Element-iOS using the Matrix Rust SDK underneath and targeting devices running iOS 16+. + +[Mauro Romito](https://matrix.to/#/@mauro.romito:element.io) announces + +> * RC 1.9.9 has been sent for verification, the RC has been delayed to avoid some bugs to be shipped in production, that promptly fixed. +> * Knocking rooms has made great progress and is getting close to be completed +> * We are also working on adding more options in the room details, to allow changing alias, room visibility and other settings that are already available on Web but not on X +> * Media gallery of a room has also made great progress, and first simple implementation is going to reach Nightly very soon! +> * Share extension is back, and will be available on the coming app store release, alongside the option of adding captions to the media you are going to share! + +### Element X Android ([website](https://github.com/vector-im/element-x-android)) + +Android Matrix messenger application using the Matrix Rust SDK and Jetpack Compose. + +[ganfra](https://matrix.to/#/@ganfra:matrix.org) reports + +> * Version 0.7.5 has been released, including support to add/edit/remove captions, new notification actions and some various improvements. +> * We are still working on knocking rooms. +> * Media gallery is in development, and a first iteration should land soon. + +### Tammy ([website](https://tammy.connect2x.de)) + +Multiplatform messengers build on top of Trixnity Messenger + +[Benedict](https://matrix.to/#/@benedict:imbitbu.de) announces + +> A new Tammy version has been released last week with a bunch of changes and fixes: +> +> * Show online-status when searching for users. +> * Ability to see who reacted to a message. +> * Added download button for file preview. +> * Support private Browser Tabs. +> * Added PDF reader in web. +> * Fixed crash when opening file picker on linux distribution. +> * Fixed thumbnails not being displayed sometimes because of size limit evaluations. +> * Fixed headings not readable in dark mode. +> * Fixes a crash when opening a file. +> * Fixed crash when notification sound is unavailable. +> +> Currently we are working on a Linux Flatpak and Snap release. So stay tuned! + +## Dept of Widgets 🧩 + +### NeoBoard Widget ([website](https://neoboard.io/)) + +[Kim Brose (Nordeck)](https://matrix.to/#/@kim.brose:nordeck.io) announces + +> [NeoBoard Widget v2.0.0](https://github.com/nordeck/matrix-neoboard/releases/tag/%40nordeck%2Fmatrix-neoboard-widget%402.0.0) is a major version update due to some significant tooling changes. Still, it has several new user-facing features. +> We picked these highlights for you: +> +> **Custom font sizes for text shapes** +> +> The font size in text shapes can now be set to a specific size. We offer a list of recommended values but you can always use the `auto` sizing, which adjusts the font size to the dimensions of the shape. +> +> **Inserting or importing a PDF** +> +> We extended the "Import" and "Insert here..." feature to also support PDF files, alongside the native `.nwb` format. Doing this will render each PDF page as an image in a new slide. +> +> {{figureVideo(vid="/blog/img/RGeNiAiflRseUrRxbHkHBmwf.mp4",caption="A demo of importing a matrix flyer to NeoBoard")}} +> +> **Monitoring the user's online state** +> +> We added a snackbar to the board that provides troubleshooting information when there are issues saving your data. +> For example, the widget monitors your network connection status to determine if you’re online, making it clear that content changes to the board or updates from collaborators cannot sync while you’re offline. +> It also looks out for rate-limiting scenarios and provide context-aware information when it is possible. +> +> **Updated tooling and build process** +> +> In this release, we migrated away from Facebook's [Create React App](https://create-react-app.dev/) (CRA) framework in favour of the new and actively maintained [Vite](https://vitejs.dev/) framework. We also swapped out our testing framework from [jest](https://jestjs.io/) to the Vite-native [Vitest](https://vitest.dev/). +> This is modernizing the build process and improving security, but requiring updates to build scripts, configurations, and imports due to the switch to ECMAScript modules (ESM). +> +> **Support for IPv4-only deployments** +> +> It is now possible to deploy the widget container on hosts without IPv6 support through a configuration option. This can be toggled easily through our [Helm charts](https://github.com/nordeck/matrix-neoboard/blob/0456eeddc25016410663df42d6c96142bd7afea8/charts/matrix-neoboard-widget/values.yaml#L82). +> Beyond that, the container image also gained the ability to also add your own files with custom config that will be added to the nginx server block config, should you need that. +> Read more about both in our [documentation](https://github.com/nordeck/matrix-widget-toolkit/blob/%40matrix-widget-toolkit/widget-server%401.1.0/containers/widget-server/README.md#custom-listen-directive). +> +> We also released updates to our [NeoChoice](https://github.com/nordeck/matrix-poll/releases/tag/v1.5.0) and [NeoDateFix](https://github.com/nordeck/matrix-meetings/releases/tag/%40nordeck%2Fmatrix-meetings-widget%401.7.0) widgets to match this feature. +> +> **...and more!** +> +> As usual, we try to improve existing features and fix bugs whenever we can. Check out the [changelog](https://github.com/nordeck/matrix-neoboard/releases/tag/%40nordeck%2Fmatrix-neoboard-widget%402.0.0) for a more detailed report of what has changed. +> +> If you have any questions or feedback, please reach out to us using our public room [#nordeck:nordeck.io.](https://matrix.to/#/%23nordeck:nordeck.io.) +> +> PS: make sure you check out Christian's NeoBoard Advent Calendar in the Dept of Interesting Projects πŸ›°οΈ! + +## Dept of SDKs and Frameworks 🧰 + +### vodozemac-python ([website](https://pypi.org/project/vodozemac/)) + +A python binding to the implementation of Olm and Megolm in pure Rust. + +[OdoItal](https://matrix.to/#/@me:shahpaarth.com) reports + +> Happy to announce that the pypi package [vodozemac](https://pypi.org/project/vodozemac/) has gotten its first release in 2 years to `0.8.1`, matching the latest (at the time of writing) published version of the official rust crate of the same name. +> +> The published packages include binary distributions across many different platforms and architectures (everything supported by `maturin`), as well as a `srcdist`. +> +> The previous version was published from the now-abandoned [matrix-nio/vodozemac-bindings](https://github.com/matrix-org/vodozemac-bindings). In the light of the deprecation of `libolm`, it became clear that modernized python bindings to the supported matrix encryption library is an absolute must, and it's possible now! +> +> The new repo itself is +> It's very much a WIP, with documentation and certain usability QoL items still left to implement, but it's expected to be usable as-is. +> +> Not finalized yet, but I'm roughly planning to institute a versioning scheme that strictly follows that of the rust crate `vodozemac`, with a subversion to account for any changes that don't relate to the actual underlying library. +> +> PRs are extremely welcome, especially for helping getting to replace `pyolm` with `vodozemac` in `matrix-nio`! + +## Dept of Services πŸš€ + +### etke.cc ([website](https://etke.cc)) + +Your matrix server on your conditions + +[Aine [don't DM]](https://matrix.to/#/@aine:etke.cc) announces + +> #### Synapse Admin Updates +> +> A while back, we at [etke.cc announced our Synapse-Admin fork](https://etke.cc/news/xueua5a7nvgjzxldyu52gkw7viftcthp8cz-m3dyi_8/?utm_source=twim&utm_medium=matrix&utm_campaign=synapse-admin). This week, we're excited to share a roundup of new features and quality-of-life (QoL) improvements we've introduced! +> +> **[Prefill Any Login Form Fields with GET Parameters](https://github.com/etkecc/synapse-admin/pull/181)** +> +> Previously, you could prefill the `username` and `server` fields in the login form using GET parameters for convenience. With this update, the `password` (for credentials-based auth) and `accessToken` (for access token-based auth) fields can also be prefilled. +> ⚠️ Due to security considerations, this feature is restricted to local environments only. +> +> **[Documentation Index Added](https://github.com/etkecc/synapse-admin/blob/main/docs/README.md)** +> +> We're slowly documenting all the enhancements we've made to Synapse Admin. To make navigation easier, we've introduced a structured index page that organizes the documentation by sections. +> +> *(exclusive to [etke.cc](https://etke.cc/) customers)* **[Server Status Page & App Bar Indicator](https://github.com/etkecc/synapse-admin/pull/182)** +> +> A new status page and app bar indicator are now available! Using our [monitoring service](https://etke.cc/services/monitoring/), you can view your server's status via Matrix, email, or the web UI. +> +> **Unified List View: Show 50 Items by Default** +> +> Lists for all resources - users, rooms, media, reports, tokens, and more - now display 50 items by default. This change offers a more consistent experience across devices, especially on larger-than-phone screens. Previously, lists showed either just 10 items (leaving the page mostly empty) or an overwhelming 500 items. +> +> [Source code](https://github.com/etkecc/synapse-admin), [admin.etke.cc (CDN version)](https://admin.etke.cc//?utm_source=twim&utm_medium=matrix&utm_campaign=synapse-admin). +> Don't forget to drop by [#synapse-admin:etke.cc](https://matrix.to/#/#synapse-admin:etke.cc) to share your feedback and say hi! + +## Dept of Bots πŸ€– + +### @unomed/react-native-matrix-sdk + +[Johannes](https://matrix.to/#/@h3nn3s:matrix.org) says + +> We've recently released [react-native-matrix-sdk](https://github.com/unomed-dev/react-native-matrix-sdk) which wraps the *entire* FFI bindings of [matrix-rust-sdk](https://github.com/matrix-org/matrix-rust-sdk) in a React Native Turbo Module by way of [uniffi-bindgen-react-native](https://github.com/jhugman/uniffi-bindgen-react-native). We have successfully used this library to prototype a cross-platform app including room list and timeline but it is a fairly young project and will most definitely still have a few sharp edges. +> +> If anyone would like to try this out in their own projects, we'd be happy to receive feedback and contributions via [GitHub](https://github.com/unomed-dev/react-native-matrix-sdk). We also hang out in and if you want to chat. +> +> Thanks a ton to [Unomed](https://www.unomed.ch/) for sponsoring my work on this and to [James Hugman](https://github.com/jhugman) and his sponsors, [Mozilla](https://www.mozilla.org/en-US/) and [Filament](https://filament.dm/), for creating and maintaining [uniffi-bindgen-react-native](https://github.com/jhugman/uniffi-bindgen-react-native). You can find further details about this project in [Mozilla's announcement](https://hacks.mozilla.org/2024/12/introducing-uniffi-for-react-native-rust-powered-turbo-modules/) or the accompanying [reddit post](https://www.reddit.com/r/reactnative/comments/1h6p84x/uniffi_bindgen_react_native_codegen_tool_for_rust/). + +## Dept of Interesting Projects πŸ›°οΈ + +### Christian's NeoBoard Advent Calendar + +[Christian Paul (jaller94)](https://matrix.to/#/@jaller94:matrix.org) says + +> Christmas is coming up and to shorten the wait, you can open a door of my bilingual advent calendar every day. It has templates and coding examples for [NeoBoard](https://neoboard.io/) whiteboards. +> +> * [NeoBoard Advent Calendar](https://chrpaul.de/posts/2024-11-27-neoboard-advent-calendar/) +> * [NeoBoard Adventskalender (German / Deutsch)](https://chrpaul.de/de/posts/2024-11-27-neoboard-advent-calendar/) +> +> Check out some doors from the past days: +> +> * [Door 1: Pairs Game](https://chrpaul.de/posts/2024-12-01-neoboard/) +> * [Door 2: Christmas background](https://chrpaul.de/posts/2024-12-02-neoboard/) +> * [Door 3: TypeScript types with Zod](https://chrpaul.de/posts/2024-12-03-neoboard/) +> +> Do you also wonder what will be behind today's door? 😏 +> +> NeoBoard is a whiteboard widget for Element, allowing you and your team to collaborate during meetings, presentations and group projects. You can export and import whiteboard files to reuse them as templates or migrate between rooms. +> {{figure(img="/blog/img/VyInZGhAIuIxTeaeFndFVwPr.png",caption="The Neoboard Advent Calendar")}} + +### Using Mastodon RSS feeds in Matrix + +[cos](https://matrix.to/#/@cos:hacklab.fi) announces as an amendment to last week's Matrix Live episode + +> Mastodon can also be accessed using rss feeds by attaching `.rss` to the end of a user's profile URL or hashtag URL. +> +> For example: +> +> ```txt +> https://mastodon.matrix.org/@matrix.rss +> https://mastodon.matrix.org/tags/matrix.rss +> ``` + +## Matrix Federation Stats + +[Aine [don't DM]](https://matrix.to/#/@aine:etke.cc) announces + +> collected by [MatrixRooms.info](https://matrixrooms.info/?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats) - an [MRS](https://github.com/etkecc/mrs) instance by [etke.cc](https://etke.cc?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats) +> +> As of today, `10444` Matrix federateable servers have been discovered by matrixrooms.info, `3169` (`30.3%`) of them are publishing their rooms directory over federation. +> The published directories contain `21309` rooms. +> +> Stats timeline is available on [MatrixRooms.info/stats](https://matrixrooms.info/stats/?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats) +> +> [How to add your server](https://matrixrooms.info/indexing/?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats) | [How to remove your server](https://matrixrooms.info/deindexing/?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats) + +## Dept of Ping πŸ“ + +Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by [pingbot](https://github.com/maubot/echo), a [maubot](https://github.com/maubot/maubot) that you can host on your own server. + +### [#ping:maunium.net](https://matrix.to/#/#ping:maunium.net) + +Join [#ping:maunium.net](https://matrix.to/#/#ping:maunium.net) to experience the fun live, and to find out how to add YOUR server to the game. + +|Rank|Hostname|Median MS| +|:---:|:---:|:---:| +|1|bi-vibes.com|229| +|2|envs.net|234| +|3|codestorm.net|255.5| +|4|foster.boutique|258| +|5|tomfos.tr|275| +|6|girlboss.ceo|290| +|7|constellatory.net|295| +|8|nerdhouse.io|301| +|9|beeper.com|306.5| +|10|bark.arf.wf|343| + +## That's all I know + +See you next week, and be sure to stop by [#twim:matrix.org](https://matrix.to/#/#twim:matrix.org) with your updates! + +To learn more about how to prepare an entry for TWIM check out [the TWIM guide](https://matrix.org/twim-guide). diff --git a/static/blog/img/RGeNiAiflRseUrRxbHkHBmwf.mp4 b/static/blog/img/RGeNiAiflRseUrRxbHkHBmwf.mp4 new file mode 100644 index 000000000..90300569a Binary files /dev/null and b/static/blog/img/RGeNiAiflRseUrRxbHkHBmwf.mp4 differ diff --git a/static/blog/img/VyInZGhAIuIxTeaeFndFVwPr.png b/static/blog/img/VyInZGhAIuIxTeaeFndFVwPr.png new file mode 100644 index 000000000..d5c4a4c2d Binary files /dev/null and b/static/blog/img/VyInZGhAIuIxTeaeFndFVwPr.png differ