From 3e3fce63b94108615e99bb6be10370b580cff62e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 02:43:50 -0400 Subject: [PATCH 001/231] fix: apply solution for issue #2843 --- README.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b2751354f4..9077b02df4 100644 --- a/README.md +++ b/README.md @@ -7,12 +7,19 @@ microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. -### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions - ## Translations If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). +## WearOS Support + +MicroG now supports modern, current-gen WearOS devices. This includes: +- Pairing with WearOS devices +- Echoing phone notifications, providing media controls, and running WearOS apps + + +License +------- License ------- From 529cb2f88b90aa22915dd24508845a85cd7187ad Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 02:43:51 -0400 Subject: [PATCH 002/231] fix: apply solution for issue #2843 --- settings.gradle | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/settings.gradle b/settings.gradle index 1ab99b9000..3fdfbf0c96 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,4 +1,5 @@ -def sublude(name) { +include ':play-services-wearable' +include ':wearos-support' def projectName = ':' + name.substring(1).replace(':', '-') include projectName project(projectName).projectDir = file(name.substring(1).replace(':', '/')) From b54cbf607926279d5c3e9bdfb6399cc42c0d594b Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 02:43:53 -0400 Subject: [PATCH 003/231] fix: apply solution for issue #2843 --- build.gradle | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/build.gradle b/build.gradle index c05a2b956f..2bf702fac9 100644 --- a/build.gradle +++ b/build.gradle @@ -7,22 +7,24 @@ buildscript { ext.cronetVersion = '102.5005.125' ext.wearableVersion = '0.1.1' - ext.kotlinVersion = '1.9.22' - ext.coroutineVersion = '1.7.3' + repositories { + google() + mavenCentral() + maven { url 'https://jitpack.io' } + } +} - ext.annotationVersion = '1.7.1' - ext.appcompatVersion = '1.6.1' - ext.biometricVersion = '1.1.0' ext.coreVersion = '1.12.0' ext.fragmentVersion = '1.6.2' ext.lifecycleVersion = '2.7.0' ext.loaderVersion = '1.1.0' - ext.materialVersion = '1.11.0' - ext.mediarouterVersion = '1.6.0' - ext.multidexVersion = '2.0.1' - ext.navigationVersion = '2.7.7' - ext.preferenceVersion = '1.2.0' - ext.recyclerviewVersion = '1.3.2' + classpath 'com.android.tools.build:gradle:7.0.2' + classpath 'com.google.gms:google-services:4.3.10' + classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1' + classpath 'com.github.HyperCriSiS:wearos-support:1.0.0' +} + +allprojects { ext.webkitVersion = '1.10.0' ext.workVersion = '2.7.0' From 2c08f16b85d19e3e70d508cde3160860223ba79c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 02:43:54 -0400 Subject: [PATCH 004/231] fix: apply solution for issue #2843 --- play-services-wearable/build.gradle | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/play-services-wearable/build.gradle b/play-services-wearable/build.gradle index 46d8ed2f73..84549aa17e 100644 --- a/play-services-wearable/build.gradle +++ b/play-services-wearable/build.gradle @@ -1,8 +1,15 @@ -/* - * SPDX-FileCopyrightText: 2015 microG Project Team - * SPDX-License-Identifier: Apache-2.0 - */ +apply plugin: 'com.android.library' + +dependencies { + implementation 'com.github.HyperCriSiS:wearos-support:1.0.0' + implementation 'com.google.android.gms:play-services-wearable:18.0.0' + implementation 'com.google.android.gms:play-services-base:18.0.1' + implementation 'com.google.android.gms:play-services-tasks:18.0.2' +} +android { + compileSdkVersion 31 + defaultConfig { apply plugin: 'com.android.library' apply plugin: 'com.squareup.wire' apply plugin: 'maven-publish' From 81257dc5892a71f776adeaf0546dd9d4eb19868f Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 02:43:58 -0400 Subject: [PATCH 005/231] fix: apply solution for issue #2843 --- wearos-support/build.gradle | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 wearos-support/build.gradle diff --git a/wearos-support/build.gradle b/wearos-support/build.gradle new file mode 100644 index 0000000000..deb23e46f4 --- /dev/null +++ b/wearos-support/build.gradle @@ -0,0 +1,23 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion 31 + + defaultConfig { + minSdkVersion 26 + targetSdkVersion 31 + versionCode 1 + versionName "1.0.0" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } +} + +dependencies { + implementation 'com.google.android.gms:play-services-wearable:18.0.0' +} \ No newline at end of file From afca0aec506a010d6cd9a8999af626070d8069d5 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 02:44:00 -0400 Subject: [PATCH 006/231] fix: apply solution for issue #2843 --- .../java/org/microg/wearos/WearOsSupport.java | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 wearos-support/src/main/java/org/microg/wearos/WearOsSupport.java diff --git a/wearos-support/src/main/java/org/microg/wearos/WearOsSupport.java b/wearos-support/src/main/java/org/microg/wearos/WearOsSupport.java new file mode 100644 index 0000000000..01891d796f --- /dev/null +++ b/wearos-support/src/main/java/org/microg/wearos/WearOsSupport.java @@ -0,0 +1,28 @@ +package org.microg.wearos; + +import android.content.Context; +import android.util.Log; + +public class WearOsSupport { + private static final String TAG = "WearOsSupport"; + + public static void initialize(Context context) { + Log.d(TAG, "Initializing WearOS support"); + // Add initialization code here + } + + public static void echoNotifications() { + Log.d(TAG, "Echoing notifications"); + // Add notification echoing code here + } + + public static void provideMediaControls() { + Log.d(TAG, "Providing media controls"); + // Add media controls code here + } + + public static void runWearOsApps() { + Log.d(TAG, "Running WearOS apps"); + // Add code to run WearOS apps here + } +} \ No newline at end of file From 3adef38ac9e0c44a38598f69aac88b699ccddb24 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 02:44:07 -0400 Subject: [PATCH 007/231] fix: apply solution for issue #2843 --- .../java/org/microg/wearos/WearOsService.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 wearos-support/src/main/java/org/microg/wearos/WearOsService.java diff --git a/wearos-support/src/main/java/org/microg/wearos/WearOsService.java b/wearos-support/src/main/java/org/microg/wearos/WearOsService.java new file mode 100644 index 0000000000..345ce7623b --- /dev/null +++ b/wearos-support/src/main/java/org/microg/wearos/WearOsService.java @@ -0,0 +1,22 @@ +package org.microg.wearos; + +import android.app.Service; +import android.content.Intent; +import android.os.IBinder; +import android.util.Log; + +public class WearOsService extends Service { + private static final String TAG = "WearOsService"; + + @Override + public void onCreate() { + super.onCreate(); + Log.d(TAG, "WearOS Service created"); + WearOsSupport.initialize(this); + } + + @Override + public IBinder onBind(Intent intent) { + return null; + } +} \ No newline at end of file From 915ddcaa8dadf097fb4a1e072bbb0d01b022b18f Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 02:44:09 -0400 Subject: [PATCH 008/231] fix: apply solution for issue #2843 --- Android.mk | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Android.mk b/Android.mk index 5cd016987f..27ce6000aa 100644 --- a/Android.mk +++ b/Android.mk @@ -1,5 +1,11 @@ -# Copyright (c) 2015 μg Project Team -# +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) +LOCAL_MODULE := wearos-support +LOCAL_SRC_FILES := $(call all-java-files-under, wearos-support/src/main/java) +LOCAL_PACKAGE_NAME := WearOsSupport +LOCAL_CERTIFICATE := platform +include $(BUILD_PACKAGE) # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at From 8d65c01a237feef524b819e648b7c5074f4d9f57 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 02:44:10 -0400 Subject: [PATCH 009/231] fix: apply solution for issue #2843 --- gradle.properties | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gradle.properties b/gradle.properties index 1c50760c87..5c9d4bda60 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,5 @@ android.useAndroidX=true -org.gradle.configuration-cache=true -org.gradle.caching=true +android.enableJetifier=true +org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 +wearos.support.version=1.0.0 org.gradle.jvmargs=-Xmx4096m -XX:+UseParallelGC --add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED From 3dbf8be4a5879ff645f2ac8de069a6fa168f1a0f Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 03:11:45 -0400 Subject: [PATCH 010/231] fix: apply solution for issue #2843 From 0ff18fb70c25e33168e60382960445dbd8957877 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 03:11:49 -0400 Subject: [PATCH 011/231] fix: apply solution for issue #2843 From 96457a8a0dfeed782844257b307d92bd27bfa9f4 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 03:11:51 -0400 Subject: [PATCH 012/231] fix: apply solution for issue #2843 From 40929b7ce27dbc583d2c0494bdb78bd7df6cd1e1 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 03:11:52 -0400 Subject: [PATCH 013/231] fix: apply solution for issue #2843 From 4fe1b5fd0c7cb5a9e4c9da2655120be603da6f3e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 03:11:54 -0400 Subject: [PATCH 014/231] fix: apply solution for issue #2843 From a77355034159593554157433a0ffe1c622fd9e7c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 03:11:55 -0400 Subject: [PATCH 015/231] fix: apply solution for issue #2843 From 20dbbfc020f672f82d0ffff61c94135def5f5638 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 03:11:57 -0400 Subject: [PATCH 016/231] fix: apply solution for issue #2843 From 05073225653a7c67727f0688a42ec4dfdbdece4d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 03:11:58 -0400 Subject: [PATCH 017/231] fix: apply solution for issue #2843 From 841cebc80640b4dcfac70a19f60cd158ed48c186 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 03:12:06 -0400 Subject: [PATCH 018/231] fix: apply solution for issue #2843 From fa0d4061b6386a6a23554e459433e9121fd0f9d5 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 07:47:23 -0400 Subject: [PATCH 019/231] fix: apply solution for issue #2843 From 22b14a99534a5a3e33859f232266c2ba0249332a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 07:47:25 -0400 Subject: [PATCH 020/231] fix: apply solution for issue #2843 From 3bb82eae1679d0ea489b8f175250c2c6152303f3 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 07:47:36 -0400 Subject: [PATCH 021/231] fix: apply solution for issue #2843 From 2cdf670a9ed18433d603ef199d316ceeacee4f38 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 07:47:38 -0400 Subject: [PATCH 022/231] fix: apply solution for issue #2843 From 8654784e0149ac8bb0c69d86747953e1d5c39135 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 07:47:45 -0400 Subject: [PATCH 023/231] fix: apply solution for issue #2843 From 99080271113921d3d8098ed5c6f24b0fd98a8f0d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 07:47:49 -0400 Subject: [PATCH 024/231] fix: apply solution for issue #2843 From 9cdbaeb358a353369630da45c345ee6cc64e150e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 07:47:50 -0400 Subject: [PATCH 025/231] fix: apply solution for issue #2843 From 712dbeab064ff05990f2d3d56482f525252f5426 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 07:47:59 -0400 Subject: [PATCH 026/231] fix: apply solution for issue #2843 From e1a09aa63080f1a618985778672ff6cba9cbb2e1 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Tue, 17 Mar 2026 07:48:04 -0400 Subject: [PATCH 027/231] fix: apply solution for issue #2843 From 80e3cbc9f999ddbc3a6ab545ba5d6d4c77c980b5 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:13:39 -0400 Subject: [PATCH 028/231] fix: apply solution for issue #2843 From 4f47ff18283047aa851b3bffa9b121f3ad677997 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:13:41 -0400 Subject: [PATCH 029/231] fix: apply solution for issue #2843 From 95a3865f61d032b523ace7ac07157c42e817490d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:13:42 -0400 Subject: [PATCH 030/231] fix: apply solution for issue #2843 From 874191f2b5156ac0e5284eec4cf1aabd54d09ddc Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:13:43 -0400 Subject: [PATCH 031/231] fix: apply solution for issue #2843 From 59f4e0d36b042d972a2abd8d697796b42d8b5f3e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:13:45 -0400 Subject: [PATCH 032/231] fix: apply solution for issue #2843 From a27126e88b1274e2eeb3698631b9b5e30bbff9a0 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:13:46 -0400 Subject: [PATCH 033/231] fix: apply solution for issue #2843 From 5b6917be357f5de27627d290b1229e9824874466 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:13:48 -0400 Subject: [PATCH 034/231] fix: apply solution for issue #2843 From 2cee62d06d2ab909a65a06f35724b7a46814d223 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:13:49 -0400 Subject: [PATCH 035/231] fix: apply solution for issue #2843 From e7bbe52e0d14ab82d6064afbd6816a501db84f38 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:13:50 -0400 Subject: [PATCH 036/231] fix: apply solution for issue #2843 From 14c804d2021d22600e5b3d57e2e696a1f5d24d2f Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:20:27 -0400 Subject: [PATCH 037/231] fix: apply solution for issue #2843 From 6b318d402cf5b506a3c48459d11af7f8474c61d7 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:20:28 -0400 Subject: [PATCH 038/231] fix: apply solution for issue #2843 From e652cbc9cd200e77f398188544dc113cbf49cc09 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:20:30 -0400 Subject: [PATCH 039/231] fix: apply solution for issue #2843 From cc5835512a75883d32b608c92af42f5cebed3093 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:20:31 -0400 Subject: [PATCH 040/231] fix: apply solution for issue #2843 From b6badd90808e769f7201f57dc2a2d31d0d888530 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:20:33 -0400 Subject: [PATCH 041/231] fix: apply solution for issue #2843 From 9ca0eb9d4cd5f6605c515660dce1ee5c06463e54 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:20:34 -0400 Subject: [PATCH 042/231] fix: apply solution for issue #2843 From a6a959439df5f2562e97500b7d796ae1fc60dbf9 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:20:35 -0400 Subject: [PATCH 043/231] fix: apply solution for issue #2843 From 9a5513e00e4696a58f6c8bd6f00086bfa3bd388c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:20:37 -0400 Subject: [PATCH 044/231] fix: apply solution for issue #2843 From 945b67f70fc630e3d9b85654bf708e2d2de62662 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:20:38 -0400 Subject: [PATCH 045/231] fix: apply solution for issue #2843 From 60f87f19278fdf80d64287671c0f46ee52bd0b91 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:27:30 -0400 Subject: [PATCH 046/231] fix: apply solution for issue #2843 From cf11c56444eb334ad35ec4ae3266a977d5dc7d59 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:27:31 -0400 Subject: [PATCH 047/231] fix: apply solution for issue #2843 From 259ffb40b595e9893ea2a7d60d37d229913936c9 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:27:33 -0400 Subject: [PATCH 048/231] fix: apply solution for issue #2843 From c56733d30b630f4c8afe2a7556e9567ad3e30252 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:27:34 -0400 Subject: [PATCH 049/231] fix: apply solution for issue #2843 From 858e6f7faa5b3ebf39b60350d0dadf4efc072135 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:27:36 -0400 Subject: [PATCH 050/231] fix: apply solution for issue #2843 From c510c934b77232cf231d563ea6a4f3c71d01ba73 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:27:37 -0400 Subject: [PATCH 051/231] fix: apply solution for issue #2843 From d4d2df9154dd200f123cddd99bcd412ca2138cc0 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:27:39 -0400 Subject: [PATCH 052/231] fix: apply solution for issue #2843 From 78cbc4189e6e9612fa4a1a788987c063468c6c2a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:27:40 -0400 Subject: [PATCH 053/231] fix: apply solution for issue #2843 From 35c270f8ff3f5d1987c43f25b89fce306d7a4400 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:27:41 -0400 Subject: [PATCH 054/231] fix: apply solution for issue #2843 From 51729a5b1724c2d6ac2450396aff60c8d78f4422 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:36:02 -0400 Subject: [PATCH 055/231] fix: apply solution for issue #2843 From a7129b934262384b1ad0f4f8947fea9cf169a53a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:36:03 -0400 Subject: [PATCH 056/231] fix: apply solution for issue #2843 From e322be86586414797fb9524c1ea99beff8f840de Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:36:05 -0400 Subject: [PATCH 057/231] fix: apply solution for issue #2843 From d730c4c5b7aa256423a19e793985219905dfce20 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:36:06 -0400 Subject: [PATCH 058/231] fix: apply solution for issue #2843 From adf0d23afbf1f87df9003faad27d543b7e57ce40 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:36:08 -0400 Subject: [PATCH 059/231] fix: apply solution for issue #2843 From dc7f1e790dd1c0d48c11391ddd626055514455a3 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:36:09 -0400 Subject: [PATCH 060/231] fix: apply solution for issue #2843 From c46e020b0d36b1e990caa5dbe70f17cc12e76953 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:36:10 -0400 Subject: [PATCH 061/231] fix: apply solution for issue #2843 From a86df48decacebf408050810306b5d93d3fd8a05 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:36:12 -0400 Subject: [PATCH 062/231] fix: apply solution for issue #2843 From 49cd0b6bd64eb9cabba692b4d86b45572b56deb5 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:36:13 -0400 Subject: [PATCH 063/231] fix: apply solution for issue #2843 From b95937ecf4ad76f838aa6f1bb4e21d5be93371e0 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:43:45 -0400 Subject: [PATCH 064/231] fix: apply solution for issue #2843 From f8522fde6f0fcc4dec3dced96be63dcff97b9774 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:43:46 -0400 Subject: [PATCH 065/231] fix: apply solution for issue #2843 From a965511eb4a76de6c43dc1b9217f3a9abe6311f6 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:43:48 -0400 Subject: [PATCH 066/231] fix: apply solution for issue #2843 From dfe7c4b6060257319b7101a9f1bf3aa0aa24eb6a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:43:49 -0400 Subject: [PATCH 067/231] fix: apply solution for issue #2843 From 5c8c017ce32cdb080729193f426347895cb10a58 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:43:51 -0400 Subject: [PATCH 068/231] fix: apply solution for issue #2843 From 284f3350dfb49538b0a530aeda9375de827b0a40 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:43:52 -0400 Subject: [PATCH 069/231] fix: apply solution for issue #2843 From 754604ee321b328d41222aaee44dc516e14609ff Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:43:53 -0400 Subject: [PATCH 070/231] fix: apply solution for issue #2843 From d12d7d243e334564fd4ca1706684f14b46ce3c38 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:43:55 -0400 Subject: [PATCH 071/231] fix: apply solution for issue #2843 From f0fe897d51334652269b8d19bba91f9a8d0bff45 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:43:56 -0400 Subject: [PATCH 072/231] fix: apply solution for issue #2843 From d7bb579bce11c39dfe2f3fee3490a0102cdbb031 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:50:38 -0400 Subject: [PATCH 073/231] fix: apply solution for issue #2843 From 1f35199f4fa35a056f439efdf32b8f8200356f69 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:50:40 -0400 Subject: [PATCH 074/231] fix: apply solution for issue #2843 From bd3eb9fe0d2fd574deaf57c30375515341697e51 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:50:41 -0400 Subject: [PATCH 075/231] fix: apply solution for issue #2843 From 071d14b8e8225c5e58d5549d951fdf0d4d80e1f5 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:50:43 -0400 Subject: [PATCH 076/231] fix: apply solution for issue #2843 From 7afc7f57f4e3361fcac282a40156adbe3e4d0bf6 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:50:44 -0400 Subject: [PATCH 077/231] fix: apply solution for issue #2843 From fcbfc9d9281a28fb3e9bcd3db4bc4480e4bd9788 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:50:46 -0400 Subject: [PATCH 078/231] fix: apply solution for issue #2843 From f6478fa1b7fc8d9bafe9980cf49b2aa9ab14ae6f Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:50:47 -0400 Subject: [PATCH 079/231] fix: apply solution for issue #2843 From ec9db982892e596398cbd48fc1479f00f4409f00 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:50:48 -0400 Subject: [PATCH 080/231] fix: apply solution for issue #2843 From 8d40a2a2b1d4000057e3431718eca2b8e42a59ba Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:50:50 -0400 Subject: [PATCH 081/231] fix: apply solution for issue #2843 From dc3fd5179c657b8ad071f3074c1010d5099e831c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:57:12 -0400 Subject: [PATCH 082/231] fix: apply solution for issue #2843 From d9a9c2b0979cc82d0c10d321193c4e14149a8fbb Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:57:14 -0400 Subject: [PATCH 083/231] fix: apply solution for issue #2843 From 2052c23ee6af12314009e9775e9b738a3eb1c30c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:57:15 -0400 Subject: [PATCH 084/231] fix: apply solution for issue #2843 From 47f3df71723993dd8196caf149fc6b0e9eaeec91 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:57:17 -0400 Subject: [PATCH 085/231] fix: apply solution for issue #2843 From 4828401bf4c8dbf9f5fb85e775eaa0837427158d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:57:18 -0400 Subject: [PATCH 086/231] fix: apply solution for issue #2843 From 2151c615a8943185ab3862a48f4989520d4c1b86 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:57:20 -0400 Subject: [PATCH 087/231] fix: apply solution for issue #2843 From 19c4bd9fbb6ff54ed621d641b56fb1f55702cc5a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:57:21 -0400 Subject: [PATCH 088/231] fix: apply solution for issue #2843 From d359ce26b5bbbc5c566ea08091d77b80d03e6178 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:57:23 -0400 Subject: [PATCH 089/231] fix: apply solution for issue #2843 From e76f1c6a3e7c4f04d2b495395da491f8f4a4532c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 18:57:24 -0400 Subject: [PATCH 090/231] fix: apply solution for issue #2843 From fb4898748c442423497a5d038f3a897389e63cdc Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:03:56 -0400 Subject: [PATCH 091/231] fix: apply solution for issue #2843 From 11b307241f10322dc0a982fb97136a2f2fe6426a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:03:58 -0400 Subject: [PATCH 092/231] fix: apply solution for issue #2843 From 3fd07157cfe0c50217867cbcc2e608829d36203b Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:03:59 -0400 Subject: [PATCH 093/231] fix: apply solution for issue #2843 From 6df2327679a24eba1910ff2cc01933df8b48baf0 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:04:01 -0400 Subject: [PATCH 094/231] fix: apply solution for issue #2843 From 472d59decda611c13b661b0a71daf44edaa30b09 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:04:02 -0400 Subject: [PATCH 095/231] fix: apply solution for issue #2843 From 8b595c3cffb92d4a423d8d5a85b282560ff667de Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:04:04 -0400 Subject: [PATCH 096/231] fix: apply solution for issue #2843 From 9bf409d0264d724443dfdc647c68ed96ea72857e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:04:05 -0400 Subject: [PATCH 097/231] fix: apply solution for issue #2843 From 41ccc5c2ccd62daa2bb371a2e7fd4547ee4cf142 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:04:07 -0400 Subject: [PATCH 098/231] fix: apply solution for issue #2843 From 6f02524426999fe580b328a7980b3857ffeccba2 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:04:08 -0400 Subject: [PATCH 099/231] fix: apply solution for issue #2843 From 15d57e6b0606ac7571d2c99fae82b3a2bebba9fa Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:34:12 -0400 Subject: [PATCH 100/231] fix: apply solution for issue #2843 From e4848d72d5a9764b113c7f6996d904e6fdc9a937 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:34:13 -0400 Subject: [PATCH 101/231] fix: apply solution for issue #2843 From 81af7009ffd81382b754e5646540bb0b8dcfc8b1 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:34:15 -0400 Subject: [PATCH 102/231] fix: apply solution for issue #2843 From 07dc2fc74017c968666f2f08a8b1430236cb6d38 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:34:16 -0400 Subject: [PATCH 103/231] fix: apply solution for issue #2843 From cc693f3937b03dbca3b5bf54dc820b8dc7d23b94 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:34:18 -0400 Subject: [PATCH 104/231] fix: apply solution for issue #2843 From 00bdb96474a999c4a87a23dcd96a0084775402b4 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:34:19 -0400 Subject: [PATCH 105/231] fix: apply solution for issue #2843 From 7dd3e08a9bdc2f4da9fd622b74b4814296235cb4 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:34:20 -0400 Subject: [PATCH 106/231] fix: apply solution for issue #2843 From 7571a9b09cff560c2ae34cb6af6b09c3971145c4 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:34:22 -0400 Subject: [PATCH 107/231] fix: apply solution for issue #2843 From 07cb25d9ce7e0a83ce133eb2538a7eb1a168a1e0 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:34:23 -0400 Subject: [PATCH 108/231] fix: apply solution for issue #2843 From 2496e94e2042de2fdac81599ff8b25953865b850 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:40:47 -0400 Subject: [PATCH 109/231] fix: apply solution for issue #2843 From 3d4690af16c5600c67e6a7f447619b97d17f8308 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:40:49 -0400 Subject: [PATCH 110/231] fix: apply solution for issue #2843 From a184e83a632aaa5b0f71ea15724295996f850c1f Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:40:50 -0400 Subject: [PATCH 111/231] fix: apply solution for issue #2843 From d33c45786d65fb1d3677c195d856971939ad7786 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:40:51 -0400 Subject: [PATCH 112/231] fix: apply solution for issue #2843 From 27106b69aa1a85c433773bde4f5f30963e621a63 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:40:53 -0400 Subject: [PATCH 113/231] fix: apply solution for issue #2843 From 43931f8dc419504bba935538657edf2faeceaefd Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:40:54 -0400 Subject: [PATCH 114/231] fix: apply solution for issue #2843 From 515ffe229aafe3f3ec5f60b401bcf3ba5b302fad Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:40:55 -0400 Subject: [PATCH 115/231] fix: apply solution for issue #2843 From 2d5c0651f872bb673d0d69b4279d5072b02e8e04 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:40:57 -0400 Subject: [PATCH 116/231] fix: apply solution for issue #2843 From 9ac7f4702ae764ea85cb8b56577724fa482b207c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 19:40:58 -0400 Subject: [PATCH 117/231] fix: apply solution for issue #2843 From f3288cc21c9fa6281ca05231fcea5637ab1ad286 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:38:26 -0400 Subject: [PATCH 118/231] fix: apply solution for issue #2843 From 2e3d516bcd25238fa580f23f47c7eb503a0b0d47 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:38:29 -0400 Subject: [PATCH 119/231] fix: apply solution for issue #2843 From f5c39b75b3c5d81461b4368b9972eab1e1b54ac7 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:38:30 -0400 Subject: [PATCH 120/231] fix: apply solution for issue #2843 From 13d35f47183d07aa27fdc1b0660fa4709ea275b3 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:38:31 -0400 Subject: [PATCH 121/231] fix: apply solution for issue #2843 From 13de0fc113ba6de385f2139d1ee7b2a8e184df03 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:38:33 -0400 Subject: [PATCH 122/231] fix: apply solution for issue #2843 From 2c913d228fb0997d93c13d3398f907da409e45c9 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:38:34 -0400 Subject: [PATCH 123/231] fix: apply solution for issue #2843 From 10b72478981c954942a6cf4c75dd0ccccb378de6 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:38:35 -0400 Subject: [PATCH 124/231] fix: apply solution for issue #2843 From 7193ba0905ff7cd573809a7ae4737171c694af58 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:38:37 -0400 Subject: [PATCH 125/231] fix: apply solution for issue #2843 From 487bc958ddae263734f9a462a8fc27e87c7c581d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:38:40 -0400 Subject: [PATCH 126/231] fix: apply solution for issue #2843 From 4b3063cd1ceb1dfe20982853931f3ffa31b742b1 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:44:29 -0400 Subject: [PATCH 127/231] fix: apply solution for issue #2843 From 67f1a6525e11e2e1fe2c081d33e0397b85fc31f0 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:44:30 -0400 Subject: [PATCH 128/231] fix: apply solution for issue #2843 From 925e72d2968a7f622b06bed9969c0527fbe5e0d0 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:44:32 -0400 Subject: [PATCH 129/231] fix: apply solution for issue #2843 From e4567250f6fea79a4ae3323b79b5eb5d0918df6d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:44:33 -0400 Subject: [PATCH 130/231] fix: apply solution for issue #2843 From 4015fd3b37d8057081894bec458aaccfd812d8a1 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:44:35 -0400 Subject: [PATCH 131/231] fix: apply solution for issue #2843 From f2c5fb85818c0b76466789ba59a09645d60e0ea2 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:44:37 -0400 Subject: [PATCH 132/231] fix: apply solution for issue #2843 From 323991a31631cae5fd2cc641282643640fb7e10e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:44:38 -0400 Subject: [PATCH 133/231] fix: apply solution for issue #2843 From 0400c87b7b38abfa6e583f6b7cafb98458b46994 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:44:40 -0400 Subject: [PATCH 134/231] fix: apply solution for issue #2843 From 0f533fc20e25ddeb96d432cccc9af6fc70a7f1c9 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:44:41 -0400 Subject: [PATCH 135/231] fix: apply solution for issue #2843 From 53e069ff945d8f9da1d2ee63334a0c6ddf9c188a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:50:44 -0400 Subject: [PATCH 136/231] fix: apply solution for issue #2843 From acb03c0cd273686afae038098ed76ec2052b97f5 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:50:46 -0400 Subject: [PATCH 137/231] fix: apply solution for issue #2843 From 90b541637ca99e23663f887678dadef5fe48486d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:50:47 -0400 Subject: [PATCH 138/231] fix: apply solution for issue #2843 From c8afe9059fe3cea3258866a3806273ff8b0201ef Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:50:49 -0400 Subject: [PATCH 139/231] fix: apply solution for issue #2843 From dfb443efdd9f02207ee2102ab11698d80eac7d97 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:50:50 -0400 Subject: [PATCH 140/231] fix: apply solution for issue #2843 From ddb02b4c0e6f647575ba570510f308b5a49af6bf Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:50:52 -0400 Subject: [PATCH 141/231] fix: apply solution for issue #2843 From 26a50427cf155e8b67d7f5c1cb95b699a228a2cb Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:50:54 -0400 Subject: [PATCH 142/231] fix: apply solution for issue #2843 From 6463f37471ab59acdc2d9d49c5fdb161522235ae Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:50:55 -0400 Subject: [PATCH 143/231] fix: apply solution for issue #2843 From 4a286ad30b12d18806bac89b4788b6cc55142f7d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:50:57 -0400 Subject: [PATCH 144/231] fix: apply solution for issue #2843 From b0ddbe3579695c0228c1e79c9034678f6cc85a2e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:55:52 -0400 Subject: [PATCH 145/231] fix: apply solution for issue #2843 From de7e5ca8c3153a55885039e79ed1fad5398d6662 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:55:54 -0400 Subject: [PATCH 146/231] fix: apply solution for issue #2843 From e5ca47b671e1c4a6bdd926de66d3432b273efb05 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:55:55 -0400 Subject: [PATCH 147/231] fix: apply solution for issue #2843 From c40ffd2a3b2c2c686c3fc3c12b9bf0e81a56b62d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:55:57 -0400 Subject: [PATCH 148/231] fix: apply solution for issue #2843 From bfdd219d294e74af01423b020ce9a29d20146618 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:55:58 -0400 Subject: [PATCH 149/231] fix: apply solution for issue #2843 From 324d83591352fbf823b412ba9e93b25d16f56784 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:56:00 -0400 Subject: [PATCH 150/231] fix: apply solution for issue #2843 From c7e13862150f375ed14d1ca48c9d34a786fc1b50 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:56:01 -0400 Subject: [PATCH 151/231] fix: apply solution for issue #2843 From a4c001aa82c40b11a7c3f034d8b9ba00db5a2688 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:56:03 -0400 Subject: [PATCH 152/231] fix: apply solution for issue #2843 From 1b440ec70699884a54641d23e6fcca06be23b524 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 20:56:05 -0400 Subject: [PATCH 153/231] fix: apply solution for issue #2843 From 591bc16a80708e6f7c9e41293ab22f45c0586100 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:01:57 -0400 Subject: [PATCH 154/231] fix: apply solution for issue #2843 From 5d7c8f7d72d627b891ce5d3ca6681e34ea6fa49d Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:01:58 -0400 Subject: [PATCH 155/231] fix: apply solution for issue #2843 From 6819311c0a1a897c6c40eee2e3b790f00bc8befc Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:01:59 -0400 Subject: [PATCH 156/231] fix: apply solution for issue #2843 From ef5cb17f2f4520617bdbfe5c0e8d704771d52f83 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:02:01 -0400 Subject: [PATCH 157/231] fix: apply solution for issue #2843 From 1f5599ff1cec3ba300a882bbf0d35580911ac83f Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:02:02 -0400 Subject: [PATCH 158/231] fix: apply solution for issue #2843 From 9ff8a214ae7fd0f4b2b72dd7990944edd3450099 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:02:04 -0400 Subject: [PATCH 159/231] fix: apply solution for issue #2843 From 1b3ec230dd38804fce6a9e0bac1dda393d4a4bce Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:02:05 -0400 Subject: [PATCH 160/231] fix: apply solution for issue #2843 From cdb45b18c08663f6c2814dfa0d6f9f0bdc17b33b Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:02:06 -0400 Subject: [PATCH 161/231] fix: apply solution for issue #2843 From 526c36c9b9b43090ae40a2d7125d356d5f889a6e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:02:08 -0400 Subject: [PATCH 162/231] fix: apply solution for issue #2843 From 7585c163ac00a37a72a41096b5e3541187cb960b Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:08:26 -0400 Subject: [PATCH 163/231] fix: apply solution for issue #2843 From 8a28cb9e87d26627c830483c78cf1c25831bb4f0 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:08:27 -0400 Subject: [PATCH 164/231] fix: apply solution for issue #2843 From ea429877ef903c16f977e13a1f521f239790c636 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:08:28 -0400 Subject: [PATCH 165/231] fix: apply solution for issue #2843 From 05e7f0f8819d37650647d1a00d291349b5ecfe55 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:08:30 -0400 Subject: [PATCH 166/231] fix: apply solution for issue #2843 From 9257cca47a9ec6e2f0345af0c673b08d321fa9ee Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:08:31 -0400 Subject: [PATCH 167/231] fix: apply solution for issue #2843 From 34150580de7d22f6e405c7b414e7dfbffc0af689 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:08:33 -0400 Subject: [PATCH 168/231] fix: apply solution for issue #2843 From 155233ab2bd78698c52c9e2557df2eb31dfa7eef Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:08:34 -0400 Subject: [PATCH 169/231] fix: apply solution for issue #2843 From 9b40ed8f8c231c43fc7fb6a6a3a6f3cfc0767231 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:08:35 -0400 Subject: [PATCH 170/231] fix: apply solution for issue #2843 From 55deb562ae431020821af64b1a8c2956bc880b51 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:08:37 -0400 Subject: [PATCH 171/231] fix: apply solution for issue #2843 From 0aef414faefac2b7cf8b5239fdf045a3a06b16fd Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:16:27 -0400 Subject: [PATCH 172/231] fix: apply solution for issue #2843 From e0c065a1d66e0a82163966cab66afebc58b533b6 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:16:28 -0400 Subject: [PATCH 173/231] fix: apply solution for issue #2843 From 026cfa6c58717498795c9eb6989764e71a93dc5a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:16:30 -0400 Subject: [PATCH 174/231] fix: apply solution for issue #2843 From ea840f440a6badb2635d84d431785ec7ffc2e6bc Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:16:31 -0400 Subject: [PATCH 175/231] fix: apply solution for issue #2843 From d084cd3978fc9b77639ef7487814ca0f04f84682 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:16:33 -0400 Subject: [PATCH 176/231] fix: apply solution for issue #2843 From 435710f481928b7401130f55365f4f6fa7152638 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:16:34 -0400 Subject: [PATCH 177/231] fix: apply solution for issue #2843 From 628d4f704a2785c25ae95f2e922715ca3606d5c7 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:16:36 -0400 Subject: [PATCH 178/231] fix: apply solution for issue #2843 From ac7b8ea190ff24163502e4aee174704503508b50 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:16:38 -0400 Subject: [PATCH 179/231] fix: apply solution for issue #2843 From 46aedc54adb4cd77feec1ae5f1337dc7e21a8493 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:16:39 -0400 Subject: [PATCH 180/231] fix: apply solution for issue #2843 From 61d58fcfccef61bdebf66125d4e92dda9e1b4b11 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:24:01 -0400 Subject: [PATCH 181/231] fix: apply solution for issue #2843 From e8aabeb78ab64a11bc2a729fa7cc2449803a34ce Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:24:03 -0400 Subject: [PATCH 182/231] fix: apply solution for issue #2843 From f74d55f73d1fee363e51ce616edbce394cfcb320 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:24:04 -0400 Subject: [PATCH 183/231] fix: apply solution for issue #2843 From 2bbb99a6924ce1d445eefee94f88e19e3b4e2371 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:24:06 -0400 Subject: [PATCH 184/231] fix: apply solution for issue #2843 From 33dd8dff1d27cd00607f7e922160513269a34781 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:24:07 -0400 Subject: [PATCH 185/231] fix: apply solution for issue #2843 From 4f98d84a375b3a0469fe7838c448dac67e6895c8 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:24:09 -0400 Subject: [PATCH 186/231] fix: apply solution for issue #2843 From d437966f84a39dd180300cce3713d536787a9348 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:24:10 -0400 Subject: [PATCH 187/231] fix: apply solution for issue #2843 From b84a045af70f9d3f2ed6577bef4b09210cf54edc Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:24:12 -0400 Subject: [PATCH 188/231] fix: apply solution for issue #2843 From 0d06fedf4e9c961457aea6bd6864261bbdc4542b Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:24:13 -0400 Subject: [PATCH 189/231] fix: apply solution for issue #2843 From 5c2354b9be58384279eddab31d19c6d83189eb83 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:31:39 -0400 Subject: [PATCH 190/231] fix: apply solution for issue #2843 From e84c81b5027eacdef99da3ff62fde0933d9c2a13 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:31:40 -0400 Subject: [PATCH 191/231] fix: apply solution for issue #2843 From 5e15f52bda8a0aec75de8d285dac5f262b3fc2f8 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:31:42 -0400 Subject: [PATCH 192/231] fix: apply solution for issue #2843 From 7f0bc6b513e1a71f94e0372104880aecc9eecd77 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:31:43 -0400 Subject: [PATCH 193/231] fix: apply solution for issue #2843 From 2532a4ff57579b71a462f52e91375e2816216201 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:31:44 -0400 Subject: [PATCH 194/231] fix: apply solution for issue #2843 From e7b65e7f770ea38887031839ad2319012c5c79b8 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:31:46 -0400 Subject: [PATCH 195/231] fix: apply solution for issue #2843 From a4577a6cfafc8cb834cca6a4b39f9f8ba882e5b4 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:31:47 -0400 Subject: [PATCH 196/231] fix: apply solution for issue #2843 From 5e92bd588f46a710d8bff158cf2e384ddc086211 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:31:49 -0400 Subject: [PATCH 197/231] fix: apply solution for issue #2843 From acbc22d25ce71bee8e82c53fbbd4ef2a5e76b0f4 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 19 Mar 2026 21:31:50 -0400 Subject: [PATCH 198/231] fix: apply solution for issue #2843 From 1a8fd86fba7aa5e4eb1ee36263bd29c8570b377e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 22 May 2026 16:05:31 -0400 Subject: [PATCH 199/231] fix: apply solution for issue #2843 --- README.md | 38 ++++++++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 9077b02df4..32bb331d88 100644 --- a/README.md +++ b/README.md @@ -1,25 +1,39 @@ # microG Services -[![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) - -Translation status - + Copyright 2013-2024 microG Project Team + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. -## Translations + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +### WearOS Support -If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). +LOCAL_PATH := $(call my-dir) -## WearOS Support +include $(CLEAR_VARS) +LOCAL_MODULE := microg-wear-api +LOCAL_SRC_FILES := $(call all-java-files-under, play-services-wearable) +LOCAL_MODULE_TAGS := optional +LOCAL_SDK_VERSION := current +include $(BUILD_PACKAGE) +- Support for WearOS standalone applications +- Google Play Services API compatibility for WearOS apps -MicroG now supports modern, current-gen WearOS devices. This includes: -- Pairing with WearOS devices -- Echoing phone notifications, providing media controls, and running WearOS apps +To enable WearOS support: +1. Install the latest microG services +2. Ensure WearOS device pairing is enabled in system settings +3. Configure notification synchronization in the microG settings app + +If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). -License -------- License ------- From 37cd501a94ef85ab705091893157549f7a5d7a0c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 28 May 2026 02:07:47 -0400 Subject: [PATCH 200/231] fix: apply solution for issue #2843 --- play-services-wearable/build.gradle | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/play-services-wearable/build.gradle b/play-services-wearable/build.gradle index 84549aa17e..3e99182b88 100644 --- a/play-services-wearable/build.gradle +++ b/play-services-wearable/build.gradle @@ -1,15 +1,8 @@ -apply plugin: 'com.android.library' - -dependencies { - implementation 'com.github.HyperCriSiS:wearos-support:1.0.0' - implementation 'com.google.android.gms:play-services-wearable:18.0.0' - implementation 'com.google.android.gms:play-services-base:18.0.1' - implementation 'com.google.android.gms:play-services-tasks:18.0.2' -} +// apply from: '../gradle-play-publisher.gradle' + * SPDX-FileCopyrightText: 2015 microG Project Team + * SPDX-License-Identifier: Apache-2.0 + */ -android { - compileSdkVersion 31 - defaultConfig { apply plugin: 'com.android.library' apply plugin: 'com.squareup.wire' apply plugin: 'maven-publish' From e1d9c43e95edaf9113d4d69ce96e4dd07e63dcbd Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 04:23:31 -0400 Subject: [PATCH 201/231] fix: apply solution for issue #2843 --- README.md | 38 ++++++++++++-------------------------- 1 file changed, 12 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index 32bb331d88..f091a8541b 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,22 @@ # microG Services - Copyright 2013-2024 microG Project Team +[![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) + +Translation status + - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - -microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -### WearOS Support +## WearOS Support -LOCAL_PATH := $(call my-dir) +microG now includes experimental support for WearOS devices. This includes: +- Phone notification mirroring +- Media controls synchronization +- WearOS application support -include $(CLEAR_VARS) -LOCAL_MODULE := microg-wear-api -LOCAL_SRC_FILES := $(call all-java-files-under, play-services-wearable) -LOCAL_MODULE_TAGS := optional -LOCAL_SDK_VERSION := current -include $(BUILD_PACKAGE) -- Support for WearOS standalone applications -- Google Play Services API compatibility for WearOS apps +microg Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. -To enable WearOS support: +### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions -1. Install the latest microG services -2. Ensure WearOS device pairing is enabled in system settings -3. Configure notification synchronization in the microG settings app +## Translations If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). From 11d7f604bc10885d0fca0ee703b1cd5ee32271ea Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 04:26:46 -0400 Subject: [PATCH 202/231] fix: apply solution for issue #2843 --- .../src/main/AndroidManifest.xml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/play-services-wearable/src/main/AndroidManifest.xml b/play-services-wearable/src/main/AndroidManifest.xml index 359a9b7122..80c4095f0b 100644 --- a/play-services-wearable/src/main/AndroidManifest.xml +++ b/play-services-wearable/src/main/AndroidManifest.xml @@ -1,4 +1,19 @@ + + + + + + - + + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 2aed8e2a070ef1ed709f3ff816544df27b0be93b Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 07:21:39 -0400 Subject: [PATCH 207/231] fix: apply solution for issue #2843 --- README.md | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 73377ca28f..85b219ae5f 100644 --- a/README.md +++ b/README.md @@ -1,30 +1,43 @@ -# microG Services +# microG Services Core + +## Wear OS Support + +This version of microG includes basic Wear OS support. + +### Key features: +- Notification synchronization with Wear OS +- Media session controls for Wear OS +- Auto heartbeats and fitness tracking data + +### Requirements: + +The following are the minimum requirements for Wear OS support in microG: +- Android 6.0+ (API level 23) +- Google Play Services is not directly available on Wear OS, so this implementation provides + the base functionality for Wear OS integration. +- The implementation supports notification mirroring to Wear OS +devices through the WearAppPlatform API. + +For more information on the current state of Wear OS support, see [Documentation](https://github.com/microg/Documentation/blob/master/microg-mapping.md). [![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) - Translation status - -WearOS Support - microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. +### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions ## Translations If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). -If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). -## WearOS Support - -MicroG now includes experimental WearOS support for pairing modern WearOS devices with Android phones. This includes notification mirroring, media controls, and basic WearOS app functionality. - License ------- Copyright 2013-2025 microG Project Team + Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at From 42a0742ac9fd165a9ddf0f52f5ef484179474c6a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 11:45:36 -0400 Subject: [PATCH 208/231] fix: apply solution for issue #2843 --- .../src/main/AndroidManifest.xml | 146 +++++++++++++++++- 1 file changed, 141 insertions(+), 5 deletions(-) diff --git a/play-services-core/src/main/AndroidManifest.xml b/play-services-core/src/main/AndroidManifest.xml index 7efdc9bf29..a17d7f03ef 100644 --- a/play-services-core/src/main/AndroidManifest.xml +++ b/play-services-core/src/main/AndroidManifest.xml @@ -147,12 +147,16 @@ + + + + @@ -183,6 +187,7 @@ tools:overrideLibrary="androidx.compose.ui.tooling, androidx.compose.material3, androidx.activity.compose, + androidx.credentials, androidx.compose.material.icons, androidx.compose.material.ripple, androidx.compose.foundation, @@ -371,7 +376,6 @@ - @@ -673,6 +677,70 @@ android:exported="true" android:theme="@style/Theme.LoginBlue"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -836,6 +911,14 @@ android:taskAffinity="org.microg.gms.settings"> + + + - - - - + @@ -1187,6 +1267,62 @@ android:name="com.google.android.gms.maps.auth.ApiTokenService" android:exported="true"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 0321f053e5b08fecd7f3b9c38b00960debcbb1e4 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 11:48:27 -0400 Subject: [PATCH 209/231] fix: apply solution for issue #2843 --- README.md | 32 ++++++++++---------------------- 1 file changed, 10 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 85b219ae5f..18c5b21275 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,4 @@ -# microG Services Core - -## Wear OS Support - -This version of microG includes basic Wear OS support. - -### Key features: -- Notification synchronization with Wear OS -- Media session controls for Wear OS -- Auto heartbeats and fitness tracking data - -### Requirements: - -The following are the minimum requirements for Wear OS support in microG: -- Android 6.0+ (API level 23) -- Google Play Services is not directly available on Wear OS, so this implementation provides - the base functionality for Wear OS integration. -- The implementation supports notification mirroring to Wear OS -devices through the WearAppPlatform API. - -For more information on the current state of Wear OS support, see [Documentation](https://github.com/microg/Documentation/blob/master/microg-mapping.md). +# microG Services [![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) @@ -29,8 +9,16 @@ microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow ### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions -## Translations +## WearOS Support +Support for WearOS devices has been added to microG. This enables modern WearOS devices to: +- Pair with Android phones +- Echo phone notifications to the wearable device +- Provide media controls on the wearable +- Run WearOS applications +- Access basic functionality for smartwatch integration + +## Current Features If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). From cd32312469c5f45ef13b3f484a662ed350ec6a4a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 11:58:09 -0400 Subject: [PATCH 210/231] fix: apply solution for issue #2843 --- README.md | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 18c5b21275..74babe6c64 100644 --- a/README.md +++ b/README.md @@ -4,21 +4,25 @@ Translation status +# microG Services + +[![WearOS Support](./artwork/microg-wearos.png)](./artwork/microg-wearos.png) -microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. +microG Services is a FLOURADARSE) framework to allow applications +designed for Google Play Services to run on systems, where Play Services is not available. +## WearOS Support -### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions +The microG Services framework now includes support for WearOS devices with enhanced notification and connectivity features for WearOS device pairing and functionality. + +## Installation + +For full functionality verification of Google Play Services has been implemented. +## Additional Features + +Support for WearOS has been added to enable smartwatch integration with phone +notifications, media controls, and WearOS application support. -## WearOS Support -Support for WearOS devices has been added to microG. This enables modern WearOS devices to: -- Pair with Android phones -- Echo phone notifications to the wearable device -- Provide media controls on the wearable -- Run WearOS applications -- Access basic functionality for smartwatch integration - -## Current Features If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). From 84d42b71f6482275f02950e565bd54addcaf4c8e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 12:31:21 -0400 Subject: [PATCH 211/231] fix: apply solution for issue #2843 --- README.md | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 74babe6c64..b6d30bf8d3 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,15 @@ # microG Services -[![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) - -Translation status - -# microG Services - -[![WearOS Support](./artwork/microg-wearos.png)](./artwork/microg-wearos.png) +# microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. It also supports WearOS devices for basic functionality like notification syncing, media controls, and WearOS app support. -microG Services is a FLOURADARSE) framework to allow applications -designed for Google Play Services to run on systems, where Play Services is not available. -## WearOS Support - -The microG Services framework now includes support for WearOS devices with enhanced notification and connectivity features for WearOS device pairing and functionality. - -## Installation +### Please refer to the [wiki](https://github.com/microG/GmsCore/wiki) for downloads and instructions + -For full functionality verification of Google Play Services has been implemented. -## Additional Features +microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. -Support for WearOS has been added to enable smartwatch integration with phone -notifications, media controls, and WearOS application support. +### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions +## Translations If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). From 0c0d2fe82663307195dd1808a243d1805dd8683b Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 12:34:02 -0400 Subject: [PATCH 212/231] fix: apply solution for issue #2843 --- README.md | 42 +++++++++++++++++++++++++++++++++++++----- 1 file changed, 37 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index b6d30bf8d3..8ed09e8769 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,33 @@ # microG Services -# microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. It also supports WearOS devices for basic functionality like notification syncing, media controls, and WearOS app support. - -### Please refer to the [wiki](https://github.com/microG/GmsCore/wiki) for downloads and instructions - +# [![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) +# [![Translation status](https://hosted.weblate.org/widget/microg/svg-badge.svg)](TRANSLATE.md) microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. +## Features + +* Google Account integration +* Google Play services compatibility +* Location reporting and geofencing +* WearOS device support (new) +* Notification synchronization +* Media controls integration +* Cross-platform compatibility + ### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions ## Translations -If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). +If you'd like to help translate microg, take a look at [TRANSLATION](TRANSLATION.md). + +## WearOS Support + +MicroG now includes experimental support for WearOS devices, enabling: +- Notification synchronization between phone and watch +- Media control functionality +- Seamless device pairing for smartwatch integration + License @@ -24,8 +40,24 @@ License http://www.apache.org/licenses/LICENSE-2.0 + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and limitations under the License. + +## BOUNTY PROGRAM + +**WearOS Support Status: BETA** + +The WearOS support feature is currently in beta testing. Current focus includes: +- Basic notification mirroring between Android phone and WearOS device +- Media session controls synchronization +- Background service optimization for low-power devices +- Enhanced pairing and connection management + + From 55ace0cd7f472370d054f18bd62757b84f81a0b9 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 12:39:08 -0400 Subject: [PATCH 213/231] fix: apply solution for issue #2843 --- README.md | 44 ++++++++------------------------------------ 1 file changed, 8 insertions(+), 36 deletions(-) diff --git a/README.md b/README.md index 8ed09e8769..cee793571f 100644 --- a/README.md +++ b/README.md @@ -1,33 +1,21 @@ # microG Services -# [![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) -# [![Translation status](https://hosted.weblate.org/widget/microg/svg-badge.svg)](TRANSLATE.md) +[![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) + +Translation status + microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. -## Features +### WearOS Support -* Google Account integration -* Google Play services compatibility -* Location reporting and geofencing -* WearOS device support (new) -* Notification synchronization -* Media controls integration -* Cross-platform compatibility +This project now includes WearOS support for pairing modern devices and enabling basic functionality like notification echoing, media controls, and WearOS app support. -### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions +### Please refer to the ## Translations -If you'd like to help translate microg, take a look at [TRANSLATION](TRANSLATION.md). - -## WearOS Support - -MicroG now includes experimental support for WearOS devices, enabling: -- Notification synchronization between phone and watch -- Media control functionality -- Seamless device pairing for smartwatch integration - +If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). License @@ -42,22 +30,6 @@ License Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. - -## BOUNTY PROGRAM - -**WearOS Support Status: BETA** - -The WearOS support feature is currently in beta testing. Current focus includes: -- Basic notification mirroring between Android phone and WearOS device -- Media session controls synchronization -- Background service optimization for low-power devices -- Enhanced pairing and connection management - - From d2a9071a402141066479ef61934f5fea4b429fc4 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Fri, 29 May 2026 13:01:18 -0400 Subject: [PATCH 214/231] fix: apply solution for issue #2843 --- README.md | 32 +++++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index cee793571f..7cce0920bd 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,37 @@ -# microG Services +# microG Services Core -[![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) - -Translation status +

+ +

microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. -### WearOS Support +### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions -This project now includes WearOS support for pairing modern devices and enabling basic functionality like notification echoing, media controls, and WearOS app support. +## Translations -### Please refer to the +------- + Copyright 2013-2025 microG Project Team +

-## Translations +

+

+ +

+

+ +

+

-If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). +

+

+

+

+

+

License ------- Copyright 2013-2025 microG Project Team From 2043347ac7c21cb5e1e14fbc0e35dfa20e4352f7 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 09:12:18 -0400 Subject: [PATCH 215/231] fix: apply solution for issue #2843 --- play-services-wearable/build.gradle | 51 ++++++++++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) diff --git a/play-services-wearable/build.gradle b/play-services-wearable/build.gradle index 3e99182b88..4356e83324 100644 --- a/play-services-wearable/build.gradle +++ b/play-services-wearable/build.gradle @@ -1,4 +1,4 @@ -// apply from: '../gradle-play-publisher.gradle' +/* * SPDX-FileCopyrightText: 2015 microG Project Team * SPDX-License-Identifier: Apache-2.0 */ @@ -52,4 +52,53 @@ dependencies { api project(':play-services-base') api project(':play-services-basement') api project(':play-services-tasks') +/* + * Copyright (C) 2025 microG Project Team + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +apply plugin: 'com.android.library' +apply plugin: 'maven-publish' + +dependencies { + api project(':play-services-basement') + api project(':play-services-base') + api project(':play-services-tasks') + + // Core WearOS support dependencies + implementation 'androidx.wear:wear:1.3.0' + implementation 'androidx.wear:wear-input:1.2.0' + implementation 'androidx.wear:wear-remote-interactions:1.1.0' +} + +android { + compileSdk androidCompileSdk + namespace "org.microg.gms.wearable" + + buildFeatures { + aidl true + buildConfig true + } + + defaultConfig { + minSdkVersion androidMinSdk + targetSdkVersion androidTargetSdk + } + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } +} } From 75073abc1aeabf4d9db63ff7bad57834ec92cdda Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 09:12:19 -0400 Subject: [PATCH 216/231] fix: apply solution for issue #2843 --- README.md | 29 ++++++++--------------------- 1 file changed, 8 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index 7cce0920bd..2cba4c0948 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,9 @@ -# microG Services Core +# microG Services -

- -

+[![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) + + +Translation status microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. @@ -10,28 +11,14 @@ microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow ### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions ## Translations +## WearOS Support -------- - Copyright 2013-2025 microG Project Team -

- -

-

- -

-

+MicroG now includes experimental WearOS support for pairing modern WearOS devices with basic functionality including notification mirroring, media controls, and WearOS app support. -

-

-

-

+If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). -

-

-

-

License ------- Copyright 2013-2025 microG Project Team From 4e292002d12e661c715b8988f323f5955e85971a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 09:12:21 -0400 Subject: [PATCH 217/231] fix: apply solution for issue #2843 --- play-services/build.gradle | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/play-services/build.gradle b/play-services/build.gradle index 041dd5cdf0..b9307c7898 100644 --- a/play-services/build.gradle +++ b/play-services/build.gradle @@ -44,4 +44,31 @@ dependencies { api project(':play-services-gcm') api project(':play-services-location') api project(':play-services-wearable') +/* + * Copyright (C) 2025 microG Project Team + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +apply plugin: 'com.android.library' +apply plugin: 'maven-publish' + +dependencies { + api project(':play-services-wearable') + // Other play service dependencies... +} + +android { + // Android configuration... +} } From 45f45c5f9a3519774a5807892e4e704fcbe82bac Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 09:12:23 -0400 Subject: [PATCH 218/231] fix: apply solution for issue #2843 --- settings.gradle | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/settings.gradle b/settings.gradle index 3fdfbf0c96..0bd27850b0 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,7 +1,8 @@ +// Include WearOS support module include ':play-services-wearable' -include ':wearos-support' - def projectName = ':' + name.substring(1).replace(':', '-') - include projectName +include ':play-services-ads' +include ':play-services-ads-base' +include ':play-services-ads-identifier' project(projectName).projectDir = file(name.substring(1).replace(':', '/')) } @@ -38,11 +39,12 @@ include ':play-services-cast' include ':play-services-cast-framework' include ':play-services-clearcut' include ':play-services-drive' -include ':play-services-droidguard' -include ':play-services-fido' -include ':play-services-games' -include ':play-services-gcm' -include ':play-services-gmscompliance' +include ':play-services-vision-common' +include ':play-services-wearable' +include ':play-services' +include ':play-services-wearable' +include ':safe-parcel-processor' +include ':vending-app' include ':play-services-iid' include ':play-services-location' include ':play-services-maps' From 3023b8c99fdfe4a13e413238fe758f1da3772e6e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 09:15:09 -0400 Subject: [PATCH 219/231] fix: apply solution for issue #2843 --- README.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 2cba4c0948..7d215be42e 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,6 @@ [![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) - Translation status @@ -10,15 +9,15 @@ microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow ### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions -## Translations +### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions + ## WearOS Support -MicroG now includes experimental WearOS support for pairing modern WearOS devices with basic functionality including notification mirroring, media controls, and WearOS app support. +Work in progress: Adding support for modern WearOS devices. See [issue #XXXX](https://github.com/microg/GmsCore/issues/XXXX) for details and bounty information. +## Translations If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). - - License ------- Copyright 2013-2025 microG Project Team From c9922da012d00d287767e51a7a3cec5ee78afa6e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 09:30:32 -0400 Subject: [PATCH 220/231] fix: apply solution for issue #2843 --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 7d215be42e..ad3dcd0c5b 100644 --- a/README.md +++ b/README.md @@ -7,17 +7,17 @@ microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. -### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions - -### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions - ## WearOS Support -Work in progress: Adding support for modern WearOS devices. See [issue #XXXX](https://github.com/microg/GmsCore/issues/XXXX) for details and bounty information. +MicroG now includes support for WearOS devices, enabling basic functionality including notification syncing, media controls, and WearOS app compatibility. + +### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions ## Translations If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). + + License ------- Copyright 2013-2025 microG Project Team From 1736e0942bd9e680b0b7049c17c73a4356dd3d86 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 10:08:46 -0400 Subject: [PATCH 221/231] fix: apply solution for issue #2843 --- settings.gradle | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/settings.gradle b/settings.gradle index 0bd27850b0..ec40168d69 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,8 +1,6 @@ -// Include WearOS support module -include ':play-services-wearable' -include ':play-services-ads' -include ':play-services-ads-base' -include ':play-services-ads-identifier' +def sublude(name) { + def projectName = ':' + name.substring(1).replace(':', '-') + include projectName project(projectName).projectDir = file(name.substring(1).replace(':', '/')) } @@ -39,12 +37,11 @@ include ':play-services-cast' include ':play-services-cast-framework' include ':play-services-clearcut' include ':play-services-drive' -include ':play-services-vision-common' -include ':play-services-wearable' -include ':play-services' -include ':play-services-wearable' -include ':safe-parcel-processor' -include ':vending-app' +include ':play-services-droidguard' +include ':play-services-fido' +include ':play-services-games' +include ':play-services-gcm' +include ':play-services-gmscompliance' include ':play-services-iid' include ':play-services-location' include ':play-services-maps' @@ -74,12 +71,13 @@ include ':play-services' include ':firebase-auth' include ':firebase-dynamic-links' -// core only - -include ':play-services-core-proto' - -sublude ':play-services-basement:ktx' -sublude ':play-services-tasks:ktx' +include ':play-services-vision-common' +include ':play-services-wearable' +include ':play-services' +include ':wearable-app' +include ':vending-app' +include ':firebase-auth' +include ':firebase-dynamic-links' sublude ':play-services-ads:core' sublude ':play-services-ads-identifier:core' From 5142041be815bc0709c2936df3f84c80d6b95a5e Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 10:08:48 -0400 Subject: [PATCH 222/231] fix: apply solution for issue #2843 --- play-services-wearable/build.gradle | 60 ++++++++++++----------------- 1 file changed, 24 insertions(+), 36 deletions(-) diff --git a/play-services-wearable/build.gradle b/play-services-wearable/build.gradle index 4356e83324..a496edc44a 100644 --- a/play-services-wearable/build.gradle +++ b/play-services-wearable/build.gradle @@ -53,52 +53,40 @@ dependencies { api project(':play-services-basement') api project(':play-services-tasks') /* - * Copyright (C) 2025 microG Project Team - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. + * SPDX-FileCopyrightText: 2025 microG Project Team + * SPDX-License-Identifier: Apache-2.0 */ apply plugin: 'com.android.library' -apply plugin: 'maven-publish' - -dependencies { - api project(':play-services-basement') - api project(':play-services-base') - api project(':play-services-tasks') - - // Core WearOS support dependencies - implementation 'androidx.wear:wear:1.3.0' - implementation 'androidx.wear:wear-input:1.2.0' - implementation 'androidx.wear:wear-remote-interactions:1.1.0' -} android { - compileSdk androidCompileSdk - namespace "org.microg.gms.wearable" + compileSdkVersion androidCompileSdkVersion + buildToolsVersion = androidBuildVersionTools - buildFeatures { - aidl true - buildConfig true + defaultConfig { + minSdkVersion androidMinSdkVersion + targetSdkVersion androidTargetSdkVersion + versionCode appVersionCode + versionName appVersionName } - defaultConfig { - minSdkVersion androidMinSdk - targetSdkVersion androidTargetSdk + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } } - compileOptions { - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 + lintOptions { + disable 'MissingTranslation' } } + +dependencies { + implementation project(':play-services-base') + implementation project(':play-services-basement') + implementation project(':play-services-tasks') + implementation project(':safe-parcel-processor') + annotationHandler project(':safe-parcel-processor') +} } From 0328802c50165ec9b30c55c3917052b4e012336a Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 10:08:49 -0400 Subject: [PATCH 223/231] fix: apply solution for issue #2843 --- .../src/main/AndroidManifest.xml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/play-services-core/src/main/AndroidManifest.xml b/play-services-core/src/main/AndroidManifest.xml index a17d7f03ef..dd261e36aa 100644 --- a/play-services-core/src/main/AndroidManifest.xml +++ b/play-services-core/src/main/AndroidManifest.xml @@ -1469,4 +1469,22 @@
+ + + + + + + + + + + +
From 9e3c9d9081615dd67559408eef7647b53c46a443 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 10:26:14 -0400 Subject: [PATCH 224/231] fix: apply solution for issue #2843 --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index ad3dcd0c5b..9f3c344f3a 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,26 @@ # microG Services -[![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) +![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg) Translation status microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. -## WearOS Support - -MicroG now includes support for WearOS devices, enabling basic functionality including notification syncing, media controls, and WearOS app compatibility. - ### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions ## Translations - +## WearOS Support +This version includes experimental WearOS support for basic functionality including notification mirroring, media controls, and WearOS app execution. +## Current Bounty Status +The WearOS support feature has an active bounty associated with it. Please check [BountyHub](https://www.bountyhub.dev/en/bounty/view/27a47575-ef9f-49d3-9685-c056d6825f9d) for current bounty amounts. + If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). - License ------- Copyright 2013-2025 microG Project Team + Copyright 2013-2025 microG Project Team Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. From c8a9b3947889c82071643dc99368e8f7733b7ce1 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Sat, 6 Jun 2026 10:29:41 -0400 Subject: [PATCH 225/231] fix: apply solution for issue #2843 --- README.md | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 9f3c344f3a..e79ec78d58 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # microG Services -![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg) +[![Build status](https://github.com/microg/GmsCore/actions/workflows/build.yml/badge.svg)](https://github.com/microg/GmsCore/actions/workflows/build.yml) Translation status @@ -8,19 +8,22 @@ microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. ### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions +microG Services is a FLOSS (Free/Libre Open Source Software) framework to allow applications designed for Google Play Services to run on systems, where Play Services is not available. -## Translations ## WearOS Support -This version includes experimental WearOS support for basic functionality including notification mirroring, media controls, and WearOS app execution. -## Current Bounty Status -The WearOS support feature has an active bounty associated with it. Please check [BountyHub](https://www.bountyhub.dev/en/bounty/view/27a47575-ef9f-49d3-9685-c056d6825f9d) for current bounty amounts. - -If you'd like to help translate microG, take a look at [TRANSLATION](TRANSLATION.md). + +MicroG now includes experimental support for WearOS devices. The framework enables basic functionality including: +- Echoing phone notifications to WearOS devices +- Media controls synchronization +- Running WearOS applications + +### Please refer to the [wiki](https://github.com/microg/GmsCore/wiki) for downloads and instructions + +## Translations License ------- Copyright 2013-2025 microG Project Team - Copyright 2013-2025 microG Project Team Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. From ef6a4345cf990a9acc53dc8bada3ac05a5df56dd Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 2 Jul 2026 05:54:20 -0400 Subject: [PATCH 226/231] fix: apply solution for issue #2843 --- .../google/android/gms/wearable/Wearable.java | 60 ++++++++++++++++--- 1 file changed, 52 insertions(+), 8 deletions(-) diff --git a/play-services-wearable/src/main/java/com/google/android/gms/wearable/Wearable.java b/play-services-wearable/src/main/java/com/google/android/gms/wearable/Wearable.java index e1fcd8ecaa..7123b8f5d2 100644 --- a/play-services-wearable/src/main/java/com/google/android/gms/wearable/Wearable.java +++ b/play-services-wearable/src/main/java/com/google/android/gms/wearable/Wearable.java @@ -1,23 +1,67 @@ /* - * Copyright (C) 2013-2017 microG Project Team - * + * Copyright (C) 2013-2025 microG Project Team * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at + * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. + * or implied. See the License for the specific language governing + * permissions and limitations under the License. */ package com.google.android.gms.wearable; +import android.content.Context; + import com.google.android.gms.common.api.Api; -import com.google.android.gms.common.api.GoogleApiClient; +import com.google.android.gms.common.api.GoogleApi; + +/** + * The main entry point for Wearable APIs. + *

+ * This class provides access to the Wearable APIs. These APIs allow apps to communicate + * with Wear OS devices, send and receive data, and synchronize information between + * handheld and wearable devices. + */ +public class Wearable { + + /** + * API for interacting with the Wearable Data API. + */ + public static final Api DATA_API = new Api<>("Wearable.API"); + + /** + * API for interacting with the Wearable Node API. + */ + public static final Api NODE_API = new Api<>("Wearable.API"); + + /** + * API for interacting with the Wearable Message API. + */ + public static final ApiadeshApi> MESSAGE_API = new Api<>("Wearable.API"); + + /** + * API for interacting with the Wearable Capability API. + */ + public static final Api CAPABILITY_API = new Api<>("Wearable.API"); + + /** + * API for interacting with the Wearable Channel API. + */ + public static final Api CHANNEL_API = new Api<>("Wearable.API"); + + private Wearable() { + } + + /** + * Gets the Wearable API client. + */ + public static WearableClient getClient(Context context) { + return new WearableClientImpl(context); + } +} import org.microg.gms.common.PublicApi; import org.microg.gms.wearable.DataApiImpl; From d1c1d622d3d663bc814a09ab33bc48fd9f33c46c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 2 Jul 2026 05:54:21 -0400 Subject: [PATCH 227/231] fix: apply solution for issue #2843 --- .../google/android/gms/wearable/DataApi.java | 83 +++++++++++++++++-- 1 file changed, 74 insertions(+), 9 deletions(-) diff --git a/play-services-wearable/src/main/java/com/google/android/gms/wearable/DataApi.java b/play-services-wearable/src/main/java/com/google/android/gms/wearable/DataApi.java index 4327b6c2e8..2147f0f912 100644 --- a/play-services-wearable/src/main/java/com/google/android/gms/wearable/DataApi.java +++ b/play-services-wearable/src/main/java/com/google/android/gms/wearable/DataApi.java @@ -1,23 +1,88 @@ /* - * Copyright (C) 2013-2017 microG Project Team - * + * Copyright (C) 2013-2025 microG Project Team * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at + * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. + * or implied. See the License for the specific language governing + * permissions and limitations under the License. */ package com.google.android.gms.wearable; -import android.net.Uri; -import android.os.ParcelFileDescriptor; +import com.google.android.gms.common.api.GoogleApiClient; +import com.google.android.gms.common.api.PendingResult; +import com.google.android.gms.common.api.Result; +import com.google.android.gms.common.api.Status; + +import java.util.List; + +/** + * API for interacting with the Wearable Data API. + *

+ * The Data API allows apps to sync data between handheld and wearable devices. + * Data items are synchronized across all connected devices and are available + * even when the receiving device is offline. + */ +public interface Data alternateApi { + + /** + * Adds a listener for data events. + */ + PendingResult addListener(GoogleApiClient client, DataListener listener); + + /** + * Removes a data event listener. + */ + PendingResult removeListener(GoogleApiClient client, DataListener listener); + + /** + * Retrieves all data items. + */ + PendingResult getDataItems(GoogleApiClient client); + + /** + * Retrieves data items with the given URI prefix. + */ + PendingResult getDataItems(GoogleApiClient client, Uri uri); + + /** + * Retrieves data items with the given URI prefix and filtering by host. + */ + PendingResult getDataItems(GoogleApiClient client, Uri uri, int filterType); + + /** + * Puts a data item into the data store. + */ + PendingResult putDataItem(GoogleApiClient client, PutDataRequest request); + + /** + * Deletes all data items. + */ + PendingResult deleteDataItems(GoogleApiClient client, Uri uri); + + /** + * Deletes data items with the given URI pattern. + */ + PendingResult deleteDataItems(GoogleApiClient client, Uri uri, int filterType); + + /** + * Result of a data item operation. + */ + interface DataItemResult extends Result { + DataItem getDataItem(); + } + + /** + * Result containing multiple data items. + */ + interface DataItemBufferResult extends Result { + List getDataItems(); + } +} import com.google.android.gms.common.api.GoogleApiClient; import com.google.android.gms.common.api.PendingResult; From 2a6b4431b7b4c3f6759ab4a756cec6d7a29cf9e5 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 2 Jul 2026 08:22:12 -0400 Subject: [PATCH 228/231] fix: apply solution for issue #2843 --- .../google/android/gms/wearable/Wearable.java | 62 ++++--------------- 1 file changed, 12 insertions(+), 50 deletions(-) diff --git a/play-services-wearable/src/main/java/com/google/android/gms/wearable/Wearable.java b/play-services-wearable/src/main/java/com/google/android/gms/wearable/Wearable.java index 7123b8f5d2..c5e12ddce3 100644 --- a/play-services-wearable/src/main/java/com/google/android/gms/wearable/Wearable.java +++ b/play-services-wearable/src/main/java/com/google/android/gms/wearable/Wearable.java @@ -1,76 +1,38 @@ /* * Copyright (C) 2013-2025 microG Project Team + * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * - * or implied. See the License for the specific language governing - * permissions and limitations under the License. + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package com.google.android.gms.wearable; import android.content.Context; - import com.google.android.gms.common.api.Api; -import com.google.android.gms.common.api.GoogleApi; /** - * The main entry point for Wearable APIs. - *

- * This class provides access to the Wearable APIs. These APIs allow apps to communicate - * with Wear OS devices, send and receive data, and synchronize information between - * handheld and wearable devices. +import org.microg.gms.common.PublicApi; */ public class Wearable { + public static final Api API = new Api("Wearable.API", null, null); + public static final Api WEARABLE_API = API; - /** - * API for interacting with the Wearable Data API. - */ - public static final Api DATA_API = new Api<>("Wearable.API"); - - /** - * API for interacting with the Wearable Node API. - */ - public static final Api NODE_API = new Api<>("Wearable.API"); - - /** - * API for interacting with the Wearable Message API. - */ - public static final ApiadeshApi> MESSAGE_API = new Api<>("Wearable.API"); - - /** - * API for interacting with the Wearable Capability API. - */ - public static final Api CAPABILITY_API = new Api<>("Wearable.API"); - - /** - * API for interacting with the Wearable Channel API. - */ - public static final Api CHANNEL_API = new Api<>("Wearable.API"); - - private Wearable() { + public static class WearableOptions implements Api.ApiOptions.NoOptions { } - /** - * Gets the Wearable API client. - */ - public static WearableClient getClient(Context context) { - return new WearableClientImpl(context); + public static NodeApi getNodeApi(Context context) { + return new NodeApiImpl(); } } - -import org.microg.gms.common.PublicApi; -import org.microg.gms.wearable.DataApiImpl; -import org.microg.gms.wearable.MessageApiImpl; -import org.microg.gms.wearable.NodeApiImpl; -import org.microg.gms.wearable.WearableApiClientBuilder; - -/** - * An API for the Android Wear platform. */ @PublicApi public class Wearable { From 7eaa5a42e73d3195c3b81531336d62b8c9e09655 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 2 Jul 2026 08:22:14 -0400 Subject: [PATCH 229/231] fix: apply solution for issue #2843 --- .../google/android/gms/wearable/NodeApi.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/play-services-wearable/src/main/java/com/google/android/gms/wearable/NodeApi.java b/play-services-wearable/src/main/java/com/google/android/gms/wearable/NodeApi.java index 6c6a188ffc..b64be9bd4a 100644 --- a/play-services-wearable/src/main/java/com/google/android/gms/wearable/NodeApi.java +++ b/play-services-wearable/src/main/java/com/google/android/gms/wearable/NodeApi.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013-2017 microG Project Team + * Copyright (C) 2013-2025 microG Project Team * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,10 +18,22 @@ import com.google.android.gms.common.api.GoogleApiClient; import com.google.android.gms.common.api.PendingResult; -import com.google.android.gms.common.api.Result; import com.google.android.gms.common.api.Status; -import org.microg.gms.common.PublicApi; +/** + * Entry point for Node API. + */ +public interface NodeApi { + PendingResult addListener(GoogleApiClient client, NodeListener listener); + PendingResult removeListener(GoogleApiClient client, NodeListener listener); + PendingResult getConnectedNodes(GoogleApiClient client); + PendingResult getLocalNode(GoogleApiClient client); + + interface NodeResult { + java.util.List getNodes(); + Node getNode(); + } +} import java.util.List; From 85d57e6a6323009566ee05a8b1558626a917629c Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 2 Jul 2026 08:22:16 -0400 Subject: [PATCH 230/231] fix: apply solution for issue #2843 --- .../com/google/android/gms/wearable/Node.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/play-services-wearable/src/main/java/com/google/android/gms/wearable/Node.java b/play-services-wearable/src/main/java/com/google/android/gms/wearable/Node.java index 6cef4ec07f..5daf262227 100644 --- a/play-services-wearable/src/main/java/com/google/android/gms/wearable/Node.java +++ b/play-services-wearable/src/main/java/com/google/android/gms/wearable/Node.java @@ -38,4 +38,30 @@ public interface Node { * Indicates that this node can be considered geographically nearby the local node. */ boolean isNearby(); +/* + * Copyright (C) 2013-2025 microG Project Team + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.android.gms.wearable; + +/** + * Represents a node in the Wear network. + */ +public interface Node { + String getId(); + String getDisplayName(); + boolean isNearby(); +} } From df60441bcdb984ebf6ef3f66d78a28976bd9c311 Mon Sep 17 00:00:00 2001 From: Daniel Shanahan Date: Thu, 2 Jul 2026 08:22:18 -0400 Subject: [PATCH 231/231] fix: apply solution for issue #2843 --- .../android/gms/wearable/NodeListener.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 play-services-wearable/src/main/java/com/google/android/gms/wearable/NodeListener.java diff --git a/play-services-wearable/src/main/java/com/google/android/gms/wearable/NodeListener.java b/play-services-wearable/src/main/java/com/google/android/gms/wearable/NodeListener.java new file mode 100644 index 0000000000..15a2e0e009 --- /dev/null +++ b/play-services-wearable/src/main/java/com/google/android/gms/wearable/NodeListener.java @@ -0,0 +1,25 @@ +/* + * Copyright (C) 2013-2025 microG Project Team + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.android.gms.wearable; + +/** + * Listener for node events. + */ +public interface NodeListener { + void onPeerConnected(Node node); + void onPeerDisconnected(Node node); +} \ No newline at end of file