The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)


Adaptations/libhybris/Manta

From Mer Wiki
< Adaptations | libhybris(Difference between revisions)
Jump to: navigation, search
m (Installing)
(Changelog)
 
(8 intermediate revisions by one user not shown)
Line 1: Line 1:
=== Installing ===
 
 
[https://drive.google.com/file/d/1W3k2PzWKQU_-1qbhho_8MespNzr5zBlD/view?usp=sharing Sailfish OS 2.1.3.7 rootfs] - I did make this, full credit to me for porting the rootfs (well... also all the help on the IRC <3)
 
 
[https://drive.google.com/file/d/1chCW2eRccILmS9CYDqR4g1XMf-WZpE0N/view?usp=sharing Lineage OS 14.1 Base] - I didn't make this, no credit to me for the base
 
 
=== What works an doesn't work ===
 
 
PSA: if you are excited to install this on Nexus 10, don't be, it barely works at the moment. I am hard at work trying to figure this out and whinging on the IRC, but if you want to give it a shot feel free! see How to Build at the bottom!
 
 
Works:
 
 
Display
 
 
Touch
 
 
Haptic Feedback
 
 
Wifi Connection
 
 
Ambient Light Sensor
 
 
Buttons (I was able to take screenshots, refer to the XDA thread for them)
 
 
 
Problems:
 
 
Rotation is off by 90 degrees
 
 
Gralloc and hwcomposer issues so setup wizard fails and none of the apps work
 
 
Bluetooth doesn't work
 
 
Sound most likely won't work since Pulseaudio failed in the logs
 
 
RTC Alarms are untested but most likely do not work
 
 
Ambiances don't take up the entire display
 
 
Jolla Startup wizard pre user session doesn't take up entire display
 
 
 
=== XDA thread ===
 
=== XDA thread ===
  
Line 45: Line 4:
  
 
=== Changelog ===
 
=== Changelog ===
Nothing really special has happened since the initial (not working) build. Mostly just me trying new things out.
 
 
 
alpha0 - initial build
 
alpha0 - initial build
  
alpha0.2 - fixed touch screen (evdev touch = 2 not 0)
+
alpha0.1 - added rotation fix, defined MALI_QUIRKS, applied a ton of random patches that don't seem to have done anything
  
alpha0.3 - oom verify and Mali Quirks added to droid-configs
+
alpha0.1.1 - built gst-droid, mp3 files play but still no audio
  
alpha 0.4 - rebuild with dev-tools and minimer
+
alpha0.1.2 - build SDSVideoFix branch of droidmedia, videos can now play, but audio is still broken.
 
+
alpha 0.5 - changed icon scale from 1.0 to 1.25 (300/245=1.22), also changed EGL_PLATFORM to fbdev since hwcomposer module API is 1
+
 
+
 
+
Once I get a build with working apps and setupwizard I will switch from alpha0 to alpha1! Very exciting to think about.
+
  
 
=== How to build ===
 
=== How to build ===
  
There are multiple tweaks required to get this working and up and running, first of all refer to the hadk! I will be basing this off of my experiences and the things I needed to fix, the instructions will not be very good, they will mostly just assume you have the hadk open in another tab and are following along while occasionally checking these instructions. Not really instructions, more like advice and tips & tricks.
+
Coming soon! I recently switched bases to LOS 14.1 and everything magically worked.
 
+
NOTE: I tried rebuilding and it just refuses to boot. I don't know what is wrong with it or what black magic I did before to get it to boot but no matter how much I mess with the fstabs and build everything it just won't work. I wish whoever takes this up good luck and god speed.
+
 
+
1. First of all you really can't go wrong with sources! Here are all of mine!
+
 
+
[https://github.com/GalaxyNinja66 My Github] I only have manta stuff but when I add grouper stuff I will edit this
+
 
+
remember to make sure your branch is correct in your local_manifest! When you copy and paste from hadk you will be tempted to leave the branch as stable/cm-11.0 but my branches are either hybris-11.0 or just master. You should see the branch on the site in a little box, just replace stable/cm-11.0 with whatever is in that box. You may also get issues with $DEVICE and stuff being undefined in platform sdk, just add the following lines to ~/.mersdk.profile:
+
 
+
export DEVICE="manta"
+
 
+
export VENDOR="samsung"
+
 
+
export PORT_ARCH="armv7hl"
+
 
+
export ANDROID_ROOT="/home/(your username)/hadk"
+
 
+
2. repo init and repo sync source code can be much smaller! instead of using 25GB of HDD space, use around 7 and cut sync times in half!
+
add --depth to repo init | and -c to repo sync ; with these flags you can't fail!
+
 
+
3. When building kernel you will most likely get a mount point error, this is because $HYBRIS_FSTABS points to device/*/manta where there are two fstab files. replace /hybris/android.mk with my modified one that fixes this by pointing it to /device/*/manta/fstab.manta
+
 
+
[https://github.com/GalaxyNinja66/hybris-boot/blob/patch-2/Android.mk fstab fix]
+
 
+
4. Now you will need to add fixup mountpoints, you can either do as it says and run the command (I forgot it) or you can just use mine
+
 
+
[https://github.com/GalaxyNinja66/hybris-boot/blob/patch-1/fixup-mountpoints manta mountpoints]
+
 
+
5. Kernel should have no errors accept for an SELINUX config error, which is unrelated to the gralloc issues. audit is set to N so this should be no problem.
+
 
+
6. When setting up all your rpm stuff and droid configs, you will most likely be using my repos. The issue with this is that it for some reason refuses to also sync the actual mer-hybris stuff that is symlinked in the repo. You will have to "cd" into each folder and run a command.
+
 
+
cd into each droid-hal directories (rpm, hybris/droid-configs, hybris/droid-hal-version-manta) and run: git submodule update --init
+
 
+
You should be all good there, if not, just delete the rpm directories, remove my rpm droid-hal repos from your local_manifest, and just manually follow all the instructions on the hadk and manually add all my commits (there aren't many)
+
 
+
7. build_packages.sh may fail because of ngfd-droid-vibrator or native-vibrator. This is an annoying bug that I have failed to find a good fix for. Removing the line in the build_packages.sh script that builds this package, then deleting all traces of it in your $ANDROID_ROOT directory, and finally opening hybris/droid-configs/patterns/jolla-hw-adaptation-manta.yaml and removing the ngfd-*-vibrator line helps. It may error out again, if so, keep trying. If you get fed up and angry go to #sailfishos-porters and whine about it. This is a known problem.
+
 
+
8. Yay you have a build and you flashed it and now the lockscreen doesn't work and you can't get passed!
+
 
+
telnet 192.168.2.15 2323
+
 
+
passwd nemo
+
 
+
(set a password)
+
 
+
exit
+
 
+
ssh nemo@192.168.2.15
+
 
+
(enter the password you just made in telnet)
+
 
+
touch /home/nemo/.jolla-startupwizard-done
+
 
+
touch /home/nemo/.jolla-startupwizard-sfos2-tutorial
+
 
+
touch /home/nemo/.jolla-startupwizard-usersession-done
+
 
+
Now you should be able to unlock and do... nothing. Everything will break and fail to start up and when you reboot the UI will occasionally glitch out horribly. Welcome to the debug party, its time to explore the unfixed. Good luck.
+

Latest revision as of 23:24, 14 March 2018

[edit] XDA thread

Sailfish OS on manta XDA thread

[edit] Changelog

alpha0 - initial build

alpha0.1 - added rotation fix, defined MALI_QUIRKS, applied a ton of random patches that don't seem to have done anything

alpha0.1.1 - built gst-droid, mp3 files play but still no audio

alpha0.1.2 - build SDSVideoFix branch of droidmedia, videos can now play, but audio is still broken.

[edit] How to build

Coming soon! I recently switched bases to LOS 14.1 and everything magically worked.

Personal tools