Re: [GNU-linux-libre] Recognizing the GNU system as a free distro

2013-09-14 Thread Ludovic Courtès
k...@freefriends.org (Karl Berry) skribis:

 So, do we want ‘guix build --source’ to return the already-patched,
 FSDG-compliant source?

 It should return exactly the sources which actually got built -- which I
 gather, though I'm not sure, is not necessarily the same as unmodified
 upstream?  Or rather, the most natural way for people to get sources
 (e.g., using the same channel as the binaries they got) should result
 in them getting the sources that got built to make those binaries.

I agree that the current behavior of ‘guix build --source’ is
unsatisfying.

That it currently returns the unmodified upstream tarball is more a
consequence of how things are implemented: during the build process,
after the tarball is unpacked, a ‘patch’ phase is run (this is where
distro-specific, fixes, and freedom-related changes are made.)

‘guix build --source’ should be changed to return the result of applying
that ‘patch’ phase to the upstream tarball.  WDYT?

 That's the whole requirement of distributing the binaries under the GPL,
 after all.  Not related to FSDG specifically.  I know you know this, so
 I'm rather puzzled by what's going on.

As I explained during my GHM talk, Guix furthers the spirit of the GPL
in that it provides the /complete/ build recipe that led to the
binary–“complete” means that it includes build scripts, patches,
compilers, libraries, etc., recursively.

When users do ‘guix package --list-available’, they are given the file
name of the recipe, which allows them to check precisely how things are
patched and built.

So I think the issue is really about how things are presented to the
user.  Part of the issue probably comes from the fact that Guix works
differently than binary-only distros.

Thanks for your feedback!

Ludo’.



Re: [GNU-linux-libre] Recognizing the GNU system as a free distro

2013-09-14 Thread Sam Geeraerts
Op Sat, 14 Sep 2013 15:01:13 +0200
schreef l...@gnu.org (Ludovic Courtès):

 My understanding is that Debian-based distros provide the unmodified
 upstream source, with a debian/patches tree containing patches they
 apply.  Do I get it right?

For gNewSense we do as follows. If the software recommends non-free
software then 'apt-get source' will give you the unmodified upstream
source + a debian/patches tree with a fix to remove the reference. If
the upstream source contains blobs or non-free code then 'apt-get
source' will give you the upstream source without the troublesome bits
(+ a debian/patches tree if there are also issues like the former).



Re: [GNU-linux-libre] Recognizing the GNU system as a free distro

2013-09-14 Thread Jason Self
Ludovic Courtès said:
 Yes, I understand this, but my question was more about how this occurs
 technically.

 My understanding is that Debian-based distros provide the unmodified
 upstream source, with a debian/patches tree containing patches they
 apply.  Do I get it right?

Ah, I see. In the case of, say, the Linux kernel it's not really
possible to provide the unmodified source code because that would mean
Trisquel would be distributing that non-free software. So, their
orig.tar.gz isn't the unmodified upstream source but rather the
deblobbed version.


Re: [GNU-linux-libre] Recognizing the GNU system as a free distro

2013-09-14 Thread Karl Berry
œôòøguix build --sourceœôòù should be changed to return the result of 
applying
that œôòøpatchœôòù phase to the upstream tarball.  WDYT?

Sounds right.

in that it provides the /complete/ build recipe that led to the
binaryœôòóœôòücompleteœôòý means that it includes build scripts, patches,
compilers, libraries, etc., recursively.

Very nice.

Thanks,
k