emacs-devel
[Top][All Lists]
Advanced

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

Re: On Contributing To Emacs


From: Stefan Kangas
Subject: Re: On Contributing To Emacs
Date: Sun, 26 Dec 2021 13:48:47 -0800

Richard Stallman <rms@gnu.org> writes:

> This discussion is about "straight.el-like functionality".
> Would someone please describe that functionality?
> That file is not in Emacs, and I have not seen a description
> of what functionality people are talking about.

>From straight.el/README.md:

  ## Features

  * Install Emacs packages listed on [MELPA], [GNU ELPA][gnu-elpa], or
    [Emacsmirror], or provide your own recipes.
  * Packages are cloned as Git (or other) repositories, not as opaque
    tarballs.
  * Make changes to a package simply by editing its source code, no
    additional steps required. Contribute upstream just by pushing your
    changes.
  * Powerful interactive workflows (with popups à la Magit) for
    performing bulk maintenance on the Git repositories for your
    packages.
  * Save and load version lockfiles that ensure 100% reproducibility for
    your Emacs configuration. Package state is defined entirely by your
    init-file and (optional) lockfile, with no extra persistent data
    floating around.
  * Specify package descriptions using a powerful format based on [MELPA
    recipes][melpa-recipe-format] (with a familiar but improved syntax).
  * [`use-package`][use-package] integration.
  * Modular: you can install your packages manually and straight.el will
    load them for you. Or you can also have straight.el install your
    packages, while you provide the recipes explicitly. Or straight.el
    can also fetch recipes, if you want. Bulk repository management and
    package updates are also optional.
  * Extensible APIs to add new recipe sources and version-control
    backends.
  * The cleanest source code you've ever seen. [45%][#trivia/comments]
    of `straight.el` is comments and docstrings.

  Note: `straight.el` is a replacement for `package.el`, **not**
  `use-package`. `use-package` can be used with either `package.el` or
  `straight.el`.

Also note that this file says:

  straight.el has a philosophy which is fundamentally incompatible with
  package.el, and non-compatibility with package.el is one of its design
  goals.



reply via email to

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