hnix/hnix.cabal

584 lines
20 KiB
Plaintext

name: hnix
version: 0.11.1
synopsis: Haskell implementation of the Nix language
description: Haskell implementation of the Nix language.
category: System, Data, Nix
homepage: https://github.com/haskell-nix/hnix#readme
bug-reports: https://github.com/haskell-nix/hnix/issues
author: John Wiegley
maintainer: johnw@newartisans.com
license: BSD3
license-file: LICENSE
build-type: Simple
cabal-version: >= 1.10
extra-source-files:
data/nix/corepkgs/buildenv.nix
data/nix/corepkgs/derivation.nix
data/nix/tests/lang/binary-data
data/nix/tests/lang/data
data/nix/tests/lang/dir1/a.nix
data/nix/tests/lang/dir2/a.nix
data/nix/tests/lang/dir2/b.nix
data/nix/tests/lang/dir3/a.nix
data/nix/tests/lang/dir3/b.nix
data/nix/tests/lang/dir3/c.nix
data/nix/tests/lang/dir4/a.nix
data/nix/tests/lang/dir4/c.nix
data/nix/tests/lang/eval-fail-abort.nix
data/nix/tests/lang/eval-fail-antiquoted-path.nix
data/nix/tests/lang/eval-fail-assert.nix
data/nix/tests/lang/eval-fail-bad-antiquote-1.nix
data/nix/tests/lang/eval-fail-bad-antiquote-2.nix
data/nix/tests/lang/eval-fail-bad-antiquote-3.nix
data/nix/tests/lang/eval-fail-blackhole.nix
data/nix/tests/lang/eval-fail-deepseq.nix
data/nix/tests/lang/eval-fail-hashfile-missing.nix
data/nix/tests/lang/eval-fail-missing-arg.nix
data/nix/tests/lang/eval-fail-path-slash.nix
data/nix/tests/lang/eval-fail-remove.nix
data/nix/tests/lang/eval-fail-scope-5.nix
data/nix/tests/lang/eval-fail-seq.nix
data/nix/tests/lang/eval-fail-substring.nix
data/nix/tests/lang/eval-fail-to-path.nix
data/nix/tests/lang/eval-fail-undeclared-arg.nix
data/nix/tests/lang/eval-okay-any-all.exp
data/nix/tests/lang/eval-okay-any-all.nix
data/nix/tests/lang/eval-okay-arithmetic.exp
data/nix/tests/lang/eval-okay-arithmetic.nix
data/nix/tests/lang/eval-okay-attrnames.exp
data/nix/tests/lang/eval-okay-attrnames.nix
data/nix/tests/lang/eval-okay-attrs2.exp
data/nix/tests/lang/eval-okay-attrs2.nix
data/nix/tests/lang/eval-okay-attrs3.exp
data/nix/tests/lang/eval-okay-attrs3.nix
data/nix/tests/lang/eval-okay-attrs4.exp
data/nix/tests/lang/eval-okay-attrs4.nix
data/nix/tests/lang/eval-okay-attrs5.exp
data/nix/tests/lang/eval-okay-attrs5.nix
data/nix/tests/lang/eval-okay-attrs.exp
data/nix/tests/lang/eval-okay-attrs.nix
data/nix/tests/lang/eval-okay-autoargs.exp
data/nix/tests/lang/eval-okay-autoargs.flags
data/nix/tests/lang/eval-okay-autoargs.nix
data/nix/tests/lang/eval-okay-backslash-newline-1.exp
data/nix/tests/lang/eval-okay-backslash-newline-1.nix
data/nix/tests/lang/eval-okay-backslash-newline-2.exp
data/nix/tests/lang/eval-okay-backslash-newline-2.nix
data/nix/tests/lang/eval-okay-builtins-add.exp
data/nix/tests/lang/eval-okay-builtins-add.nix
data/nix/tests/lang/eval-okay-builtins.exp
data/nix/tests/lang/eval-okay-builtins.nix
data/nix/tests/lang/eval-okay-callable-attrs.exp
data/nix/tests/lang/eval-okay-callable-attrs.nix
data/nix/tests/lang/eval-okay-catattrs.exp
data/nix/tests/lang/eval-okay-catattrs.nix
data/nix/tests/lang/eval-okay-closure.exp.xml
data/nix/tests/lang/eval-okay-closure.nix
data/nix/tests/lang/eval-okay-comments.exp
data/nix/tests/lang/eval-okay-comments.nix
data/nix/tests/lang/eval-okay-concat.exp
data/nix/tests/lang/eval-okay-concatmap.exp
data/nix/tests/lang/eval-okay-concatmap.nix
data/nix/tests/lang/eval-okay-concat.nix
data/nix/tests/lang/eval-okay-concatstringssep.exp
data/nix/tests/lang/eval-okay-concatstringssep.nix
data/nix/tests/lang/eval-okay-context.exp
data/nix/tests/lang/eval-okay-context-introspection.exp
data/nix/tests/lang/eval-okay-context-introspection.nix
data/nix/tests/lang/eval-okay-context.nix
data/nix/tests/lang/eval-okay-curpos.exp
data/nix/tests/lang/eval-okay-curpos.nix
data/nix/tests/lang/eval-okay-deepseq.exp
data/nix/tests/lang/eval-okay-deepseq.nix
data/nix/tests/lang/eval-okay-delayed-with.exp
data/nix/tests/lang/eval-okay-delayed-with-inherit.exp
data/nix/tests/lang/eval-okay-delayed-with-inherit.nix
data/nix/tests/lang/eval-okay-delayed-with.nix
data/nix/tests/lang/eval-okay-dynamic-attrs-2.exp
data/nix/tests/lang/eval-okay-dynamic-attrs-2.nix
data/nix/tests/lang/eval-okay-dynamic-attrs-bare.exp
data/nix/tests/lang/eval-okay-dynamic-attrs-bare.nix
data/nix/tests/lang/eval-okay-dynamic-attrs.exp
data/nix/tests/lang/eval-okay-dynamic-attrs.nix
data/nix/tests/lang/eval-okay-elem.exp
data/nix/tests/lang/eval-okay-elem.nix
data/nix/tests/lang/eval-okay-empty-args.exp
data/nix/tests/lang/eval-okay-empty-args.nix
data/nix/tests/lang/eval-okay-eq-derivations.exp
data/nix/tests/lang/eval-okay-eq-derivations.nix
data/nix/tests/lang/eval-okay-eq.exp.disabled
data/nix/tests/lang/eval-okay-eq.nix
data/nix/tests/lang/eval-okay-filter.exp
data/nix/tests/lang/eval-okay-filter.nix
data/nix/tests/lang/eval-okay-flatten.exp
data/nix/tests/lang/eval-okay-flatten.nix
data/nix/tests/lang/eval-okay-float.exp
data/nix/tests/lang/eval-okay-float.nix
data/nix/tests/lang/eval-okay-fromjson.exp
data/nix/tests/lang/eval-okay-fromjson.nix
data/nix/tests/lang/eval-okay-fromTOML.exp
data/nix/tests/lang/eval-okay-fromTOML.nix
data/nix/tests/lang/eval-okay-functionargs.exp.xml
data/nix/tests/lang/eval-okay-functionargs.nix
data/nix/tests/lang/eval-okay-getattrpos.exp
data/nix/tests/lang/eval-okay-getattrpos.nix
data/nix/tests/lang/eval-okay-getattrpos-undefined.exp
data/nix/tests/lang/eval-okay-getattrpos-undefined.nix
data/nix/tests/lang/eval-okay-getenv.exp
data/nix/tests/lang/eval-okay-getenv.nix
data/nix/tests/lang/eval-okay-hash.exp
data/nix/tests/lang/eval-okay-hashfile.exp
data/nix/tests/lang/eval-okay-hashfile.nix
data/nix/tests/lang/eval-okay-hashstring.exp
data/nix/tests/lang/eval-okay-hashstring.nix
data/nix/tests/lang/eval-okay-if.exp
data/nix/tests/lang/eval-okay-if.nix
data/nix/tests/lang/eval-okay-import.exp
data/nix/tests/lang/eval-okay-import.nix
data/nix/tests/lang/eval-okay-ind-string.exp
data/nix/tests/lang/eval-okay-ind-string.nix
data/nix/tests/lang/eval-okay-let.exp
data/nix/tests/lang/eval-okay-let.nix
data/nix/tests/lang/eval-okay-list.exp
data/nix/tests/lang/eval-okay-list.nix
data/nix/tests/lang/eval-okay-listtoattrs.exp
data/nix/tests/lang/eval-okay-listtoattrs.nix
data/nix/tests/lang/eval-okay-logic.exp
data/nix/tests/lang/eval-okay-logic.nix
data/nix/tests/lang/eval-okay-mapattrs.exp
data/nix/tests/lang/eval-okay-mapattrs.nix
data/nix/tests/lang/eval-okay-map.exp
data/nix/tests/lang/eval-okay-map.nix
data/nix/tests/lang/eval-okay-nested-with.exp
data/nix/tests/lang/eval-okay-nested-with.nix
data/nix/tests/lang/eval-okay-new-let.exp
data/nix/tests/lang/eval-okay-new-let.nix
data/nix/tests/lang/eval-okay-null-dynamic-attrs.exp
data/nix/tests/lang/eval-okay-null-dynamic-attrs.nix
data/nix/tests/lang/eval-okay-overrides.exp
data/nix/tests/lang/eval-okay-overrides.nix
data/nix/tests/lang/eval-okay-partition.exp
data/nix/tests/lang/eval-okay-partition.nix
data/nix/tests/lang/eval-okay-pathexists.exp
data/nix/tests/lang/eval-okay-pathexists.nix
data/nix/tests/lang/eval-okay-path.nix
data/nix/tests/lang/eval-okay-patterns.exp
data/nix/tests/lang/eval-okay-patterns.nix
data/nix/tests/lang/eval-okay-readDir.exp
data/nix/tests/lang/eval-okay-readDir.nix
data/nix/tests/lang/eval-okay-readfile.exp
data/nix/tests/lang/eval-okay-readfile.nix
data/nix/tests/lang/eval-okay-redefine-builtin.exp
data/nix/tests/lang/eval-okay-redefine-builtin.nix
data/nix/tests/lang/eval-okay-regex-match.exp
data/nix/tests/lang/eval-okay-regex-match.nix
data/nix/tests/lang/eval-okay-regex-split.exp
data/nix/tests/lang/eval-okay-regex-split.nix
data/nix/tests/lang/eval-okay-remove.exp
data/nix/tests/lang/eval-okay-remove.nix
data/nix/tests/lang/eval-okay-replacestrings.exp
data/nix/tests/lang/eval-okay-replacestrings.nix
data/nix/tests/lang/eval-okay-scope-1.exp
data/nix/tests/lang/eval-okay-scope-1.nix
data/nix/tests/lang/eval-okay-scope-2.exp
data/nix/tests/lang/eval-okay-scope-2.nix
data/nix/tests/lang/eval-okay-scope-3.exp
data/nix/tests/lang/eval-okay-scope-3.nix
data/nix/tests/lang/eval-okay-scope-4.exp
data/nix/tests/lang/eval-okay-scope-4.nix
data/nix/tests/lang/eval-okay-scope-6.exp
data/nix/tests/lang/eval-okay-scope-6.nix
data/nix/tests/lang/eval-okay-scope-7.exp
data/nix/tests/lang/eval-okay-scope-7.nix
data/nix/tests/lang/eval-okay-search-path.exp
data/nix/tests/lang/eval-okay-search-path.flags
data/nix/tests/lang/eval-okay-search-path.nix
data/nix/tests/lang/eval-okay-seq.exp
data/nix/tests/lang/eval-okay-seq.nix
data/nix/tests/lang/eval-okay-sort.exp
data/nix/tests/lang/eval-okay-sort.nix
data/nix/tests/lang/eval-okay-splitversion.exp
data/nix/tests/lang/eval-okay-splitversion.nix
data/nix/tests/lang/eval-okay-string.exp
data/nix/tests/lang/eval-okay-string.nix
data/nix/tests/lang/eval-okay-strings-as-attrs-names.exp
data/nix/tests/lang/eval-okay-strings-as-attrs-names.nix
data/nix/tests/lang/eval-okay-substring.exp
data/nix/tests/lang/eval-okay-substring.nix
data/nix/tests/lang/eval-okay-tail-call-1.exp-disabled
data/nix/tests/lang/eval-okay-tail-call-1.nix
data/nix/tests/lang/eval-okay-tojson.exp
data/nix/tests/lang/eval-okay-tojson.nix
data/nix/tests/lang/eval-okay-toxml2.exp
data/nix/tests/lang/eval-okay-toxml2.nix
data/nix/tests/lang/eval-okay-toxml.exp
data/nix/tests/lang/eval-okay-toxml.nix
data/nix/tests/lang/eval-okay-tryeval.exp
data/nix/tests/lang/eval-okay-tryeval.nix
data/nix/tests/lang/eval-okay-types.exp
data/nix/tests/lang/eval-okay-types.nix
data/nix/tests/lang/eval-okay-versions.exp
data/nix/tests/lang/eval-okay-versions.nix
data/nix/tests/lang/eval-okay-with.exp
data/nix/tests/lang/eval-okay-with.nix
data/nix/tests/lang/eval-okay-xml.exp.xml
data/nix/tests/lang/eval-okay-xml.nix
data/nix/tests/lang/imported2.nix
data/nix/tests/lang/imported.nix
data/nix/tests/lang/lib.nix
data/nix/tests/lang/parse-fail-dup-attrs-1.nix
data/nix/tests/lang/parse-fail-dup-attrs-2.nix
data/nix/tests/lang/parse-fail-dup-attrs-3.nix
data/nix/tests/lang/parse-fail-dup-attrs-4.nix
data/nix/tests/lang/parse-fail-dup-attrs-7.nix
data/nix/tests/lang/parse-fail-dup-formals.nix
data/nix/tests/lang/parse-fail-mixed-nested-attrs1.nix
data/nix/tests/lang/parse-fail-mixed-nested-attrs2.nix
data/nix/tests/lang/parse-fail-patterns-1.nix
data/nix/tests/lang/parse-fail-regression-20060610.nix
data/nix/tests/lang/parse-fail-uft8.nix
data/nix/tests/lang/parse-fail-undef-var-2.nix
data/nix/tests/lang/parse-fail-undef-var.nix
data/nix/tests/lang/parse-okay-1.nix
data/nix/tests/lang/parse-okay-crlf.nix
data/nix/tests/lang/parse-okay-dup-attrs-5.nix
data/nix/tests/lang/parse-okay-dup-attrs-6.nix
data/nix/tests/lang/parse-okay-mixed-nested-attrs-1.nix
data/nix/tests/lang/parse-okay-mixed-nested-attrs-2.nix
data/nix/tests/lang/parse-okay-mixed-nested-attrs-3.nix
data/nix/tests/lang/parse-okay-regression-20041027.nix
data/nix/tests/lang/parse-okay-regression-751.nix
data/nix/tests/lang/parse-okay-subversion.nix
data/nix/tests/lang/parse-okay-url.nix
data/nix/tests/lang/readDir/bar
data/nix/tests/lang/readDir/foo/git-hates-directories
data/nix/tests/local.mk
data/nixpkgs-all-packages.nix
data/let-comments.nix
data/let-comments-multiline.nix
data/simple-pretty.nix
data/simple.nix
data/nixpkgs-all-packages-pretty.nix
data/let.nix
LICENSE
README.md
CHANGELOG.md
tests/eval-compare/builtins.appendContext.nix
tests/eval-compare/builtins.eq-bottom-00.nix
tests/eval-compare/builtins.fetchurl-01.nix
tests/eval-compare/builtins.fromJSON-01.nix
tests/eval-compare/builtins.getContext.nix
tests/eval-compare/builtins.lessThan-01.nix
tests/eval-compare/builtins.mapAttrs-01.nix
tests/eval-compare/builtins.pathExists.nix
tests/eval-compare/builtins.replaceStrings-01.nix
tests/eval-compare/builtins.split-01.nix
tests/eval-compare/builtins.split-02.nix
tests/eval-compare/builtins.split-03.nix
tests/eval-compare/builtins.split-04.nix
tests/eval-compare/builtins.string.store.nix
tests/eval-compare/builtins.toJSON.nix
tests/eval-compare/current-system.nix
tests/eval-compare/ellipsis.nix
tests/eval-compare/ind-string-01.nix
tests/eval-compare/ind-string-02.nix
tests/eval-compare/ind-string-03.nix
tests/eval-compare/ind-string-04.nix
tests/eval-compare/ind-string-05.nix
tests/eval-compare/ind-string-06.nix
tests/eval-compare/ind-string-07.nix
tests/eval-compare/ind-string-08.nix
tests/eval-compare/ind-string-09.nix
tests/eval-compare/ind-string-10.nix
tests/eval-compare/ind-string-11.nix
tests/eval-compare/ind-string-12.nix
tests/eval-compare/ind-string-13.nix
tests/eval-compare/ind-string-14.nix
tests/eval-compare/ind-string-15.nix
tests/eval-compare/ind-string-16.nix
tests/eval-compare/ind-string-17.nix
tests/eval-compare/paths-01.nix
tests/eval-compare/placeholder.nix
tests/files/attrs.nix
tests/files/callLibs.nix
tests/files/eighty.nix
tests/files/file.nix
tests/files/file2.nix
tests/files/findFile.nix
tests/files/force.nix
tests/files/goodbye.nix
tests/files/hello.nix
tests/files/hello2.nix
tests/files/if-then.nix
tests/files/lint.nix
tests/files/loop.nix
tests/files/test.nix
tests/files/with.nix
source-repository head
type: git
location: https://github.com/haskell-nix/hnix
flag optimize
description: Enable all optimization flags
manual: True
default: False
flag profiling
description: Enable profiling
manual: True
default: False
library
exposed-modules:
Nix
Nix.Atoms
Nix.Builtins
Nix.Cache
Nix.Cited
Nix.Cited.Basic
Nix.Context
Nix.Convert
Nix.Effects
Nix.Effects.Basic
Nix.Eval
Nix.Exec
Nix.Expr
Nix.Expr.Shorthands
Nix.Expr.Strings
Nix.Expr.Types
Nix.Expr.Types.Annotated
Nix.Frames
Nix.Fresh
Nix.Fresh.Basic
Nix.Json
Nix.Lint
Nix.Normal
Nix.Options
Nix.Parser
Nix.Pretty
Nix.Reduce
Nix.Render
Nix.Render.Frame
Nix.Scope
Nix.Standard
Nix.String
Nix.String.Coerce
Nix.TH
Nix.Thunk
Nix.Thunk.Basic
Nix.Type.Assumption
Nix.Type.Env
Nix.Type.Infer
Nix.Type.Type
Nix.Utils
Nix.Utils.Fix1
Nix.Value
Nix.Value.Equal
Nix.Value.Monad
Nix.Var
Nix.XML
other-modules:
Paths_hnix
hs-source-dirs:
src
ghc-options: -Wall -fprint-potential-instances
build-depends:
aeson >= 1.4.2 && < 1.6
, array >= 0.4 && < 0.6
, base >= 4.11 && < 5
, binary >= 0.8.5 && < 0.9
, bytestring >= 0.10.8 && < 0.11
, comonad >= 5.0.4 && < 5.1
, containers >= 0.5.11.0 && < 0.7
, data-fix >= 0.3.0 && < 0.4
, deepseq >= 1.4.3 && <1.5
, deriving-compat >= 0.3 && < 0.6
, directory >= 1.3.1 && < 1.4
, exceptions >= 0.10.0 && < 0.11
, filepath >= 1.4.2 && < 1.5
, free >= 5.1 && < 5.2
, gitrev >= 1.1.0 && < 1.4
, hashable >= 1.2.5 && < 1.4
, hashing >= 0.1.0 && < 0.2
, hnix-store-core >= 0.1.0 && < 0.3
, http-client >= 0.5.14 && < 0.6 || >= 0.6.4 && < 0.8
, http-client-tls >= 0.3.5 && < 0.4
, http-types >= 0.12.2 && < 0.13
, lens-family >= 1.2.2 && < 2.2
, lens-family-core >= 1.2.2 && < 2.2
, lens-family-th >= 0.5.0 && < 0.6
, logict >= 0.6.0 && < 0.7 || >= 0.7.0.2 && < 0.8
, megaparsec >= 7.0 && < 9.1
, monad-control >= 1.0.2 && < 1.1
, monadlist >= 0.0.2 && < 0.1
, mtl >= 2.2.2 && < 2.3
, neat-interpolation >= 0.4 && < 0.6
, optparse-applicative >= 0.14.3 && < 0.17
, parser-combinators >= 1.0.1 && < 1.3
, prettyprinter >= 1.7.0 && < 1.8
, process >= 1.6.3 && < 1.7
, ref-tf >= 0.4.0 && < 0.5
, regex-tdfa >= 1.2.3 && < 1.4
, scientific >= 0.3.6 && < 0.4
, semialign >= 1 && < 1.2
, semialign-indexed >= 1 && < 1.2
, some >= 1.0.1 && < 1.1
, split >= 0.2.3 && < 0.3
, syb >= 0.7 && < 0.8
, template-haskell >= 2.13 && < 2.17
, text >= 1.2.3 && < 1.3
, these >= 1.0.1 && < 1.2
, time >= 1.8.0 && < 1.9 || >= 1.9.3 && < 1.10
, transformers >= 0.5.5 && < 0.6
, transformers-base >= 0.4.5 && < 0.5
, unix >= 2.7.2 && < 2.8
, unordered-containers >= 0.2.9 && < 0.3
, vector >= 0.12.0 && < 0.13
, xml >= 1.3.14 && < 1.4
if flag(optimize)
ghc-options: -fexpose-all-unfoldings -fspecialise-aggressively -O2
if !impl(ghcjs)
exposed-modules:
Nix.Options.Parser
build-depends:
base16-bytestring >= 0.1.1 && < 0.2
, pretty-show >= 1.9.5 && < 1.11
, serialise >= 0.2.1 && < 0.3
-- if !flag(profiling)
-- build-depends:
-- ghc-datasize
default-language: Haskell2010
executable hnix
main-is: Main.hs
other-modules:
Repl
Paths_hnix
hs-source-dirs:
main
ghc-options: -Wall -rtsopts
build-depends:
aeson
, base
, base16-bytestring
, bytestring
, comonad
, containers
, data-fix
, deepseq
, exceptions
, filepath
, free
, haskeline >= 0.8.0.0 && < 0.9
, hnix
, mtl
, optparse-applicative
, pretty-show
, prettyprinter
, ref-tf
, repline >= 0.4.0.0 && < 0.5
, serialise
, template-haskell
, text
, time
, transformers
, unordered-containers
if flag(optimize)
ghc-options: -fexpose-all-unfoldings -fspecialise-aggressively -O2
if impl(ghc < 8.10)
-- GHC < 8.10 comes with haskeline < 0.8, which we don't support.
-- To simplify CI, we just disable the component.
buildable: False
if impl(ghcjs)
buildable: False
default-language: Haskell2010
test-suite hnix-tests
type: exitcode-stdio-1.0
main-is: Main.hs
other-modules:
EvalTests
NixLanguageTests
ParserTests
PrettyParseTests
PrettyTests
ReduceExprTests
TestCommon
Paths_hnix
hs-source-dirs:
tests
ghc-options: -Wall -threaded
build-depends:
Diff
, Glob
, base
, base16-bytestring
, bytestring
, containers
, data-fix
, deepseq
, directory
, exceptions
, filepath
, hedgehog
, hnix
, megaparsec
, mtl
, neat-interpolation
, optparse-applicative
, pretty-show
, prettyprinter
, process
, split
, tasty
, tasty-hedgehog
, tasty-hunit
, tasty-th
, serialise
, template-haskell
, text
, time
, transformers
, unix
, unordered-containers
if flag(optimize)
ghc-options: -fexpose-all-unfoldings -fspecialise-aggressively -O2
if impl(ghcjs)
buildable: False
default-language: Haskell2010
benchmark hnix-benchmarks
type: exitcode-stdio-1.0
main-is: Main.hs
other-modules:
ParserBench
Paths_hnix
hs-source-dirs:
benchmarks
ghc-options: -Wall
build-depends:
base
, base16-bytestring
, bytestring
, containers
, criterion
, data-fix
, deepseq
, exceptions
, filepath
, hnix
, mtl
, optparse-applicative
, serialise
, template-haskell
, text
, time
, transformers
, unordered-containers
if flag(optimize)
ghc-options: -fexpose-all-unfoldings -fspecialise-aggressively -O2
if impl(ghcjs)
buildable: False
default-language: Haskell2010