unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Simplified release process
@ 2017-05-10 12:31 Ludovic Courtès
  2017-05-10 12:52 ` Ricardo Wurmus
  0 siblings, 1 reply; 2+ messages in thread
From: Ludovic Courtès @ 2017-05-10 12:31 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1441 bytes --]

Hello Guix!

The release process as documented in doc/release.org was terrible
because it involved a lengthy sequence of error-prone manual steps.

Commit 334dce145122683e576ca4cb6c68c360d4aada7e adds a ‘release’
makefile target.  “make release” produces the source tarball, the binary
tarballs, and the GuixSD installation images, which can then be directly
uploaded.  Offloading must be set up to build binary tarballs for all
the architectures.

This involves building Guix a couple of times for each architecture so
it takes time.  *If* Guix’s build process is deterministic, that’s OK,
though it seems that Guix occasionally fails to build in a
non-deterministic fashion (that was the case with Guile 2.0 in part due
to non-thread-safe ports I think; 2.2 has thread-safe ports, so it might
be better.)

Anyway, I would welcome feedback especially from you Ricardo since you
felt the pain before.  :-)  An easy way to test is by building for a
single architecture:

  make release -j4 SUPPORTED_SYSTEMS=x86_64-linux \
    GUIXSD_SUPPORTED_SYSTEMS=x86_64-linux

Note that this will make a couple of commits on your behalf, to update
the ‘guix’ package, so be careful.

I’m also interested in thoughts on how to automate other bits from the
release process, though they are probably less critical:

  https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/doc/release.org

Ludo’.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Simplified release process
  2017-05-10 12:31 Simplified release process Ludovic Courtès
@ 2017-05-10 12:52 ` Ricardo Wurmus
  0 siblings, 0 replies; 2+ messages in thread
From: Ricardo Wurmus @ 2017-05-10 12:52 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel


Ludovic Courtès <ludo@gnu.org> writes:

> Hello Guix!
>
> The release process as documented in doc/release.org was terrible
> because it involved a lengthy sequence of error-prone manual steps.
>
> Commit 334dce145122683e576ca4cb6c68c360d4aada7e adds a ‘release’
> makefile target.  “make release” produces the source tarball, the binary
> tarballs, and the GuixSD installation images, which can then be directly
> uploaded.  Offloading must be set up to build binary tarballs for all
> the architectures.

Thank you so much!  This is great!

> Anyway, I would welcome feedback especially from you Ricardo since you
> felt the pain before.  :-)  An easy way to test is by building for a
> single architecture:
>
>   make release -j4 SUPPORTED_SYSTEMS=x86_64-linux \
>     GUIXSD_SUPPORTED_SYSTEMS=x86_64-linux
>
> Note that this will make a couple of commits on your behalf, to update
> the ‘guix’ package, so be careful.

I’m going to give this a try soon.

> I’m also interested in thoughts on how to automate other bits from the
> release process, though they are probably less critical:
>
>   https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/doc/release.org

I’ll take a look at this again after testing the release target.

Thanks again for all the hard work!

-- 
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-05-10 12:52 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-10 12:31 Simplified release process Ludovic Courtès
2017-05-10 12:52 ` Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).