From f31b6e096285451256d7a977b0e9ca22d23c082c Mon Sep 17 00:00:00 2001 From: Bhavin Gandhi Date: Sun, 13 Dec 2020 00:22:57 +0530 Subject: Add subtitles for talk 39 --- ...conf-2020--39-nongnu-elpa--richard-stallman.vtt | 472 +++++++++++++++++++++ 1 file changed, 472 insertions(+) create mode 100644 2020/subtitles/emacsconf-2020--39-nongnu-elpa--richard-stallman.vtt (limited to '2020/subtitles/emacsconf-2020--39-nongnu-elpa--richard-stallman.vtt') diff --git a/2020/subtitles/emacsconf-2020--39-nongnu-elpa--richard-stallman.vtt b/2020/subtitles/emacsconf-2020--39-nongnu-elpa--richard-stallman.vtt new file mode 100644 index 00000000..fd313f52 --- /dev/null +++ b/2020/subtitles/emacsconf-2020--39-nongnu-elpa--richard-stallman.vtt @@ -0,0 +1,472 @@ +WEBVTT + +00:00:00.320 --> 00:00:03.280 +Hello, I'm Richard Stallman, + +00:00:03.280 --> 00:00:08.080 +founder of the GNU project. In 1976, I + +00:00:08.080 --> 00:00:09.200 +developed the first + +00:00:09.200 --> 00:00:12.000 +Emacs editor with some help from Guy + +00:00:12.000 --> 00:00:13.440 +Steele. + +00:00:13.440 --> 00:00:15.839 +Then, shortly after starting to develop + +00:00:15.839 --> 00:00:19.119 +the GNU operating system in 1984, + +00:00:19.119 --> 00:00:22.240 +I wanted an Emacs editor for it. + +00:00:22.240 --> 00:00:24.640 +So I started writing GNU Emacs in + +00:00:24.640 --> 00:00:25.560 +September + +00:00:25.560 --> 00:00:29.519 +1984. + +00:00:29.519 --> 00:00:32.640 +Several years ago we decided to move + +00:00:32.640 --> 00:00:35.920 +many of the Emacs Lisp packages outside + +00:00:35.920 --> 00:00:36.559 +the core + +00:00:36.559 --> 00:00:39.760 +Emacs distribution into a separate + +00:00:39.760 --> 00:00:42.960 +package archive that we call the Emacs + +00:00:42.960 --> 00:00:43.280 +Lisp + +00:00:43.280 --> 00:00:46.480 +package archive ELPA. + +00:00:46.480 --> 00:00:48.719 +There were two main reasons for this. One + +00:00:48.719 --> 00:00:51.520 +is to make the Emacs distribution smaller + +00:00:51.520 --> 00:00:54.320 +so every user wouldn't have to get all + +00:00:54.320 --> 00:00:55.680 +the packages + +00:00:55.680 --> 00:00:58.320 +and install all the packages. And the + +00:00:58.320 --> 00:01:00.480 +other reason was to make it possible to + +00:01:00.480 --> 00:01:01.520 +release + +00:01:01.520 --> 00:01:04.559 +individual packages separately + +00:01:04.559 --> 00:01:08.880 +from Emacs releases. + +00:01:08.880 --> 00:01:13.119 +Now, at that point somehow we decided to + +00:01:13.119 --> 00:01:17.040 +support loading packages from + +00:01:17.040 --> 00:01:19.520 +a variety of different Emacs Lisp + +00:01:19.520 --> 00:01:21.119 +package archives + +00:01:21.119 --> 00:01:25.520 +and ours would be called the GNU ELPA, + +00:01:25.520 --> 00:01:29.280 +but ELPA could be any other. + +00:01:29.280 --> 00:01:32.079 +Now, I think that naming was a mistake. We + +00:01:32.079 --> 00:01:32.799 +should have + +00:01:32.799 --> 00:01:35.119 +meant, we should have decided that ELPA + +00:01:35.119 --> 00:01:37.759 +referred to our package archive + +00:01:37.759 --> 00:01:39.759 +and any other package archive should be + +00:01:39.759 --> 00:01:42.479 +called some other name. + +00:01:42.479 --> 00:01:46.079 +Oh, well! Uh this + +00:01:46.079 --> 00:01:48.320 +is a mistake I believe, because it leads + +00:01:48.320 --> 00:01:50.240 +to a lot of confusion it would have been + +00:01:50.240 --> 00:01:51.119 +clearer + +00:01:51.119 --> 00:01:55.759 +if we had uh used the other naming. + +00:01:55.759 --> 00:01:59.600 +Because the difference between having a + +00:01:59.600 --> 00:02:00.399 +package in + +00:02:00.399 --> 00:02:04.159 +core Emacs and having it in GNU ELPA, + +00:02:04.159 --> 00:02:07.840 +is purely a practical convenience matter. + +00:02:07.840 --> 00:02:09.679 +Convenience of distribution and + +00:02:09.679 --> 00:02:12.000 +convenience of maintenance. + +00:02:12.000 --> 00:02:14.879 +We wanted to be able to move packages + +00:02:14.879 --> 00:02:16.800 +between the two + +00:02:16.800 --> 00:02:20.160 +whenever that was convenient. So, to make + +00:02:20.160 --> 00:02:21.200 +that possible + +00:02:21.200 --> 00:02:23.200 +we insisted on getting copyright + +00:02:23.200 --> 00:02:26.319 +assignments for packages in GNU ELPA + +00:02:26.319 --> 00:02:28.800 +just the same way we do for packages in + +00:02:28.800 --> 00:02:31.360 +core Emacs. + +00:02:31.360 --> 00:02:33.760 +Having the facility for installing + +00:02:33.760 --> 00:02:36.239 +packages from package archives, + +00:02:36.239 --> 00:02:39.440 +led to a tremendous boost in the + +00:02:39.440 --> 00:02:42.239 +development and release of Emacs packages. + +00:02:42.239 --> 00:02:44.879 +Unfortunately there was a problem with + +00:02:44.879 --> 00:02:46.560 +the way that was done. + +00:02:46.560 --> 00:02:49.120 +For the most part, the developers of + +00:02:49.120 --> 00:02:50.000 +these packages + +00:02:50.000 --> 00:02:52.480 +wouldn't even tell us about them. They + +00:02:52.480 --> 00:02:53.599 +posted them + +00:02:53.599 --> 00:02:56.720 +in another package archive where we + +00:02:56.720 --> 00:02:58.480 +didn't know about them + +00:02:58.480 --> 00:03:02.000 +and (where they) no attempt was made to + +00:03:02.000 --> 00:03:03.120 +try to fit them + +00:03:03.120 --> 00:03:06.560 +into Emacs so that they could make sense + +00:03:06.560 --> 00:03:10.879 +as parts of the Emacs distribution. + +00:03:10.879 --> 00:03:14.480 +This led to both moral problems, + +00:03:14.480 --> 00:03:16.959 +packages that depended on non-free + +00:03:16.959 --> 00:03:19.599 +software in order to be usable + +00:03:19.599 --> 00:03:22.159 +and technical problems because the + +00:03:22.159 --> 00:03:24.319 +developers of those packages didn't + +00:03:24.319 --> 00:03:26.159 +coordinate with us + +00:03:26.159 --> 00:03:29.519 +about how to make it useful and + +00:03:29.519 --> 00:03:33.040 +convenient and clean to have them + +00:03:33.040 --> 00:03:36.560 +in Emacs. + +00:03:36.560 --> 00:03:41.120 +So, the idea of NonGNU ELPA + +00:03:41.120 --> 00:03:44.840 +is an effort to smooth these things + +00:03:44.840 --> 00:03:48.319 +out. The fundamental plan of + +00:03:48.319 --> 00:03:51.680 +NonGNU ELPA is that, + +00:03:51.680 --> 00:03:54.480 +we won't ask for copyright assignments + +00:03:54.480 --> 00:03:56.159 +for those packages. + +00:03:56.159 --> 00:03:58.560 +So, we won't be able to put them into + +00:03:58.560 --> 00:04:00.000 +core Emacs; + +00:04:00.000 --> 00:04:04.080 +at least not easily, but we will + +00:04:04.080 --> 00:04:06.959 +have some control over how we distribute + +00:04:06.959 --> 00:04:09.519 +them. + +00:04:09.519 --> 00:04:12.640 +We can put any package into + +00:04:12.640 --> 00:04:15.439 +NonGNU ELPA as long as it's free + +00:04:15.439 --> 00:04:16.320 +software. + +00:04:16.320 --> 00:04:19.440 +If we like it we can + +00:04:19.440 --> 00:04:23.360 +set up that way for users to get it. + +00:04:23.360 --> 00:04:25.919 +We could put the package in exactly as + +00:04:25.919 --> 00:04:26.720 +it is + +00:04:26.720 --> 00:04:29.919 +if there's no problem at all with it. + +00:04:29.919 --> 00:04:32.160 +We can make an arrangement with the + +00:04:32.160 --> 00:04:34.160 +package's developers + +00:04:34.160 --> 00:04:38.000 +to work on it with us and maintain it + +00:04:38.000 --> 00:04:40.880 +directly for distribution by NonGNU + +00:04:40.880 --> 00:04:42.560 +ELPA + +00:04:42.560 --> 00:04:45.280 +but if they are not interested we can + +00:04:45.280 --> 00:04:46.080 +put it in + +00:04:46.080 --> 00:04:49.680 +ourselves and if we need to make any + +00:04:49.680 --> 00:04:52.000 +changes we can do so. + +00:04:52.000 --> 00:04:55.120 +So, NonGNU ELPA + +00:04:55.120 --> 00:04:59.040 +is not meant to be just a way + +00:04:59.040 --> 00:05:01.360 +that others can distribute their + +00:05:01.360 --> 00:05:02.720 +packages. + +00:05:02.720 --> 00:05:05.039 +It's meant at least in a minimal + +00:05:05.039 --> 00:05:06.000 +technical + +00:05:06.000 --> 00:05:10.479 +sense to work with GNU Emacs, and we'll + +00:05:10.479 --> 00:05:12.800 +make changes if necessary so that it + +00:05:12.800 --> 00:05:14.240 +works smoothly with + +00:05:14.240 --> 00:05:18.720 +Emacs. And + +00:05:18.720 --> 00:05:22.160 +this means that we're going to maintain + +00:05:22.160 --> 00:05:23.280 +it differently + +00:05:23.280 --> 00:05:27.600 +from GNU ELPA. Well, GNU ELPA + +00:05:27.600 --> 00:05:29.759 +is hosted in a way that is actually + +00:05:29.759 --> 00:05:31.520 +rather inconvenient. + +00:05:31.520 --> 00:05:35.600 +It is one single Git repository. + +00:05:35.600 --> 00:05:38.639 +And so anybody that has access to write + +00:05:38.639 --> 00:05:39.039 +it + +00:05:39.039 --> 00:05:42.560 +can write any part of it. There are many + +00:05:42.560 --> 00:05:44.639 +different packages in there maintained + +00:05:44.639 --> 00:05:46.080 +by different people, + +00:05:46.080 --> 00:05:48.080 +and we have no way to give each one of + +00:05:48.080 --> 00:05:50.960 +them access to per own package + +00:05:50.960 --> 00:05:54.720 +and not to the others. Well, with NonGNU + +00:05:54.720 --> 00:05:58.400 +ELPA we plan to fix that. The idea is to + +00:05:58.400 --> 00:05:59.440 +have + +00:05:59.440 --> 00:06:02.479 +a single Git repository where you can + +00:06:02.479 --> 00:06:05.600 +download various packages from. + +00:06:05.600 --> 00:06:08.800 +But, they won't be maintained there. Each + +00:06:08.800 --> 00:06:10.800 +of those packages will be + +00:06:10.800 --> 00:06:14.080 +copied automatically from some other + +00:06:14.080 --> 00:06:15.280 +place. + +00:06:15.280 --> 00:06:18.800 +Probably some other repository where + +00:06:18.800 --> 00:06:21.759 +the right people have access to work on + +00:06:21.759 --> 00:06:22.960 +it. + +00:06:22.960 --> 00:06:26.479 +And this way we can avoid giving a + +00:06:26.479 --> 00:06:28.160 +gigantic number of people + +00:06:28.160 --> 00:06:32.240 +access to every part of it. + +00:06:32.240 --> 00:06:37.039 +So far NonGNU ELPA is just a plan, + +00:06:37.039 --> 00:06:40.479 +we need people to implement the plan. + +00:06:40.479 --> 00:06:43.280 +So, if you would like to help please + +00:06:43.280 --> 00:06:45.120 +write to me. + +00:06:45.120 --> 00:06:47.759 +I think this is a very important step + +00:06:47.759 --> 00:06:49.520 +for progress + +00:06:49.520 --> 00:06:52.639 +and it's got to be implemented. + +00:06:52.639 --> 00:06:57.919 +Thanks and happy hacking! \ No newline at end of file -- cgit v1.2.3