emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Max Nikulin <manikulin@gmail.com>
To: emacs-orgmode@gnu.org
Subject: Re: [BUG] Org V 9.5 error when ~/.cache doesn't exist
Date: Wed, 3 Nov 2021 23:07:27 +0700	[thread overview]
Message-ID: <sluc40$h8m$1@ciao.gmane.io> (raw)
In-Reply-To: <87ee7yaksm.fsf@localhost>

On 02/11/2021 17:55, Ihor Radchenko wrote:
> Max Nikulin writes:
> 
>> Ihor, your fix affects linux as well. .cache directory may be missed in
>> fresh accounts. E.g. I just have created a new test container (my old
>> one has emacs-25):
> 
> After second thought, I am not sure anymore if using XDG is a good idea.
> Emacs itself only recently started supporting XDG and the support is
> somewhat limited. Similar to the described case with non-existing .cache
> directory, Emacs ignores non-existing .config/emacs folder for init.el.
> Emacs never creates .config directory.
...
> 4. Same as 3, but create $XDG_CACHE_DIR if possible. It is similar to
>     other XDG-complient software (at least, that's what I saw in
>     qutebrowser code).

I like the idea to put temporary automatically created files to a 
dedicated directory. Backups are easier when hand-written config files 
are separated from stuff that can be recreated on demand. Since enough 
applications follow XDG conventions, I suppose, XDG_CACHE_HOME=~/.cache 
is a reasonable variant consistent with user expectations. Emacs 
directory may be a fallback when XDG_CACHE_HOME can not be created. I am 
against using ~/.cache only if it already exists. It may result in stale 
cache in the emacs directory populated before another application 
created ~/.cache, so user would have 2 directories with cache files.

I agree that xdg.el lacks some useful features. Even parts of emacs such 
as startup.el and files.el do not use this package. Similar libraries 
for other programming languages offer wider support of OSes and create 
directories on demand, e.g. https://github.com/adrg/xdg for Go.

Maybe org-macs.el is a better place for code dealing initialization of 
cache directory.


P.S. `org-open-file' may benefit from using of xdg.el. MIME handlers 
obtained from .desktop files should be more consistent with expectations 
of users of desktop environments.



  parent reply	other threads:[~2021-11-03 16:08 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-31 19:18 [BUG] Org V 9.5 error when ~/.cache doesn't exist [9.5 (9.5-gd4e192 @ c:/Users/scott/.emacs.d/straight/build/org/)] Scott Otterson
2021-11-01 11:29 ` Ihor Radchenko
2021-11-01 15:44   ` [BUG] Org V 9.5 error when ~/.cache doesn't exist Max Nikulin
2021-11-01 16:30     ` Ihor Radchenko
2021-11-01 16:31       ` Ihor Radchenko
2021-11-02 10:55     ` Ihor Radchenko
2021-11-02 19:46       ` Tim Cross
2021-11-03 16:07       ` Max Nikulin [this message]
2021-11-05 13:27         ` Kaushal Modi
2021-11-05 13:29           ` Kaushal Modi
2021-11-05 13:32           ` Kaushal Modi
2021-11-05 13:50             ` Ihor Radchenko
2021-11-05 22:08               ` Kaushal Modi
2021-11-05 22:13               ` Tim Cross
2021-11-10  2:23       ` Ihor Radchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='sluc40$h8m$1@ciao.gmane.io' \
    --to=manikulin@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).