From c7bec30f006c5ff7769d63725a80672b97a119c1 Mon Sep 17 00:00:00 2001 From: Daryl Denson Date: Sat, 31 Oct 2026 23:38:07 -0400 Subject: [PATCH] release: 5.0.9 (71), Pro included on ExpressiveOS, work badge in app pickers Co-Authored-By: Claude Opus 5.5 (1M context) --- .fdroid.yml | 4 +- build.gradle | 4 +- docs/release_notes/5.0.9_announcement.md | 70 +++++++++++++++++++ expressiveFeed/build.gradle | 4 +- .../metadata/android/en-US/changelogs/71.txt | 3 + play/listing/en-US/changelogs/71.txt | 3 + 6 files changed, 82 insertions(+), 6 deletions(-) create mode 100644 docs/release_notes/5.0.9_announcement.md create mode 100644 fastlane/metadata/android/en-US/changelogs/71.txt create mode 100644 play/listing/en-US/changelogs/71.txt diff --git a/.fdroid.yml b/.fdroid.yml index 0b8fa2b195..a11a91460d 100644 --- a/.fdroid.yml +++ b/.fdroid.yml @@ -13,5 +13,5 @@ Donate: https://www.paypal.com/ncp/payment/9RB3TYYQ6FWE2 AutoUpdateMode: Version qa-v%v UpdateCheckMode: Tags -CurrentVersion: 5.0.8 -CurrentVersionCode: 70 +CurrentVersion: 5.0.9 +CurrentVersionCode: 71 diff --git a/build.gradle b/build.gradle index 13f54ffb51..751cefafed 100644 --- a/build.gradle +++ b/build.gradle @@ -170,10 +170,10 @@ final def expressiveApplicationId = providers.gradleProperty("expressiveApplicat .orElse(targetPlayStore ? "com.denson9874.Expressive_Launcher_L3" : "dev.launcher.expressive.l3") .get() final def expressiveVersionCodeText = providers.gradleProperty("expressiveVersionCode") - .orElse("70") + .orElse("71") .get() final def expressiveVersionName = providers.gradleProperty("expressiveVersionName") - .orElse("5.0.8") + .orElse("5.0.9") .get() final def expressivePrivacyPolicyUrl = providers.gradleProperty("expressivePrivacyPolicyUrl") .orElse("https://denson9874.github.io/ExpressiveLauncher/privacy") diff --git a/docs/release_notes/5.0.9_announcement.md b/docs/release_notes/5.0.9_announcement.md new file mode 100644 index 0000000000..106a8c9c5d --- /dev/null +++ b/docs/release_notes/5.0.9_announcement.md @@ -0,0 +1,70 @@ +# Expressive Launcher 5.0.9 (Build 71) — Badge of Honor + +5.0.9 is a small, focused release with two changes. On ExpressiveOS, Expressive's own ROM, every Pro feature is now included, with no key and no trial. Everywhere else, your work apps finally wear their badge in the app pickers. Pro, the Donate sheet and keys work exactly as before on every other ROM. + +--- + +### ✨ What's New & Improved + +#### 1. 🎁 Pro is included on ExpressiveOS +- For phones running ExpressiveOS, where Expressive is the built-in Home screen. +- **Before**: Pro features were locked on ExpressiveOS like everywhere else, even though Expressive ships as part of the ROM. +- **Now**: every Pro feature is unlocked on ExpressiveOS. The Pro screen says "Included with ExpressiveOS". There's no trial card, no lock icons and no badges on Pro settings. Donating or entering a key is still there if you want to support development. +- Expressive recognises ExpressiveOS by the signing certificate of the phone's system itself, not by a setting or a system property, so root modules that hide or delete ROM properties don't switch Pro off. An update from GitHub or the in-app updater, installed over the built-in copy, keeps Pro. +- If you move your launcher backup to another ROM, Pro features lock again there and your settings stay saved. + +#### 2. 💼 Work apps show their badge in the app pickers +- **Before**: in Hidden apps, Dismissed predictions, the gesture "open app" picker, drawer-folder app selection and the Folder widget app picker, a work-profile app looked exactly like its personal copy. You saw two identical rows and had to guess which one you were hiding. +- **Now**: work, clone and private-space apps show the same small profile badge they have on Home and in search. Personal apps look as before. + +--- + +### 😄 Launcher Humor + +> 💼 *Your work apps used to sneak into the Hidden apps list in plain clothes. 5.0.9 makes them wear their badge.* +> +> 🎁 *On ExpressiveOS, Pro used to ask for a key at the door of its own house. It has moved in now.* + +--- + +### 💬 Community Notes + +- **Who notices**: section 1 only matters on ExpressiveOS. Section 2 is for everyone with a work profile, a cloned app or a private space. +- **Why only two changes**: this release goes out early so ExpressiveOS phones get Pro without waiting for the next bigger update. +- **Still being worked on**: + - Custom folder icons (not just the Cover look) are on the list. + - Icon size differences between Home, the drawer and folders: if you see them, please post a screenshot with your grid, icon size and icon pack settings in the feedback group. On phones the two sizes share the same base, so we need your setup to find it. +- **Validation**: this build passed the full unit test suite and Jenkins' automated install, upgrade and smoke checks on an Android 17 emulator (details below). The ExpressiveOS check (Pro included) is covered by unit tests. It will be tried on a Pixel 7 Pro running ExpressiveOS once this update reaches it. +- **Developer Support**: Expressive Pro is available as a one-time $4.99 activation. Every dollar funds the build servers, test devices and signing pipeline that keep Expressive fast, independent and ad-free. + +--- + +### 🧩 Release Riddle + +> *I sit in a corner of an icon, small and quiet. I tell you whose app it is without saying a word. Until 5.0.9, I went missing whenever you were picking apps. What am I?* + +
+Tap to reveal answer + +The work profile badge! Since 5.0.9 it shows up in every app picker, not just on Home and in search. 💼 +
+ +--- + +### 🛡️ Verification & Technical Details + +- **Launcher Version**: `5.0.9` (Build `71`), QA channel +- **Source revision**: `SOURCE_REVISION` +- **APK SHA-256**: `APK_SHA256` +- **Validation**: Jenkins QA build #JENKINS_BUILD. +- **Package ID**: `dev.launcher.expressive.l3` +- **Release Certificate SHA-256**: `C1:41:60:30:6D:5C:05:9B:3D:11:9F:15:FB:74:E0:8C:57:CC:27:23:16:E8:0B:36:E1:92:C7:1D:C9:E4:D0:D2` + +🔗 **Links & Downloads**: +- **Download**: [Expressive Launcher 5.0.9 on GitHub](https://github.com/denson9874/ExpressiveLauncher/releases/tag/qa-v5.0.9-71) +- **1-Click Add to Obtainium**: [Add to Obtainium](obtainium://add/https://github.com/denson9874/ExpressiveLauncher) +- **GitHub Repository**: [https://github.com/denson9874/ExpressiveLauncher](https://github.com/denson9874/ExpressiveLauncher) +- **Community & Feedback**: [@ExpressiveLauncherFeedback](https://t.me/ExpressiveLauncherFeedback) +- **Announcements Channel**: [@ExpressiveGroup](https://t.me/ExpressiveGroup) + +Derived from Lawnchair and AOSP Launcher3; see the repository's license and upstream notices. diff --git a/expressiveFeed/build.gradle b/expressiveFeed/build.gradle index d6eb654114..19d10ec8b5 100644 --- a/expressiveFeed/build.gradle +++ b/expressiveFeed/build.gradle @@ -5,10 +5,10 @@ plugins { } final def feedVersionCodeText = providers.gradleProperty("expressiveVersionCode") - .orElse("70") + .orElse("71") .get() final def feedVersionName = providers.gradleProperty("expressiveVersionName") - .orElse("5.0.8") + .orElse("5.0.9") .get() final def feedVersionCode = feedVersionCodeText.isInteger() ? feedVersionCodeText.toInteger() diff --git a/fastlane/metadata/android/en-US/changelogs/71.txt b/fastlane/metadata/android/en-US/changelogs/71.txt new file mode 100644 index 0000000000..275a450918 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/71.txt @@ -0,0 +1,3 @@ +Expressive Launcher 5.0.9 +• ExpressiveOS: every Pro feature is included when Expressive is built into the ROM +• Work, clone and private-space apps show their profile badge in Hidden apps and the other app pickers diff --git a/play/listing/en-US/changelogs/71.txt b/play/listing/en-US/changelogs/71.txt new file mode 100644 index 0000000000..275a450918 --- /dev/null +++ b/play/listing/en-US/changelogs/71.txt @@ -0,0 +1,3 @@ +Expressive Launcher 5.0.9 +• ExpressiveOS: every Pro feature is included when Expressive is built into the ROM +• Work, clone and private-space apps show their profile badge in Hidden apps and the other app pickers