summaryrefslogtreecommitdiffstats
path: root/2021/captions/emacsconf-2021-nongnu--nongnu-elpa-update--philip-kaludercic--main.vtt
diff options
context:
space:
mode:
Diffstat (limited to '2021/captions/emacsconf-2021-nongnu--nongnu-elpa-update--philip-kaludercic--main.vtt')
-rw-r--r--2021/captions/emacsconf-2021-nongnu--nongnu-elpa-update--philip-kaludercic--main.vtt535
1 files changed, 535 insertions, 0 deletions
diff --git a/2021/captions/emacsconf-2021-nongnu--nongnu-elpa-update--philip-kaludercic--main.vtt b/2021/captions/emacsconf-2021-nongnu--nongnu-elpa-update--philip-kaludercic--main.vtt
new file mode 100644
index 00000000..e8f36c16
--- /dev/null
+++ b/2021/captions/emacsconf-2021-nongnu--nongnu-elpa-update--philip-kaludercic--main.vtt
@@ -0,0 +1,535 @@
+WEBVTT
+
+00:00.000 --> 00:02.283
+Hello! My name is Philip,
+
+00:02.283 --> 00:04.363
+and I'll be giving a brief update on
+
+00:04.363 --> 00:05.963
+NonGNU ELPA.
+
+00:05.963 --> 00:07.403
+Before we begin,
+
+00:07.403 --> 00:08.283
+let's first make sure
+
+00:08.283 --> 00:09.563
+everyone's on the same page.
+
+00:09.563 --> 00:11.203
+What is NonGNU ELPA?
+
+00:11.203 --> 00:14.323
+Put simply, NonGNU ELPA
+
+00:14.323 --> 00:16.723
+is a new Emacs Lisp package archive.
+
+00:16.723 --> 00:19.323
+similar to its sister archive, GNU ELPA.
+
+00:19.323 --> 00:21.883
+The main difference is that
+
+00:21.883 --> 00:24.723
+GNU ELPA regards each package in the archive
+
+00:24.723 --> 00:26.643
+to be part of Emacs itself.
+
+00:26.643 --> 00:30.083
+This means each significant contributor
+
+00:30.083 --> 00:32.483
+has to have signed their copyrights
+
+00:32.483 --> 00:34.803
+to the Free Software Foundation.
+
+00:34.803 --> 00:37.203
+NonGNU ELPA is made for packages
+
+00:37.203 --> 00:39.363
+that cannot ensure this condition.
+
+00:39.363 --> 00:42.483
+The immediate consequence of all of this
+
+00:42.483 --> 00:44.243
+is that more packages can be installed
+
+00:44.243 --> 00:44.723
+out of the box.
+
+00:44.723 --> 00:46.803
+All you need to install,
+
+00:46.803 --> 00:49.443
+for example, magit, evil-mode, slime,
+
+00:49.443 --> 00:52.723
+is a simple M-x package-install.
+
+00:52.723 --> 00:56.083
+The more subtle consequence
+
+00:56.083 --> 00:58.083
+is that ELPA distributes
+
+00:58.083 --> 00:59.763
+stable packages by default.
+
+00:59.763 --> 01:01.563
+This differs from, for example,
+
+01:01.563 --> 01:04.163
+the community-maintained package archive MELPA,
+
+01:04.163 --> 01:08.483
+where each change in the respective package repository
+
+01:08.483 --> 01:12.803
+triggers a new package to be rebuilt.
+
+01:12.803 --> 01:15.123
+Of course, "stable" here has to be taken
+
+01:15.123 --> 01:16.843
+with a grain of salt because,
+
+01:16.843 --> 01:17.963
+on the one hand,
+
+01:17.963 --> 01:19.923
+a package maintainer can be very careful
+
+01:19.923 --> 01:22.403
+to avoid buggy code in their default branch,
+
+01:22.403 --> 01:23.923
+and on the other hand,
+
+01:23.923 --> 01:26.523
+a package maintainer can be too eager
+
+01:26.523 --> 01:28.083
+to tag a new release
+
+01:28.083 --> 01:29.483
+without properly checking
+
+01:29.483 --> 01:31.403
+that the code works as intended.
+
+01:31.403 --> 01:33.483
+My personal hope is that
+
+01:33.483 --> 01:35.603
+more people using NonGNU ELPA
+
+01:35.603 --> 01:37.683
+be incentive for increase
+
+01:37.683 --> 01:39.603
+for package development to shift away
+
+01:39.603 --> 01:41.083
+from the currently predominant
+
+01:41.083 --> 01:42.323
+rolling release model,
+
+01:42.323 --> 01:44.243
+improving the overall stability
+
+01:44.243 --> 01:45.523
+of Emacs configurations.
+
+01:45.523 --> 01:48.843
+Another side effect of the initiative
+
+01:48.843 --> 01:51.003
+is a chance to clean up
+
+01:51.003 --> 01:52.803
+the Emacs package space.
+
+01:52.803 --> 01:54.723
+Over the last few years,
+
+01:54.723 --> 01:56.363
+a lot of packages have been abandoned,
+
+01:56.363 --> 01:59.043
+have been broken, duplicated,
+
+01:59.043 --> 02:00.443
+or even in some cases,
+
+02:00.443 --> 02:03.483
+replaced by functionality in Emacs itself.
+
+02:03.483 --> 02:07.403
+When reviewing packages for NonGNU ELPA,
+
+02:07.403 --> 02:10.043
+the opportunity to avoid these problems
+
+02:10.043 --> 02:12.523
+will hopefully also improve the general quality
+
+02:12.523 --> 02:13.923
+of Emacs packages.
+
+02:13.923 --> 02:16.883
+So, what is this update about?
+
+02:16.883 --> 02:20.443
+I'm taking Richard Stallman's announcement
+
+02:20.443 --> 02:22.363
+at EmacsConf 2020
+
+02:22.363 --> 02:23.563
+as my reference point.
+
+02:23.563 --> 02:26.283
+There, the idea, the history,
+
+02:26.283 --> 02:28.283
+and the motivation was explained,
+
+02:28.283 --> 02:30.443
+and the call for contributions was made.
+
+02:30.443 --> 02:32.643
+I won't be going into these aspects
+
+02:32.643 --> 02:33.483
+again this year.
+
+02:33.483 --> 02:37.163
+As this implies, there was nothing concrete
+
+02:37.163 --> 02:38.683
+at that point.
+
+02:38.683 --> 02:41.883
+The first practical steps towards NonGNU ELPA
+
+02:41.883 --> 02:43.683
+were taken up by Stefan Monnier.
+
+02:43.683 --> 02:47.963
+This included updating GNU ELPA's build system
+
+02:47.963 --> 02:49.523
+to support the requirements
+
+02:49.523 --> 02:51.003
+of NonGNU ELPA as well.
+
+02:51.003 --> 02:53.283
+And so eventually,
+
+02:53.283 --> 02:55.323
+the idea became a Git repository,
+
+02:55.323 --> 02:57.203
+nongnu.git on savannah,
+
+02:57.203 --> 02:59.203
+then a website,
+
+02:59.203 --> 03:02.523
+elpa.nongnu.org,
+
+03:02.523 --> 03:04.643
+and then around late December of last year,
+
+03:04.643 --> 03:06.923
+NonGNU ELPA was also added
+
+03:06.923 --> 03:08.643
+to the package-archives list.
+
+03:08.643 --> 03:11.963
+Sadly, progress stalled from this point on,
+
+03:11.963 --> 03:14.123
+with the new archive consisting of only
+
+03:14.123 --> 03:16.203
+five or six packages.
+
+03:16.203 --> 03:18.083
+It took until August
+
+03:18.083 --> 03:20.123
+for more packages to be added,
+
+03:20.123 --> 03:22.003
+some by their respective authors,
+
+03:22.003 --> 03:23.963
+such as Magit and Projectile,
+
+03:23.963 --> 03:26.163
+but most by contributors such as myself.
+
+03:26.163 --> 03:27.923
+As of recording,
+
+03:27.923 --> 03:30.363
+the archive has around 70 packages,
+
+03:30.363 --> 03:32.803
+with more pending to be out soon.
+
+03:32.803 --> 03:34.803
+These include popular applications
+
+03:34.803 --> 03:36.483
+such as the previously-mentioned Magit,
+
+03:36.483 --> 03:38.083
+SLIME, or wgrep,
+
+03:38.083 --> 03:41.523
+major modes like php-mode, rust-mode,
+
+03:41.523 --> 03:43.723
+go-mode, clojure-mode, lua-mode,
+
+03:43.723 --> 03:45.923
+markdown-mode... You get my point.
+
+03:45.923 --> 03:47.883
+And a number of visual themes,
+
+03:47.883 --> 03:49.443
+among other things.
+
+03:49.443 --> 03:52.643
+If you are interested in using NonGNU ELPA,
+
+03:52.643 --> 03:53.603
+but you are still bound
+
+03:53.603 --> 03:55.203
+to an older version of Emacs,
+
+03:55.203 --> 03:56.683
+all you have to do is
+
+03:56.683 --> 03:57.483
+to add the snippet
+
+03:57.483 --> 03:59.003
+from the NonGNU ELPA home page
+
+03:59.003 --> 04:01.323
+updating the package-archives variable.
+
+04:01.323 --> 04:03.923
+For Emacs 28 and newer,
+
+04:03.923 --> 04:05.123
+one might have to watch out
+
+04:05.123 --> 04:07.563
+that you're not setting package-archives directly,
+
+04:07.563 --> 04:09.363
+and if you are doing so,
+
+04:09.363 --> 04:10.723
+to update the value.
+
+04:10.723 --> 04:14.003
+Emacs 28 only updates the default value
+
+04:14.003 --> 04:17.043
+and will not manipulate the user's configuration.
+
+04:17.043 --> 04:20.363
+Finally, a short note
+
+04:20.363 --> 04:22.163
+for package developers.
+
+04:22.163 --> 04:24.243
+Most packages up until now
+
+04:24.243 --> 04:26.243
+haven't been added by their maintainers.
+
+04:26.243 --> 04:28.083
+For the most part,
+
+04:28.083 --> 04:31.083
+I have been collecting and reviewing the packages
+
+04:31.083 --> 04:32.683
+which have been added,
+
+04:32.683 --> 04:33.923
+which takes time
+
+04:33.923 --> 04:36.043
+and is one of the main reasons
+
+04:36.043 --> 04:38.323
+why we're still at only 70 packages.
+
+04:38.323 --> 04:41.683
+This is of course not a permanent solution.
+
+04:41.683 --> 04:42.243
+The intention here is
+
+04:42.243 --> 04:44.803
+to bootstrap, so to say,
+
+04:44.803 --> 04:46.243
+the interest in NonGNU ELPA
+
+04:46.243 --> 04:48.083
+by making it more interesting to you
+
+04:48.083 --> 04:50.563
+and thus more interesting to contribute to.
+
+04:50.563 --> 04:53.563
+If you are interested in adding a package
+
+04:53.563 --> 04:56.643
+that already exists, or a new package
+
+04:56.643 --> 04:59.443
+to NonGNU ELPA, all you need to do is
+
+04:59.443 --> 05:00.843
+send an e-mail to the
+
+05:00.843 --> 05:02.483
+Emacs development mailing list,
+
+05:02.483 --> 05:05.523
+emacs-devel@gnu.org.
+
+05:05.523 --> 05:08.123
+This is an open mailing list
+
+05:08.123 --> 05:10.563
+and requires no special registration.
+
+05:10.563 --> 05:12.283
+Your message should
+
+05:12.283 --> 05:14.643
+mention NonGNU ELPA in the subject
+
+05:14.643 --> 05:17.483
+and contain a link to a public Git repository
+
+05:17.483 --> 05:20.643
+in the body. Ideally, a brief explanation
+
+05:20.643 --> 05:21.803
+on what your package does
+
+05:21.803 --> 05:23.243
+would be much appreciated.
+
+05:23.243 --> 05:25.603
+The proposal will be reviewed
+
+05:25.603 --> 05:28.043
+by the readers of the mailing list,
+
+05:28.043 --> 05:29.443
+and after a bit of back-and-forth
+
+05:29.443 --> 05:31.123
+on possible issues and improvements,
+
+05:31.123 --> 05:32.723
+the package will hopefully be added
+
+05:32.723 --> 05:34.443
+to NonGNU ELPA itself.
+
+05:34.443 --> 05:38.523
+The simplest mistake a lot of packages make
+
+05:38.523 --> 05:40.043
+is to either not have
+
+05:40.043 --> 05:41.843
+or maintain a version attribute
+
+05:41.843 --> 05:42.803
+in the package header.
+
+05:42.803 --> 05:46.323
+This is done despite actually being necessary
+
+05:46.323 --> 05:48.163
+for a well-formed Emacs package
+
+05:48.163 --> 05:50.083
+according to the Elisp manual.
+
+05:50.083 --> 05:52.443
+ELPA relies on this tag
+
+05:52.443 --> 05:54.323
+to detect new package versions
+
+05:54.323 --> 05:55.843
+that will be built and distributed.
+
+05:55.843 --> 05:58.483
+If the version isn't updated,
+
+05:58.483 --> 06:00.323
+no new package will be released,
+
+06:00.323 --> 06:03.043
+and any changes won't be made public.
+
+06:03.043 --> 06:07.683
+So, that's that on NonGNU ELPA.
+
+06:07.683 --> 06:09.883
+To summarize, NonGNU ELPA is an
+
+06:09.883 --> 06:11.683
+Emacs Lisp Package Archive for Emacs,
+
+06:11.683 --> 06:13.363
+without a need for copyright assignments.
+
+06:13.363 --> 06:17.203
+It works, it exists, and it's been used already.
+
+06:17.203 --> 06:18.403
+I'm looking forward to
+
+06:18.403 --> 06:20.403
+more packages being added to the archive
+
+06:20.403 --> 06:22.803
+and improving the overall experience
+
+06:22.803 --> 06:24.283
+of Emacs out of the box.
+
+00:06:24.283 --> 00:06:27.163
+Thank you for your interest, and goodbye.
+
+00:06:27.163 --> 00:06:27.163
+[captioned by sachac]