[Arm-netbook] parabola arm gnu.linux up and running with xfce4

Paul Boddie paul at boddie.org.uk
Sat Jul 2 18:45:19 BST 2016


On Tuesday 21. June 2016 20.31.06 Luke Kenneth Casson Leighton wrote:
> 
> On Sun, Jun 19, 2016 at 8:20 PM, Paul Boddie <paul at boddie.org.uk> wrote:
> > 
> > https://wiki.parabola.nu/MIPS_Installation
> > 
> > Maybe that could be revived in some way for the Ingenic jz4775 (albeit as
> > mipsel, not mips64el). It appears that the developers just ran out of
> > hardware.
> > 
>  :)
> 
>  well i'll have some up and running when i find the time so that's a
> problem that can be solved, fortunately.
> 
>  talk's in half an hour, gotta go.

I had a bit more of a look at various distributions today, and it is actually 
rather annoying to try and find details of how *any* of the major 
distributions and their derivatives build their packages from source in bulk 
(apart from in-the-know references to things existing in various distribution 
infrastructures).

Anyway, amongst the FSF-endorsed distributions I had a look at Parabola, 
Trisquel, gNewSense and GuixSD. Sorry for omitting any GNU prefixes/suffixes 
and "Linux" from the names. ;-)

Parabola
--------

https://www.parabola.nu/

Parabola is based on Arch Linux and did support mips64el, but it appears to 
only target Intel and ARM at the moment. I don't have much familiarity with 
the Arch tools, but I'm guessing that libretools and abslibre are the key 
components here:

https://wiki.parabola.nu/Category:Libretools

https://projects.parabola.nu/abslibre.git/

Unfortunately, all the documentation assumes that you're running Arch already, 
and although there seems to be a "pacstrap" tool (like debootstrap, I guess), 
it doesn't seem to be as straightforward to get started as with a Debian 
installation, although I am a bit spoiled here with some tools I have to 
quickly populate Debian chroots. More information on the pacstrap method here:

https://wiki.archlinux.org/index.php/Install_from_existing_Linux

I'd want to cross-compile packages, which is apparently done for certain 
architectures using distcc:

https://wiki.parabola.nu/Cross-toolchain_and_distcc

But I don't want to have to run a native system to coordinate the build, which 
is what this entails.

Trisquel
--------

https://trisquel.info/

Trisquel is based on Ubuntu Linux but Ubuntu doesn't support MIPS 
architectures these days. This is somewhat unfortunate because once you start 
digging it appears to be possible to find some of the central tools used to 
make Trisquel, and development activity appears to remain high:

https://devel.trisquel.info/groups/trisquel

gNewSense
---------

http://www.gnewsense.org/

gNewSense was based on Ubuntu but is now based on Debian - I think gNewSense 
and Trisquel may have traded places once upon a time - and although it doesn't 
look like much development is taking place, there are signs that another 
release may happen at some point. The last release happened this year (after 
being over a year in the making) and covers MIPS as well as Intel architecture 
flavours:

https://savannah.nongnu.org/forum/forum.php?forum_id=8535

After some digging, the tools involved can be found - Savannah seems to be the 
real centre of activity - but there appears to be uncertainty about the best 
way of filtering and repackaging Debian, meaning that there isn't a 
straightforward path to a new release. Anyway, the tools appear to be here:

http://bzr.savannah.gnu.org/lh/gnewsense/

Here's a thread about the situation:

http://lists.nongnu.org/archive/html/gnewsense-dev/2016-05/msg00000.html

GuixSD
------

https://www.gnu.org/software/guix/

GuixSD is a bit different from other distributions and relies on some kind of 
transactional package manager known as Guix. However, it appears to support 
mips64el as well as ARM and Intel architecture flavours:

https://www.gnu.org/software/guix/manual/html_node/GNU-Distribution.html

What encouraged me was that after not that many links I found pages talking 
about bootstrapping and porting:

https://www.gnu.org/software/guix/manual/html_node/Bootstrapping.html#Bootstrapping

https://www.gnu.org/software/guix/manual/html_node/Porting.html#Porting

There may be scary diagrams, but at least the authors feel the need to 
document such issues coherently. And the indication that guix knows how to 
cross-compile packages is reassuring, although we have to see whether this 
will work in practice.

----

So I'm currently looking to see what can be done with Guix and cross-
bootstrapping for mipsel. Maybe I won't get very far, but it will at least 
test the feasibility of getting an existing FSF-endorsed distribution onto 
mipsel. I'll also see what can be done with Parabola, but I imagine it being 
even harder work.

I did hear reports of how great Devuan's build infrastructure is supposed to 
be, but I didn't find any documentation for it. Maybe someone here could point 
me to an informative reference.

Paul



More information about the arm-netbook mailing list