Porting Halium to Nexus 7 deb
-
Gave it another spin.
The general steps to get deb working are much simplified since it's all in github now: https://github.com/Halium/halium-devices/blob/halium-7.1/manifests/asus_deb.xml - just follow the halium documentation. However, I'm wondering whether I should leave the OP as is, some people have expressed that it helped them in their ports to see the journey ...
Plasma mobile hasn't been sleeping. I can tell that the newer images work much better than previously.
For ubports, I made another attempt, but no GUI so far. Any tipps appreciated!
What I did in detail:
- Follow the steps on https://docs.ubports.com/en/latest/porting/introduction.html
- in
rootstock-touch-install- insert the line
do_shell "rm -f /data/system.img"as the first line in prepare_ubuntu_system, otherwise we have that thing left over from halium - insert the line
IMAGE_SIZE=$(( $IMAGE_SIZE * 2 ))right after that variable is set, otherwise the image is too small, so I just double it - delete the line
do_shell "ln /data/ubuntu.img /data/system.img", otherwise I end up with an empty system.img on the device ... Not sure what the problem was exactly, I think something goes wrong with the loop devices stepping on each others toes .. not sure
- insert the line
- now I can install using the latest ubports xenial root fs: build 298 form https://ci.ubports.com/job/xenial-rootfs-armhf/
- at first that wouldn't boot, so ...
- I make ubports boot a bit more verbose
halium/ubports-boot- append
quite=n debug=yto the UBPORTS_BOOTIMG_COMMANDLINE inAndroid.mk - insert
[ -f /dev/kmsg ] || mknod -m 600 /dev/kmsg c 1 11ininitramfs/initright before themkdir -p /var/lockline - change the line in
initramfs/scripts/functions:_log_msg()fromprintf "$@"toprintf "$@" | tee /dev/kmsg - now I could sprinkle around
log_warning_msg blablaininitramfs/initand see everything nicely in last_kmsg. - eventually I found that it panics at the line:
mount -n -o move /proc ${rootmnt}/proc... I have simply commented this line for the moment, that avoids the panic and
- append
- now it boots into the ubports rootfs
- however, no GUI comes up
- in
/var/log/lightdm/lightdm.logI see
Launching process 2998: /usr/share/ubuntu-touch-session/usc-wrapper --file '/run/mir_socket' --from-dm-fd 11 --to-dm-fd 14 --vt 1 DisplayServer: Unity system compositor stopped- usc-wrapper is a script. when I run the command inside:
unity-system-compositor --disable-overlays=false --spinner=$SNAP/usr/bin/unity-system-compositor-spinner --file '/run/mir_socket' --from-dm-fd 11 --to-dm-fd 14 --vt 1 - I get a Segmentation fault (core dumped)
- when I run at the same time
/system/bin/logcat | grep -Eve "NetlinkListener|rmt_storage"I don't see anything logged at the time of the segfault
logcat: http://paste.ubuntu.com/p/kz7JSTfgTR/
syslog: http://paste.ubuntu.com/p/JVQJ2mg98G/
dmesg: http://paste.ubuntu.com/p/MPvwKtYhsS/Not sure what to do next. Maybe try halium-boot, maybe check the
lxc-checkconfig: http://paste.ubuntu.com/p/5Z6w8Kwcm6/
it still flags some things. Also, mabye related, I get
# lxc-attach -n android lxc-attach: cgroups/cgfs.c: lxc_cgroupfs_attach: 2538 could not move attached process 10995 to cgroup of container lxc-attach: attach.c: lxc_attach: 992 Expected to receive sequence number 0: No such file or directory.However,
# lxc-info -n android Name: android State: RUNNING PID: 1116 IP: 10.15.19.82 IP: 192.168.179.127and it's all seemingly good enough for plasma mobile, so not sure.
Again, tips welcome!
-
@doniks just in case you don't know it, there's a UBports Porting group in Telegram (https://t.me/ubports_porting)
-
Thanks! I do know
And I did get invaluable help from there! I would be no where without it.However, after piling up a couple of hacks I find it helpful to take a step back and summarize the status quo again which is hard in irc/telegram.
And also, I like to mix the different styles of working: Specific tips for a specific problem in the more ad-hoc irc and the long haul, asynchronous conversation of a forum/mailing list.
Oh wait ... ubports porting. No I didn't know that one! I was talking about the #halium channel. I'll have a look. Thanks.
-
@doniks maybe @UniSuperBox can comment a bit on the manual tweaks you had to do for rootstocking the device, actually all should come out of the box somehow. Then, if plasma mobile shows a screen, we should be able to do this, too right?
BR
-
@flohack said in Porting Halium to Nexus 7 deb:
@doniks maybe @UniSuperBox can comment a bit on the manual tweaks you had to do for rootstocking the device, actually all should come out of the box somehow.
Well, in a way he did
The PR for the update of docs.ubports is in, which means both ubports-boot and rootstock-install can take their bugs with them to the grave.Then, if plasma mobile shows a screen, we should be able to do this, too right?
One would hope so. However, even with halium-boot (and a bunch more kernel configs it wanted) I managed just now to build and boot it, but I end up with the same segfaults

I spoke to @UniSuperBox and @bshah earlier today on telegram. There was a theory about something with libhybris and "N linker" but I didn't really get it and atm still just google logo.
-
this porting journal(idk what to call this) is really helpful thank you
-
@doniks not found
-
@amrith said in Porting Halium to Nexus 7 deb:
this porting journal(idk what to call this) is really helpful thank you
Great that you found it helpful! Maybe you want to write your own?! I think this one for N7 is very dated by now. Lots of things discussed here should be automatic/easier/well documented...
-
-
@doniks said in Porting Halium to Nexus 7 deb:
May I introduce:
the Halium Porting Error Knowledge Base
https://gist.github.com/doniks/2ac14a1bb6750165bf782f62139c8aab#file-gistfile1-txt-L61
the link is not working
-
@amrith You might need to sign up/in for the link to work.
-
@Lakotaubp said in Porting Halium to Nexus 7 deb:
@amrith You might need to sign up/in for the link to work.
No i am already signed in . it shows 404 error
-
I have exactly same errors you have , unity-compositor stopped and if you run it as from the startup script you get segmentation fault
however
once you boot> login to ssh
execute$sudo chown -R $USER /dev/input $QML_BAD_GUI_RENDER_LOOP=1 QT_QPA_PLATFORM=mirserver unity8while ubuntu spinner is active , you will get some flashes and you can see the unity is working in background.
-
@amrith said in Porting Halium to Nexus 7 deb:
@Lakotaubp said in Porting Halium to Nexus 7 deb:
@amrith You might need to sign up/in for the link to work.
No i am already signed in . it shows 404 error
No, no that thing is gone. Has been integrated into the halium docs long ago
-
@amrith said in Porting Halium to Nexus 7 deb:
I have exactly same errors you have , unity-compositor stopped and if you run it as from the startup script you get segmentation fault
however
once you boot> login to ssh
execute$sudo chown -R $USER /dev/input $QML_BAD_GUI_RENDER_LOOP=1 QT_QPA_PLATFORM=mirserver unity8while ubuntu spinner is active , you will get some flashes and you can see the unity is working in background.
remember, my last posts with content here are from 2018 - long outdated! By now I have ubports UI running on the N7. All I needed is in the docs or in the pad.
Probably better to have the conversation about your errors in one place https://forums.ubports.com/topic/3112/ubport-new-device-porting-problem/ rather than spreading it over multiple threads
-
@doniks said in Porting Halium to Nexus 7 deb:
Gave it another spin.
The general steps to get deb working are much simplified since it's all in github now: https://github.com/Halium/halium-devices/blob/halium-7.1/manifests/asus_deb.xml - just follow the halium documentation. However, I'm wondering whether I should leave the OP as is, some people have expressed that it helped them in their ports to see the journey ...
Plasma mobile hasn't been sleeping. I can tell that the newer images work much better than previously.
For ubports, I made another attempt, but no GUI so far. Any tipps appreciated!
What I did in detail:
- Follow the steps on https://docs.ubports.com/en/latest/porting/introduction.html
- in
rootstock-touch-install- insert the line
do_shell "rm -f /data/system.img"as the first line in prepare_ubuntu_system, otherwise we have that thing left over from halium - insert the line
IMAGE_SIZE=$(( $IMAGE_SIZE * 2 ))right after that variable is set, otherwise the image is too small, so I just double it - delete the line
do_shell "ln /data/ubuntu.img /data/system.img", otherwise I end up with an empty system.img on the device ... Not sure what the problem was exactly, I think something goes wrong with the loop devices stepping on each others toes .. not sure
- insert the line
- now I can install using the latest ubports xenial root fs: build 298 form https://ci.ubports.com/job/xenial-rootfs-armhf/
- at first that wouldn't boot, so ...
- I make ubports boot a bit more verbose
halium/ubports-boot- append
quite=n debug=yto the UBPORTS_BOOTIMG_COMMANDLINE inAndroid.mk - insert
[ -f /dev/kmsg ] || mknod -m 600 /dev/kmsg c 1 11ininitramfs/initright before themkdir -p /var/lockline - change the line in
initramfs/scripts/functions:_log_msg()fromprintf "$@"toprintf "$@" | tee /dev/kmsg - now I could sprinkle around
log_warning_msg blablaininitramfs/initand see everything nicely in last_kmsg. - eventually I found that it panics at the line:
mount -n -o move /proc ${rootmnt}/proc... I have simply commented this line for the moment, that avoids the panic and
- append
- now it boots into the ubports rootfs
- however, no GUI comes up
- in
/var/log/lightdm/lightdm.logI see
Launching process 2998: /usr/share/ubuntu-touch-session/usc-wrapper --file '/run/mir_socket' --from-dm-fd 11 --to-dm-fd 14 --vt 1 DisplayServer: Unity system compositor stopped- usc-wrapper is a script. when I run the command inside:
unity-system-compositor --disable-overlays=false --spinner=$SNAP/usr/bin/unity-system-compositor-spinner --file '/run/mir_socket' --from-dm-fd 11 --to-dm-fd 14 --vt 1 - I get a Segmentation fault (core dumped)
- when I run at the same time
/system/bin/logcat | grep -Eve "NetlinkListener|rmt_storage"I don't see anything logged at the time of the segfault
logcat: http://paste.ubuntu.com/p/kz7JSTfgTR/
syslog: http://paste.ubuntu.com/p/JVQJ2mg98G/
dmesg: http://paste.ubuntu.com/p/MPvwKtYhsS/Not sure what to do next. Maybe try halium-boot, maybe check the
lxc-checkconfig: http://paste.ubuntu.com/p/5Z6w8Kwcm6/
it still flags some things. Also, mabye related, I get
# lxc-attach -n android lxc-attach: cgroups/cgfs.c: lxc_cgroupfs_attach: 2538 could not move attached process 10995 to cgroup of container lxc-attach: attach.c: lxc_attach: 992 Expected to receive sequence number 0: No such file or directory.However,
# lxc-info -n android Name: android State: RUNNING PID: 1116 IP: 10.15.19.82 IP: 192.168.179.127and it's all seemingly good enough for plasma mobile, so not sure.
Again, tips welcome!
this was the post i was referring you
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better π
Register Login