Metadata-Version: 2.0
Name: debinterface
Version: 3.1.0
Summary: A simple Python library for dealing with the /etc/network/interfaces file in most Debian based distributions.
Home-page: https://github.com/nMustaki/debinterface
Author: Nathan Mustaki
Author-email: feydaykyn@gmail.com
License: BSD
Download-URL: https://github.com/nMustaki/debinterface/archive/v3.1.0.zip
Keywords: debian,network,system,configuration
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved :: BSD License
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: Topic :: System :: Systems Administration
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Provides-Extra: dev
Requires-Dist: check-manifest; extra == 'dev'
Requires-Dist: twine; extra == 'dev'

============
Debinterface
============

.. image:: https://travis-ci.org/nMustaki/debinterface.svg?branch=master
    :target: https://travis-ci.org/nMustaki/debinterface


This is a simple Python library for dealing with the /etc/network/interfaces file in most Debian based distributions.
This is forked from https://github.com/dggreenbaum/debinterface to refactor it and maybe extends it with wpa_supplicant handling

Documentation : `http://debinterface.readthedocs.io/en/latest/index.html <http://debinterface.readthedocs.io/en/latest/index.html>`_


Example usage
-------------

.. sourcecode:: python

    import debinterface

    # Get a collection of objects representing the network adapters.
    adapters = debinterface.Interfaces().adapters

    # You get a list you can iterare over.
    # Each adapter has an 'export()' method that returns a dictionary of its options.
    # You can print the name of each adapter as follows:
    for adapter in adapters:
    	item = adapter.export()
    	print(item['name'])

    # Write your new interfaces file as follows:
    # Any changes made with setter methods will be reflected with the new write.
    interfaces = debinterface.Interfaces()
    interfaces.writeInterfaces()

    # A backup of your old interfaces file will be generated when writing over the previous interfaces file
    # By defaults these paths are used :
    # INTERFACES_PATH='/etc/network/interfaces'
    # BACKUP_PATH='/etc/network/interfaces.old'
    # Paths can be customized when instanciating the Interfaces class:
    interfaces = debinterface.Interfaces(interfaces_path='/home/interfaces', backup_path='/another/custom/path')

    # By defaults, interfaces file is read when instanciating the Interfaces class, to do it lazyly:
    interfaces = debinterface.Interfaces(update_adapters=False)
    interfaces.updateAdapters()


