Subject: 30.1; org-persist annoyance

From: Thierry Volpiatto <[email-masked]>
Date: Sat, 02 Aug 2025 08:58:01 +0000

Hello,

I thought I have desactived org-persist for good by advicing org-persist-register
but things have changed again and even with this org-persist continue to
create a directory in ~/.cache/.  So I deleted this directory, then I
restarted emacs and try to set org-directory to nil which is not allowed
apparently. I restarted emacs again and had an error something like
wrong-type-argument nil (for org-directory I imagine) and a y-or-n-p to
continue or not, I said yes, emacs restarted but all my config files had
been deleted, init.el, early-init, gnus etc... hopefully all these files
are under git and I restored all.  I finally found how to disable this
org-persist annoyance by advicing a bunch of functions to 'ignore and
disabling some hooks.
IIRC this have been already reported and requested in the past to
provide an easy way to disable this evil thing, but it seems it is
always here, thus now it may corrupt elisp files unrelated to org.

In GNU Emacs 30.1 (build 6, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.16.0, Xaw3d scroll bars) of 2025-05-29 built on IPad-S340
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: Linux Mint 21.3

Configured using:
 'configure CFLAGS=-O8 --bindir=/usr/local/sbin/emacs-30.1 --with-cairo
 --with-x-toolkit=lucid --with-modules --without-tree-sitter
 --without-native-compilation --disable-gc-mark-trace'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS X11 XAW3D XDBE XIM XINPUT2 XPM LUCID ZLIB

Important settings:
  value of $LANG: fr_FR.UTF-8
  locale-coding-system: utf-8-unix

Major mode: 

Minor modes in effect:
  server-mode: t
  psession-mode: t
  psession-savehist-mode: t
  global-git-gutter-mode: t
  display-time-mode: t
  winner-mode: t
  tv-save-place-mode: t
  helm-epa-mode: t
  helm-descbinds-mode: t
  helm-top-poll-mode: t
  helm-adaptive-mode: t
  helm-mode: t
  helm-minibuffer-history-mode: t
  helm-ff-icon-mode: t
  helm-popup-tip-mode: t
  dired-async-mode: t
  minibuffer-depth-indicate-mode: t
  gcmh-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  minibuffer-regexp-mode: 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:
None found.

Features:
(shadow sort epa-mail mail-extr gnus-topic hl-line nndraft nnmh utf-7
nnfolder epa-file network-stream nsm gnus-agent gnus-srvr gnus-score
score-mode nnvirtual gnus-msg nntp gnus-cache emacsbug helm-command
helm-elisp helm-eval edebug debug backtrace helm-info tramp-archive
tramp-gvfs tramp-cache time-stamp zeroconf helm-ls-git vc-git vc
vc-dispatcher markdown-mode color make-mode conf-mode flycheck
ledger-mode ledger-check ledger-texi ledger-test ledger-sort
ledger-report ledger-reconcile ledger-occur ledger-fonts ledger-fontify
ledger-state ledger-complete ledger-schedule ledger-xact ledger-post
ledger-exec ledger-init ledger-navigate eshell esh-cmd esh-ext esh-opt
esh-proc esh-io esh-arg esh-module esh-module-loaddefs esh-util
ledger-context ledger-commodities ledger-regex oc-basic cl-extra
org-element org-persist org-id org-refile org-element-ast inline
avl-tree generator ol-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc
ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime
gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group
gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail
mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win gnus
nnheader range ol-docview doc-view jka-compr ol-bibtex bibtex ol-bbdb
ol-w3m ol-doi org-link-doi org-config ob-gnuplot org-crypt org ob
ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src sh-script smie
treesit executable ob-comint org-pcomplete org-list org-footnote
org-faces org-entities noutline outline org-version ob-emacs-lisp
ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys
oc org-loaddefs find-func org-compat org-macs bug-reference thingatpt
cus-start naquadah-tv-theme view mule-util solar cal-dst holidays
holiday-loaddefs appt diary-lib diary-loaddefs cal-menu calendar
cal-loaddefs server imenu tv-utils psession frameset vundo-popup vundo
mail-config gnus-patch diff-mode track-changes addressbook-bookmark
message sendmail yank-media puny rfc822 mml mml-sec 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
bookmark git-gutter pcase avoid dired-extension time winner
describe-variable help-fns radix-tree tv-save-place.el init-helm epa
derived epg rfc6068 epg-config helm-epa helm-descbinds cus-edit pp
cus-load wid-edit helm-sys helm-adaptive helm-mode helm-misc helm-files
image-dired image-dired-tags image-dired-external image-dired-util
image-mode exif filenotify tramp rx trampver tramp-integration files-x
tramp-message help-mode tramp-compat xdg shell pcomplete parse-time
iso8601 time-date tramp-loaddefs helm-buffers helm-x-icons all-the-icons
all-the-icons-faces data-material data-weathericons data-octicons
data-fileicons data-faicons data-alltheicons helm-occur helm-tags
helm-locate helm-grep wgrep-helm wgrep grep compile text-property-search
comint ansi-osc ring project helm-regexp format-spec ansi-color
helm-utils helm-help helm-types helm-extensions-autoloads helm-autoloads
helm helm-global-bindings helm-easymenu edmacro kmacro helm-core
helm-source helm-multi-match helm-lib dired-async async dired-aux dired
dired-loaddefs isl-autoloads mb-depth gcmh easy-mmode
all-the-icons-autoloads bash-completion-autoloads emms-autoloads
flycheck-autoloads info ledger-mode-autoloads markdown-mode-autoloads
nerd-icons-autoloads w3m-load w3m-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 icons 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/x-win x-win
term/common-win x-dnd touch-screen 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 lcms2 dynamic-setting system-font-setting
font-render-setting cairo x-toolkit xinput2 x multi-tty move-toolbar
make-network-process emacs)

Memory information:
((conses 16 566978 575410) (symbols 48 38072 2)
 (strings 32 186037 54988) (string-bytes 1 5193755) (vectors 16 69942)
 (vector-slots 8 670855 190434) (floats 8 2508 1413)
 (intervals 56 3615 340) (buffers 984 106))

-- 
Thierry