Related
As the title above suggests, I am after building and using a complete Linux native-built (not over-android and such like) system, which is build from source (no propriety google and other such closed-source nonsense) with the following features:
- 'standard' kernel (again, built from source) with, possibly, the SELinux hooks enabled (see below);
- NO GUI (at least not for now anyway) - just plain old terminal environment;
- iptables and associate tools;
- SELinux + associated tools built and installed - this, although not mandatory, it is highly desired. I can build the security policy myself, though the tools I need to use require recent working version of perl, python & m4 to name a few packages required.
- auditd (highly desirable and obviously dependent on whether SELinux could be build & installed);
- dev-mapper tools;
- vim (minimal configuration);
- bash;
- crond
- openvpn - i have my own 'customised' sources for this, which I use on all of my machines;
- linphonec - this, from what I understand, could be build from source for armv7 (which is what G1 is based on afaik);
That's it. I don't need any other fancy tools/packages. I would also like the root image (/) to be as a 'live cd', though I am not sure with the 192MB RAM available to G1 whether this is at all possible?
As evident from the above, I intend to use the phone as a mini-pc-station, which connects to my network (via vpn) and uses sip-based voip. The intended method of connection is about 70% wifi (various hotspots as well as my own wifi router when I am at home) and 30% gps 2/3g, HSDPA/HSUPA when no hotspots/wifi is available (that probably means the use of sim card, I guess). I also need the audio to be usable in full-duplex mode.
My G1 phone is already rooted and contains custom android 2.1 rom upgrade from here, though I have to admit that even though I have quite a bit of skills as a programmer, my experience with embedded devices - and g1 in particular - is the grand total of nil, I am complete n00b as far as this goes, so if anything I have included in this post is a bit...erm...stupid, I apologise in advance.
I did a bit of research and came across various attempts to build and install Debian[1][2], build and use OpenMoko[3][4] and SHR[5], as well as getting rid of the unnecessary - bulk - stuff[6][7] and according to some[8] what I want to achieve seems 'doable', though as a newbie I am not sure what route to take, thus I ask for a 'second opinion' from the more knowledgable on here before I dive-in and start spending more time on this.
What concerns me are the crucial bits that seem to drive the G1 hardware - wifi and gps connectivity in particular - they all seem to be propriety and closed-source[8]. I don't know whether this problem has been overcome (if so, I'd like to know how exactly?), but I would like my phone to be 100% build from open source and have the functionality I described briefly above, if that's possible.
Also, I'd like to build the phone image on a 'regular' PC - I have quad core CPU (x86_64 arch), which should be sufficient for the task, I think. I tried to build x86-64 -> armv7 (arm11) cross toolchain, but do not know enough about what 'flavour' of the core c library is in use or shoud be in use on G1?
Again, any help with this would be much appreciated, thanks. As a newbie with less than 10 posts I am only allowed to post on here instead of the dev forum, which was my intention initially!
[1] Debian & Android Together on G1 - Jay Freeman (saurik)
[2] Native Debian on HTC Dream G1 | Novaspirit - Notepad
[3] Main Page - Openmoko
[4] Openmoko on HTC-Dream
[5] Devices/HTCDream/InstallGuide - SHR
[6] xda-developers - View Single Post - [Q] G1 rom without phone bulk?
[7] Official "Native Linux/Debian" Thread - xda-developers
[8] Dream - Htc-linux
The architecture you need to build for is armv6 / armv6j. Terry has a complete AOSP setup on github, probably you can extract some additional information from there.
Thanks for the the answer and the link provided - it seems that all of these repositories contain Android-based stuff.
As I indicated in my initial post, this is not what I am after - I already have rooted system with an old-ish android installed (2.1). I just want a 'standard' customised kernel (Fedora, Debian, Ubuntu) so that I could then easily build and install the software components I indicated above and possibly lock them in in a security domains using SElinux as well as get rid of all the propriety stuff which currently exists in android.
'open source' android is not where I want to go.
Yes, it's mostly android, but there you can find also his kernel sources and how to build them. In addition there is busybox, ... i.e. everything you need to build a command line linux. Additional packages, like python, ... you want to integrate you have to get and to integrate from different sources. The "final" setup is to be done by you. What else you are looking for?
Sent from my Gingerbread on Dream using XDA App
Maybe I am not looking in the right place, but from the link you provided I could only see GB-* (gingerbread?) repos with the exception of 'kernel-biff-testing' which contains the android kernel, which, to my understanding, is not the 'standard' kernel and is therefore not what I am after (again, see my initial post).
Its a kernel for the htc dream.. yes there are are android related components (all under gpl v2) you can if you wish configure them out. And patch it to use some device memory like the camera ram and video ram as general ram since you wont be using the android libraries used by these, you will also want to enable the console.
Use that and a debian or other gnu userspace if you wish, on system, userdata,cache, partitions and ans ext partition on the sdcard..
Not sure how well your ideas for audio will work. Seems somewhere are alsa drivers.
That or look up the openmoko port to the dream.
What you are missing is unlike x86 the linux kernels for arm devices frequently need patches to work.. there is a movement to reduce this but most devices at current require some patches not in mainline.
FYI
Wifi: drivers are open source,
Bluetooth: the serial port is open but the device its self requires a binary firmware blob to be uploaded to it
Mobile (3g/gsm) camera and gps: kernel has some api calls to the arm9 and provides access to userspace.. binary blobs in android userspace talk to these devices so I don't know the details, openmoko is the best place to look at details here.
Thanks for taking the time ezterry! Comments below:
ezterry said:
Its a kernel for the htc dream.. yes there are are android related components (all under gpl v2) you can if you wish configure them out.
Click to expand...
Click to collapse
Are we talking about the 'standard' kernel or the android one? If it is the latter that won't be of much use to me 'cos the arhitecture of the android kernel is very different from the standard one (the likes of Ubuntu, Debian, Fedora etc). In addition, there are no SELinux hooks afaik, which makes building and deploying SELinux policies impossible[1].
Moving on...
ezterry said:
Use that and a debian or other gnu userspace if you wish
Click to expand...
Click to collapse
Do you mean deploying Debian on top of android? If so, this is not what I need - I want native system, one which my phone boots into as soon as I turn it on - without touching anything android-related!
ezterry said:
That or look up the openmoko port to the dream.
Click to expand...
Click to collapse
I did, but from what I could gather it isn't complete and has a lot of rough edges.
ezterry said:
FYI
Wifi: drivers are open source,
Click to expand...
Click to collapse
Erm, yes and no - WL1251 (which is what g1 uses) has 2 drivers - 1) TIWLAN, which is GPL'd, but not very useful as it relies on non-standard (i.e. android-specific) stack. That stack has nothing to do with the 'standard' Linux stack; and 2) 'native' wl12xx driver which does use the standard Linux stack, but seems not very complete and requires a lot of quite ugly hacks to enable some sort functionality approaching acceptable levels[2][3].
ezterry said:
Bluetooth: the serial port is open but the device its self requires a binary firmware blob to be uploaded to it
Click to expand...
Click to collapse
Thankfully, I am not interested in bluetooth - at least not at this stage anyway.
ezterry said:
Mobile (3g/gsm) camera and gps: kernel has some api calls to the arm9 and provides access to userspace.. binary blobs in android userspace talk to these devices so I don't know the details, openmoko is the best place to look at details here.
Click to expand...
Click to collapse
Please ellaborate! I did look and Openmoko seems to suggest 3g/gsm status ' fairly complete w/ FSO2' (freesmartphone.org?)[4].
[1] The case for SEAndroid
[2] WL1251 - HTC Linux
[3] wifi firmware - xda-developers
[4] Dream - HTC Linux (core status)
YES You need to download some dream source and look at menuconfig... and yes disable the android specific addons and moduels. and build it
YES you need to ditch the android init, and bionic ect, and replace them with the arm builds from debian or other GNU project source, and change the android ramdisk (root directory) into a debian (or distro of choice) ramdisk to pivot_root to what android calls /system and mount sd-ext if/as needed
YES you need to find the open source AMSS drivers from openmoko rather than use the android binary blobs,
YES you many need a special WPA Supplement (but still 100% open source) to deal with wifi. (its still normal linux networking .. just setup is strange)
NO Android will not boot or exist if you remove lowmemory killer Ashmem, and if it still exists binder from the kernel
NO dalvik will not exist when you install a debian ramdisk to your boot.img, and debian base system to /system and /sd-ext as you see fit
MAYBE SELinux will work with.. maybe it needs some patching.. but once the android parts are disabled in menuconfig you can try to enable SELinux (just the code is modified for the dream and you may find rough edges that need ironing first)
Your direction need be as follows: 1. realize its still the linux kernel (with some new modules that linus is not sure belong in the actual kernel) 2. learn how the linux kernel enters userspace (starts init) yes all of android userspace is re-written from the ground up, so you want to dump androids init and use a gnu-linux one.. and dump bionic for proper gnulinux libc/utilities
_----
It ought to be noted in your links are openmoko and others that effectively tried what you are asking,
It may be rough at the edges but they may have the starting point for you.. but the effectively tried and cleaned up some larger edges on what I am describing. Thus fixing the rough edges in these other projects may be better that starting from scratch.. at least keep them for refference..
I however have openwrt routers and Linux desktops and netbooks for Linux, OS's MacBook for OS's and android phones/tabs for android, and vmware for windows XP.... so have not exactly hadthe need to transform a htcdream to gnu Linux or have reason to.
I'd personally would be more interested in *.ipkg as used by openwrt to install Linux packages in the bionic userspace of android (for use on the command line but keeping android, and without need of a full debian chroot)
kexec is now fully working!
Kexec host kernel: https://github.com/willcast/ubuntu-kernel-tenderloin branch is "kexec"
Graphical bootloader: https://github.com/willcast/kexecboot
Compiled host kernel uImage UPDATED: https://docs.google.com/file/d/0B4WUjKii92l2RHJoNE93c2dVRlU/edit?usp=sharing
THE ATTACHED KERNEL PATCH (decomp_copy_atags.diff) _MUST_ BE APPLIED for ANY kernel to be bootable FROM kexec.
YouTube: http://www.youtube.com/watch?v=ko_4cOj_5iM
Kexec kernel and OS installation is best performed through SmackMe2, which is available in its own thread on this site.
I have no idea what you are saying, but keep up the great work!
Keep up the good work man , one question with you work in the future can we delete web os from the touchpad forever?
I imagine that's already possible. Use lvm to delete all the logical volumes not tied to another OS and then delete the uImage.webOS symlink. That deletes webOS, frees mostof its space and removes it from the moboot menu.
If you choose to do that, though, using the doctor to restore WEBOS will be even more difficult because you'll have to wipe out everything AND potentially need to "unbrick" your TP (using the method involving NovaCom, the small boot image ripped from the doctor and a string of LVM commands that is posted on sone or other forum.)
Lvm? Can you make a tutorial? How to remove webos from touchpad?
Thank you
Before this is complete or posted for testing, I think we will need a tutorial and links to files of how to fix the tp from a full brick such as issues with removing and restoring webos.
Great job if your boot loader works as planned we will have a full multi-boot device with a few restrictions(drivers for untested ports, etc).
Keep it up.
Sent from my cm_tenderloin using xda app-developers app
Awesome that you're resuming development castrwilliam! Can't help you with kexec though, sorry. I hang around in the Motorola Defy forums and some developers like Quarx have tried pursuing the kexec route in order to load custom kernels onto the Defy, might be worthwhile to throw him a PM. Would be great to have a more flexible bootloader!
I anyone needs a full restore, this thread helped me out. I followed the instructions when I screwed up and doctored without removing partitions. I believe WebOS Doctor handles repartitioning, so it should work:
http://forum.xda-developers.com/showthread.php?t=1426244
WORKING (but non-Kexec) Android multiboot for TouchPad.
DON'T TRY ANYTHING UNTIL YOU HAVE READ THE WHOLE POST!!
Beta 2 Updated with support for my Froyo Qcom kang.
I created a script that can install multiple versions of Android on the HP Touchpad, side by side, such that they can be selected at the MoBoot menu and operate independently. The script modifies them, on the Touchpad itself, to work with the new names for the partitions.
I want your feedback on this installer. It is used in the same way as ACME Installer but only shares one line of actual code with it (and it also uses the same binaries and config files on the initial ramdisk image, but they are Open Source so that should'nt matter.) I'll be posting this on XDA in a minute, my username there is also "castrwilliam".
If you do choose to use (TEST!) this:
- You need to create a folder on your media partition (the one that is shown when you select USB mode) with the following zips:
moboot [moboot_0.3.5.zip]
(the rest are optional but I recommend using them all so that you can help me test everything)
Froyo Test [Froyo-2.2.1-Qcom-Kang-Touchpad-a0.1-incl-gapps.zip]
CM7 alpha3.5 [update-cm-7.1.0-tenderloin-a3.5-fullofbugs.zip]
CM9 latest nightly [cm-9-xxxxxxxx-NIGHTLY-tenderloin.zip]
CM10 latest preview [cm-10-xxxxxxxx-EXPERIMENTAL-tenderloin-FOR_LIMITED_TESTING_ONLY_CAM.zip]
2.3.x gapps [gapps-gb-xxxxxxxx.zip]
4.0.x gapps [gapps-ics-xxxxxxxx.zip]
4.1.x gapps [gapps-jb-xxxxxxxx.zip] MAKE SURE not to use 4.2 gapps!
(NO Android Recovery will work yet, so don't try. It will reject TWRP and CWM at least.)
- If you already have Android and/or Moboot and/or native Linux (Ubuntu, etc.) installed:
* back up any data on your media volume. webOS should back up your apps for you.
* make both a nandroid (which WON'T work to restore in a multiboot config, but if you go back to single boot, it will be fine) and a Titanium backup [which should be portable to the same OS.]
* run ACMEUninstaller and then run SmackMe-Installer.
* if you have native Linux, backup your /etc and /home (I recommend the lovely GNU tar and gzip/bzip2). That should be the majority of what to keep.
* ALSO uninstall any native Linux you may be using after you back it up.
* lastly unzip and novacom boot the SmackMe-Installer.
If you don't already have Android, MoBoot OR native Linux, just:
* back up any data on your media volume. webOS should back up your apps for you.
* then unzip and novacom boot the SmackMe-Installer.
youtube demo:
http://www.youtube.com/watch?v=8Hhy20lzhR4&feature=youtu.be
File should be attached. Report bugs by PM'ing me, or posting in this thread
Can i remove webos with this multiboot? And stay only on android and ubuntu?
This is strictly an installer. I was going to write a webOS removal script. However, android doesn't have the needed binaries. That leaves me two options: make another thing like SmackMe to do it or do it under whatever version of native Ubuntu you are running. Either way, I really don't want to have to test it myself. If I need to I'll have to doctor my touchpad EVERY TIME I do it. That's a lot of doctoring and a lot of flash write wear. So the answer is basically "find me a dev that wants to remove webos too. They'll either make you one or beta test mine." Sorry man.
Amazing keep up the good work castrwilliam !
Strange request
Hey, does anyone here still have the 2011 Froyo (2.2.1) system dump for Touchpad? It wasn't CM6, just something that HP accidentally released and someone over at Rootzwiki dumped. I'm posting this here because I have no account and they'd think I'm a noob there. All the links are down to it and I want to try messing around with its files, just for kicks. Maaaaybe I can get it to boot, and add support for it to the SmackMe installer, so at least I can have *four* versions of Android on my touchpad.
http://forum.xda-developers.com/showthread.php?t=1234381
You know, 'cause I'm just that crazy.
Wow it's been hard to find it but i think this is the good dump:
http://download.digiex.net/Consoles/Tablets/HP-Touchpad-Android2.2.1-Disk-Images.zip
sources:
http://digiex.net/downloads/downloa...hpad-android-2-2-1-system-image-download.html
it's alive! (sorta)
Somebody on XDA found a link that I thought was dead. It was the mmc dump of someone who had Froyo leaked by HP onto their fire-sale Touchpad.
FAQ:
"Obviously nobody wants this. Everybody's running Jelly Bean."
That's exectly why I did it. My point is to do the most outrageous and downright unnecessary things possible with commonplace hardware.
"What doesn't work?"
Rotation, sound, wi-fi, softkeys (i.e. Home, Back, Menu, Search.)
"What does work?"
Camera (OH HAYULL YA), touchscreen, battery reading, power button, volume button (but it dosen't matter b/c sound is borked).
"I can haz Modded Froyo?!"
Not yet.
YouTube: http://www.youtube.com/watch?v=zX29IcTIB14
Hah awesome work, I think you hold the record of most different OS'es on one device now! It looks quite functional already.
Oh and about the "Obviously nobody wants this. Everybody's running Jelly Bean." quote, I only run WebOS and your Ubuntu 12.10 port on the TP!
As soon as I get my power button sorted out I am on this!
Sent from my slim_tenderloin using xda app-developers app
Hey everyone! Froyo here!
I've just zipped up my Froyo kang such that it will work if flashed from SmackMe, and if you're crazy enough to run it alone, hopefully also Android recovery.
sound works!!
The Wi-Fi works now BUT YOU NEED A STATIC IP ADDRESS. (problems with dhcpcd)
The buttons are hacked to work (by my new shell script: /system/bin/buttond, check it out) as follows:
Volume Down is Back
Volume Up is Menu
Center is Home.
Obviously once the audio works (if ever) that will be an issue. My embarrassing secret (at least probably to the devs here) is that I don't know Java. That makes it difficult to mod on any touchscreen buttons...
The real audio library is /system/lib/libaudioflinger.real.so and the stub one (default via a symlink) is /system/lib/audioflinger.so. Using the real one causes bootloops.
Auto rotation still won't function.
Google Apps and even Facebook are included in this ROM. (It's not CM6.) So are some potentially geeky Qualcomm apps.
Don't set up your Google Account during first boot, because it will ask you to slide the keyboard open. That sounds pretty impossible onn this device. Set it up from Settings later, and you shouldn't have that issue.
UPDATED due to install issues with actual Android Recovery. Redownload.
Download Initial Version (Alpha Minus-One-Point-One): https://www.dropbox.com/s/wcs2mra8aedj1hf/Froyo-2.2.1-Qcom-Kang-Touchpad-a0.1-incl-gapps.zip
Download Second Version (Alpha 0.2): https://www.dropbox.com/s/t1cptjj5i02epas/Froyo-2.2.1-Qcom-Kang-Touchpad-a0.2-incl-gapps.zip
^^^
I wanted to try froyo soo bad when I heard about those dumps last year (I think) lol. I still want to try it.
Now, if I read correctly, I can flash this from TWRP/CWM right?
jacobas92 said:
^^^
I wanted to try this soo bad when I heard about it last year lol. I still want to try it.
Now, if I read correctly, I can flash this from TWRP/CWM right?
Click to expand...
Click to collapse
It should work from that. I only tried with my SmackMeInstaller from the last page. That said... MAKE A NANDROID, because it WILL delete your current Android install, and if anything goes wrong (or even if it works but you see a CWM/TWRP error/warning), tell me and I'll fix it.
castrwilliam said:
It should work from that. I only tried with my SmackMeInstaller from the last page. That said... MAKE A NANDROID, because it WILL delete your current Android install, and if anything goes wrong (or even if it works but you see a CWM/TWRP error/warning), tell me and I'll fix it.
Click to expand...
Click to collapse
Ok, thanks!
ALL CORES WORKING FULLY WORKING 3 g935 KERNELS TO CHOOSE FROM LOOK BELOW
THAT THIS IS FULLY WORKING AND UPDATED TO NETHUNTER 3.1.0
ZIP MODDED FOR S7 EDGE FOR 1440X2560 WITH NEWEST BUSYBOX AND SUPERSU
WARNING: This is completely untested, highly theoretical, and possibly dangerous. Flash at your own risk.
Back up your original boot image in TWRP before attempting to flash this! If it doesn't boot, you can simply restore your previous boot image.
This is Kali NetHunter 3.1.0 for the Galaxy S7 Edge.
If you don't know what Kali NetHunter is, well, it's the entire Kali Linux operating system in a chroot on your phone, plus a bunch of awesome apps for executing exploits, fixing things, doing cool things. It goes on, I suppose.
I'm gonna be honest guys, I'm not a security person. When it comes to security, I'm more of a Paul Blart.
What I do know though, is that there is apt-get, and apt-get is life.
Find much more information here: https://github.com/offensive-securit...nethunter/wiki
The answer to all your questions, generally the answer is YES, IT CAN DO THAT.
Most ROMs should be supported, as our installer uses a dynamic patching method on your current boot image!
The updater zip will add a few files to your /system partition, and install all of the NetHunter apps to your /data partition.
The chroot is located in /data/local, so you don't have to worry about your system partition being full. It's full read/write capable.
Understand that the zip will replace your current kernel with a completely different one.
This is necessary because most stock or custom kernels don't provide the drivers needed to operate most of Kali NetHunter's features.
DOWNLOAD
https://mega.nz/#!3QIHzQ5b!x77Wad9OUAyQqAtJJucak3C_3twfFFwZqJ77Wt1j6-c
Current version: 3.1.0 (beta, 07/03/2016)
Please be careful to download the right version based on this table:
SM-G935F, SM-G935FD, SM-G935X, SM-G935W8: hero2lte
SM-G930F, SM-G930FD, SM-G930X, SM-G930W8: See proper forum.
All others be sad.
Download is available at: kernel below
Grab the 700 MB+ zip.
Kernel-only zip is for upgrading your kernel, or just using the NetHunter kernel by itself. (yes, you can do that!)
BEFORE INSTALLING
Currently, Samsung encryption is not supported by TWRP, so we have to disable it.
Sorry security freaks! There's a lot of irony here, isn't there?
The Kali chroot and apps are installed on your data partition (in /data/local for chroot). To initialize the chroot and install Kali Linux, you need to start the Kali NetHunter app.
The NetHunter installer will automatically install SuperSU (2.76) in system mode, which I consider to be more stable. Since NetHunter already modifies your system partition, there is no need to use systemless SuperSU anyways.
Also included is an extra Busybox that gives you full large file support and some extra applets.
FULL FRESH INSTALL STEPS
Install Team Win Recovery Project to your recovery partition.
If your data partition doesn't mount in TWRP:
Go to [Wipe] -> [Format Data] (not advanced wipe) -> type "yes".
WARNING: This will wipe your internal storage, disable encryption, and factory reset your phone!
Once your data partition is formatted, go to [Reboot] -> [Recovery].
Download dm-verity and force encryption disabler.
Without exiting TWRP, transfer no-verity-opt-encrypt.zip to your device over MTP* and flash it using [Install] in TWRP.
If you wiped your data partition in step 2:
Go to [Reboot] -> [System].
Set up your phone by following the Android setup wizard.
Once it's set up, reboot back into recovery.
Download Kali NetHunter.
Without exiting TWRP, transfer the NetHunter installer zip to your device over MTP* and flash it using [Install] in TWRP.
Go to [Reboot] -> [System].
Wait 5-15 minutes for your device to finish setting itself up.
Open the NetHunter app to initialize the environment
You're done!
* MTP, known as Media Transfer Protocol, is the same way you transfer files from your PC to your device when booted into system.
UPDATING TO A NEWER BUILD
Going from 3.0.0 and up, all you have to do is flash the new build in recovery and wipe dalvik cache.
UPDATING YOUR ROM
To get all your NetHunter and SuperSU functions back after flashing a new ROM, just flash the ~700+ MB update-nethunter-* zip again.
THE KERNEL
The NetHunter kernel for the Galaxy S7 Edge is based on Samsung's OSRC G935FXXU1APF2 kernel sources.
It has the following changes:
F2FS updated to Jaeguek Kim's latest kernel.org f2fs-stable sources
F2FS formatted system, data, and cache partition support
UKSM Ultra Kernel Same-page Merging KSM support
Updated and enabled USB (OTG) Atheros, Ralink, and Realtek WiFi drivers
Simple IO (SIO) scheduler as default IO scheduler
USB HID Gadget keyboard support
mac80211 packet injection support
DriveDroid compatibility
Additional drivers built in for the full Kali NetHunter experience
Data partition encryption changed from forced to optional (disabled during installation)
Disables dm-verity and allows you to boot modified system partitions
RAN INTO AN ISSUE OR BUG?
In order for me to help you, you have to at minimum reply with:
The link to the exact zip you downloaded
Your device model (it better not be something other than G935F, dangit!)
The name of the ROM you're flashing it on
The version and build date of the ROM you're flashing it on
A complete description of your problem
Optional: An audio recording of you reading this entire post
If your issue is with a specific app, it might be better to contact the developer of that app.
If your issue is during the installation (ex. flashing the NetHunter zip), then please collect a TWRP recovery.log for me.
If you found a problem and were able to fix it, and no one's mentioned it in the thread already, it would be kind to state the issue and your fix for others to make use of as well.
You can join me and the other NetHunter developers on IRC at the #nethunter room on freenode to more handily diagnose problems together.
I apologize, but I can't do house calls at this time.
KNOWN ISSUES
USB Keyboard - The keyboard is unusable when using Google Keyboard as your input method. Switch to Hacker's Keyboard.
NetHunter Terminal - It doesn't automatically set the columns/rows, so you need to type "resize" sometimes to fix the display.
DEVELOPMENT
You can see branch of the installer development here:
Alternatively, the main branch is also available on the Offensive Security GitHub: https://github.com/offensive-security/kali-nethunter
Kernel source: https://github.com/BoostFlash/nethunter_kernel_herolte
DISCLAIMER
I am not affiliated with Offensive Security. They seem like cool guys though.
I'm not even a novice when it comes to security and penetration. I'm just a simple system administrator with a passion for breaking Android.
Please restrain yourselves from asking me security related questions.
XDAevDB Information
Kali NetHunter for the Galaxy S7 Edge, Kernel for the Samsung Galaxy S7 Edge
Contributors
jcadduono, The Kali NetHunter team ,ohap
Source Code: https://github.com/BoostFlash/SuperKernel
https://github.com/BoostFlash/nethunter_kernel_herolte
Kernel Special Features:
Version Information
Status: Beta
Current Beta Version: 3.1.0
Beta Release Date: 2016-07-03
new links :
jcadduono nethunter patcher with new superkernel plus nethunter patches , make sure your on a kernel thats fully working before flashing this as it only patches ramdisk
https://mega.nz/#!LR4BgbyJ!vezMFaob3mIETH__mVMd9WjCXwLCFvzouObX7f72wmY
my kernel compiles from superkernels source with makeshift ramdisk + nethunter patches
https://mega.nz/#!rEQDBD4B!v_4JRruBe6exR-O40ax5DECJA7nLikSpbIbEDI7YVyM
superskernel with his modded ramdisk plus nethunterpatches added by me synapse support <--best one
https://mega.nz/#!qcYnBAoT!KSHvaX7EtJLDeQq0kPmZHK4N200cnyirHP4X7-jUavg
Kali nethunter
https://telegram.me/kalinethunter
must thanks and credit to:
lucu/Tkkg1994 superkernel dev
jesse for fp patch
jcadduono for his help with github and patcher scripts
webhost420/hayden for brainstorming with me
So I'm good to just flash this with TWRP over the current one I'm using?
CPU core 6 and 7 still stopped as with previously used kernel.
Kali still working, everything seems the same so far. Will see with time.
umKthxbye said:
So I'm good to just flash this with TWRP over the current one I'm using?
CPU core 6 and 7 still stopped as with previously used kernel.
Kali still working, everything seems the same so far. Will see with time.
Click to expand...
Click to collapse
ya i cant seem to get them to work as i dont know , this is compiled from a old source , me and a other are trying to fix it no , BUT this is way faster then ael kernel , and im no way a professional kernel dev so this is my first shot at kernel i compiled my self which was a pain
ohap said:
ya i cant seem to get them to work as i dont know , this is compiled from a old source , me and a other are trying to fix it no , BUT this is way faster then ael kernel , and im no way a professional kernel dev so this is my first shot at kernel i compiled my self which was a pain
Click to expand...
Click to collapse
Are you using that AEL kernel as a base or the stock kernel?
Since the stock kernel or even Jesse kernel have all cpus active maybe use those and add support for the USB wifi adapters.
I'm also working on this with stock kernel but fixing compiling errors.
umKthxbye said:
Are you using that AEL kernel as a base or the stock kernel?
Since the stock kernel or even Jesse kernel have all cpus active maybe use those and add support for the USB wifi adapters.
I'm also working on this with stock kernel but fixing compiling errors.
Click to expand...
Click to collapse
No not using ael anything as there $%&$ , message me on telegram we have a group working on it . My name on there is Boostflash
ohap said:
No not using ael anything as there $%&$ , message me on telegram we have a group working on it . My name on there is Boostflash
Click to expand...
Click to collapse
Just post when there is a new one to test, the current one seems stable other then the 6 core problem.
Fixed the cores being off line they all come online at boot , but now facing maybe CPUFreq driver initialization failed ?? Which causes now all cores to go offline and stay off after a few seconds . And makes kernel unusable
ohap said:
Fixed the cores being off line they all come online at boot , but now facing maybe CPUFreq driver initialization failed ?? Which causes now all cores to go offline and stay off after a few seconds . And makes kernel unusable
Click to expand...
Click to collapse
Did you upload it for testing? Or not reliable enough to bother?
umKthxbye said:
Did you upload it for testing? Or not reliable enough to bother?
Click to expand...
Click to collapse
I thought the unusable kernel term would explain that , its not good for upload if you want to join group on telegram you can test if you want
good news jcadduono back working on this again , he first trying to fix his patcher zip , i told him how i got mine working but its different then what he doing , so once he gets that fix we see if its a issuse with original Samsung source or nethunter patches the core issues
The best way to use terminal in this since Hacker keyboard has so much **** on it you can't type properly.
1. Open Nethunter, Menu, Kali services, add check mark to SSH start at boot, and check it to turn on.
2. Go into Kali terminal(last time you'll need to use this crap) type; passwd "whateveryouwant", this will be used for your user in the next step.
3. Download Juice SSH and add user root with password what ever you made.
4. Create a connection using IP 127.0.0.1 (this is the local loopback address) leave port blank, it will use 22 by default.
5. Connect with one click and enjoy using any keyboard with bonus juice addon keys for terminal use.
JuiceSSH also give you a nifty little extra keyboard ontop of the one you use with the tab function, making bash autofill work.
I use swiftkey keyboard and have been using JuiceSSH for years to access my CentOS 7 servers and its been a dream to work with.
The one packaged with Nethunter is just terrible, and most of the other one found on app store are terrible as well.
Also, Ohap, you don't have to reboot after formatting the /data, just go back and clear the dalvik, cashe, etc, and other stuff like the guide I posted in your other thread.
Feel free to use the one I posted in the last thread.
Great work so far. The last kernel is still going strong, with no random reboot or other problem other the the 2 cores we all know about.
umKthxbye said:
The best way to use terminal in this since Hacker keyboard has so much **** on it you can't type properly.
1. Open Nethunter, Menu, Kali services, add check mark to SSH start at boot, and check it to turn on.
2. Go into Kali terminal(last time you'll need to use this crap) type; passwd "whateveryouwant", this will be used for your user in the next step.
3. Download Juice SSH and add user root with password what ever you made.
4. Create a connection using IP 127.0.0.1 (this is the local loopback address) leave port blank, it will use 22 by default.
5. Connect with one click and enjoy using any keyboard with bonus juice addon keys for terminal use.
JuiceSSH also give you a nifty little extra keyboard ontop of the one you use with the tab function, making bash autofill work.
I use swiftkey keyboard and have been using JuiceSSH for years to access my CentOS 7 servers and its been a dream to work with.
The one packaged with Nethunter is just terrible, and most of the other one found on app store are terrible as well.
Also, Ohap, you don't have to reboot after formatting the /data, just go back and clear the dalvik, cashe, etc, and other stuff like the guide I posted in your other thread.
Feel free to use the one I posted in the last thread.
Great work so far. The last kernel is still going strong, with no random reboot or other problem other the the 2 cores we all know about.
Click to expand...
Click to collapse
This was a poorly edited post for newbies , i know hacker keyboard sucks , and you dont have to wipe ect .. thanks for support & feedback
awsome update coming i have fixed the core issue !!! with the power of superkernel "luca" source ,plus nethunter patches, and a make shift ramdisk !!!! i got it to boot and all cores online plus all the goodys of superkernel !!
Now Need to just include patch for hid keyboards now I do that latter
umKthxbye said:
The best way to use terminal in this since Hacker keyboard has so much **** on it you can't type properly.
1. Open Nethunter, Menu, Kali services, add check mark to SSH start at boot, and check it to turn on.
2. Go into Kali terminal(last time you'll need to use this crap) type; passwd "whateveryouwant", this will be used for your user in the next step.
3. Download Juice SSH and add user root with password what ever you made.
4. Create a connection using IP 127.0.0.1 (this is the local loopback address) leave port blank, it will use 22 by default.
5. Connect with one click and enjoy using any keyboard with bonus juice addon keys for terminal use.
JuiceSSH also give you a nifty little extra keyboard ontop of the one you use with the tab function, making bash autofill work.
I use swiftkey keyboard and have been using JuiceSSH for years to access my CentOS 7 servers and its been a dream to work with.
The one packaged with Nethunter is just terrible, and most of the other one found on app store are terrible as well.
Click to expand...
Click to collapse
Hacker's Keyboard is there for use with USB keyboard app and editing configs and stuff in the NetHunter app.
As for terminal in NetHunter...
As you said, I recommend JuiceSSH as well. You can create a Local Terminal profile to get into Android console, then type:
Code:
su -c bootkali_login
You can also purchase JuiceSSH premium features and create a snippet that does all of that for you!
This way, you don't need to use SSH and waste battery!
ohap said:
awsome update coming i have fixed the core issue !!! with the power of superkernel "luca" source ,plus nethunter patches, and a make shift ramdisk !!!! i got it to boot and all cores online plus all the goodys of superkernel !!
Now Need to just include patch for hid keyboards now I do that latter
Click to expand...
Click to collapse
fixed hid
umKthxbye said:
The best way to use terminal in this since Hacker keyboard has so much **** on it you can't type properly.
1. Open Nethunter, Menu, Kali services, add check mark to SSH start at boot, and check it to turn on.
2. Go into Kali terminal(last time you'll need to use this crap) type; passwd "whateveryouwant", this will be used for your user in the next step.
3. Download Juice SSH and add user root with password what ever you made.
4. Create a connection using IP 127.0.0.1 (this is the local loopback address) leave port blank, it will use 22 by default.
5. Connect with one click and enjoy using any keyboard with bonus juice addon keys for terminal use.
JuiceSSH also give you a nifty little extra keyboard ontop of the one you use with the tab function, making bash autofill work.
I use swiftkey keyboard and have been using JuiceSSH for years to access my CentOS 7 servers and its been a dream to work with.
The one packaged with Nethunter is just terrible, and most of the other one found on app store are terrible as well.
Also, Ohap, you don't have to reboot after formatting the /data, just go back and clear the dalvik, cashe, etc, and other stuff like the guide I posted in your other thread.
Feel free to use the one I posted in the last thread.
Great work so far. The last kernel is still going strong, with no random reboot or other problem other the the 2 cores we all know about.
Click to expand...
Click to collapse
New kernel out built from superkernel check it out . Recommend the super ramdisk ver I posted
Yes I saw. I'm using it already. I like seeing the 8 cores back. Time will tell how stable it is. Good work guys.
is it work with superman rom?
please tell me how to flash
mdrobiulhasan said:
is it work with superman rom?
please tell me how to flash
Click to expand...
Click to collapse
How to flash is in first post . It should work with any rom with system root not systemless
Anyone having issues with call forwarding? Since I flashed King rom my call forwarding has been messed up, even going back to stock. Not sure if it's cuz of root, rom, or kernels.
Still running stable btw.
Can someone help me compile an android 9.0 kernel that will work on raspberry pi 2. I somehow managed to compile the system.img and ramdisk.img from the android source but i am unable to make the kernel run with it. Or may the the kernel is compiled correct and the system image has error.
When i booted up the system i cant get anything on the screen and also there is no activity led blinking.
then i tried a lollipop 5.1 kernel for raspberry pi 2 it atleast gave an activity led blink and the usual rainbow wallpaper that we get while booting the rpi. So i am assuming that the kernel is the problem. As there are not many who work on rpi2 and the last android support was marshmallow i assume because the sources are not updated for rpi2 it isn't booting.
I did the changes in device_brcm_rpi2 and hardware_rpi to work with android pie. After which i was able to compile the system image successfully.
but i didn't do any changes to kernel_rpi repo.
sources that i used:
https://github.com/peyo-hd/device_brcm_rpi2
https://github.com/peyo-hd/device_brcm_rpi3
https://github.com/peyo-hd/local_manifests
https://github.com/peyo-hd/hardware_rpi/tree/pie
https://github.com/peyo-hd/kernel_rpi/tree/arpi-4.19.y
https://github.com/peyo-hd/RpLauncher
Working ebuild for installing postmarketos on the Amazon Fire 7 HD (2017) codename Austin
Amazon Fire 7 (2017) postmarketOS Armv7l Mediatek MT8127 Mali-450MP4 600x1024 display 1GB RAM Linux 3.10.54
What seems to work:
Boot Touch screen Battery percentage Usb internet OTG usb Wayland, Mate, Xfce4, Lxde, Sxmo, i3wm
Does NOT work:
Wifi & Bluetooth (no drivers) GPU acceleration (drivers do not work) Audio Sleep and fully turning off the display Screen rotation Wifi adapter does not work even with drivers and kernel support, mobo support issue(?) FDE Cameras You tell me
Special options: *Must be flashed to USERDATA partition as system partition is too small
msm-fb-refresher packaged is added to the depends to make the screen refresh. After flashing the device must be booted into recovery once. From the recovery it is to be powered off and booted and then as normal. This is because the device depends on the AMONET exploit which is applied by twrp after every flash.
Flashing Instructions
This assumes that you already have linux installed and the bootloader on the tablet is unlocked. Don't worry if it looks complicated. If you are unsure of something ask on the postmarketos matrix or leave a comment for help.
Install pmbootstrap as stated in the postmarketos wiki, does not matter which options or device you pick.
Once that is done download and drag the two folders in the git repo into "/home/YOURUSER/.local/var/pmbootstrap/cache_git/pmaports/device/testing/" also displayed as "~/.local/var/pmbootstrap/cache_git/pmaports/device/testing".
Run pmbootstrap init and select amazon as manufacture and austin as the device, mate, lxde, xfde, are confirmed working.
Run pmbootstrap install
Boot into twrp and wipe all partitions including data
Boot into the hacked bootloader from the twrp options
Run pmbootstrap pmbootstrap flasher flash_rootfs --partition userdata (system partion is too small to flash!) and once it is done flashing run pmbootstrap flasher flash_kernel
Unplug the device, wait 10 seconds and then hold the power button. Once it is powered on YOU MUST boot it into twrp at least once as it needs to restore the AMONET exploit, until you do that the device will not boot.
Issues
If something does not work such as the display rotated wrong or device not booting just comment or open an issue, I changed the rotation of the display in the kernel options to horizontal but i did not test the effects as I already have android with books on it.
Reinstall android/lineage
Simple as cake, just boot into twrp wipe all partions(some will fail), you may need to resize and fix until it starts working. You just need the system and data partitions to be reformated to ext4 even if they already are. Then just flash the lineageos zip file and reboot the device normally(amonet is fine)
GitHub - GjergjiFloychi/amazon-austin-pmaports: Working ebuild for installing postmarketos on the Amazon Fire 7 HD (2017) codename Austin
Working ebuild for installing postmarketos on the Amazon Fire 7 HD (2017) codename Austin - GitHub - GjergjiFloychi/amazon-austin-pmaports: Working ebuild for installing postmarketos on the Amazon ...
github.com
This looks promising, nice job. I will try installing it on my Austin during the next days.
Rortiz2 said:
This looks promising, nice job. I will try installing it on my Austin during the next days.
Click to expand...
Click to collapse
Good luck. Tell me if the display works if you do install it. Thanks
hexdump0815 cleaned up the config file, use his fork if you are going to install.
Is it wifi working? It'll awesome
Baonks81 said:
Is it wifi working? It'll awesome
Click to expand...
Click to collapse
Unfortunately the drivers for this SOC are nonexistent so nothing works. WIfi and hdmi adapters don't work, but OTG does. Hexdump made a Debian and Ubuntu image for this tablet, it is great but the tablet is mostly useless without WiFi and GPU support. You can also flash the main image to the userdata partition instead of using an SD Card, but if I remember correctly the rootfs won't auto extend. It would have been great to use this as a linux tablet, however this SOC is uncommon and is not supported by any Linux maintainer. https://github.com/hexdump0815/imagebuilder/releases/tag/211101-02
Fandroid Tech said:
Unfortunately the drivers for this SOC are nonexistent so nothing works. WIfi and hdmi adapters don't work, but OTG does. Hexdump made a Debian and Ubuntu image for this tablet, it is great but the tablet is mostly useless without WiFi and GPU support. You can also flash the main image to the userdata partition instead of using an SD Card, but if I remember correctly the rootfs won't auto extend. It would have been great to use this as a linux tablet, however this SOC is uncommon and is not supported by any Linux maintainer. https://github.com/hexdump0815/imagebuilder/releases/tag/211101-02
Click to expand...
Click to collapse
Thanks for new information. I'll searching around
I think we can find firmware it out on /dev/mmcblk---
Baonks81 said:
Thanks for new information. I'll searching around
I think we can find firmware it out on /dev/mmcblk---
Click to expand...
Click to collapse
I looked at the firmware dump on github, it is all proprietary and seems to be compatible only on android. The closest I got to getting working wifi was moving the original libs and networkmanager bin to linux however it only showed wifi working for a few seconds without detecting anything.
I'm working on this device right now. I just downloaded the repository below, and I will make a pull/merge request upstream soon.
Fandroid Tech said:
GitHub - GjergjiFloychi/amazon-austin-pmaports: Working ebuild for installing postmarketos on the Amazon Fire 7 HD (2017) codename Austin
Working ebuild for installing postmarketos on the Amazon Fire 7 HD (2017) codename Austin - GitHub - GjergjiFloychi/amazon-austin-pmaports: Working ebuild for installing postmarketos on the Amazon ...
github.com
Click to expand...
Click to collapse
I have my own fork of the pmaports repository at https://gitlab.com/Worldblender/pmaports, where I will push your files (eventually with my changes) to. Maybe we can work together on getting this tablet supported upstream, if you still want to (anything else that isn't working, like the Wi-Fi/Bluetooth, will have to come later).
UPDATE: Well, I'm going to use https://github.com/hexdump0815/pmaports-amazon for the config now, didn't notice it the first time around. I also noticethat it's possible to get Wi-Fi working with https://github.com/hexdump0815/imagebuilder-firmware/blob/main/tablet_amazon_austin-firmware.tar.gz, that I will try out with my builds soon.
From https://github.com/hexdump0815/imagebuilder/tree/main/systems/tablet_amazon_austin:
wifi seems to work by using the android firmware and tools in a minimal android bionic chroot env
wifi can be stated via /scripts/start-wifi.sh
uncomment the start of this script in /etc/rc.local in case wifi should be enabled by default
wifi support was added in february 2022, so all images from before do not have it yet but it can be added easily afterwards
Click to expand...
Click to collapse
Worldblender said:
I'm working on this device right now. I just downloaded the repository below, and I will make a pull/merge request upstream soon.
I have my own fork of the pmaports repository at https://gitlab.com/Worldblender/pmaports, where I will push your files (eventually with my changes) to. Maybe we can work together on getting this tablet supported upstream, if you still want to (anything else that isn't working, like the Wi-Fi/Bluetooth, will have to come later).
UPDATE: Well, I'm going to use https://github.com/hexdump0815/pmaports-amazon for the config now, didn't notice it the first time around. I also noticethat it's possible to get Wi-Fi working with https://github.com/hexdump0815/imagebuilder-firmware/blob/main/tablet_amazon_austin-firmware.tar.gz, that I will try out with my builds soon.
From https://github.com/hexdump0815/imagebuilder/tree/main/systems/tablet_amazon_austin:
Click to expand...
Click to collapse
You could package the wifi hack into an Alpine Linux for firmware package if you want. Debian 11 runs really well, to bad we can't get everything working.
Fandroid Tech said:
You could package the wifi hack into an Alpine Linux for firmware package if you want. Debian 11 runs really well, to bad we can't get everything working.
Click to expand...
Click to collapse
Will work on that soon. I just got a build to boot today, and basic functionality seems to be working. I'm going to try a different distro for accessing more functionality (likely Ubuntu 20.04 or 22.04) I just opened up a merge request at https://gitlab.com/postmarketOS/pmaports/-/merge_requests/3251 for the progress on upstreaming.
I'm thinking about using the exact same kernel that the LineageOS image uses:
https://github.com/cm14-mt8127/device_amazon_mt8127-common
https://github.com/cm14-mt8127/kernel_amazon_mt8127-common
This kernel has been updated to 3.10.108, and it's the last one for the 3.10 branch. I'm going to try creating a new build using this kernel, and see how it goes.
Worldblender said:
I'm thinking about using the exact same kernel that the LineageOS image uses:
https://github.com/cm14-mt8127/device_amazon_mt8127-common
https://github.com/cm14-mt8127/kernel_amazon_mt8127-common
This kernel has been updated to 3.10.108, and it's the last one for the 3.10 branch. I'm going to try creating a new build using this kernel, and see how it goes.
UPDATE: Three patches would not apply successfully for this kernel:
fix-host-card-inserted.patch
silence-power-logspam.patch
silence-thermal-logspam.patch
After building without these patches, the kernel boots, but it stays stuck without being able to process further, with some kernel messages displayed. I wonder what I should do to get this kernel working, or if this one shouldn't be used.
Click to expand...
Click to collapse
Use any kernel you want. It literally does not matter as it cannot be mainliner in the future anyways. It makes no difference what you use.
Fandroid Tech said:
Use any kernel you want. It literally does not matter as it cannot be mainliner in the future anyways. It makes no difference what you use.
Click to expand...
Click to collapse
Here's my results after building and boot it:
There are some kernel messages that pop up, and the splash screen never appears. It doesn't matter whether there is a microSD card inserted or not; there seems to be too many changes made to it from 3.10.54 to 3.10.108, along with additional changes that are designed more for Android/LineageOS usage. Finding every one of them is too much work for me.
Three patches would not apply successfully for this kernel:
fix-host-card-inserted.patch (will apply successfully once the entry for line 271 is removed)
silence-power-logspam.patch
silence-thermal-logspam.patch
Again, after building without these patches, the kernel boots, but it stays stuck without being able to proceed further, with some kernel messages displayed. I tried building without any of the patches shipped, but the end result is still the same. I need some help as to what what I should do to get this kernel working, or else I will go back to the 3.10.54 kernel that I know is actually booting to the splash screen. Here, I don't care whether I use a mainline kernel here, since I know the SOC is not supported by mainline. I simply care that I can get a newer kernel version working (from 3.10.54 to 3.10.108), unless there's too many changes for me to go through.
Worldblender said:
Here's my results after building and boot it:
There are some kernel messages that pop up, and the splash screen never appears. It doesn't matter whether there is a microSD card inserted or not; there seems to be too many changes made to it from 3.10.54 to 3.10.108, along with additional changes that are designed more for Android/LineageOS usage. Finding every one of them is too much work for me.
Three patches would not apply successfully for this kernel:
fix-host-card-inserted.patch (will apply successfully once the entry for line 271 is removed)
silence-power-logspam.patch
silence-thermal-logspam.patch
Again, after building without these patches, the kernel boots, but it stays stuck without being able to proceed further, with some kernel messages displayed. I tried building without any of the patches shipped, but the end result is still the same. I need some help as to what what I should do to get this kernel working, or else I will go back to the 3.10.54 kernel that I know is actually booting to the splash screen. Here, I don't care whether I use a mainline kernel here, since I know the SOC is not supported by mainline. I simply care that I can get a newer kernel version working (from 3.10.54 to 3.10.108), unless there's too many changes for me to go through.
Click to expand...
Click to collapse
Just use the stock 3.10.54 kernel. Both versions have long since been EOL. It does not matter what is used as functionality will still the same, both now and any future development. I would not bother upgrading the kernel to 3.10.108. Hexdump told me a while back that somebody else maintaining a similar soc on the mainline branch told him that mainlining the device is almost impossible due to some proprietary components by Amazon. I am not entirely sure as to the validity of this claim but I think that it is not worth the effort of upgrading the kernel of this device. Check this page for more info, I found it to be very helpful to my port. https://wiki.postmarketos.org/wiki/Amazon_Fire_7_2015_(amazon-ford)
[waits eagerly nonetheless]
This is a solid old device in a lot of ways. I'd love to see it supported by PMOS.