mbox series

[bug#40601,RFC,0/28] guix-install.sh: port to other distros & init systems

Message ID 12af851d-73b6-5865-8950-857c2158d41e@gmail.com
Headers show
Series guix-install.sh: port to other distros & init systems | expand

Message

Vincent Legoll May 17, 2020, 5:15 p.m. UTC
Hello,

Here is a RFC series of patches that add a few things:

- small fixes & cleanups
- removing some (not all) bashisms
- non-interactive mode (useful for (semi-) automated
   testing)
- openrc init system support
- runit init system support
- busybox compatibility (for alpine support)
- handle local guix-binary.${ARCH}.tar.xz file (useful
   for (semi-) automated testing)
- requirements fixes

It currently has been tested on a range of distros/arches
but the latest patches are still not polished (missing
proper commit messages)

The series is RFC as a few questions remain for me:

- Do we want to support alien (aka foreign++) distros
   (different shells, different init systems, etc...)
- To what extent
- Are the patches too fine-grained (I personally like
   them smallish)

Future, additionnal work items:
- s6 (adelie / obarun) init support
- handle GPG downloading in non-interactive mode
- being able to cross-build & test them on other
   arches again (dunno why it broke)
- documentation
- add missing guix-publish services
- add missing RO remounting the store on other distros
- removing allremaining bashisms (being shellcheck clean
   maybe ?)

This is to gather input before investing too much time.

For example, do we want to commit part of this now, with
the rest coming later ?

Any feedback ?
On individual patch(es) or on the whole series goal...

Thanks for reading this far.

Comments

Julien Lepiller May 17, 2020, 7:26 p.m. UTC | #1
Le 17 mai 2020 13:15:46 GMT-04:00, Vincent Legoll <vincent.legoll@gmail.com> a écrit :
>Hello,
>
>Here is a RFC series of patches that add a few things:
>
>- small fixes & cleanups
>- removing some (not all) bashisms
>- non-interactive mode (useful for (semi-) automated
>   testing)
>- openrc init system support
>- runit init system support
>- busybox compatibility (for alpine support)
>- handle local guix-binary.${ARCH}.tar.xz file (useful
>   for (semi-) automated testing)
>- requirements fixes
>
>It currently has been tested on a range of distros/arches
>but the latest patches are still not polished (missing
>proper commit messages)
>
>The series is RFC as a few questions remain for me:
>
>- Do we want to support alien (aka foreign++) distros
>   (different shells, different init systems, etc...)
>- To what extent
>- Are the patches too fine-grained (I personally like
>   them smallish)
>
>Future, additionnal work items:
>- s6 (adelie / obarun) init support
>- handle GPG downloading in non-interactive mode
>- being able to cross-build & test them on other
>   arches again (dunno why it broke)
>- documentation
>- add missing guix-publish services
>- add missing RO remounting the store on other distros
>- removing allremaining bashisms (being shellcheck clean
>   maybe ?)
>
>This is to gather input before investing too much time.
>
>For example, do we want to commit part of this now, with
>the rest coming later ?
>
>Any feedback ?
>On individual patch(es) or on the whole series goal...
>
>Thanks for reading this far.

Nice series! I think we want to support as many foreign (init, shell, …) distros as possible.

You might want to consider fixing bug #41266. I also found out that daemonize is required on sysv systems.
Vincent Legoll May 17, 2020, 7:37 p.m. UTC | #2
> Nice series! I think we want to support as many foreign
> (init, shell, …) distros as possible.

OK that makes at least 3 of us

> You might want to consider fixing bug #41266.

Ah, nice, that shows that my testing rig is still missing
cases, I only run everything directly as root (for which
I pre-import the key), so the problem slipped through.

Another one for the TODO list.

> I also found out that daemonize is required on sysv systems.

Yep, I've seen it, but forgot to add it to the TODO list, it's
now.

Thanks, this will end in a ~50-patches series ;-)