Wednesday, 2023-03-22

T42<k1gen> what components should I rebuild after editing fixup-mountpoints?07:26
T42<k1gen> also, wanted to verify: if I have both block/bootdevice/by-name and block/platform/soc/1d84000.ufshc/by-name, and even block/by-name, but fstab mixes them (https://vomitb.in/raw/qAhm3GYlXd), which one should I use?07:29
T42<k1gen> I meant in these three folders there are the same symlinks07:31
T42<elros34> great example to confuse more. You need by-name path from fstab and block device from ls -l */dev/**by-name/. In that case it doesn't matter whether you have symlinks in one directory or another or don't have them at all and you read block device from sysfs. The only relevant parts in this fstab are userdata and maybe misc. You system and vendor are dynamic partitions and droid-hal script can't handle it07:56
T42<elros34> Of course you can grep all init*rc files to figure out if there is even more by-name mix up but there is no point you will notice it when you build droid-hal or boot device07:57
T42<elros34> then you build hybris-hal/droid-hal07:59
T42<k1gen> understood, thanks. for now I'll leave block/bootdevice/by-name in fixup-mountpoints08:00
T42<elros34> ah right there is probably encryption on userdata and droid-hal script might also have parsing issues:) So better unpack droid-hal and check created systemd mount units08:02
T42<k1gen> I forgot hybris-hal and droid-hal are different things. make hybris-hal, then build_packages.sh --droid-hal?08:03
T42<k1gen> also, if I didn't add pin in lineage, userdata shouldn't be encrypted08:04
T42<elros34> they are connected, if you build with first command then you package with second08:05
T42<k1gen> got it. no more rebuild needed?08:05
T42<k1gen> *rebuilds08:07
T42<k1gen> got to telnet, /diagnosis.log says CONFIG_AUTOFS4_FS=y not found in /proc/config.gz08:21
T42<k1gen> how to uncompress rootfs via telnet?08:23
T42<elros34> command is in pdf08:25
T42<k1gen> got it, thanks08:25
T42<edp_17> Hi all! I am trying to build 4.5 on OBS but many packages ended up in 'unresolvable'. Example: the error at droid-config-$device: "nothing provides pkgconfig(android-headers)". Few days ago building 4.5 for another device worked fine. Can someone take a look and help me out please?08:39
T42<elros34> android-headers are provided by droid-hal so this must be incorrect somehow08:43
T42<k1gen> @elros34 is /target/data in telnet the same directory as /data/.stowaways/sailfishos is in twrp?08:46
T42<elros34> I think not: https://github.com/mer-hybris/hybris-boot/blob/master/init-script#L15208:47
T42<elros34> just use same path as in twrp if /data si mounted08:48
T42<k1gen> sda15 is mounted to both /data and /target/data, lol. where do I uncompress rootfs? or it doesn't matter?08:53
T42<k1gen> mkdir -p /data/.stowaways/sailfishos?08:54
T42<k1gen> then bunzip2 path-to-rootfs?08:54
T42<edp_17> Thanks @elros34 : I'll double check my locally built droid-hal packages.08:56
T42<elros34> most likely something is wrong on OBS side09:02
T42<edp_17> I've just built 4.5.0.19 for another device on OBS and it worked. Although, this was a armv8el and the other one that failed was an aarch64 device.09:06
T42<k1gen> I'm in init-debug in real rootfs now, ip is assigned but no telnet or ssh09:18
T42<edp_17> @k1gen : what port have you used with telnet, 2323 or just 23 ?09:24
T42<edp_17> the command is: telnet 192.168.2.15 232309:25
T42<k1gen> tried both, telnet worked until I fixed fixup-mountpoints09:25
T42<edp_17> Then you probably fixed that wrong. Try this: reboot into recovery and put a file named "init_enter_debug2" into sfos root dir then reboot and try telnet again.09:26
T42<edp_17> Although, if the partitions are not properly mounted, this won't work. 🤔09:27
T42<elros34> only data and it is mounted properly09:28
T42<k1gen> "put a file"? you mean just touch init_enter_debug2 in /?09:28
T42<adampigg> mal: can gmp-droid be dropped from build?09:31
T42<k1gen> now there's no /data in /proc/mounts and Failed to boot init in real rootfs09:40
T42<edp_17> @k1gen : yes.09:40
T42<edp_17> Yes, I meant touch init_enter_debug2 in / .09:41
T42<edp_17> Oh, I see you are already in debug mode. I see, then ignore me. :D09:42
T42<elros34> that error can't ba caused by this file09:43
T42<k1gen> yeah09:43
T42<elros34> you must change something because you said you were in realrootfs but now you are back to initramfs09:44
T42<elros34> creating init_enter_debug2 will only stop booting in initramfs so you should not have problem with getting telnet09:44
T42<k1gen> then where did /data go?09:45
T42<elros34> how can I know, read diagnosis.log09:45
T42<k1gen> no such file09:46
T42<elros34> then init.lgo09:46
T42<elros34> init.log09:46
T42<k1gen> mount: mounting /dev/sda15 on /data failed: Invalid argument09:48
T42<elros34> encrypted? see dmesg09:49
T42<k1gen> https://vomitb.in/raw/XGnDUcVtXk09:51
T42<k1gen> maybe reformat /data?09:52
T42<TheVancedGamer> Format, not wipe09:53
T42<k1gen> that's what I said :D09:53
T42<TheVancedGamer> yeah but some people mix them up09:54
T42<k1gen> I reformatted /data, unpacked rootfs, and now I'm in bootloop, dmesg doesn't recognize Mer10:02
T42<elros34> why don't you follow edp_17 advice again?10:03
T42<k1gen> doing that now10:05
T42<k1gen> same bootloop after touching init_enter_debug210:06
T42<k1gen> dmesg thinks device is Google Pixel 410:07
T42<elros34> so it switch slot because of boot failure10:08
T42<k1gen> nope, I flashed hybris-boot.img to both slots10:08
T42<elros34> so flash again10:09
T42<k1gen> and I check currently active slot every reboot10:09
T42<k1gen> @elros34 reflashed to both slots just now, same issue10:09
T42<elros34> did you unpack rootfs correctly? show 'ls -al /data/.stowaways/sailfishos/'10:10
T42<k1gen> about 20 seconds of google logo on white background before rebooting10:11
T42<k1gen> let me boot into twrp, a minute10:11
T42<k1gen> https://vomitb.in/raw/HDjHgFbTO910:12
T42<elros34> what heppens when you rename /init-debug10:14
T42<k1gen> for example mv /init-debug /init-dbg?10:14
T42<elros34> yes10:15
T42<k1gen> exact same reboot time10:16
T42<elros34> I think you are not booting hybris-boot.img at all for whatever reason10:17
T42<k1gen> weird10:17
T42<elros34> for sure there is switch to real rootfs10:17
T42<elros34> there is no*10:18
T42<k1gen> I flashed hybris-boot.img from mic zip, same issue10:19
T42<k1gen> it's a shame to go all this way to build sfos successfully and end up not being able to boot it :(10:22
T42<elros34> building sfos is trivial (some script issues), now the real porting starts10:26
T42<k1gen> how to switch build_packages.sh —mic from bzip2 to gzip?10:31
T42<elros34> I do not remember excatly but are you sure it uses bzip2? What do you need it for if you can't boot hybris-boot.img? There should be instruction for changing sfos image compression in channel logs10:47
T42<k1gen> I'm sure mic uses bzip2 for rootfs compression, that's why twrp is useless for installing sfos zip10:48
T42<k1gen> I'm relinking kernel btw, hope it boots now10:49
T42<k1gen> still the same 20s bootloop11:31
T42<k1gen> I'm starting to lose hope, I just do what I already did over and over, and device won't boot, sometimes I even get new errors. there's so many issues I lack experience to fix I'm starting to feel desperate12:06
T42<k1gen> I think I have to start over with flashing lineage, rebuilding everything in hadk, but this will take a lot of time and most importantly - I have no clue why this happened in the first place12:11
malso can you get to first telnet, but going to second doesn't work?12:17
T42<k1gen> mal: now I can't even boot past 20 seconds, I can't make sfos rootfs using gzip compression no matter what I try, can't build gg because of some missing file error12:19
malso never managed to get to first telnet?12:20
T42<k1gen> at one point I managed to get to init-debug in real rootfs, but couldn't connect neither via telnet, nor with ssh12:21
T42<k1gen> then I created init_enter_debug2 in /, after that there was no /data partition in /proc/mounts12:22
T42<k1gen> after reformatting /data, uncompressing sfos rootfs once again - that's where I am now12:23
malso now you have no telnet?12:23
T42<k1gen> I have 20 second bootloop12:24
malthat did not answer my question12:24
T42<k1gen> and dmesg saying device is not mer boat loader, but google pixel 412:24
T42<k1gen> no telnet12:24
T42<edp_17> @k1gen : On one of y ports I've got the "Failed to extract filesystem! ERROR 7" in twrp.12:34
T42<edp_17> My solution was: in .ks file replace "tar.bz2" to "tar.gz"12:34
T42<k1gen> there's a lot of .ks files12:35
T42<edp_17> AND! In $ANDROID_ROOT/out/target/product/$DEVICE/hybris-updater-unpack.sh replace "-xvjf" with "tar --numeric-owner -xf $FS_ARC -C $FS_DST"12:35
T42<edp_17> There should be only one in $ANDROID_ROOT12:35
T42<k1gen> I've tried all this12:35
T42<k1gen> mic builds only after reverting all changes12:35
T42<edp_17> This: Jolla-@RELEASE@-$DEVICE-@ARCH@.ks12:36
T42<k1gen> tried this too12:36
T42<edp_17> I ran the mic manually with this:12:36
T42<edp_17> sudo mic create fs --arch=$PORT_ARCH --tokenmap=ARCH:$PORT_ARCH,RELEASE:$RELEASE,EXTRA_NAME:$EXTRA_NAME --record-pkgs=name,url --outdir=sfe-$DEVICE-$RELEASE$EXTRA_NAME --pack-to=sfe-$DEVICE-$RELEASE$EXTRA_NAME.tar.bz2 $ANDROID_ROOT/Jolla-@RELEASE@-$DEVICE-@ARCH@.ks #--verbose #--debug12:36
T42<edp_17> I know it refers to bz2 but it still works.12:37
T42<k1gen> thanks, I was lacking this command (re @edp_17: I ran the mic manual...)12:49
T42<k1gen> mal: so what now, start over?12:49
T42<edp_17> @k1gen : Without that command, how did you build the image?12:49
T42<edp_17> If you used the command "rpm/dhd/helpers/build_packages.sh -i" that overwrote your *.ks file. So, whatever you changed there was gone before you built the image.12:52
T42<edp_17> Once you built all packages, do those two changes I mentioned and run the mic manually. Then, you should be able to install the image with twrp. So no need to manually extract rootfs and stuff.12:54
T42<k1gen> @edp_17 already did this all, I was asking mal about 20s bootloop :)12:59
T42<edp_17> Okay. :D12:59
mal@k1gen it's rare that starting over is needed, we need to debug other things first13:14
T42<k1gen> mal: so what do I do if reflashing lineage+sfos doesn't remove the bootloop?13:17
T42<k1gen> well now it's Updater process ended with signal: 11 in twrp, weird13:29
T42<k1gen> and no errors in /tmp/recovery.log, as usual13:30
T42<k1gen> updater-unpack.sh inside zip had a couple of issues, I fixed it and repacked sfos image, now it's back to signal 713:37
T42<k1gen> mal: I'm back to Product: init-debug in real rootfs13:46
T42<k1gen> ssh is not rejected!13:48
T42<k1gen> telnet doesn't work though and I didn't set the password for ssh to work13:48
T42<k1gen> nvm, I chrooted into sfos from twrp and set password for defaultuser, I have ssh access13:55
T42<k1gen> @elros34 how do I get to gui from google logo?14:02
malyou need to get full log using "journalctl -b --no-pager" and see if /usr/libexec/droid-hybris/system/bin/logcat works14:08
T42<k1gen> file exists, but is not found by bash on execution attempt (re @SailfishFreenodeIRCBridgeBot: <mal>you need to get...)14:12
T42<k1gen> mal: journalctl: http://ix.io/4rwR14:17
malbased on logs several mounts fail14:19
maldidn't your device have dynamic partitions which need special handling14:20
T42<k1gen> yeah, about that... I have no clue how to "handle" dynamic partitions14:22
T42<k1gen> are all dynamic partitions defined in AB_OTA_PARTITIONS?14:52
T42<k1gen> sorry, scrolled down and found BOARD_GOOGLE_DYNAMIC_PARTITIONS_PARTITION_LIST. is this the one?14:53
T42<k1gen> what to rebuild after defining dynparts in droid-hal-$DEVICE.spec, only droid-hal or hybris-hal too?14:55
malI can give some instructions a bit later today15:01
T42<k1gen> mal: thank you, I'll be waiting :D15:04
Mister_Magistermal: i got task for jolla. Can you stop recording when phone is turning off. I've encountered it multiple times, i'm recording vid on low battery then no battery warning at all it just turns off and doesn't stop recording so it just crashes and mp4 is unusable without end16:51
malhmm, interesting, I will have a look17:08
Mister_Magisterthats the second bug i reported in camera app17:42
Mister_Magisterfeels like nobody is recording vids xd17:42
Mister_Magisterwe all know nobody else is recording vids becuse it's broken for them17:43
T42<k1gen> mal: what's your timezone? I guess your later today may be in my deep night18:23
Mister_MagisterUTC+3 i believe18:29
Mister_Magisteror +218:29
piggzmal: should gecko-camera-droid-plugin be added to the device pattern ?19:05
rinigusdoes anyone know whether SB2 has some RAM limits imposed on platform SDK? I still have to dig into the code, but seems like one V8 utility of chromium build tries to allocate 8gb ram. which it fails19:09
riniguspiggz: I wonder if pinephone sfos port can be booted on qemu?19:10
rinigusor some simpler port variant that I could use for building aarch64 RPMs19:11
piggzhmm, maybe19:11
Mister_Magisterrinigus: it does19:12
Mister_Magisteri mean in sb2 it does19:13
Mister_Magisteri mean in sdk it does19:13
Mister_Magisterin in sfossdk (not to be confused with sailfish sdk) it doesn't19:13
piggzrinigus: https://forum.pine64.org/showthread.php?tid=1060819:15
riniguspiggz: not yet an avenue I want to explore, but just keeping options available. obviously other option would be to boot SFOS on some arm64 virtual node, similar to SuSe OBS. but that would require some investigation as well19:16
riniguspiggz: thanks for a link19:16
piggzyeah, i was thinking about some aarch64 vps maybe19:16
rinigusMister_Magister: so, we have SFOS SDK distributed for app developers. that's docker or virt machine. let's call it option 1. then we have platform sdk, with chroot and friends. that's option 2. so, which one imposes RAM limits?19:17
rinigusI am hitting something in option 2 - platform sdk19:18
rinigusbut it could be not "just" size. have to dig into it and was asking with the hope of getting a reply: "oh yes, it does. just add option -m 10g and you are good to go"19:19
piggzrinigus: the virtualbox app sdk default VM has a 1GB memory set in the VM, but thats different to your problem19:20
riniguspiggz: yes, that I remember. I presume docker wouldn't limit it that way, but I haven't checked (as it can)19:23
rinigusok, will dig further19:23
piggzfunny, with the default app sdk, i couldnt even build amazfish :D19:23
piggzrinigus: anything like ulimit getting in the way?19:29
malpiggz: I thought it's automatically pulled in19:30
riniguspiggz: nope. even running from sb2 II get unlimited ...19:31
piggzmal: it might be, but ....19:31
piggz[defaultuser@Pro1 ~]$ zypper se --requires gecko-camera-droid-plugin19:31
piggzLoading repository data...19:31
piggzReading installed packages...19:31
piggzNo matching items found.19:31
malpiggz: it's soft dependency https://github.com/sailfishos/gecko-camera/blob/master/rpm/gecko-camera.spec#L919:32
piggzhowever, it is a recommends for gecko-camera19:33
piggzyes, this :)19:33
piggzmal: ok to create a port project named 4.5.0.19, pointing at 4.5.0.18 releases in obs?20:10
malI will add such to common first20:22
T42<k1gen> mal: you still up for helping with dynamic partitions or should I ping you tomorrow?20:24
malpiggz: we need to add that to chum also at some point20:24
mal@k1gen I need to do a small change to my config repo so I don't have to explain so much20:25
malI can do it now20:25
T42<k1gen> it's fine, I'm going to sleep soon anyway. if you can help me tomorrow - I'd really appreciate it20:26
T42<k1gen> so, what do you think? :)21:01
mal@k1gen I'll write some instructions here, a moment21:12
T42<k1gen> well I’m sure I’ll have a lot of questions, and will ask them tomorrow21:13
mal@k1gen so you need to disable generating mount services for dynamic partitions like this in droid-hal spec: "%define makefstab_skip_entries /odm /product /system /system_ext /vendor" before the last include line and then rebuild droid-hal rpms (build_packages.sh -d) then you need to build one program (build_packages.sh --mw=https://github.com/mlehtima/parse-android-dynparts.git) and the some21:15
malconfig changes I will tell in next message21:15
mal@k1gen in droid-configs repo you need the mount services like this https://github.com/mlehtima/droid-config-fp4/tree/devel/sparse/usr/lib/systemd/system (system, system_ext, vendor, system_root, product and odm_root) and the symlinks from local-fs.target.wants folder in there, also the dmsetup.service, then also dmsetup.sh from21:21
malhttps://github.com/mlehtima/droid-config-fp4/tree/devel/sparse/usr/bin/droid/dmsetup.service21:21
malalso you should add the etc symlink to /odm like this https://github.com/mlehtima/droid-config-fp4/blob/devel/sparse/odm/etc21:24
malhopefully I didn't forget anything21:25
T42<k1gen> mal: thank you very much!21:28

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!