Subject: bug#73593: 29.4; desktop-save-mode does not store window configurations

From: Bob Hepple <[email-masked]>
Date: Wed, 2 Oct 2024 10:41:41 +1000

--text follows this line--

>From emacs -Q:
M-x desktop-save-mode
C-x r w 0
C-x C-c
restart emacs -Q
C-u M-x desktop-read
C-x r j 0
Error: "Register doesn't contain a buffer position or configuration"

The .emacs.desktop file contains:
(setq register-alist (list (list 48 "Unprintable entity" (let ((mk
(make-marker))) (add-hook 'desktop-delay-hook (lambda nil (set-marker
mk 146 (get-buffer "*scratch*")))) mk))))

... which is useless

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=54140 is similar but
drifted off into a discussion of terminal mode.

Note that
In GNU Emacs 29.4 (build 2, x86_64-unknown-linux-gnu, GTK+ Version
 3.24.42, cairo version 1.18.0) of 2024-06-25 built on a-fsn-de
System Description: Void Linux

Configured using:
 'configure --with-pgtk --prefix=/usr --sysconfdir=/etc
 --sbindir=/usr/bin --bindir=/usr/bin --mandir=/usr/share/man
 --infodir=/usr/share/info --localstatedir=/var
 --host=x86_64-unknown-linux-gnu --build=x86_64-unknown-linux-gnu
 '--libdir=${exec_prefix}/lib64' --with-file-notification=inotify
 --with-modules --with-jpeg --with-tiff --with-gif --with-png
 --with-webp --with-xpm --with-rsvg --without-imagemagick --with-xml2
 --with-gnutls --with-sound --with-m17n-flt --with-json --with-harfbuzz
 --with-cairo --with-libgmp --with-sqlite3 --with-tree-sitter
 --with-native-compilation=aot 'CFLAGS=-fno-PIE -mtune=generic -O2 -pipe
 -g -ffile-prefix-map=/builddir/emacs-29.4=.' 'CPPFLAGS= '
 'LDFLAGS=-no-pie -Wl,--as-needed ''

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LCMS2 LIBOTF LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG
RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER
WEBP XIM GTK3 ZLIB

Important settings:
  value of $LC_ALL: en_AU.utf8
  value of $LANG: C
  locale-coding-system: utf-8-unix

Major mode: Messages

Minor modes in effect:
  recentf-mode: t
  which-function-mode: t
  doom-modeline-mode: t
  global-goto-address-mode: t
  goto-address-mode: t
  pixel-scroll-precision-mode: t
  delete-selection-mode: t
  server-mode: t
  global-auto-revert-mode: t
  corfu-history-mode: t
  corfu-popupinfo-mode: t
  global-corfu-mode: t
  corfu-mode: t
  marginalia-mode: t
  savehist-mode: t
  vertico-buffer-mode: t
  vertico-mode: t
  popper-echo-mode: t
  popper-mode: t
  global-git-gutter-mode: t
  key-chord-mode: t
  which-key-mode: t
  override-global-mode: t
  desktop-save-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/home/bhepple/.emacs.d/elpa/transient-20240902.1048/transient hides
/usr/share/emacs/29.4/lisp/transient
/home/bhepple/.emacs.d/elpa/hierarchy-20190425.842/hierarchy hides
/usr/share/emacs/29.4/lisp/emacs-lisp/hierarchy

Features:
(shadow sort mail-extr emacsbug vertico-directory cursor-sensor pulse
face-remap consult-register consult display-line-numbers add-log python
sh-script smie treesit executable conf-mode dired-aux disp-table
org-indent oc-basic ol-eww eww mm-url ol-rmail ol-mhe ol-irc ol-info
ol-gnus nnselect ol-docview doc-view ol-bibtex bibtex ol-bbdb ol-w3m
ol-doi org-link-doi vc-git diff-mode vc-dispatcher vc-src rainbow-mode
recentf tree-widget which-func doom-modeline doom-modeline-segments
doom-modeline-env doom-modeline-core shrink-path f nerd-icons
nerd-icons-faces nerd-icons-data nerd-icons-data-mdicon
nerd-icons-data-flicon nerd-icons-data-codicon nerd-icons-data-devicon
nerd-icons-data-sucicon nerd-icons-data-wicon nerd-icons-data-faicon
nerd-icons-data-powerline nerd-icons-data-octicon
nerd-icons-data-pomicon nerd-icons-data-ipsicon modus-operandi-theme
modus-themes goto-addr pixel-scroll cua-base delsel server autorevert
mu4e mu4e-org mu4e-notification notifications mu4e-main mu4e-view
gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum
gnus-group gnus-undo gnus-start gnus-dbus dbus gnus-cloud nnimap nnmail
mail-source utf7 nnoo parse-time iso8601 gnus-spec gnus-int gnus-range
gnus-win gnus nnheader range mu4e-headers mu4e-compose mu4e-draft
mu4e-actions smtpmail mu4e-search mu4e-lists mu4e-bookmarks mu4e-mark
mu4e-message flow-fill mule-util hl-line mu4e-contacts mu4e-update
mu4e-folders mu4e-context mu4e-query-items mu4e-server mu4e-modeline
mu4e-vars mu4e-helpers mu4e-config mu4e-window ido mu4e-obsolete cape
corfu-history corfu-popupinfo corfu orderless marginalia savehist
vertico-buffer vertico compat compat-30 compat-macs dumb-jump popup dash
s polymode poly-lock polymode-base polymode-weave polymode-export
polymode-compat polymode-methods polymode-core polymode-classes
eieio-custom eieio-base color org-beautify-theme popper-echo popper
pdf-tools cus-edit cus-load pdf-view jka-compr pdf-cache pdf-info tq
pdf-util pdf-macs image-mode exif git-gutter key-chord comp comp-cstr
speedbar ezimage dframe json-navigator hierarchy eglot
external-completion array filenotify jsonrpc ert ewoc debug backtrace
xref flymake-proc flymake warnings project imenu advice elfeed-dashboard
org-element org-persist xdg org-id org-refile org ob ob-tangle ob-ref
ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete
pcomplete org-list org-footnote org-faces org-entities noutline outline
icons ob-emacs-lisp ob-core ob-eval org-cycle org-table org-keys oc
org-loaddefs find-func cal-menu calendar cal-loaddefs ol rx org-fold
org-fold-core org-compat org-version org-macs format-spec elfeed-show
elfeed-search message sendmail yank-media dired dired-loaddefs rfc822
mml mml-sec epa epg rfc6068 epg-config gnus-util mm-decode mm-bodies
mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums
mail-prsvr mailabbrev mail-utils gmm-utils mailheader shr pixel-fill
kinsoku puny svg dom elfeed-csv elfeed elfeed-curl elfeed-log elfeed-db
elfeed-lib time-date avl-tree generator url-queue url-file xml-query xml
bookmark pp wid-edit use-package-ensure rpm-spec-mode gk-ibuffer
ibuf-macs ibuffer-vc ibuf-ext ibuffer ibuffer-loaddefs which-key
use-package-diminish edmacro kmacro use-package-bind-key bind-key
easy-mmode desktop frameset whitespace ripgrep derived thingatpt grep
compile text-property-search comint ansi-osc ansi-color ring
use-package-core cl-extra help-mode finder-inf cl
all-the-icons-autoloads browse-kill-ring-autoloads cape-autoloads
casual-re-builder-autoloads casual-lib-autoloads
cc-isearch-menu-autoloads company-autoloads consult-dir-autoloads
corfu-autoloads csv-mode-autoloads discover-my-major-autoloads
doom-modeline-autoloads dumb-jump-autoloads elfeed-dashboard-autoloads
elfeed-autoloads embark-consult-autoloads consult-autoloads
embark-autoloads esup-autoloads expand-region-autoloads
git-gutter-autoloads helpful-autoloads elisp-refs-autoloads
ibuffer-vc-autoloads iflipb-autoloads json-navigator-autoloads
hierarchy-autoloads key-chord-autoloads magit-autoloads pcase
magit-section-autoloads makey-autoloads marginalia-autoloads
markdown-mode-autoloads neotree-autoloads nerd-icons-autoloads
orderless-autoloads org-beautify-theme-autoloads pdf-tools-autoloads
polymode-autoloads popper-autoloads popup-autoloads
rainbow-mode-autoloads ripgrep-autoloads shrink-path-autoloads
f-autoloads dash-autoloads s-autoloads tablist-autoloads
transient-autoloads transpose-frame-autoloads vertico-autoloads
vterm-autoloads which-key-autoloads with-editor-autoloads info
compat-autoloads package browse-url url url-proxy url-privacy url-expand
url-methods url-history url-cookie generate-lisp-file url-domsuf
url-util mailcap url-handlers url-parse auth-source cl-seq eieio
eieio-core cl-macs password-cache json subr-x map byte-opt gv bytecomp
byte-compile url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv
eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type
elisp-mode mwheel term/pgtk-win pgtk-win term/common-win pgtk-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 nadvice seq
simple cl-generic indonesian philippine 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 abbrev obarray oclosure cl-preloaded button
loaddefs theme-loaddefs faces cus-face macroexp files window
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget keymap hashtable-print-readable backquote threads dbusbind
inotify dynamic-setting system-font-setting font-render-setting cairo
gtk pgtk lcms2 multi-tty make-network-process native-compile emacs)

Memory information:
((conses 16 1047091 813325)
 (symbols 48 46754 2)
 (strings 32 435593 56036)
 (string-bytes 1 14207078)
 (vectors 16 131693)
 (vector-slots 8 2089700 953079)
 (floats 8 16344 2664)
 (intervals 56 5315 2372)
 (buffers 984 52))