Metadata-Version: 2.0
Name: mine
Version: 0.4.3
Summary: mine
Requires-Dist: YORM (~=0.8.1)
Requires-Dist: psutil (~=2.1)

====

    ...for applications that haven't learned to share.

| |Build Status|
| |Coverage Status|
| |Scrutinizer Code Quality|
| |PyPI Version|
| |PyPI Downloads|

This program lets you synchronize application data using Dropbox.

It automatically starts and stops programs that would otherwise fight
over data in a shared folder and ensures only one instance is running.
Many applications work fine when their data is stored in Dropbox, but
some programs overwrite databases:

-  iTunes
-  iPhoto
-  etc.

while others periodically write snapshot data:

-  Eclipse
-  Xcode
-  etc.

and some just don't make sense to keep running on all your computers:

-  Slack
-  HipChat
-  etc.

Getting Started
===============

Requirements
------------

-  Python 3.3+

Installation
------------

``mine`` can be installed with pip:

::

    $ pip install mine

or directly from the source code:

::

    $ git clone https://github.com/jacebrowning/mine.git
    $ cd mine
    $ python setup.py install

Setup
-----

Create a ``mine.yml`` in your Dropbox:

::

    config:
      computers:
      - name: My iMac
        hostname: My-iMac.local
        address: 00:11:22:33:44:55
      - name: My MacBook Air
        hostname: My-MacBook-Air.local
        address: AA:BB:CC:DD:EE:FF
      applications:
      - name: iTunes
        properties:
          auto_queue: false
          single_instance: true
        versions:
          mac: iTunes.app
          windows: iTunes.exe
          linux: null
      - name: Slack
        properties:
          auto_queue: true
          single_instance: false
        versions:
          mac: Slack.app
          windows: null
          linux: null

Include the applications you would like ``mine`` to manage. Computers
are added automatically when ``mine`` is run.

The ``versions`` dictionary identifies the name of the executable on
each platform. The ``properties.auto_queue`` setting indicates ``mine``
should attempt to launch the application automatically when switching
computers. The ``properties.single_instance`` setting indicates the
application must be closed on other computers before another instance
can start.

Basic Usage
===========

To synchronize the current computer's state:

::

    $ mine

To close applications on remote computers and start them locally:

::

    $ mine switch

To close applications locally an start them on another computer:

::

    $ mine switch <name>

To delete conflicted files in your Dropbox:

::

    $ mine clean

.. |Build Status| image:: http://img.shields.io/travis/jacebrowning/mine/master.svg
   :target: https://travis-ci.org/jacebrowning/mine
.. |Coverage Status| image:: http://img.shields.io/coveralls/jacebrowning/mine/master.svg
   :target: https://coveralls.io/r/jacebrowning/mine
.. |Scrutinizer Code Quality| image:: http://img.shields.io/scrutinizer/g/jacebrowning/mine.svg
   :target: https://scrutinizer-ci.com/g/jacebrowning/mine/?branch=master
.. |PyPI Version| image:: http://img.shields.io/pypi/v/mine.svg
   :target: https://pypi.python.org/pypi/mine
.. |PyPI Downloads| image:: http://img.shields.io/pypi/dm/mine.svg
   :target: https://pypi.python.org/pypi/mine

Version History
===============

0.5 (unreleased)
================

-  TBD

0.4.3 (2016/05/11)
------------------

-  Fixed ``__init__`` warnings with YORM v0.8.1.

0.4.2 (2016/03/30)
------------------

-  Updated to YORM v0.7.2.

0.4.1 (2016/02/23)
------------------

-  Updated to YORM v0.6.

0.4 (2015/12/30)
----------------

-  Added file watching to update program state faster.

0.3 (2015/11/14)
----------------

-  Added automatic daemon restart using ``nohup``.
-  Moved ``queued`` to setting ``properties.single_instance``.
-  Added ``properties.auto_queue`` to filter active applications.

0.2.1 (2015/09/05)
------------------

-  Fixed daemon warning to run using ``nohup``

0.2 (2015/08/27)
----------------

-  Added ``--daemon`` option to run continuously.
-  Added ``edit`` command to launch the settings file.

0.1.2 (2015/05/17)
------------------

-  Updated to YORM v0.4.

0.1.1 (2015/03/19)
------------------

-  Initial release.

Home-page: https://github.com/jacebrowning/mine
Author: Jace Browning
Author-email: jacebrowning@gmail.com
License: MIT
Description: mine
        ====
        
            ...for applications that haven't learned to share.
        
        | |Build Status|
        | |Coverage Status|
        | |Scrutinizer Code Quality|
        | |PyPI Version|
        | |PyPI Downloads|
        
        This program lets you synchronize application data using Dropbox.
        
        It automatically starts and stops programs that would otherwise fight
        over data in a shared folder and ensures only one instance is running.
        Many applications work fine when their data is stored in Dropbox, but
        some programs overwrite databases:
        
        -  iTunes
        -  iPhoto
        -  etc.
        
        while others periodically write snapshot data:
        
        -  Eclipse
        -  Xcode
        -  etc.
        
        and some just don't make sense to keep running on all your computers:
        
        -  Slack
        -  HipChat
        -  etc.
        
        Getting Started
        ===============
        
        Requirements
        ------------
        
        -  Python 3.3+
        
        Installation
        ------------
        
        ``mine`` can be installed with pip:
        
        ::
        
            $ pip install mine
        
        or directly from the source code:
        
        ::
        
            $ git clone https://github.com/jacebrowning/mine.git
            $ cd mine
            $ python setup.py install
        
        Setup
        -----
        
        Create a ``mine.yml`` in your Dropbox:
        
        ::
        
            config:
              computers:
              - name: My iMac
                hostname: My-iMac.local
                address: 00:11:22:33:44:55
              - name: My MacBook Air
                hostname: My-MacBook-Air.local
                address: AA:BB:CC:DD:EE:FF
              applications:
              - name: iTunes
                properties:
                  auto_queue: false
                  single_instance: true
                versions:
                  mac: iTunes.app
                  windows: iTunes.exe
                  linux: null
              - name: Slack
                properties:
                  auto_queue: true
                  single_instance: false
                versions:
                  mac: Slack.app
                  windows: null
                  linux: null
        
        Include the applications you would like ``mine`` to manage. Computers
        are added automatically when ``mine`` is run.
        
        The ``versions`` dictionary identifies the name of the executable on
        each platform. The ``properties.auto_queue`` setting indicates ``mine``
        should attempt to launch the application automatically when switching
        computers. The ``properties.single_instance`` setting indicates the
        application must be closed on other computers before another instance
        can start.
        
        Basic Usage
        ===========
        
        To synchronize the current computer's state:
        
        ::
        
            $ mine
        
        To close applications on remote computers and start them locally:
        
        ::
        
            $ mine switch
        
        To close applications locally an start them on another computer:
        
        ::
        
            $ mine switch <name>
        
        To delete conflicted files in your Dropbox:
        
        ::
        
            $ mine clean
        
        .. |Build Status| image:: http://img.shields.io/travis/jacebrowning/mine/master.svg
           :target: https://travis-ci.org/jacebrowning/mine
        .. |Coverage Status| image:: http://img.shields.io/coveralls/jacebrowning/mine/master.svg
           :target: https://coveralls.io/r/jacebrowning/mine
        .. |Scrutinizer Code Quality| image:: http://img.shields.io/scrutinizer/g/jacebrowning/mine.svg
           :target: https://scrutinizer-ci.com/g/jacebrowning/mine/?branch=master
        .. |PyPI Version| image:: http://img.shields.io/pypi/v/mine.svg
           :target: https://pypi.python.org/pypi/mine
        .. |PyPI Downloads| image:: http://img.shields.io/pypi/dm/mine.svg
           :target: https://pypi.python.org/pypi/mine
        
        Version History
        ===============
        
        0.5 (unreleased)
        ================
        
        -  TBD
        
        0.4.3 (2016/05/11)
        ------------------
        
        -  Fixed ``__init__`` warnings with YORM v0.8.1.
        
        0.4.2 (2016/03/30)
        ------------------
        
        -  Updated to YORM v0.7.2.
        
        0.4.1 (2016/02/23)
        ------------------
        
        -  Updated to YORM v0.6.
        
        0.4 (2015/12/30)
        ----------------
        
        -  Added file watching to update program state faster.
        
        0.3 (2015/11/14)
        ----------------
        
        -  Added automatic daemon restart using ``nohup``.
        -  Moved ``queued`` to setting ``properties.single_instance``.
        -  Added ``properties.auto_queue`` to filter active applications.
        
        0.2.1 (2015/09/05)
        ------------------
        
        -  Fixed daemon warning to run using ``nohup``
        
        0.2 (2015/08/27)
        ----------------
        
        -  Added ``--daemon`` option to run continuously.
        -  Added ``edit`` command to launch the settings file.
        
        0.1.2 (2015/05/17)
        ------------------
        
        -  Updated to YORM v0.4.
        
        0.1.1 (2015/03/19)
        ------------------
        
        -  Initial release.
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: System
Classifier: Topic :: System :: Monitoring
Classifier: Topic :: Utilities
