[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GuixSD on arm
Re: GuixSD on arm
Tue, 5 Jul 2016 08:18:28 +1000
On Mon, Jul 04, 2016 at 05:14:56PM +0000, ng0 wrote:
> t3sserakt writes:
> > Hi Ludo,
> > I would like to help, but I have no idea where to start.
> > I am "just" an application developer, and do not have
> > the right knowledge for doing this task alone.
> > Additionally to that I am busy with helping the
> > secushare (gnunet) project.
> > But if there is somebody who knows in more detail
> > what to do, I can help.
> I think Jookia was working on this.. or still is.. I am unsure
> about the state of Jookia's work.
> I'll CC Jookia and we'll see if this thread gets an reply.
> Additionally I CC'ed you t3ss because I don't know if you are
I started on an ARM port a few months ago with the intention of running the
system on my Novena, but eventually gave up given the hard development cycle.
I haven't talked about this before but I don't expect many people to read this
email, so here goes. The main pain points were these:
- Patches would get lost regularly.
This is probably the biggest issue, and from reading the mailing list it doesn't
seem to be solved. There was an attempt at adding a patch tracker but I guess
that was lost too. I suggested at some point to use a newer version of Mailman
which would help this, but the developers didn't think it useful. The suggested
way to fix this is to reply and get people's attention about your patches again.
I'm not cut out to what feels like nagging people when I don't know the reasons
why they haven't replied. Perhaps this is how things work in other systems, but
as someone that suffers from social anxiety and finds it hard enough to even
send patches I can't deal with this, and Guix seems to be doing fine without me.
- Feedback is little to none.
As patches were lost and most discussion was done on the mail list, there was
basically no discussion on patches or design problems. After getting Guix to
boot on my Libreboot machine I went to work on fixing issues with the boot
system, such as adding support for legacy Libreboot systems and encrypted
bootloaders. This was lost.
I also did some work to get LVM+LUKS working on Guix and tried to spark a
discussion in to fixing the design issues in system configuration. I think there
was about one reply, and it was lost.
Some of the work that I did do and in fact got in somewhat by proxy is GTK+
theming. There's a habit of maintainers fixing things themselves rather than
taking patches, which I feel is a further hindrance to actually working on Guix.
This gives me the impression that Guix doesn't have enough maintainers to
sustain people doing new development upstream, want to do things themselves, or
the project is just bad at communication.
- GNUness over pragmatism.
The main issue I had with doing an ARM port is the bootloader, and this is
because everyone I spoke to except Ludovic seemed to be hesitant towards using a
bootloader other than GRUB. Looking at the code base, I'd need to do make things
less GRUB-specific which I was happy to do, but I didn't want to do it wrong or
end up with my work ignored or thrown away.
To be concrete, the conversation generally went like this: "To get the Novena
booting Guix I'll need to add support for U-Boot as a bootloader." "I've heard
GRUB works on ARM, have you tried that?" "Yes, it doesn't work from what I've
tried." "Perhaps you've done it wrong." "I can't rule that out, but GRUB on ARM
is still early work compared to U-Boot (which GRUB uses) and it'd work for more
boards." then the conversation would drop off.
I have a distinct feeling this is due to a bias in building "the GNU system"
rather than building a fully free Guix-based system. I was originally going to
do a fork of Guix with my own changes that people could download, but in the end
I just went back to NixOS which runs happily on my Novena and my Libreboot
machine. The only reason I wanted to use Guix was so I could contribute patches
upstream and not maintain ones locally like I do with NixOS.
This experience has put me off of Guix, GNU and free software development. I
don't blame any one, but more a system that doesn't incorporate people like me.
I'm not going to elaborate more on this, I just had to get it off my chest.
I'm willing to send you code and help you with what I've done: It's mostly
reworking the bootloader. There's no ARM support yet, but I did identify the
points that need changing.