badf2fa00f
1.0.1 didn't build on s390x (unregisterized) https://github.com/rblaze/haskell-dbus/issues/26
179 lines
4.0 KiB
Plaintext
179 lines
4.0 KiB
Plaintext
name: dbus
|
|
version: 1.1.1
|
|
x-revision: 1
|
|
license: Apache-2.0
|
|
license-file: license.txt
|
|
author: John Millikin <john@john-millikin.com>
|
|
maintainer: Andrey Sverdlichenko <blaze@ruddy.ru>
|
|
build-type: Simple
|
|
cabal-version: >= 1.8
|
|
category: Network, Desktop
|
|
stability: experimental
|
|
homepage: https://github.com/rblaze/haskell-dbus#readme
|
|
|
|
synopsis: A client library for the D-Bus IPC system.
|
|
description:
|
|
D-Bus is a simple, message-based protocol for inter-process
|
|
communication, which allows applications to interact with other parts of
|
|
the machine and the user's session using remote procedure calls.
|
|
.
|
|
D-Bus is a essential part of the modern Linux desktop, where it replaces
|
|
earlier protocols such as CORBA and DCOP.
|
|
.
|
|
This library is an implementation of the D-Bus protocol in Haskell. It
|
|
can be used to add D-Bus support to Haskell applications, without the
|
|
awkward interfaces common to foreign bindings.
|
|
.
|
|
Example: connect to the session bus, and get a list of active names.
|
|
.
|
|
@
|
|
{-\# LANGUAGE OverloadedStrings \#-}
|
|
.
|
|
import Data.List (sort)
|
|
import DBus
|
|
import DBus.Client
|
|
.
|
|
main = do
|
|
  client <- connectSession
|
|
  //
|
|
  \-- Request a list of connected clients from the bus
|
|
  reply <- call_ client (methodCall \"\/org\/freedesktop\/DBus\" \"org.freedesktop.DBus\" \"ListNames\")
|
|
  { methodCallDestination = Just \"org.freedesktop.DBus\"
|
|
  }
|
|
  //
|
|
  \-- org.freedesktop.DBus.ListNames() returns a single value, which is
|
|
  \-- a list of names (here represented as [String])
|
|
  let Just names = fromVariant (methodReturnBody reply !! 0)
|
|
  //
|
|
  \-- Print each name on a line, sorted so reserved names are below
|
|
  \-- temporary names.
|
|
  mapM_ putStrLn (sort names)
|
|
@
|
|
.
|
|
>$ ghc --make list-names.hs
|
|
>$ ./list-names
|
|
>:1.0
|
|
>:1.1
|
|
>:1.10
|
|
>:1.106
|
|
>:1.109
|
|
>:1.110
|
|
>ca.desrt.dconf
|
|
>org.freedesktop.DBus
|
|
>org.freedesktop.Notifications
|
|
>org.freedesktop.secrets
|
|
>org.gnome.ScreenSaver
|
|
|
|
|
|
extra-source-files:
|
|
examples/dbus-monitor.hs
|
|
examples/export.hs
|
|
examples/introspect.hs
|
|
examples/list-names.hs
|
|
idlxml/dbus.xml
|
|
|
|
source-repository head
|
|
type: git
|
|
location: https://github.com/rblaze/haskell-dbus
|
|
|
|
library
|
|
ghc-options: -W -Wall
|
|
hs-source-dirs: lib
|
|
|
|
build-depends:
|
|
base >=4 && <5
|
|
, bytestring
|
|
, cereal
|
|
, conduit >= 1.3.0
|
|
, containers
|
|
, deepseq
|
|
, exceptions
|
|
, filepath
|
|
, lens
|
|
, network < 2.9
|
|
, parsec
|
|
, random
|
|
, split
|
|
, template-haskell
|
|
, text
|
|
, th-lift
|
|
, transformers
|
|
, unix
|
|
, vector
|
|
, xml-conduit
|
|
, xml-types
|
|
|
|
exposed-modules:
|
|
DBus
|
|
DBus.Client
|
|
DBus.Generation
|
|
DBus.Internal.Address
|
|
DBus.Internal.Message
|
|
DBus.Internal.Types
|
|
DBus.Internal.Wire
|
|
DBus.Introspection
|
|
DBus.Socket
|
|
DBus.TH
|
|
DBus.Transport
|
|
|
|
test-suite dbus_tests
|
|
type: exitcode-stdio-1.0
|
|
main-is: DBusTests.hs
|
|
hs-source-dirs: tests
|
|
ghc-options: -W -Wall
|
|
|
|
build-depends:
|
|
dbus
|
|
, base
|
|
, bytestring
|
|
, cereal
|
|
, containers
|
|
, directory
|
|
, extra
|
|
, filepath
|
|
, network < 2.9
|
|
, parsec
|
|
, process
|
|
, QuickCheck
|
|
, random
|
|
, resourcet
|
|
, tasty
|
|
, tasty-hunit
|
|
, tasty-quickcheck
|
|
, text
|
|
, transformers
|
|
, unix
|
|
, vector
|
|
|
|
other-modules:
|
|
DBusTests.Address
|
|
DBusTests.BusName
|
|
DBusTests.Client
|
|
DBusTests.ErrorName
|
|
DBusTests.Generation
|
|
DBusTests.Integration
|
|
DBusTests.InterfaceName
|
|
DBusTests.Introspection
|
|
DBusTests.MemberName
|
|
DBusTests.Message
|
|
DBusTests.ObjectPath
|
|
DBusTests.Serialization
|
|
DBusTests.Signature
|
|
DBusTests.Socket
|
|
DBusTests.TH
|
|
DBusTests.Transport
|
|
DBusTests.Util
|
|
DBusTests.Variant
|
|
DBusTests.Wire
|
|
|
|
benchmark dbus_benchmarks
|
|
type: exitcode-stdio-1.0
|
|
main-is: DBusBenchmarks.hs
|
|
hs-source-dirs: benchmarks
|
|
ghc-options: -Wall -fno-warn-orphans
|
|
|
|
build-depends:
|
|
dbus
|
|
, base
|
|
, criterion
|