Compare commits

..
Author SHA1 Message Date
Suggon 48dbfaf34a Update houdini library with extended expiry date (July 1, 2028)
Intel's libhoudini library includes a built-in "expiry date" that
prevents execution after a certain date. The previous versions expired
on January 1, 2026 (#256) and September 1, 2026 respectively.

This update refreshes the library to a newer build per
https://github.com/supremegamers/vendor_intel_proprietary_houdini/issues/6
and has an extended expiry date of July 1, 2028.
2026-09-11 14:56:36 +02:00
3 changed files with 14 additions and 54 deletions
-10
View File
@@ -1,13 +1,3 @@
# What's the difference from this fork ?
I added some small code lines to enable this script for beeing used with "MULTIPLE ANDROID USERS IN WAYDROID"
--> It won't work with only a single user created (maybe fixing that in the future..)
--> You need to create at least "two users" in Waydroid to be able to get the IDs for Android verifications
# Waydroid Extras Script # Waydroid Extras Script
Script to add GApps and other stuff to Waydroid! Script to add GApps and other stuff to Waydroid!
+10 -40
View File
@@ -1,51 +1,21 @@
from tools import container from tools import container
from tools.helper import shell from tools.helper import shell
from tools.logger import Logger from tools.logger import Logger
import re
class AndroidId: class AndroidId:
def get_id(self): def get_id(self):
if not container.is_running(): if container.is_running():
Logger.error("Please make sure Waydroid is running and Gapps has been installed!")
return
try: try:
# Get list of user IDs and their names using 'pm list users' queryout = shell(
users_raw = shell( arg="sqlite3 /data/data/com.google.android.gsf/databases/gservices.db \"select * from main where name = 'android_id';\"",
arg="pm list users",
env="ANDROID_RUNTIME_ROOT=/apex/com.android.runtime ANDROID_DATA=/data ANDROID_TZDATA_ROOT=/apex/com.android.tzdata ANDROID_I18N_ROOT=/apex/com.android.i18n" env="ANDROID_RUNTIME_ROOT=/apex/com.android.runtime ANDROID_DATA=/data ANDROID_TZDATA_ROOT=/apex/com.android.tzdata ANDROID_I18N_ROOT=/apex/com.android.i18n"
) )
user_map = {}
for line in users_raw.strip().splitlines():
match = re.search(r'UserInfo\{(\d+):([^:}]+)', line)
if match:
user_id, username = match.groups()
user_map[user_id] = username
except Exception as e:
Logger.error(f"Failed to parse user list: {e}")
return
print("------------------------------------------------------------------------")
print(f"{'Username':<20} | {'User ID':^10} | {'GSF Android ID'}")
print("------------------------------------------------------------------------")
for user_id, username in user_map.items():
try:
db_path = f"/data/user/{user_id}/com.google.android.gsf/databases/gservices.db"
query = f"sqlite3 {db_path} \"select value from main where name = 'android_id';\""
gsf_id = shell(
arg=query,
env="ANDROID_RUNTIME_ROOT=/apex/com.android.runtime ANDROID_DATA=/data ANDROID_TZDATA_ROOT=/apex/com.android.tzdata ANDROID_I18N_ROOT=/apex/com.android.i18n"
).strip()
if gsf_id:
print(f"{username:<20} | {user_id:^10} | {gsf_id}")
else:
print(f"{username:<20} | {user_id:^10} | (not found)")
except: except:
print(f"{username:<20} | {user_id:^10} | (query error)") return
else:
print("------------------------------------------------------------------------") Logger.error("Please make sure Waydroid is running and Gapps has been installed!")
return
print(queryout.replace("android_id|", "").strip())
print(" ^----- Open https://google.com/android/uncertified/?pli=1") print(" ^----- Open https://google.com/android/uncertified/?pli=1")
print(" Login with your Google ID, then submit the form with the ID(s) shown above.") print(" Login with your google id then submit the form with id shown above")
+1 -1
View File
@@ -10,7 +10,7 @@ class Houdini(General):
partition = "system" partition = "system"
dl_links = { dl_links = {
"11": ["https://github.com/supremegamers/vendor_intel_proprietary_houdini/archive/81f2a51ef539a35aead396ab7fce2adf89f46e88.zip", "fbff756612b4144797fbc99eadcb6653"], "11": ["https://github.com/supremegamers/vendor_intel_proprietary_houdini/archive/81f2a51ef539a35aead396ab7fce2adf89f46e88.zip", "fbff756612b4144797fbc99eadcb6653"],
"13": ["https://github.com/supremegamers/vendor_intel_proprietary_houdini/archive/9e77896350caccd228b36b2e1b4a994aa4bd48da.zip", "3807fe029559db3037efe245d9e74270"] "13": ["https://github.com/supremegamers/vendor_intel_proprietary_houdini/archive/2f8f088671182e17e67321e098e8411a3972a628.zip", "37fe0899f1e4da7f9a724cca1c1ab1ea"]
} }
act_md5 = ... act_md5 = ...
dl_link = ... dl_link = ...