TrueCrypt for Windows on ARM - Windows RT Development and Hacking

Because impossible is possible, get TrueCrypt for RT machines here
XDA:DevDB Information
TrueCrypt for Windows on ARM
Version Information
Status: Stable, Retail
Version: TrueCrypt 7.1a
Created 2016-06-26
Last Updated 2016-06-26

Yea! Thanks blob, how you done this? And this will help we to unlock the UEFI? Becouse the option to install an "hidden operating sistem" it's interesting

whats truecrypt supposed to do? what is this tool? oh and welcome back @black_blob :good::good::good:

Wow this is great You sure manage to find some extremely useful bits to bring over. I did notice I had to put a space in the filename for the "TrueCrypt Format.exe" file, since it could not find it otherwise when creating volume. Not sure if it should have a space or if the process spawn should remove the space...
Did you compile this yourself? If so, what toolchain did you use to compile at least the UI portions of this app?
Thanks!

nazoraios said:
Wow this is great You sure manage to find some extremely useful bits to bring over. I did notice I had to put a space in the filename for the "TrueCrypt Format.exe" file, since it could not find it otherwise when creating volume. Not sure if it should have a space or if the process spawn should remove the space...
Did you compile this yourself? If so, what toolchain did you use to compile at least the UI portions of this app?
Thanks!
Click to expand...
Click to collapse
Used MSVC2015, it was just a couple of removing sets to non-writable zones any longer with new headers
Yes, I compiled it myself.

nazoraios said:
Wow this is great You sure manage to find some extremely useful bits to bring over. I did notice I had to put a space in the filename for the "TrueCrypt Format.exe" file, since it could not find it otherwise when creating volume. Not sure if it should have a space or if the process spawn should remove the space...
Did you compile this yourself? If so, what toolchain did you use to compile at least the UI portions of this app?
Thanks!
Click to expand...
Click to collapse
The MSVC project name is Format btw, but TC scripts reference "TrueCrypt Format.exe", so alright, it's a small bug though

Whats the use of this tool?

Related

Linux Port for HTC Vox

Hi!
Since last week, I've been working on an usable kernel for the HTC Vox. I guess you've already looked at this post: http://forum.xda-developers.com/showthread.php?t=368014&page=5
More or less, I have a working kernel. I've tested some images against the modified kernel, and both Gpe and Opie get to the welcome screen (without getting stucked). Nothing is really usable, as they're not even compiled for this specific platform (cannot get to compile opie for arm by myself... yet), but as a base, it's not bad at all.
As I've seen on my previous post, there's people interested on this (3300 views make me believe that), what I would want to know is, are there more developers interested on building a linux port for the Vox? Testers will be needed also, but later, when we get to something useful for testing
If you're interested, reply!
Cannot help u develop anything here, but would be a willing tester for it... thoroughly
I'd love to help, but I'm in the middle of moving to a new place and won't have internet most of the time next 2 weeks.
Do you have a Wiki or other place for collaberating? SourceForge perhaps?
I do have a wiki, but upload is no faster than around 80kB/s
In case you haven't seen it, you have a new build of the kernel on the other post, along with links and a little manual to start a graphic environment on the vox.
@barth666, @StefanHamminga
I've been thinking about it, and... I don't know what to do I mean, I think Sourceforge is the best place to dump it all, and it gives us a wiki too. On the other side, here is the xanadux wiki, and maybe it would be a good idea to let sourceforge host the files, and leave the wiki in here with other HTC phones... what do you think?
Oh! For GPIO dumping, the only thing I've seen working is the linwizard project's Haret_Omap.exe (in case you want to try to guess where the damned keys are )
PS: Anyone has an HTC Tornado? I'd love to know if the tornado kernel makes the leds and vibrator flash, I can't find where they are!
biktor_gj said:
PS: Anyone has an HTC Tornado? I'd love to know if the tornado kernel makes the leds and vibrator flash, I can't find where they are!
Click to expand...
Click to collapse
I have a tornado (and vox and wings), so tell me what to test
I know from the ml_iPod wiki (I am the admin) that SourceForge is really slow and the Php and Sql versions are old, in case you want to set up something like MediaWiki! You might want to try http://code.google.com/ , it has a built in Wiki and you can host files!
Just a suggestion
Keep up the good work
EDIT: I could even set one up, if you want, but I am not into coding at all!
Hi! Sorry for the delay, but I'm having lots of work this week and I've been unable to keep on with this...
@Walram: On the following days I'll try to build a kernel for you, wich should put all the lights on and makes the phone vibrate until you take the battery out Obviously just for testing, it shouldn't break anything, but I need to know if the originally-made-for-the-tornado vibrator and led drivers actually work on the tornado... Thanks!
@Frauhottelmann
Didn't know that google gave that service too! will look at it this weekend and post back when I have something done with this.. thanks for the feedback!
walram said:
I have a tornado (and vox and wings), so tell me what to test
Click to expand...
Click to collapse
Hi!
Ok, here's what I want you to try. If you haven't downloaded it yet, download the Linux Test Image:
http://rapidshare.com/files/93938763/test.zip.html
Then, download the kernel for the tornado:
http://rapidshare.com/files/96145010/kernel_tornado_driver.tar.gz.html
Dump the contents of the first file to the memory card, and then overwrite the file "zImage", with the one from the second link. Run haret, and hit "Run".
It should, at least, boot. If it doesn't, tell me where it gets frozen (could be that you only se some dots on the screen, whatever appears, just tell me )
If it boots, don't stop looking at the leds (charge/bluetooth leds mainly), they should, at least, flash -theorically they should stay on all the time-. It also should vibrate, at least for a quarter of second
I just need to know what it actually does!
Thanks!
So what about a dev-page? Then you don't need to upload it to Rapidshare and you can see the progress better!
Hi frauhottelmann,
I'm going to tell you the truth. I think it would be better if it's you who admins a site for this project than if I do, for various reasons:
1. I started all this thing, but I'm no owner of anything, by now I just hacked four things to make this phone boot a kernel, but no more.
2. I've seen your work at the ml_ipod sourceforge page, and think it's usable, clean, and nice, and I think that's exactly what we would need (even if it's a little slow just as you stated in your previous post). I could make the graphics for the web (I'm quite decent at photoshop), but I have never built a wiki, or a project anywhere else, and I don't know a sh** about it, so that would be another big thing to learn, and for now, I gotta learn more about the linux kernel, and that itself it's huge.
3. I don't think I can handle work, classes, building patches, kernels and bootstrap images and administrate a site, it feels like too much for me
Conclussion? I think it's better to let people do what does better, and I'm quite sure you'll do it better than I, so if you want, it's all yours
PS: In any case, we will need a name for the project, any suggestions?
What I have heard from the ml_iPod developers is that upload to SF is not a nice process either. I still think Google code is better, although it's not as customizable as SF.net. But we could also set up a page on Googlepages (pages.google.com) and then point to the Google code site with the Wiki and downloads!
I can offer my technical know-how (SPL, GPIOs, etc.)
Since I have little time you should ask me precise questions for which I can try to find the answers.
Sorry for the delay...
frauhottelmann said:
What I have heard from the ml_iPod developers is that upload to SF is not a nice process either. I still think Google code is better, although it's not as customizable as SF.net. But we could also set up a page on Googlepages (pages.google.com) and then point to the Google code site with the Wiki and downloads!
Click to expand...
Click to collapse
So we can start using google code, and stick with it if it goes well. We can always change the hosting if something goes wrong! About the wiki, the easiest thing is start with google code too, and simply link the xda wiki to it...
i can't code, but i can keep you company maybe
i am here if help is nedeed
But what name do we want to use?
Linux for Vox?
LinVox !
how does that sound ?
just kidding
waiting to get linux running on my vox....
But what name do we want to use?
Click to expand...
Click to collapse
Hooked on Vonix!
vonix sounds ok
can also try "Mobile TUX"
wow
this is an incredible news ! linux on the Vox !
I'd love to flash mine with a movibuntu distro =)
How do you guys feel about splitting the project up in several subprojects?
Like:
Kernel and driver work: TI OMAP HTC Vox board patch and perhaps drivers
Base system: minimal rootfs and toolkit to utilize all Vox functionality
Usability: GUI and (for instance) Android support
This would also enable us to share the base system & usability work with other 'linux on smartphone' and embedded projects.
I do have a suggestion for the base system:
www.emdebian.org
Very up to date build toolchain for arm (GCC 4.x toolchains) and you can have apt support on the base rom. This would allow access to a huge amount of packages that can be used with relatively little effort. Others I've checked out are the new mobile ubuntu (system requirements way to high), MontaVista (severe lack of proper documentation to get up to speed quickly), uClinux (uses ulibc instead of the faster full fledged one, in my opinion we'd better trade some storage for more speed) and some others I can't remember now...
PS. I've got internet at my new place and I've recovered my bricked wizard from the 'spare electronics bin', so finally I can spend some more time on this

[app] [Think Tank] omnipatcher - patching apps the easy way

This thread is for discussion on how to implement omnipatcher for android.
Project site => http://android-omnipatcher.googlecode.com
Project owner is brut.all
An Android app that can automatically download and apply patches/fixes for installed apps. It makes possible to add features to closed source apps without distributing proprietary code.
Planned features (in more or less chronological order):
* apks patching
o res files adding, deleting, replacing - especially useful for themes designers
o applying smali patches
o bsdiff patching
o xml assets patching
o resources.arsc patching
* signing and zipaligning apks after patching
* automatic app version matching
* automatic downloading to SD card some dependencies like smali, baksmali, zipalign, etc.
* patching system apps
o with root permissions
o without root - by changing package name and installing it beside original app
* possibility to generate update.zip file to reinstall some critical apps
* online repository of users fixes
* tool that simplify or maybe fully automate generating of patches
[Reserved for future use]
[Reserved for future use]
Brut.all said:
I though Java has native zip support?
Click to expand...
Click to collapse
Ok, Metamorph is run from console, so it hasn't got access to Java's zip lib. We wouldn't have this problem.
Brut.all said:
Big, but not huge And so far it was evolving very rapidly
Beside of that it will be iterating project. First we need patcher with some of basic features. Minimalistic UI and configuration, libs and patches will be downloaded manually to SD. Then we will add some automation, new features and so on.
Click to expand...
Click to collapse
Yes, I think an iterative project is the best for this
Brut.all said:
I did it already, this was really esay And file is significantly smaller, because smali/baksmali are built with Maven and hence have doubled deps.
I don't understand... You mean (bak)smaling only needed files? It is possible, I checked it
Click to expand...
Click to collapse
I don't know how exactly baksmali work but I have some idea in mind that I have to check... will tell after reasearching some stuff ;-)
Brut.all said:
I though Java has native zip support?
Click to expand...
Click to collapse
Yes, java has built in support (at least on desktop)
It's very interesting!
I made majority of work needed to release the first version of Omnipatcher with basic functionality and then I took to all Android stuff: UI, etc. 2 days passed and I'm almost at the starting point :-/ I got -10 to Android enthusiasm :-/
Android Layouting is not always that easy :-/
I don't have too much time now because I have to finish my pre bachelor thesis (have final design review on Wednesday) but...
How can I help with it?
Hey -- looking this over, as a non-developer/programmer; I am curious: is there any chance that this program could work to apply patches to *.img files? (Specifically, I'm thinking about hot-swapping the kernel.)
IConrad01 said:
Hey -- looking this over, as a non-developer/programmer; I am curious: is there any chance that this program could work to apply patches to *.img files? (Specifically, I'm thinking about hot-swapping the kernel.)
Click to expand...
Click to collapse
Nope, because the intent of this app is decompiling apk's, patch it and compiling again to make the patching app itself legal because no proprietary content will be distributed... the user has to provide the proprietary app to the patching util.
What you want to do could be easily done with just a binary patcher like bsdiff.
rac2030 said:
Android Layouting is not always that easy :-/
I don't have too much time now because I have to finish my pre bachelor thesis (have final design review on Wednesday) but...
How can I help with it?
Click to expand...
Click to collapse
@brut.all If you want, we could open a wave for Brainstorming on the app and I can help you with the Android app stuff your having problems with?
I'm working on it alone because I write much faster in languages like Java, than in English ;-)
I want to get first basic (root only, sorry), but working version, clean up code, release it, update googlecode site a bit (TODOs in form of issues, some usage docs, etc.) and then I will open to community development. In a few days, I think
Nice, MetaMorph pretty much does alot of this, at least in regards to apk and jar patching. MetaMorph is in the market now. the only problem we have had so far is that market apps require them to be resigned when you edit their contents, so that is problematic.
Yep, someone told me about MetaMorph already, so I checked it out, cause I prefer team work than many parallel projects on the same topic.
However I concluded that MetaMorh has different assumptions: it was created as a theme designers tool mainly, so it emphasizes speed and simplicity.
I want to create all-in-one framework with many methods of patching (simple file replacement, bsdiff, smali, XML patching) and installation (in-place replacement, uninstall & install by package manager, generating update.zip), apk version control and possibility to distribute patches without containing proprietary stuff in them. And hence I have chosen Java in contrast to MetaMorph, which is a shell script.
And you have surprised me by info that MM is in the market. You wrote about MM app here, but you didn't write that you finished it... Is it just a front-end to shell script?
too bad this thread's dead

Compressed Resources (resources.arsc) Decompressor

First time poster, but long-time lurker and avid Android Developer here.
I'm putting the finishing touches on a tool that decompresses resource files (including the ARSC and any compressed XML files). It's something I sort of took interest in in my spare time, as a learning experience, and I think it would be helpful to the community. It could probably be used to make modifications to compressed layouts in a ROM, such as HTC Sense-based ROMs (decompress the resources, make edits, compress, sign...).
Anyways, I figured I'd ask first... does a tool like this already exist? If so, whatever, this was a learning experience anyways. If not, I'd like to get it out there for all of you geniuses to use.
I'd also like to know what kind of options might be good to have on this tool. Right now it's command-line-based (and might stay that way... I think a UI might be overkill). Let me know. I'll be watching!
That's great!
In which language is it written? Will you open-source it? If so, on which license?
I'm asking cause I need such tool for my Omnipatcher project and I intended to make it myself
Java. I'll probably open-source it once I clean it up enough. I mean, nothing's really a secret in there. I figured out everything I needed from the Android sources.
Brut.all said:
That's great!
In which language is it written? Will you open-source it? If so, on which license?
I'm asking cause I need such tool for my Omnipatcher project and I intended to make it myself
Click to expand...
Click to collapse
When?
When will you relase this?
Oh, good work!!!
Any news?
itanczos said:
Oh, good work!!!
Any news?
Click to expand...
Click to collapse
Sorry guys, I'm really eager to get this out, I'm just struggling to pay the bills, too. I hesitate to make promises, but it should be out sometime this month. I'm just as excited as you probably are to use it. I can't wait to see what kind of themes/mods sprout up once you all get your hands on this.
That sound cool, I was also thinking in creating such a tool or maybe just a shell script that uses aapt to get all the infos and generate an xml out of it but if you already have something in the pipe for doing this... I hope it's finished (or better said at a release stage) soon.
rac2030 said:
That sound cool, I was also thinking in creating such a tool or maybe just a shell script that uses aapt to get all the infos and generate an xml out of it but if you already have something in the pipe for doing this... I hope it's finished (or better said at a release stage) soon.
Click to expand...
Click to collapse
Doesn't aapt only compile the resources, and not the other way around? I didn't think aapt gave us all the information we needed to go back to the original XML.
binarybulge said:
Doesn't aapt only compile the resources, and not the other way around? I didn't think aapt gave us all the information we needed to go back to the original XML.
Click to expand...
Click to collapse
It has dump command and output looks like full XML data just in different (easy to parse) format:
Code:
N: android=http://schemas.android.com/apk/res/android
E: manifest (line=44)
A: android:sharedUserId(0x0101000b)="com.google.android.apps.maps" (Raw: "com.google.android.apps.maps")
A: android:versionCode(0x0101021b)=(type 0x10)0xcf6
A: android:versionName(0x0101021c)="3.3.1" (Raw: "3.3.1")
A: package="com.google.android.apps.maps" (Raw: "com.google.android.apps.maps")
E: uses-sdk (line=54)
A: android:minSdkVersion(0x0101020c)=(type 0x10)0x4
E: uses-permission (line=58)
A: android:name(0x01010003)="android.permission.CALL_PHONE" (Raw: "android.permission.CALL_PHONE")
binarybulge said:
Doesn't aapt only compile the resources, and not the other way around? I didn't think aapt gave us all the information we needed to go back to the original XML.
Click to expand...
Click to collapse
Code:
aapt dump xmltree xxx.apk AndroidManifest.xml
This does output some sort of xml like output... at least as far I have analyzed the output, it should be possible with some parsing code to recover or better said reconstruct a working xml ;-)
Of course, just implementing a complete encoder/decoder would be a nicer solution and as you said, theoretically all the needed framework stuff is on git so it wouldn't be hard to implement it if you have time... I though that this was what you have done or not?
rac2030 said:
Code:
aapt dump xmltree xxx.apk AndroidManifest.xml
This does output some sort of xml like output... at least as far I have analyzed the output, it should be possible with some parsing code to recover or better said reconstruct a working xml ;-)
Of course, just implementing a complete encoder/decoder would be a nicer solution and as you said, theoretically all the needed framework stuff is on git so it wouldn't be hard to implement it if you have time... I though that this was what you have done or not?
Click to expand...
Click to collapse
Haha, yeah it is what I have done. You guys just kind of worried me a little making me think I was reinventing the wheel.
aapt would have been one approach, but I'm still not sure it covers all bases. For example, the strings.xml, arrays.xml, etc files. Those obviously aren't handled the same as layout files. Their contents get compressed into the arsc file. I'm also handling some more complex cases, such as one package referencing drawables from another package.
My goal of course is to restore all input XML, including things like strings.xml, and all of those in various configuration-specific folders (orientation, locales, screen sizes...).
is there any public source of this Compressed Resources (resources.arsc) Decompressor?
i'd like to test it!
Hello Binarybulge!
News?
Is this dead or what?
I'm working on such tool on my own, have managed to decode XMLs (using Android source, not parsing aapt dumps) and now I know, what binarybulge was talking about:
binarybulge said:
aapt would have been one approach, but I'm still not sure it covers all bases. For example, the strings.xml, arrays.xml, etc files. Those obviously aren't handled the same as layout files. Their contents get compressed into the arsc file. I'm also handling some more complex cases, such as one package referencing drawables from another package.
My goal of course is to restore all input XML, including things like strings.xml, and all of those in various configuration-specific folders (orientation, locales, screen sizes...).
Click to expand...
Click to collapse
binarybulge: please, let me know, whether you have quit, don't have time, died or what? Currently I'm working on decoding @ids and /res/values/ and I don't want to reinvent the wheel, if you have done this so far and just don't have time to continue your work.
I'm interested in pitching in. I want an easy tool for decoding a binary .xml file, edit it including adding new elements and then convert it back to binary xml.
I'm pretty familiar with Android low level stuff. One example of my work:
http://forum.xda-developers.com/showthread.php?p=5475283
If I can help in any way, let me know. I don't want to reinvent the wheel either.
jonasl said:
I'm interested in pitching in. I want an easy tool for decoding a binary .xml file, edit it including adding new elements and then convert it back to binary xml.
I'm pretty familiar with Android low level stuff. One example of my work:
http://forum.xda-developers.com/showthread.php?p=5475283
If I can help in any way, let me know. I don't want to reinvent the wheel either.
Click to expand...
Click to collapse
Just for curiosity: how did you do it? Hex edited xml's and resources.arsc?
I'm still working on this tool and have made some progress
Everything that's been done on the keyboard linked above has been done in code. You of all people need no introduction to smail/baksmali
I've rewritten the configuration system (HTC's settings provider is missing in non sense roms), rewritten the parts that interfaces with google voice recognition service and some other tweaks, but it's all code mods.
To fix some remaining issues I must edit xml layouts. Just changing some color code etc. is doable in any hex editor, but adding and removing elements and attributes is kind of hard. I'm stuck at this point and was looking for a tool to convert own xml to binary xml. Since I didn't find such tool I was thinking about creating one and ran into this thread...
I've just successfully and fully automatically decoded all resources for simple HelloWorld apk, then edited them, packaged again using aapt and run on a device It's early alpha and is unusable for now cause it still doesn't support many types of resources, but I have a proof of concept, that it is possible to repackage resources
Brut.all said:
I've just successfully and fully automatically decoded all resources for simple HelloWorld apk, then edited them, packaged again using aapt and run on a device It's early alpha and is unusable for now cause it still doesn't support many types of resources, but I have a proof of concept, that it is possible to repackage resources
Click to expand...
Click to collapse
Yay! Cool! Waiting for release!
Greets!

Learning about Android as an OS

I hope this isn't a stupid question. But I couldn't find any real info regarding this. And after reading the Mysteries of Science thread it seemed to me, there really isn't much information regarding such things. So:
I noticed that for almost all Linux based OS you can find in-depth descriptions on how the OS works on a basic level. For example where specific settings are stored.
The guides at android.com deal with app development, but don't specify how you use the OS as a root user. For example, if I want to change WLAN settings, there must be a way to do that without using the GUI or by using special classes but by editing a config file. Or where does Android store the startup settings, i.e. which apps to start at boot time or at specific system events. Or where do apps register as default app for viewing certain filetypes. There is a description how to code it, but not how Android stores that information and how it can be edited/viewed manually.
Since it's linux based I guess there are plain text config files for all those things. But where...? Was such information ever released by Google?
bur2000 said:
For example, if I want to change WLAN settings, there must be a way to do that without using the GUI or by using special classes but by editing a config file.
Click to expand...
Click to collapse
You can change network interface with 'ifconfig' command.
You can get ifconfig command by installing busybox.
There are commands that can be used, but this is still a bit liek try&error. So it seems there is no full documentation on how Android works?
Has Google ever addressed this, do they plan to release such documentation?

Wayland server for Android

ABANDONED
Hi! Does anyone here use Linux desktop distributions in chroot environment on Android device?
I am developing wayland protocol server for Android devices. If anyone is interested in checking my project, latest version of apk is always available here:
ftp://ftp.drivehq.com/mogryph/sparkle/
Currently I am only focused on running Xwayland as client. Also apk supports audio output.
Simplest instruction:
1. Android 6 or newer required, busybox required, root required
2. Prepare linux distribution in directory, image or on partition. Make sure you have Xwayland installed in it. Make sure you specify which DE to run (or at least xterm) in ~/.xinitrc
3. Install and start sparkle.apk
4. Press "edit user.sh", uncomment (remove #) line starting with start_generic_container. Change rest of this line to match your device:
first arg - image or partition where distribution is installed. If distribution is installed in directory and mouting is not needed, leave this arg unchanged.
second arg - mount point or directory with distribution. If you use mounting (first arg), this arg can be left unchanged.
third arg - name of the user which will be used to start Xwayland and DE. Its better to specify non-root. Also this is the user who must have .xinitrc in his home dir (see step 2).
5. Save user.sh and click "Start".
6. Any problems and crashes will be reflected in the log.
If you want audio output:
1. Compile and install driver from pcm_sparkle.tar.gz in your distribtion
2. cp 1.asoundrc ~/.asoundrc
If you have blinking problem, change upload_mode from 1 to 2 in settings. If you have bad performance, setting no_damage to true may help, but in most cases no_damage=false is better. Fastest upload mode is 0 (if it works).
If you don't trust me and don't want to give sparkle root permissions (I perfectly understand this) you don't have to. Also you can do without busybox.
But in this case, you need to understand and do a lot of things. Check sparkle's user.sh to get idea about what needs to be done. Basically:
1. You need to make /data/data/com.sion.sparkle/files accessible from inside chroot container. You can use bind bound.
2. Make sure you have tmpfs mounted over /tmp in container.
3. You may need to change selinux context on /tmp to match sparkle's context or disable SELinux.
4. You need to create new directory in /tmp, symlink sparkle's wayland socket from /data/data/com.sion.sparkle/files/wayland-0 to this dir. And export XDG_RUNTIME_DIR to point to this dir. Dir must be (ch)owned by user who will be running Xwayland and DE.
5. After all this, you can try to start Xwayland and your DE.
new version
New version
rgho.st/8Fbz64Rxj
Added x86 and x86_64 support. Actually it is rewritten almost from scratch but x86 support is the only thing others can notice...
Hello! This project is interesting. I tried you app and it works on my Xiaomi Redmi Note 4X(chromium and glmark from chrooted environment works very well)! Can you publish source code on Github, because it really interesting project?
Also I'm interested, please post it on github!
Did you put this up on github or move this thread? Looks very interesting.
1
Argh, sorry, I decided to abandon this project. You are free to delete thread. Also no copyleft-licensed components were used so I don't have to bother releasing sources.
Hentacler said:
Argh, sorry, I decided to abandon this project. You are free to delete thread. Also no copyleft-licensed components were used so I don't have to bother releasing sources.
Click to expand...
Click to collapse
Check your PM please!
1
Hello again.
For last two weeks I was rewriting it from scratch (yes. again... yes, third time).
Probably need another week to make it stable.
Currently I am not sure it runs on any device except my own 5-year old phone (LineageOS 14).
I will maintain last version here:
ftp://ftp.drivehq.com/mogryph/sparkle/
There is no English documentation, but you can see script "user.sh" to get idea about how to start xwayland. In most cases it should be enough to edit few lines in that script to make it work on another device. If you execute this script on your device with "install" argument, it is supposed to place itself into sparkle's directory and sparkle is supposed to run it ("start" function) automatically. Sparkle doesn't request root unless script does.
Here is video of sparkle working:
https://www.youtube.com/watch?v=tOSFYxCF7Q8
But it seems that KDE + video recording was too much for my old phone
Still, if you going to see video, don't close it until 2:00 where I turned of composition which caused lags.
Also on device everything looks much smoother than on video, even after 2:00.
When I watch fullscreen (1280x720) video on my device, sparkle + xwayland together add just 5% of CPU load (20% load of single core).
Thats it I guess... I tried to to discuss sparkle on 4pda.ru (russian forums), but got very bad reception. "xsdl is perfect, dont reinvent the wheel" they say. So I started to hate humanity and I decided to make sparkle personal project. Also this is last time I am solving reCAPTCHA to leave post on XDA.
Still alive
We are still alive. I've changed first post to reflect actual state. Now sparkle supports audio, auto-mouting containers and is lot more stable.
Yet there are still many things I want to improve in sparkle's core before adding new functions.
Also there are few demo videos on ftp.
Amazing!
Working great on my redmi 6 pro. Stock miui 9.9.3 rom. With linuxdeploy and sparkle from your ftp. No lag on visual and sound. My Linux distribution is alpinelinux arm64 arch.
Since first time I see your posting on 4pda. I'm interested in it. And finally it's on xda.
Thanks dev.
---------- Post added at 02:52 AM ---------- Previous post was at 02:44 AM ----------
For anyone interested in the topic. Please follow the instructions in documentation from ftp. And Translate it to eng from rus.
This sounds amazing! Just curious, is it related to https://github.com/twaik/sparkle ?
I now have it working very well on my Samsung Tab S3 using Xwayland and a tiling window manager. Firefox runs amazingly well!
Is it meant to be used only with Xwayland or will it also work with native Wayland applications?
BTW, I think if you open sourced this project and promoted it a bit, it could become quite popular. It's basically the first way to run X11 GUI applications on Android devices at full speed. If you set up a donation link, you could also get compensated for your time and effort. I'll personally contribute $20 if it's open sourced, and I'm sure others will chip in as well.
robsmith11 said:
This sounds amazing! Just curious, is it related to https://github.com/twaik/sparkle ?
Click to expand...
Click to collapse
Thanks for feedback. Nice to hear that someone managed to start this thing
Twaik's repository is clone of my very very old version of sparkle. I made that version years ago when I was just starting to learn linux and C++. Sparkle was rewritten from scratch two or three times since that version. And (I believe) current version is much better.
Regarding making it open source... Few months ago I had to find real job. Can't spend much time on personal projects any more. But I have my own strange programming style and my own vision of what sparkle should be. Not sure I want others to paint on my picture. It's probably all because of Twaik! I hate how he used old open source version of sparkle. He did terrible things to it, outraging all my beliefs Sorry!
P.S.: Yesterday I've uploaded another apk to my ftp. The file is called "sparkle-testing.apk". This version is much newer and has many fixes. But I've also changed to many things since tested version including some fundamental changes. No guarantee it will run at all on other devices. Interest is mega low and I get no test reports at all.
Hi Hentacler, I've just found your project - it looks really promising. Unfortunately, the only link currently working on this thread is to github. Is this project still live?
I have a samsung galaxy note 10+, and am using it as a laptop replacement. In addition to the android apps using Samsung Dex (Samsung's desktop solution), I have several linux distributions installed inside a chroot using userLand - so far, its working great. I'd be keen to give you project a try if it's still live, and am happy to help out with testing from my device.
Re open source - while I like your project, I'm not super interested in investing time into something that's not open sourced - I appreciate your concerns about wanting to maintain the direction, but having transparent development is pretty important to me. Is Twaik's fork of your project a better place to go?
Cheers.
tillum said:
Hi Hentacler, I've just found your project - it looks really promising. Unfortunately, the only link currently working on this thread is to github. Is this project still live?
I have a samsung galaxy note 10+, and am using it as a laptop replacement. In addition to the android apps using Samsung Dex (Samsung's desktop solution), I have several linux distributions installed inside a chroot using userLand - so far, its working great. I'd be keen to give you project a try if it's still live, and am happy to help out with testing from my device.
Re open source - while I like your project, I'm not super interested in investing time into something that's not open sourced - I appreciate your concerns about wanting to maintain the direction, but having transparent development is pretty important to me. Is Twaik's fork of your project a better place to go?
Cheers.
Click to expand...
Click to collapse
ftp://ftp.drivehq.com/mogryph/sparkle/
Link to FTP should work and there you can get two versions:
sparkle.apk - old version, but confirmed to work by 3-4 people.
sparkle-testing.apk - latest version, but only briefly tested by me.
I don't ask anyone to invest anything... Sparkle doesn't request root access or any other dangerous permissions (unless you enable automatic container mounting and starting) so it's safe to try for anyone who wants.
Btw, somewhere between these two versions I've replaced BASH container initialization script with LUA version. That was probably a bad idea. LUA script is harder to start directly as root and hacks I used may not work (currently may even cause application freeze if root access is denied). Going to revert to BASH probably. But this only touches people who want sparkle to mount container and launch everything automatically on single button press.
p.s.: Why I need to solve captcha every time I post something?
Thanks for the new release! I've updated and everything seems to be working without any changes on my Samsung Tab S3 with chroot and Arch Arm Linux.
Your changes also solved the flickering for me! The old version would flicker the screen whenever my keyboard's trackpoint activated, but it's not flickering at all any more. Performance seems to be about the same.
I think this could be quite popular, but not many people know about it. Perhaps a post on Hacker News or Reddit would raise awareness.
I understand your position on open source and maintaining control. One idea if you haven't already considered it is releasing the code with a restrictive license that forbids any forks. But either way, I'm enjoying being to properly use X11 on my tablet.
BTW, have you tried any native Wayland compositors? I don't really understand the Wayland ecosystem that well. I gave Sway a brief try, but it didn't seem to work. I've only been using XWayland.
@Hentacler Thanks for your reply! Very keen to get this working, but having a few issues. I'm unsure how to configure the user.lua file - I'm using your latest apk.
I have a non-rooted device, and am running archlinux under termux. Works fine with xsdl. I have installed xorg-server-wayland for X11. I'd appreciate any advice you have.
@robsmith11 Are you able to share how you got this working on Arch? Thanks!!!!
tillum said:
@Hentacler Thanks for your reply! Very keen to get this working, but having a few issues. I'm unsure how to configure the user.lua file - I'm using your latest apk.
I have a non-rooted device, and am running archlinux under termux. Works fine with xsdl. I have installed xorg-server-wayland for X11. I'd appreciate any advice you have.
@robsmith11 Are you able to share how you got this working on Arch? Thanks!!!!
Click to expand...
Click to collapse
I am not sure it is possible to use sparkle without root...
Sparkle makes it's directory accessible for everyone (chmod 777). Before Android 8 or 9 this was enough and xwayland from termux was able to connect to sparkle. Here is how people used to start it:
export XDG_RUNTIME_DIR=/data/data/com.sion.sparkle/files
Xwayland
But newer versions of Android brought more restrictions and termux can no longer connect to sparkle. These new restrictions are implemented using SELinux if you know what it is. Applications now have different security contexts.
But that is not all. Newest versions of android brought even more terrible meaningless restrictions effectively "killing" applications like termux and many others.
In short, from now one applications are not allowed to execute code (binary) that comes from "untrusted" sources. Termux used to download a lot of such code from it's own repositories. And now it can't. We can't even unpack binaries from assets.
So I can only help with rooted devices.
P.S. Please forgive me, but I am leaving this website. Making people solve recaptcha every time they want to post something is unacceptable level of contempt.
My mail: [email protected]
Thanks for that, will have a play. I could always just root my device. Weird about recaptcha, not having this issue. Currently through termux I have access to the whole sdcard, and am able to download packages (and distros) in it - will have a play and see what else is possible.
@tillum
I basically just followed the instructions on the first post for using Sparkle without busybox. I didn't need to modify the Lua scripts.
I'm guessing SELinux may be a problem without root. I'll try setting it up without root when I have a chance later.

Categories

Resources