name:                bludigon
version:             0.1.1.0
synopsis:            Configurable blue light filter
description:         This application is a blue light filter, with the main focus on
                     configurability.
                     .
                     Configuration is done in Haskell in the style of
                     <https://hackage.haskell.org/package/xmonad xmonad>.
                     .
                     Bludigon makes use of monad transformers and allows monadic calculation of
                     gamma values and recoloring.
                     The user chooses, what will be captured in the monadic state.
                     .
                     To get started with configuring read "Bludigon".
license:             BSD3
license-file:        LICENSE
author:              Felix Springer
maintainer:          felixspringer149@gmail.com
homepage:            https://github.com/jumper149/bludigon
bug-reports:         https://github.com/jumper149/bludigon/issues
category:            System
build-type:          Simple
extra-source-files:  CHANGELOG.md
cabal-version:       >= 1.10

library
  exposed-modules:     Bludigon
                       Bludigon.Control
                       Bludigon.Control.Concat
                       Bludigon.Control.Count
                       Bludigon.Control.Print
                       Bludigon.Control.Wait
                       Bludigon.Gamma
                       Bludigon.Gamma.Const
                       Bludigon.Gamma.Linear
                       Bludigon.Main
                       Bludigon.Main.CLI
                       Bludigon.Main.Control
                       Bludigon.Recolor
                       Bludigon.Recolor.Print
                       Bludigon.Recolor.X
                       Bludigon.RGB
                       Bludigon.RGB.Temperature
  other-modules:       Bludigon.Recolor.X.Internal
                       Paths_bludigon
  build-depends:       base              >= 4.11    && < 5
                     , containers        >= 0.6.2.1 && < 0.7
                     , directory         >= 1.3.6.0 && < 1.4
                     , data-default      >= 0.7.1   && < 0.7.2
                     , deepseq           >= 1.4.4.0 && < 1.5
                     , filepath          >= 1.4.2.1 && < 1.5
                     , finite-typelits   >= 0.1.4.0 && < 0.1.5
                     , lifted-base       >= 0.2.3.2 && < 0.2.4
                     , monad-control     >= 1.0.2.0 && < 1.1
                     , mtl               >= 2.2.2   && < 2.3
                     , process           >= 1.6.6.0 && < 1.7
                     , text              >= 1.2.0.0 && < 1.3
                     , time              >= 1.9.3   && < 1.10
                     , transformers      >= 0.5.6.2 && < 0.5.7
                     , transformers-base >= 0.4.5.2 && < 0.5
                     , unix              >= 2.7.2.2 && < 2.8
                     , X11               >= 1.9     && < 1.10
  hs-source-dirs:      src
  includes:            XrandrGamma.h
  extra-libraries:     X11, Xrandr
  include-dirs:        include
  c-sources:           include/XrandrGamma.c
                       include/XrandrGamma.h
  default-language:    Haskell2010
  default-extensions:  ConstraintKinds
                       DataKinds
                       DeriveGeneric
                       FlexibleContexts
                       FlexibleInstances
                       FunctionalDependencies
                       GeneralizedNewtypeDeriving
                       MultiParamTypeClasses
                       OverloadedStrings
                       RankNTypes
                       StandaloneDeriving
                       TypeApplications
                       TypeFamilies
  ghc-options:         -Wall

executable bludigon
  main-is:             Main.hs
  build-depends:       base
                     , bludigon
  default-language:    Haskell2010
  ghc-options:         -Wall

test-suite test
  main-is:             Bludigon.hs
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  other-modules:       Bludigon.Test.Gamma.Linear
                       Bludigon.Test.RGB
  build-depends:       base
                     , bludigon
                     , data-default
                     , deepseq
                     , hspec        >= 2.6.0   && < 2.8
                     , mtl
                     , QuickCheck   >= 2.13.2  && < 2.15
                     , time
  default-language:    Haskell2010
  default-extensions:  ConstraintKinds
                       DataKinds
                       DeriveGeneric
                       FlexibleContexts
                       FlexibleInstances
                       FunctionalDependencies
                       GeneralizedNewtypeDeriving
                       MultiParamTypeClasses
                       OverloadedStrings
                       RankNTypes
                       StandaloneDeriving
                       TypeApplications
                       TypeFamilies
  ghc-options:         -Wall