Remove SuperSU
Change-Id: I2ca7580bbde5a8903b9ba5c1513ddba887e8d49e
This commit is contained in:
13
Android.mk
13
Android.mk
@@ -156,7 +156,6 @@ ifeq ($(TW_OEM_BUILD),true)
|
||||
LOCAL_CFLAGS += -DTW_OEM_BUILD
|
||||
BOARD_HAS_NO_REAL_SDCARD := true
|
||||
TW_USE_TOOLBOX := true
|
||||
TW_EXCLUDE_SUPERSU := true
|
||||
TW_EXCLUDE_MTP := true
|
||||
endif
|
||||
|
||||
@@ -430,18 +429,6 @@ ifeq ($(TW_INCLUDE_DUMLOCK), true)
|
||||
htcdumlock htcdumlocksys flash_imagesys dump_imagesys libbmlutils.so \
|
||||
libflashutils.so libmmcutils.so libmtdutils.so HTCDumlock.apk
|
||||
endif
|
||||
ifneq ($(TW_EXCLUDE_SUPERSU), true)
|
||||
LOCAL_ADDITIONAL_DEPENDENCIES += \
|
||||
install-recovery.sh 99SuperSUDaemon Superuser.apk
|
||||
ifeq ($(TARGET_ARCH), arm)
|
||||
LOCAL_ADDITIONAL_DEPENDENCIES += \
|
||||
chattr.pie libsupol.so suarm supolicy
|
||||
endif
|
||||
ifeq ($(TARGET_ARCH), arm64)
|
||||
LOCAL_ADDITIONAL_DEPENDENCIES += \
|
||||
libsupol.soarm64 suarm64 supolicyarm64
|
||||
endif
|
||||
endif
|
||||
ifeq ($(TW_INCLUDE_FB2PNG), true)
|
||||
LOCAL_ADDITIONAL_DEPENDENCIES += fb2png
|
||||
endif
|
||||
|
||||
@@ -1607,8 +1607,7 @@ int GUIAction::installsu(std::string arg __unused)
|
||||
if (simulate) {
|
||||
simulate_progress_bar();
|
||||
} else {
|
||||
if (!TWFunc::Install_SuperSU())
|
||||
op_status = 1;
|
||||
LOGERR("Installing SuperSU was deprecated from TWRP.\n");
|
||||
}
|
||||
|
||||
operation_end(op_status);
|
||||
|
||||
@@ -2737,7 +2737,7 @@
|
||||
|
||||
<button style="main_button_half_width">
|
||||
<placement x="%col2_x_left%" y="%row15a_y%"/>
|
||||
<text>{@su_cancel=Do not Install}</text>
|
||||
<text>{@install_cancel=Do not Install}</text>
|
||||
<action function="reboot">%tw_reboot_param%</action>
|
||||
</button>
|
||||
|
||||
@@ -4726,51 +4726,6 @@
|
||||
</action>
|
||||
</page>
|
||||
|
||||
<page name="installsu">
|
||||
<template name="page"/>
|
||||
|
||||
<text style="text_l">
|
||||
<placement x="%col1_x_header%" y="%row3_header_y%"/>
|
||||
<text>{@reboot_hdr=Reboot}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m">
|
||||
<placement x="%col1_x_header%" y="%row4_header_y%"/>
|
||||
<text>{@su_hdr=SuperSU Check}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m_accent">
|
||||
<placement x="%center_x%" y="%row2_y%" placement="5"/>
|
||||
<text>{@su_note1=Your device does not appear to be rooted.}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m">
|
||||
<placement x="%center_x%" y="%row4_y%" placement="5"/>
|
||||
<text>{@su_note2=Install SuperSU now?}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m">
|
||||
<placement x="%center_x%" y="%row5_y%" placement="5"/>
|
||||
<text>{@su_note3=This will root your device.}</text>
|
||||
</text>
|
||||
|
||||
<button style="main_button_half_width">
|
||||
<placement x="%col2_x_left%" y="%row15a_y%"/>
|
||||
<text>{@su_cancel=Do not Install}</text>
|
||||
<action function="set">tw_page_done=1</action>
|
||||
</button>
|
||||
|
||||
<slider>
|
||||
<text>{@swipe_su_to_install=Swipe to Install}</text>
|
||||
<actions>
|
||||
<action function="set">tw_action=installsu</action>
|
||||
<action function="set">tw_action_text1={@su_installing=Installing SuperSU}</action>
|
||||
<action function="set">tw_action_text2=</action>
|
||||
<action function="page">singleaction_page</action>
|
||||
</actions>
|
||||
</slider>
|
||||
</page>
|
||||
|
||||
<page name="slideout">
|
||||
<fill color="%background_color%">
|
||||
<placement x="0" y="%row2_header_y%" w="%screen_width%" h="%slideout_bg_height%"/>
|
||||
|
||||
@@ -441,14 +441,7 @@
|
||||
<string name="sideload_usage">Použití: adb sideload název.zip</string>
|
||||
<string name="sideload_complete">ADB Sideload dokončený</string>
|
||||
<string name="reboot_hdr">Restart</string>
|
||||
<string name="su_hdr">Kontrola SuperSU</string>
|
||||
<string name="su_note1">Vaše zařízení se netváří jako rootnuté.</string>
|
||||
<string name="su_note2">Instalovat SuperSU nyní?</string>
|
||||
<string name="su_note3">Toto rootne vaše zařízení.</string>
|
||||
<string name="su_cancel">Neinstalovat</string>
|
||||
<string name="swipe_su_to_install">Potáhnutím nainstalovat</string>
|
||||
<string name="swipe_su_install"> Instalovat</string>
|
||||
<string name="su_installing">Instalace SuperSU</string>
|
||||
<string name="install_cancel">Neinstalovat</string>
|
||||
<string name="sel_storage_list">Vyberte úložiště</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
<string name="no_kernel_selinux">Kernel nemá podporu pro čtení obsahu SELinux.</string>
|
||||
|
||||
@@ -475,14 +475,7 @@
|
||||
<string name="fixing_contexts">Korrigiere Kontexte...</string>
|
||||
<string name="fix_contexts_complete">Korrektur der Kontexte abgeschlossen</string>
|
||||
<string name="reboot_hdr">Neustart</string>
|
||||
<string name="su_hdr">SuperSU-Check</string>
|
||||
<string name="su_note1">Anscheinend besteht kein Root-Zugriff auf das Gerät.</string>
|
||||
<string name="su_note2">SuperSU jetzt installieren?</string>
|
||||
<string name="su_note3">Dies wird Root-Zugriff auf dem Gerät einrichten.</string>
|
||||
<string name="su_cancel">Nicht installieren</string>
|
||||
<string name="swipe_su_to_install">Installation starten</string>
|
||||
<string name="swipe_su_install">Installieren</string>
|
||||
<string name="su_installing">Installiere SuperSU</string>
|
||||
<string name="install_cancel">Nicht installieren</string>
|
||||
<string name="sel_storage_list">Speicher auswählen</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
|
||||
|
||||
@@ -464,14 +464,7 @@
|
||||
<string name="fixing_contexts">Διόρθωση δικαιωμάτων...</string>
|
||||
<string name="fix_contexts_complete">Η Διόρθωση δικαιωμάτων ολοκληρώθηκε</string>
|
||||
<string name="reboot_hdr">Επανεκκίνηση</string>
|
||||
<string name="su_hdr">Έλεγχος SuperSU</string>
|
||||
<string name="su_note1">Η συσκευή σας δεν φαίνεται να έχει root.</string>
|
||||
<string name="su_note2">Εγκατάσταση SuperSU τώρα;</string>
|
||||
<string name="su_note3">Αυτό κάνει root στην συσκευή σας.</string>
|
||||
<string name="su_cancel">Μην εγκαταστήσετε</string>
|
||||
<string name="swipe_su_to_install">Σύρετε για εγκατάσταση</string>
|
||||
<string name="swipe_su_install"> Εγκατάσταση</string>
|
||||
<string name="su_installing">Εγκατάσταση SuperSU</string>
|
||||
<string name="install_cancel">Μην εγκαταστήσετε</string>
|
||||
<string name="sel_storage_list">Επιλέξτε Αποθ. χώρο</string>
|
||||
<string name="ok_btn">OΚ</string>
|
||||
<string name="no_kernel_selinux">Το Kernel δεν υποστηρίζει την ανάγνωση περιεχομένων SELinux.</string>
|
||||
|
||||
@@ -477,14 +477,7 @@
|
||||
<string name="fixing_contexts">Fixing Contexts...</string>
|
||||
<string name="fix_contexts_complete">Fix Contexts Complete</string>
|
||||
<string name="reboot_hdr">Reboot</string>
|
||||
<string name="su_hdr">SuperSU Check</string>
|
||||
<string name="su_note1">Your device does not appear to be rooted.</string>
|
||||
<string name="su_note2">Install SuperSU now?</string>
|
||||
<string name="su_note3">This will root your device.</string>
|
||||
<string name="su_cancel">Do Not Install</string>
|
||||
<string name="swipe_su_to_install">Swipe to Install</string>
|
||||
<string name="swipe_su_install"> Install</string>
|
||||
<string name="su_installing">Installing SuperSU</string>
|
||||
<string name="install_cancel">Do Not Install</string>
|
||||
<string name="sel_storage_list">Select Storage</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
|
||||
|
||||
@@ -453,14 +453,7 @@
|
||||
<string name="fixing_contexts">Fijando Contextos...</string>
|
||||
<string name="fix_contexts_complete">Fijar Contextos Completado</string>
|
||||
<string name="reboot_hdr">Reiniciar</string>
|
||||
<string name="su_hdr">Comprobar SuperSU</string>
|
||||
<string name="su_note1">Parece que tú dispositivo no esta rooteado.</string>
|
||||
<string name="su_note2">Instalar SuperSU ahora?</string>
|
||||
<string name="su_note3">Esto rooteara su dispositivo.</string>
|
||||
<string name="su_cancel">No instalar</string>
|
||||
<string name="swipe_su_to_install">Desliza para instalar</string>
|
||||
<string name="swipe_su_install"> Instalar</string>
|
||||
<string name="su_installing">Instalado SuperSU</string>
|
||||
<string name="install_cancel">No instalar</string>
|
||||
<string name="sel_storage_list">Seleccionar Almacenamiento</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
<string name="no_kernel_selinux">Kernel no tiene soporte para la lectura de los contextos de SELinux.</string>
|
||||
|
||||
@@ -450,14 +450,7 @@
|
||||
<string name="fixing_perms">Réparation des permissions...</string>
|
||||
<string name="fix_perms_complete">Réparation des permissions complétée</string>
|
||||
<string name="reboot_hdr">Redémarrer</string>
|
||||
<string name="su_hdr">Vérification SuperSU</string>
|
||||
<string name="su_note1">Votre appareil ne semble pas être rooté.</string>
|
||||
<string name="su_note2">Installer SuperSU maintenant?</string>
|
||||
<string name="su_note3">Ceci va rooter votre appareil.</string>
|
||||
<string name="su_cancel">Ne pas installer</string>
|
||||
<string name="swipe_su_to_install">Glisser pour installer</string>
|
||||
<string name="swipe_su_install">Installer</string>
|
||||
<string name="su_installing">Installation de SuperSU</string>
|
||||
<string name="install_cancel">Ne pas installer</string>
|
||||
<string name="sel_storage_list">Sélection du stockage</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
<string name="no_kernel_selinux">Le noyau ne supporte pas la lecture des contextes SELinux.</string>
|
||||
|
||||
@@ -475,14 +475,7 @@
|
||||
<string name="fixing_contexts">Kontextus javítása...</string>
|
||||
<string name="fix_contexts_complete">Kontextus javítása kész</string>
|
||||
<string name="reboot_hdr">Újraindítás</string>
|
||||
<string name="su_hdr">SuperSU ellenőrzés</string>
|
||||
<string name="su_note1">A készüléke nem tűnik rootoltnak.</string>
|
||||
<string name="su_note2">SuperSU telepítése most?</string>
|
||||
<string name="su_note3">Ez rootolni fogja a készülékét.</string>
|
||||
<string name="su_cancel">Ne telepítse</string>
|
||||
<string name="swipe_su_to_install">Csúsztasson a telepítéshez</string>
|
||||
<string name="swipe_su_install"> Telepítés</string>
|
||||
<string name="su_installing">SuperSU telepítése</string>
|
||||
<string name="install_cancel">Ne telepítse</string>
|
||||
<string name="sel_storage_list">Válasszon tárolót</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
|
||||
|
||||
@@ -475,14 +475,7 @@
|
||||
<string name="fixing_contexts">Ripristino dei contesti in corso...</string>
|
||||
<string name="fix_contexts_complete">Ripristino dei contesti completato</string>
|
||||
<string name="reboot_hdr">Riavvio</string>
|
||||
<string name="su_hdr">Verifica SuperSU</string>
|
||||
<string name="su_note1">Il tuo dispositivo non sembra disporre di accesso root.</string>
|
||||
<string name="su_note2">Installare SuperSU ora?</string>
|
||||
<string name="su_note3">Ciò ti garantirà privilegi di root.</string>
|
||||
<string name="su_cancel">Non installare</string>
|
||||
<string name="swipe_su_to_install">Scorri per installare</string>
|
||||
<string name="swipe_su_install"> Installa</string>
|
||||
<string name="su_installing">Installazione di SuperSU in corso...</string>
|
||||
<string name="install_cancel">Non installare</string>
|
||||
<string name="sel_storage_list">Scegli archivio</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
|
||||
|
||||
@@ -462,14 +462,7 @@
|
||||
<string name="fixing_contexts">Repareren van Contexts...</string>
|
||||
<string name="fix_contexts_complete">Het repareren van Contexts is gereed</string>
|
||||
<string name="reboot_hdr">Herstart</string>
|
||||
<string name="su_hdr">SuperSU Controle</string>
|
||||
<string name="su_note1">Uw apparaat lijkt niet geroot te zijn.</string>
|
||||
<string name="su_note2">Installeer SuperSU nu?</string>
|
||||
<string name="su_note3">Dit zal uw apparaat rooten.</string>
|
||||
<string name="su_cancel">Installeer niet</string>
|
||||
<string name="swipe_su_to_install">Veeg om te installeren</string>
|
||||
<string name="swipe_su_install"> Installeren</string>
|
||||
<string name="su_installing">Installeren van SuperSU</string>
|
||||
<string name="install_cancel">Installeer niet</string>
|
||||
<string name="sel_storage_list">Selecteer opslag</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
|
||||
|
||||
@@ -462,14 +462,7 @@
|
||||
<string name="fixing_contexts">Naprawianie uprawnień...</string>
|
||||
<string name="fix_contexts_complete">Naprawianie uprawnień zakończone</string>
|
||||
<string name="reboot_hdr">Restart</string>
|
||||
<string name="su_hdr">Sprawdzanie SuperSU</string>
|
||||
<string name="su_note1">Twoje urządzenie nie jest zrootowane.</string>
|
||||
<string name="su_note2">Zainstalować SuperSU teraz?</string>
|
||||
<string name="su_note3">To zrootuje twoje urządzenie.</string>
|
||||
<string name="su_cancel">Nie instaluj</string>
|
||||
<string name="swipe_su_to_install">Przesuń, aby zainstalować</string>
|
||||
<string name="swipe_su_install"> Instaluj</string>
|
||||
<string name="su_installing">Instalowanie SuperSU</string>
|
||||
<string name="install_cancel">Nie instaluj</string>
|
||||
<string name="sel_storage_list">Wybierz pamięć</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
|
||||
|
||||
@@ -441,14 +441,7 @@
|
||||
<string name="sideload_usage">Uso: adb sideload filename.zip</string>
|
||||
<string name="sideload_complete">ADB Sideload completa</string>
|
||||
<string name="reboot_hdr">Reiniciar</string>
|
||||
<string name="su_hdr">Seleção de Super Usuário</string>
|
||||
<string name="su_note1">Seu dispositivo não aparece para ser enraizado.</string>
|
||||
<string name="su_note2">Instalar Super Usuário agora?</string>
|
||||
<string name="su_note3">Isto enraizará seu dispositivo.</string>
|
||||
<string name="su_cancel">Não instale</string>
|
||||
<string name="swipe_su_to_install">Deslize para instalar</string>
|
||||
<string name="swipe_su_install"> Instalar</string>
|
||||
<string name="su_installing">Instalação Super Usuário</string>
|
||||
<string name="install_cancel">Não instale</string>
|
||||
<string name="sel_storage_list">Selecionar armazenamento</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
<string name="no_kernel_selinux">Kernel não tem suporte para leitura de contextos do SELinux.</string>
|
||||
|
||||
@@ -477,14 +477,7 @@
|
||||
<string name="fixing_contexts">A corrigir contextos...</string>
|
||||
<string name="fix_contexts_complete">Correção de contextos concluída</string>
|
||||
<string name="reboot_hdr">Reiniciar</string>
|
||||
<string name="su_hdr">Permissão ROOT</string>
|
||||
<string name="su_note1">O seu dispositivo parece não ter ROOT</string>
|
||||
<string name="su_note2">Pretende instalar o binário su?</string>
|
||||
<string name="su_note3">O mesmo permitirá dar ROOT ao dispositivo.</string>
|
||||
<string name="su_cancel">Não instalar</string>
|
||||
<string name="swipe_su_to_install"> Deslize para dar ROOT</string>
|
||||
<string name="swipe_su_install"> Dar ROOT</string>
|
||||
<string name="su_installing">A instalar SuperSU</string>
|
||||
<string name="install_cancel">Não instalar</string>
|
||||
<string name="sel_storage_list">Selecionar armazenamento</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
|
||||
|
||||
@@ -472,14 +472,7 @@
|
||||
<string name="fixing_contexts">Исправление контекста...</string>
|
||||
<string name="fix_contexts_complete">Исправление контекста завершено</string>
|
||||
<string name="reboot_hdr">Перезагрузка</string>
|
||||
<string name="su_hdr">Проверика SuperSU</string>
|
||||
<string name="su_note1">В вашем устройстве отсутствует рут-доступ.</string>
|
||||
<string name="su_note2">Установить SuperSU сейчас?</string>
|
||||
<string name="su_note3">Рут-доступ будет активирован.</string>
|
||||
<string name="su_cancel">Не устанавливать</string>
|
||||
<string name="swipe_su_to_install">Свайп для установки</string>
|
||||
<string name="swipe_su_install"> Установка</string>
|
||||
<string name="su_installing">Установка SuperSU</string>
|
||||
<string name="install_cancel">Не устанавливать</string>
|
||||
<string name="sel_storage_list">Выберите накопитель</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
<!-- Various console messages - these consist of user displayed messages, oftentimes errors -->
|
||||
|
||||
@@ -441,14 +441,7 @@
|
||||
<string name="sideload_usage">Použitie: adb sideload názov.zip</string>
|
||||
<string name="sideload_complete">ADB Sideload dokončený</string>
|
||||
<string name="reboot_hdr">Reštart</string>
|
||||
<string name="su_hdr">Kontrola SuperSU</string>
|
||||
<string name="su_note1">Vaše zariadenie nemá ROOT.</string>
|
||||
<string name="su_note2">Chcete nainštalovať SuperSU?</string>
|
||||
<string name="su_note3">Toto povolí ROOT práva na vašom zariadení.</string>
|
||||
<string name="su_cancel">Neinštalovať</string>
|
||||
<string name="swipe_su_to_install">Potiahnite pre inštaláciu ROOT</string>
|
||||
<string name="swipe_su_install"> Inštalovať</string>
|
||||
<string name="su_installing">Inštalácia SuperSU</string>
|
||||
<string name="install_cancel">Neinštalovať</string>
|
||||
<string name="sel_storage_list">Vyberte úložisko</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
<string name="no_kernel_selinux">Kernel nemá podporu pre čítanie obsahu SELinux.</string>
|
||||
|
||||
@@ -441,14 +441,7 @@
|
||||
<string name="sideload_usage">Uporaba: adb sideload filename.zip</string>
|
||||
<string name="sideload_complete">Stransko nalaganje ADB končano</string>
|
||||
<string name="reboot_hdr">Pon. zaženi</string>
|
||||
<string name="su_hdr">Preveri SuperSU</string>
|
||||
<string name="su_note1">Videti je, da vaša naprava nima skrbniškega dostopa.</string>
|
||||
<string name="su_note2">Namesti SuperSU zdaj?</string>
|
||||
<string name="su_note3">To bo omogočilo skrbniški dostop na napravi.</string>
|
||||
<string name="su_cancel">Ne namesti</string>
|
||||
<string name="swipe_su_to_install">Povlecite za namestitev</string>
|
||||
<string name="swipe_su_install"> Namesti</string>
|
||||
<string name="su_installing">Nameščanje SuperSU-ja</string>
|
||||
<string name="install_cancel">Ne namesti</string>
|
||||
<string name="sel_storage_list">Izberite pomnilniško napravo</string>
|
||||
<string name="ok_btn">V redu</string>
|
||||
<string name="no_kernel_selinux">Jedro nima podpore za branje vsebin SELinux.</string>
|
||||
|
||||
@@ -477,14 +477,7 @@
|
||||
<string name="fixing_contexts">Bağlamlar Düzeltiliyor...</string>
|
||||
<string name="fix_contexts_complete">Bağlamları Düzeltme Tamamlandı</string>
|
||||
<string name="reboot_hdr">Yeniden Başlat</string>
|
||||
<string name="su_hdr">SuperSU Denetimi</string>
|
||||
<string name="su_note1">Cihazınız rootlanmamış görünüyor.</string>
|
||||
<string name="su_note2">SuperSU şimdi yüklensin mi?</string>
|
||||
<string name="su_note3">Bu işlem cihazınızı rootlayacaktır.</string>
|
||||
<string name="su_cancel">Yükleme</string>
|
||||
<string name="swipe_su_to_install">Yüklemek için Kaydır</string>
|
||||
<string name="swipe_su_install"> Yükle</string>
|
||||
<string name="su_installing">SuperSU Yükleniyor</string>
|
||||
<string name="install_cancel">Yükleme</string>
|
||||
<string name="sel_storage_list">Depolama Seç</string>
|
||||
<string name="ok_btn">Tamam</string>
|
||||
|
||||
|
||||
@@ -456,14 +456,7 @@
|
||||
<string name="fixing_contexts">Виправлення контексту...</string>
|
||||
<string name="fix_contexts_complete">Виправлення контексту завершено</string>
|
||||
<string name="reboot_hdr">Перезавантаження</string>
|
||||
<string name="su_hdr">Перевірити SuperSU</string>
|
||||
<string name="su_note1">Пристрій не має рут.</string>
|
||||
<string name="su_note2">Встановити SuperSU зараз?</string>
|
||||
<string name="su_note3">Пристрій буде рутовано.</string>
|
||||
<string name="su_cancel">Не встановлювати</string>
|
||||
<string name="swipe_su_to_install">Встановити</string>
|
||||
<string name="swipe_su_install"> Встановлення</string>
|
||||
<string name="su_installing">Встановлення SuperSU</string>
|
||||
<string name="install_cancel">Не встановлювати</string>
|
||||
<string name="sel_storage_list">Вибір сховища</string>
|
||||
|
||||
<!-- Various console messages - these consist of user displayed messages, oftentimes errors -->
|
||||
|
||||
@@ -2932,7 +2932,7 @@
|
||||
|
||||
<button style="main_button_half_height">
|
||||
<placement x="%indent%" y="%row16_y%"/>
|
||||
<text>{@su_cancel=Do not Install}</text>
|
||||
<text>{@install_cancel=Do not Install}</text>
|
||||
<action function="reboot">%tw_reboot_param%</action>
|
||||
</button>
|
||||
|
||||
@@ -4708,51 +4708,6 @@
|
||||
</action>
|
||||
</page>
|
||||
|
||||
<page name="installsu">
|
||||
<template name="page"/>
|
||||
|
||||
<text style="text_l">
|
||||
<placement x="%col1_x_header%" y="%row3_header_y%"/>
|
||||
<text>{@reboot_hdr=Reboot}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m">
|
||||
<placement x="%col1_x_header%" y="%row4_header_y%"/>
|
||||
<text>{@su_hdr=SuperSU Check}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m_accent">
|
||||
<placement x="%center_x%" y="%row2_y%" placement="5"/>
|
||||
<text>{@su_note1=Your device does not appear to be rooted.}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m">
|
||||
<placement x="%center_x%" y="%row4_y%" placement="5"/>
|
||||
<text>{@su_note2=Install SuperSU now?}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m">
|
||||
<placement x="%center_x%" y="%row5_y%" placement="5"/>
|
||||
<text>{@su_note3=This will root your device.}</text>
|
||||
</text>
|
||||
|
||||
<button style="main_button_half_height">
|
||||
<placement x="%indent%" y="%row18a_y%"/>
|
||||
<text>{@su_cancel=Do not Install}</text>
|
||||
<action function="set">tw_page_done=1</action>
|
||||
</button>
|
||||
|
||||
<slider>
|
||||
<text>{@swipe_su_to_install=Swipe to Install}</text>
|
||||
<actions>
|
||||
<action function="set">tw_action=installsu</action>
|
||||
<action function="set">tw_action_text1={@su_installing=Installing SuperSU}</action>
|
||||
<action function="set">tw_action_text2=</action>
|
||||
<action function="page">singleaction_page</action>
|
||||
</actions>
|
||||
</slider>
|
||||
</page>
|
||||
|
||||
<page name="slideout">
|
||||
<fill color="%background_color%">
|
||||
<placement x="0" y="%row2_header_y%" w="%screen_width%" h="%slideout_bg_height%"/>
|
||||
|
||||
@@ -3389,7 +3389,7 @@
|
||||
|
||||
<button style="main_button_half_height">
|
||||
<placement x="%indent%" y="%row7_y%"/>
|
||||
<text>{@su_cancel=Do not Install}</text>
|
||||
<text>{@install_cancel=Do not Install}</text>
|
||||
<action function="reboot">%tw_reboot_param%</action>
|
||||
</button>
|
||||
|
||||
@@ -5403,48 +5403,6 @@
|
||||
</action>
|
||||
</page>
|
||||
|
||||
<page name="installsu">
|
||||
<template name="page"/>
|
||||
|
||||
<template name="statusbar"/>
|
||||
|
||||
<text style="text_m">
|
||||
<placement x="%col1_x_left%" y="%row1_header_y%"/>
|
||||
<text>{@reboot_hdr=Reboot} > {@su_hdr=SuperSU Check}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m_accent">
|
||||
<placement x="%center_x%" y="%row2_y%" placement="5"/>
|
||||
<text>{@su_note1=Your device does not appear to be rooted.}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m">
|
||||
<placement x="%center_x%" y="%row4_y%" placement="5"/>
|
||||
<text>{@su_note2=Install SuperSU now?}</text>
|
||||
</text>
|
||||
|
||||
<text style="text_m">
|
||||
<placement x="%center_x%" y="%row5_y%" placement="5"/>
|
||||
<text>{@su_note3=This will root your device.}</text>
|
||||
</text>
|
||||
|
||||
<button style="main_button_full_width">
|
||||
<placement x="%indent%" y="%row6_y%"/>
|
||||
<text>{@su_cancel=Do not Install}</text>
|
||||
<action function="set">tw_page_done=1</action>
|
||||
</button>
|
||||
|
||||
<slider>
|
||||
<text>{@swipe_su_install= Install}</text>
|
||||
<actions>
|
||||
<action function="set">tw_action=installsu</action>
|
||||
<action function="set">tw_action_text1={@su_installing=Installing SuperSU}</action>
|
||||
<action function="set">tw_action_text2=</action>
|
||||
<action function="page">singleaction_page</action>
|
||||
</actions>
|
||||
</slider>
|
||||
</page>
|
||||
|
||||
<page name="slideout">
|
||||
<fill color="%background_color%">
|
||||
<placement x="0" y="%row2_header_y%" w="%screen_width%" h="%slideout_bg_height%"/>
|
||||
|
||||
@@ -457,14 +457,7 @@
|
||||
<string name="fixing_contexts">コンテキストの修正中...</string>
|
||||
<string name="fix_contexts_complete">コンテキストを修正しました</string>
|
||||
<string name="reboot_hdr">再起動</string>
|
||||
<string name="su_hdr">SuperSU チェック</string>
|
||||
<string name="su_note1">機器がroot化されていないようです。</string>
|
||||
<string name="su_note2">SuperSU をインストールしますか?</string>
|
||||
<string name="su_note3">機器をroot化します。</string>
|
||||
<string name="su_cancel">インストールしない</string>
|
||||
<string name="swipe_su_to_install">スワイプでインストール</string>
|
||||
<string name="swipe_su_install"> インストール</string>
|
||||
<string name="su_installing">SuperSU のインストール中</string>
|
||||
<string name="install_cancel">インストールしない</string>
|
||||
<string name="sel_storage_list">ストレージの選択</string>
|
||||
<string name="ok_btn">OK</string>
|
||||
<!-- Various console messages - these consist of user displayed messages, oftentimes errors -->
|
||||
|
||||
@@ -476,14 +476,7 @@
|
||||
<string name="fixing_contexts">正在修复 Context…</string>
|
||||
<string name="fix_contexts_complete">修复 Context 完成</string>
|
||||
<string name="reboot_hdr">重启选项</string>
|
||||
<string name="su_hdr">SuperSU 检测</string>
|
||||
<string name="su_note1">系统目前没有 Root。</string>
|
||||
<string name="su_note2">是否现在安装 SuperSU?</string>
|
||||
<string name="su_note3">这将会 Root 您的设备。</string>
|
||||
<string name="su_cancel">不,以后再说</string>
|
||||
<string name="swipe_su_to_install">滑动按钮确认安装</string>
|
||||
<string name="swipe_su_install"> 安装</string>
|
||||
<string name="su_installing">正在安装 SuperSU</string>
|
||||
<string name="install_cancel">不,以后再说</string>
|
||||
<string name="sel_storage_list">选择存储位置</string>
|
||||
<string name="ok_btn">确定</string>
|
||||
|
||||
|
||||
@@ -476,14 +476,7 @@
|
||||
<string name="fixing_contexts">正在修復 Context…</string>
|
||||
<string name="fix_contexts_complete">修復 Context 完成</string>
|
||||
<string name="reboot_hdr">重啟選項</string>
|
||||
<string name="su_hdr">SuperSU 檢測</string>
|
||||
<string name="su_note1">系統目前沒有 Root。</string>
|
||||
<string name="su_note2">是否現在安裝 SuperSU?</string>
|
||||
<string name="su_note3">這將會 Root 您的設備。</string>
|
||||
<string name="su_cancel">不,以後再說</string>
|
||||
<string name="swipe_su_to_install">滑動按鈕確認安裝</string>
|
||||
<string name="swipe_su_install"> 安裝</string>
|
||||
<string name="su_installing">正在安裝 SuperSU</string>
|
||||
<string name="install_cancel">不,以後再說</string>
|
||||
<string name="sel_storage_list">選擇存儲位置</string>
|
||||
<string name="ok_btn">確定</string>
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
#!/system/bin/sh
|
||||
/system/xbin/daemonsu --auto-daemon &
|
||||
@@ -449,114 +449,6 @@ ifeq ($(TW_INCLUDE_DUMLOCK), true)
|
||||
include $(BUILD_PREBUILT)
|
||||
endif
|
||||
|
||||
ifneq ($(TW_EXCLUDE_SUPERSU), true)
|
||||
ifeq ($(TARGET_ARCH), arm)
|
||||
#chattr.pie
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := chattr.pie
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
#libsupol.so
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := libsupol.so
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
#su binary
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := suarm
|
||||
LOCAL_MODULE_STEM := su
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
#supolicy
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := supolicy
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
endif
|
||||
ifeq ($(TARGET_ARCH), arm64)
|
||||
#libsupol.so
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := libsupol.soarm64
|
||||
LOCAL_MODULE_STEM := libsupol.so
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
#su binary
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := suarm64
|
||||
LOCAL_MODULE_STEM := su
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
#supolicy
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := supolicyarm64
|
||||
LOCAL_MODULE_STEM := supolicy
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
endif
|
||||
|
||||
#install-recovery.sh
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := install-recovery.sh
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
#install-supersu.sh
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := install-supersu.sh
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
#99SuperSUDaemon
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := 99SuperSUDaemon
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
|
||||
#SuperSU special installer APK
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := Superuser.apk
|
||||
LOCAL_MODULE_TAGS := eng
|
||||
LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
|
||||
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu
|
||||
LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
include $(BUILD_PREBUILT)
|
||||
endif
|
||||
|
||||
#TWRP App "placeholder"
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := me.twrp.twrpapp.apk
|
||||
|
||||
Binary file not shown.
BIN
prebuilt/chattr
BIN
prebuilt/chattr
Binary file not shown.
Binary file not shown.
@@ -1,17 +0,0 @@
|
||||
#!/system/bin/sh
|
||||
|
||||
# If you're implementing this in a custom kernel/firmware,
|
||||
# I suggest you use a different script name, and add a service
|
||||
# to launch it from init.rc
|
||||
|
||||
# Launches SuperSU in daemon mode only on Android 4.3+.
|
||||
# Nothing will happen on 4.2.x or older, unless SELinux+Enforcing.
|
||||
# If you want to force loading the daemon, use "--daemon" instead
|
||||
|
||||
/system/xbin/daemonsu --auto-daemon &
|
||||
|
||||
# Some apps like to run stuff from this script as well, that will
|
||||
# obviously break root - in your code, just search this file
|
||||
# for "install-recovery-2.sh", and if present, write there instead.
|
||||
|
||||
/system/etc/install-recovery-2.sh
|
||||
@@ -1,405 +0,0 @@
|
||||
#!/sbin/sh
|
||||
#
|
||||
# SuperSU installer ZIP
|
||||
# Copyright (c) 2012-2014 - Chainfire
|
||||
#
|
||||
# To install SuperSU properly, aside from cleaning old versions and
|
||||
# other superuser-type apps from the system, the following files need to
|
||||
# be installed:
|
||||
#
|
||||
# API source target chmod chcon required
|
||||
#
|
||||
# 7-19 common/Superuser.apk /system/app/Superuser.apk 0644 u:object_r:system_file:s0 gui
|
||||
# 20+ common/Superuser.apk /system/app/SuperSU/SuperSU.apk 0644 u:object_r:system_file:s0 gui
|
||||
#
|
||||
# 17+ common/install-recovery.sh /system/etc/install-recovery.sh 0755 *1 required
|
||||
# 17+ /system/bin/install-recovery.sh (symlink to /system/etc/...) required
|
||||
# *1: same as /system/bin/toolbox: u:object_r:system_file:s0 if API < 20, u:object_r:toolbox_exec:s0 if API >= 20
|
||||
#
|
||||
# 7+ ARCH/su /system/xbin/su *2 u:object_r:system_file:s0 required
|
||||
# 7+ /system/bin/.ext/.su *2 u:object_r:system_file:s0 gui
|
||||
# 17+ /system/xbin/daemonsu 0755 u:object_r:system_file:s0 required
|
||||
# 17+ /system/xbin/sugote 0755 u:object_r:zygote_exec:s0 required
|
||||
# *2: 06755 if API < 18, 0755 if API >= 18
|
||||
#
|
||||
# 19+ ARCH/supolicy /system/xbin/supolicy 0755 u:object_r:system_file:s0 required
|
||||
# 19+ ARCH/libsupol.so /system/lib(64)/libsupol.so 0644 u:object_r:system_file:s0 required
|
||||
#
|
||||
# 17+ /system/bin/sh or mksh *3 /system/xbin/sugote-mksh 0755 u:object_r:system_file:s0 required
|
||||
# *3: which one (or both) are available depends on API
|
||||
#
|
||||
# 21+ /system/bin/app_process32 *4 /system/bin/app_process32_original 0755 u:object_r:zygote_exec:s0 required
|
||||
# 21+ /system/bin/app_process64 *4 /system/bin/app_process64_original 0755 u:object_r:zygote_exec:s0 required
|
||||
# 21+ /system/bin/app_processXX *4 /system/bin/app_process_init 0755 u:object_r:system_file:s0 required
|
||||
# 21+ /system/bin/app_process (symlink to /system/xbin/daemonsu) required
|
||||
# 21+ *4 /system/bin/app_process32 (symlink to /system/xbin/daemonsu) required
|
||||
# 21+ *4 /system/bin/app_process64 (symlink to /system/xbin/daemonsu) required
|
||||
# *4: Only do this for the relevant bits. On a 64 bits system, leave the 32 bits files alone, or dynamic linker errors
|
||||
# will prevent the system from fully working in subtle ways. The bits of the su binary must also match!
|
||||
#
|
||||
# 17+ common/99SuperSUDaemon *5 /system/etc/init.d/99SuperSUDaemon 0755 u:object_r:system_file:s0 optional
|
||||
# *5: only place this file if /system/etc/init.d is present
|
||||
#
|
||||
# 17+ 'echo 1 >' or 'touch' *6 /system/etc/.installed_su_daemon 0644 u:object_r:system_file:s0 optional
|
||||
# *6: the file just needs to exist or some recoveries will nag you. Even with it there, it may still happen.
|
||||
#
|
||||
# It may seem some files are installed multiple times needlessly, but
|
||||
# it only seems that way. Installing files differently or symlinking
|
||||
# instead of copying (unless specified) will lead to issues eventually.
|
||||
#
|
||||
# The following su binary versions are included in the full package. Each
|
||||
# should be installed only if the system has the same or newer API level
|
||||
# as listed. The script may fall back to a different binary on older API
|
||||
# levels. supolicy are all ndk/pie/19+ for 32 bit, ndk/pie/20+ for 64 bit.
|
||||
#
|
||||
# binary ARCH/path build type API
|
||||
#
|
||||
# arm-v5te arm aosp static 7+
|
||||
# x86 x86 aosp static 7+
|
||||
#
|
||||
# arm-v7a armv7 ndk pie 17+
|
||||
# mips mips ndk pie 17+
|
||||
#
|
||||
# arm64-v8a arm64 ndk pie 20+
|
||||
# mips64 mips64 ndk pie 20+
|
||||
# x86_64 x64 ndk pie 20+
|
||||
#
|
||||
# Note that if SELinux is set to enforcing, the daemonsu binary expects
|
||||
# to be run at startup (usually from install-recovery.sh, 99SuperSUDaemon,
|
||||
# or app_process) from u:r:init:s0 or u:r:kernel:s0 contexts. Depending
|
||||
# on the current policies, it can also deal with u:r:init_shell:s0 and
|
||||
# u:r:toolbox:s0 contexts. Any other context will lead to issues eventually.
|
||||
#
|
||||
# After installation, run '/system/xbin/su --install', which may need to
|
||||
# perform some additional installation steps. Ideally, at one point,
|
||||
# a lot of this script will be moved there.
|
||||
#
|
||||
# The included chattr(.pie) binaries are used to remove ext2's immutable
|
||||
# flag on some files. This flag is no longer set by SuperSU's OTA
|
||||
# survival since API level 18, so there is no need for the 64 bit versions.
|
||||
# Note that chattr does not need to be installed to the system, it's just
|
||||
# used by this script, and not supported by the busybox used in older
|
||||
# recoveries.
|
||||
#
|
||||
# Non-static binaries are supported to be PIE (Position Independent
|
||||
# Executable) from API level 16, and required from API level 20 (which will
|
||||
# refuse to execute non-static non-PIE).
|
||||
#
|
||||
# The script performs serveral actions in various ways, sometimes
|
||||
# multiple times, due to different recoveries and firmwares behaving
|
||||
# differently, and it thus being required for the correct result.
|
||||
|
||||
OUTFD=$2
|
||||
ZIP=$3
|
||||
|
||||
SYSTEMLIB=/system/lib
|
||||
|
||||
ui_print() {
|
||||
echo -n -e "echo $1\n" > /proc/self/fd/$OUTFD
|
||||
echo -n -e "echo\n" > /proc/self/fd/$OUTFD
|
||||
}
|
||||
|
||||
ch_con() {
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB /system/toolbox chcon -h u:object_r:system_file:s0 $1
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB /system/bin/toolbox chcon -h u:object_r:system_file:s0 $1
|
||||
chcon -h u:object_r:system_file:s0 $1
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB /system/toolbox chcon u:object_r:system_file:s0 $1
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB /system/bin/toolbox chcon u:object_r:system_file:s0 $1
|
||||
chcon u:object_r:system_file:s0 $1
|
||||
}
|
||||
|
||||
ch_con_ext() {
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB /system/toolbox chcon $2 $1
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB /system/bin/toolbox chcon $2 $1
|
||||
chcon $2 $1
|
||||
}
|
||||
|
||||
ln_con() {
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB /system/toolbox ln -s $1 $2
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB /system/bin/toolbox ln -s $1 $2
|
||||
ln -s $1 $2
|
||||
ch_con $2
|
||||
}
|
||||
|
||||
set_perm() {
|
||||
chown $1.$2 $4
|
||||
chown $1:$2 $4
|
||||
chmod $3 $4
|
||||
ch_con $4
|
||||
ch_con_ext $4 $5
|
||||
}
|
||||
|
||||
cp_perm() {
|
||||
rm $5
|
||||
cat $4 > $5
|
||||
set_perm $1 $2 $3 $5 $6
|
||||
}
|
||||
|
||||
echo "*********************"
|
||||
echo "SuperSU installer ZIP"
|
||||
echo "*********************"
|
||||
|
||||
echo "- Mounting /system, /data and rootfs"
|
||||
mount /system
|
||||
mount /data
|
||||
mount -o rw,remount /system
|
||||
mount -o rw,remount /system /system
|
||||
mount -o rw,remount /
|
||||
mount -o rw,remount / /
|
||||
|
||||
cat /system/bin/toolbox > /system/toolbox
|
||||
chmod 0755 /system/toolbox
|
||||
ch_con /system/toolbox
|
||||
|
||||
API=$(cat /system/build.prop | grep "ro.build.version.sdk=" | dd bs=1 skip=21 count=2)
|
||||
ABI=$(cat /system/build.prop /default.prop | grep -m 1 "ro.product.cpu.abi=" | dd bs=1 skip=19 count=3)
|
||||
ABILONG=$(cat /system/build.prop /default.prop | grep -m 1 "ro.product.cpu.abi=" | dd bs=1 skip=19)
|
||||
ABI2=$(cat /system/build.prop /default.prop | grep -m 1 "ro.product.cpu.abi2=" | dd bs=1 skip=20 count=3)
|
||||
SUMOD=06755
|
||||
SUGOTE=false
|
||||
SUPOLICY=false
|
||||
INSTALL_RECOVERY_CONTEXT=u:object_r:system_file:s0
|
||||
MKSH=/system/bin/mksh
|
||||
PIE=
|
||||
ARCH=arm
|
||||
APKFOLDER=false
|
||||
APKNAME=/system/app/Superuser.apk
|
||||
APPPROCESS=false
|
||||
APPPROCESS64=false
|
||||
if [ "$ABI" = "x86" ]; then ARCH=x86; fi;
|
||||
if [ "$ABI2" = "x86" ]; then ARCH=x86; fi;
|
||||
if [ "$API" -eq "$API" ]; then
|
||||
if [ "$API" -ge "17" ]; then
|
||||
SUGOTE=true
|
||||
PIE=.pie
|
||||
if [ "$ABILONG" = "armeabi-v7a" ]; then ARCH=armv7; fi;
|
||||
if [ "$ABI" = "mip" ]; then ARCH=mips; fi;
|
||||
if [ "$ABILONG" = "mips" ]; then ARCH=mips; fi;
|
||||
fi
|
||||
if [ "$API" -ge "18" ]; then
|
||||
SUMOD=0755
|
||||
fi
|
||||
if [ "$API" -ge "20" ]; then
|
||||
if [ "$ABILONG" = "arm64-v8a" ]; then ARCH=arm64; SYSTEMLIB=/system/lib64; APPPROCESS64=true; fi;
|
||||
if [ "$ABILONG" = "mips64" ]; then ARCH=mips64; SYSTEMLIB=/system/lib64; APPPROCESS64=true; fi;
|
||||
if [ "$ABILONG" = "x86_64" ]; then ARCH=x64; SYSTEMLIB=/system/lib64; APPPROCESS64=true; fi;
|
||||
APKFOLDER=true
|
||||
APKNAME=/system/app/SuperSU/SuperSU.apk
|
||||
fi
|
||||
if [ "$API" -ge "19" ]; then
|
||||
SUPOLICY=true
|
||||
if [ "$(LD_LIBRARY_PATH=$SYSTEMLIB /system/toolbox ls -lZ /system/bin/toolbox | grep toolbox_exec > /dev/null; echo $?)" -eq "0" ]; then
|
||||
INSTALL_RECOVERY_CONTEXT=u:object_r:toolbox_exec:s0
|
||||
fi
|
||||
fi
|
||||
if [ "$API" -ge "21" ]; then
|
||||
APPPROCESS=true
|
||||
fi
|
||||
fi
|
||||
if [ ! -f $MKSH ]; then
|
||||
MKSH=/system/bin/sh
|
||||
fi
|
||||
|
||||
#echo "DBG [$API] [$ABI] [$ABI2] [$ABILONG] [$ARCH] [$MKSH]"
|
||||
|
||||
# Don't extract in TWRP
|
||||
#echo "- Extracting files"
|
||||
#cd /tmp
|
||||
#mkdir supersu
|
||||
#cd supersu
|
||||
#unzip -o "$ZIP"
|
||||
|
||||
BIN=/supersu
|
||||
COM=/supersu
|
||||
|
||||
echo "- Disabling OTA survival"
|
||||
chmod 0755 /supersu/chattr$PIE
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/bin/su
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/xbin/su
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/bin/.ext/.su
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/xbin/daemonsu
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/xbin/sugote
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/xbin/sugote_mksh
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/xbin/supolicy
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/lib/libsupol.so
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/lib64/libsupol.so
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/etc/install-recovery.sh
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB $BIN/chattr$PIE -i /system/bin/install-recovery.sh
|
||||
|
||||
echo "- Removing old files"
|
||||
|
||||
if [ -f "/system/bin/install-recovery.sh" ]; then
|
||||
if [ ! -f "/system/bin/install-recovery_original.sh" ]; then
|
||||
mv /system/bin/install-recovery.sh /system/bin/install-recovery_original.sh
|
||||
ch_con /system/bin/install-recovery_original.sh
|
||||
fi
|
||||
fi
|
||||
if [ -f "/system/etc/install-recovery.sh" ]; then
|
||||
if [ ! -f "/system/etc/install-recovery_original.sh" ]; then
|
||||
mv /system/etc/install-recovery.sh /system/etc/install-recovery_original.sh
|
||||
ch_con /system/etc/install-recovery_original.sh
|
||||
fi
|
||||
fi
|
||||
|
||||
rm -f /system/bin/su
|
||||
rm -f /system/xbin/su
|
||||
rm -f /system/xbin/daemonsu
|
||||
rm -f /system/xbin/sugote
|
||||
rm -f /system/xbin/sugote-mksh
|
||||
rm -f /system/xbin/supolicy
|
||||
rm -f /system/lib/libsupol.so
|
||||
rm -f /system/lib64/libsupol.so
|
||||
rm -f /system/bin/.ext/.su
|
||||
rm -f /system/bin/install-recovery.sh
|
||||
rm -f /system/etc/install-recovery.sh
|
||||
rm -f /system/etc/init.d/99SuperSUDaemon
|
||||
rm -f /system/etc/.installed_su_daemon
|
||||
|
||||
rm -f /system/app/Superuser.apk
|
||||
rm -f /system/app/Superuser.odex
|
||||
rm -rf /system/app/Superuser
|
||||
rm -f /system/app/SuperUser.apk
|
||||
rm -f /system/app/SuperUser.odex
|
||||
rm -rf /system/app/SuperUser
|
||||
rm -f /system/app/superuser.apk
|
||||
rm -f /system/app/superuser.odex
|
||||
rm -rf /system/app/superuser
|
||||
rm -f /system/app/Supersu.apk
|
||||
rm -f /system/app/Supersu.odex
|
||||
rm -rf /system/app/Supersu
|
||||
rm -f /system/app/SuperSU.apk
|
||||
rm -f /system/app/SuperSU.odex
|
||||
rm -rf /system/app/SuperSU
|
||||
rm -f /system/app/supersu.apk
|
||||
rm -f /system/app/supersu.odex
|
||||
rm -rf /system/app/supersu
|
||||
rm -f /system/app/VenomSuperUser.apk
|
||||
rm -f /system/app/VenomSuperUser.odex
|
||||
rm -rf /system/app/VenomSuperUser
|
||||
rm -f /data/dalvik-cache/*com.noshufou.android.su*
|
||||
rm -f /data/dalvik-cache/*/*com.noshufou.android.su*
|
||||
rm -f /data/dalvik-cache/*com.koushikdutta.superuser*
|
||||
rm -f /data/dalvik-cache/*/*com.koushikdutta.superuser*
|
||||
rm -f /data/dalvik-cache/*com.mgyun.shua.su*
|
||||
rm -f /data/dalvik-cache/*/*com.mgyun.shua.su*
|
||||
rm -f /data/dalvik-cache/*com.m0narx.su*
|
||||
rm -f /data/dalvik-cache/*/*com.m0narx.su*
|
||||
rm -f /data/dalvik-cache/*Superuser.apk*
|
||||
rm -f /data/dalvik-cache/*/*Superuser.apk*
|
||||
rm -f /data/dalvik-cache/*SuperUser.apk*
|
||||
rm -f /data/dalvik-cache/*/*SuperUser.apk*
|
||||
rm -f /data/dalvik-cache/*superuser.apk*
|
||||
rm -f /data/dalvik-cache/*/*superuser.apk*
|
||||
rm -f /data/dalvik-cache/*VenomSuperUser.apk*
|
||||
rm -f /data/dalvik-cache/*/*VenomSuperUser.apk*
|
||||
rm -f /data/dalvik-cache/*eu.chainfire.supersu*
|
||||
rm -f /data/dalvik-cache/*/*eu.chainfire.supersu*
|
||||
rm -f /data/dalvik-cache/*Supersu.apk*
|
||||
rm -f /data/dalvik-cache/*/*Supersu.apk*
|
||||
rm -f /data/dalvik-cache/*SuperSU.apk*
|
||||
rm -f /data/dalvik-cache/*/*SuperSU.apk*
|
||||
rm -f /data/dalvik-cache/*supersu.apk*
|
||||
rm -f /data/dalvik-cache/*/*supersu.apk*
|
||||
rm -f /data/dalvik-cache/*.oat
|
||||
rm -f /data/app/com.noshufou.android.su*
|
||||
rm -f /data/app/com.koushikdutta.superuser*
|
||||
rm -f /data/app/com.mgyun.shua.su*
|
||||
rm -f /data/app/com.m0narx.su*
|
||||
rm -f /data/app/eu.chainfire.supersu-*
|
||||
rm -f /data/app/eu.chainfire.supersu.apk
|
||||
|
||||
echo "- Creating space"
|
||||
if ($APKFOLDER); then
|
||||
cp /system/app/Maps/Maps.apk /Maps.apk
|
||||
cp /system/app/GMS_Maps/GMS_Maps.apk /GMS_Maps.apk
|
||||
cp /system/app/YouTube/YouTube.apk /YouTube.apk
|
||||
rm /system/app/Maps/Maps.apk
|
||||
rm /system/app/GMS_Maps/GMS_Maps.apk
|
||||
rm /system/app/YouTube/YouTube.apk
|
||||
else
|
||||
cp /system/app/Maps.apk /Maps.apk
|
||||
cp /system/app/GMS_Maps.apk /GMS_Maps.apk
|
||||
cp /system/app/YouTube.apk /YouTube.apk
|
||||
rm /system/app/Maps.apk
|
||||
rm /system/app/GMS_Maps.apk
|
||||
rm /system/app/YouTube.apk
|
||||
fi
|
||||
|
||||
echo "- Placing files"
|
||||
|
||||
mkdir /system/bin/.ext
|
||||
set_perm 0 0 0777 /system/bin/.ext
|
||||
cp_perm 0 0 $SUMOD $BIN/su /system/bin/.ext/.su
|
||||
cp_perm 0 0 $SUMOD $BIN/su /system/xbin/su
|
||||
cp_perm 0 0 0755 $BIN/su /system/xbin/daemonsu
|
||||
if ($SUGOTE); then
|
||||
cp_perm 0 0 0755 $BIN/su /system/xbin/sugote u:object_r:zygote_exec:s0
|
||||
cp_perm 0 0 0755 $MKSH /system/xbin/sugote-mksh
|
||||
fi
|
||||
if ($SUPOLICY); then
|
||||
cp_perm 0 0 0755 $BIN/supolicy /system/xbin/supolicy
|
||||
cp_perm 0 0 0644 $BIN/libsupol.so $SYSTEMLIB/libsupol.so
|
||||
fi
|
||||
if ($APKFOLDER); then
|
||||
mkdir /system/app/SuperSU
|
||||
set_perm 0 0 0755 /system/app/SuperSU
|
||||
fi
|
||||
cp_perm 0 0 0644 $COM/Superuser.apk $APKNAME
|
||||
cp_perm 0 0 0755 $COM/install-recovery.sh /system/etc/install-recovery.sh
|
||||
ln_con /system/etc/install-recovery.sh /system/bin/install-recovery.sh
|
||||
if ($APPPROCESS); then
|
||||
rm /system/bin/app_process
|
||||
ln_con /system/xbin/daemonsu /system/bin/app_process
|
||||
if ($APPPROCESS64); then
|
||||
if [ ! -f "/system/bin/app_process64_original" ]; then
|
||||
mv /system/bin/app_process64 /system/bin/app_process64_original
|
||||
else
|
||||
rm /system/bin/app_process64
|
||||
fi
|
||||
ln_con /system/xbin/daemonsu /system/bin/app_process64
|
||||
if [ ! -f "/system/bin/app_process_init" ]; then
|
||||
cp_perm 0 2000 0755 /system/bin/app_process64_original /system/bin/app_process_init
|
||||
fi
|
||||
else
|
||||
if [ ! -f "/system/bin/app_process32_original" ]; then
|
||||
mv /system/bin/app_process32 /system/bin/app_process32_original
|
||||
else
|
||||
rm /system/bin/app_process32
|
||||
fi
|
||||
ln_con /system/xbin/daemonsu /system/bin/app_process32
|
||||
if [ ! -f "/system/bin/app_process_init" ]; then
|
||||
cp_perm 0 2000 0755 /system/bin/app_process32_original /system/bin/app_process_init
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
cp_perm 0 0 0744 $COM/99SuperSUDaemon /system/etc/init.d/99SuperSUDaemon
|
||||
echo 1 > /system/etc/.installed_su_daemon
|
||||
set_perm 0 0 0644 /system/etc/.installed_su_daemon
|
||||
|
||||
echo "- Restoring files"
|
||||
if ($APKFOLDER); then
|
||||
cp_perm 0 0 0644 /Maps.apk /system/app/Maps/Maps.apk
|
||||
cp_perm 0 0 0644 /GMS_Maps.apk /system/app/GMS_Maps/GMS_Maps.apk
|
||||
cp_perm 0 0 0644 /YouTube.apk /system/app/YouTube/YouTube.apk
|
||||
rm /Maps.apk
|
||||
rm /GMS_Maps.apk
|
||||
rm /YouTube.apk
|
||||
else
|
||||
cp_perm 0 0 0644 /Maps.apk /system/app/Maps.apk
|
||||
cp_perm 0 0 0644 /GMS_Maps.apk /system/app/GMS_Maps.apk
|
||||
cp_perm 0 0 0644 /YouTube.apk /system/app/YouTube.apk
|
||||
rm /Maps.apk
|
||||
rm /GMS_Maps.apk
|
||||
rm /YouTube.apk
|
||||
fi
|
||||
|
||||
echo "- Post-installation script"
|
||||
rm /system/toolbox
|
||||
LD_LIBRARY_PATH=$SYSTEMLIB /system/xbin/su --install
|
||||
|
||||
echo "- Unmounting /system and /data"
|
||||
umount /system
|
||||
umount /data
|
||||
|
||||
echo "- Done !"
|
||||
exit 0
|
||||
Binary file not shown.
Binary file not shown.
BIN
prebuilt/suarm
BIN
prebuilt/suarm
Binary file not shown.
BIN
prebuilt/suarm64
BIN
prebuilt/suarm64
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -771,14 +771,6 @@ int TWFunc::write_to_file(const string& fn, const string& line) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
bool TWFunc::Install_SuperSU(void) {
|
||||
if (!PartitionManager.Mount_By_Path("/system", true))
|
||||
return false;
|
||||
|
||||
check_and_run_script("/supersu/install-supersu.sh", "SuperSU");
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TWFunc::Try_Decrypting_Backup(string Restore_Path, string Password) {
|
||||
DIR* d;
|
||||
|
||||
|
||||
@@ -83,7 +83,6 @@ public:
|
||||
static int read_file(string fn, string& results); //read from file
|
||||
static int read_file(string fn, uint64_t& results); //read from file
|
||||
static int write_to_file(const string& fn, const string& line); //write to file
|
||||
static bool Install_SuperSU(void); // Installs su binary and apk and sets proper permissions
|
||||
static bool Try_Decrypting_Backup(string Restore_Path, string Password); // true for success, false for failed to decrypt
|
||||
static string System_Property_Get(string Prop_Name); // Returns value of Prop_Name from reading /system/build.prop
|
||||
static string Get_Current_Date(void); // Returns the current date in ccyy-m-dd--hh-nn-ss format
|
||||
|
||||
18
twrp.cpp
18
twrp.cpp
@@ -366,24 +366,6 @@ int main(int argc, char **argv) {
|
||||
#ifndef TW_OEM_BUILD
|
||||
// Disable flashing of stock recovery
|
||||
TWFunc::Disable_Stock_Recovery_Replace();
|
||||
// Check for su to see if the device is rooted or not
|
||||
if (DataManager::GetIntValue("tw_mount_system_ro") == 0 && PartitionManager.Mount_By_Path("/system", false)) {
|
||||
// read /system/build.prop to get sdk version and do not offer to root if running M or higher (sdk version 23 == M)
|
||||
string sdkverstr = TWFunc::System_Property_Get("ro.build.version.sdk");
|
||||
int sdkver = 23;
|
||||
if (!sdkverstr.empty()) {
|
||||
sdkver = atoi(sdkverstr.c_str());
|
||||
}
|
||||
if (TWFunc::Path_Exists("/supersu/su") && TWFunc::Path_Exists("/system/bin") && !TWFunc::Path_Exists("/system/bin/su") && !TWFunc::Path_Exists("/system/xbin/su") && !TWFunc::Path_Exists("/system/bin/.ext/.su") && sdkver < 23) {
|
||||
// Device doesn't have su installed
|
||||
DataManager::SetValue("tw_busy", 1);
|
||||
if (gui_startPage("installsu", 1, 1) != 0) {
|
||||
LOGERR("Failed to start SuperSU install page.\n");
|
||||
}
|
||||
}
|
||||
sync();
|
||||
PartitionManager.UnMount_By_Path("/system", false);
|
||||
}
|
||||
#endif
|
||||
|
||||
// Reboot
|
||||
|
||||
Reference in New Issue
Block a user