emacs-devel
[Top][All Lists]
Advanced

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

Re: [PROPOSAL] Builder, a build system integration for Emacs


From: Richard Stallman
Subject: Re: [PROPOSAL] Builder, a build system integration for Emacs
Date: Wed, 31 May 2023 18:28:43 -0400

[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  >   Richard is asking for facts,

I appreciate the factual information you're giving me.

                                   your categorical judgements are out of 
  > place here.

Maybe, but maybe not.  The reason these facts are important is for
figuring out what the GNU criteria for a free distro imply about a
distro containing Cargo.  The criteria are stated in
https://gnu.org/distros/free-system-distribution-guidelines.html.

Maybe Po Lu is familiar with these criteria and is anticipating our
conclusions.

  > Typing "cargo install cargo-deny" is all you need to install it.

To qualify as a free distro, the distro should even invite the user to
link the user's programs with nonfree software.  It must not invite
the user ti set a flag to permit that.  It must not offer to include
nonfree software virtually in the installation.

Of course, given free software the users can always change it and
override anything.  A free system cannot stop you from making any
change you choose to make.  If you want to install some nonfree
packages and put them into the libraries to use by default, you can.

But the free distro should not offer a shorthand way to do that.

So, what can we conclude about cargo-deny?

First, what the precise default behavior of cargo-deny?  Is its
default action to reject anything listed on crates.io with a nonfree
license?  If so, there might be an error in crates.io and some nonfree
package might be listed as free.  We need to have a way to override
that listing.

Second, installation of cargo-deny should be automatic.  It's not good
enough to tell users, "Don't forget to install cargo-deny so that your
system doesn't virtually contain nonfree Rust libraries!"

Third, I am not sure whether just installing cargo-deny is robust
enough as a way to exclude nonfree packages from our distro.
Installing (in a virtual sense) all the nonfree Rust packages should
not be so easy as deleting one file.

Maybe we should rename Cargo to Embargo and patch it so that it always
runs cargo-deny.  We could make a symlink from `cargo' to `embargo'
so that scripts don't break.

But we might develop free replacements for some of those nonfree
libraries.  We would want our version of Cargo to see them and use
them rather than the nonfree ones in crates.io.  We might want to
make asite free-crates.io which contains only the free packages
and make Cargo use that instead.

free-crates.io could implement a virtual copy, so that after the
list of its own packages (which will all be free), it would look
in crates.io and use the free packags found there.






-- 
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)





reply via email to

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