59

I have recently started using Atom editor. Its pretty great so far. I am planning to install it on several other machines.

How can I replicate the config and list of packages installed on my current machine to other machines. Is there a config that I can use to export and import them on other machines.

BuZZ-dEE
  • 6,075
  • 12
  • 66
  • 96
jsbisht
  • 9,079
  • 7
  • 50
  • 55
  • 3
    possible duplicate of [how to sync Packages and settings for multiple computer in Github Atom Editor](http://stackoverflow.com/questions/29879947/how-to-sync-packages-and-settings-for-multiple-computer-in-github-atom-editor) – AtomTips May 03 '15 at 13:29

7 Answers7

68

Use Git to version control your config file (~/.atom/config.cson), and any other config files (dotfiles) you may have.

You can then host your Git repository for free on somewhere like GitHub, and retrieve it on other computers simply by running git clone https://github.com/{username}/{repo}.

You can then keep it up to date using git push (to upload changes) and git pull (to download changes).

To track installed packages as well, you will need to run:

apm list --installed --bare > ~/.atom/package.list

And add that file to Git also. To restore, use:

apm install --packages-file ~/.atom/package.list
Zaz
  • 46,476
  • 14
  • 84
  • 101
33

You can use the apm command to save/restore installed packages.

To export packages (only packages name):

apm list --installed --bare > ~/Gdrive/backup.txt

To import packages:

apm install --packages-file ~/Gdrive/backup.txt

On Linux apm is available if you install Atom from .deb file.

On OSX: open atom -> install shell command

Windows: apm in C:\Users\YOUR_NAME\AppData\Local\atom\bin

vuhung3990
  • 6,353
  • 1
  • 45
  • 44
11

atom-package-sync is a package that I created a couple weeks ago. It works a little bit like the synchronization of Google Chrome, you just login and it syncs your packages and settings automatically across all your Atom instances.

enter image description here

I plan to release the source code for the server side in the coming weeks and add an export feature for alternative backups.

Mathew
  • 670
  • 1
  • 11
  • 21
  • When it asks to enter my Google's account login and password, how can I now I'm actually on Google's page? There is no even an address field to check for certificate at least. – Slaus Feb 12 '20 at 03:46
8

This question was already (if I understood you correctly) in how to sync Packages and settings for multiple computers in Github Atom Editor.

You might find the answer in a blog post I wrote. I hope it helps How to synchronize Atom between computers.

hillsy
  • 671
  • 6
  • 12
AtomTips
  • 1,189
  • 9
  • 7
  • 1
    I previously use github to sync my atom config - the whole .atom folder. But found that sync all the packages are very slow and make my repo extremely huge (every time when i upgrade my packages, i'll push those changes to repo). I'm wondering if there is a simple way that i only sync a list of my packages (with version number and custom config if any), without the detail content of each package. – calfzhou Jun 06 '15 at 03:45
  • 1
    @calfzhou Add .apm blob-store packages to the .gitignore file that is there. – PhiLho Dec 21 '15 at 15:49
  • 2
    Please, put the relevant parts of your blog post into your answer as without the link, your answer isn't really answering the question and it should be a comment instead. A link is ok as an additional source. – Emile Bergeron Mar 19 '16 at 20:51
3

On OSX/macOS:

  1. Open Terminal on the computer which has the settings you want to preserve / sync to others.
  2. Move your ~/.atom folder to Dropbox or other synced service (~ represents your /users/<your_username> folder), like so:

    mv ~/.atom ~/Dropbox/atom
    
  3. Open terminal, and make a symlink that connects the place Atom expects its config to be (~/.atom), to your synced folder, like so:

    ln -s ~/Dropbox/atom ~/.atom
    
  4. On other computers you want to use these settings, open Terminal and run:

    rm -rf ~/.atom && ln -s ~/Dropbox/atom ~/.atom
    

    (This deletes the .atom folder and adds the symlink in one line.)

With this method, your settings are automatically in sync on each computer, no need to manually update anything.

The only potential bug I have noticed can occur if your settings specify a font which another computer does not have. Installing the font on that computer fixes. All packages, themes & settings installed by Atom are automatically there.

This same method can be used for many apps (WebStorm, Sublime Text, iTunes are a few examples).

Michael Liquori
  • 619
  • 10
  • 16
0

The atom package manager supports starring packages, either online (through atom.io/packages and atom.io/themes) or on the commandline using

apm star <packagename>

or

apm star --installed

to star all of your installed packages.

Starred packages can then be easily installed using:

apm stars --install 

Note that starring packages requires logging in to atom.io using your github account.

Seth
  • 528
  • 3
  • 16
  • 32
0

Install a package called sync-settings using atom package installer Use Github Personal Access Token And create Gist Secret for ~\username\.atom\config.cson file On your primary Atom computer, navigate to packages > Synchronize Settings > backup

On target machines install sync-settings, then use Restore function from Synchronize settings.
Some of the packages that you had to run PIP, you would need to run pip on target machines as well, otherwise, you good to go.

Sean
  • 680
  • 7
  • 10