packages feed

hnix-store-core-0.4.2.0: hnix-store-core.cabal

cabal-version:       2.2
name:                hnix-store-core
version:             0.4.2.0
synopsis:            Core effects for interacting with the Nix store.
description:
        This package contains types and functions needed to describe
        interactions with the Nix store abstracted away from
        specific effectful context.
homepage:            https://github.com/haskell-nix/hnix-store
license:             Apache-2.0
license-file:        LICENSE
author:              Shea Levy
maintainer:          shea@shealevy.com
copyright:           2018 Shea Levy
category:            Nix
build-type:          Simple
extra-source-files:  ChangeLog.md
                   , README.md
                   , tests/samples/example0.drv
                   , tests/samples/example1.drv

Common commons
  if impl(ghc >= 8.10)
    ghc-options:  -Wall -Wunused-packages
  else
    ghc-options:  -Wall

library
  import: commons
  exposed-modules:     System.Nix.Base32
                     , System.Nix.Build
                     , System.Nix.Derivation
                     , System.Nix.Hash
                     , System.Nix.Internal.Base32
                     , System.Nix.Internal.Hash
                     , System.Nix.Internal.Nar.Parser
                     , System.Nix.Internal.Nar.Streamer
                     , System.Nix.Internal.Nar.Effects
                     , System.Nix.Internal.Signature
                     , System.Nix.Internal.StorePath
                     , System.Nix.Nar
                     , System.Nix.ReadonlyStore
                     , System.Nix.Signature
                     , System.Nix.StorePath
                     , System.Nix.StorePathMetadata
  build-depends:       base >=4.10 && <5
                     , attoparsec
                     , algebraic-graphs >= 0.5 && < 0.6
                     , base16-bytestring
                     , base64-bytestring
                     , bytestring
                     , cereal
                     , containers
                     , cryptohash-md5
                     , cryptohash-sha1
                     , cryptohash-sha256
                     , cryptohash-sha512
                     , directory
                     , filepath
                     , hashable
                     , lifted-base
                     , monad-control
                     , mtl
                     , nix-derivation >= 1.1.1 && <2
                     , saltine
                     , time
                     , text
                     , unix
                     , unordered-containers
                     , vector
  hs-source-dirs:      src
  default-language:    Haskell2010

Flag bounded_memory
  description: Run tests of constant memory use (requires +RTS -T)
  default: False

test-suite format-tests
  import: commons
  if flag(bounded_memory)
    cpp-options: -DBOUNDED_MEMORY
  ghc-options: -rtsopts -fprof-auto
  type: exitcode-stdio-1.0
  main-is: Driver.hs
  other-modules:
      Arbitrary
      Derivation
      NarFormat
      Hash
      StorePath
  hs-source-dirs:
      tests
  build-tool-depends:
    tasty-discover:tasty-discover
  build-depends:
      hnix-store-core
    , attoparsec
    , base
    , base16-bytestring
    , base64-bytestring
    , binary
    , bytestring
    , containers
    , directory
    , filepath
    , process
    , tasty
    , tasty-golden
    , tasty-hspec
    , tasty-hunit
    , tasty-quickcheck
    , temporary
    , text
    , unix
  default-language: Haskell2010