Skip to content

Atom helper package to sync configs via ownCloud/nextCloud/DropBox/etc

License

Notifications You must be signed in to change notification settings

nekromant/atom-ownsync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The atom-ownsync package

BIG FAT WARNING: This plugin is very early alpha. If you are going to try it out - MAKE YOUR OWN BACKUP of the .atom folder in case bugs happen.

This package provides a simple way to sync your atom configuration over several computers via existing file synchronization tools. This package is planned to have 2 modes of operation:

  • Tarball mode. Prepare atom configuration tarballs and put them in a directory which is synchronised via ownCloud/nextCloud/DropBox/etc. And vice-versa.

  • Git mode. Commit all the changed configuration files into git and push/pull to synchronize. (Planned! Not yet implemented)

Getting started

  • Install the plugin
apm install atom-ownsync
  • Navigate to the package settings and adjust the tarball storage directory (that should be in your dropbox/owncloud/nextcloud folder).

  • The rest of the stuff is optional

  • Create your first configuration package

Why not just add/symlink .atom to your dropbox folder?

.atom directory contains thousands of files, thanks to the way nodejs and the rest of the software stack works. Synchronization of thousands of small files is painfully slow and provides a HUGE load both for the desktop sync client and the server your are synchronizing with. Pushing a .tar file back and forth is way faster, though consumes a bit of network traffic.

Works under

  • linux
  • mac
  • windows

WARNING: This plugin is very early alpha. Only been tested and works on linux and mac, since it relies on tar for creating tarballs. Windows support is on the way

HELP WANTED: The author of this plugin is not very familiar with js/coffeescript being more a linux kernel dev. If you are a js guru and can spare a few minutes to do a proper code review I'd be very grateful

TODO:

  • Implement basic config file tarballing
  • Implement settings for configuration/archive names storage
  • Update changed configuration on the fly
  • Handle relative paths to tarball directory
  • Multiple tarball directories
  • Make tarball operation atomic
  • Make sure this stuff works on windows
  • Make sure this stuff works on mac
  • Check file modification dates to determine if tarballing is really needed
  • Automatically restore on start
  • Automatically backup on exit
  • Implement git backend
  • ...
  • PROFIT!

A screenshot of your package

About

Atom helper package to sync configs via ownCloud/nextCloud/DropBox/etc

Resources

License

Stars

Watchers

Forks

Packages

No packages published