Maps, emulators, croissants and changed keys

This Week in F-Droid

TWIF curated on Thursday, 11 Jul 2024, Week 28

Community News

Cartes IGN, Discover France another way and witness the land’s evolution, is a nice mapping app for France. Even if not French, the ways you can interact with the data is something to be experienced, or even more, in the spirit of “Public money, public code”, maybe something we should ask our local administrations to do for our countries too. App description text will be fixed in the next version (upstream PR#92)

DataBackup was updated to 2.0.1 and its dev XayahSuSuSu gives us the news:

The app has been released on F-Droid for a while. Recently it has a breaking change on UIs, with a lot of new features.

  • 🔥It supports reproducible builds on F-Droid now so it uses the signing key of the developer
  • This update IS NOT COMPATIBLE with old versions, you’d better CLEAN INSTALL this version, and you can reload to restore legacy backups.
  • 🎉 Welcome new friends to our team: @omersusin, @PalmDevs, @frknkrc44.
  • ✨ Reimplemented cloud functions.
  • ✨ Supported SSAID backup and restoring, you need to reboot after restoring SSAIDs.
  • ✨ Supported keystore detection, which means this application may not work after restoring.
  • ✨ Downgraded to api 26. Yes now we support Android 8.0+

We’ve been building betas of Dolphin Emulator, the GameCube and Wii emulator, whenever we or its users noticed a new site note, but recently the app devs started to use a rolling release cycle and celebrated, after 8 years, with a new proper release named 2407. About the road ahead, the new logo and more, you can read in the fresh blog post here.

Inbox Pager, Read and write e-mails, was updated to 7.0 after a three and a half years hiatus.

SkinBread was updated to 1.3 bringing a new key, hence if you have the app installed you’d need to uninstall then reinstall to get future updates. While we’ve written about the care needed for keys in the past, unfortunately we still see developers end up losing their own from time to time.

Removed Apps

3 apps were removed

PiliPala and PiliPalaX were disabled due to the usage of a non-free captcha lib, GeeTest (极验), for the in-app login page. Currently Pilipala still uses the “old” webview login page, while the problematic in-app login is work-in-progress, so GeeTest is patched out and we can rebuild the app in the next cycles. Unfortunately PilipalaX has switched to the new in-app login page so we are not sure what the future holds.

Selfnet WIFI-Setup, as with other apps like it, got replaced by the new geteduroam which is not yet available in F-Droid.

Newly Added Apps

5 more apps were newly added
  • Play NotePad – Robust note-taking app with multimedia and organizational features
  • Rank-My-Favs – Rank your favorite things, using simple pair-wise matchups
  • Rush – App to search, view, save and share lyrics like Spotify!
  • Sharing – Share files and apps over HTTP
  • VAT Calculator – Calculate VAT for any country in the world

Updated Apps

131 more apps were updated

Thank you for reading this week’s TWIF 🙂

Please subscribe to the RSS feed in your favourite RSS application to be updated of new TWIFs when they come up.

You are welcome to join the TWIF forum thread. If you have any news from the community, post it there, maybe it will be featured next week 😉

To help support F-Droid, please check out the donation page and contribute what you can.

Qualcomm’s Oryon core: a long time in the making

In 2019, a startup called Nuvia came out of stealth mode. Nuvia was notable because its leadership included several notable chip architects, including one who used to work for Apple. Apple chips like the M1 drew recognition for landing in the same performance neighborhood as AMD and Intel’s offerings while offering better power efficiency. Nuvia had similar goals, aiming to create a power efficient core that could could surpass designs from AMD, Apple, Arm, and Intel. Qualcomm acquired Nuvia in 2021, bringing its staff into Qualcomm’s internal CPU efforts. Bringing on Nuvia staff rejuvenated Qualcomm’s internal CPU efforts, which led to the Oryon core in Snapdragon X Elite. Oryon arrives nearly five years after Nuvia hit the news, and almost eight years after Qualcomm last released a smartphone SoC with internally designed cores. For people following Nuvia’s developments, it has been a long wait. ↫ Chips and Cheese Now that the Snapdragon X Elite and Pro chips are finally making their way to consumers, we’re also finally starting to see proper deep-dives into the brand new hardware. Considering this will set the standard for ARM laptops for a long time to come – including easy availability of powerful ARM Linux laptops – I really want to know every single quirk or performance statistic we can find.

How to earn money online

How to make online earnings from Mobile
#makeonlinemoney#onlinemoney#onlineearningapp
how to make money online,make money online,how to earn money online,online earning,best way to make money online,online earning app,earn money online,online earning in pakistan,online earning without investment,how to make money online 2023,how to make money,ways to make money online,make money online for free,how to make money on youtube,make money online fast,how to trade earnings season,making money online,online business,online earning for students

PreviousNext: Co-contribution with clients: A revision UI API for all entity types

The tale of an eight-year, collaborative effort to build a generic revision UI into Drupal 10.1.0, bringing a major piece of functionality to core.

by
lee.rowlands
/ 11 July 2024

As we discussed in our previous post, Improving Drupal with the help of your clients, we’re fortunate to work with a client like ServiceNSW that is committed to open-source contribution. So when their challenges require solutions that will also benefit the whole Drupal community, they’re on board!

In the beginning, there were nodes

Since Drupal 4.7 was released in 2006, nodes have had a revision user interface (UI). The UI allows editors to view revision history and specific revisions, as well as revert and delete revisions.

A lot has changed since Drupal 4.7. We received revision support for many more entities, but Node remained the only one with a revision UI in core.

Supporting client needs through contrib 

Our client, Service NSW, makes heavy use of block content entities for Notices displayed throughout the site. These are regularly updated. Editors need to be able to see what has changed and when, revert to previous versions, and view revision logs when needed. 

Since Drupal 8, much of the special treatment of Node entities has been replaced with generic Entity API functionality. Nodes were no longer the only tool in the content-modelling toolbox, with this one exception: revision UI.

The code for node’s revision UI lives in the node module. It’s dependent on hard-coded permission checking and uses routing and forms outside the entity API.

This meant that for every additional entity type for which Service NSW needed a revision UI, those parts needed to be recreated repeatedly.

As you can imagine, this approach quickly becomes hard to maintain due to the amount of duplication. 

The journey to core

Having identified that Drupal core needed a generic entity revision UI API (it already had generic APIs for entity routing, editing, viewing and access), we set to work on this missing piece of the puzzle.

We found an existing core issue for it, and in 2015, posted our first patch for it. 

This began an 8-year journey to bring a major piece of functionality to core.

Over the course of many re-rolls, we released contributed modules built on top of the patch:

Finally, with the release of Drupal 10.1.0 in 2023, any entity-type could opt into a revision UI. The Drupal 10.1.0 release opted-in for Block Content entities, making that contributed module obsolete. Then later in 2023, the release of Drupal 10.2.0 saw Media entities use this new API. In early 2024, support for Taxonomy terms was added and released in 10.3.0.

Challenges along the way

The biggest challenges encountered were keeping the patch up to date with core as it changed and navigating the contribution process. Over the years, there have been over 120 patch files and 300+ comments on the issue!

Another challenge was the lack of an access API for checking access to revisions. 

The entity API supported a set of entity access operations — view, update, delete — but no revision operations were considered. The node module had hard-coded permissions e.g. ‘view all revisions’ and ‘revert all revisions’. 

To have a generic entity revision UI API, we needed a generic way to check access to the operations the UI would make available.

Initially, we tried to include this with the revision UI changes. However, it became increasingly difficult to get both major pieces of functionality simultaneously. So, in 2019, this was split into a separate issue, and the original issue was postponed.

With efforts from our team, Service NSW and many other individuals and companies in the Drupal community, this made it into Drupal core in 2021. It was first available in Drupal 9.3.0. Adding a whole new major access API is not without its challenges, though. Unfortunately, this change resulted in a security release shortly after 9.3.0 came out. Luckily it was caught and fixed before many sites had updated to 9.3.0.

Collaborative contribution

Adding a new feature to Drupal core is a large undertaking. Doing it in a client-agency collaboration provides an ideal model for how open source should work. 

Developers from PreviousNext and Service NSW worked with the broader Drupal community to bring this feature to fruition.

Our developers have experience contributing to core and were able to guide Service NSW developers through the process. Being credited on large features like this is a major feather in the cap for both individual developers and their organisations.

Wrapping up

Together, we helped integrate a generic revision UI into Drupal 10.1.0. All of the developers involved received issue credits for their work. 

This was a significant effort over eight years, requiring collaboration with individuals and organisations in the wider Drupal community to build consensus. This level of shared commitment helps drive the Drupal open source project forward, recognising that what benefits one can benefit all.

So, what are the next big features you and your clients could work on? Or is there something you want to bring to core, as an individual, group or organisation? Either way, we’d love to chat and collaborate!

Contributors

  • dpi
  • acbramley
  • jibran
  • manuel garcia
  • chr.fritsch
  • AaronMcHale
  • Nono95230
  • capysara
  • darvanen
  • ravi.shankar
  • Spokje
  • thhafner
  • larowlan
  • smustgrave
  • mstrelan
  • mikestar5
  • andregp
  • joachim
  • nterbogt
  • shubhangi1995
  • catch
  • mkalkbrenner
  • Berdir
  • Sam152
  • Xano