GNU bug report logs - #57503
28.1.91; package-selected-packages should not be saved to custom-file

Previous Next

Package: emacs;

Reported by: Joost Kremers <joostkremers <at> fastmail.fm>

Date: Wed, 31 Aug 2022 13:15:01 UTC

Severity: normal

Found in version 28.1.91

To reply to this bug, email your comments to 57503 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Wed, 31 Aug 2022 13:15:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Joost Kremers <joostkremers <at> fastmail.fm>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 31 Aug 2022 13:15:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Joost Kremers <joostkremers <at> fastmail.fm>
To: bug-gnu-emacs <at> gnu.org
Subject: 28.1.91; package-selected-packages should not be saved to custom-file
Date: Wed, 31 Aug 2022 14:43:43 +0200
The variable `package-selected-packages` should not be saved to the users init
file (or whatever `custom-file` points to). This was discussed before on
emacs-devel but wasn't resolved:

<https://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00958.html> but 

The gist of it is that if you keep your configuration under version control,
having package-selected-packages written to your config file is inconvenient if
you share your config across multiple machines but do not want to have the exact
same set of packages installed on each.

Even if you do want to keep the exact same set of packages on each machine, you
still need to be careful about installing them, because the order of package
installation affects the order of package-selected-packages, and so does
deleting and reinstalling a package. As a result, I often experienced
meaningless VC conflicts that needed to be resolved.

IMHO the value of package-selected-packages should be written to a separate
file, so that it's possible to put it under version control or ignore it,
independently from the rest of one's configuration.


In GNU Emacs 28.1.91 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.20, cairo version 1.16.0)
 of 2022-08-03 built on Lenovo
Repository revision: f23d45603918721ec80bfcef883d22fab15cb9f1
Repository branch: emacs-28
Windowing system distributor 'The X.Org Foundation', version 11.0.12013000
System Description: elementary OS 6.1 Jólnir

Configured using:
 'configure --with-native-compilation'
Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON
LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE
XIM XPM GTK3 ZLIB
Important settings:
  value of $LC_MONETARY: en_IE.UTF-8
  value of $LC_NUMERIC: en_IE.UTF-8
  value of $LC_TIME: en_IE.UTF-8
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: mu4e:main

Minor modes in effect:
  flycheck-indicator-mode: t
  mu4e-search-minor-mode: t
  mu4e-update-minor-mode: t
  mu4e-context-minor-mode: t
  minions-mode: t
  doom-modeline-mode: t
  which-key-mode: t
  global-atomic-chrome-edit-mode: t
  marginalia-mode: t
  all-the-icons-completion-mode: t
  company-prescient-mode: t
  prescient-persist-mode: t
  vertico-multiform-mode: t
  vertico-mode: t
  projectile-mode: t
  global-diff-hl-mode: t
  global-git-commit-mode: t
  csv-field-index-mode: t
  shell-dirtrack-mode: t
  company-quickhelp-mode: t
  company-quickhelp-local-mode: t
  global-company-mode: t
  electric-pair-mode: t
  recentf-mode: t
  delete-selection-mode: t
  override-global-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-save-visited-mode: t
  overwrite-mode: overwrite-mode-binary

Load-path shadows:
~/.emacs.d/lisp/custom hides /usr/local/share/emacs/28.1.91/lisp/custom
/home/joost/.emacs.d/elpa/transient-20220806.2224/transient hides /usr/local/share/emacs/28.1.91/lisp/transient

Features:
(shadow emacsbug qp gnutls epa-file mailalias ace-window vc-mtn vc-hg vc-bzr
vc-src vc-sccs vc-cvs vc-rcs consult-vertico consult compat-28 vc-git
display-fill-column-indicator flycheck-indicator avy smiley gnus-cite mm-archive
mail-extr visual-fill-column display-line-numbers mu4e-settings gnus-dired mu4e
mu4e-org mu4e-view gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum
gnus-group gnus-undo gnus-start gnus-dbus gnus-cloud nnimap nnmail mail-source
utf7 netrc nnoo gnus-spec gnus-int gnus-range gnus-win gnus nnheader mu4e-main
mu4e-headers mu4e-compose mu4e-draft mu4e-actions smtpmail mu4e-search
mu4e-lists mu4e-bookmarks mu4e-mark mu4e-message flow-fill mule-util
mu4e-contacts mu4e-update mu4e-folders mu4e-server mu4e-context mu4e-vars
mu4e-helpers mu4e-config jk-input-methods quail company-box company-box-doc
frame-local company-box-icons company-amelia amelia parse-csv dedicated wgrep-ag
wgrep flycheck-ledger vterm bookmark term disp-table ehelp vterm-module
term/xterm xterm ielm minions doom-modeline doom-modeline-segments
doom-modeline-env doom-modeline-core shrink-path which-key atomic-chrome iimage
image+ image-file image-converter marginalia all-the-icons-completion
company-prescient prescient orderless vertico-multiform vertico groovy-mode
dockerfile-mode sh-script smie executable jsonian impatient-mode htmlize tide
tide-lv typescript-mode indium indium-list-sources indium-scratch
indium-interaction indium-chrome indium-nodejs indium-repl indium-debugger
indium-debugger-litable js2-refactor js2r-paredit js2r-conveniences
js2r-conditionals js2r-wrapping js2r-functions js2r-vars
mc-hide-unmatched-lines-mode mc-mark-more mc-cycle-cursors multiple-cursors-core
rect js2r-iife js2r-formatting js2r-helpers indium-debugger-locals
indium-breakpoint indium-inspector indium-render indium-faces indium-seq-fix
indium-client indium-structs json-process-client js2-mode js cc-mode cc-fonts
cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs jupyter
python-pytest lsp-pyright dap-python paredit sesman clojure-mode align dap-mode
dap-tasks dap-launch lsp-docker dap-overlays eldoc-box jsonrpc ert debug
backtrace lsp-ui lsp-ui-flycheck lsp-ui-doc goto-addr lsp-ui-imenu lsp-ui-peek
lsp-ui-sideline flycheck-posframe flycheck lsp-mode network-stream markdown-mode
inline imenu f f-shortdoc shortdoc lsp-ui-util face-remap lsp-protocol ht ag
vc-svn find-dired s projectile lisp-mnt grep compile ibuf-ext ibuffer
ibuffer-loaddefs thingatpt diff-hl log-view vc-dir ewoc vc vc-dispatcher
diff-mode git-commit magit-git magit-base magit-section crm compat-27 compat-26
with-editor transient compat log-edit message rfc822 mml mml-sec epa derived epg
rfc6068 epg-config gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode
mailabbrev gmm-utils mailheader pcvs-util add-log autorevert filenotify
aggressive-indent sendmail mail-utils nswbuff yaml-mode yaml guess-language
flyspell ispell reftex reftex-loaddefs reftex-vars csv-mode sort tab-jump-out
yasnippet-snippets yasnippet company-org-block org-settings org-clock ob-jupyter
jupyter-tramp jupyter-server jupyter-server-ioloop jupyter-ioloop-comm
jupyter-ioloop zmq zmq-core jupyter-rest-api url-http url-auth mail-parse
rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-gw nsm rmc
jupyter-org-extensions jupyter-org-client jupyter-repl jupyter-kernel-manager
jupyter-channel jupyter-widget-client websocket bindat simple-httpd
jupyter-client jupyter-comm-layer jupyter-messages hmac-def jupyter-mime shr
kinsoku text-property-search puny svg jupyter-kernelspec jupyter-env
jupyter-base eieio-base ob-shell ob-scheme ob-clojure ob-python python tramp-sh
org-element avl-tree dom org ob ob-tangle ob-ref ob-lob ob-table ob-exp
org-macro org-footnote org-src ob-comint org-pcomplete org-list org-faces
org-entities noutline outline org-version ob-emacs-lisp ob-core ob-eval
org-table oc-basic ol org-keys oc org-compat org-macs org-loaddefs find-func
cal-menu calendar cal-loaddefs denote xdg dired dired-loaddefs docker-tramp
tramp-cache tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat
shell pcomplete comint ansi-color parse-time ls-lisp format-spec biblio
biblio-download biblio-dissemin biblio-ieee biblio-hal biblio-dblp
biblio-crossref biblio-arxiv timezone biblio-doi biblio-core let-alist url-queue
ido hl-line bibtex iso8601 time-date adaptive-wrap goggles comp comp-cstr
warnings pulse posframe bm company-quickhelp pos-tip all-the-icons
all-the-icons-faces data-material data-weathericons data-octicons data-fileicons
data-faicons data-alltheicons company-keywords company-etags etags fileloop
generator xref project company-gtags company-dabbrev-code company-dabbrev
company-ipa company-files company-clang company-cmake company-semantic
company-template company-css company-capf company solarized-light-theme
solarized-theme solarized solarized-faces color paradox paradox-menu
paradox-commit-list hydra ring lv cus-edit pp cus-load paradox-execute
paradox-github paradox-core spinner dash cl-extra help-mode jk-functions advice
eshell esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-groups
esh-util notifications dbus xml edmacro kmacro server elec-pair recentf
tree-widget wid-edit delsel use-package use-package-ensure use-package-delight
use-package-diminish use-package-bind-key bind-key use-package-core tex-site
easy-mmode rx realgud-recursive-autoloads info package browse-url url url-proxy
url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util
mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs
eieio-loaddefs password-cache json subr-x map url-vars seq byte-opt gv bytecomp
byte-compile cconv cl-loaddefs cl-lib pcase iso-transl tooltip eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt
fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register
page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse
jit-lock font-lock syntax font-core term/tty-colors frame minibuffer cl-generic
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic
indian cyrillic chinese composite emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice button
loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting
font-render-setting cairo move-toolbar gtk x-toolkit x multi-tty
make-network-process native-compile emacs)

Memory information:
((conses 16 848943 78066)
 (symbols 48 64672 39)
 (strings 32 228119 24655)
 (string-bytes 1 8079504)
 (vectors 16 112770)
 (vector-slots 8 1998465 158112)
 (floats 8 1911 2096)
 (intervals 56 1567 885)
 (buffers 992 24))

-- 
Joost Kremers
Life has its moments




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Fri, 02 Sep 2022 13:12:01 GMT) Full text and rfc822 format available.

Message #8 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Philip Kaludercic <philipk <at> posteo.net>
To: Joost Kremers <joostkremers <at> fastmail.fm>
Cc: 57503 <at> debbugs.gnu.org
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Fri, 02 Sep 2022 13:11:39 +0000
Joost Kremers <joostkremers <at> fastmail.fm> writes:

> The variable `package-selected-packages` should not be saved to the users init
> file (or whatever `custom-file` points to). This was discussed before on
> emacs-devel but wasn't resolved:
>
> <https://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00958.html> but 
>
> The gist of it is that if you keep your configuration under version control,
> having package-selected-packages written to your config file is inconvenient if
> you share your config across multiple machines but do not want to have the exact
> same set of packages installed on each.
>
> Even if you do want to keep the exact same set of packages on each machine, you
> still need to be careful about installing them, because the order of package
> installation affects the order of package-selected-packages, and so does
> deleting and reinstalling a package. As a result, I often experienced
> meaningless VC conflicts that needed to be resolved.
>
> IMHO the value of package-selected-packages should be written to a separate
> file, so that it's possible to put it under version control or ignore it,
> independently from the rest of one's configuration.

How about writing it into a file like "~/.config/emacs/elpa/selected-packages"?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Fri, 02 Sep 2022 13:19:02 GMT) Full text and rfc822 format available.

Message #11 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Philip Kaludercic <philipk <at> posteo.net>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Fri, 02 Sep 2022 15:17:52 +0200
>>>>> On Fri, 02 Sep 2022 13:11:39 +0000, Philip Kaludercic <philipk <at> posteo.net> said:
    >> IMHO the value of package-selected-packages should be written to a separate
    >> file, so that it's possible to put it under version control or ignore it,
    >> independently from the rest of one's configuration.

    Philip> How about writing it into a file like "~/.config/emacs/elpa/selected-packages"?

Didnʼt Lars add `define-multisession-variable' exactly for this kind
of use case?

Robert
-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Fri, 02 Sep 2022 13:19:02 GMT) Full text and rfc822 format available.

Message #14 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Philip Kaludercic <philipk <at> posteo.net>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Fri, 02 Sep 2022 15:17:55 +0200
Philip Kaludercic <philipk <at> posteo.net> writes:

> How about writing it into a file like
> "~/.config/emacs/elpa/selected-packages"?

The defcustom could just be changed to a define-multisession-variable.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Fri, 02 Sep 2022 14:35:02 GMT) Full text and rfc822 format available.

Message #17 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Fri, 02 Sep 2022 16:33:52 +0200
[Message part 1 (text/plain, inline)]
>>>>> On Fri, 02 Sep 2022 15:17:55 +0200, Lars Ingebrigtsen <larsi <at> gnus.org> said:

    Lars> Philip Kaludercic <philipk <at> posteo.net> writes:
    >> How about writing it into a file like
    >> "~/.config/emacs/elpa/selected-packages"?

    Lars> The defcustom could just be changed to a define-multisession-variable.

For values of 'just' that are a little bigger than changing that one
line 😀

roughʼnʼready patch attached. Seems to work fine. Iʼve not tested the
interaction with a .emacs that has package-selected-packages set, but
if I understand multisession variables correctly that will just be
ignored.

[0001-Make-package-selected-packages-a-multisession-variab.patch (text/x-diff, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Sat, 03 Sep 2022 09:53:01 GMT) Full text and rfc822 format available.

Message #20 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Robert Pluim <rpluim <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Sat, 03 Sep 2022 11:52:44 +0200
Robert Pluim <rpluim <at> gmail.com> writes:

> For values of 'just' that are a little bigger than changing that one
> line 😀

😉

> roughʼnʼready patch attached. Seems to work fine. Iʼve not tested the
> interaction with a .emacs that has package-selected-packages set, but
> if I understand multisession variables correctly that will just be
> ignored.

Hm, yes -- if we do this, we'll end up with all users both having that
variable saved in their init file in addition to the multisession
storage.  Hm.  That sounds really confusing.

I can also see people running into difficulties when switching between
older and newer versions of Emacs, and Emacs becoming very confused.

Hm...  I don't immediately see any way to make this work seamlessly in a
way that's backwards/forwards compatible.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Sat, 03 Sep 2022 10:18:02 GMT) Full text and rfc822 format available.

Message #23 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Philip Kaludercic <philipk <at> posteo.net>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Robert Pluim <rpluim <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Sat, 03 Sep 2022 10:17:43 +0000
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Robert Pluim <rpluim <at> gmail.com> writes:
>
>> For values of 'just' that are a little bigger than changing that one
>> line 😀
>
> 😉
>
>> roughʼnʼready patch attached. Seems to work fine. Iʼve not tested the
>> interaction with a .emacs that has package-selected-packages set, but
>> if I understand multisession variables correctly that will just be
>> ignored.
>
> Hm, yes -- if we do this, we'll end up with all users both having that
> variable saved in their init file in addition to the multisession
> storage.  Hm.  That sounds really confusing.
>
> I can also see people running into difficulties when switching between
> older and newer versions of Emacs, and Emacs becoming very confused.
>
> Hm...  I don't immediately see any way to make this work seamlessly in a
> way that's backwards/forwards compatible.

What about if we allowed setting `package-selected-packages' to a symbol
like 'external, in which case the list would be saved in a file?  That
way users would have to explicitly opt-in.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Sat, 03 Sep 2022 12:26:01 GMT) Full text and rfc822 format available.

Message #26 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Philip Kaludercic <philipk <at> posteo.net>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Robert Pluim <rpluim <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Sat, 03 Sep 2022 14:25:03 +0200
Philip Kaludercic <philipk <at> posteo.net> writes:

>> Hm...  I don't immediately see any way to make this work seamlessly in a
>> way that's backwards/forwards compatible.
>
> What about if we allowed setting `package-selected-packages' to a symbol
> like 'external, in which case the list would be saved in a file?  That
> way users would have to explicitly opt-in.

But that would still break things for people who go back to using an
older Emacs version.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Sat, 03 Sep 2022 15:33:03 GMT) Full text and rfc822 format available.

Message #29 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Kangas <stefankangas <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>, Robert Pluim <rpluim <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be saved
 to custom-file
Date: Sat, 3 Sep 2022 08:32:26 -0700
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Hm...  I don't immediately see any way to make this work seamlessly in a
> way that's backwards/forwards compatible.

How about something like this:

- Keep the old defcustom, and add a new multisession variable.

- If the old variable exists, use it.  Otherwise the new one.

- Add a new command that "upgrades" the variable into a multisession
  variable.  Make it say that it will break things on Emacs < 29.  Don't
  run it automatically.

- In Emacs version N (e.g., 5 major versions from now?), upgrade any
  user automatically, without prompting, and make the defcustom
  obsolete.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Sat, 03 Sep 2022 15:35:02 GMT) Full text and rfc822 format available.

Message #32 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Joost Kremers <joostkremers <at> fastmail.fm>
Cc: 57503 <at> debbugs.gnu.org
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Sat, 03 Sep 2022 11:33:54 -0400
> The variable `package-selected-packages` should not be saved to the
> users init file (or whatever `custom-file` points to).

Yet, for some use cases it should.
So maybe we need to introduce a custom variable to choose whether it is
saved as a normal user config or not.


        Stefan





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Sun, 04 Sep 2022 10:54:02 GMT) Full text and rfc822 format available.

Message #35 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Stefan Kangas <stefankangas <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Robert Pluim <rpluim <at> gmail.com>, Philip Kaludercic <philipk <at> posteo.net>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Sun, 04 Sep 2022 12:52:47 +0200
Stefan Kangas <stefankangas <at> gmail.com> writes:

> - Keep the old defcustom, and add a new multisession variable.
>
> - If the old variable exists, use it.  Otherwise the new one.
>
> - Add a new command that "upgrades" the variable into a multisession
>   variable.  Make it say that it will break things on Emacs < 29.  Don't
>   run it automatically.
>
> - In Emacs version N (e.g., 5 major versions from now?), upgrade any
>   user automatically, without prompting, and make the defcustom
>   obsolete.

Hm...  I think this has the disadvantage that it both requires user
intervention, but in addition it'll force you into one usage pattern or
another at some point.

I think perhaps Stefan M's suggestion of adding a new user option to
control the behaviour here is the only practical way forward.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Mon, 05 Sep 2022 07:38:01 GMT) Full text and rfc822 format available.

Message #38 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Mon, 05 Sep 2022 09:37:10 +0200
>>>>> On Sun, 04 Sep 2022 12:52:47 +0200, Lars Ingebrigtsen <larsi <at> gnus.org> said:

    Lars> Stefan Kangas <stefankangas <at> gmail.com> writes:
    >> - Keep the old defcustom, and add a new multisession variable.
    >> 
    >> - If the old variable exists, use it.  Otherwise the new one.
    >> 
    >> - Add a new command that "upgrades" the variable into a multisession
    >> variable.  Make it say that it will break things on Emacs < 29.  Don't
    >> run it automatically.
    >> 
    >> - In Emacs version N (e.g., 5 major versions from now?), upgrade any
    >> user automatically, without prompting, and make the defcustom
    >> obsolete.

    Lars> Hm...  I think this has the disadvantage that it both requires user
    Lars> intervention, but in addition it'll force you into one usage pattern or
    Lars> another at some point.

    Lars> I think perhaps Stefan M's suggestion of adding a new user option to
    Lars> control the behaviour here is the only practical way forward.

Iʼm not convinced thatʼs necessary. I just did the following:

1. emacs-29+my patch, install some packages => no package-selected-packages
setting
2. emacs-28, run `package-list-packagesʼ => package-selected-packages
is populated with packages set in step 1, and saved in .emacs
3. emacs-28, install some packages
4. emacs-29+my-patch, `package-list-packagesʼ, error because it now
has a setting for package-selected-packages, which means we need to
call the multisession variable something different. I fixed that, and
the packages installed in step 3 show up [1]

So for the small number of people going backwards from emacs-29, the
problem fixes itself, and we can document that, and for people going
forwards to emacs-29 and staying there is no manual intervention
needed.

Robert

Footnotes:
[1]  We can now argue about what to call that variable. I went for
     `package-selected-packages-msʼ for now

-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Mon, 05 Sep 2022 11:17:01 GMT) Full text and rfc822 format available.

Message #41 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Robert Pluim <rpluim <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Mon, 05 Sep 2022 13:16:24 +0200
Robert Pluim <rpluim <at> gmail.com> writes:

> Iʼm not convinced thatʼs necessary. I just did the following:
>
> 1. emacs-29+my patch, install some packages => no package-selected-packages
> setting
> 2. emacs-28, run `package-list-packagesʼ => package-selected-packages
> is populated with packages set in step 1, and saved in .emacs

Oh, I didn't know that it was automatically recreated.  Then what's the
point of the variable?  According to the doc string:

---
Store here packages installed explicitly by user.
---

Does 2) there get that right, or does it contain all packages installed,
explicitly or not?





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Mon, 05 Sep 2022 11:52:02 GMT) Full text and rfc822 format available.

Message #44 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Mon, 05 Sep 2022 13:51:00 +0200
>>>>> On Mon, 05 Sep 2022 13:16:24 +0200, Lars Ingebrigtsen <larsi <at> gnus.org> said:

    Lars> Robert Pluim <rpluim <at> gmail.com> writes:
    >> Iʼm not convinced thatʼs necessary. I just did the following:
    >> 
    >> 1. emacs-29+my patch, install some packages => no package-selected-packages
    >> setting
    >> 2. emacs-28, run `package-list-packagesʼ => package-selected-packages
    >> is populated with packages set in step 1, and saved in .emacs

    Lars> Oh, I didn't know that it was automatically recreated.  Then what's the
    Lars> point of the variable?  According to the doc string:

I guess reading a variable is faster than recursing over the elpa
directory.

    Lars> ---
    Lars> Store here packages installed explicitly by user.
    Lars> ---

    Lars> Does 2) there get that right, or does it contain all packages installed,
    Lars> explicitly or not?

It contains the packages I installed using 'i' in list-packages, but
not their automatically installed dependencies.

Robert
-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Mon, 05 Sep 2022 13:15:01 GMT) Full text and rfc822 format available.

Message #47 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Mon, 05 Sep 2022 15:14:21 +0200
>>>>> On Mon, 05 Sep 2022 13:51:00 +0200, Robert Pluim <rpluim <at> gmail.com> said:

>>>>> On Mon, 05 Sep 2022 13:16:24 +0200, Lars Ingebrigtsen <larsi <at> gnus.org> said:
    Lars> Robert Pluim <rpluim <at> gmail.com> writes:
    >>> Iʼm not convinced thatʼs necessary. I just did the following:
    >>> 
    >>> 1. emacs-29+my patch, install some packages => no package-selected-packages
    >>> setting
    >>> 2. emacs-28, run `package-list-packagesʼ => package-selected-packages
    >>> is populated with packages set in step 1, and saved in .emacs

    Lars> Oh, I didn't know that it was automatically recreated.  Then what's the
    Lars> point of the variable?  According to the doc string:

Of course one use case that breaks is to do

emacs-29->emacs-28, *delete* some packages, and then go back to
emacs-29, which will pick up the old multi-session value.

I guess we could change emacs-29 to refresh the multi-session value
every time you run `list-packages'.

Robert
-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Mon, 05 Sep 2022 19:06:02 GMT) Full text and rfc822 format available.

Message #50 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Robert Pluim <rpluim <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Mon, 05 Sep 2022 21:04:52 +0200
Robert Pluim <rpluim <at> gmail.com> writes:

>     Lars> Oh, I didn't know that it was automatically recreated.  Then
>     Lars> what's the
>     Lars> point of the variable?  According to the doc string:

So it just caches data to speed things up, I guess?  

> Of course one use case that breaks is to do
>
> emacs-29->emacs-28, *delete* some packages, and then go back to
> emacs-29, which will pick up the old multi-session value.
>
> I guess we could change emacs-29 to refresh the multi-session value
> every time you run `list-packages'.

Hm.  Or...  refresh the value if the .emacs.d/elpa directory has fresher
contents than the multisession variable, but I don't know whether that's
faster.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Tue, 06 Sep 2022 08:19:01 GMT) Full text and rfc822 format available.

Message #53 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Tue, 06 Sep 2022 10:18:03 +0200
>>>>> On Mon, 05 Sep 2022 21:04:52 +0200, Lars Ingebrigtsen <larsi <at> gnus.org> said:
    >> Of course one use case that breaks is to do
    >> 
    emacs-29-> emacs-28, *delete* some packages, and then go back to
    >> emacs-29, which will pick up the old multi-session value.
    >> 
    >> I guess we could change emacs-29 to refresh the multi-session value
    >> every time you run `list-packages'.

    Lars> Hm.  Or...  refresh the value if the .emacs.d/elpa directory has fresher
    Lars> contents than the multisession variable, but I don't know whether that's
    Lars> faster.

How do we define 'fresher'? Anyway, if in doubt, use brute force:

(define-multisession-variable package-selected-packages-ms
                              (package--find-non-dependencies))

works fine. We could even condition it on `package-selected-packages'
being non-nil.

Robert
-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Tue, 06 Sep 2022 10:35:02 GMT) Full text and rfc822 format available.

Message #56 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Robert Pluim <rpluim <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Tue, 06 Sep 2022 12:34:00 +0200
Robert Pluim <rpluim <at> gmail.com> writes:

> How do we define 'fresher'?

I left that as an exercise for the reader.  🫠  

>  Anyway, if in doubt, use brute force:
>
> (define-multisession-variable package-selected-packages-ms
>                               (package--find-non-dependencies))
>
> works fine. We could even condition it on `package-selected-packages'
> being non-nil.

Hm...  I wonder whether we could just drop the variable altogether.
That is, checking for freshness sounds like as much work as
recalculating the variable.

What are the actual effects of the variable?  That is, what code is it
supposed to speed up?





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Tue, 06 Sep 2022 13:50:02 GMT) Full text and rfc822 format available.

Message #59 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>,
 Thierry Volpiatto <thierry.volpiatto <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Tue, 06 Sep 2022 15:49:29 +0200
>>>>> On Tue, 06 Sep 2022 12:34:00 +0200, Lars Ingebrigtsen <larsi <at> gnus.org> said:

    Lars> Robert Pluim <rpluim <at> gmail.com> writes:
    >> How do we define 'fresher'?

    Lars> I left that as an exercise for the reader.  🫠  

    >> Anyway, if in doubt, use brute force:
    >> 
    >> (define-multisession-variable package-selected-packages-ms
    >> (package--find-non-dependencies))
    >> 
    >> works fine. We could even condition it on `package-selected-packages'
    >> being non-nil.

    Lars> Hm...  I wonder whether we could just drop the variable altogether.
    Lars> That is, checking for freshness sounds like as much work as
    Lars> recalculating the variable.

On further testing, using package--find-non-dependencies doesnʼt seem
to work 100% correctly: installing a package in emacs-29 and then
going back to emacs-28 has it showing up as 'dependency', not
'installed', in `list-packages'.

    Lars> What are the actual effects of the variable?  That is, what code is it
    Lars> supposed to speed up?

Itʼs supposed to allow people to deactivate packages without
uninstalling them, I think, although Iʼve never used it like that, and
Iʼm not 100% sure it works, since `package--find-non-dependencies'
looks in `package-alist', which I presume contains all the packages
found in .emacs.d/elpa

Thierry, you added the defcustom, is there any light you can shed
here? From my perspective we can stop updating the defcustom, but
there are bound to be people using it for something.

Robert
-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Tue, 06 Sep 2022 14:31:02 GMT) Full text and rfc822 format available.

Message #62 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>,
 Thierry Volpiatto <thierry.volpiatto <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Tue, 06 Sep 2022 16:30:15 +0200
>>>>> On Tue, 06 Sep 2022 15:49:29 +0200, Robert Pluim <rpluim <at> gmail.com> said:

>>>>> On Tue, 06 Sep 2022 12:34:00 +0200, Lars Ingebrigtsen <larsi <at> gnus.org> said:
    Lars> Robert Pluim <rpluim <at> gmail.com> writes:
    >>> How do we define 'fresher'?

    Lars> I left that as an exercise for the reader.  🫠  

    >>> Anyway, if in doubt, use brute force:
    >>> 
    >>> (define-multisession-variable package-selected-packages-ms
    >>> (package--find-non-dependencies))
    >>> 
    >>> works fine. We could even condition it on `package-selected-packages'
    >>> being non-nil.

    Lars> Hm...  I wonder whether we could just drop the variable altogether.
    Lars> That is, checking for freshness sounds like as much work as
    Lars> recalculating the variable.

    Robert> On further testing, using package--find-non-dependencies doesnʼt seem
    Robert> to work 100% correctly: installing a package in emacs-29 and then
    Robert> going back to emacs-28 has it showing up as 'dependency', not
    Robert> 'installed', in `list-packages'.

OK, this is because emacs-28 doesnʼt always update
`package-selected-packages' the way I expected it to. I think weʼve
come full circle, and would have to have emacs-29 continue to update
it, unless itʼs explicitly set to some distinct value (Someone™
upthread suggested 'external).

Robert
-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Tue, 06 Sep 2022 16:33:02 GMT) Full text and rfc822 format available.

Message #65 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: <jakanakaevangeli <at> chiru.no>
To: Lars Ingebrigtsen <larsi <at> gnus.org>, Robert Pluim <rpluim <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Tue, 06 Sep 2022 18:45:21 +0200
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Robert Pluim <rpluim <at> gmail.com> writes:
>
>> How do we define 'fresher'?
>
> I left that as an exercise for the reader.  🫠  
>
>>  Anyway, if in doubt, use brute force:
>>
>> (define-multisession-variable package-selected-packages-ms
>>                               (package--find-non-dependencies))
>>
>> works fine. We could even condition it on `package-selected-packages'
>> being non-nil.
>
> Hm...  I wonder whether we could just drop the variable altogether.
> That is, checking for freshness sounds like as much work as
> recalculating the variable.
>
> What are the actual effects of the variable?  That is, what code is it
> supposed to speed up?

Isn't it used for distinguishing packages installed automatically as
dependencies from packages installed explicitly by the user? This
affects M-x package-autoremove.

And if my opinion counts, I like having the variable in my .emacs,
possibly under revision control. On a fresh machine, I can then simply
type M-x package-install-selected-packages to install all the packages
from the variable, and M-x package-autoremove to uninstall all packeges
not in listed the variable.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Wed, 07 Sep 2022 00:10:02 GMT) Full text and rfc822 format available.

Message #68 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Kangas <stefankangas <at> gmail.com>
To: jakanakaevangeli <at> chiru.no
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Lars Ingebrigtsen <larsi <at> gnus.org>, Philip Kaludercic <philipk <at> posteo.net>,
 Robert Pluim <rpluim <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be saved
 to custom-file
Date: Wed, 7 Sep 2022 02:09:25 +0200
<jakanakaevangeli <at> chiru.no> writes:

> And if my opinion counts, I like having the variable in my .emacs,
> possibly under revision control. On a fresh machine, I can then simply
> type M-x package-install-selected-packages to install all the packages
> from the variable, and M-x package-autoremove to uninstall all packeges
> not in listed the variable.

Can't this use case be supported with a multisession variable too though?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Wed, 07 Sep 2022 05:25:01 GMT) Full text and rfc822 format available.

Message #71 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: <jakanakaevangeli <at> chiru.no>
To: Stefan Kangas <stefankangas <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Lars Ingebrigtsen <larsi <at> gnus.org>, Philip Kaludercic <philipk <at> posteo.net>,
 Robert Pluim <rpluim <at> gmail.com>
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Wed, 07 Sep 2022 07:38:10 +0200
Stefan Kangas <stefankangas <at> gmail.com> writes:

> <jakanakaevangeli <at> chiru.no> writes:
>
>> And if my opinion counts, I like having the variable in my .emacs,
>> possibly under revision control. On a fresh machine, I can then simply
>> type M-x package-install-selected-packages to install all the packages
>> from the variable, and M-x package-autoremove to uninstall all packeges
>> not in listed the variable.
>
> Can't this use case be supported with a multisession variable too
> though?

Indeed it can, sorry. I was under the false impression that multisesion
variables were stored in a sqlite database by default, which isn't
suitable for revision control.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Wed, 07 Sep 2022 09:56:01 GMT) Full text and rfc822 format available.

Message #74 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: Stefan Kangas <stefankangas <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Lars Ingebrigtsen <larsi <at> gnus.org>, Philip Kaludercic <philipk <at> posteo.net>,
 jakanakaevangeli <at> chiru.no
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Wed, 07 Sep 2022 11:55:47 +0200
>>>>> On Wed, 7 Sep 2022 02:09:25 +0200, Stefan Kangas <stefankangas <at> gmail.com> said:

    Stefan> <jakanakaevangeli <at> chiru.no> writes:
    >> And if my opinion counts, I like having the variable in my .emacs,
    >> possibly under revision control. On a fresh machine, I can then simply
    >> type M-x package-install-selected-packages to install all the packages
    >> from the variable, and M-x package-autoremove to uninstall all packeges
    >> not in listed the variable.

    Stefan> Can't this use case be supported with a multisession variable too though?

Yes. The multisession variable would contain the same information, it
would just not be in the custom file. (I thought the whole reason for
this bug was that there was strong dislike for storing the selected
packages as a custom variable, precisely because it disturbed version
control)

Robert
-- 




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#57503; Package emacs. (Wed, 07 Sep 2022 12:40:02 GMT) Full text and rfc822 format available.

Message #77 received at 57503 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Robert Pluim <rpluim <at> gmail.com>
Cc: Joost Kremers <joostkremers <at> fastmail.fm>, 57503 <at> debbugs.gnu.org,
 Philip Kaludercic <philipk <at> posteo.net>, Stefan Kangas <stefankangas <at> gmail.com>,
 jakanakaevangeli <at> chiru.no
Subject: Re: bug#57503: 28.1.91; package-selected-packages should not be
 saved to custom-file
Date: Wed, 07 Sep 2022 14:39:31 +0200
Robert Pluim <rpluim <at> gmail.com> writes:

> Yes. The multisession variable would contain the same information, it
> would just not be in the custom file. (I thought the whole reason for
> this bug was that there was strong dislike for storing the selected
> packages as a custom variable, precisely because it disturbed version
> control)

Yes, that was the original complaint -- that a user may have different
installed packages on different machines, but want to use the same
.emacs file.  And in that case, package-selected-packages would be
wrong.

So there seems to be different use cases.




This bug report was last modified 2 years and 343 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.