Gentoo Archives: gentoo-soc

From: EBo <ebo@×××××××.com>
To: gentoo-soc@l.g.o
Cc: cat@××××××××.org
Subject: Re: [gentoo-soc] Gentoo musl Support Expansion for Qt/KDE Week 8
Date: Mon, 08 Aug 2022 11:18:19
Message-Id: d64700a3efa773e6b569e5ea00cede0e@sandien.com
In Reply to: Re: [gentoo-soc] Gentoo musl Support Expansion for Qt/KDE Week 8 by cat@catcream.org
1 When you get the draft of step-by-step doc, sit down and do a clean
2 install and follow the step-by-step to verify that it works as
3 documented. Maybe if you have someone that can beta test things, they
4 can verify the final docs.
5
6 Anyway, that is all I meant.
7
8 EBo --
9
10
11 On Aug 8 2022 6:58 AM, cat@××××××××.org wrote:
12 > Yes! I have week 12 fully dedicated to writing documentation actually.
13 > I have written some notes but I'll also use my daily blogs to remind
14 > me of what to write about :)
15 >
16 > What do you mean by "and verification that they are really up to
17 > date", like so the older docs are really up to date? For the PinePhone
18 > Pro in particular I'd like to do something like this
19 > https://wiki.gentoo.org/wiki/PinePhone but with a lot more
20 > information.
21 >
22 >
23 >
24 > Aug 8, 2022, 02:33 by ebo@×××××××.com:
25 >
26 >> I'm not one of your mentors (I am a former GSOC intern and mentor;
27 >> which explains why I am still on the lists).
28 >>
29 >> All of this sounds like wonderful progress. The one thing I have not
30 >> seen you mention is documentation, quick-starts, and verification that
31 >> they are really up to date. Spending a week or two on those to polish
32 >> then up would be a wonderful addition.
33 >>
34 >> EBo --
35 >>
36 >> On Aug 7 2022 8:01 PM, cat@××××××××.org wrote:
37 >>
38 >>> This week I've spent most of my time getting Gentoo musl to run on my
39 >>> PinePhone Pro and packaging mauikit apps. I have also done some minor
40 >>> testing on KDE applications and some other miscellaneous things.
41 >>>
42 >>> In my proposal I had initially planned on porting KDE applications
43 >>> and
44 >>> making them build on Gentoo musl the following two weeks, and then
45 >>> making sure test suites run the week following that. But I've already
46 >>> gotten kde-apps-meta installed and the programs are working well for
47 >>> the most part. Though I haven't enabled every use flag for the KDE
48 >>> apps and I haven't ran every test suite so there's definitely work to
49 >>> do left, just not 3 weeks work. So instead I asked Sam if I could
50 >>> spend some time working on getting Gentoo musl to run on my PinePhone
51 >>> Pro with Plasma Mobile as a side project.
52 >>> <!--more-->
53 >>>
54 >>> Starting with the PinePhone. The Gentoo install itself was pretty
55 >>> smooth and I didn't run into any major issues. But I really got stuck
56 >>> on some other more low level and non-Gentoo bits.
57 >>> The first issue I ran into was when I installed a new kernel onto it.
58 >>> Apparently a single developer called Megi does most of the PPP kernel
59 >>> development so I installed his kernel. Confusingly his development
60 >>> branch is called "orange-pi-5.x" and it took me some time figuring
61 >>> that out :D. Anyways, the compilation itself was straight forward,
62 >>> and
63 >>> the defconfig _almost_ worked well. I stole the bootloader
64 >>> configuration from PostmarketOS, rsync:ed the kernel + dtbs, and then
65 >>> changed some relevant parts in the bootloader config. Sadly the phone
66 >>> did not boot, and there was no output to be seen on the screen :/.
67 >>> After reading the wiki I found out that I could connect via serial
68 >>> through the headphone jack. I used an RS232-to-USB adapter and
69 >>> soldered it onto the internal wires of a 3.5mm cable. For output this
70 >>> did work, but when connecting TX to also get input, the output just
71 >>> got messed up and I couldn't read it. I tried to debug this and also
72 >>> seeked help from others, but ultimately couldn't get it to work.
73 >>> Luckily the only thing I needed was output because I saw in the
74 >>> bootlog that EFI stub was missing from the kernel. Enabling that and
75 >>> generating an initramfs made the phone boot!
76 >>>
77 >>> Then I started emerging some packages, and even though I had the
78 >>> charger plugged in, the phone completely discharged after a while.
79 >>> After that the phone did not want to boot and I tried all kinds of
80 >>> things, like booting from SD card, reflashing bootloader, trying
81 >>> different cables and nothing worked ... It turned out that the
82 >>> bootloader (Tow-boot) had a bug that made the phone not charge after
83 >>> the battery as emptied, and I needed to boot it into a special mode
84 >>> holding a button with a sim card opener.
85 >>>
86 >>> After that I set up distcc with cross compilation, and there came the
87 >>> second issue. "__aarch64_cas4_sync undefined symbol". I asked Sam and
88 >>> he said it probably was a distcc issue. Because of me not wanting to
89 >>> run into this again I tried the aarch64-gentoo-linux-musl-emerge
90 >>> wrapper instead. This worked for the most part, but I had trouble
91 >>> with
92 >>> copying over my phones configuration to /usr/.../etc/portage.
93 >>> I then learned about the ROOT, SYSROOT, and PORTAGE_CONFIGROOT
94 >>> variables. Toghether with sshfs I could easily emerge packages for
95 >>> the
96 >>> phone on my PC without using something slow like qemu-user, nice!
97 >>> I emerged a lot of packages like this and noticed that the program
98 >>> dispatch-conf did not honour the variables. This was easy to fix and
99 >>> I
100 >>> PR:ed it here https://github.com/gentoo/portage/pull/881.
101 >>>
102 >>> I have also created a lot of ebuilds for Mauikit apps, these are
103 >>> cross
104 >>> platform KDE applications that look great on smaller devices like
105 >>> phones. https://github.com/gentoo/kde/pull/910/commits. They also
106 >>> work
107 >>> great on my PC.
108 >>>
109 >>> All in all I've spent most my time this week working on the
110 >>> PinePhone,
111 >>> and the two following weeks I'll do a lot of testing for the KDE
112 >>> applications.
113 >>>