diff options
-rw-r--r-- | users/grfn/owothia/default.nix | 10 | ||||
-rw-r--r-- | users/grfn/owothia/pkg.nix | 16 | ||||
-rw-r--r-- | users/grfn/xanthous/default.nix | 30 | ||||
-rw-r--r-- | users/grfn/xanthous/pkg.nix | 95 |
4 files changed, 126 insertions, 25 deletions
diff --git a/users/grfn/owothia/default.nix b/users/grfn/owothia/default.nix index e10098ed943b..b70d0525c152 100644 --- a/users/grfn/owothia/default.nix +++ b/users/grfn/owothia/default.nix @@ -2,5 +2,11 @@ , pkgs ? depot.third_party.nixpkgs , ... }: -pkgs.haskellPackages.callCabal2nix "owothia" - (depot.third_party.gitignoreSource ./.) { } +let + basePkg = pkgs.haskellPackages.callPackage ./pkg.nix { }; +in + +pkgs.haskell.lib.overrideSrc basePkg { + src = depot.third_party.gitignoreSource ./.; + version = "canon"; +} diff --git a/users/grfn/owothia/pkg.nix b/users/grfn/owothia/pkg.nix new file mode 100644 index 000000000000..d0941a848958 --- /dev/null +++ b/users/grfn/owothia/pkg.nix @@ -0,0 +1,16 @@ +{ mkDerivation, base, bytestring, chatter, containers, envy +, irc-client, lens, lib, random, relude, text +}: +mkDerivation { + pname = "owothia"; + version = "0.0.1.0"; + src = ./.; + isLibrary = false; + isExecutable = true; + executableHaskellDepends = [ + base bytestring chatter containers envy irc-client lens random + relude text + ]; + license = "unknown"; + hydraPlatforms = lib.platforms.none; +} diff --git a/users/grfn/xanthous/default.nix b/users/grfn/xanthous/default.nix index 0b89a50afb9e..1316ff583f17 100644 --- a/users/grfn/xanthous/default.nix +++ b/users/grfn/xanthous/default.nix @@ -1,7 +1,23 @@ -{ pkgs ? (import ../../../. {}).third_party -, lib ? pkgs.lib -, ... -}: -pkgs.haskell.lib.failOnAllWarnings ( - pkgs.haskellPackages.callPackage (import ./pkg.nix { inherit pkgs; }) {} -) +{ depot ? (import ../../../. {}) +, pkgs ? depot.third_party.nixpkgs +, ... }: + +let + ignore = depot.third_party.gitignoreSource.gitignoreFilter ./.; + src = builtins.path { + name = "xanthous-source"; + path = ./.; + filter = path: type: ignore path type + || builtins.baseNameOf path == "package.yaml"; + }; + # generated by cabal2nix + basePkg = pkgs.haskellPackages.callPackage ./pkg.nix { }; +in + +pkgs.haskell.lib.overrideCabal basePkg (default: { + inherit src; + version = "canon"; + configureFlags = [ + "--ghc-option=-Wall --ghc-option=-Werror" + ] ++ (default.configureFlags or []); +}) diff --git a/users/grfn/xanthous/pkg.nix b/users/grfn/xanthous/pkg.nix index 16a6500866a7..da5a5ba17ed7 100644 --- a/users/grfn/xanthous/pkg.nix +++ b/users/grfn/xanthous/pkg.nix @@ -1,16 +1,79 @@ -{ depot ? (import ../../../. {}) -, pkgs ? depot.third_party.nixpkgs -, ... }: - -let - ignore = depot.third_party.gitignoreSource.gitignoreFilter ./.; -in import (pkgs.haskellPackages.haskellSrc2nix { - name = "xanthous"; - src = builtins.path { - name = "xanthous-source"; - path = ./.; - filter = path: type: ignore path type - || builtins.baseNameOf path == "package.yaml"; - }; - extraCabal2nixOptions = "--hpack"; -}) +{ mkDerivation, aeson, array, async, base, bifunctors, brick +, checkers, classy-prelude, comonad, comonad-extras, constraints +, containers, criterion, data-default, deepseq, directory, fgl +, fgl-arbitrary, file-embed, filepath, generic-arbitrary +, generic-lens, generic-monoid, groups, hgeometry +, hgeometry-combinatorial, hpack, JuicyPixels, lens +, lens-properties, lib, lifted-async, linear, megaparsec, mmorph +, monad-control, MonadRandom, mtl, optparse-applicative, parallel +, parser-combinators, pointed, QuickCheck, quickcheck-instances +, quickcheck-text, random, random-extras, random-fu, random-source +, Rasterific, raw-strings-qq, reflection, semigroupoids, splitmix +, stache, streams, tasty, tasty-hunit, tasty-quickcheck, text +, text-zipper, tomland, transformers, vector, vty, witherable, yaml +, zlib +}: +mkDerivation { + pname = "xanthous"; + version = "0.1.0.0"; + src = ./.; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + aeson array async base bifunctors brick checkers classy-prelude + comonad comonad-extras constraints containers criterion + data-default deepseq directory fgl fgl-arbitrary file-embed + filepath generic-arbitrary generic-lens generic-monoid groups + hgeometry hgeometry-combinatorial JuicyPixels lens lifted-async + linear megaparsec mmorph monad-control MonadRandom mtl + optparse-applicative parallel parser-combinators pointed QuickCheck + quickcheck-instances quickcheck-text random random-extras random-fu + random-source Rasterific raw-strings-qq reflection semigroupoids + splitmix stache streams text text-zipper tomland transformers + vector vty witherable yaml zlib + ]; + libraryToolDepends = [ hpack ]; + executableHaskellDepends = [ + aeson array async base bifunctors brick checkers classy-prelude + comonad comonad-extras constraints containers criterion + data-default deepseq directory fgl fgl-arbitrary file-embed + filepath generic-arbitrary generic-lens generic-monoid groups + hgeometry hgeometry-combinatorial JuicyPixels lens lifted-async + linear megaparsec mmorph monad-control MonadRandom mtl + optparse-applicative parallel parser-combinators pointed QuickCheck + quickcheck-instances quickcheck-text random random-extras random-fu + random-source Rasterific raw-strings-qq reflection semigroupoids + splitmix stache streams text text-zipper tomland transformers + vector vty witherable yaml zlib + ]; + testHaskellDepends = [ + aeson array async base bifunctors brick checkers classy-prelude + comonad comonad-extras constraints containers criterion + data-default deepseq directory fgl fgl-arbitrary file-embed + filepath generic-arbitrary generic-lens generic-monoid groups + hgeometry hgeometry-combinatorial JuicyPixels lens lens-properties + lifted-async linear megaparsec mmorph monad-control MonadRandom mtl + optparse-applicative parallel parser-combinators pointed QuickCheck + quickcheck-instances quickcheck-text random random-extras random-fu + random-source Rasterific raw-strings-qq reflection semigroupoids + splitmix stache streams tasty tasty-hunit tasty-quickcheck text + text-zipper tomland transformers vector vty witherable yaml zlib + ]; + benchmarkHaskellDepends = [ + aeson array async base bifunctors brick checkers classy-prelude + comonad comonad-extras constraints containers criterion + data-default deepseq directory fgl fgl-arbitrary file-embed + filepath generic-arbitrary generic-lens generic-monoid groups + hgeometry hgeometry-combinatorial JuicyPixels lens lifted-async + linear megaparsec mmorph monad-control MonadRandom mtl + optparse-applicative parallel parser-combinators pointed QuickCheck + quickcheck-instances quickcheck-text random random-extras random-fu + random-source Rasterific raw-strings-qq reflection semigroupoids + splitmix stache streams text text-zipper tomland transformers + vector vty witherable yaml zlib + ]; + prePatch = "hpack"; + homepage = "https://github.com/glittershark/xanthous#readme"; + description = "A WIP TUI RPG"; + license = lib.licenses.gpl3Only; +} |