Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have a netbook and desktop which I'd like to share application configuration between through Dropbox.

Currently my netbook is set to symlink ~/.config -> ~/Dropbox/.config which it's working fine. I'm about to add this setup to my desktop but thought I'd ask about it first.

Is it safe to sync ~/.config/ between computers?

share|improve this question
    
I do that all the time using dropbox and wget. :) –  Evandro Silva Oct 31 '12 at 1:34
add comment

3 Answers 3

up vote 4 down vote accepted

short answer

No - without some more effort this is not a save procedure to simply sync all the configuration files below ~/.config.

detailed answer

This approach is limited through the following prerequisites:

  • Dependencies to the installed applications, especially the plugin components of an application.
  • Same file system structure on both systems.
    E.g. /home/Alice and /home/Bob will fail because a lot of configuration data use the qualified path and not the '~' reference to the user home directory. (In my .config directory 30 (of 92) applications are affected by this problem.)
  • The network infrastructure may be different.
    E.g. desktop (with NFS, LDAP based user accounts) versus mobile laptop.
  • You have to think about changes of configurations and collision handling.
    Because the data may be critical I would advice to use a version control system (e.g. subversion) as backend for storing the data.

  • The config directories may contain volatile data not suitable for synchronizing:

    • lock file (e.g. chromium/SingletonLock) which should be excluded.
    • cache directories
    • ...

But give it a try and report your success and "lessons learned" :-)

I agree that the current situation below linux isn't suitable for working with multiple devices.

The problem is that most of the configuration data is stored in the file system and either gnome, kde or freedesktop provide a network accessible configuration repository and an precedence schema for local an shared configuration data.

My workaround is that I try to configure as much as useful below /etc and share this configuration (via subversion). This approach evolved currently to an inhouse framework of 5k lines of bash code and over 2000 data files. It handles currently 4 desktop, 5 mobile and 2 server machines.

For some of my own data below ~/.config, ~/.thunderbird (...) I use an similar approach.

share|improve this answer
    
This answer is great, but will gain a lot with a short answer version: Just a No. –  Javier Rivera Oct 31 '12 at 8:28
    
As I described at the end: I do it, but with a little bit more effort ;-) –  H.-Dirk Schmitt Oct 31 '12 at 8:33
    
But the original question was about using dropbox to sync .config, and the answer to this is "no, but...". ;). Anyway, it is a great answer, already upvoted, but I just believe that for some people (the one that don't know what subversion is) a simpler answer could be more helpful. –  Javier Rivera Oct 31 '12 at 9:03
add comment

Yes, this will work just fine. Make sure to back up your .config folders first to prevent catastrophe.

share|improve this answer
add comment

Yes it should be. Theoretically you could run into some funny side effect, if applications using the configuration there are still open, while you refresh theire config files. In some cases the programs might not accept those changes and restore their old config once they terminate.

However the .config directory should only store program settings and is not supposed to store any user data (.local does that, and a bunch of other .-dirs). So the data there is of limited importance anyway.

Don't expect too much however. A lot of programs still store their configuration in directorys named after the program (i.e. .mozilla or .openarena). Most notably your gtk and gnome settings are not stored inside .config.

In my opinion this is rather a good thing. I find it clearer if you can always relate a program to a bunch of configuration files. In .config this is sometimes complicated (curse XDG). The result is that you might want to consider syncing some other .-directories as well.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.