Open AlexKurisu opened 11 months ago
Also, decentralized approach wouldn't work in Emacs anyways because its package-install
relies on centralized package source.
In practice emacs won't change anything, but there is no technical reason why it is any different. Emacs packages are just source trees.
btw, where is it documented how emacs packages declare their dependencies? I found this, but it doesn't give any specifics: https://www.gnu.org/software/emacs/manual/html_node/elisp/Packaging-Basics.html
@justinmk In sources dependencies (and other stuff) are defined as shown in https://www.gnu.org/software/emacs/manual/html_node/elisp/Library-Headers.html. In actual distributed packages they are defined as shown in https://www.gnu.org/software/emacs/manual/html_node/elisp/Multi_002dfile-Packages.html with some well-known extensions, such as using :commit
for build commit, :url
for project url, :authors
for authors, :keywords
for keywords… You probably get the idea. Like
(define-package "company-auctex" "20200529.1835" "Company-mode auto-completion for AUCTeX"
'((yasnippet "0.8.0")
(company "0.8.0")
(auctex "11.87"))
:commit "9400a2ec7459dde8cbf1a5d50dfee4e300ed7e18" :authors
'(("Christopher Monsanto <chris@monsan.to>, Alexey Romanov" . "alexey.v.romanov@gmail.com"))
:maintainers
'(("Christopher Monsanto <chris@monsan.to>, Alexey Romanov" . "alexey.v.romanov@gmail.com"))
:maintainer
'("Christopher Monsanto <chris@monsan.to>, Alexey Romanov" . "alexey.v.romanov@gmail.com")
:url "https://github.com/alexeyr/company-auctex/")
In my opinion, having Emacs plugins as a use case is pointless since Emacs already has a well-established format for that purpose and also has GNU ELPA, NonGNU ELPA and MELPA. Why would anyone make a switch?