diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5bdd53ef7d073aba6d317616bd76e6aafbb66bd1..12072683a1b9251c84f58ed220e34ba6c2b618f1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,2 +1,38 @@ -include: -- remote: 'https://gitlab.horizon-haskell.net/gitlab/ci-templates/raw/master/default.yml' +stages: +- build +- devour +- cachix + +build: + stage: build + script: + - nix build .#packages.$SYSTEM.$PACKAGE -L + parallel: + matrix: + - SYSTEM: + - aarch64-darwin + - x86_64-linux + PACKAGE: + - sequence-formats + +devour: + stage: devour + script: + - nix build github:srid/devour-flake#packages.$SYSTEM.default -L --no-link --print-out-paths --override-input flake . --keep-going + parallel: + matrix: + - SYSTEM: + - aarch64-darwin + - x86_64-linux + +cachix: + stage: cachix + rules: + - if: $CI_COMMIT_REF_PROTECTED == "true" + script: + - nix-shell -p cachix --command "nix build github:srid/devour-flake#packages.$SYSTEM.default -L --no-link --print-out-paths --override-input flake . | xargs cat | cachix push horizon" + parallel: + matrix: + - SYSTEM: + - aarch64-darwin + - x86_64-linux diff --git a/horizon.dhall b/horizon.dhall index c54fcc84f8bacc5b743e1e8e05f9c87f901fb1a5..1887f0af8749209d9f81bd0d085d8a28d15b7c07 100644 --- a/horizon.dhall +++ b/horizon.dhall @@ -20,6 +20,7 @@ let packages = , iterable = H.callHackage "iterable" "3.0" , log-domain = H.callHackage "log-domain" "0.13.2" , memexml = H.callHackage "memexml" "0.0.3" + , sequence-formats = H.callHackage "sequence-formats" "1.8.0.1" , stringable = H.callHackage "stringable" "0.1.3" , text-binary = H.callHackage "text-binary" "0.2.1.1" } diff --git a/horizon.lock b/horizon.lock index 5ad2e9944246efce45b56e601fefe6106509bf1b..3e84946a74c38d3cc130c388d48b1d95626c8b9e 100644 --- a/horizon.lock +++ b/horizon.lock @@ -70,6 +70,10 @@ , mapValue = "a13fd285ec121fbba353687c602ce1913cd084fc085cbb77b1acea858f614ac3" } +, { mapKey = "sequence-formats" + , mapValue = + "9c51a27d3a671baaa2d2ad5ab83f36ca1a05c39abc9aa89768313e79cfc3486d" + } , { mapKey = "stringable" , mapValue = "a092d279593143ad2b91de87036f162c0dc49e8f0c213c1384432542474565df" diff --git a/overlay.nix b/overlay.nix index 0499d322e397f768c4c213e0b5d7e8ad3a9cd1f5..8de33d58afafda6663c3b417fad0337b12ed101c 100644 --- a/overlay.nix +++ b/overlay.nix @@ -38,6 +38,8 @@ final: prev: with pkgs.haskell.lib; { memexml = f final prev "memexml" (final.callPackage (./pkgs/memexml.nix) { }); + sequence-formats = f final prev "sequence-formats" (final.callPackage (./pkgs/sequence-formats.nix) { }); + stringable = f final prev "stringable" (final.callPackage (./pkgs/stringable.nix) { }); text-binary = f final prev "text-binary" (final.callPackage (./pkgs/text-binary.nix) { }); diff --git a/pkgs/sequence-formats.nix b/pkgs/sequence-formats.nix new file mode 100644 index 0000000000000000000000000000000000000000..966785ae767ef16571b3f754652177b5771cbd90 --- /dev/null +++ b/pkgs/sequence-formats.nix @@ -0,0 +1,33 @@ +{ mkDerivation, attoparsec, base, bytestring, containers, errors +, exceptions, foldl, hspec, lens-family, lib, pipes +, pipes-attoparsec, pipes-bytestring, pipes-safe, tasty +, tasty-hunit, transformers, vector +}: +mkDerivation { + pname = "sequence-formats"; + version = "1.8.0.1"; + sha256 = "b3ff93fca7f78000933aa9c0380b60081f2291156391c4ee3951dce3db087c24"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + attoparsec base bytestring containers errors exceptions foldl + lens-family pipes pipes-attoparsec pipes-bytestring pipes-safe + transformers vector + ]; + testHaskellDepends = [ + base bytestring containers foldl hspec pipes pipes-safe tasty + tasty-hunit transformers vector + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = true; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/stschiff/sequence-formats"; + description = "A package with basic parsing utilities for several Bioinformatic data formats"; + license = lib.licenses.gpl3Only; + broken = false; +} \ No newline at end of file