adreeno booster v0.2 - HTC Salsa

Requirements
Init.d support
Root
Any Gingerbread ROM
Troubleshooting
First, give yourself another reboot - Just in case!
If it still doesn't seem to be working for you, check to see if the files have copied to your device. Check the following locations for the following files with any file manager with Root support.
Manually Uninstalling the Mod
Navigate to the following locations and remove the files.
/system/etc/init.d - Filename: 93adreno
/system/etc - Filename: adreno_config.txt
/data/local/tmp - Filename: adreno_config.txt
/system/etc/init.d - Filename: 93adreno
/system/etc - Filename: adreno_config.txt
You should also see adreno_config.txt in the following location if the init.d script is working correctly: /data/local/tmp
If this file is not in this location then chances are you do not have init.d support.

Related

[TUTORIAL] Self-assembly of Android Firmwares

I just saw a tutorial in 4PDA by R0iz and wanted to share it here!
The link to the original post translated:
http://tinyurl.com/self-assembly-androidOS
Extract the files *. img
To extract system.img, used unyaffs (http://code.google.com/p/unyaffs/)
I have compiled under Ubuntu 64. With Unyaffs can only be extracted system.img.
To extract boot.img use extract-kernel.pl and extract-ramdisk.pl
# extract-kernel.pl boot.img
# extract-ramdisk.pl boot.img
Click to expand...
Click to collapse
Rebuilding boot.img
After extracting boot.img with the enclosed extract-*. pl
In order to collect boot.img with Custom kernel in the same folder run:
# mkbootfs boot.img-ramdisk | gzip > ramdisk-boot
# mkbootimg --kernel boot.img-kernel --ramdisk ramdisk-boot --cmdline "no_console_suspend=1 console=null" -o newBoot.img --base 0x19200000
Click to expand...
Click to collapse
Rebuilding system.img
At first glance it seems that you can simply mount the image and format it with YAFFS, but it's not because, as SPL Hero does not allow flash system.img directly.
You must use the format update.zip packages for this. (читайте ниже) (See below)
Write update.zip quite simple really. For example, to add the package test.apk in your rum:
- Create an empty folder <workdir>
- Create a folder structure for test.apk (<workdir> / system / app) and copy test.apk
- Create a folder structure for the update-script (<workdir> / META-INF/com/google/android)
- Edit <workdir> / META-INF/com/google/android/update-script
- Insert the following:
show_progress 0.1 0 show_progress 0.1 0
copy_dir PACKAGE:system SYSTEM: copy_dir PACKAGE: system SYSTEM:
set_perm_recursive 0 0 0755 0644 SYSTEM:app set_perm_recursive 0 0 0755 0644 SYSTEM: app
show_progress 0.1 10 show_progress 0.1 10
- Pack the contents <workdir> in zip (not the folder itself <workdir>, only its contents)
Now you have to sign a zip file. Testsign.zip download and copy it to your <SDK> / tools.
Unzip it there, thus creating a sub-folder sign with a file testsign. in it.
Then in the folder <workdir>, run this command:
java-classpath "<SDK> / tools / sign / testsign.jar" testsign file.zip file-signed.zip
Everything is now ready for your update.zip pouring into the apparatus by a modified recovery.
Click to expand...
Click to collapse
Change. Apk package
apk can just unpack an archive, change what you need and pack it back. But in the end you have to sign it as well as update.zip packages.
ODEX files
- What is it? Answer
- How to get rid of them?
For deodex ODEX files, use this howto
Then you can create classes.dex file by running smali from your "out". Then rename it to classes.dex and add it to apk.
- How to create them?
Use dexopt-wrapper on the device.
Click to expand...
Click to collapse
Porting ROM with other devices.
Well, this part is simple smile_good.gif
- Extract system.img
- Extract boot.img
- Replace boot.img-kernel of the original Roma HTC Hero.
- Rebuild boot.img
- Collect update.zip (see how it's done in any Custom rum for Hero)
- Sign and flash.
Device should start, and even be able to call, but probably will not work WiFi, BT, trackball.
Androsign script (Linux)
Androsign allows you to quickly sign the zip and apk. Just put it in <SDK> / tools, then CHMOD + X. If the path to the folder \ tools registered in the PATH, then you can run this script by typing:
androsign /dev/folder1/folder2/update.zip
He will Update-signed.zip (or App-signed.apk, etc.) in the same folder where the original file.
THANKS ARE WELCOMED!
Can we actually use this to port Sense or MIUI ?
this explains part of the process, the steps to do fo that purpose extracting and rebuilding but of course not about the code. i've heard MIUI is complex than sense
Most of us know this allready but nice to see it being said instead of learning the hard way
Sent from my GT540 using XDA Premium App

How To Burn your own kernel on SM-G900H:

Preliminary requirements:
1. Phone rooted.
2. CWM recovery installed.
3. Full backup created using CWM.
Actions:
1. Download the mkbootimg tools.
2. Get the current boot.img by using:
adb pull sdcard/clockworkmod/backup/xxx/boot.img
if sdcard symlink does not exist grab it from: /data/media/0/clockworkmod/backup/xxx/boot.img
3. use umkbootimg to extract boot.img:
./umkbootimg boot.img
you suppose to get two files:
1. zImage - kernel
2. initramfs.cpio.gz - ramdisk filesystem
4. build samsung kernel with dtb support:
4.1. Download kernel version from samsung website.
4.2 Do make exynos5422-k3g_00_defconfig
4.3 manually edit the .config created by adding the following lines:
CONFIG_BUILD_ARM_APPENDED_DTB_IMAGE=y
CONFIG_BUILD_ARM_APPENDED_DTB_IMAGE_NAMES="exynos5422-k3g_eur_open_10"
CONFIG_ARM_APPENDED_DTB=y
CONFIG_ARM_ATAG_DTB_COMPAT=y
CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER=y
4.4 run: make -j8
5. Take the build product from:
arch/arm/boot/zImage-dtb and copy it to the folder where you extracted the boot.img
6. Run the following to create a new boot.img:
./mkbootimg --kernel zImage-dtb --ramdisk initramfs.cpio.gz -o new_boot.img
7. Push the new_boot.img to the sdcard:
adb push new_boot.img sdcard/
8. Get into adb shell and run from there:
su -c dd if=/sdcard/new_boot.img of=/dev/block/platform/12200000.dwmmc0/by-name/BOOT
9. Get out of adb shell, and run adb reboot.
10. Wait for the phone to upload.. And you've get your own kenrel running on Samsung galaxy s5 sm-g900h!!

[MOD] Magisk v12.0 for Android x86 7.1-rc2

Hello there.
First of all, let me thank this incredible tool made by @topjohnwu, it's really a nice idea and implementation. I don't own any of the code here, it's just a modification to be able to install and run under Android-x86.org latest Nougat version (as of now, 7.1-rc2). It may work with other versions, including RemixOS and PhoenixOS, but I have not tested it. It was tested using a normal installation on a FAT32 partition, and should work with either a RW or RO system image.
Newer versions of Magisk don't use magic_magisk.sh anymore, that's why I've chosen v12.0 (it can be downloaded from the official thread on XDA). If topjohnwu want to add patches to the source code, I would be more than glad to help. But probably it's not worth the trouble... Another log is created on cache called logtmp.log if you want to check more info about what's going on.
The first step is to make a "fake" boot.img for the installer can patch the ramdisk.img. In order to do this, you will need the handy tool mkbootimg from this other XDA thread:
https://forum.xda-developers.com/showthread.php?t=2319018
Copy both kernel and ramdisk.img from the original installation and use this command (all files must be in the current directory, of course):
Code:
./mkbootimg --kernel kernel --ramdisk ramdisk.img -o boot.img
then copy the resulting boot.img to the Magisk v12.0 folder you will use to install it on your Android x86 installation. The easy way is use a flash drive connected to USB, and I will assume from now on that you have downloaded and decompressed the Magisk files to the root of your flash drive, creating a folder Magisk-v12.0 on it.
After that, if you still have su working on your installation, do the steps bellow after calling "su" (Magisk installer will remove the original su, so if you do not have it you should still be able to access root using the ALT+F1 terminal):
Code:
cd /dev
mkdir tmp
mkdir tmp/magisk
cd tmp/magisk
cp -r /storage/YOUR-FLASH-DRIVE-ID-HERE/Magisk-v12.0/* .
mv boot.img /data
sh ./META-INF/com/google/android/update-binary
YOUR-FLASH-DRIVE-ID-HERE must be replaced with your drive's unique ID. Alternatively you can copy the folder using a file manager to you internal storage (/sdcard) and then use this command instead:
Code:
cp -r /sdcard/Magisk-v12.0/* .
If everything goes well, you should see a message in the end that the new ramdisk.img is ready in the current directory, move it to somewhere else you can replace the installed one. The easiest way is moving it to a flash drive, boot on another system and replace the original one. If you can't do it, you can also move it to /data then boot in DEBUG mode and replace it on /mnt after you type "exit" once. then reboot. Also, delete boot.img from /data, it won't be necessary anymore.
This should result in a full installation of Magisk v12.0. Be aware that current modules for Magisk V14.0 won't work, so you have to dig old ones compatible with v12.0. Also, as many have asked me, probably SafetyNet won't work because it's an old version and Android x86 is a debug version anyway, you must "fake" a lot of things to pass SafetyNet test.
Attached are the modified files:
- updater-script
- magic_mask.sh
- magisk.apk (I had to use 4.3.3 for better compatibility, do not upgrade or it make break installation)
Have fun!
I do everything according to the instructions, but I can not.
Displays the following message.
I ask for help.
android-x86_64-7.1-rc2x
Code:
/dev/tmp/magisk # sh ./META-INF/com/google/android/update-binarg
unzip: can’t open [.zip]
***************************
Magisk v12.0 Boot Image Patcher
*******************************
0) /dev/tmp/magisk/common /-/
- Mounting /sistemro), /cache, /data
- Device platform: x64
chmod: /dev/tmp/magisk/chromeos: No such file or directorg
chmod: /dev/tmp/magisk/X64: No such file or directorg
- Constructing environment
cp: bad ’/dev/tmp/magisk/x64/busgbox’I No such file or directorg
cp: bad ’/dev/tmp/magisk/Xfié/magiskboot’I No such file or directorg
cp: bad ’/dev/tmp/magisk/xfié/magiskpolicg’I No such file or directorg
cp: bad ’/dev/tmp/magisk/common/init.magisk.rc’I No such file or directorg
cp: bad ’/dev/tmp/magisk/common/custom_ramdisk_patch.sh’I No such file or directorg
chmod: chmod ’sepolicy_inject’ to 120755: No such file or directorg
./METH-INF/com/google/android/update_binarg[280]: /dev/tmp/magisk/x64/busgbox: not found
./METH7INF/com/google/android/update7binarg[289]: /dev/tmp/magisk/X64/magiskpolicy: not found
- Creating /data/magisk.img
/dev/tmp/magisk/common/file_contexts_image: No such file or directorg
mount: ’/’ not in /proc/mounts
mount: ’/’ not in /proc/mounts
! Magisk image mount failed...
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Done independently. It was necessary to take the original Magisk-v12.0, in which it was necessary to replace the files from the post above and then install it.
free39 said:
I do everything according to the instructions, but I can not.
Displays the following message.
I ask for help.
android-x86_64-7.1-rc2x
Done independently. It was necessary to take the original Magisk-v12.0, in which it was necessary to replace the files from the post above and then install it.
Click to expand...
Click to collapse
I think you were successful in the end, but just to clarify: you're correct, one must first download v12.0 from the official thread then replace the files with the ones attached to OP, and only then use it. :good:
@lfom
Can you please make a video and upload to YouTube. So we can learn how to do it exactly. I did try on my pc, not work. DO wee need linux for make boot.img? Can you please explain us about more detail, if possible with video please.
@lfom
Can you give a bit more detailed guide?
Like, do we have to reboot into Android partition with debug flag enabled in the kernel, then run the magisk script?
harkaman said:
@lfom
Can you please make a video and upload to YouTube. So we can learn how to do it exactly. I did try on my pc, not work. DO wee need linux for make boot.img? Can you please explain us about more detail, if possible with video please.
Click to expand...
Click to collapse
Sorry, I cannot make a video now. It's not that simple because I cannot use a screen recorder for many steps. But it's basically what is written in the tutorial. I have used Linux, but the original thread says it should work with Cygwin., although I haven't tested, it should work are long as you have the correct files as you only need one executable (mkbootimg).
https://en.wikipedia.org/wiki/Cygwin
silv3rfox said:
@lfom
Can you give a bit more detailed guide?
Like, do we have to reboot into Android partition with debug flag enabled in the kernel, then run the magisk script?
Click to expand...
Click to collapse
No, you don't need debug mode. To run the magisk install script you need superuser rights, so the easier way it to open the console mode using ALT+F1 (you need either an external keyboard or maybe a custom keyboard that allows ALT commands, like Hacker's Keyboard).
I'll try to answer questions as soon as possible, so the information is clear enough so anyone can do it.
lfom said:
Sorry, I cannot make a video now. It's not that simple because I cannot use a screen recorder for many steps. But it's basically what is written in the tutorial. I have used Linux, but the original thread says it should work with Cygwin., although I haven't tested, it should work are long as you have the correct files as you only need one executable (mkbootimg).
https://en.wikipedia.org/wiki/Cygwin
No, you don't need debug mode. To run the magisk install script you need superuser rights, so the easier way it to open the console mode using ALT+F1 (you need either an external keyboard or maybe a custom keyboard that allows ALT commands, like Hacker's Keyboard).
I'll try to answer questions as soon as possible, so the information is clear enough so anyone can do it.
Click to expand...
Click to collapse
Would these steps work for the latest magisk 14.0?
Sent from my ONEPLUS A5000 using Tapatalk
the_mentor said:
Would these steps work for the latest magisk 14.0?
Click to expand...
Click to collapse
No, it won't. As stated in OP, v12.0 was the last version to use the magic_mask.sh. Newer versions use binaries so it's much more difficult to mod unless you change the source code and re-compile the tool.
It works :good: tried on two different pcs. Windows users can use Android Image Kitchen for creating boot.img
maxriter said:
It works :good: tried on two different pcs. Windows users can use Android Image Kitchen for creating boot.img
Click to expand...
Click to collapse
I have createed bootimg . what shell i do next? do i need to copy and go in android x86?
harkaman said:
I have createed bootimg . what shell i do next? do i need to copy and go in android x86?
Click to expand...
Click to collapse
follow steps from OP, download magisk, replace files in magisk with that from the attachment, copy magisk along with boot.img to sdcard or usb drive, boot to android-x86, run the commands from OP, as a result you will get a patched ramdisk.img, copy this ramdisk to usb drive, boot back to windows, replace the original ramdisk from android x86 with the patched one.
hi.
I have installed magisk in android x86 and new ramdisk is created. BUt where and how can i copy, since i lose root. How can I copy new ramdisk?
Code:
x86_64:/ $ su
x86_64:/ # cd /dev
x86_64:/dev # mkdir tmp
x86_64:/dev # mkdir tmp/magisk
x86_64:/dev # cd tmp/magisk
x86_64:/dev/tmp/magisk # cp -r /storage/B6B4-79A3/Magisk-v12.0/* .
x86_64:/dev/tmp/magisk # mv boot.img /data
x86_64:/dev/tmp/magisk # sh ./META-INF/com/google/android/update-binary
unzip: cannot find or open , .zip or .ZIP.
*****************************
Magisk v12.0 Boot Image Patcher
*****************************
0) /dev/tmp/magisk/common /-/
- Mounting /system(ro), /cache, /data
! System installed root detected, mount rw :(
- Device platform: x64
- Constructing environment
- Creating /data/magisk.img
Creating filesystem with parameters:
Size: 67108864
Block size: 4096
Blocks per group: 32768
Inodes per group: 4096
Inode size: 256
Journal blocks: 1024
Label:
Blocks: 16384
Block groups: 1
Reserved block group size: 7
Created filesystem with 11/4096 inodes and 1294/16384 blocks
losetup: /data/magisk.img
losetup: /data/magisk.img
losetup: /data/magisk.img
- Mounting /data/magisk.img to /magisk
- Found Boot Image: /data/boot.img
- Unpacking boot image
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Parsing boot image: [/data/boot.img]
IMG [AOSP]
KERNEL [6098096] @ 0x10008000
RAMDISK [1795598] @ 0x11000000
SECOND [0] @ 0x10f00000
DTB [0] @ 0x10000100
PAGESIZE [2048]
NAME []
CMDLINE []
COMPRESSION [gzip]
Decompressing to [ramdisk.cpio]
- Checking patch status
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
- Backing up stock boot image
15424+0 records in
15424+0 records out
7897088 bytes (7.5MB) copied, 0.067583 seconds, 111.4MB/s
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Compressing to [/data/stock_boot_1b72ffffff9317ffffffdaffffffe6ffffffe7ffffff8870ffffffc0ffffffabffffff8dffffffc4fffffff356ffffff937e7c16ffffffb0.img.gz]
- Patching ramdisk
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Dump cpio: [ramdisk.cpio]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Dump cpio: [ramdisk.cpio]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Extracting [init.rc] to [init.rc]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Add entry [init.rc] (0750)
Dump cpio: [ramdisk.cpio]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Extracting [sepolicy] to [sepolicy]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Add entry [sepolicy] (0644)
Dump cpio: [ramdisk.cpio]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Create directory [magisk] (0755)
Dump cpio: [ramdisk.cpio]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Add entry [init.magisk.rc] (0750)
Dump cpio: [ramdisk.cpio]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Add entry [sbin/magic_mask.sh] (0750)
Dump cpio: [ramdisk.cpio]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Loading cpio: [ramdisk.cpio.orig]
Entry [init.magisk.rc] is new
Entry [init.rc] missmatch
Entry [magisk] is new
Entry [sbin/magic_mask.sh] is new
Entry [sepolicy] missmatch
Dump cpio: [ramdisk.cpio]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
- Repacking boot image
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Parsing boot image: [/data/boot.img]
IMG [AOSP]
KERNEL [6098096] @ 0x10008000
RAMDISK [1795598] @ 0x11000000
SECOND [0] @ 0x10f00000
DTB [0] @ 0x10000100
PAGESIZE [2048]
NAME []
CMDLINE []
COMPRESSION [gzip]
Repack to boot image: [new-boot.img]
Compressing to [ramdisk.cpio.gz]
KERNEL [6098096] @ 0x10008000
RAMDISK [1851668] @ 0x11000000
SECOND [0] @ 0x10f00000
DTB [0] @ 0x10000100
PAGESIZE [2048]
NAME []
CMDLINE []
COMPRESSION [gzip]
Boot partition too small!
! Boot partition space insufficient
! Remove ramdisk backups and try again
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Loading cpio: [ramdisk.cpio]
Remove [.backup]
Remove [.backup]
Remove [.backup]
Remove [.backup]
Dump cpio: [ramdisk.cpio]
MagiskBoot (by topjohnwu) - Boot Image Modification Tool
Parsing boot image: [/data/boot.img]
IMG [AOSP]
KERNEL [6098096] @ 0x10008000
RAMDISK [1795598] @ 0x11000000
SECOND [0] @ 0x10f00000
DTB [0] @ 0x10000100
PAGESIZE [2048]
NAME []
CMDLINE []
COMPRESSION [gzip]
Repack to boot image: [new-boot.img]
Compressing to [ramdisk.cpio.gz]
KERNEL [6098096] @ 0x10008000
RAMDISK [1797690] @ 0x11000000
SECOND [0] @ 0x10f00000
DTB [0] @ 0x10000100
PAGESIZE [2048]
NAME []
CMDLINE []
COMPRESSION [gzip]
Boot partition too small!
! Boot partition size still too small...
Do not worry, it's fine...
New ramdisk.img ready - /dev/tmp/magisk/ramdisk.img
Copy it to an external drive to replace Android boot one
- Done
x86_64:/dev/tmp/magisk #
Replace installed system.img from the one in android-x86 iso, and repeat the procedure.
Copy this new ramdisk: /dev/tmp/magisk/ramdisk.img to your usb drive: /storage/B6B4-79A3/ and reboot to windows.
A standard android-x86 iso contains initrd.img, system.img/sfs and ramdisk.img + kernel (used to create the boot.img)
installed somewhere in your pc. Replace this ramdisk.img with the patched one from the usb drive.
Thanks for the guide !
I managed to get magisk v15.3 work on latest CM 14.1 x86 on my "tesco connect 7" , a z3735g atom bay-trail based tablet.
inorder to make the patched ramdisk.img I used virtualbox and ran lubuntu x32 16.04 - since I couldn't used mkbootimg on the android directly:
A. because the linked tool is for x64 systems, so x86 android can't run it.
B. because I was emulating android on virtual machine so I ran it as "live", making system as read only I think.
C. although on my x86 virtual android it doesn't work, on my virtual ubuntu x32 it does ( guess it can run x64 binaries somehow ).
once I make boot.img I moved it to android's sdcard ( on my virtual machine running the same image as my tablet ) -> installed magisk manager ( v5.5.5 -the current latest ) then I picked install -> install -> direct install -> picked my boot.img from /sdcard -> then magisk created SDcard/MagiskManager/patched_boot.img.
* in retrospect, a very similar guide can be found here.
then once I had patched_boot.img I moved it to my virtual ubuntu, and ran "unkbootimg patched_boot.img".
this gave me a "ramdisk.cpio.gz", which is actually the "ramdisk.img" needed for the android's iso ( i.e booting using grub ).
so i've rename it "ramdisk.img" and replaced the one found on the android iso root folder.
then I rebooted that modded iso ( i.e with the modded ramdisk.img ) on my virtual -> installed magisk manager -> AND IT SHOWS IT IS INSTALLED !!!!!
now I need to replace my current ramdisk.img on my tablet to actually "magisking" my tablet.
@gps3dx Thanks, your method works. Updated Magisk from 12 to 15.3!
maxriter said:
@gps3dx Thanks, your method works. Updated Magisk from 12 to 15.3!
Click to expand...
Click to collapse
nice to hear.
I suggest you check the magisk log to see if any issue like non-mounted error occurs.
Although magisk reports installed, I have issues - but I see from the magisk beta thread that i'm not the only one... so I guess it's the specific version fault and not the way I install it.
also make sure that you've got magisk files under /data/magisk that resembles (not 1:1) the magisk zip...
i.e that you've got files like "magiskinit", "magiskboot".... I think that if you don't do "direct install" these files won't appear, since I don't think that patching the boot.img alone installs these files on the device.
/data/magisk (ln to /data/adb/magisk ?) does contain those files, I can use root related functions and magisk hide works. Seems good so far.
Moreover i updated from 12 to 15.3, so there is that.
gps3dx said:
nice to hear.
I suggest you check the magisk log to see if any issue like non-mounted error occurs.
Although magisk reports installed, I have issues - but I see from the magisk beta thread that i'm not the only one... so I guess it's the specific version fault and not the way I install it.
also make sure that you've got magisk files under /data/magisk that resembles (not 1:1) the magisk zip...
i.e that you've got files like "magiskinit", "magiskboot".... I think that if you don't do "direct install" these files won't appear, since I don't think that patching the boot.img alone installs these files on the device.
Click to expand...
Click to collapse
do you know Android x86 special mount ?
mount /dev/xxxx on /mnt
mount /mnt/$SRC/system /android/system
mount /mnt/$SRC/data /android/data
https://forum.xda-developers.com/showpost.php?p=75345518&postcount=4926
P.S my android is NOT running from an img or sfs file, since i've expanded and extract the system onto my tablet's hdd ext4 partition.
Click to expand...
Click to collapse
your Android system is hdd ext4 partition /Android-x86/system folder.
so "Mounting mirrors,Magisk : mount /dev/block/mmcblk1p5->/sbin/.core/mirror/system",even though success,no use.
if you use system.sfs or system.img,"Mounting mirrors,Magisk : mount /dev/loop0(or /dev/loop1)->/sbin/.core/mirror/system",must failed,should be mount /dev/block/loop0(/dev/block/loop1)
if you understand magisk 12 magic_mask.sh
SYSTEMBLOCK=`mount | grep " /system " | awk '{print $1}' | awk '{print substr($0,6)}'`
busybox mount -o noatime /dev/block/$SYSTEMBLOCK $MIRRDIR/system
if you not use magisk dummy,you needn't magisk mirror system.
for example,this example must use mirror system.
PHP:
Replace with dummy: /system/app
New directory: /system/app/ChromeCustomizations
Replace with dummy: /system/app
New directory: /system/app/com.google.android.apps.nexuslauncher
Replace with dummy: /system/app
New directory: /system/app/com.google.android.nexusicons
New directory: /system/priv-app/Greenify
Replace with dummy: /system/priv-app
Clone skeleton: /system/priv-app/AnalyticsService
Clone skeleton: /system/priv-app/AudioFX
Clone skeleton: /system/priv-app/BackupRestoreConfirmation
…………
…………
Clone skeleton: /system/app/AndroidTerm
Clone skeleton: /system/app/BasicDreams
Clone skeleton: /system/app/Bluetooth
…………
Does this work with ubuntu? I'm opening the terminal in the folder where every file is but after entering the first command it says file or directory not found. Also i'm running it from a live usb.
youling257 said:
do you know Android x86 special mount ?
mount /dev/xxxx on /mnt
mount /mnt/$SRC/system /android/system
mount /mnt/$SRC/data /android/data
https://forum.xda-developers.com/showpost.php?p=75345518&postcount=4926
your Android system is hdd ext4 partition /Android-x86/system folder.
so "Mounting mirrors,Magisk : mount /dev/block/mmcblk1p5->/sbin/.core/mirror/system",even though success,no use.
if you use system.sfs or system.img,"Mounting mirrors,Magisk : mount /dev/loop0(or /dev/loop1)->/sbin/.core/mirror/system",must failed,should be mount /dev/block/loop0(/dev/block/loop1)
if you understand magisk 12 magic_mask.sh
SYSTEMBLOCK=`mount | grep " /system " | awk '{print $1}' | awk '{print substr($0,6)}'`
busybox mount -o noatime /dev/block/$SYSTEMBLOCK $MIRRDIR/system
if you not use magisk dummy,you needn't magisk mirror system.
for example,this example must use mirror system.
PHP:
Replace with dummy: /system/app
New directory: /system/app/ChromeCustomizations
Replace with dummy: /system/app
New directory: /system/app/com.google.android.apps.nexuslauncher
Replace with dummy: /system/app
New directory: /system/app/com.google.android.nexusicons
New directory: /system/priv-app/Greenify
Replace with dummy: /system/priv-app
Clone skeleton: /system/priv-app/AnalyticsService
Clone skeleton: /system/priv-app/AudioFX
Clone skeleton: /system/priv-app/BackupRestoreConfirmation
…………
…………
Clone skeleton: /system/app/AndroidTerm
Clone skeleton: /system/app/BasicDreams
Clone skeleton: /system/app/Bluetooth
…………
Click to expand...
Click to collapse
I don't understand what do you think I need to do inorder to make it work ?
Also, you're wrong... my "system" folder sits at the root of my android partition...
so it's /dev/mmcblk1p5 partition... which after I mount it... I have "System", "data" and kernel, ramdisk.img & initrd.img files AT THE ROOT of that partition....
Gionikva said:
Does this work with ubuntu? I'm opening the terminal in the folder where every file is but after entering the first command it says file or directory not found. Also i'm running it from a live usb.
Click to expand...
Click to collapse
try ubuntu x64...
I use 'ubuntu-16.04.3-desktop-amd64.iso'

Unable to extract zip file

I've got a freshly installed Magisk v14, with manager 5.6.0, running on an Oukitel K10 with Android 7.1.1.
Version 15+ of Magisk causes a boot loop on this device, so I'm stuck on 14.
Anyway, installing downloaded Magisk modules from the zip file, or from the Downloads section in the manager, I get logs like:
Code:
- Copying zip to temp directory
- Installing Emoji_one-v1.311.zip
- Mounting /system, /vendor, /data, /cache
! Unable to extract zip file!
Failed!
! Installation failed
The MagiskManager directory does exist. I also deleted it and let the manager recreate it by downloading the magisk zip again. No change.
What can I do?
Might be an issue with unzip. Try if installing the Busybox module from the Downloads section works, and if it does, try installing modules again (after rebooting).
Installing BusyBox worked, but even after a reboot I get the same result when attempting to install other stuff. Also, BusyBox is listed under "Update Available" in the downloads section even though I already installed 1.27.2, twice.
norbolt said:
Installing BusyBox worked, but even after a reboot I get the same result when attempting to install other stuff. Also, BusyBox is listed under "Update Available" in the downloads section even though I already installed 1.27.2, twice.
Click to expand...
Click to collapse
That most likely means it did not work. Post the install log from installing the Busybox module.
Hm. Yes, the log doesn't seem as fine.
Code:
- Copying zip to temp directory
- Installing Busybox_for_Android_NDK-1.27.2.zip
Busybox Installer Script
by osm0sis @ xda-developers
Mounting...
mount: bad /etc/fstab: No such file or directory
mount: bad /etc/fstab: No such file or directory
mount: bad /etc/fstab: No such file or directory
Extracting files...
update-binary[110]: unzip: not found
Installing...
Using architecture: arm64
Creating filesystem with parameters:
Size: 67108864
Block size: 4096
Blocks per group: 32768
Inodes per group: 4096
Inode size: 256
Journal blocks: 1024
Label:
Blocks: 16384
Block groups: 1
Reserved block group size: 7
Created filesystem with 11/4096 inodes and 1294/16384 blocks
umount: /dev/magisk_merge: No such file or directory
mount: losetup failed 1
mknod: /dev/block/loop0: File exists
losetup: /dev/block/loop0=/data//magisk_merge.img: Device or resource busy
mknod: /dev/block/loop1: File exists
Using path: /dev/magisk_merge/busybox-ndk/system/xbin
cp: busybox-arm64: No such file or directory
cp: bad 'busybox-arm64': No such file or directory
chown: /dev/magisk_merge/busybox-ndk/system/xbin/busybox: No such file or directory
chmod: /dev/magisk_merge/busybox-ndk/system/xbin/busybox: No such file or directory
cp: module.prop: No such file or directory
cp: bad 'module.prop': No such file or directory
cp: module.prop: No such file or directory
cp: bad 'module.prop': No such file or directory
Cleaning...
update-binary[189]: /dev/magisk_merge/busybox-ndk/system/xbin/busybox: not found
update-binary[191]: /dev/magisk_merge/busybox-ndk/system/xbin/busybox: not found
update-binary[210]: /dev/magisk_merge/busybox-ndk/system/xbin/busybox: not found
Creating symlinks...
Unmounting...
umount: /system: Device or resource busy
umount: /data: Device or resource busy
umount: /cache: Device or resource busy
Done!
- All done!
Yeah, there's an issue with unzip:
Code:
update-binary[110]: unzip: not found
Might be an issue with your Magisk installation or a device thing, hard to say....
Have you tried installing a zip through recovery? If you can install the Busybox module in recovery it might fix things.
Didgeridoohan said:
Have you tried installing a zip through recovery? If you can install the Busybox module in recovery it might fix things.
Click to expand...
Click to collapse
I have not tried that. I currently have the stock recovery flashed. So I guess this means flashing TWRP, then flashing Busybox, and perhaps also attempting to flash Magisk itself through the recovery?
Hopefully I got that right. I'm a bit new to this.
norbolt said:
I have not tried that. I currently have the stock recovery flashed. So I guess this means flashing TWRP, then flashing Busybox, and perhaps also attempting to flash Magisk itself through the recovery?
Hopefully I got that right. I'm a bit new to this.
Click to expand...
Click to collapse
You don't have to install TWRP, you can just boot it:
Code:
fastboot boot recovery twrp.img
I attempted to install both Magisk and Busybox from TWRP, and while the Magisk installer seems to run fine, I get to allow root access to stuff in Android afterwards and I get the Magisk Manager and such, I still can't install Busybox. Also, it seems from the log that Magisk itself is also having some issues the UI isn't telling me about.
The main issue seems to be the following error:
Code:
I:[MTP] MtpServer::run fd: 26
E:[MTP] got unsupported command UNKNOWNE:[MTP] response write returned -1, errno: 19, exiting MtpServer::run loop
Searching Google for the above error returns very little help.
I pasted the entire log here, from me booting TWRP and attempting to install Magisk and Busybox a few times. The Busybox installer claims Magisk isn't installed.
I can't post links yet, so this is code:
Code:
http://paste.debian.net/1010746/
norbolt said:
I've got a freshly installed Magisk v14, with manager 5.6.0, running on an Oukitel K10 with Android 7.1.1.
Version 15+ of Magisk causes a boot loop on this device, so I'm stuck on 14.
Anyway, installing downloaded Magisk modules from the zip file, or from the Downloads section in the manager, I get logs like:
Code:
- Copying zip to temp directory
- Installing Emoji_one-v1.311.zip
- Mounting /system, /vendor, /data, /cache
! Unable to extract zip file!
Failed!
! Installation failed
The MagiskManager directory does exist. I also deleted it and let the manager recreate it by downloading the magisk zip again. No change.
What can I do?
Click to expand...
Click to collapse
hello,
Very simple solution for me at least.
i found this thread because the same thing just happened to me on g900t s5 running lineageOS. Magisk said couldnt extract Zip everytime.
My problem i believe was that i installed busybox from Apkpure and not playstore
Because when i uninstalled Busybox from apkpure then installed busybox from playtore the unzip errors are gone!
Maybe its because i has a bad copy of busybox?
Idk but that was the solution for me!
Hope this helps someone
Me helps install again magisk by twrp.
Install the es file explorer once and extract the zip at least once, It will show a list of programs by which to extract, select es file extractor and check the always button now go back to the magisk manager and try again you should be good to go.
magisk zip
My problem solved by typing real path.
I was use command to install a module using this code
Code:
twrp install sdcard/module.zip
Give an error, so i change to
Code:
twrp install /sdcard/module.zip
Everything ok.
alfanveykov said:
My problem solved by typing real path.
I was use command to install a module using this code
Code:
twrp install sdcard/module.zip
Give an error, so i change to
Code:
twrp install /sdcard/module.zip
Everything ok.
Click to expand...
Click to collapse
where I must try this command?
because I have same problem

Magisk Module - DiamondJohnHostManager - VERY Large Host File Builder or even small host file

This module is capable of building VERY large hosts files from multiple sources.
In my testing (and is actually my current live environment) I build a host file blocking 2.8 million hosts, from sources listing >4M hosts. Obviously some duplication between sources.
Requirements
Root
BusyBox
CURL - see post 2 for instruction on how to enable
Feature List
Builds from multiple host list sources. I am running >90
Allows whitelist
Supports HTTP, HTTPS as well as local FILE
Runs using multiple parallel threads. i.e. Multi-threaded. Defaults to 16 parallel threads, so while one is awaiting downloading, another would be parsed
In my testing, an older device built large hosts files not too much slower than that on a newer device
Supports mirrors
Fallbacks to previous good run
Multiple file source formats. ie host file with IP and/or simple domain lists even two formats within the same file
Can be run without Magisk
It is script based, so is open source
Configurable via a text file
Tries to clean up / correct some poorly formatted hosts files
Automaically enables / allows the host sources./. ie no need to explicitly include an allow list for the host sources
Automaticallly handles the removal of local hosts in the header from source block lists
Numerous reports on the results can be attained using my other development app with a UI called TeMeFI
You can manually run the build from TeMeFI or from a shell / adb
It defaults to building to the systemless host location of MAgisk, but can build to a RW direct location of /sytsem/etc/hosts
It runs at the LOWEST priority, thus minimal to no degradation of phone performance.
Redirects - text file
triues to minimise downloading files that have not changed
Does not rebuild the host file if the source host lists have not changed
Will force a re-download and host file rebuild if the host sources list has changed
Comments can be aadded to host source list without forcing a rebuild
Its not an app to install and does not run in the background, but a script that only runs on boot
Not Supported
Wildcards in whitelist
No UI, its all script and text files, however reports can be generated using TeMeFI
Install Instructions
Install CURL (see post 2)
Install the Magisk module from within Magisk, using the zip attached to this post
Enable the Magisk systemless host
Reboot twice. Once to finish the install, and the second top actually run the build of host file
MD5: C3464A3A594ECFE95EF87E6E0D324A62
Download: DiamondJohnHostManager_v2.1.zip
Busybox has WGet, and the script will dall back to WGet, but Wget has less featires and also a very well known bug, Dont expect this bug to be fixed too soon as it is even present in the desktop build of Linux!
So the solution is to install CUrl. Following the steps below will get you up and running by installing a MAgisk Module. Its called "Cross Compiled Binaries"
So to clarify the steps.
1. Download & Install "Cross Compiled Binaries" from the Magisk Repo
2. Reboot
3. Open a shell and get an su
4. Run "ccbins"
Spoiler: SCREEN OUTPUT
Code:
sunfish:/ $ su
sunfish:/ # ccbins
===============================
Cross Compiled Binaries v7.2(9)
by Zackptg5
===============================
BusyBox v1.31.1-osm0sis
/dev/a7Y7BvR/.magisk/modules/ccbins/busybox
===============================
Testing internet connection [/] - OK
Fetching available binaries
[|] - Done
Checking for mod updates
[\] - Ccbins is up to date
Checking for binary updates
[/] - Installing NCursesw v6.2
[-] - NCursesw has been installed!
[|] - Binaries are up to date
Checking for conflicting modules
[\] - No conflicting mods were found
===============================
Binary Installer ==============
===============================
Current install location: /system/bin
Auto-update binaries at launch: Enabled (recommended)
DOH Server: None
===============================
Choose option =================
===============================
0: Refresh CCbins (remove everything - start fresh)
1: General Information
2: Options/Settings
3: List all installed binaries
4: List all downloadable binaries
5: Remove binary
6: Install binary
7: Install dynamic linked binary
Type 'q' at any time to quit
-->
5. Select "Install a Binary" ie "--> 6"
Spoiler: SCREEN OUTPUT
Code:
--> 6
===============================
Install which binary? =========
===============================
Current install location: =====
/system/bin ===================
===============================
0: None, go back to main menu
1: Install all binaries listed below
2: Aria2 (v1.35.0)
3: Bash (v5.1.8)
4: Bc (v1.07.1)
5: Brotli (v1.0.9)
6: Coreutils (v8.32)
7: Cpio (v2.12)
8: Curl (v7.78.0)
9: Diffutils (v3.7)
10: Ed (v1.17)
11: Findutils (v4.8.0)
12: Gawk (v5.1.0)
13: Grep (v3.6)
14: Gzip (v1.10)
15: Htop (v3.0.5)
16: Iw (v5.9)
17: Keycheck (v1.0)
18: Nano (v5.8.0)
19: Nethogs (v0.8.6)
20: Openssl (v1.1.1.11)
21: Patch (v2.7.6)
22: Patchelf (v0.12)
23: Sed (v4.8)
24: Strace (v5.13)
25: Tar (v1.34)
26: Tcpdump (v4.99.1)
27: Vim (v8.2.3095)
28: Wavemon (v0.9.3)
29: Xmlstarlet (v1.0)
30: Xxd (v1.10)
31: Zip (v3.0)
32: Zsh (v5.8.0)
33: Zstd (v1.5.0)
-->
6. Install the selected one. "curl" in my case. ie "--> 8"
Spoiler: SCREEN OUTPUT
Code:
--> 8
Downloading Curl
[|] - Curl has been installed!
Reboot for changes to take effect
7. Reboot
8. open a shell, get su and curl is now available
Spoiler: CURL NOW AVAILABLE
Code:
sunfish:/ $ su
sunfish:/ # curl--help
/system/bin/sh: curl--help: inaccessible or not found
127|sunfish:/ # curl --help
Usage: curl [options...] <url>
-d, --data <data> HTTP POST data
-f, --fail Fail silently (no output at all) on HTTP errors
-h, --help <category> Get help for commands
-i, --include Include protocol response headers in the output
-o, --output <file> Write to file instead of stdout
-O, --remote-name Write output to a file named as the remote file
-s, --silent Silent mode
-T, --upload-file <file> Transfer local FILE to destination
-u, --user <user:password> Server user and password
-A, --user-agent <name> Send User-Agent <name> to server
-v, --verbose Make the operation more talkative
-V, --version Show version number and quit
This is not the full help, this menu is stripped into categories.
Use "--help category" to get an overview of all categories.
For all options use the manual or "--help all".
Some file Locations:
Your listt of Host Sources: /storage/emulated/0/Android/data/DiamondJophnDroidHostManager/host_sources.trxt
Each line is a different "row" which is a host source.
Lines Preceded with a "-" will be treated as an allow list, otherwise it will be treated as a deny list
Within each line, a mirror for the host sources is define by sepereating with a piping character ie "|"
A source can be https:// or http:// or file:// Note for a file source, the protocol has 2 slashes and then a third slash will be there for the path. Hence a file will have a tipple slash
Anything after the hash (#) will be ignored and treated as a comment
Empty lines will be ignored
MAKE SURE YOU USE A LINE-FEED and NOT a CARRIAGE RETURN & LINE-FEED to end each line. ie Android/Unix/Linux style, not windows style.
An example of each of the above:
Code:
https://dbl.oisd.nl
https://winhelp2002.mvps.org/hosts.txt|http://winhelp2002.mvps.org/hosts.txt|https://raw.githubusercontent.com/hectorm/hmirror/master/data/winhelp2002.mvps.org/list.txt|https://ssl-proxy.my-addr.org/myaddrproxy.php/http/winhelp2002.mvps.org/hosts.txt
file:///data/media/0/User/hosts/Deny/deny_coinblocker.txt
# Dead Host source
#https://raw.githubusercontent.com/Zelo72/hosts/main/big.txt
-file:///data/media/0/User/hosts/Allow/google_play_whitelist.txt
-file:///data/media/0/User/hosts/Allow/google_video_whitelist.txt
The config is stored at: /data/adb/modules/DiamondJophnDroidHostManager/bin/includes/shared_constants.sh
The logs will go to: /storage/emulated/0/Android/data/DiamondJophnDroidHostManager/logs/*
The history / previous run will go to: /storage/emulated/0/Android/data/DiamondJophnDroidHostManager/previous/*
reserved...
reserved...
Just to give you some context on performance. I have a Pixel 4A and the following is from the end of the log:
Code:
...snip...
download_hosts.sh - Start build final output host file at 2021-10-18 10:40:14.018
21 seconds - download_hosts.sh 91 files combined,
blocking 2,888,313 hosts from 5,172,803 total blocking hosts and 622 allowed hosts
with a file size of 87,246,214 bytes,
built using 79 historic hosts lists, of 91 total sources. at 2021-10-18 10:40:34.596
Resultant Hosts file copied to /data/adb/modules/hosts/system/etc/hosts at 2021-10-18 10:40:34.857
SAVE_PARAM >>> ROW= MIRROR=0 NAME=UNIQUE_BLOCKED_HOSTS VALUE=2888313 at 2021-10-18 10:40:34.905
SAVE_PARAM >>> ROW= MIRROR=0 NAME=BLOCKED_HOSTS VALUE=5172803 at 2021-10-18 10:40:34.952
SAVE_PARAM >>> ROW= MIRROR=0 NAME=ALLOWED_HOSTS VALUE=622 at 2021-10-18 10:40:34.999
SAVE_PARAM >>> ROW= MIRROR=0 NAME=SOURCE_COUNT VALUE=91 at 2021-10-18 10:40:35.050
SAVE_PARAM >>> ROW= MIRROR=0 NAME=HISTORIC_SOURCES VALUE=79 at 2021-10-18 10:40:35.090
SAVE_PARAM >>> ROW= MIRROR=0 NAME=FILE_SIZE VALUE=87246214 at 2021-10-18 10:40:35.126
SAVE_PARAM >>> ROW= MIRROR=0 NAME=ELAPSED_TIME VALUE=232 at 2021-10-18 10:40:35.166
ALL processed in 232 seconds at 2021-10-18 10:40:35.181
I also did some tests on an old 2013 Samsung S4, and it was around 300-400 seconds to build a similar 2.8M host file from 4.8M hosts.
Updated module. v2.1 Removed some debug code that made its way into the release.
Also note, the default host source list does not download 2.8M hosts. Its gets about 200K hosts, which are about 90+% unique.
Buena tarde:
Para agregar más fuentes de las que vienen, ¿qué sería modificar el archivo host_sources.txt?
Lo que no entiendo es que el complemento se descargue de magisk o .zip.
Saludos cordiales FELIZ NAVIDAD Y PRÓSPERO AÑO NUEVO.

Categories

Resources