**** BEGIN LOGGING AT Sat Jan 18 02:59:59 2020 Jan 18 08:49:06 Morning Jan 18 08:49:19 Tofe: On 3370: Well I disabled most, need to see where this one comes from Jan 18 08:49:28 Maybe not from the init itself but another repo that's being called Jan 18 08:56:37 Tofe: on the default.prop "error", the file simply doesn't exist, but there are multiple variants as per https://github.com/Halium/android_system_core/blob/halium-8.1/init/property_service.cpp#L736 Jan 18 08:57:35 I do have ./android/system/etc/prop.default which seems to be the new path Jan 18 08:58:36 Just seems that init.rc still points to old variant when trying to do a copy to urandom: https://github.com/Halium/android_system_core/blob/halium-8.1/rootdir/init.rc#L46 Jan 18 09:00:20 It was "fixed" upsteam but only last year it seems: https://github.com/LineageOS/android_system_core/commit/0d78bfbc09a0e74c8b03bc989a142a7bf8b2d729 Jan 18 09:01:39 And only in 16.0 and 17.1 it seems. I doubt this is cricitcal but can fix it of course: https://github.com/LineageOS/android_system_core/blame/lineage-16.0/rootdir/init.rc#L45 Jan 18 09:17:37 Tofe: OK might have a lead Jan 18 09:17:55 When I manually try to run hwservicemanager it's fialing on selinux Jan 18 09:18:03 Seems I might need to LD_PRELOAD there as well Jan 18 09:18:45 Yup: https://github.com/mer-hybris/droid-config-sony-nile/blob/7573a05c60974c95fe62bbcae681754e9c600af7/sparse/usr/libexec/droid-hybris/system/etc/init/hwservicemanager.rc#L4 Jan 18 09:18:54 Seems they have this in their device specific repos Jan 18 17:55:49 Morning Jan 18 17:57:03 Herrie: ooh well done; what is the situation after this change ? Jan 18 18:05:03 Tofe: pretty much the same but seems they're not crashing anymore Jan 18 18:05:31 I think now it's probably the bootdone issue that prevents lxc to start Jan 18 18:05:56 I don't see anything in logs that worries me anymore otherwise Jan 18 18:12:45 you mean there's still the "touch" issue? Jan 18 18:12:59 No that is gone, but still the .sh still doesn't seem to detect the boto done Jan 18 18:13:08 So I think it doesn't get kicked off in init.rc Jan 18 18:13:11 https://paste.ubuntu.com/p/R9SfFPyJr7/ Jan 18 18:13:20 "Checking for boot done flag ..." Jan 18 18:13:58 I think this one doesn't get triggered somehow: https://github.com/shr-distribution/meta-smartphone/blob/zeus/meta-android/recipes-core/android-system/android-system/10-boot-marker Jan 18 18:14:25 And it's checking for it here: https://github.com/shr-distribution/meta-smartphone/blob/zeus/meta-android/recipes-core/android-system/android-system/wait-for-android.sh#L15 Jan 18 18:15:51 Right. But why... Jan 18 18:20:53 I mean it should be almost at the end Jan 18 18:22:30 I mean it seems to be already here somewhere: https://github.com/Herrie82/android_system_core/blob/halium-8.1-clean2/rootdir/init.rc#L732 Jan 18 18:22:53 Just this one is suspicious: "Nov 20 21:42:01 mido kernel[876]: [ 15.481386] init: setpgid failed for console: Operation not permitted" Jan 18 18:24:06 Though might be "normal" as per https://github.com/Herrie82/android_system_core/blob/halium-8.1-clean2/init/service.cpp#L269 Jan 18 18:30:15 And the missing vndservicemanager I'd also need to address Jan 18 18:30:22 Not sure why it's not in the image Jan 18 18:33:53 I have /halium-8.1/out/target/product/mido/vendor/bin/vndservicemanager but it's not in my image in the end Jan 18 18:34:17 I guess it might be missing from proprietary-files.txt or something Jan 18 18:40:36 could be; that servicemanager might be important, too **** BEGIN LOGGING AT Sun Jan 19 03:30:12 2020 **** ENDING LOGGING AT Sun Jan 19 03:34:18 2020 **** BEGIN LOGGING AT Sun Jan 19 03:41:10 2020 Jan 19 08:15:03 Morning Jan 19 08:15:14 Tofe: For the vndservicemanager I think I might have found a clue Jan 19 08:15:26 It seems I don't have a vendor folder in my Halium image Jan 19 08:15:43 So it cannot find the binaries that are in /halium-8.1/out/target/product/mido/vendor/ Jan 19 08:16:07 There is a symlink in /halium-8.1/out/target/product/mido/system/vendor which points to /vendor which I guess is the folder above Jan 19 08:16:19 However that one is not included in the generated system.img I guess Jan 19 08:18:32 When I look at 7.1 build the vendor bits are in system/vendor and it's not a symlink to /vendor Jan 19 08:18:47 I guess these are some Trebble changes that were introduced in 8.1 Jan 19 08:24:19 Just not sure what's the right way to get it into the image Jan 19 08:45:18 Morning! Jan 19 08:46:21 it might just be a directory to add in the main .mk Jan 19 09:19:04 Tofe: I'm not too familiar with the Android build system, so finding out the hard way usually Jan 19 09:24:35 Where's your mido 8.1 vendor repo? Jan 19 09:25:01 Tofe: https://gitlab.com/the-muppets/proprietary_vendor_xiaomi/tree/lineage-15.1/mido Jan 19 09:25:09 But that's not the one where the problem is probably Jan 19 09:25:40 I agree, but I wanted to see how it looked like Jan 19 09:26:54 vndservicemanager is build from servicemanager as per https://github.com/Herrie82/android_frameworks_native/blob/halium-8.1/cmds/servicemanager/Android.bp#L38 Jan 19 09:26:58 oh wait, I missed the point, the binaries *are* in the out/ directory... Jan 19 09:27:02 Issue is likely here: https://github.com/Herrie82/android_build/commit/df238d4508844cd9494f804c9df210fe2a8d8e45 Jan 19 09:27:51 I took this hybris part from hybris-boot which we don't use https://github.com/mer-hybris/hybris-boot/blob/master/Android.mk#L274 Jan 19 09:27:59 Something small is missing there probably Jan 19 09:28:36 Since the libselinux_stubs also wouldn't work. I worked around that by https://github.com/Herrie82/android_system_hwservicemanager/commit/e7e85fa6759671d639e394d81661b61e85ad652f Jan 19 09:28:43 But should probably be fixed properly Jan 19 09:29:58 what about trying to track this one https://github.com/Herrie82/android_build/blob/halium-8.1/core/main.mk#L1025 Jan 19 09:30:50 Tofe: Well everything is build it seems, just it won't be packaged in system.img Jan 19 09:31:38 mmh do you get a vendor.img in output, by any chance? Jan 19 09:33:40 Nope: https://paste.ubuntu.com/p/rCGWvVs6tr/ Jan 19 09:35:00 ok; mmh can you remind me where the "systemimage" target is defined ?... Jan 19 09:36:49 Let me grep Jan 19 09:41:24 Also, can you try "mka droidcore" ? Jan 19 09:42:02 I guess here: https://github.com/Herrie82/android_build/blob/halium-8.1/core/Makefile#L1594 Jan 19 09:42:51 Trying Jan 19 09:43:48 That one fails on some missing Java bits Jan 19 09:44:00 ok, let me propose you something else then Jan 19 09:44:19 because I think system.img doesn't include vendor, now it's packaged into a separate vendor.img output Jan 19 09:44:30 so mka systemimage won't include it Jan 19 09:45:32 "mka vendorimage" ? Jan 19 09:46:44 though it's likely already built, looking at the rest... Jan 19 09:49:31 Tofe: Seems like a lead though: https://paste.ubuntu.com/p/W6YG3d4GtH/ Jan 19 09:49:50 Seems e2fsdroid will produce vendor.img Jan 19 09:52:19 so you already have a vendor.img actually Jan 19 09:52:20 in out/target/product/mido/vendor.img Jan 19 09:53:15 No Jan 19 09:53:17 It's not there Jan 19 09:53:29 e2fsdroid creates it, but e2fsdroid can't be found it seems Jan 19 09:53:42 ah ok, I misread the logs Jan 19 09:53:51 what's mkuserimg_mke2fs, also, I wonder Jan 19 09:57:02 maybe you just have to add e2fsdroid in the common halium 8.1 targets Jan 19 09:59:59 I'm trying "mka systemimage vendorimage" now Jan 19 10:00:02 Maybe that will work Jan 19 10:00:13 I think systemimage creates the e2fsdroid Jan 19 10:02:25 but you already built systemimage, didn't you Jan 19 10:03:21 Yeah but when I did mka vendorimage, it deleted the results in the out directory Jan 19 10:03:31 oh... Jan 19 10:03:45 Anyway on my builder it's a few minutes, so happy to experiment ;) Jan 19 10:04:31 I think you'll really near the end here; next step will be to integrate vendor.img in the halium script, and then we're good to go Jan 19 10:04:42 Tofe: I think so too Jan 19 10:04:51 It's not too far off really Jan 19 10:04:57 Most things seem OK-ish Jan 19 10:05:08 Should be really a few small things there and there probably Jan 19 10:05:32 Still some things on Android side probably, but that could be also after LXC works Jan 19 10:06:23 Now have a vendor.img ;) Jan 19 10:06:58 It's big, but vendor folder as well Jan 19 10:07:09 Vendor.img is 268mb, system.img = 266mb Jan 19 10:07:18 But uncompressed vendor folder is 298mb, so that could well be Jan 19 10:16:36 damn... Jan 19 10:17:06 It's bit, but well, that shouldn't be a problem as such Jan 19 10:17:12 can you just mount it somewhere ? or does it need resize2fs -M ? Jan 19 10:18:07 sorry, I means simg2img Jan 19 10:18:10 meant* Jan 19 10:22:13 Tofe: I seem to be able to open it with some tools on Windows and it has contents Jan 19 10:22:55 JaMa: I tested the latest testing build on Pinephone, and it's worse than what I tested before: lists don't show up correctly, no background image... so for now we'd better just stick to "zeus" on testing, until at least 5.14 is released Jan 19 10:24:49 ok good, so I think it'll be enough Jan 19 10:26:00 Just the vndservice and vndservicemanager binaries are not in there... Jan 19 10:26:12 While they are in the vendor/bin folder before the image is being created :S Jan 19 10:26:21 But that might be a separate issue to solve Jan 19 10:26:29 next steps: 1. include that file in our android-system-image recipe, 2. change the halium script to mount vendor.img onto /android/vendor if it finds one (and add a bind mount to /usr/lib/lxc/android/rootfs/vendor), 3. test Jan 19 10:29:48 oh, damn, we still use github.com/Tofee/initramfs-tools-halium.git... I should check if the changes have been merged... Jan 19 10:30:10 Tofe: So basically duplicate https://github.com/shr-distribution/meta-smartphone/blob/zeus/meta-android/recipes-core/android-system-image/android-system-image.inc#L18-L26 for vendor.img for 1? Jan 19 10:30:58 yes Jan 19 10:34:47 ok they only added Travis/CI stuff on Halium side, and my additions haven't been PR'ed actually Jan 19 10:41:46 Tofe: For the halium .tar.gz I guess I need to add vendor.img here?: "tar cvjf ${ARCHIVE_NAME} system.img" so it becomes "tar cvjf ${ARCHIVE_NAME} system.img vendor.img" ? Jan 19 10:42:32 yes, if vendor.img exists Jan 19 10:43:22 maybe we can add an intermediate ANDROID_IMAGES variable to avoid a "if" there Jan 19 10:45:44 Well in general this is the .sh that we would use on Jenkins Jan 19 10:45:58 I have a slightly modified version locally I use to build Halium images Jan 19 10:46:04 It should be pretty 8.1 specific I guess Jan 19 10:56:37 Can't we just add vendor.img if there's one ? that way it would be common Jan 19 10:57:11 Yeah probably Jan 19 10:57:29 Just now I have locally differnet .sh for each Halium version just to test & build stuff Jan 19 10:57:37 Can be optimized of course Jan 19 11:01:25 ok Jan 19 11:02:49 JaMa has some nice jenkins-job script where we could include it Jan 19 11:03:08 For now is my goal to have a proof of concept, put it out there for Halium and then optimize Jan 19 12:23:00 Tofe: I should have an image with vendor.img on the right place Jan 19 12:23:55 If you have a proposal for the initramfs-tools-halium I'm all ears Jan 19 12:24:58 ah, let me see, I got distracted :) Jan 19 12:32:10 you do have a system/vendor folder; right? Jan 19 12:33:34 https://paste2.org/fIaH2IvI something along these lines Jan 19 12:33:40 Tofe: yeah but that's a symlink to non existing vendor Jan 19 12:35:02 To /vendor Jan 19 13:00:24 Tofe: thnx will try later today **** BEGIN LOGGING AT Mon Jan 20 01:50:52 2020 **** ENDING LOGGING AT Mon Jan 20 02:59:57 2020