move config/ to data/config/

Authored by zmike on May 15 2018, 6:30 AM.


move config/ to data/config/

this is part of the datadir distribution, it should not be in a different
directory than the rest of the datadir distribution

the gnu coding standards (https://www.gnu.org/prep/standards/html_node/Directory-Variables.html)
define 'datadir' as:

The directory for installing idiosyncratic read-only architecture-independent
data files for this program. This is usually the same place as ‘datarootdir’,
but we use the two separate variables so that you can move these program-specific
files without altering the location for Info files, man pages, etc.

This should normally be /usr/local/share, but write it as $(datarootdir).
(If you are using Autoconf, write it as ‘@datadir@’.)

The definition of ‘datadir’ is the same for all packages, so you should install your
data in a subdirectory thereof. Most packages install their data under $(datadir)/package-name/.

while this text has no clear requirement or suggestion for a corresponding
repository layout, projects typically employ a certain consistency in their
repository layout both for ease of maintenance and ease of learning for new

this project has both a data/ directory, which contains the datadir distribution,
as well as the config/ directory, which also contains the datadir distribution.
this complicates matters both for active maintainers/developers who must
remember that the repository and build tree layouts have this exception,
and for new contributors who will initially be confused by this exception

other well-organized open source projects, such as wayland, have chosen to not
use a data/ directory. these projects have the datadir distribution in the base
directory of the repositor, which is a fine practice as it maintains consistency
for the project since all the files for the datadir distribution are in the same

by applying this patch, the project will move towards a more easily readable and
learnable layout. current and future developers will no longer need to wonder why
this directory is outside of the data/ directory, and anyone attempting to reference
these files from the source/build trees will be able to do so more easily

ref D6013

Reviewers: cedric, raster, bu5hm4n

Reviewed By: raster

Subscribers: devilhorns

Tags: enlightenment-git

Differential Revision: https://phab.enlightenment.org/D6154


zmikeAug 2 2018, 6:58 AM
Differential Revision
D6154: move config/ to data/config/
rEbd3e00d46384: update arcconfig key:values for new phabricator api
Reverted By
rE52030b2fc1e6: Revert "move config/ to data/config/"