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