nova-nix-0.1.0.0: nova-nix.cabal
cabal-version: 3.0
name: nova-nix
version: 0.1.0.0
synopsis: Windows-native Nix implementation in pure Haskell
description:
A pure Haskell implementation of the Nix package manager that runs natively
on Windows — 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: MIT
license-file: LICENSE
author: Devon Tomlin, Galen, Kyle Jensen
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.6.7
extra-doc-files:
CHANGELOG.md
-- ---------------------------------------------------------------------------
-- Library: core modules (parser, evaluator, store, builder, substituter)
-- ---------------------------------------------------------------------------
library
exposed-modules:
Nix.Expr
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.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
, bytestring >= 0.11 && < 0.13
, containers >= 0.6 && < 0.8
, crypton >= 1.0 && < 2
, 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.2 && < 0.3
, process >= 1.6 && < 1.7
, sqlite-simple >= 0.4 && < 0.5
, text >= 2.0 && < 2.2
, time >= 1.9 && < 1.15
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
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