Codebase list xmobar / debian/0.24.5-1 xmobar.cabal
debian/0.24.5-1

Tree @debian/0.24.5-1 (Download .tar.gz)

xmobar.cabal @debian/0.24.5-1raw · history · blame

name:               xmobar
version:            0.24.5
homepage:           http://xmobar.org
synopsis:           A Minimalistic Text Based Status Bar
description: 	    Xmobar is a minimalistic text based status bar.
		    .
                    Inspired by the Ion3 status bar, it supports similar
                    features, like dynamic color management, output templates,
                    and extensibility through plugins.
category:           System
license:            BSD3
license-file:       license
author:             Andrea Rossato and Jose A. Ortega Ruiz
maintainer:         Jose A. Ortega Ruiz <jao@gnu.org>
bug-reports:        https://github.com/jaor/xmobar/issues
cabal-version:      >= 1.6
build-type:         Simple

extra-source-files: readme.md, news.md,
                    samples/xmobar.config, samples/xmonadpropwrite.hs
                    samples/Plugins/helloworld.config,
                    samples/Plugins/HelloWorld.hs

source-repository head
  type:      git
  location:  git://github.com/jaor/xmobar.git
  branch:    master

flag with_xft
  description: Use Xft to render text. UTF-8 support included.
  default: False

flag with_utf8
  description: With UTF-8 support.
  default: True

flag with_inotify
  description: inotify support (modern Linux only). Required for the Mail and MBox plugins.
  default: False

flag with_iwlib
  description: Wireless info support. Required for the Wireless plugin, needs iwlib installed.
  default: False

flag with_mpd
  description: MPD support. Needs libmpd installed.
  default: False

flag all_extensions
  description: Includes all optional extensions.
  default: False

flag with_alsa
  description: Use alsa-mixer to get the volume from soundcards.
  default: False

flag with_datezone
  description: Enables localized date support.
  default: False

flag with_mpris
  description: MPRIS v1, v2 support.
  default: False

flag with_dbus
  description: Publish a service on the session bus for controlling xmobar.
  default: False

flag with_xpm
  description: Enable usage of xpm for icons
  default: False

flag with_threaded
  description: Use threaded runtime.
  default: False

flag with_rtsopts
  description: Use -with-rtsopts=-V0 to reduce wakeups
  default: True

flag with_uvmeter
  description: UVMeter only useful to australians.
  default: False

flag with_conduit
  description: Use http-conduits for getting weather data
  default: False

executable xmobar
    hs-source-dirs:     src
    main-is:            Main.hs
    other-modules:
      Xmobar, Actions, Bitmap, Config, Parsers, Commands, Localize,
      XUtil, StatFS, Runnable, ColorCache, Window, Signal,
      Environment,
      Plugins, Plugins.BufferedPipeReader,
      Plugins.CommandReader, Plugins.Date, Plugins.EWMH,
      Plugins.PipeReader, Plugins.MarqueePipeReader,
      Plugins.StdinReader, Plugins.XMonadLog,
      Plugins.Utils, Plugins.Kbd, Plugins.Locks, Plugins.Monitors,
      Plugins.Monitors.Batt, Plugins.Monitors.Common,
      Plugins.Monitors.CoreCommon, Plugins.Monitors.CoreTemp,
      Plugins.Monitors.CpuFreq, Plugins.Monitors.Cpu,
      Plugins.Monitors.Disk, Plugins.Monitors.Mem,
      Plugins.Monitors.MultiCpu, Plugins.Monitors.Net,
      Plugins.Monitors.Swap, Plugins.Monitors.Thermal,
      Plugins.Monitors.ThermalZone, Plugins.Monitors.Top,
      Plugins.Monitors.Uptime, Plugins.Monitors.Weather,
      Plugins.Monitors.Bright, Plugins.Monitors.CatInt,
      Plugins.Monitors.UVMeter

    ghc-options: -funbox-strict-fields -Wall -fno-warn-unused-do-bind
    extra-libraries: Xrandr Xrender

    build-depends:
      base == 4.*,
      containers,
      regex-compat,
      process,
      old-locale,
      bytestring,
      directory,
      unix,
      time,
      filepath,
      transformers,
      X11 >= 1.6.1,
      mtl >= 2.1 && < 2.3,
      parsec == 3.1.*,
      HTTP >= 4000.2.4,
      stm >= 2.3 && < 2.5

    if flag(with_conduit)
       -- use http-conduit  instead of simple-http
       build-depends: http-conduit, http-types
       cpp-options: -DHTTP_CONDUIT

    if flag(with_threaded)
       -- -threaded is a workaround for 100% CPU busy loop
       -- (http://hackage.haskell.org/trac/ghc/ticket/4934).
       -- See also comments in https://github.com/jaor/xmobar/pull/36
       ghc-options: -threaded
       cpp-options: -DTHREADED_RUNTIME

    if flag(with_rtsopts)
       ghc-options: -with-rtsopts=-V0

    if flag(with_xft) || flag(all_extensions)
       build-depends: utf8-string >= 0.3 && < 1.1, X11-xft >= 0.2 && < 0.4
       other-modules: MinXft
       cpp-options: -DXFT

    if flag(with_utf8) || flag(all_extensions)
       build-depends: utf8-string >= 0.3 && < 1.1
       cpp-options: -DUTF8

    if flag(with_inotify) || flag(all_extensions)
       build-depends: hinotify == 0.3.*
       other-modules: Plugins.Mail, Plugins.MBox
       cpp-options: -DINOTIFY

    if flag(with_iwlib) || flag(all_extensions)
       extra-libraries: iw
       other-modules: IWlib, Plugins.Monitors.Wireless
       cpp-options: -DIWLIB

    if flag(with_mpd) || flag(all_extensions)
       build-depends: libmpd >= 0.9.0.6
       other-modules: Plugins.Monitors.MPD
       cpp-options: -DLIBMPD

    if flag(with_alsa) || flag(all_extensions)
       build-depends: alsa-mixer > 0.2.0.2
       build-depends: alsa-core == 0.5.*
       other-modules: Plugins.Monitors.Volume
       cpp-options: -DALSA

    if flag(with_datezone) || flag(all_extensions)
       build-depends: timezone-olson == 0.1.*, timezone-series == 0.1.*
       other-modules: Plugins.DateZone
       cpp-options: -DDATEZONE

    if flag(with_mpris) || flag(all_extensions)
       build-depends: dbus >= 0.10
       other-modules: Plugins.Monitors.Mpris
       cpp-options: -DMPRIS

    if flag(with_dbus) || flag(all_extensions)
       build-depends: dbus >= 0.10
       other-modules: IPC.DBus
       cpp-options: -DDBUS

    if flag(with_xpm) || flag(all_extensions)
       extra-libraries: Xpm
       other-modules: XPMFile
       cpp-options: -DXPM

    if flag(with_uvmeter)
       cpp-options: -DUVMETER