
    ,j                     B    d dl Z d dlZd dlmZ d dlmZ  G d de      Zy)    N)General)Loggerc                        e Zd Zd ZdZdddddddZd	d
dddZddgZddgddgddgdgdgdZdZ	dZ
dZdZdZdZg dZd d! fdZd Zd Z xZS )"MicroGsystem 9e6c79aefde3f0bbfedf671a2d73d1be 997d6de7d41c454d39fc22cd7d8fc3c2 0010bf93f02c2d18daf9e767035fefc5 b04353155aceb36207a206d6dd14ba6a 0b3cb65f8458d1a5802737c7392df903 88e7397cbb9e5c71c8687d3681a23383)zcom.aurora.store_41.apkz!com.etesync.syncadapter_20300.apkzcom.aurora.adroid_8.apkz%org.fdroid.fdroid.privileged_2130.apkz(org.microg.nlp.backend.ichnaea_20036.apkz*org.microg.nlp.backend.nominatim_20042.apk a945481ca5d33a03bc0f9418263c3228 b2b4ea3642df6158e14689a4b2a246d4 6815d191433ffcd8fa65923d5b0b0573 4734b41c1a6bc34a541053ddde7a0f8e)z$com.google.android.gms-223616054.apkzcom.google.android.gsf-8.apkzcom.android.vending-22.apkz org.microg.gms.droidguard-14.apkzcom.google.android.gmszcom.android.vendingzkhttps://github.com/ayasa520/MinMicroG/releases/download/latest/MinMicroG-Standard-2.11.1-20230429100529.zip 0fe332a9caa3fbb294f2e2b50f720c6bzkhttps://github.com/ayasa520/MinMicroG/releases/download/latest/MinMicroG-NoGoolag-2.11.1-20230429100545.zip ff920f33f4c874eeae4c0444be427c68zghttps://github.com/ayasa520/MinMicroG/releases/download/latest/MinMicroG-UNLP-2.11.1-20230429100555.zip 6136b383153c2a6797d14fb4d7ca3f97zhttps://github.com/ayasa520/MinMicroG/releases/download/latest/MinMicroG-Minimal-2.11.1-20230429100521.zipafb87eb64e7749cfd72c4760d85849dazhttps://github.com/ayasa520/MinMicroG/releases/download/latest/MinMicroG-MinimalIAP-2.11.1-20230429100556.zipcc071f4f776cbc16c4c1f707aff1f7fa)StandardNoGoolagUNLPMinimal
MinimalIAP.z/tmp/microg/extractz
on property:sys.boot_completed=1
    start microg_service

service microg_service /system/bin/sh /system/bin/npem
    user root
    group root
    oneshot
    )*zpriv-app/GoogleBackupTransportzpriv-app/MicroGUNLPzpriv-app/MicroGGMSCorez1priv-app/MicroGGMSCore/lib/x86_64/libmapbox-gl.soz=priv-app/MicroGGMSCore/lib/x86_64/libconscrypt_gmscore_jni.soz=priv-app/MicroGGMSCore/lib/x86_64/libcronet.102.0.5005.125.sozpriv-app/PatchPhoneskyz4priv-app/PatchPhonesky/lib/x86_64/libempty_x86_64.sozpriv-app/AuroraServiceszbin/npemzapp/GoogleCalendarSyncAdapterzapp/NominatimNLPBackendzapp/MicroGGSFProxyzapp/LocalGSMNLPBackendzapp/DejaVuNLPBackendzapp/MozillaUnifiedNLPBackendzapp/AppleNLPBackendzapp/AuroraDroidzapp/LocalWiFiNLPBackendzapp/GoogleContactsSyncAdapterz!app/MicroGGSFProxy/MicroGGSFProxyz.framework/com.google.widevine.software.drm.jarz.framework/com.google.android.media.effects.jarz%framework/com.google.android.maps.jarzlib64/libjni_keyboarddecoder.sozlib64/libjni_latinimegoogle.soz.etc/default-permissions/microg-permissions.xmlz3etc/default-permissions/microg-permissions-unlp.xmlz!etc/default-permissions/gsync.xmlzetc/sysconfig/nogoolag.xmlzetc/sysconfig/nogoolag-unlp.xmletc/init/microg.rcz6etc/permissions/com.google.android.backuptransport.xmlz'etc/permissions/com.android.vending.xmlz$etc/permissions/foss-permissions.xmlz*etc/permissions/com.google.android.gms.xmlz'etc/permissions/com.aurora.services.xmlz+etc/permissions/com.google.android.maps.xmlz4etc/permissions/com.google.widevine.software.drm.xmlz4etc/permissions/com.google.android.media.effects.xmlzlib/libjni_keyboarddecoder.sozlib/libjni_latinimegoogle.soc                     t         |           | j                  |   d   | _        | j                  |   d   | _        | j
                  d| z   | _        d| d| _        |dk(  rd| _        y |dk(  rd	| _        y y )
Nr      -z
MinMicroG-z.zip11   13!   )super__init__dl_linksdl_linkact_md5iddl_file_namesdk)selfandroid_versionvariant	__class__s      ,/home/ubuntu/waydroid_script/stuff/microg.pyr#   zMicroG.__init__j   s    }}W-a0}}W-a0''AgY-'(	6d"DH$DH %    c                 &   t        j                  d       t        j                  j	                  | j
                  | j                        }t        j                  j	                  | j                  d      }d| j                  d   v rd}nd}d| j                  d   k(  r| |dk(  rdnd	 d
}t        j                  |      D ]  \  }}}d}t        j                  j                  |      }	|	j                  d      r|	j                  d      rg g }}
|	j                  d      D ]8  }|j                         r|j                  |       %|s(|
j                  |       : t!        |
      dk7  r|
vr||
vs%t!        |      dk7  rt#        | j$                        |vrd}|D ]  }t        j                  j	                  ||      }|s?t        j                  j	                  |t        j                  j'                  ||            }nyt        j                  j	                  |t        j                  j'                  t        j                  j	                  t        j                  j)                  |      |      |            }t        j                  j+                  t        j                  j)                  |            s2t        j,                  t        j                  j)                  |             t/        j0                  ||       t        j                  j3                  |      d   j5                         dk(  s| j7                  |         t        j                  j	                  |d      }t        j                  j+                  t        j                  j)                  |            s2t        j,                  t        j                  j)                  |             t9        |d      5 }|j;                  | j<                         d d d        y # 1 sw Y   y xY w)NzCopying libs and apks...r   armr   x86@   r    _64Fr   Tz.apkr   w)r   infoospathjoincopy_dir	partition
extract_toarchwalkbasename
startswithendswithsplitisdigitappendlenstrr)   relpathdirnameexistsmakedirsshutilcopy2splitextlowerextract_app_libopenwrite
rc_content)r*   dst_dirsrc_dirsub_archr?   rootdirsfilesflagdir_namearchssdksifilesrc_file_pathdst_file_pathrc_dirfs                     r.   copyzMicroG.copyu   s   ./'',,t}}dnn='',,t9DIIaL HH1Zho3?rBD!#!1 	8D$Dww''-H""3'H,=,=c,B "t!, (Ayy{AQ	(
 u:?t5'8XU=RVYZ^V_cdVdilmqmumuiv  C  jCD 8 "T4 8$&GGLL"''//%w;0 %1M %'GGLL"''//RWW__T%:DA7;L %MMww~~bggoom&DEKK >?]M:77##M215;;=G((78!	8> g';<ww~~bggoof56KK/0&# 	%!GGDOO$	% 	% 	%s   "PPc                    t         j                  j                  | j                  | j                        }| j
                  j                         D cg c]  }|j                  d      d    }}|| j                  j                         D cg c]  }|j                  d      d    c}z  }|D ]  }|| j                  v r"t         j                  j                  |d|      }n!t         j                  j                  |d|      }t         j                  j                  |      rt        j                  |       t         j                  j                  |      st        j                  |        y c c}w c c}w )Nr5   r   r   zpriv-appapp)r9   r:   r;   r<   r=   fdroid_repo_apkskeysrD   microg_apks	priv_appsisdirrM   rmtreeisfileremove)r*   
system_dirkeyrZ   rd   r`   s         r.   extra2zMicroG.extra2   s   WW\\$--@
.2.C.C.H.H.JKs3"KKt/?/?/D/D/FG#))C.#GG 	 ADNN"ww||J
A>ww||Jq9ww}}T"d#%		$	  LGs   E.E3)r   r   )returnN)__name__
__module____qualname__r'   r=   rh   rj   rk   r$   r%   r&   r(   r)   r>   rT   rZ   r#   re   rr   __classcell__)r-   s   @r.   r   r      s    	BI#E-O#E1S4V6X 1S(J&H,N	K *+@AI z.

 z.

 v.

/

/
#H, GGL
C&JJ+EZ	-%^ r/   r   )r9   rM   stuff.generalr   tools.loggerr   r    r/   r.   <module>r{      s    	  ! i W i r/   