Ubuntu Touch for the HP Touchpad
How to compile:
Make a build directory:
mkdir UTA (or whatever name you choose )
cd UTA (or the name you chose)
mkdir .repo/local_manifests
To initialize your local repository using the Ubuntu phablet manifest, use commands like these:
phablet-dev-bootstrap [target_directory that you chose]
curl -L -o .repo/local_manifests/roomservice.xml -O -L http://raw.github.com/jshafer817/UbuntuTouch/master/roomservice.xml
Then to sync up:
phablet-dev-bootstrap [target_directory that you chose] -c
cd external/tinyalsa
git pull http://review.cyanogenmod.org/CyanogenMod/android_external_tinyalsa refs/changes/46/33646/1
cd ../..
cd system/extras/mkimage
gcc mkimage.c -o mkimage -lz
cd ../../..
mkdir -p out/host/linux-x86/bin
cp system/extras/mkimage/mkimage out/host/linux-x86/bin
gedit build/core/Makefile around line 1231, remove this $(INSTALLED_BOOTIMAGE_TARGET_ANDROID) \ (save the file, close)
gedit build/core/main.mk add this to were the other device entires are: device/hp \
cd vendor/cm
./get-prebuilts
cd ../..
brunch tenderloin
-----------------------------------------------------------------
Saucy from 09-11.1-2013 with all updates including unity from 09-11-2015 minus lxc
RamDisk Information:
The Touchpad uses LVM partitions. I had to compile e2label and lvm for the ramdisk to detect our partitions. It is added to /init.
Kernel Information:
Took the kernel from Milaq and changed the config file. Added all the Ubuntu Touch stuff, especially CGROUPS and CONFIG_TMPFS_POSIX=y and CONFIG_FAIR_GROUP_SCHED=y CONFIG_RT_GROUP_SCHED=y..
Added the Mer Touchpad patches, including Accept4.
Data Partition
Add the files from Important Files After Compiling
- I created the fstab
- Told lxc-android-boot not to run update-fstab
- Created udev rules for lvm that match the ramdisk, changed 60-persistent-storage.rules as well for dm
- Created the 70-tenderloin.rules
- Created system, vendor, webos and sdcard mount points just in case for fstab mounting
- Created init.rc and init.tenderloin for LXC Overrides. Added the insmod ath6kl.ko for wifi, and told the Sensor Service to start on main. The last part may not be necessary?
- /etc/init/ubuntu-touch-session-setup.conf and lightdm.conf has sleep 30 to start the session a minute later.
- /etc/ubuntu-touch-session.d/tenderloin.conf
- Used audiod.conf and bcattach.conf from Ubuntu non touch projects.. from.. various people!
- Changed the camera-app.qml, ubuntu-terminal-app.qml, and ubuntu-terminal-app.desktop files.
- Added /usr/bin/aa-strip .desktop files of aa-exec settings for apparmor, and /etc/crontab to schedule it to run every 1 minute.
Sound Information:
Sound has an upstart called audiod.conf. You will notice it mounts webos and runs a program to initialize the sound. /usr/share/alsa/ucm should only have msm-audio the rest of the /usr/share/alsa/ucm file that I included is probably not important. default.pa for pulse has 1 line uncommened referring to alsa-sink.
Patched pulse
Bluetooth Information:
Look at bcattach.conf in /etc/init for an upstart job. We bought over hcattach_awesome and bcattach.
Wifi Information:
ath6kl.ko needs to be insmodded. That is set in init.tenderloin.rc in overrides for the lxc containter.
Camera Information:
Had to edit the camera-app.qml file to correct the 90 degree camera sensor in landscape mode.
How to compile notes?
1.Create mkimage and put it in it's place
a)cd system/extras/mkimage
b. gcc mkimage.c -o mkimage -lz
c) cd ../../..
d) mkdir -p out/host/linux-x86/bin
e) cp system/extras/mkimage/mkimage out/host/linux-x86/bin
f) brunch tenderloin
***Look at project.list, roomservice.xml, manifest.xml, main.mk, Makefile?
http://forum.xda-developers.com/showthread.php?t=2426924
Thanks to:
Ogra, castrwilliam, CalcProgrammer, Mystikal57, JCSullins, Dorregray, w-flo.. and others from the #ubuntu-touch irc channel and Ubuntu 11.04-13.10 threads, cyanogen roms, solutions. etc... "I stand on the shoulders of giants"
-Justin Shafer
aka OrokuSaki aka jshafer817