138 lines
3.7 KiB
Plaintext
138 lines
3.7 KiB
Plaintext
Metadata-Version: 2.0
|
|
Name: pydbus
|
|
Version: 0.6.0
|
|
Summary: Pythonic DBus library
|
|
Home-page: https://github.com/LEW21/pydbus
|
|
Author: Linus Lewandowski
|
|
Author-email: linus@lew21.net
|
|
License: LGPLv2+
|
|
Keywords: dbus
|
|
Platform: UNKNOWN
|
|
Classifier: Development Status :: 5 - Production/Stable
|
|
Classifier: Intended Audience :: Developers
|
|
Classifier: Natural Language :: English
|
|
Classifier: License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)
|
|
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: Programming Language :: Python :: 2
|
|
Classifier: Programming Language :: Python :: 2.7
|
|
|
|
pydbus
|
|
======
|
|
.. image:: https://travis-ci.org/LEW21/pydbus.svg?branch=master
|
|
:target: https://travis-ci.org/LEW21/pydbus
|
|
.. image:: https://badge.fury.io/py/pydbus.svg
|
|
:target: https://badge.fury.io/py/pydbus
|
|
|
|
Pythonic DBus library.
|
|
|
|
Changelog: https://github.com/LEW21/pydbus/releases
|
|
|
|
Requirements
|
|
------------
|
|
* Python 2.7+ - but works best on 3.4+ (help system is nicer there)
|
|
* PyGI_ (not packaged on pypi, you need to install it from your distribution's repository - it's usually called python-gi, python-gobject or pygobject)
|
|
* GLib_ 2.46+ and girepository_ 1.46+ (Ubuntu 16.04+) - for object publication support
|
|
|
|
.. _PyGI: https://wiki.gnome.org/Projects/PyGObject
|
|
.. _GLib: https://developer.gnome.org/glib/
|
|
.. _girepository: https://wiki.gnome.org/Projects/GObjectIntrospection
|
|
|
|
Examples
|
|
--------
|
|
|
|
Send a desktop notification
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
.. code-block:: python
|
|
|
|
from pydbus import SessionBus
|
|
|
|
bus = SessionBus()
|
|
notifications = bus.get('.Notifications')
|
|
|
|
notifications.Notify('test', 0, 'dialog-information', "Hello World!", "pydbus works :)", [], {}, 5000)
|
|
|
|
List systemd units
|
|
~~~~~~~~~~~~~~~~~~
|
|
.. code-block:: python
|
|
|
|
from pydbus import SystemBus
|
|
|
|
bus = SystemBus()
|
|
systemd = bus.get(".systemd1")
|
|
|
|
for unit in systemd.ListUnits():
|
|
print(unit)
|
|
|
|
Start or stop systemd unit
|
|
~~~~~~~~~~~~~~~~~~
|
|
.. code-block:: python
|
|
|
|
from pydbus import SystemBus
|
|
|
|
bus = SystemBus()
|
|
systemd = bus.get(".systemd1")
|
|
|
|
job1 = systemd.StopUnit("ssh.service", "fail")
|
|
job2 = systemd.StartUnit("ssh.service", "fail")
|
|
|
|
Watch for new systemd jobs
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
.. code-block:: python
|
|
|
|
from pydbus import SystemBus
|
|
from gi.repository import GLib
|
|
|
|
bus = SystemBus()
|
|
systemd = bus.get(".systemd1")
|
|
|
|
systemd.JobNew.connect(print)
|
|
GLib.MainLoop().run()
|
|
|
|
# or
|
|
|
|
systemd.onJobNew = print
|
|
GLib.MainLoop().run()
|
|
|
|
View object's API
|
|
~~~~~~~~~~~~~~~~~
|
|
.. code-block:: python
|
|
|
|
from pydbus import SessionBus
|
|
|
|
bus = SessionBus()
|
|
notifications = bus.get('.Notifications')
|
|
|
|
help(notifications)
|
|
|
|
More examples & documentation
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The Tutorial_ contains more examples and docs.
|
|
|
|
.. _Tutorial: https://github.com/LEW21/pydbus/blob/master/doc/tutorial.rst
|
|
|
|
Copyright Information
|
|
---------------------
|
|
|
|
Copyright (C) 2014, 2015, 2016 Linus Lewandowski <linus@lew21.net>
|
|
|
|
This library is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU Lesser General Public
|
|
License as published by the Free Software Foundation; either
|
|
version 2.1 of the License, or (at your option) any later version.
|
|
|
|
This library is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Lesser General Public License for more details.
|
|
|
|
You should have received a copy of the GNU Lesser General Public
|
|
License along with this library; if not, write to the Free Software
|
|
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
|
|
|