Page MenuHomePhabricator

move config/ to data/config/

Authored by zmike on May 10 2018, 8:43 AM.



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 (
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

Diff Detail

rE core/enlightenment
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.
zmike created this revision.May 10 2018, 8:43 AM
zmike requested review of this revision.May 10 2018, 8:43 AM

ok. good log. probably more log than needed, but better indeed. and a lick patch for efl. feel free to push when ready

raster accepted this revision.May 11 2018, 2:26 AM
This revision is now accepted and ready to land.May 11 2018, 2:26 AM
Closed by commit rE05d3f2d39376: move config/ to data/config/ (authored by zmike, committed by Marcel Hollerbach <>). · Explain WhyMay 15 2018, 7:00 AM
This revision was automatically updated to reflect the committed changes.