XDG_DATA_HOME vs XDG_STATE_HOME usage

Josef Šimánek josef.simanek at gmail.com
Mon Sep 12 21:39:26 UTC 2022


Hello!

In RubyGems [1] we would like to keep the date of last software update
check (just UNIX timestamp) in file, but we're not sure which
directory to use to keep this info according to XDG Base Directory
specification.

According to the specification, it seems XDG_STATE_HOME is the best
place to store this file. But looking at the Debian explanation [2]
XDG_STATE_HOME directory is not recommended to be synced across
machines.

This file is portable between systems, since the whole content is just
a number (UNIX timestamp). It is not crucial to the user, but it is
beneficial to sync this across machines to avoid potentially redundant
update recommendations. Our plan is to recommend update only once per
week thanks to this stored UNIX timestamp.

Is there any recommendation which folder to use for our use case? Any
advice would be much appreciated.

Josef

[1] https://github.com/rubygems/rubygems/pull/5922#discussion_r967752848
[2] table at the end of https://wiki.debian.org/XDGBaseDirectorySpecification


More information about the xdg mailing list