nova-nix-0.1.9.0: nova-nix.cabal
cabal-version: 3.0
name: nova-nix
version: 0.1.9.0
synopsis: Windows-native Nix implementation in Haskell and C99
description:
A Windows-native implementation of the Nix package manager — Haskell for
evaluation logic, a C99 data layer for off-heap evaluation data. Runs
natively on Windows, macOS, and Linux — no WSL, no MSYS2, no Cygwin
required. Evaluates .nix files, builds derivations, manages a
content-addressed store, and substitutes pre-built binaries from remote
caches (nova-cache, cache.nixos.org).
Built on top of @nova-cache@ for NAR serialization, narinfo handling,
Ed25519 signing, and binary substitution.
license: BSD-3-Clause
license-file: LICENSE
author: Devon Tomlin
maintainer: devon.tomlin@novavero.ai
homepage: https://github.com/Novavero-AI/nova-nix
bug-reports: https://github.com/Novavero-AI/nova-nix/issues
category: Nix, Distribution, System
stability: experimental
build-type: Simple
tested-with: GHC == 9.8.4
extra-doc-files:
CHANGELOG.md
README.md
data-files:
nix/fetchurl.nix
data-dir: data
-- ---------------------------------------------------------------------------
-- Library: core modules (parser, evaluator, store, builder, substituter)
-- ---------------------------------------------------------------------------
library
exposed-modules:
Nix.Expr
Nix.Expr.ClosureTrim
Nix.Expr.Resolve
Nix.Expr.Types
Nix.Parser
Nix.Parser.Expr
Nix.Parser.Internal
Nix.Parser.Lexer
Nix.Parser.ParseError
Nix.Eval
Nix.Eval.Context
Nix.Eval.Types
Nix.Eval.IO
Nix.Eval.Operator
Nix.Eval.StringInterp
Nix.Eval.Symbol
Nix.Eval.CAttrSet
Nix.Eval.CThunk
Nix.Eval.CEnv
Nix.Eval.CLambda
Nix.Eval.CList
Nix.Eval.CCtxStr
Nix.Eval.CBytecode
Nix.Eval.Compile
Nix.Eval.EvalFormals
Nix.Eval.Arena
Nix.Store
Nix.Store.Path
Nix.Store.DB
Nix.DependencyGraph
Nix.Derivation
Nix.Builder
Nix.Substituter
Nix.Builtins
Nix.Hash
build-depends:
base >= 4.16 && < 5
, array >= 0.5 && < 0.6
, bytestring >= 0.11 && < 0.13
, containers >= 0.6 && < 0.8
, crypton >= 1.0 && < 1.1
, directory >= 1.3 && < 1.4
, filepath >= 1.4 && < 1.6
, http-client >= 0.7 && < 0.8
, http-client-tls >= 0.3 && < 0.4
, http-types >= 0.12 && < 0.13
, memory >= 0.18 && < 1
, mtl >= 2.2 && < 2.4
, nova-cache >= 0.3.0 && < 0.4
, process >= 1.6 && < 1.7
, regex-tdfa >= 1.3 && < 1.4
, sqlite-simple >= 0.4 && < 0.5
, text >= 2.0 && < 2.2
, time >= 1.9 && < 1.15
c-sources:
cbits/nn_symbol.c
cbits/nn_attrset.c
cbits/nn_thunk.c
cbits/nn_env.c
cbits/nn_list.c
cbits/nn_ctxstr.c
cbits/nn_arena.c
cbits/nn_bytecode.c
cbits/nn_lambda.c
include-dirs: cbits
cc-options: -std=c99 -Wall -Wextra -pedantic -Werror
hs-source-dirs: src
default-language: Haskell2010
default-extensions:
BangPatterns
OverloadedStrings
ghc-options:
-Wall
-Wcompat
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-- ---------------------------------------------------------------------------
-- CLI executable
-- ---------------------------------------------------------------------------
executable nova-nix
main-is: Main.hs
hs-source-dirs: app
autogen-modules: Paths_nova_nix
other-modules: Paths_nova_nix
default-language: Haskell2010
default-extensions:
OverloadedStrings
ghc-options: -Wall -Wcompat -threaded -rtsopts
build-depends:
base >= 4.16 && < 5
, containers >= 0.6 && < 0.8
, directory >= 1.3 && < 1.4
, filepath >= 1.4 && < 1.6
, nova-nix
, text >= 2.0 && < 2.2
-- ---------------------------------------------------------------------------
-- Tests
-- ---------------------------------------------------------------------------
test-suite nova-nix-test
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: test
default-language: Haskell2010
default-extensions:
OverloadedStrings
ghc-options: -Wall -Wcompat
build-depends:
base >= 4.16 && < 5
, bytestring >= 0.11 && < 0.13
, containers >= 0.6 && < 0.8
, directory >= 1.3 && < 1.4
, filepath >= 1.4 && < 1.6
, nova-nix
, process >= 1.6 && < 1.7
, text >= 2.0 && < 2.2
source-repository head
type: git
location: https://github.com/Novavero-AI/nova-nix
branch: main