Re: [GNU-linux-libre] Recognizing the GNU system as a free distro
Sam Geeraerts sam...@elmundolibre.be skribis: Op Wed, 11 Sep 2013 14:05:35 +0200 schreef l...@gnu.org (Ludovic Courtès): [...] The distro obviously contains only free software, and it follows the FSF free system distribution guidelines [2]; it is not based on any existing distribution. Package contributors perform a license and copyright check on the packages they add. Package meta-data records the license of each package [3]; we do not keep track of copyright notices on a per-file basis like Debian’s copyright files do. Note that some packages may contain non-free files (e.g. [a]), regardless of the license of the whole. There are also freedom issues that are unrelated to the license of the code, e.g. encouraging the use of non-free software [b]. I see that your packaging guidelines mention these issues, but I thought I'd mention it anyway. Sure. Our build recipes remove problematic files, and would likewise patch non-free software recommendations (though the latter hasn’t occurred yet.) Guix has one specificity, which is that by default users get pre-built binaries from hydra.gnu.org, but they can also choose to build things locally. In the latter case, as Jason mentions, Guix downloads the source tarball from upstream, and the actual patching occurs as an early stage of the build process. Jason suggests hosting pre-patched source tarballs of problematic packages, and referring to those rather than to upstream’s. I’m reluctant because of the technical and administrative burden it entails: we’d need an out-of-band mechanism to maintain patches/scripts, said patches/scripts would have to be reviewed separately, contributors would need to have the necessary credentials to upload patched tarballs, etc. (Besides, our package meta-data would probably still refer to the “real” home page of the package, from which it’s trivial to get the unmodified tarball.) What do people think? Thanks, Ludo’.
Re: [GNU-linux-libre] Recognizing the GNU system as a free distro
Ludovic Courtès said: I'm reluctant because of the technical and administrative burden it entails I suppose another option is to leave out problematic packages entirely. Otherwise, welcome to the world of being an FSF-endorsed distro. :) Besides, our package meta-data would probably still refer to the real home page of the package, from which it's trivial to get the unmodified tarball. I think the question isn't whether or not the users of a distro can leave their distro's infrastructure and install non-free or other programs on their own. Rather, it seems more a question of if the programs that the users finds through the distro are themselves FSDG-compliant [0]. I agree with what Sam said regarding Parabola back in 2011 [1] that: Consider that the software is really the source code and that the binaries are just the usable machine-readable form of it. Both source code and binaries should be free (the latter follows from the former if all is well). ... providing non-free software + user executable freedom patch is not what a free distro should be doing, IMO. Ludovic Courtès said: we'd need an out-of-band mechanism to maintain patches/scripts, said patches/scripts would have to be reviewed separately, contributors would need to have the necessary credentials to upload patched tarballs, etc. I think some of this can be automated and minimized. Trisquel, for example, uses what they call Helpers [2]. As new versions are pulled in from Ubuntu the corresponding package helper is run, if one exists for that package. That helper is responsible for making any changes that are needed to the source code and repackaging it before it is moved into the Trisquel repositories to be compiled. In this way the users of the distro always have access to FSDG-compliant source code packages. Is there some automated method in which Guix checks for new versions from upstream? Perhaps this could be extended such that, for certain programs, they're run through some script to clean them up in a similiar automated fashion to Trisquel? The gnupload script [3] could then be used to upload them to, say, the GNU FTP server? (Perhaps in the non-gnu area?) In this way the process that checks for new versions handles the actual work. People contributing to Guix only need access to the version control system to maintain the helper for that program. [0] http://www.gnu.org/distros/free-system-distribution-guidelines.html [1] http://lists.nongnu.org/archive/html/gnu-linux-libre/2011-01/msg00045.html [2] https://trisquel.info/en/wiki/package-helpers\ [3] http://git.savannah.gnu.org/cgit/gnulib.git/tree/build-aux/gnupload