unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Guix and FSDG
@ 2019-11-20 10:02 Raghav Gururajan
  2019-11-22 14:59 ` ng0
  2019-11-22 17:03 ` Thompson, David
  0 siblings, 2 replies; 13+ messages in thread
From: Raghav Gururajan @ 2019-11-20 10:02 UTC (permalink / raw)
  To: FSF Info, gnu; +Cc: guix-devel, dev, rms

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

Hello FSF and GNU!

I came across, a discussion, in #fsf IRC channel, regarding GNU Guix
project and it's non-compliance with FSDG. Here, in this email, I would
like to express my thoughts, about what the situation is and how it can
be rectified. Please consider reading this email to the end.

Guix, as a free software, doesn't pose any confusion. It is completely
licensed as free software and respects/provides all the four freedoms.
Guix, as a free system distribution, does pose some confusion, whether
or not it violates Free System Distribution Guidelines (FSDG). The
concerns regarding Guix and FSDG, floats around two aspects. (a)
Distribution of non-free information/code/program/software and/or (b)
Facilitation of non-free information/code/program/software.

(a) Distribution of non-free information/code/program/software:
Guix distributes two main things, that are, (i) Package Definitions
(Scheme Code) and (ii) Subsitiutes (Pre-Built Binary). If we take
Package Definitions, it does not include any definitions for non-free
software/programs and any definitions itself does not contain any non-
free code. If we take the Substitutes, it does not include any binary
for non-free software/programs. Therefore, Guix DOES NOT violate FSDG
in this aspect.

(b) Facilitation of non-free information/code/program/software:
As per FSDG, free system should neither steer users nor refer to third-
party repositories, to obtain information/code/program/software that
can contain non-free parts. Let's consider the same two main things
provided by Guix, that are, (i) Package Definitions (Scheme Code) and
(ii) Subsitiutes (Pre-Built Binary). If we take substitutes,they are
pre-built binaries, built on the guix build farm, where the source is
obtained, de-blobbed (if required) and compiled. Since guix provides
substitutes only for free software/programs, there is no facilitation
of non-free information/code/program/software here. 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.

But should the current FSDG be revised? Growth requires change.
The current FSDG was constructed based on conventional approaches to
free system distributions. That is, a conventional distrubution
distributes free source code (obtained from upstream and de-blobbed)
and/or pre-built binaries built from de-blobbed source code. So there
is no need for a free system to steer users or refer to third-party
repositories, to obtain information/code/program/software that can
contain non-free parts. But guix, instead of distributing free or de-
blobbed source code, it distributes package definitions and scripts,
which gives user the choice to either obtain pre-built binary from guix
or to build directly from source via de-blobbing, on the user's system.
Thus, due to this new approach, there is a need for guix system to
steer users or refer to third-party repositories, to obtain
information/code/program/software that can contain non-free parts.
However, this DOES NOT pose any threat to free software movement or to
freedom of users. In fact, the user is given more freedom of choice to
build programs directly from source and perform their computing (de-
blobbing and building) on their own system instead of soely relying on
distribution's build farm. This new approach by guix, provides users a
favourable platform and oppurtunity, to build a whole free system
completely from scratch, even when no/zero pre-built binaries are
available. This is not a threat to software freedom, this is excersing
software freedom in a higher level. Therefore, I request the FSDG to be
revised, to allow codes/programs in a free system to obtain source code
containing non-free parts, ONLY for the purpose of de-blobbing and/or
building; provided that respective codes/programs (1) are itself free
(2) gives output that are always a free
information/code/program/software and (3) should not contain options to
obtain non-free information/code/program/software as output (Eg. --
disable-cleaning or --skip-deblobbing).

I can see two ways to end the confusion between Guix and FSDG, once in
for all. Either the FSDG remains unchanged and Guix gets removed from
the FSD list (or) the FSDG gets revised and Guix remains on the FSD
list. I am inclined to the latter, however, I am open to hear how the
former could be a better option.

I request administration/management of FSF and GNU, to make a joint
conclusion, at the earliest convenience.

Thank you!

Regards,
RAGHAV GURURAJAN.
(Free Software User and Supporter)

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

end of thread, other threads:[~2019-11-26  8:45 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-11-20 10:02 Guix and FSDG Raghav Gururajan
2019-11-22 14:59 ` ng0
2019-11-22 15:26   ` ng0
2019-11-22 17:03 ` Thompson, David
2019-11-22 19:20   ` Raghav Gururajan
2019-11-22 20:26     ` Thompson, David
2019-11-23  1:22   ` Clément Lassieur
2019-11-23 10:27     ` Giovanni Biscuolo
2019-11-23 10:54       ` Clément Lassieur
2019-11-23 17:59         ` Ludovic Courtès
2019-11-25 21:39           ` zimoun
2019-11-26  8:33         ` Giovanni Biscuolo
2019-11-23 10:04   ` Giovanni Biscuolo

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).