From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: ELPA submission: mathjax.el Date: Sat, 26 Oct 2024 01:46:20 -0400 Message-ID: References: <87ldytjso0.fsf@gmail.com> <87bjzbi8pj.fsf@posteo.net> <87ed466dpe.fsf@gmail.com> Reply-To: rms@gnu.org Content-Type: text/plain; charset=Utf-8 Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="25515"; mail-complaints-to="usenet@ciao.gmane.io" Cc: stefankangas@gmail.com, philipk@posteo.net, emacs-devel@gnu.org To: Augusto Stoffel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Oct 26 07:47:27 2024 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1t4Ze2-0006UD-QT for ged-emacs-devel@m.gmane-mx.org; Sat, 26 Oct 2024 07:47:26 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1t4Zd4-0004jF-HN; Sat, 26 Oct 2024 01:46:26 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t4Zd2-0004ie-N1 for emacs-devel@gnu.org; Sat, 26 Oct 2024 01:46:24 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t4Zd1-0000Jz-7Q; Sat, 26 Oct 2024 01:46:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=Date:References:Subject:In-Reply-To:To:From: mime-version; bh=hJkNv/LugqUAWx1dAu4GD1+jVB8DUOlypPbhyuO3F5g=; b=emlmrHX0Yldz 9hvi0gabfiBo3oSlMsrxge5RfhStnB5bAiG9r1yVQjLhh+/JXEcKCXdiCdRyQED4C6HihZ97yToET 2lDZHh3ZDL1nUzcmRVEeBGaIMUM8zG0JrmMcocMJnIh7E+ajLDLUxtSJWVUMBMXWoOdISXOJphzan xyZsKznXYQr432pP/9S58PTUDoZln1IjHK8s3lNv0JNTASb8eUPP5XlFaYgHKL76jRWIJvFcqBdzY 6H8x7vQxWdWILNOfRTGluJVQ9kv0eKIheG6J9lblm5lMdoIluycDXBxihIo0vTc9TevvUBG6MDpvS p9hst39jzZ1ZAgdyeeeaBA==; Original-Received: from rms by fencepost.gnu.org with local (Exim 4.90_1) (envelope-from ) id 1t4Zcy-0007l5-Jy; Sat, 26 Oct 2024 01:46:20 -0400 In-Reply-To: <87ed466dpe.fsf@gmail.com> (message from Augusto Stoffel on Wed, 23 Oct 2024 17:28:29 +0200) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:324844 Archived-At: [[[ 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. ]]] > A. If the build environment has Node/npm, all that is needed is to run > make math2svg.js. node.js is a collection of many Javascript programs, right? Are we sure that they are all free software? npm poses a deeper problem. I could be mistaken here, but ISTR that it contains lots of packages, some free and some not. If you use module Foo, and it is free, to link in dependenceies from npm, checking whether those dependencies are free or not is manual labor. If the situation is indeed like that, trying to use npm in the free world is asking to lose. We shouldn't enable access to it for ourselves, let alone suggest that someone else do so! If the situation is different from that, maybe that makes our situation better, but could you please explain the actual situation with npm? Do you have a list of the modules that mathjax depends on? > B. If the build environment can run containers, I can include a suitable > Dockerfile. Container systems in general present the same kind of pitfalls as npm: they put lots of free modules and lots of nonfree modules into a bucket and making sure you don't pull out any of the nonfree ones is your problem. I've been told there are important differences between the well-known container systems in this regard, and I don't remember how Docker stacks up. MAYBE if we consult a Docker expert we will find it can be used safely. But we had better study this carefully. System distributions include binary packages to speed installation. We can surely package mathjax this way somehow or other. But we must release sources with a build recipe too. If we include mathjax somehoe in Emacs, or in GNU in any way, we _must_ include a way to build it from source. That includes any special tools it needs. If the makefile to compile mathjax uses a container, it had better include the rules to build that container, manually specifying which modules to include in the container. Somewhere there must be rules to rebuild THOSE modules from source. -- 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)