yashsingh1/xdaforums huggingface dataset:
[Android Software/Hacking General [Developers Only]] osm0sis:
If you've hidden root from Root Checker Pro using Shamiko or DenyList, then busybox won't be in the path.

That Root Checker app seems pretty pointless to be honest, I would never pay for something like that. 🤷‍♂️

I can check busybox quite easily with terminal and as you can see it's fine:

:/ $ echo $PATH
/product/bin:/apex/com.android.runtime/bin:/apex/com.android.art/bin:/system_ext/bin:/system/bin:/odm/bin:/vendor/bin
:/ $ which busybox
/system/bin/busybox
:/ $
[Android Software/Hacking General [Developers Only]] jmac052002:
I have had the app for years is only reason I continue to use it and I didn't even think about checking it that way I appreciate you bringing that up but I don't have it on any deny list or anything like that and I'm a huge fan of you by the way and I appreciate you responding and I definitely appreciate all your work through the years....I'm attending coding boot camp so I'm starting to get better at a lot of things that I use to not know how to do...thanks again major respect to you!
[Android Software/Hacking General [Developers Only]] DiamondJohn:
just personally. I add the extra line as a check it can execute (eg correct permissions, arch ect) with a:

busybox --version

And to be honest, being lazy/impatient, for most executables, thats usually all that I run. A small benefit, if the executable doesn't support --version (maybe -?), the error handler output also acts to show its executing.
[Android Software/Hacking General [Developers Only]] Fif_:
@osm0sis , a bug report with BusyBox 1.36.1 installer for Magisk: it is not built with SELinux support:

busybox | head -n 1
BusyBox v1.36.1-osm0sis (2023-05-25 10:16:11 ADT) multi-call binary.
busybox stat -Z .
stat: SELinux is disabled

I've verified that the module uses the correct arm64-selinux binary, but it is built with SELinux disabled.
[Android Software/Hacking General [Developers Only]] DiamondJohn:
Huh? isnt that the current state of your firmware is running under? ie You run Busybox with SELinux enabled or run it with SELinux disabled. Or another way to look at it, If the ROM is running with SELinux enabled, then there is no way that busybox could run with it disabled. That would in a way mean busybox would be a backdoor to root.

My bad, read below :oops: But it still means that u cant run them...
[Android Software/Hacking General [Developers Only]] Osanosa:
What is the process for signing v2 using zipsigner?
[Android Software/Hacking General [Developers Only]] osm0sis:
It's for zips, not apks.
[Android Software/Hacking General [Developers Only]] Osanosa:
Is there one for apk?
[Android Software/Hacking General [Developers Only]] osm0sis:
apksigner | Android Studio | Android Developers

Learn about the apksigner tool which allows you to sign APKs and to confirm that an APK's signature will be verified successfully on all versions of the Android platform supported by those APKs.

developer.android.com
[Android Software/Hacking General [Developers Only]] Osanosa:
I need a binary to use from terminal on my phone
[Android Software/Hacking General [Developers Only]] osm0sis:
Sounds like something you'll need to look into further. 😉
[Android Software/Hacking General [Developers Only]] Osanosa:
What do you mean? Sorry, I'm not a native English speaker so I didn't quite understood you.
[Android Software/Hacking General [Developers Only]] osm0sis:
I'm not going to make it for you. Google things.

Here's a start:

refs/heads/main - platform/tools/apksig - Git at Google

And/Or

https://xdaforums.com/t/tool-androi...roid-linux-mac.2073775/page-115#post-80680681
[Android Software/Hacking General [Developers Only]] Osanosa:
Could you please help me out, it just says class not found and I have no idea how to set it up properly. Maybe there's an alternative? I need this for my module to sign overlays.
[Android Software/Hacking General [Developers Only]] osm0sis:
No. I don't need it, so I'm not going to use my time on it.

If you can't figure out how to build it then follow the second link and follow the instructions to download a build from Google's CI, like I suggested already.
[Android Software/Hacking General [Developers Only]] Osanosa:
C:\Program Files (x86)\Java\jre-1.8\bin> java -jar dx.jar --dex --output=boot_signer_mobile.jar boot_signer.jar

PARSE ERROR:

unsupported class file version 61.0

...while parsing com/android/verity/BootSignature.class

1 error; aborting
[Android Software/Hacking General [Developers Only]] DiamondJohn:
@Osanosa Im dont want to put words into @osm0sis mouth, but I dont think you are understanding, as he is trying to be polite. To maker it clear.

1. He does not get paid to help you. He is not an employee of XDA that must assist you

2. he gets no benefit from the final output

3. YOU are asking him to spend & devote a large portion of HIS time to help YOU and ONLY YOU. Time he could spend with his family (recent baby daughter) and friends

4. You are being very demanding and thus rude by repeatedly asking, when he has made it abundantly clear he is not going to help, beyond giving you pointers to learn. Well beyond what most would do! I am sure if you use google translate it will be translated sufficiently clear.

5. YOU have to go and do this yourself, just as @osm0sis did for what he needed, I have done for what I needed.

And click below for the Ukrainian translation

[TOOLS][ZIPS][SCRIPTS] osm0sis' Odds and Ends [Multiple Devices/Platforms]

osm0sis' Odds and Ends -- Misc./Batch Tools, Flashable Zips, Scripts, etc. General Information In a nutshell, I just wanted a single thread to gather links to some of my other, larger projects, but also serve as a spot I could put some smaller...

forum-xda--developers-com.translate.goog
[Android Software/Hacking General [Developers Only]] Osanosa:
To me both you are being rude. I managed to figure out how to dex a jar and find what class do I need to call. I haven't asked much — I haven't known which of all classes is needed. I never demanded anything and just was asking to help since I have 0 experience and he clearly has some. I don't wanna do this either but I don't really have a choice.

He pointed to clear steps that haven't worked and I asked why following steps exactly nothing works.

Just tell me why am I supposed to spend days trying to make someone's life better and easier just to be cut off by people like you? Couldn't he just say "first you need to dex jar to run it on terminal and you can find your class name in original jar"? Was that too hard for him? I wasted several hours trying to find this out! Of course he doesn't have to, but there are other people here that could answer! I have an issue, MY ISSUE, and I asked if there was a way to find a solution ... I ... I'm too tired and I don't wanna argue with you. If you can't or don't wanna help THEN DON'T.
[Android Software/Hacking General [Developers Only]] osm0sis:
I couldn't give you that answer because I didn't know that answer because I didn't need to know that answer, like I already told you. 🙄

Glad you were able to figure out what you needed for your project.
[Android Software/Hacking General [Developers Only]] Osanosa:
I wasn't. It doesn't work. Likely because it was compiled with a different version of java
[Android Software/Hacking General [Developers Only]] osm0sis:
Well I don't know about that either. I seem to recall if it would dex it would mostly work correctly.

Here's the only other thing I ever figured out along these lines, e.g. if you need to make some Java source changes to get it working: https://xdaforums.com/t/signing-boo...ied-boot-avb-v8.3600606/page-19#post-82618961
[Android Software/Hacking General [Developers Only]] mrjuniork:
Mod Action:

Thread has been slightly cleaned.

We appreciate a more calm and reasonable approach when it comes to disagreements or discussions.

Cheers everyone,

mrjuniork (FSM)
[Android Software/Hacking General [Developers Only]] BillGoss:
@osm0sis, in your updated adb/fastboot module (https://xdaforums.com/t/magisk-general-support-discussion.3432382/post-88936649) you use $USER to check if the user is root rather than using whoami.

Is there a reason for this?

The reason I'm asking is that in Termux a login shell doesn't have $USER set (after all it's a single user environment). And if you start a root login shell using su -pl -s bash then a check for $USER will fail (it's empty) even though the shell is running as root:

bgo8t:~ # echo $USER

bgo8t:~ # whoami
root
[Android Software/Hacking General [Developers Only]] osm0sis:
That's just how I've done it elsewhere (zipsigner, payload-dumper-go and git modules). I can add an -o using whoami. Weird that Termux doesn't set USER though... it really should.
[Android Software/Hacking General [Developers Only]] BillGoss:
I've got around the problem by setting USER in .bashrc but I was interested as to why you use USER rather than whoami. I've always used whoami and was surprised when the adb/fastboot module didn't recognise that I was using root after the update.
[Android Software/Hacking General [Developers Only]] osm0sis:
I still can't make a busybox build (of either version, 1.34.1 or 1.36.1... 🤷) with working SELinux right now... Completely baffled. :(

I've done all the troubleshooting I can think of:

Update for BusyBox 1.36.1 by osm0sis · Pull Request #9 · topjohnwu/ndk-box-kitchen

remove upstreamed/resolved patches rebase patches over released stable 1.36.1 fix KBuild parsing of .S files for Android.mk add new patch to fix direct loopback mount and losetup next loop switch t...

github.com

But apparently it works for topjohnwu, so until I can work out what's wrong on my side I'll just include the Magisk builds so we've got working SELinux builds out. Same difference really, except for the name. Super frustrating though.
[Android Software/Hacking General [Developers Only]] osm0sis:
Laptop's working again thanks to the MSI Service Centre for replacing the SSD (again) outside the warranty period, and thanks to my script updates and prep after the last time it's been a lot easier getting things operational this time, though it'll still be a long while chipping away at things until they're completely as I previously had them. With that in mind, and the recent great sales on SSDs, I'm going to open the thing up this time and do RAID1 with the 2 SSD slots to try to entirely avoid catastrophic failures going forward. :cowboy:

Anyway, enough about that, here's what I've got so far. :p

I work on these projects in my limited time off, so if you like the progress I'm making, or enjoy anything else I've done on xda, please consider sponsoring my ongoing work using my GitHub Sponsors profile. For a one-time donation you can hit the donate link from my profile. Thanks for your support!

98-twrp_ab.sh;

TWRP_A_B_Retention_Script-Magisk(1).zip:

- update for latest Magisk without Java $BOOTSIGNER

999-flashafterupdate.sh:

- add /metadata mounting, and /metadata/flashafterupdate to supported directories

UPDATE-adb.Installer.v1.0.41-signed.zip:

- call `start adbd` prior to adb commands to avoid issues for new users and ensure using root

- add fastboot wrapper to ensure using root

- make adb and fastboot help/version commands/output uniform

UPDATE-Busybox.Installer.v1.36.1-ALL-signed.zip:

- new working 1.36.1 SELinux builds from Magisk (temporarily)

UPDATE-mtd-utils.Installer.v2.1.6-signed.zip:

- update to latest mtd-utils official source

Payload-Dumper-Go_for_Android-1.2.2(1221).zip;

UPDATE-ZipSigner.Installer.v3.0-signed.zip:

- fix wrapper on Termux by also checking for root using whoami

Happy hacking!
[Android Software/Hacking General [Developers Only]] BillGoss:
Thanks for adding whoami to the root check in the adb/fastboot module.
[Android Software/Hacking General [Developers Only]] rodken:
3 cheers for MSI considering that I am a current owner of one as well.
[Android Software/Hacking General [Developers Only]] osm0sis:
Well, 2 cheers. I cut out the middle man in customer service and directly reached out to the Service Centre since they had contacted me about my last SSD replacement when it seemed like customer service wanted to tell me to stuff it. They also wouldn't tell me if there's a reason SSDs keep rapidly failing in the laptop, even though I asked them to check the thermals. 🤷‍♂️
[Android Software/Hacking General [Developers Only]] Osanosa:
What java version are you using?
[Android Software/Hacking General [Developers Only]] osm0sis:
I was using openjdk 8 if I recall correctly.
[Android Software/Hacking General [Developers Only]] osm0sis:
Tried Cygwin git to create the ndk-box-kitchen repos today, then build with Windows NDK since that's how I used to do it, and also tried it with Windows and Linux ONDK v26.0 in Windows and WSL2, but all still with the same result as before...

Only other things I can think to try is make a complete proper WSL2 or Windows build of Magisk and see if the busybox works from that, and failing that try the busybox (and/or Magisk) build in a full VM of Ubuntu to see if it can at least do it there since WSL2 seems off the table for unknown reasons at the moment. 😕
[Android Software/Hacking General [Developers Only]] osm0sis:
Got it. ;)

Fix SELinux in builds by osm0sis · Pull Request #10 · topjohnwu/ndk-box-kitchen

Magisk's Application.mk uses lto_fix.lds, which was missing here, resulting in (at least) SELinux functionality being broken on direct ndk-box-kitchen builds of busybox

github.com

Must've been broken since topjohnwu bumped APP_PLATFORM to android-24 in:

Update for NDK r23 · topjohnwu/ndk-box-kitchen@49136e1

Patch sources and generate files for BusyBox on Android - Update for NDK r23 · topjohnwu/ndk-box-kitchen@49136e1

github.com

🤯

Edit: Module update pushed. 👍
[Android Software/Hacking General [Developers Only]] RockerAlex:
@osm0sis hi mate, I remember reading a post of yours explaining why ASI Pixel version doesn't work on non Pixel devices, something among download links to language packs missing or something - I wonder could you reach out and let me know if it's possible to override this on a Samsung device to unlock Pixel dialer features? I've tried all the mods but they seem to rely on this ASI Pixel version deeply ... I also see errors about hotword permissions on logcat :S
[Android Software/Hacking General [Developers Only]] osm0sis:
That was in NikGapps thread, and I figured it out. It was just that they somehow had Network access disabled in the app settings.

https://xdaforums.com/t/android-13-gapps-nikgapps-arm64.3915866/page-77#post-88514059
[Android Software/Hacking General [Developers Only]] RockerAlex:
Where do I toggle that? Android System Intelligence constant crashing on OneUI with the Pixel version.
[Android Software/Hacking General [Developers Only]] osm0sis:
Check my edit above. I don't think you're meant to flash extra GApps over stock Samsung...
[Android Software/Hacking General [Developers Only]] RockerAlex:
I haven't and I'm not talking about NikGApps I'm trading about Android System Intelligence Pixel variant crashing on Samsung stock ...
[Android Software/Hacking General [Developers Only]] osm0sis:
Then I've got no help for you, unfortunately, since that was my only experience with ASI.
[Android Software/Hacking General [Developers Only]] RockerAlex:
No worries, thanks for reaching out!
[Android Software/Hacking General [Developers Only]] BillGoss:
@osm0sis, in the days before there was a working version of TWRP for the OnePlus 8T you created a version of the stock recovery that enable ADB in it. This allowed us to use root shell - something that's not possible in a production rom build.

Is the "fix" you made something that can be done to any phone's stock recovery to enable a root shell via ADB? And, if so, can you share how to do this?

I'm thinking that if TWRP is not available on my next phone, then your "fix" would at least enable root shell access for when the phone is having problems.
[Android Software/Hacking General [Developers Only]] osm0sis:
Old OnePlus recovery was special since it decrypted data, so obviously quite a lot could be done via adb once we had it. That's all gone with the new ColorOS base. You can still make any recovery adb insecure with my patches, but it won't be useful. You also can't do it to the boot ROM in any stock anymore since the root directory is in read-only system now. If you're curious about the patches the zips are still around, just take a look inside; that's the beauty of AnyKernel3. 🙂
[Android Software/Hacking General [Developers Only]] BillGoss:
Thanks for clarifying the context. I'd forgotten about the decrypting data part.
[Android Software/Hacking General [Developers Only]] osm0sis:
This is the place! Your device doesn't have /system/xbin (most don't anymore), so busybox is installed to /system/bin where the ROM's toybox is also installed, and the installer intentionally "filters" the symlinks to not overwrite any existing ROM versions since that can cause ROM functionality to break.
[Android Software/Hacking General [Developers Only]] DiamondJohn:
And thats the sound of a penny dropping... in an empty room ;)

Problem I have however, is that the toybox sed IS the issue; i think its expected parameter format changed from my previous A11 ROM to my new A13 ROM (haven't tested BusyBox yet). And i have a heap of scripts based on expecting the previous parameter format. So now I know why, I have no issue doing the how. Thanks.

PS: Out of interest, in the "old days", before magisk installations such as yours (ie 10+ years back), were BusyBox installers as "polite"? I am also guessing they relied on execution orders defined in the paths.
[Android Software/Hacking General [Developers Only]] osm0sis:
Nah, I think they all just used /system/xbin since it was the place to be! Stericson's app was the only one I can recall before mine that let you install to other places and I believe it would let you not replace existing.
[Android Software/Hacking General [Developers Only]] ew:
Is wget part of this package? I searched (both on my device and this thread) and couldn't find any references.

If not, is there a recommended way to get wget?

Thank you in advance for any assistance.
[Android Software/Hacking General [Developers Only]] osm0sis:
Yeah it's in busybox. It's visible above in DiamondJohn's output, and you can always run the binary to see, or check my config on GitHub.
[Android Software/Hacking General [Developers Only]] ew:
Sorry to be dense, but what directory would I find it?
[Android Software/Hacking General [Developers Only]] osm0sis:
Wherever busybox installed to on your system. Type `which wget`
[Android Software/Hacking General [Developers Only]] ew:
I see other busy box files in system/bin, however I can't find wget in that folder or anyplace else. I'm on version 1.36.1-all. I guess I can try to uninstall and reinstall, I'm out now but can try to do that when I get back unless you have any other suggestions.

Thank you very much for the assistance.
[Android Software/Hacking General [Developers Only]] osm0sis:
Either it's in /system/bin with the others or you've already got a wget in there so it was skipped by the installer. You can always type `busybox wget` to access it directly.
[Android Software/Hacking General [Developers Only]] ew:
Well...I tried 'busybox wget' and no luck.

Uninstalled/reinstalled, and there it is! Who know, maybe I did something wrong with the prior installation.

In any case, all is good and thank you very much for the assistance. I have wget and it is doing exactly what I need.

(I have been searching for a reliable way to download a file from google drive, unattended. I have tried all sorts of things and nothing so far was reliable. The tasker action was failing, there is an intent in MiXplorer which wasn't reliable... Finally I am trying:

wget --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O FILENAME

which seems to work!

Thank you for the help)

Sorry, meant to post this yesterday - I had it all composed, but never pressed the post button.
[Android Software/Hacking General [Developers Only]] osm0sis:
It only works if you have adb access in recovery. Then it's a one-click backup solution for the sdcard. Restoring also requires adb from recovery.
[Android Software/Hacking General [Developers Only]] beeshyams:
Thanks for the clarification....so it is manual mode for me

BTW...saw an app 0silverbackup & paid version 0Goldbackup to do backup...main advanatage is that it is incremental ..will try that out

Thanks again for the wonderful work which is of much use :)
[Android Software/Hacking General [Developers Only]] TheByteSmasher:
We were all noobs at some point[emoji3]
[Android Software/Hacking General [Developers Only]] beeshyams:
[MENTION=1143630]osmosis[/MENTION] [MENTION=2287484]TheByteSmasher[/MENTION]

Pardon me for making an unusual request and hoping you or anybody would be able to help me. Am on note 2, N 7100

I have some folders on my external SD card mostly containing important documents and call recordings. Just in case something goes wrong with external SD card, currently copy paste these on my internal cell memory. Would like to do this automatically on a daily basis. Tasker, I believe can do that but the learning curve may be an overkill for this

I am hoping it is possible to achieve this through a script which can run daily or when it is triggered.

If yes, and if it doesn't take too much can you help me with a script and how to run it. By now you would have figured out that my scripting or related knowledge is zero.

If I am asking for too much please say so and there is no hurry for this, would be travelling for next three weeks and would look into this once am back

Apologies if I am being unreasonable
[Android Software/Hacking General [Developers Only]] TheByteSmasher:
Not unreasonable but it may take some time (day job and all...) cheers
[Android Software/Hacking General [Developers Only]] beeshyams:
Thanks a lot.... Like I said am in no hurry... Whenever you can is fine by me... Can't ask for more when being spoon feed :)

Edit: any case till 25th would be too busy to even look at XDA, so no hurry
[Android Software/Hacking General [Developers Only]] TheByteSmasher:
It appears that Macrodroid https://play.google.com/store/apps/details?id=com.arlosoft.macrodroid Will perform your task. The Trigger Will be "day/time trigger" the action Will be "file operation" play around and see if you get it... MacroDroid is like a GUI designed tasker. Lemme know if you have any luck.
[Android Software/Hacking General [Developers Only]] beeshyams:
Wow!! Thanks genius... Did a quick trial and works beautifully... Thanks a zillion... You made my day :)))))))))))))))))