guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Looking to contribute


From: Danny Milosavljevic
Subject: Re: Looking to contribute
Date: Wed, 28 Jun 2017 15:49:43 +0200

Hi and welcome,

On Tue, 27 Jun 2017 18:16:08 -0400
address@hidden wrote:

> What is the current state of GuixSD? Is it currently too buggy or
> feature-deficient to use as a day-to-day os?

I'm using it every day, also for professional programming.

It's quite okay to use.  There are occassional problems - which can be 
mitigated by the feature below:

If there are bugs on system update, you can roll back by selecting another 
entry in the bootloader menu (a new one is created everytime you reconfigure 
the system).  This includes all the installed packages (!!!!).  So it's pretty 
much indestructible - I think that this is the killer feature of GuixSD.

Check the package list https://www.gnu.org/software/guix/packages/ for 
information on which packages are available.

Note that a normal GuixSD system takes at least 80 GB of disk space (it will 
suck), better 160 GB (that will work very nicely).  That mostly because of the 
rollback feature.

> How can I best contribute?

If you want to install GuixSD there's a "wip-installer" (WIP means "work in 
progress") branch on git <https://git.savannah.gnu.org/git/guix.git>.  If you 
just want to test the finished installer please download 
http://web.fdn.fr/~lcourtes/software/guix/guixsd-graphical-installer-x86-64-linux.lz
 and unpack it by invoking "lzip -d guixsd*.lz".  This results in a disk image 
that you can flash onto a USB flash drive (don't copy it as a file unto the 
filesystem on the flash USB drive - rather replace the entire drive by it).

It has quite a few rough edges so don't expect Ubuntu-style usability (yet).

If you do try the installer, it would be good if you noted which areas suck :)

I think you should contribute in an area that you care about.  There's plenty 
to do.  For example:

Installer:
- Currently, the installer invokes the parted executable for partitioning which 
is quite jarring (it looks very different).  It would be nice if it just used 
the parted library.  But there's no good guile-parted yet.  I've started 
hacking on one and it's starting to look OK but it's not done.  If you are 
interested in that I can upload it somewhere (github, gitlab etc).
- No mouse support yet.
- We have ISO9660 CD support code so it would be quite easy to make it so that 
the image file for the graphical installer (see link above) also worked if you 
burned it to a CD.  See threads mentioning "grub-mkrescue" on the mainling list.

Bootloader:
- The bootloader support code doesn't support booting Windows systems etcetc.
- There's no u-boot installer yet.  (There's support for using existing u-boot 
but it doesn't install the u-boot bootloader itself yet.  That's because doing 
that safely is very difficult)

Packages:
- Texlive for a long time was a 2 GB download which was done every time one of 
the dependencies changed.  It's better now but there are still situations where 
it does that.  It should be more modular so the downloads aren't that large 
(and not done as often).
- Rust is not the newest version because they changed the build system they use 
(sigh...) and I didn't get it to work yet.
- Our packaging is such that each package goes into its own directory 
/gnu/store/3523523643262hashvaluehere WHICH IS READ-ONLY, you can't possibly 
write there.  But dub, the D package manager, sometimes tries to do that and 
fails.  This is a design limitation in the D package manager (it has so-called 
"configurations" and if you switch configurations it will try to switch 
symlinks) but it means you can't run many of the D tests.  Fixing that in dub 
would be great.
- The GUI hooks for desktop files and mime types suck.  Usually, the desktop 
file database is updated much too late (mostly by accident).  I've looked into 
fixing it but it would entail rebuilding almost all the graphical packages we 
have - and I think KDE would still not do it correctly.

Some of the areas I work in are mostly bootloader, filesystem and partitioning 
stuff - which happen to be the areas where I have to be quite careful about not 
breaking the killer feature.  If you like that anyway, please help us with it :)

What are your interests?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]