packages feed

life-sync-1.0: life-sync.cabal

name:                life-sync
version:             1.0
description:         Synchronize personal configs across multiple machines
homepage:            https://github.com/kowainik/life-sync
bug-reports:         https://github.com/kowainik/life-sync/issues
license:             MIT
license-file:        LICENSE
author:              Kowainik
maintainer:          xrom.xkov@gmail.com
copyright:           2018 Kowainik
category:            Configuration
stability:           experimental
build-type:          Simple
cabal-version:       2.0
tested-with:         GHC == 8.2.2
                   , GHC == 8.4.3
extra-doc-files:     README.md
                   , CHANGELOG.md

source-repository head
  type:                git
  location:            https://github.com/kowainik/life-sync.git

library
  hs-source-dirs:      src

  exposed-modules:     Prelude
                       Life.Configuration
                       Life.Github
                       Life.Message
                       Life.Shell
                       Life.Main.Add
                       Life.Main.Init
                       Life.Main.Pull
                       Life.Main.Push
                       Life.Main.Remove
                       Life.Validation

  build-depends:       base-noprelude >= 4.9 && < 5
                     , ansi-terminal
                     , bytestring
                     , containers
                     , fmt
                     , microlens-platform
                     , path
                     , path-io
                     , process
                     , text >= 1.2
                     , tomland >= 0.2.1
                     , universum >= 1.2.0

  ghc-options:         -Wall
  default-language:    Haskell2010

  default-extensions:  GeneralizedNewtypeDeriving
                       LambdaCase
                       OverloadedStrings
                       RecordWildCards
                       ScopedTypeVariables
                       TypeApplications

executable life
  hs-source-dirs:      app
  main-is:             Main.hs
  other-modules:       Options
  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N

  build-depends:       base-noprelude
                     , containers
                     , life-sync
                     , optparse-applicative
                     , path

  default-language:    Haskell2010

  default-extensions:  LambdaCase
                       OverloadedStrings
                       RecordWildCards

test-suite life-sync-test
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
  other-modules:       Test.Roundtrip

  build-tool-depends:  tasty-discover:tasty-discover
  build-depends:       base-noprelude, life-sync
                     , containers
                     , filepath
                     , hedgehog
                     , path
                     , tasty
                     , tasty-hedgehog

  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
  default-language:    Haskell2010

  default-extensions:  LambdaCase
                       OverloadedStrings
                       RecordWildCards
                       TypeApplications