gnu-linux-libre
[Top][All Lists]
Advanced

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

Re: [GNU-linux-libre] Guix and FSDG


From: Denis 'GNUtoo' Carikli
Subject: Re: [GNU-linux-libre] Guix and FSDG
Date: Tue, 26 Nov 2019 16:14:40 +0100

On Wed, 20 Nov 2019 14:10:38 -0500
Raghav Gururajan <address@hidden> wrote:
> If we take the package
> definitions, that is were issue rises. When no substitutes are
> available or when the program/software is chosen to be built, guix on
> the user's system does this: downloads source directly from upstream
> (along with non-free parts if it contains), then strips out non-free
> parts (if any), then builds and installs binaries. So these package
> definitions, contains information/lines-of-code, that steer users or
> refer to third-party repositories, to obtain
> information/code/program/software that can contain non-free parts.
> Therefore, Guix DOES violate FSDG in this aspect.
Parabola does it this way: The PKGBUILD contains instruction to
download and cleanup upstream sources. The PKGBUILD, corresponding
cleaned up source code and package are published. This is really neat
as it enables Parabola not to have to redistribute any problematic
source code or binaries.

The issue is that it's not always possible to do that. For instance you
need a package manager to be able to do that in the first place. Not
all free software projects have package managers.

A big question is also what steering users to proprietary software
means. If I mention that Parabola is based on arch, does that really
steer users toward installing arch? I don't think it does in practice.

From the FSDG[1]:
> A free system distribution must not steer users towards obtaining any
> nonfree information for practical use, or encourage them to do so.
> The system should have no repositories for nonfree software and no
> specific recipes for installation of particular nonfree programs.

Here's the definition of "steer"[2]:
> (transitive) To maneuver or manipulate a person or group into a place
> or course of action.
Example:
> Hume believes that principles of association steer the imagination of
> artists.

So I don't think that merely having a patch to fix freedom issue steers
people into removing the patch.

Now for this part is unclear for me:
> Nor should the distribution refer to third-party repositories that are
> not committed to only including free software; even if they only have
> free software today, that may not be true tomorrow. Programs in the
> system should not suggest installing nonfree plugins, documentation,
> and so on.

Referring means[3] things like:
> (transitive) To direct the attention of.
Example:
> The shop assistant referred me to the help desk on ground floor.
Or:
> (intransitive, construed with to) To allude to, make a reference or
> allusion to.
Example:
> To explain the problem, the teacher referred to an example in
> another textbook.

If I understand refer through the definition of the wiktionary, I can
infer that no FSDG compliant repository can be mentioned.
There are some cases where it's really hard to avoid doing that, for
Example:
> This code is based on radeon_r300.c in git://[url of repo] from the
> v5.0.1 branch.

And I guess/hope that the FSDG doesn't consider merely mentioning a
repository as an issue to fix.

If refer instead means that the user is either steered in some ways
toward using another repository or that the repository is configured by
default (refer?) that's understandable, but it could be made more clear.

What about the following instead:
> Nor should the distribution steer users to the use of third-party
> repositories that are not committed to only including free software;

Here I'm assuming that cleaning up and forking that third party
repository doesn't constitute as using it.

References:
-----------
[1]https://www.gnu.org/distros/free-system-distribution-guidelines.html
[2]https://en.wiktionary.org/wiki/steer
[3]https://en.wiktionary.org/wiki/refer

Denis.

Attachment: pgpou6yWjf3JE.pgp
Description: OpenPGP digital signature


reply via email to

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