mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-06-10 03:23:29 +03:00
Merge haskell-updates PR #371032 into staging
This commit is contained in:
commit
b35c701857
79 changed files with 19704 additions and 27192 deletions
|
@ -58,7 +58,7 @@ Each of those compiler versions has a corresponding attribute set `packages` bui
|
||||||
it. However, the non-standard package sets are not tested regularly and, as a
|
it. However, the non-standard package sets are not tested regularly and, as a
|
||||||
result, contain fewer working packages. The corresponding package set for GHC
|
result, contain fewer working packages. The corresponding package set for GHC
|
||||||
9.4.8 is `haskell.packages.ghc948`. In fact `haskellPackages` (at the time of writing) is just an alias
|
9.4.8 is `haskell.packages.ghc948`. In fact `haskellPackages` (at the time of writing) is just an alias
|
||||||
for `haskell.packages.ghc966`:
|
for `haskell.packages.ghc984`:
|
||||||
|
|
||||||
Every package set also re-exposes the GHC used to build its packages as `haskell.packages.*.ghc`.
|
Every package set also re-exposes the GHC used to build its packages as `haskell.packages.*.ghc`.
|
||||||
|
|
||||||
|
@ -297,8 +297,8 @@ Defaults to `false`.
|
||||||
: Whether to build (HTML) documentation using [haddock][haddock].
|
: Whether to build (HTML) documentation using [haddock][haddock].
|
||||||
Defaults to `true` if supported.
|
Defaults to `true` if supported.
|
||||||
|
|
||||||
`testTarget`
|
`testTargets`
|
||||||
: Name of the test suite to build and run. If unset, all test suites will be executed.
|
: Names of the test suites to build and run. If unset, all test suites will be executed.
|
||||||
|
|
||||||
`preCompileBuildDriver`
|
`preCompileBuildDriver`
|
||||||
: Shell code to run before compiling `Setup.hs`.
|
: Shell code to run before compiling `Setup.hs`.
|
||||||
|
@ -621,6 +621,12 @@ environment. This means you can reuse Nix expressions of packages included in
|
||||||
nixpkgs, but also use local Nix expressions like this: `hpkgs: [
|
nixpkgs, but also use local Nix expressions like this: `hpkgs: [
|
||||||
(hpkgs.callPackage ./my-project.nix { }) ]`.
|
(hpkgs.callPackage ./my-project.nix { }) ]`.
|
||||||
|
|
||||||
|
`extraDependencies`
|
||||||
|
: Extra dependencies, in the form of cabal2nix build attributes. An example use
|
||||||
|
case is when you have Haskell scripts that use libraries that don't occur in
|
||||||
|
your packages' dependencies. Example: `hpkgs: {libraryHaskellDepends =
|
||||||
|
[ hpkgs.releaser ]}`. Defaults to `hpkgs: { }`.
|
||||||
|
|
||||||
`nativeBuildInputs`
|
`nativeBuildInputs`
|
||||||
: Expects a list of derivations to add as build tools to the build environment.
|
: Expects a list of derivations to add as build tools to the build environment.
|
||||||
This is the place to add packages like `cabal-install`, `doctest` or `hlint`.
|
This is the place to add packages like `cabal-install`, `doctest` or `hlint`.
|
||||||
|
@ -773,7 +779,7 @@ that depend on that library, you may want to use:
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
haskellPackages.haskell-ci.overrideScope (self: super: {
|
haskellPackages.haskell-ci.overrideScope (self: super: {
|
||||||
Cabal = self.Cabal_3_14_1_0;
|
Cabal = self.Cabal_3_14_1_1;
|
||||||
})
|
})
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,9 @@
|
||||||
- GCC has been updated from GCC 13 to GCC 14.
|
- GCC has been updated from GCC 13 to GCC 14.
|
||||||
This introduces some backwards‐incompatible changes; see the [upstream porting guide](https://gcc.gnu.org/gcc-14/porting_to.html) for details.
|
This introduces some backwards‐incompatible changes; see the [upstream porting guide](https://gcc.gnu.org/gcc-14/porting_to.html) for details.
|
||||||
|
|
||||||
|
- The default GHC version has been updated from 9.6 to 9.8.
|
||||||
|
`haskellPackages` also uses Stackage LTS 23 (instead of LTS 22) as a baseline.
|
||||||
|
|
||||||
- LLVM has been updated from LLVM 16 (on Darwin) and LLVM 18 (on other platforms) to LLVM 19.
|
- LLVM has been updated from LLVM 16 (on Darwin) and LLVM 18 (on other platforms) to LLVM 19.
|
||||||
This introduces some backwards‐incompatible changes; see the [upstream release notes](https://releases.llvm.org/) for details.
|
This introduces some backwards‐incompatible changes; see the [upstream release notes](https://releases.llvm.org/) for details.
|
||||||
|
|
||||||
|
@ -405,6 +408,10 @@
|
||||||
- `lib.types.coercedTo`
|
- `lib.types.coercedTo`
|
||||||
- `lib.types.either`
|
- `lib.types.either`
|
||||||
|
|
||||||
|
- The `testTarget` argument of `haskellPackages.mkDerivation` has been deprecated in favour of `testTargets`.
|
||||||
|
`testTarget` took a space separated string of targets, whereas the new `testTargets` argument takes a list of targets.
|
||||||
|
For instance, `testTarget = "foo bar baz"` should become `testTargets = [ "foo" "bar" "baz" ]`.
|
||||||
|
|
||||||
- Plasma 5 and Qt 5 based versions of associated software are deprecated in NixOS 25.05, and will be removed in NixOS 25.11. Users are encouraged to upgrade to Plasma 6.
|
- Plasma 5 and Qt 5 based versions of associated software are deprecated in NixOS 25.05, and will be removed in NixOS 25.11. Users are encouraged to upgrade to Plasma 6.
|
||||||
|
|
||||||
- `rustPlatform.buildRustPackage` stops handling the deprecated argument `cargoSha256`. Out-of-tree packages that haven't migrated from `cargoSha256` to `cargoHash` now receive errors.
|
- `rustPlatform.buildRustPackage` stops handling the deprecated argument `cargoSha256`. Out-of-tree packages that haven't migrated from `cargoSha256` to `cargoHash` now receive errors.
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
#! /usr/bin/env nix-shell
|
#! /usr/bin/env nix-shell
|
||||||
#! nix-shell -i bash -p git gh -I nixpkgs=.
|
#! nix-shell -i bash -p git gh -I nixpkgs=.
|
||||||
#
|
#
|
||||||
# Script to merge the currently open haskell-updates PR into master, bump the
|
# Script to merge the currently open haskell-updates PR , bump the Stackage
|
||||||
# Stackage version and Hackage versions, and open the next haskell-updates PR.
|
# version and Hackage versions, and open the next haskell-updates PR.
|
||||||
|
|
||||||
set -eu -o pipefail
|
set -eu -o pipefail
|
||||||
|
|
||||||
|
@ -79,10 +79,6 @@ fi
|
||||||
echo "Merging https://github.com/NixOS/nixpkgs/pull/${curr_haskell_updates_pr_num}..."
|
echo "Merging https://github.com/NixOS/nixpkgs/pull/${curr_haskell_updates_pr_num}..."
|
||||||
gh pr merge --repo NixOS/nixpkgs --merge "$curr_haskell_updates_pr_num"
|
gh pr merge --repo NixOS/nixpkgs --merge "$curr_haskell_updates_pr_num"
|
||||||
|
|
||||||
# Update the list of Haskell package versions in NixOS on Hackage.
|
|
||||||
echo "Updating list of Haskell package versions in NixOS on Hackage..."
|
|
||||||
./maintainers/scripts/haskell/upload-nixos-package-list-to-hackage.sh
|
|
||||||
|
|
||||||
# Update stackage, Hackage hashes, and regenerate Haskell package set
|
# Update stackage, Hackage hashes, and regenerate Haskell package set
|
||||||
echo "Updating Stackage..."
|
echo "Updating Stackage..."
|
||||||
./maintainers/scripts/haskell/update-stackage.sh --do-commit
|
./maintainers/scripts/haskell/update-stackage.sh --do-commit
|
||||||
|
@ -100,7 +96,7 @@ git push "$push_remote" haskell-updates
|
||||||
new_pr_body=$(cat <<EOF
|
new_pr_body=$(cat <<EOF
|
||||||
### This Merge
|
### This Merge
|
||||||
|
|
||||||
This PR is the regular merge of the \`haskell-updates\` branch into \`master\`.
|
This PR is the regular merge of the \`haskell-updates\` branch into \`staging\`.
|
||||||
|
|
||||||
This branch is being continually built and tested by hydra at https://hydra.nixos.org/jobset/nixpkgs/haskell-updates. You may be able to find an up-to-date Hydra build report at [cdepillabout/nix-haskell-updates-status](https://github.com/cdepillabout/nix-haskell-updates-status).
|
This branch is being continually built and tested by hydra at https://hydra.nixos.org/jobset/nixpkgs/haskell-updates. You may be able to find an up-to-date Hydra build report at [cdepillabout/nix-haskell-updates-status](https://github.com/cdepillabout/nix-haskell-updates-status).
|
||||||
|
|
||||||
|
@ -113,7 +109,7 @@ Our workflow is currently described in [\`pkgs/development/haskell-modules/HACKI
|
||||||
The short version is this:
|
The short version is this:
|
||||||
* We regularly update the Stackage and Hackage pins on \`haskell-updates\` (normally at the beginning of a merge window).
|
* We regularly update the Stackage and Hackage pins on \`haskell-updates\` (normally at the beginning of a merge window).
|
||||||
* The community fixes builds of Haskell packages on that branch.
|
* The community fixes builds of Haskell packages on that branch.
|
||||||
* We aim at at least one merge of \`haskell-updates\` into \`master\` every two weeks.
|
* We aim at at least one merge of \`haskell-updates\` into \`staging\` every two weeks.
|
||||||
* We only do the merge if the [\`mergeable\`](https://hydra.nixos.org/job/nixpkgs/haskell-updates/mergeable) job is succeeding on hydra.
|
* We only do the merge if the [\`mergeable\`](https://hydra.nixos.org/job/nixpkgs/haskell-updates/mergeable) job is succeeding on hydra.
|
||||||
* If a [\`maintained\`](https://hydra.nixos.org/job/nixpkgs/haskell-updates/maintained) package is still broken at the time of merge, we will only merge if the maintainer has been pinged 7 days in advance. (If you care about a Haskell package, become a maintainer!)
|
* If a [\`maintained\`](https://hydra.nixos.org/job/nixpkgs/haskell-updates/maintained) package is still broken at the time of merge, we will only merge if the maintainer has been pinged 7 days in advance. (If you care about a Haskell package, become a maintainer!)
|
||||||
|
|
||||||
|
@ -126,4 +122,4 @@ EOF
|
||||||
)
|
)
|
||||||
|
|
||||||
echo "Opening a PR for the next haskell-updates merge cycle..."
|
echo "Opening a PR for the next haskell-updates merge cycle..."
|
||||||
gh pr create --repo NixOS/nixpkgs --base master --head haskell-updates --title "haskellPackages: update stackage and hackage" --body "$new_pr_body"
|
gh pr create --repo NixOS/nixpkgs --base staging --head haskell-updates --title "haskellPackages: update stackage and hackage" --body "$new_pr_body"
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#! /usr/bin/env nix-shell
|
#! /usr/bin/env nix-shell
|
||||||
#! nix-shell -i bash -p coreutils haskellPackages.cabal2nix-unstable git nix -I nixpkgs=.
|
#! nix-shell -i bash -p coreutils haskellPackages.cabal2nix-unstable git nix nixfmt-rfc-style -I nixpkgs=.
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
@ -102,6 +102,7 @@ run_hackage2nix
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
nixfmt pkgs/development/haskell-modules/hackage-packages.nix
|
||||||
|
|
||||||
if [[ "$DO_COMMIT" -eq 1 ]]; then
|
if [[ "$DO_COMMIT" -eq 1 ]]; then
|
||||||
git add pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
|
git add pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
|
||||||
|
|
31
maintainers/scripts/haskell/unbreak.nu
Executable file
31
maintainers/scripts/haskell/unbreak.nu
Executable file
|
@ -0,0 +1,31 @@
|
||||||
|
#! /usr/bin/env nix-shell
|
||||||
|
#! nix-shell -i nu -p nushell flock gnused -I nixpkgs=.
|
||||||
|
|
||||||
|
# This script tests to build all packages listed in broken.yaml, expecting a build failure.
|
||||||
|
# It will remove all packages that build fine from the list.
|
||||||
|
|
||||||
|
# Attention: For unknown reasons, the script can't be easily cancelled and needs to be killed manually if it shouldn't run to completion.
|
||||||
|
|
||||||
|
use std log
|
||||||
|
|
||||||
|
let broken_config = "pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml"
|
||||||
|
|
||||||
|
def is-broken [package : string]: nothing -> bool {
|
||||||
|
let res = with-env { NIXPKGS_ALLOW_BROKEN: "1" } {
|
||||||
|
# rather high timeout of half an hour, just to prevent never-ending builds
|
||||||
|
^nix-build --no-out-link -j 1 --cores 1 --timeout 1800 -A $"haskellPackages.($package)" | complete
|
||||||
|
}
|
||||||
|
if $res.exit_code == 0 {
|
||||||
|
log warning $"($package) is not broken anymore!"
|
||||||
|
return false
|
||||||
|
} else {
|
||||||
|
log info $"($package) is still broken."
|
||||||
|
log debug $"($package) build log:\n($res.stderr)"
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
def main [] {
|
||||||
|
$broken_config | open | get broken-packages
|
||||||
|
| par-each {|package| if not (is-broken $package) { ^flock -x $broken_config -c $"sed -i -e '/^ - ($package) /d' ($broken_config)" }}
|
||||||
|
}
|
|
@ -8,7 +8,7 @@ set -eu -o pipefail
|
||||||
# (should be capitalized like the display name)
|
# (should be capitalized like the display name)
|
||||||
SOLVER=LTS
|
SOLVER=LTS
|
||||||
# Stackage solver verson, if any. Use latest if empty
|
# Stackage solver verson, if any. Use latest if empty
|
||||||
VERSION=22
|
VERSION=
|
||||||
TMP_TEMPLATE=update-stackage.XXXXXXX
|
TMP_TEMPLATE=update-stackage.XXXXXXX
|
||||||
readonly SOLVER
|
readonly SOLVER
|
||||||
readonly VERSION
|
readonly VERSION
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
{
|
{
|
||||||
haskellPackages,
|
haskellPackages,
|
||||||
mkDerivation,
|
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
lib,
|
lib,
|
||||||
stdenv,
|
stdenv,
|
||||||
|
@ -13,6 +12,8 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
inherit (haskellPackages) mkDerivation;
|
||||||
|
|
||||||
version = "1.10.0";
|
version = "1.10.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tamarin-prover";
|
owner = "tamarin-prover";
|
||||||
|
|
120
pkgs/by-name/ec/echidna/package.nix
Normal file
120
pkgs/by-name/ec/echidna/package.nix
Normal file
|
@ -0,0 +1,120 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
makeWrapper,
|
||||||
|
haskellPackages,
|
||||||
|
fetchFromGitHub,
|
||||||
|
# dependencies
|
||||||
|
slither-analyzer,
|
||||||
|
}:
|
||||||
|
|
||||||
|
haskellPackages.mkDerivation rec {
|
||||||
|
pname = "echidna";
|
||||||
|
version = "2.2.6";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "crytic";
|
||||||
|
repo = "echidna";
|
||||||
|
tag = "v${version}";
|
||||||
|
sha256 = "sha256-5nzis7MXOqs0bhx2jrEexjZYZI2qY6D0D7AWO+SPs+A=";
|
||||||
|
};
|
||||||
|
|
||||||
|
isExecutable = true;
|
||||||
|
|
||||||
|
buildTools = with haskellPackages; [
|
||||||
|
hpack
|
||||||
|
];
|
||||||
|
|
||||||
|
executableHaskellDepends = with haskellPackages; [
|
||||||
|
# base dependencies
|
||||||
|
aeson
|
||||||
|
base
|
||||||
|
containers
|
||||||
|
directory
|
||||||
|
hevm
|
||||||
|
MonadRandom
|
||||||
|
mtl
|
||||||
|
text
|
||||||
|
# library dependencies
|
||||||
|
ansi-terminal
|
||||||
|
async
|
||||||
|
base16-bytestring
|
||||||
|
binary
|
||||||
|
brick
|
||||||
|
bytestring
|
||||||
|
data-bword
|
||||||
|
data-dword
|
||||||
|
deepseq
|
||||||
|
exceptions
|
||||||
|
extra
|
||||||
|
filepath
|
||||||
|
hashable
|
||||||
|
html-conduit
|
||||||
|
html-entities
|
||||||
|
http-conduit
|
||||||
|
ListLike
|
||||||
|
optics
|
||||||
|
optics-core
|
||||||
|
process
|
||||||
|
random
|
||||||
|
rosezipper
|
||||||
|
semver
|
||||||
|
signal
|
||||||
|
split
|
||||||
|
strip-ansi-escape
|
||||||
|
time
|
||||||
|
unliftio
|
||||||
|
utf8-string
|
||||||
|
vector
|
||||||
|
vty
|
||||||
|
vty-crossplatform
|
||||||
|
wai-extra
|
||||||
|
warp
|
||||||
|
word-wrap
|
||||||
|
xml-conduit
|
||||||
|
yaml
|
||||||
|
# executable dependencies
|
||||||
|
code-page
|
||||||
|
filepath
|
||||||
|
hashable
|
||||||
|
optparse-applicative
|
||||||
|
time
|
||||||
|
with-utf8
|
||||||
|
];
|
||||||
|
|
||||||
|
executableToolDepends = [
|
||||||
|
makeWrapper
|
||||||
|
];
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
hpack
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall =
|
||||||
|
with haskellPackages;
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/304352
|
||||||
|
lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) ''
|
||||||
|
remove-references-to -t ${warp.out} "$out/bin/echidna"
|
||||||
|
remove-references-to -t ${wreq.out} "$out/bin/echidna"
|
||||||
|
''
|
||||||
|
# make slither-analyzer a runtime dependency
|
||||||
|
+ ''
|
||||||
|
wrapProgram $out/bin/echidna \
|
||||||
|
--prefix PATH : ${lib.makeBinPath [ slither-analyzer ]}
|
||||||
|
'';
|
||||||
|
|
||||||
|
doHaddock = false;
|
||||||
|
|
||||||
|
# tests depend on a specific version of solc
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
homepage = "https://github.com/crytic/echidna";
|
||||||
|
description = "Ethereum smart contract fuzzer";
|
||||||
|
license = lib.licenses.agpl3Plus;
|
||||||
|
maintainers = with lib.maintainers; [
|
||||||
|
arturcygan
|
||||||
|
hellwolf
|
||||||
|
];
|
||||||
|
platforms = lib.platforms.unix;
|
||||||
|
mainProgram = "echidna";
|
||||||
|
}
|
|
@ -12,7 +12,7 @@ let
|
||||||
|
|
||||||
# nom has unit-tests and golden-tests
|
# nom has unit-tests and golden-tests
|
||||||
# golden-tests call nix and thus can’t be run in a nix build.
|
# golden-tests call nix and thus can’t be run in a nix build.
|
||||||
testTarget = "unit-tests";
|
testTargets = [ "unit-tests" ];
|
||||||
|
|
||||||
buildTools = [ installShellFiles ];
|
buildTools = [ installShellFiles ];
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
|
|
|
@ -41,9 +41,6 @@ in
|
||||||
remove-references-to \
|
remove-references-to \
|
||||||
-t ${pandoc-cli.scope.pandoc} \
|
-t ${pandoc-cli.scope.pandoc} \
|
||||||
$out/bin/pandoc
|
$out/bin/pandoc
|
||||||
''
|
|
||||||
# https://github.com/jgm/typst-hs/commit/9707b74ce60d71c2ba0f35249ffbd01dea197a6e
|
|
||||||
+ lib.optionalString (lib.versionAtLeast pandoc-cli.scope.typst.version "0.6.1") ''
|
|
||||||
remove-references-to \
|
remove-references-to \
|
||||||
-t ${pandoc-cli.scope.typst} \
|
-t ${pandoc-cli.scope.typst} \
|
||||||
$out/bin/pandoc
|
$out/bin/pandoc
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"commit": "c9ce1cc4a029220ec3582fbcf69e082d245d78b6",
|
"commit": "6fc5e0d20fed4a6e8ec26f6956786d0077f028b4",
|
||||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/c9ce1cc4a029220ec3582fbcf69e082d245d78b6.tar.gz",
|
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/6fc5e0d20fed4a6e8ec26f6956786d0077f028b4.tar.gz",
|
||||||
"sha256": "02x3z4rg4dwarzb6p88z7sff40bkbq41gxnczvzph8s3s8jq9iw1",
|
"sha256": "08vkrfn4s1jb680rq1flxas8hv04f5l715z0kh8sv909k3psbfak",
|
||||||
"msg": "Update from Hackage at 2024-12-23T18:27:47Z"
|
"msg": "Update from Hackage at 2025-03-30T11:13:14Z"
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,8 +22,8 @@ let
|
||||||
# Haskell packages that require ghc 8.10
|
# Haskell packages that require ghc 8.10
|
||||||
hs810Pkgs = import ./packages/ghc8_10 { inherit pkgs lib; };
|
hs810Pkgs = import ./packages/ghc8_10 { inherit pkgs lib; };
|
||||||
|
|
||||||
# Haskell packages that require ghc 9.2
|
# Haskell packages that require ghc 9.4
|
||||||
hs92Pkgs = import ./packages/ghc9_2 { inherit pkgs lib; };
|
hs94Pkgs = import ./packages/ghc9_4 { inherit pkgs lib; };
|
||||||
|
|
||||||
# Patched, originally npm-downloaded, packages
|
# Patched, originally npm-downloaded, packages
|
||||||
patchedNodePkgs = import ./packages/node {
|
patchedNodePkgs = import ./packages/node {
|
||||||
|
@ -38,7 +38,7 @@ let
|
||||||
assembleScope =
|
assembleScope =
|
||||||
self: basics:
|
self: basics:
|
||||||
(hs96Pkgs self).elmPkgs
|
(hs96Pkgs self).elmPkgs
|
||||||
// (hs92Pkgs self).elmPkgs
|
// (hs94Pkgs self).elmPkgs
|
||||||
// (hs810Pkgs self).elmPkgs
|
// (hs810Pkgs self).elmPkgs
|
||||||
// (patchedNodePkgs self)
|
// (patchedNodePkgs self)
|
||||||
// basics;
|
// basics;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ pkgs, lib }:
|
{ pkgs, lib }:
|
||||||
|
|
||||||
self:
|
self:
|
||||||
pkgs.haskell.packages.ghc92.override {
|
pkgs.haskell.packages.ghc94.override {
|
||||||
overrides =
|
overrides =
|
||||||
self: super:
|
self: super:
|
||||||
let
|
let
|
||||||
|
@ -49,12 +49,5 @@ pkgs.haskell.packages.ghc92.override {
|
||||||
elm-format-lib = fixHaddock (doJailbreak (self.callPackage ./elm-format/elm-format-lib.nix { }));
|
elm-format-lib = fixHaddock (doJailbreak (self.callPackage ./elm-format/elm-format-lib.nix { }));
|
||||||
elm-format-test-lib = fixHaddock (self.callPackage ./elm-format/elm-format-test-lib.nix { });
|
elm-format-test-lib = fixHaddock (self.callPackage ./elm-format/elm-format-test-lib.nix { });
|
||||||
elm-format-markdown = fixHaddock (self.callPackage ./elm-format/elm-format-markdown.nix { });
|
elm-format-markdown = fixHaddock (self.callPackage ./elm-format/elm-format-markdown.nix { });
|
||||||
|
|
||||||
# elm-format requires text >= 2.0
|
|
||||||
text = self.text_2_0_2;
|
|
||||||
# unordered-container's tests indirectly depend on text < 2.0
|
|
||||||
unordered-containers = overrideCabal (drv: { doCheck = false; }) super.unordered-containers;
|
|
||||||
# relude-1.1.0.0's tests depend on hedgehog < 1.2, which indirectly depends on text < 2.0
|
|
||||||
relude = overrideCabal (drv: { doCheck = false; }) super.relude;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
|
@ -299,6 +299,20 @@ stdenv.mkDerivation (
|
||||||
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
|
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
|
||||||
})
|
})
|
||||||
|
|
||||||
|
# Determine size of time related types using hsc2hs instead of assuming CLong.
|
||||||
|
# Prevents failures when e.g. stat(2)ing on 32bit systems with 64bit time_t etc.
|
||||||
|
# https://github.com/haskell/ghcup-hs/issues/1107
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/25095
|
||||||
|
# Note that in normal situations this shouldn't be the case since nixpkgs
|
||||||
|
# doesn't set -D_FILE_OFFSET_BITS=64 and friends (yet).
|
||||||
|
(fetchpatch {
|
||||||
|
name = "unix-fix-ctimeval-size-32-bit.patch";
|
||||||
|
url = "https://github.com/haskell/unix/commit/8183e05b97ce870dd6582a3677cc82459ae566ec.patch";
|
||||||
|
sha256 = "17q5yyigqr5kxlwwzb95sx567ysfxlw6bp3j4ji20lz0947aw6gv";
|
||||||
|
stripLen = 1;
|
||||||
|
extraPrefix = "libraries/unix/";
|
||||||
|
})
|
||||||
|
|
||||||
# See upstream patch at
|
# See upstream patch at
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4885. Since we build
|
# https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4885. Since we build
|
||||||
# from source distributions, the auto-generated configure script needs to be
|
# from source distributions, the auto-generated configure script needs to be
|
||||||
|
|
4
pkgs/development/compilers/ghc/9.12.2.nix
Normal file
4
pkgs/development/compilers/ghc/9.12.2.nix
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
import ./common-hadrian.nix rec {
|
||||||
|
version = "9.12.2";
|
||||||
|
sha256 = "0e49cd5dde43f348c5716e5de9a5d7a0f8d68d945dc41cf75dfdefe65084f933";
|
||||||
|
}
|
|
@ -1,4 +0,0 @@
|
||||||
import ./common-make-native-bignum.nix {
|
|
||||||
version = "9.2.5";
|
|
||||||
sha256 = "0606797d1b38e2d88ee2243f38ec6b9a1aa93e9b578e95f0de9a9c0a4144021c";
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
import ./common-make-native-bignum.nix {
|
|
||||||
version = "9.2.6";
|
|
||||||
sha256 = "7a54cf0398ad488b4ed219e15d1d1e64c0b6876c43a0564550dd11f0540d7305";
|
|
||||||
}
|
|
|
@ -1,4 +0,0 @@
|
||||||
import ./common-make-native-bignum.nix {
|
|
||||||
version = "9.2.7";
|
|
||||||
sha256 = "a253567a17b734a4c0dd0ffa296d33c2a5b5a54a77df988806a2a1e1ca7e88b8";
|
|
||||||
}
|
|
4
pkgs/development/compilers/ghc/9.6.7.nix
Normal file
4
pkgs/development/compilers/ghc/9.6.7.nix
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
import ./common-hadrian.nix {
|
||||||
|
version = "9.6.7";
|
||||||
|
sha256 = "sha256-0FO/bOHViKdc/oyTFiaUhunY+4nc32/ZKDb6Lj32EwU=";
|
||||||
|
}
|
|
@ -181,9 +181,42 @@
|
||||||
in
|
in
|
||||||
|
|
||||||
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
|
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
|
||||||
lib.optionals (lib.versionOlder version "9.8") [
|
lib.optionals (lib.versionOlder version "9.6.7") [
|
||||||
./docs-sphinx-7.patch
|
./docs-sphinx-7.patch
|
||||||
]
|
]
|
||||||
|
++ lib.optionals (lib.versionAtLeast version "9.6" && lib.versionOlder version "9.6.5") [
|
||||||
|
# Fix aarch64-linux builds of 9.6.0 - 9.6.4.
|
||||||
|
# Fixes a pointer type mismatch in the RTS.
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/24348
|
||||||
|
(fetchpatch {
|
||||||
|
name = "fix-incompatible-pointer-types.patch";
|
||||||
|
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/1e48c43483693398001bfb0ae644a3558bf6a9f3.diff";
|
||||||
|
hash = "sha256-zUlzpX7J1n+MCEv9AWpj69FTy2uzJH8wrQDkTexGbgM=";
|
||||||
|
})
|
||||||
|
]
|
||||||
|
++
|
||||||
|
lib.optionals
|
||||||
|
(
|
||||||
|
# 2025-01-16: unix >= 2.8.6.0 is unaffected which is shipped by GHC 9.12.1 and 9.8.4
|
||||||
|
lib.versionOlder version "9.11"
|
||||||
|
&& !(lib.versionAtLeast version "9.6.7" && lib.versionOlder version "9.8")
|
||||||
|
&& !(lib.versionAtLeast version "9.8.4" && lib.versionOlder version "9.9")
|
||||||
|
)
|
||||||
|
[
|
||||||
|
# Determine size of time related types using hsc2hs instead of assuming CLong.
|
||||||
|
# Prevents failures when e.g. stat(2)ing on 32bit systems with 64bit time_t etc.
|
||||||
|
# https://github.com/haskell/ghcup-hs/issues/1107
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/25095
|
||||||
|
# Note that in normal situations this shouldn't be the case since nixpkgs
|
||||||
|
# doesn't set -D_FILE_OFFSET_BITS=64 and friends (yet).
|
||||||
|
(fetchpatch {
|
||||||
|
name = "unix-fix-ctimeval-size-32-bit.patch";
|
||||||
|
url = "https://github.com/haskell/unix/commit/8183e05b97ce870dd6582a3677cc82459ae566ec.patch";
|
||||||
|
sha256 = "17q5yyigqr5kxlwwzb95sx567ysfxlw6bp3j4ji20lz0947aw6gv";
|
||||||
|
stripLen = 1;
|
||||||
|
extraPrefix = "libraries/unix/";
|
||||||
|
})
|
||||||
|
]
|
||||||
++ lib.optionals (lib.versionAtLeast version "9.6" && lib.versionOlder version "9.6.6") [
|
++ lib.optionals (lib.versionAtLeast version "9.6" && lib.versionOlder version "9.6.6") [
|
||||||
(fetchpatch {
|
(fetchpatch {
|
||||||
name = "fix-fully_static.patch";
|
name = "fix-fully_static.patch";
|
||||||
|
|
|
@ -283,7 +283,22 @@ stdenv.mkDerivation (
|
||||||
];
|
];
|
||||||
|
|
||||||
patches =
|
patches =
|
||||||
lib.optionals (lib.versionOlder version "9.4") [
|
[
|
||||||
|
# Determine size of time related types using hsc2hs instead of assuming CLong.
|
||||||
|
# Prevents failures when e.g. stat(2)ing on 32bit systems with 64bit time_t etc.
|
||||||
|
# https://github.com/haskell/ghcup-hs/issues/1107
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/25095
|
||||||
|
# Note that in normal situations this shouldn't be the case since nixpkgs
|
||||||
|
# doesn't set -D_FILE_OFFSET_BITS=64 and friends (yet).
|
||||||
|
(fetchpatch {
|
||||||
|
name = "unix-fix-ctimeval-size-32-bit.patch";
|
||||||
|
url = "https://github.com/haskell/unix/commit/8183e05b97ce870dd6582a3677cc82459ae566ec.patch";
|
||||||
|
sha256 = "17q5yyigqr5kxlwwzb95sx567ysfxlw6bp3j4ji20lz0947aw6gv";
|
||||||
|
stripLen = 1;
|
||||||
|
extraPrefix = "libraries/unix/";
|
||||||
|
})
|
||||||
|
]
|
||||||
|
++ lib.optionals (lib.versionOlder version "9.4") [
|
||||||
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
|
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
|
||||||
(fetchpatch {
|
(fetchpatch {
|
||||||
url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch";
|
url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch";
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import ./common-hadrian.nix {
|
import ./common-hadrian.nix {
|
||||||
version = "9.13.20241031";
|
version = "9.13.20250205";
|
||||||
rev = "0b11cdc022ce33d089db95b2b2e7c1f4bb326d37";
|
rev = "5622a14a7a036ab36e28963a4fba826a5ac798a7";
|
||||||
sha256 = "0kqnpcgv49ricbr950lffs8gx7jrcg6anzc0qvwy5pb518w0d37i";
|
sha256 = "1djhs67gz136xvky7wsv44ic60j7xk4fzabr5why2jh312r4vlr4";
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,6 +34,8 @@ self: super: {
|
||||||
# Allow transformers-compat >= 0.7
|
# Allow transformers-compat >= 0.7
|
||||||
optparse-applicative = doJailbreak self.optparse-applicative_0_15_1_0;
|
optparse-applicative = doJailbreak self.optparse-applicative_0_15_1_0;
|
||||||
ansi-wl-pprint = self.ansi-wl-pprint_0_6_9;
|
ansi-wl-pprint = self.ansi-wl-pprint_0_6_9;
|
||||||
|
ansi-terminal = self.ansi-terminal_1_0_2;
|
||||||
|
ansi-terminal-types = self.ansi-terminal-types_0_11_5;
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
|
@ -7,28 +7,30 @@ there are no Haskell-related evaluation errors or build errors that get into
|
||||||
the Nixpkgs `master` branch.
|
the Nixpkgs `master` branch.
|
||||||
|
|
||||||
We do this by periodically merging an updated set of Haskell packages on the
|
We do this by periodically merging an updated set of Haskell packages on the
|
||||||
`haskell-updates` branch into the `master` branch. Each member of the team
|
`haskell-updates` branch into the `staging` branch. Each member of the team
|
||||||
takes a two week period where they are in charge of merging the
|
takes a two week period where they are in charge of merging the
|
||||||
`haskell-updates` branch into `master`. This is the documentation for this
|
`haskell-updates` branch into `staging`. This is the documentation for this
|
||||||
workflow.
|
workflow.
|
||||||
|
|
||||||
The workflow generally proceeds in three main steps:
|
The workflow generally proceeds in three main steps:
|
||||||
|
|
||||||
1. create the initial `haskell-updates` PR, and update Stackage and Hackage snapshots
|
1. create the initial `haskell-updates` PR, and update Stackage and Hackage snapshots
|
||||||
1. wait for contributors to fix newly broken Haskell packages
|
1. wait for contributors to fix newly broken Haskell packages
|
||||||
1. merge `haskell-updates` into `master`
|
1. merge `haskell-updates` into `staging`
|
||||||
|
|
||||||
Each of these steps is described in a separate section.
|
Each of these steps is described in a separate section.
|
||||||
|
|
||||||
There is a script that automates the workflow for merging the currently open
|
There is a script that automates the workflow for merging the currently open
|
||||||
`haskell-updates` PR into `master` and opening the next PR. It is described
|
`haskell-updates` PR into `staging` and opening the next PR. It is described
|
||||||
at the end of this document.
|
at the end of this document.
|
||||||
|
|
||||||
## Initial `haskell-updates` PR
|
## Initial `haskell-updates` PR
|
||||||
|
|
||||||
In this section we create the PR for merging `haskell-updates` into `master`.
|
In this section we create the PR for merging `haskell-updates` into `staging`.
|
||||||
|
|
||||||
1. Make sure the `haskell-updates` branch is up-to-date with `master`.
|
1. Make sure the `haskell-updates` branch is up-to-date with a _merge base_ of
|
||||||
|
`staging` and `master`. `haskell-updates` is not based _on_ `staging`,
|
||||||
|
so that it can share binary cache with `master`.
|
||||||
|
|
||||||
1. Update the Stackage Nightly resolver used by Nixpkgs and create a commit:
|
1. Update the Stackage Nightly resolver used by Nixpkgs and create a commit:
|
||||||
|
|
||||||
|
@ -50,7 +52,7 @@ In this section we create the PR for merging `haskell-updates` into `master`.
|
||||||
|
|
||||||
1. Push these commits to the `haskell-updates` branch of the NixOS/nixpkgs repository.
|
1. Push these commits to the `haskell-updates` branch of the NixOS/nixpkgs repository.
|
||||||
|
|
||||||
1. Open a PR on Nixpkgs for merging `haskell-updates` into `master`. The recommended
|
1. Open a PR on Nixpkgs for merging `haskell-updates` into `staging`. The recommended
|
||||||
PR title and body text are described in the `merge-and-open-pr.sh` section.
|
PR title and body text are described in the `merge-and-open-pr.sh` section.
|
||||||
|
|
||||||
## Notify Maintainers and Fix Broken Packages
|
## Notify Maintainers and Fix Broken Packages
|
||||||
|
@ -85,7 +87,7 @@ most recent build report.
|
||||||
|
|
||||||
Maintainers should be given at least 7 days to fix up their packages when they
|
Maintainers should be given at least 7 days to fix up their packages when they
|
||||||
break. If maintainers don't fix up their packages within 7 days, then they
|
break. If maintainers don't fix up their packages within 7 days, then they
|
||||||
may be marked broken before merging `haskell-updates` into `master`.
|
may be marked broken before merging `haskell-updates` into `staging`.
|
||||||
|
|
||||||
### Fix Broken Packages
|
### Fix Broken Packages
|
||||||
|
|
||||||
|
@ -153,7 +155,7 @@ following will happen:
|
||||||
|
|
||||||
- All updated files will be committed.
|
- All updated files will be committed.
|
||||||
|
|
||||||
## Merge `haskell-updates` into `master`
|
## Merge `haskell-updates` into `staging`
|
||||||
|
|
||||||
Now it is time to merge the `haskell-updates` PR you opened above.
|
Now it is time to merge the `haskell-updates` PR you opened above.
|
||||||
|
|
||||||
|
@ -168,33 +170,12 @@ Before doing this, make sure of the following:
|
||||||
have been pinged on GitHub and given at least a week to fix their packages.
|
have been pinged on GitHub and given at least a week to fix their packages.
|
||||||
This is especially important for widely-used packages like `cachix`.
|
This is especially important for widely-used packages like `cachix`.
|
||||||
|
|
||||||
- Make sure you first merge the `master` branch into `haskell-updates`. Wait
|
- Keep an eye on the next `staging-next` iteration (which is branched off
|
||||||
for Hydra to evaluate the new `haskell-updates` jobset. Make sure you only
|
from `staging`) to confirm that there are no show stopping issues stemming
|
||||||
merge `haskell-updates` into `master` when there are no evaluation errors.
|
from interactions between changes on `staging` and `haskell-updates`.
|
||||||
|
Also be aware that build or eval regressions from a `haskell-updates`
|
||||||
- Due to Hydra having only a small number of Darwin build machines, the
|
iteration may only become apparent on `staging-next`, especially when the
|
||||||
`haskell-updates` jobset on Hydra often has many queued Darwin jobs.
|
`haskell-updates` jobset had e.g. Darwin builds disabled.
|
||||||
In order to not have these queued Darwin jobs prevent the `haskell-updates`
|
|
||||||
branch from being merged to `master` in a timely manner, we have special
|
|
||||||
rules for Darwin jobs.
|
|
||||||
|
|
||||||
- It is alright to merge the `haskell-updates` branch to `master` if
|
|
||||||
there are remaining queued Darwin jobs on Hydra.
|
|
||||||
|
|
||||||
- We would like to keep GHC and the `mergeable` job building on Darwin.
|
|
||||||
Do not merge the `haskell-updates` branch to `master` if GHC is failing
|
|
||||||
to build, or the `mergeable` job has failing Darwin constituent jobs.
|
|
||||||
|
|
||||||
If GHC and the `mergeable` job are not failing, but merely queued,
|
|
||||||
it is alright to merge the `haskell-updates` branch to `master`.
|
|
||||||
|
|
||||||
- We do not need to keep the `maintained` job building on Darwin.
|
|
||||||
If `maintained` packages are failing on Darwin, it is helpful to
|
|
||||||
mark them as broken on that platform.
|
|
||||||
|
|
||||||
When you've double-checked these points, go ahead and merge the `haskell-updates` PR.
|
|
||||||
After merging, **make sure not to delete the `haskell-updates` branch**, since it
|
|
||||||
causes all currently open Haskell-related pull-requests to be automatically closed on GitHub.
|
|
||||||
|
|
||||||
## Script for Merging `haskell-updates` and Opening a New PR
|
## Script for Merging `haskell-updates` and Opening a New PR
|
||||||
|
|
||||||
|
@ -233,10 +214,6 @@ opening the next one. When you want to merge the currently open
|
||||||
$ ./maintainers/scripts/haskell/mark-broken.sh --do-commit
|
$ ./maintainers/scripts/haskell/mark-broken.sh --do-commit
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Merge `master` into `haskell-updates` and make sure to push to the
|
|
||||||
`haskell-updates` branch. (This can be skipped if `master` has recently
|
|
||||||
been merged into `haskell-updates`.)
|
|
||||||
|
|
||||||
1. Go to https://hydra.nixos.org/jobset/nixpkgs/haskell-updates and force an
|
1. Go to https://hydra.nixos.org/jobset/nixpkgs/haskell-updates and force an
|
||||||
evaluation of the `haskell-updates` jobset. See one of the following
|
evaluation of the `haskell-updates` jobset. See one of the following
|
||||||
sections for how to do this. Make sure there are no evaluation errors. If
|
sections for how to do this. Make sure there are no evaluation errors. If
|
||||||
|
@ -270,11 +247,14 @@ opening the next one. When you want to merge the currently open
|
||||||
|
|
||||||
## Update Hackage Version Information
|
## Update Hackage Version Information
|
||||||
|
|
||||||
After merging into `master` you can update what Hackage displays as the current
|
Remember to regularly update what Hackage displays as the current
|
||||||
version in NixOS for every individual package. To do this you run
|
version in NixOS for every individual package. To do this you run
|
||||||
`maintainers/scripts/haskell/upload-nixos-package-list-to-hackage.sh`. See the
|
`maintainers/scripts/haskell/upload-nixos-package-list-to-hackage.sh` on a checkout
|
||||||
script for how to provide credentials. Once you have configured credentials,
|
of `master` (or `nixpkgs-unstable`). See the script for how to provide credentials.
|
||||||
running this takes only a few seconds.
|
Once you have configured credentials, running this takes only a few seconds.
|
||||||
|
|
||||||
|
The best time to do this is after `staging-next` has been merged since this is
|
||||||
|
the way Haskell package updates propagate to `master`.
|
||||||
|
|
||||||
## Additional Info
|
## Additional Info
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
{
|
{
|
||||||
mkDerivation,
|
mkDerivation,
|
||||||
aeson,
|
aeson,
|
||||||
|
ansi-terminal,
|
||||||
ansi-wl-pprint,
|
ansi-wl-pprint,
|
||||||
base,
|
base,
|
||||||
bytestring,
|
bytestring,
|
||||||
|
@ -34,16 +35,17 @@
|
||||||
}:
|
}:
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
pname = "cabal2nix";
|
pname = "cabal2nix";
|
||||||
version = "unstable-2024-12-31";
|
version = "unstable-2025-04-22";
|
||||||
src = fetchzip {
|
src = fetchzip {
|
||||||
url = "https://github.com/NixOS/cabal2nix/archive/e290b906f056dd1414ede71b4bb6375be2d0aa5d.tar.gz";
|
url = "https://github.com/NixOS/cabal2nix/archive/e6ed81965def7775aabdda7456d0c13f626295ee.tar.gz";
|
||||||
sha256 = "0x94w4dfjfxp3f5h7w5738znkyb8barzjki0xsf94asiffiqsgxn";
|
sha256 = "1fh428r4wfrqjj77dxy1l3d9scm4ywz89rp7dhp07y3bq5yr7hs4";
|
||||||
};
|
};
|
||||||
postUnpack = "sourceRoot+=/cabal2nix; echo source root reset to $sourceRoot";
|
postUnpack = "sourceRoot+=/cabal2nix; echo source root reset to $sourceRoot";
|
||||||
isLibrary = true;
|
isLibrary = true;
|
||||||
isExecutable = true;
|
isExecutable = true;
|
||||||
libraryHaskellDepends = [
|
libraryHaskellDepends = [
|
||||||
aeson
|
aeson
|
||||||
|
ansi-terminal
|
||||||
ansi-wl-pprint
|
ansi-wl-pprint
|
||||||
base
|
base
|
||||||
bytestring
|
bytestring
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -243,40 +243,12 @@ self: super:
|
||||||
# Otherwise impure gcc is used, which is Apple's weird wrapper
|
# Otherwise impure gcc is used, which is Apple's weird wrapper
|
||||||
c2hsc = addTestToolDepends [ pkgs.gcc ] super.c2hsc;
|
c2hsc = addTestToolDepends [ pkgs.gcc ] super.c2hsc;
|
||||||
|
|
||||||
http-client-tls = overrideCabal (drv: {
|
|
||||||
postPatch =
|
|
||||||
''
|
|
||||||
# This comment has been inserted, so the derivation hash changes, forcing
|
|
||||||
# a rebuild of this derivation which has succeeded to build on Hydra before,
|
|
||||||
# but apparently been corrupted, causing reverse dependencies to fail.
|
|
||||||
#
|
|
||||||
# This workaround can be removed upon the next darwin stdenv rebuild,
|
|
||||||
# presumably https://github.com/NixOS/nixpkgs/pull/152850 or the next
|
|
||||||
# full haskellPackages rebuild.
|
|
||||||
''
|
|
||||||
+ drv.postPatch or "";
|
|
||||||
}) super.http-client-tls;
|
|
||||||
|
|
||||||
http2 = super.http2.overrideAttrs (drv: {
|
http2 = super.http2.overrideAttrs (drv: {
|
||||||
# Allow access to local networking when the Darwin sandbox is enabled, so http2 can run tests
|
# Allow access to local networking when the Darwin sandbox is enabled, so http2 can run tests
|
||||||
# that access localhost.
|
# that access localhost.
|
||||||
__darwinAllowLocalNetworking = true;
|
__darwinAllowLocalNetworking = true;
|
||||||
});
|
});
|
||||||
|
|
||||||
foldl = overrideCabal (drv: {
|
|
||||||
postPatch =
|
|
||||||
''
|
|
||||||
# This comment has been inserted, so the derivation hash changes, forcing
|
|
||||||
# a rebuild of this derivation which has succeeded to build on Hydra before,
|
|
||||||
# but apparently been corrupted, causing reverse dependencies to fail.
|
|
||||||
#
|
|
||||||
# This workaround can be removed upon the next darwin stdenv rebuild,
|
|
||||||
# presumably https://github.com/NixOS/nixpkgs/pull/152850 or the next
|
|
||||||
# full haskellPackages rebuild.
|
|
||||||
''
|
|
||||||
+ drv.postPatch or "";
|
|
||||||
}) super.foldl;
|
|
||||||
|
|
||||||
# https://hydra.nixos.org/build/230964714/nixlog/1
|
# https://hydra.nixos.org/build/230964714/nixlog/1
|
||||||
inline-c-cpp = appendPatch (pkgs.fetchpatch {
|
inline-c-cpp = appendPatch (pkgs.fetchpatch {
|
||||||
url = "https://github.com/fpco/inline-c/commit/e8dc553b13bb847409fdced649a6a863323cff8a.patch";
|
url = "https://github.com/fpco/inline-c/commit/e8dc553b13bb847409fdced649a6a863323cff8a.patch";
|
||||||
|
@ -362,6 +334,8 @@ self: super:
|
||||||
http-reverse-proxy = dontCheck super.http-reverse-proxy;
|
http-reverse-proxy = dontCheck super.http-reverse-proxy;
|
||||||
servant-auth-server = dontCheck super.servant-auth-server;
|
servant-auth-server = dontCheck super.servant-auth-server;
|
||||||
|
|
||||||
|
sysinfo = dontCheck super.sysinfo;
|
||||||
|
|
||||||
}
|
}
|
||||||
// lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch64 {
|
// lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch64 {
|
||||||
# aarch64-darwin
|
# aarch64-darwin
|
||||||
|
|
|
@ -46,7 +46,7 @@ self: super: {
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
doDistribute self.terminfo_0_4_1_6;
|
doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
@ -61,6 +61,20 @@ self: super: {
|
||||||
# their existence to callPackages, but their is no shim for lower GHC versions.
|
# their existence to callPackages, but their is no shim for lower GHC versions.
|
||||||
system-cxx-std-lib = null;
|
system-cxx-std-lib = null;
|
||||||
|
|
||||||
|
# Becomes a core package in GHC >= 9.8
|
||||||
|
semaphore-compat = doDistribute self.semaphore-compat_1_0_0;
|
||||||
|
|
||||||
|
# only broken for >= 9.6
|
||||||
|
calligraphy = doDistribute (unmarkBroken super.calligraphy);
|
||||||
|
|
||||||
|
# Only required for ghc >= 9.2
|
||||||
|
nothunks = super.nothunks.override {
|
||||||
|
wherefrom-compat = null;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Tests require nothunks < 0.3 (conflicting with Stackage) for GHC < 9.8
|
||||||
|
aeson = dontCheck super.aeson;
|
||||||
|
|
||||||
# For GHC < 9.4, some packages need data-array-byte as an extra dependency
|
# For GHC < 9.4, some packages need data-array-byte as an extra dependency
|
||||||
# For GHC < 9.2, os-string is not required.
|
# For GHC < 9.2, os-string is not required.
|
||||||
primitive = addBuildDepends [ self.data-array-byte ] super.primitive;
|
primitive = addBuildDepends [ self.data-array-byte ] super.primitive;
|
||||||
|
@ -77,6 +91,9 @@ self: super: {
|
||||||
);
|
);
|
||||||
hashable-time = doDistribute (unmarkBroken super.hashable-time);
|
hashable-time = doDistribute (unmarkBroken super.hashable-time);
|
||||||
|
|
||||||
|
# Needs base-orphans for GHC < 9.8 / base < 4.19
|
||||||
|
some = addBuildDepend self.base-orphans super.some;
|
||||||
|
|
||||||
# Too strict lower bounds on base
|
# Too strict lower bounds on base
|
||||||
primitive-addr = doJailbreak super.primitive-addr;
|
primitive-addr = doJailbreak super.primitive-addr;
|
||||||
|
|
||||||
|
@ -84,7 +101,7 @@ self: super: {
|
||||||
ghc-api-compat = doDistribute (unmarkBroken self.ghc-api-compat_8_10_7);
|
ghc-api-compat = doDistribute (unmarkBroken self.ghc-api-compat_8_10_7);
|
||||||
|
|
||||||
# Needs to use ghc-lib due to incompatible GHC
|
# Needs to use ghc-lib due to incompatible GHC
|
||||||
ghc-tags = doDistribute (addBuildDepend self.ghc-lib self.ghc-tags_1_5);
|
ghc-tags = doDistribute self.ghc-tags_1_5;
|
||||||
|
|
||||||
# Jailbreak to fix the build.
|
# Jailbreak to fix the build.
|
||||||
base-noprelude = doJailbreak super.base-noprelude;
|
base-noprelude = doJailbreak super.base-noprelude;
|
||||||
|
@ -133,8 +150,16 @@ self: super: {
|
||||||
# bundled with GHC < 9.0.
|
# bundled with GHC < 9.0.
|
||||||
wai-extra = dontHaddock super.wai-extra;
|
wai-extra = dontHaddock super.wai-extra;
|
||||||
|
|
||||||
# Overly-strict bounds introduced by a revision in version 0.3.2.
|
# tar > 0.6 requires os-string which can't be built with bytestring < 0.11
|
||||||
text-metrics = doJailbreak super.text-metrics;
|
tar = overrideCabal (drv: {
|
||||||
|
jailbreak = true;
|
||||||
|
buildDepends = drv.buildDepends or [ ] ++ [
|
||||||
|
self.bytestring-handle
|
||||||
|
];
|
||||||
|
}) self.tar_0_6_0_0;
|
||||||
|
# text-metrics >= 0.3.3 requires GHC2021
|
||||||
|
text-metrics = doDistribute (doJailbreak self.text-metrics_0_3_2);
|
||||||
|
bytestring-handle = unmarkBroken (doDistribute super.bytestring-handle);
|
||||||
|
|
||||||
# Doesn't build with 9.0, see https://github.com/yi-editor/yi/issues/1125
|
# Doesn't build with 9.0, see https://github.com/yi-editor/yi/issues/1125
|
||||||
yi-core = doDistribute (markUnbroken super.yi-core);
|
yi-core = doDistribute (markUnbroken super.yi-core);
|
||||||
|
|
|
@ -8,8 +8,12 @@ in
|
||||||
|
|
||||||
self: super: {
|
self: super: {
|
||||||
|
|
||||||
# Should be llvmPackages_6 which has been removed from nixpkgs
|
# Should be llvmPackages_6 which has been removed from nixpkgs,
|
||||||
llvmPackages = null;
|
# create attribute set to prevent eval errors.
|
||||||
|
llvmPackages = {
|
||||||
|
llvm = null;
|
||||||
|
clang = null;
|
||||||
|
};
|
||||||
|
|
||||||
# Disable GHC 8.6.x core libraries.
|
# Disable GHC 8.6.x core libraries.
|
||||||
array = null;
|
array = null;
|
||||||
|
@ -43,7 +47,7 @@ self: super: {
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
doDistribute self.terminfo_0_4_1_6;
|
doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
@ -58,6 +62,9 @@ self: super: {
|
||||||
# their existence to callPackages, but their is no shim for lower GHC versions.
|
# their existence to callPackages, but their is no shim for lower GHC versions.
|
||||||
system-cxx-std-lib = null;
|
system-cxx-std-lib = null;
|
||||||
|
|
||||||
|
# Becomes a core package in GHC >= 9.8
|
||||||
|
semaphore-compat = doDistribute self.semaphore-compat_1_0_0;
|
||||||
|
|
||||||
# Needs Cabal 3.0.x.
|
# Needs Cabal 3.0.x.
|
||||||
jailbreak-cabal = super.jailbreak-cabal.overrideScope (cself: _: { Cabal = cself.Cabal_3_2_1_0; });
|
jailbreak-cabal = super.jailbreak-cabal.overrideScope (cself: _: { Cabal = cself.Cabal_3_2_1_0; });
|
||||||
|
|
||||||
|
@ -93,6 +100,9 @@ self: super: {
|
||||||
# ghc versions prior to 8.8.x needs additional dependency to compile successfully.
|
# ghc versions prior to 8.8.x needs additional dependency to compile successfully.
|
||||||
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
|
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
|
||||||
|
|
||||||
|
# Needs base-orphans for GHC < 9.8 / base < 4.19
|
||||||
|
some = addBuildDepend self.base-orphans super.some;
|
||||||
|
|
||||||
# This became a core library in ghc 8.10., so we don’t have an "exception" attribute anymore.
|
# This became a core library in ghc 8.10., so we don’t have an "exception" attribute anymore.
|
||||||
exceptions = self.exceptions_0_10_9;
|
exceptions = self.exceptions_0_10_9;
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,7 @@ self: super: {
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
doDistribute self.terminfo_0_4_1_6;
|
doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
@ -60,8 +60,24 @@ self: super: {
|
||||||
# their existence to callPackages, but their is no shim for lower GHC versions.
|
# their existence to callPackages, but their is no shim for lower GHC versions.
|
||||||
system-cxx-std-lib = null;
|
system-cxx-std-lib = null;
|
||||||
|
|
||||||
|
# Becomes a core package in GHC >= 9.8
|
||||||
|
semaphore-compat = doDistribute self.semaphore-compat_1_0_0;
|
||||||
|
|
||||||
|
# Only required for ghc >= 9.2
|
||||||
|
nothunks = super.nothunks.override {
|
||||||
|
wherefrom-compat = null;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Needs base-orphans for GHC < 9.8 / base < 4.19
|
||||||
|
some = addBuildDepend self.base-orphans super.some;
|
||||||
|
|
||||||
# Jailbreaks & Version Updates
|
# Jailbreaks & Version Updates
|
||||||
|
|
||||||
|
# tar > 0.6 requires os-string which can't be built with bytestring < 0.11
|
||||||
|
tar = doDistribute (doJailbreak self.tar_0_6_0_0);
|
||||||
|
# text-metrics >= 0.3.3 requires GHC2021
|
||||||
|
text-metrics = doDistribute self.text-metrics_0_3_2;
|
||||||
|
|
||||||
# For GHC < 9.4, some packages need data-array-byte as an extra dependency
|
# For GHC < 9.4, some packages need data-array-byte as an extra dependency
|
||||||
primitive = addBuildDepends [ self.data-array-byte ] super.primitive;
|
primitive = addBuildDepends [ self.data-array-byte ] super.primitive;
|
||||||
# For GHC < 9.2, os-string is not required.
|
# For GHC < 9.2, os-string is not required.
|
||||||
|
@ -95,7 +111,7 @@ self: super: {
|
||||||
haskell-language-server = throw "haskell-language-server has dropped support for ghc 9.0 in version 2.4.0.0, please use a newer ghc version or an older nixpkgs version";
|
haskell-language-server = throw "haskell-language-server has dropped support for ghc 9.0 in version 2.4.0.0, please use a newer ghc version or an older nixpkgs version";
|
||||||
|
|
||||||
# Needs to use ghc-lib due to incompatible GHC
|
# Needs to use ghc-lib due to incompatible GHC
|
||||||
ghc-tags = doDistribute (addBuildDepend self.ghc-lib self.ghc-tags_1_5);
|
ghc-tags = doDistribute self.ghc-tags_1_5;
|
||||||
|
|
||||||
# ghc-lib >= 9.6 and friends no longer build with GHC 9.0
|
# ghc-lib >= 9.6 and friends no longer build with GHC 9.0
|
||||||
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_2_8_20230729;
|
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_2_8_20230729;
|
||||||
|
@ -121,6 +137,9 @@ self: super: {
|
||||||
# https://github.com/lspitzner/butcher/issues/7
|
# https://github.com/lspitzner/butcher/issues/7
|
||||||
butcher = doJailbreak super.butcher;
|
butcher = doJailbreak super.butcher;
|
||||||
|
|
||||||
|
# Tests require nothunks < 0.3 (conflicting with Stackage) for GHC < 9.8
|
||||||
|
aeson = dontCheck super.aeson;
|
||||||
|
|
||||||
# We use a GHC patch to support the fix for https://github.com/fpco/inline-c/issues/127
|
# We use a GHC patch to support the fix for https://github.com/fpco/inline-c/issues/127
|
||||||
# which means that the upstream cabal file isn't allowed to add the flag.
|
# which means that the upstream cabal file isn't allowed to add the flag.
|
||||||
inline-c-cpp =
|
inline-c-cpp =
|
||||||
|
|
|
@ -51,7 +51,7 @@ self: super: {
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
doDistribute self.terminfo_0_4_1_6;
|
doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
@ -64,35 +64,14 @@ self: super: {
|
||||||
|
|
||||||
# Upgrade to accommodate new core library versions, where the authors have
|
# Upgrade to accommodate new core library versions, where the authors have
|
||||||
# already made the relevant changes.
|
# already made the relevant changes.
|
||||||
aeson = doDistribute self.aeson_2_2_3_0;
|
# 2025-04-09: jailbreak to allow hedgehog >= 1.5, hspec-hedgehog >=0.2
|
||||||
attoparsec-aeson = doDistribute self.attoparsec-aeson_2_2_2_0;
|
extensions = doJailbreak (doDistribute self.extensions_0_1_0_2);
|
||||||
auto-update = doDistribute self.auto-update_0_2_6;
|
fourmolu = doDistribute self.fourmolu_0_16_0_0;
|
||||||
dependent-sum-template = doJailbreak self.dependent-sum-template_0_2_0_1; # template-haskell < 2.22
|
ghc-lib = doDistribute self.ghc-lib_9_10_1_20250103;
|
||||||
extensions = doDistribute self.extensions_0_1_0_2;
|
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_10_1_20250103;
|
||||||
fourmolu = doDistribute self.fourmolu_0_16_2_0;
|
|
||||||
hashable = doDistribute self.hashable_1_4_7_0;
|
|
||||||
integer-conversion = doDistribute self.integer-conversion_0_1_1;
|
|
||||||
ghc-lib = doDistribute self.ghc-lib_9_10_1_20241103;
|
|
||||||
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_10_1_20241103;
|
|
||||||
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_10_0_0;
|
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_10_0_0;
|
||||||
http2 = doDistribute self.http2_5_3_9;
|
|
||||||
http-semantics = doDistribute self.http-semantics_0_3_0;
|
|
||||||
htree = doDistribute self.htree_0_2_0_0;
|
htree = doDistribute self.htree_0_2_0_0;
|
||||||
lens = doDistribute self.lens_5_3_2;
|
|
||||||
lukko = doDistribute self.lukko_0_1_2;
|
|
||||||
network-control = super.network-control_0_1_3;
|
|
||||||
network-run = super.network-run_0_4_0;
|
|
||||||
ormolu = doDistribute self.ormolu_0_7_7_0;
|
ormolu = doDistribute self.ormolu_0_7_7_0;
|
||||||
primitive = doDistribute self.primitive_0_9_0_0;
|
|
||||||
quickcheck-instances = doDistribute self.quickcheck-instances_0_3_32;
|
|
||||||
rebase = doDistribute self.rebase_1_21_1;
|
|
||||||
rerebase = doDistribute self.rerebase_1_21_1;
|
|
||||||
scientific = doDistribute self.scientific_0_3_8_0;
|
|
||||||
semirings = doDistribute self.semirings_0_7;
|
|
||||||
time-manager = doDistribute self.time-manager_0_2_2;
|
|
||||||
th-abstraction = doDistribute self.th-abstraction_0_7_1_0;
|
|
||||||
uuid-types = doDistribute self.uuid-types_1_0_6;
|
|
||||||
warp = pkgs.haskell.lib.dontCheck super.warp_3_4_7; # test suite assumes it can freely call curl
|
|
||||||
|
|
||||||
# A given major version of ghc-exactprint only supports one version of GHC.
|
# A given major version of ghc-exactprint only supports one version of GHC.
|
||||||
ghc-exactprint = doDistribute self.ghc-exactprint_1_9_0_0;
|
ghc-exactprint = doDistribute self.ghc-exactprint_1_9_0_0;
|
||||||
|
@ -109,32 +88,34 @@ self: super: {
|
||||||
# Jailbreaks
|
# Jailbreaks
|
||||||
#
|
#
|
||||||
base64 = doJailbreak super.base64; # base <4.20
|
base64 = doJailbreak super.base64; # base <4.20
|
||||||
commutative-semigroups = doJailbreak super.commutative-semigroups; # base <4.20
|
# 2025-04-09: base <4.20, containers <0.7, filepath <1.5, Cabal-syntax <3.11
|
||||||
dejafu = doJailbreak super.dejafu; # containers <0.7
|
cabal-install-parsers =
|
||||||
|
assert super.cabal-install-parsers.version == "0.6.1.1";
|
||||||
|
doJailbreak super.cabal-install-parsers;
|
||||||
floskell = doJailbreak super.floskell; # base <4.20
|
floskell = doJailbreak super.floskell; # base <4.20
|
||||||
lucid = doJailbreak super.lucid; # base <4.20
|
# 2025-04-09: filepath <1.5
|
||||||
tar = doJailbreak super.tar; # base <4.20
|
haddock-library =
|
||||||
|
assert super.haddock-library.version == "1.11.0";
|
||||||
|
doJailbreak super.haddock-library;
|
||||||
|
spdx = doJailbreak super.spdx; # Cabal-syntax < 3.13
|
||||||
tasty-coverage = doJailbreak super.tasty-coverage; # base <4.20, filepath <1.5
|
tasty-coverage = doJailbreak super.tasty-coverage; # base <4.20, filepath <1.5
|
||||||
tree-diff = doJailbreak super.tree-diff; # base <4.20
|
tree-diff = doJailbreak super.tree-diff; # base <4.20
|
||||||
|
tree-sitter = doJailbreak super.tree-sitter; # containers <0.7, filepath <1.5
|
||||||
time-compat = doJailbreak super.time-compat; # base <4.20
|
time-compat = doJailbreak super.time-compat; # base <4.20
|
||||||
|
# https://github.com/haskell-party/feed/issues/73
|
||||||
|
feed = doJailbreak super.feed; # base
|
||||||
|
|
||||||
bitvec = doJailbreak super.bitvec; # primitive <0.9
|
bitvec = doJailbreak super.bitvec; # primitive <0.9
|
||||||
|
|
||||||
hashable_1_4_7_0 = doJailbreak super.hashable_1_4_7_0; # relax bounds for QuickCheck, tasty, and tasty-quickcheck
|
|
||||||
hashable_1_5_0_0 = doJailbreak super.hashable_1_5_0_0; # relax bounds for QuickCheck, tasty, and tasty-quickcheck
|
hashable_1_5_0_0 = doJailbreak super.hashable_1_5_0_0; # relax bounds for QuickCheck, tasty, and tasty-quickcheck
|
||||||
|
|
||||||
broadcast-chan = doJailbreak super.broadcast-chan; # base <4.19 https://github.com/merijn/broadcast-chan/pull/19
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Test suite issues
|
# Test suite issues
|
||||||
#
|
#
|
||||||
call-stack = dontCheck super.call-stack; # https://github.com/sol/call-stack/issues/19
|
call-stack = dontCheck super.call-stack; # https://github.com/sol/call-stack/issues/19
|
||||||
lifted-base = dontCheck super.lifted-base; # doesn't compile with transformers ==0.6.*
|
fsnotify = dontCheck super.fsnotify; # https://github.com/haskell-fswatch/hfsnotify/issues/115
|
||||||
lukko_0_1_2 = dontCheck super.lukko_0_1_2; # doesn't compile with tasty ==1.4.*
|
|
||||||
resolv = dontCheck super.resolv; # doesn't compile with filepath ==1.5.*
|
|
||||||
primitive-unlifted = dontCheck super.primitive-unlifted; # doesn't compile with primitive ==0.9.*
|
|
||||||
bsb-http-chunked = pkgs.haskell.lib.dontCheck super.bsb-http-chunked; # https://github.com/sjakobi/bsb-http-chunked/issues/45
|
|
||||||
hinotify = pkgs.haskell.lib.dontCheck super.hinotify; # https://github.com/kolmodin/hinotify/issues/38
|
hinotify = pkgs.haskell.lib.dontCheck super.hinotify; # https://github.com/kolmodin/hinotify/issues/38
|
||||||
|
monad-dijkstra = dontCheck super.monad-dijkstra; # needs hlint 3.10
|
||||||
|
|
||||||
haskell-language-server = disableCabalFlag "retrie" (
|
haskell-language-server = disableCabalFlag "retrie" (
|
||||||
disableCabalFlag "hlint" (
|
disableCabalFlag "hlint" (
|
||||||
|
|
|
@ -1,12 +1,29 @@
|
||||||
{ pkgs, haskellLib }:
|
{ pkgs, haskellLib }:
|
||||||
|
|
||||||
|
self: super:
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (pkgs) lib;
|
inherit (pkgs) lib;
|
||||||
|
|
||||||
|
versionAtMost = a: b: lib.versionAtLeast b a;
|
||||||
|
|
||||||
|
warnVersion =
|
||||||
|
predicate: ver: pkg:
|
||||||
|
let
|
||||||
|
pname = pkg.pname;
|
||||||
|
in
|
||||||
|
lib.warnIf (predicate ver
|
||||||
|
super.${pname}.version
|
||||||
|
) "override for haskell.packages.ghc912.${pname} may no longer be needed" pkg;
|
||||||
|
|
||||||
|
warnAfterVersion = warnVersion lib.versionOlder;
|
||||||
|
warnFromVersion = warnVersion versionAtMost;
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
with haskellLib;
|
with haskellLib;
|
||||||
|
|
||||||
self: super: {
|
{
|
||||||
llvmPackages = lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
|
llvmPackages = lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
|
||||||
|
|
||||||
# Disable GHC core libraries
|
# Disable GHC core libraries
|
||||||
|
@ -20,6 +37,7 @@ self: super: {
|
||||||
deepseq = null;
|
deepseq = null;
|
||||||
directory = null;
|
directory = null;
|
||||||
exceptions = null;
|
exceptions = null;
|
||||||
|
file-io = null;
|
||||||
filepath = null;
|
filepath = null;
|
||||||
ghc-bignum = null;
|
ghc-bignum = null;
|
||||||
ghc-boot = null;
|
ghc-boot = null;
|
||||||
|
@ -32,6 +50,8 @@ self: super: {
|
||||||
ghc-prim = null;
|
ghc-prim = null;
|
||||||
ghc-toolchain = null;
|
ghc-toolchain = null;
|
||||||
ghci = null;
|
ghci = null;
|
||||||
|
haddock-api = null;
|
||||||
|
haddock-library = null;
|
||||||
haskeline = null;
|
haskeline = null;
|
||||||
hpc = null;
|
hpc = null;
|
||||||
integer-gmp = null;
|
integer-gmp = null;
|
||||||
|
@ -50,29 +70,138 @@ self: super: {
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
haskellLib.doDistribute self.terminfo_0_4_1_6;
|
haskellLib.doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
unix = null;
|
unix = null;
|
||||||
xhtml = null;
|
xhtml = null;
|
||||||
|
|
||||||
# Version upgrades
|
#
|
||||||
jailbreak-cabal = overrideCabal {
|
# Hand pick versions that are compatible with ghc 9.12 and base 4.21
|
||||||
# Manually update jailbreak-cabal to 1.4.1 (which supports Cabal >= 3.14)
|
#
|
||||||
# since Hackage bump containing it is tied up in the update to Stackage LTS 23.
|
|
||||||
version = "1.4.1";
|
|
||||||
sha256 = "0q6l608m965s6932xabm7v2kav5cxrihb5qcbrwz0c4xiwrz4l5x";
|
|
||||||
|
|
||||||
revision = null;
|
extra = doDistribute self.extra_1_8;
|
||||||
editedCabalFile = null;
|
|
||||||
} super.jailbreak-cabal;
|
|
||||||
htree = doDistribute self.htree_0_2_0_0;
|
htree = doDistribute self.htree_0_2_0_0;
|
||||||
primitive = doDistribute self.primitive_0_9_0_0;
|
|
||||||
splitmix = doDistribute self.splitmix_0_1_1;
|
|
||||||
tagged = doDistribute self.tagged_0_8_9;
|
tagged = doDistribute self.tagged_0_8_9;
|
||||||
tar = doDistribute self.tar_0_6_3_0;
|
time-compat = doDistribute self.time-compat_1_9_8;
|
||||||
|
extensions = doDistribute self.extensions_0_1_0_3;
|
||||||
|
doctest = doDistribute self.doctest_0_24_0;
|
||||||
|
ghc-syntax-highlighter = doDistribute self.ghc-syntax-highlighter_0_0_13_0;
|
||||||
|
ghc-lib = doDistribute self.ghc-lib_9_12_2_20250320;
|
||||||
|
ghc-exactprint = doDistribute self.ghc-exactprint_1_12_0_0;
|
||||||
|
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_12_2_20250320;
|
||||||
|
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_12_0_0;
|
||||||
|
hlint = doDistribute self.hlint_3_10;
|
||||||
|
fourmolu = doDistribute self.fourmolu_0_18_0_0;
|
||||||
|
ormolu = doDistribute self.ormolu_0_8_0_0;
|
||||||
|
apply-refact = doDistribute self.apply-refact_0_15_0_0;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Jailbreaks
|
||||||
|
#
|
||||||
|
|
||||||
|
lucid = doJailbreak super.lucid; # base <4.21
|
||||||
|
extensions_0_1_0_3 = doJailbreak super.extensions_0_1_0_3; # hedgehog >=1.0 && <1.5, hspec-hedgehog >=0.0.1 && <0.2
|
||||||
|
hie-compat = doJailbreak super.hie-compat; # base <4.21
|
||||||
|
hiedb = doJailbreak super.hiedb; # base >=4.12 && <4.21, ghc >=8.6 && <9.11
|
||||||
|
ed25519 = doJailbreak super.ed25519; # https://github.com/thoughtpolice/hs-ed25519/issues/39
|
||||||
|
ghc-trace-events = doJailbreak super.ghc-trace-events; # base <4.21
|
||||||
|
time-compat_1_9_8 = doJailbreak super.time-compat_1_9_8; # too strict lower bound on QuickCheck
|
||||||
|
cpphs = overrideCabal (drv: {
|
||||||
|
# jail break manually the conditional dependencies
|
||||||
|
postPatch = ''
|
||||||
|
sed -i 's/time >=1.5 \&\& <1.13/time >=1.5 \&\& <=1.14/g' cpphs.cabal
|
||||||
|
'';
|
||||||
|
}) super.cpphs;
|
||||||
|
vector = doJailbreak super.vector; # doctest >=0.15 && <0.24
|
||||||
|
binary-instances = doJailbreak super.binary-instances; # base >=4.6.0.1 && <4.21, tagged >=0.8.8 && <0.8.9
|
||||||
|
cabal-install-parsers = doJailbreak super.cabal-install-parsers; # base, Cabal-syntax, etc.
|
||||||
|
http-api-data = doJailbreak super.http-api-data; # base < 4.21
|
||||||
|
servant = doJailbreak super.servant; # base < 4.21
|
||||||
|
ghc-exactprint_1_12_0_0 = addBuildDepends [
|
||||||
|
# somehow buildDepends was missing
|
||||||
|
self.Diff
|
||||||
|
self.extra
|
||||||
|
self.ghc-paths
|
||||||
|
self.silently
|
||||||
|
self.syb
|
||||||
|
self.HUnit
|
||||||
|
] super.ghc-exactprint_1_12_0_0;
|
||||||
|
co-log-core = doJailbreak super.co-log-core; # doctest >=0.16.0 && <0.24
|
||||||
|
|
||||||
|
#
|
||||||
# Test suite issues
|
# Test suite issues
|
||||||
|
#
|
||||||
|
|
||||||
call-stack = dontCheck super.call-stack; # https://github.com/sol/call-stack/issues/19
|
call-stack = dontCheck super.call-stack; # https://github.com/sol/call-stack/issues/19
|
||||||
|
|
||||||
|
relude = dontCheck super.relude;
|
||||||
|
|
||||||
|
doctest_0_24_0 = overrideCabal (drv: {
|
||||||
|
testFlags = drv.testFlags or [ ] ++ [
|
||||||
|
# These tests require cabal-install (would cause infinite recursion)
|
||||||
|
"--skip=/Cabal.Options"
|
||||||
|
"--skip=/Cabal.Paths/paths"
|
||||||
|
"--skip=/Cabal.ReplOptions" # >= 0.23
|
||||||
|
];
|
||||||
|
}) super.doctest_0_24_0;
|
||||||
|
|
||||||
|
# https://github.com/typeable/generic-arbitrary/issues/18
|
||||||
|
generic-arbitrary = overrideCabal (drv: {
|
||||||
|
patches = drv.patches or [ ] ++ [
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
name = "hellwolf:fix-recursive-test-hidding-unit";
|
||||||
|
url = "https://github.com/typeable/generic-arbitrary/commit/133b80be93e6744f21e0e5ed4180a24c589f92e4.patch";
|
||||||
|
sha256 = "sha256-z9EVcD1uNAYUOVTwmCCnrEFFOvFB7lD94Y6BwGVwVRQ=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}) super.generic-arbitrary;
|
||||||
|
|
||||||
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/25930
|
||||||
|
generic-lens = dontCheck super.generic-lens;
|
||||||
|
|
||||||
|
# Cabal 3.14 regression (incorrect datadir in tests): https://github.com/haskell/cabal/issues/10717
|
||||||
|
alex = overrideCabal (drv: {
|
||||||
|
preCheck =
|
||||||
|
drv.preCheck or ""
|
||||||
|
+ ''
|
||||||
|
export alex_datadir="$(pwd)/data"
|
||||||
|
'';
|
||||||
|
}) super.alex;
|
||||||
|
|
||||||
|
# https://github.com/sjakobi/newtype-generics/pull/28/files
|
||||||
|
newtype-generics = warnAfterVersion "0.6.2" (doJailbreak super.newtype-generics);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Multiple issues
|
||||||
|
#
|
||||||
|
|
||||||
|
fourmolu_0_18_0_0 = dontCheck (
|
||||||
|
super.fourmolu_0_18_0_0.override {
|
||||||
|
# Diff >=1 && <2
|
||||||
|
Diff = super.Diff_1_0_2;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
doctest-parallel = overrideCabal (drv: {
|
||||||
|
patches = drv.patches or [ ] ++ [
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
name = "doctest-0.23.0-ghc-9.12.patch";
|
||||||
|
url = "https://github.com/martijnbastiaan/doctest-parallel/commit/d3df7aa5d223f3daeb676c8a7efe093ee743d54f.patch";
|
||||||
|
sha256 = "sha256-92CtqBCulfOTjLAeC205cIrqL/2CBP1YFLijTVcTD2M=";
|
||||||
|
includes = [ "src/Test/DocTest/Helpers.hs" ];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}) (dontCheck (doJailbreak super.doctest-parallel)); # Cabal >=2.4 && <3.13
|
||||||
|
|
||||||
|
haskell-language-server = disableCabalFlag "retrie" (
|
||||||
|
disableCabalFlag "stylishhaskel" (
|
||||||
|
super.haskell-language-server.override {
|
||||||
|
stylish-haskell = null;
|
||||||
|
floskell = null;
|
||||||
|
retrie = null;
|
||||||
|
}
|
||||||
|
)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,7 +52,7 @@ self: super: {
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
haskellLib.doDistribute self.terminfo_0_4_1_6;
|
haskellLib.doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
|
|
@ -45,7 +45,7 @@ self: super: {
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
doDistribute self.terminfo_0_4_1_6;
|
doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
@ -60,6 +60,9 @@ self: super: {
|
||||||
# their existence to callPackages, but their is no shim for lower GHC versions.
|
# their existence to callPackages, but their is no shim for lower GHC versions.
|
||||||
system-cxx-std-lib = null;
|
system-cxx-std-lib = null;
|
||||||
|
|
||||||
|
# Becomes a core package in GHC >= 9.8
|
||||||
|
semaphore-compat = doDistribute self.semaphore-compat_1_0_0;
|
||||||
|
|
||||||
# weeder >= 2.5 requires GHC 9.4
|
# weeder >= 2.5 requires GHC 9.4
|
||||||
weeder = doDistribute self.weeder_2_4_1;
|
weeder = doDistribute self.weeder_2_4_1;
|
||||||
# Allow dhall 1.42.*
|
# Allow dhall 1.42.*
|
||||||
|
@ -71,20 +74,7 @@ self: super: {
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
haskell-language-server = lib.pipe super.haskell-language-server [
|
haskell-language-server = throw "haskell-language-server has dropped support for ghc 9.2 in version 2.10.0.0, please use a newer ghc version or an older nixpkgs version";
|
||||||
(disableCabalFlag "fourmolu")
|
|
||||||
(disableCabalFlag "ormolu")
|
|
||||||
(disableCabalFlag "cabal")
|
|
||||||
(disableCabalFlag "stylishHaskell")
|
|
||||||
(
|
|
||||||
d:
|
|
||||||
d.override {
|
|
||||||
ormolu = null;
|
|
||||||
fourmolu = null;
|
|
||||||
stan = null;
|
|
||||||
}
|
|
||||||
)
|
|
||||||
];
|
|
||||||
|
|
||||||
# For GHC < 9.4, some packages need data-array-byte as an extra dependency
|
# For GHC < 9.4, some packages need data-array-byte as an extra dependency
|
||||||
hashable = addBuildDepends [ self.data-array-byte ] super.hashable;
|
hashable = addBuildDepends [ self.data-array-byte ] super.hashable;
|
||||||
|
@ -93,6 +83,9 @@ self: super: {
|
||||||
# Too strict lower bound on base
|
# Too strict lower bound on base
|
||||||
primitive-addr = doJailbreak super.primitive-addr;
|
primitive-addr = doJailbreak super.primitive-addr;
|
||||||
|
|
||||||
|
# Needs base-orphans for GHC < 9.8 / base < 4.19
|
||||||
|
some = addBuildDepend self.base-orphans super.some;
|
||||||
|
|
||||||
# Jailbreaks & Version Updates
|
# Jailbreaks & Version Updates
|
||||||
hashable-time = doJailbreak super.hashable-time;
|
hashable-time = doJailbreak super.hashable-time;
|
||||||
|
|
||||||
|
@ -101,17 +94,30 @@ self: super: {
|
||||||
# https://mail.haskell.org/pipermail/haskell-cafe/2022-October/135613.html
|
# https://mail.haskell.org/pipermail/haskell-cafe/2022-October/135613.html
|
||||||
language-javascript_0_7_0_0 = dontCheck super.language-javascript_0_7_0_0;
|
language-javascript_0_7_0_0 = dontCheck super.language-javascript_0_7_0_0;
|
||||||
|
|
||||||
# Needs to match ghc version
|
# Needs to match ghc-lib version
|
||||||
ghc-tags = doDistribute self.ghc-tags_1_5;
|
ghc-tags = doDistribute (doJailbreak self.ghc-tags_1_7);
|
||||||
|
|
||||||
# For "ghc-lib" flag see https://github.com/haskell/haskell-language-server/issues/3185#issuecomment-1250264515
|
# Needs to match ghc-lib
|
||||||
hlint = enableCabalFlag "ghc-lib" super.hlint;
|
hlint = doDistribute self.hlint_3_6_1;
|
||||||
|
|
||||||
|
# ghc-lib >= 9.8 and friends no longer build with GHC 9.2 since they require semaphore-compat
|
||||||
|
ghc-lib-parser = doDistribute (
|
||||||
|
self.ghc-lib-parser_9_6_7_20250325.override {
|
||||||
|
happy = self.happy_1_20_1_1; # wants happy < 1.21
|
||||||
|
}
|
||||||
|
);
|
||||||
|
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_6_0_2;
|
||||||
|
ghc-lib = doDistribute (
|
||||||
|
self.ghc-lib_9_6_7_20250325.override {
|
||||||
|
happy = self.happy_1_20_1_1; # wants happy < 1.21
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
# 0.2.2.3 requires Cabal >= 3.8
|
# 0.2.2.3 requires Cabal >= 3.8
|
||||||
shake-cabal = doDistribute self.shake-cabal_0_2_2_2;
|
shake-cabal = doDistribute self.shake-cabal_0_2_2_2;
|
||||||
|
|
||||||
# https://github.com/sjakobi/bsb-http-chunked/issues/38
|
# Tests require nothunks < 0.3 (conflicting with Stackage) for GHC < 9.8
|
||||||
bsb-http-chunked = dontCheck super.bsb-http-chunked;
|
aeson = dontCheck super.aeson;
|
||||||
|
|
||||||
# https://github.com/NixOS/cabal2nix/issues/554
|
# https://github.com/NixOS/cabal2nix/issues/554
|
||||||
# https://github.com/clash-lang/clash-compiler/blob/f0f6275e19b8c672f042026c478484c5fd45191d/README.md#ghc-compatibility
|
# https://github.com/clash-lang/clash-compiler/blob/f0f6275e19b8c672f042026c478484c5fd45191d/README.md#ghc-compatibility
|
||||||
|
@ -129,6 +135,9 @@ self: super: {
|
||||||
# A given major version of ghc-exactprint only supports one version of GHC.
|
# A given major version of ghc-exactprint only supports one version of GHC.
|
||||||
ghc-exactprint = super.ghc-exactprint_1_5_0;
|
ghc-exactprint = super.ghc-exactprint_1_5_0;
|
||||||
|
|
||||||
|
# only broken for >= 9.6
|
||||||
|
calligraphy = doDistribute (unmarkBroken super.calligraphy);
|
||||||
|
|
||||||
# Packages which need compat library for GHC < 9.6
|
# Packages which need compat library for GHC < 9.6
|
||||||
inherit (lib.mapAttrs (_: addBuildDepends [ self.foldable1-classes-compat ]) super)
|
inherit (lib.mapAttrs (_: addBuildDepends [ self.foldable1-classes-compat ]) super)
|
||||||
indexed-traversable
|
indexed-traversable
|
||||||
|
|
|
@ -54,7 +54,7 @@ in
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
doDistribute self.terminfo_0_4_1_6;
|
doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
@ -63,6 +63,12 @@ in
|
||||||
# still the case when updating: https://gitlab.haskell.org/ghc/ghc/-/blob/0198841877f6f04269d6050892b98b5c3807ce4c/ghc.mk#L463
|
# still the case when updating: https://gitlab.haskell.org/ghc/ghc/-/blob/0198841877f6f04269d6050892b98b5c3807ce4c/ghc.mk#L463
|
||||||
xhtml = if self.ghc.hasHaddock or true then null else doDistribute self.xhtml_3000_4_0_0;
|
xhtml = if self.ghc.hasHaddock or true then null else doDistribute self.xhtml_3000_4_0_0;
|
||||||
|
|
||||||
|
# Becomes a core package in GHC >= 9.8
|
||||||
|
semaphore-compat = doDistribute self.semaphore-compat_1_0_0;
|
||||||
|
|
||||||
|
# only broken for >= 9.6
|
||||||
|
calligraphy = doDistribute (unmarkBroken super.calligraphy);
|
||||||
|
|
||||||
# Jailbreaks & Version Updates
|
# Jailbreaks & Version Updates
|
||||||
|
|
||||||
hashable-time = doJailbreak super.hashable-time;
|
hashable-time = doJailbreak super.hashable-time;
|
||||||
|
@ -74,6 +80,9 @@ in
|
||||||
self.base-orphans
|
self.base-orphans
|
||||||
] super.generically;
|
] super.generically;
|
||||||
|
|
||||||
|
# Needs base-orphans for GHC < 9.8 / base < 4.19
|
||||||
|
some = addBuildDepend self.base-orphans super.some;
|
||||||
|
|
||||||
# the dontHaddock is due to a GHC panic. might be this bug, not sure.
|
# the dontHaddock is due to a GHC panic. might be this bug, not sure.
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/21619
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/21619
|
||||||
hedgehog = dontHaddock super.hedgehog;
|
hedgehog = dontHaddock super.hedgehog;
|
||||||
|
@ -86,16 +95,26 @@ in
|
||||||
] ++ drv.testFlags or [ ];
|
] ++ drv.testFlags or [ ];
|
||||||
}) (doJailbreak super.hpack);
|
}) (doJailbreak super.hpack);
|
||||||
|
|
||||||
# https://github.com/sjakobi/bsb-http-chunked/issues/38
|
|
||||||
bsb-http-chunked = dontCheck super.bsb-http-chunked;
|
|
||||||
|
|
||||||
# 2022-08-01: Tests are broken on ghc 9.2.4: https://github.com/wz1000/HieDb/issues/46
|
# 2022-08-01: Tests are broken on ghc 9.2.4: https://github.com/wz1000/HieDb/issues/46
|
||||||
hiedb = dontCheck super.hiedb;
|
hiedb = dontCheck super.hiedb;
|
||||||
|
|
||||||
# 2022-10-06: https://gitlab.haskell.org/ghc/ghc/-/issues/22260
|
# 2022-10-06: https://gitlab.haskell.org/ghc/ghc/-/issues/22260
|
||||||
ghc-check = dontHaddock super.ghc-check;
|
ghc-check = dontHaddock super.ghc-check;
|
||||||
|
|
||||||
ghc-tags = self.ghc-tags_1_6;
|
ghc-tags = doDistribute (doJailbreak self.ghc-tags_1_7); # aeson < 2.2
|
||||||
|
|
||||||
|
# ghc-lib >= 9.8 and friends no longer build with GHC 9.4 since they require semaphore-compat
|
||||||
|
ghc-lib-parser = doDistribute (
|
||||||
|
self.ghc-lib-parser_9_6_7_20250325.override {
|
||||||
|
happy = self.happy_1_20_1_1; # wants happy < 1.21
|
||||||
|
}
|
||||||
|
);
|
||||||
|
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_6_0_2;
|
||||||
|
ghc-lib = doDistribute (
|
||||||
|
self.ghc-lib_9_6_7_20250325.override {
|
||||||
|
happy = self.happy_1_20_1_1; # wants happy < 1.21
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
# A given major version of ghc-exactprint only supports one version of GHC.
|
# A given major version of ghc-exactprint only supports one version of GHC.
|
||||||
ghc-exactprint = super.ghc-exactprint_1_6_1_3;
|
ghc-exactprint = super.ghc-exactprint_1_6_1_3;
|
||||||
|
@ -112,14 +131,15 @@ in
|
||||||
let
|
let
|
||||||
hls_overlay = lself: lsuper: {
|
hls_overlay = lself: lsuper: {
|
||||||
Cabal-syntax = lself.Cabal-syntax_3_10_3_0;
|
Cabal-syntax = lself.Cabal-syntax_3_10_3_0;
|
||||||
|
Cabal = lself.Cabal_3_10_3_0;
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
lib.mapAttrs (_: pkg: doDistribute (pkg.overrideScope hls_overlay)) {
|
lib.mapAttrs (_: pkg: doDistribute (pkg.overrideScope hls_overlay)) {
|
||||||
haskell-language-server = allowInconsistentDependencies super.haskell-language-server;
|
haskell-language-server = allowInconsistentDependencies super.haskell-language-server;
|
||||||
fourmolu = super.fourmolu;
|
fourmolu = doJailbreak self.fourmolu_0_14_0_0; # ansi-terminal, Diff
|
||||||
ormolu = super.ormolu;
|
ormolu = doJailbreak self.ormolu_0_7_2_0; # ansi-terminal
|
||||||
hlint = super.hlint;
|
hlint = self.hlint_3_6_1;
|
||||||
stylish-haskell = super.stylish-haskell;
|
stylish-haskell = self.stylish-haskell_0_14_5_0;
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
haskell-language-server
|
haskell-language-server
|
||||||
|
@ -140,6 +160,9 @@ in
|
||||||
self.OneTuple
|
self.OneTuple
|
||||||
] super.base-compat-batteries;
|
] super.base-compat-batteries;
|
||||||
|
|
||||||
|
# Tests require nothunks < 0.3 (conflicting with Stackage) for GHC < 9.8
|
||||||
|
aeson = dontCheck super.aeson;
|
||||||
|
|
||||||
# Too strict lower bound on base
|
# Too strict lower bound on base
|
||||||
primitive-addr = doJailbreak super.primitive-addr;
|
primitive-addr = doJailbreak super.primitive-addr;
|
||||||
}
|
}
|
||||||
|
|
|
@ -62,13 +62,19 @@ self: super:
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
doDistribute self.terminfo_0_4_1_6;
|
doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
unix = null;
|
unix = null;
|
||||||
xhtml = null;
|
xhtml = null;
|
||||||
|
|
||||||
|
# Becomes a core package in GHC >= 9.8
|
||||||
|
semaphore-compat = doDistribute self.semaphore-compat_1_0_0;
|
||||||
|
|
||||||
|
# Needs base-orphans for GHC < 9.8 / base < 4.19
|
||||||
|
some = addBuildDepend self.base-orphans super.some;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Version deviations from Stackage LTS
|
# Version deviations from Stackage LTS
|
||||||
#
|
#
|
||||||
|
@ -78,7 +84,8 @@ self: super:
|
||||||
th-extras = doJailbreak super.th-extras;
|
th-extras = doJailbreak super.th-extras;
|
||||||
|
|
||||||
# not in Stackage, needs to match ghc-lib
|
# not in Stackage, needs to match ghc-lib
|
||||||
ghc-tags = doDistribute self.ghc-tags_1_7;
|
# since expression is generated for 9.8, ghc-lib dep needs to be added manually
|
||||||
|
ghc-tags = doDistribute (addBuildDepends [ self.ghc-lib ] self.ghc-tags_1_8);
|
||||||
|
|
||||||
#
|
#
|
||||||
# Too strict bounds without upstream fix
|
# Too strict bounds without upstream fix
|
||||||
|
@ -100,8 +107,6 @@ self: super:
|
||||||
# Jailbreaks for servant <0.20
|
# Jailbreaks for servant <0.20
|
||||||
servant-lucid = doJailbreak super.servant-lucid;
|
servant-lucid = doJailbreak super.servant-lucid;
|
||||||
|
|
||||||
lifted-base = dontCheck super.lifted-base;
|
|
||||||
hw-prim = dontCheck (doJailbreak super.hw-prim);
|
|
||||||
stm-containers = dontCheck super.stm-containers;
|
stm-containers = dontCheck super.stm-containers;
|
||||||
regex-tdfa = dontCheck super.regex-tdfa;
|
regex-tdfa = dontCheck super.regex-tdfa;
|
||||||
hiedb = dontCheck super.hiedb;
|
hiedb = dontCheck super.hiedb;
|
||||||
|
@ -124,9 +129,6 @@ self: super:
|
||||||
# A factor of 100 is insufficient, 200 seems seems to work.
|
# A factor of 100 is insufficient, 200 seems seems to work.
|
||||||
hip = appendConfigureFlag "--ghc-options=-fsimpl-tick-factor=200" super.hip;
|
hip = appendConfigureFlag "--ghc-options=-fsimpl-tick-factor=200" super.hip;
|
||||||
|
|
||||||
# Doctest comments have bogus imports.
|
|
||||||
bsb-http-chunked = dontCheck super.bsb-http-chunked;
|
|
||||||
|
|
||||||
# This can be removed once https://github.com/typeclasses/ascii-predicates/pull/1
|
# This can be removed once https://github.com/typeclasses/ascii-predicates/pull/1
|
||||||
# is merged and in a release that's being tracked.
|
# is merged and in a release that's being tracked.
|
||||||
ascii-predicates = appendPatch (pkgs.fetchpatch {
|
ascii-predicates = appendPatch (pkgs.fetchpatch {
|
||||||
|
@ -145,6 +147,9 @@ self: super:
|
||||||
sha256 = "sha256-buw1UeW57CFefEfqdDUraSyQ+H/NvCZOv6WF2ORiYQg=";
|
sha256 = "sha256-buw1UeW57CFefEfqdDUraSyQ+H/NvCZOv6WF2ORiYQg=";
|
||||||
}) super.ascii-numbers;
|
}) super.ascii-numbers;
|
||||||
|
|
||||||
|
# Tests require nothunks < 0.3 (conflicting with Stackage) for GHC < 9.8
|
||||||
|
aeson = dontCheck super.aeson;
|
||||||
|
|
||||||
# Apply patch from PR with mtl-2.3 fix.
|
# Apply patch from PR with mtl-2.3 fix.
|
||||||
ConfigFile = overrideCabal (drv: {
|
ConfigFile = overrideCabal (drv: {
|
||||||
editedCabalFile = null;
|
editedCabalFile = null;
|
||||||
|
@ -159,6 +164,9 @@ self: super:
|
||||||
];
|
];
|
||||||
}) super.ConfigFile;
|
}) super.ConfigFile;
|
||||||
|
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/367998#issuecomment-2598941240
|
||||||
|
libtorch-ffi-helper = unmarkBroken (doDistribute super.libtorch-ffi-helper);
|
||||||
|
|
||||||
# Compatibility with core libs of GHC 9.6
|
# Compatibility with core libs of GHC 9.6
|
||||||
# Jailbreak to lift bound on time
|
# Jailbreak to lift bound on time
|
||||||
kqueue = doJailbreak (
|
kqueue = doJailbreak (
|
||||||
|
@ -187,6 +195,9 @@ self: super:
|
||||||
;
|
;
|
||||||
|
|
||||||
singletons-base = dontCheck super.singletons-base;
|
singletons-base = dontCheck super.singletons-base;
|
||||||
|
|
||||||
|
# A given major version of ghc-exactprint only supports one version of GHC.
|
||||||
|
ghc-exactprint = addBuildDepend self.extra super.ghc-exactprint_1_7_1_0;
|
||||||
}
|
}
|
||||||
# super.ghc is required to break infinite recursion as Nix is strict in the attrNames
|
# super.ghc is required to break infinite recursion as Nix is strict in the attrNames
|
||||||
//
|
//
|
||||||
|
|
|
@ -41,6 +41,7 @@ self: super:
|
||||||
process = null;
|
process = null;
|
||||||
rts = null;
|
rts = null;
|
||||||
stm = null;
|
stm = null;
|
||||||
|
semaphore-compat = null;
|
||||||
system-cxx-std-lib = null;
|
system-cxx-std-lib = null;
|
||||||
template-haskell = null;
|
template-haskell = null;
|
||||||
# GHC only builds terminfo if it is a native compiler
|
# GHC only builds terminfo if it is a native compiler
|
||||||
|
@ -48,7 +49,7 @@ self: super:
|
||||||
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then
|
||||||
null
|
null
|
||||||
else
|
else
|
||||||
doDistribute self.terminfo_0_4_1_6;
|
doDistribute self.terminfo_0_4_1_7;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
@ -58,79 +59,25 @@ self: super:
|
||||||
#
|
#
|
||||||
# Version upgrades
|
# Version upgrades
|
||||||
#
|
#
|
||||||
th-abstraction = doDistribute self.th-abstraction_0_7_1_0;
|
|
||||||
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_8_4_20241130;
|
|
||||||
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_8_0_2;
|
|
||||||
ghc-lib = doDistribute self.ghc-lib_9_8_4_20241130;
|
|
||||||
megaparsec = doDistribute self.megaparsec_9_7_0;
|
megaparsec = doDistribute self.megaparsec_9_7_0;
|
||||||
# aeson 2.2.3.0 seemingly unnecessesarily bumped the lower bound on hashable
|
|
||||||
# https://github.com/haskell/aeson/commit/1a666febd0775d8e88d315ece1b97cd20602fb5f
|
|
||||||
aeson = doJailbreak (doDistribute self.aeson_2_2_3_0);
|
|
||||||
attoparsec-aeson = doDistribute self.attoparsec-aeson_2_2_2_0;
|
|
||||||
dependent-sum-template = self.dependent-sum-template_0_2_0_1; # template-haskell < 2.22
|
|
||||||
xmonad = doDistribute self.xmonad_0_18_0;
|
|
||||||
apply-refact = self.apply-refact_0_14_0_0;
|
|
||||||
ormolu = self.ormolu_0_7_4_0;
|
|
||||||
fourmolu = self.fourmolu_0_15_0_0;
|
|
||||||
stylish-haskell = self.stylish-haskell_0_14_6_0;
|
|
||||||
hlint = self.hlint_3_8;
|
|
||||||
ghc-syntax-highlighter = self.ghc-syntax-highlighter_0_0_12_0;
|
|
||||||
websockets = self.websockets_0_13_0_0;
|
|
||||||
th-desugar = doJailbreak self.th-desugar_1_16; # th-abstraction >=0.6 && <0.7
|
|
||||||
singletons-th = self.singletons-th_3_3;
|
|
||||||
singletons-base = self.singletons-base_3_3;
|
|
||||||
ghc-tags = self.ghc-tags_1_8;
|
ghc-tags = self.ghc-tags_1_8;
|
||||||
|
|
||||||
# A given major version of ghc-exactprint only supports one version of GHC.
|
|
||||||
ghc-exactprint = self.ghc-exactprint_1_8_0_0;
|
|
||||||
ghc-exactprint_1_8_0_0 = addBuildDepends [
|
|
||||||
self.Diff
|
|
||||||
self.HUnit
|
|
||||||
self.data-default
|
|
||||||
self.extra
|
|
||||||
self.free
|
|
||||||
self.ghc-paths
|
|
||||||
self.ordered-containers
|
|
||||||
self.silently
|
|
||||||
self.syb
|
|
||||||
] super.ghc-exactprint_1_8_0_0;
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Jailbreaks
|
# Jailbreaks
|
||||||
#
|
#
|
||||||
blaze-svg = doJailbreak super.blaze-svg; # base <4.19
|
|
||||||
commutative-semigroups = doJailbreak super.commutative-semigroups; # base < 4.19
|
|
||||||
diagrams-lib = doJailbreak super.diagrams-lib; # base <4.19, text <2.1
|
|
||||||
diagrams-postscript = doJailbreak super.diagrams-postscript; # base <4.19, bytestring <0.12
|
|
||||||
diagrams-svg = doJailbreak super.diagrams-svg; # base <4.19, text <2.1
|
|
||||||
generics-sop = doJailbreak super.generics-sop_0_5_1_4; # th-abstraction >=0.6 && <0.7
|
|
||||||
ghc-trace-events = doJailbreak super.ghc-trace-events; # text < 2.1, bytestring < 0.12, base < 4.19
|
|
||||||
hashing = doJailbreak super.hashing; # bytestring <0.12
|
hashing = doJailbreak super.hashing; # bytestring <0.12
|
||||||
json-sop = doJailbreak super.json-sop; # aeson <2.2, base <4.19, text <2.1
|
hevm = appendPatch (pkgs.fetchpatch {
|
||||||
primitive-unlifted = doJailbreak super.primitive-unlifted; # bytestring < 0.12
|
url = "https://github.com/hellwolf/hevm/commit/338674d1fe22d46ea1e8582b24c224d76d47d0f3.patch";
|
||||||
statestack = doJailbreak super.statestack; # base < 4.19
|
name = "release-0.54.2-ghc-9.8.4-patch";
|
||||||
newtype-generics = doJailbreak super.newtype-generics; # base < 4.19
|
sha256 = "sha256-Mo65FfP1nh7QTY+oLia22hj4eV2v9hpXlYsrFKljA3E=";
|
||||||
hw-prim = doJailbreak super.hw-prim; # doctest < 0.22, ghc-prim < 0.11, hedgehog < 1.4
|
}) super.hevm;
|
||||||
svg-builder = doJailbreak super.svg-builder; # base <4.19, bytestring <0.12, text <2.1
|
|
||||||
# Too strict bound on base, believe it or not.
|
|
||||||
# https://github.com/judah/terminfo/pull/55#issuecomment-1876894232
|
|
||||||
terminfo_0_4_1_6 = doJailbreak super.terminfo_0_4_1_6;
|
|
||||||
HaskellNet-SSL = doJailbreak super.HaskellNet-SSL; # bytestring >=0.9 && <0.12
|
HaskellNet-SSL = doJailbreak super.HaskellNet-SSL; # bytestring >=0.9 && <0.12
|
||||||
raven-haskell = doJailbreak super.raven-haskell; # aeson <2.2
|
|
||||||
saltine = doJailbreak super.saltine; # bytestring && <0.12, deepseq <1.5, text > 1.2 && <1.3 || >=2.0 && <2.1
|
saltine = doJailbreak super.saltine; # bytestring && <0.12, deepseq <1.5, text > 1.2 && <1.3 || >=2.0 && <2.1
|
||||||
stripe-concepts = doJailbreak super.stripe-concepts; # text >=1.2.5 && <1.3 || >=2.0 && <2.1
|
|
||||||
stripe-signature = doJailbreak super.stripe-signature; # text >=1.2.5 && <1.3 || >=2.0 && <2.1
|
|
||||||
string-random = doJailbreak super.string-random; # text >=1.2.2.1 && <2.1
|
|
||||||
inflections = doJailbreak super.inflections; # text >=0.2 && <2.1
|
inflections = doJailbreak super.inflections; # text >=0.2 && <2.1
|
||||||
universe-some = doJailbreak super.universe-some; # th-abstraction < 0.7
|
|
||||||
broadcast-chan = doJailbreak super.broadcast-chan; # base <4.19 https://github.com/merijn/broadcast-chan/pull/19
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Test suite issues
|
# Test suite issues
|
||||||
#
|
#
|
||||||
unordered-containers = dontCheck super.unordered-containers; # ChasingBottoms doesn't support base 4.20
|
|
||||||
lifted-base = dontCheck super.lifted-base; # doesn't compile with transformers == 0.6.*
|
|
||||||
bsb-http-chunked = dontCheck super.bsb-http-chunked; # umaintained, test suite doesn't compile anymore
|
|
||||||
pcre-heavy = dontCheck super.pcre-heavy; # GHC warnings cause the tests to fail
|
pcre-heavy = dontCheck super.pcre-heavy; # GHC warnings cause the tests to fail
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -140,6 +87,17 @@ self: super:
|
||||||
# 2023-12-23: It needs this to build under ghc-9.6.3.
|
# 2023-12-23: It needs this to build under ghc-9.6.3.
|
||||||
# A factor of 100 is insufficient, 200 seems seems to work.
|
# A factor of 100 is insufficient, 200 seems seems to work.
|
||||||
hip = appendConfigureFlag "--ghc-options=-fsimpl-tick-factor=200" super.hip;
|
hip = appendConfigureFlag "--ghc-options=-fsimpl-tick-factor=200" super.hip;
|
||||||
|
|
||||||
|
# 2025-04-21: "flavor" for GHC 9.8.5 is missing a fix introduced for 9.8.4. See:
|
||||||
|
# https://github.com/digital-asset/ghc-lib/pull/571#discussion_r2052684630
|
||||||
|
ghc-lib-parser =
|
||||||
|
assert super.ghc-lib-parser.version == "9.8.5.20250214";
|
||||||
|
overrideCabal {
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace compiler/cbits/genSym.c \
|
||||||
|
--replace-fail "HsWord64 u = atomic_inc64" "HsWord64 u = atomic_inc"
|
||||||
|
'';
|
||||||
|
} super.ghc-lib-parser;
|
||||||
}
|
}
|
||||||
// lib.optionalAttrs (lib.versionAtLeast super.ghc.version "9.8.3") {
|
// lib.optionalAttrs (lib.versionAtLeast super.ghc.version "9.8.3") {
|
||||||
# Breakage related to GHC 9.8.3 / deepseq 1.5.1.0
|
# Breakage related to GHC 9.8.3 / deepseq 1.5.1.0
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
{ pkgs, haskellLib }:
|
{ pkgs, haskellLib }:
|
||||||
|
|
||||||
|
let
|
||||||
|
inherit (pkgs) lib;
|
||||||
|
in
|
||||||
|
|
||||||
with haskellLib;
|
with haskellLib;
|
||||||
|
|
||||||
# cabal2nix doesn't properly add dependencies conditional on arch(javascript)
|
# cabal2nix doesn't properly add dependencies conditional on arch(javascript)
|
||||||
|
@ -20,17 +24,41 @@ with haskellLib;
|
||||||
ghcjs-dom-javascript = addBuildDepend self.ghcjs-base super.ghcjs-dom-javascript;
|
ghcjs-dom-javascript = addBuildDepend self.ghcjs-base super.ghcjs-dom-javascript;
|
||||||
jsaddle = addBuildDepend self.ghcjs-base super.jsaddle;
|
jsaddle = addBuildDepend self.ghcjs-base super.jsaddle;
|
||||||
jsaddle-dom = addBuildDepend self.ghcjs-base super.jsaddle-dom;
|
jsaddle-dom = addBuildDepend self.ghcjs-base super.jsaddle-dom;
|
||||||
|
jsaddle-warp = overrideCabal (drv: {
|
||||||
|
libraryHaskellDepends = [ ];
|
||||||
|
testHaskellDepends = [ ];
|
||||||
|
}) super.jsaddle-warp;
|
||||||
|
|
||||||
entropy = addBuildDepend self.ghcjs-dom super.entropy;
|
entropy = addBuildDepend self.ghcjs-dom super.entropy;
|
||||||
|
|
||||||
reflex-dom = super.reflex-dom.override (drv: {
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/25083#note_578275
|
||||||
jsaddle-webkit2gtk = null;
|
patch = haskellLib.disableParallelBuilding super.patch;
|
||||||
});
|
reflex-dom-core = haskellLib.disableParallelBuilding super.reflex-dom-core;
|
||||||
patch = pkgs.lib.pipe super.patch (
|
|
||||||
with haskellLib;
|
reflex-dom =
|
||||||
[
|
lib.warn "reflex-dom builds with JS backend but it is missing fixes for working at runtime"
|
||||||
disableParallelBuilding # https://gitlab.haskell.org/ghc/ghc/-/issues/25083#note_578275
|
super.reflex-dom.override
|
||||||
doJailbreak
|
(drv: {
|
||||||
]
|
jsaddle-webkit2gtk = null;
|
||||||
);
|
});
|
||||||
|
|
||||||
|
miso-examples = pkgs.lib.pipe super.miso-examples [
|
||||||
|
(addBuildDepends (
|
||||||
|
with self;
|
||||||
|
[
|
||||||
|
aeson
|
||||||
|
ghcjs-base
|
||||||
|
jsaddle-warp
|
||||||
|
miso
|
||||||
|
servant
|
||||||
|
]
|
||||||
|
))
|
||||||
|
];
|
||||||
|
|
||||||
|
# https://github.com/haskellari/splitmix/pull/75
|
||||||
|
splitmix = appendPatch (pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/haskellari/splitmix/commit/7ffb3158f577c48ab5de774abea47767921ef3e9.patch";
|
||||||
|
sha256 = "sha256-n2q4FGf/pPcI1bhb9srHjHLzaNVehkdN6kQgL0F4MMg=";
|
||||||
|
}) super.splitmix;
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -24,106 +24,108 @@
|
||||||
# tracked in stackage.yaml. Adding conflicting overrides with stackage here will
|
# tracked in stackage.yaml. Adding conflicting overrides with stackage here will
|
||||||
# not work.
|
# not work.
|
||||||
default-package-overrides:
|
default-package-overrides:
|
||||||
# gi-gdkx11-4.x requires gtk-4.x, but stackage still restricts gi-gtk to 3.*
|
|
||||||
- gi-gdkx11 < 4
|
|
||||||
# 2021-11-09: ghc-bignum is bundled starting with 9.0.1; only 1.0 builds with GHCs prior to 9.2.1
|
# 2021-11-09: ghc-bignum is bundled starting with 9.0.1; only 1.0 builds with GHCs prior to 9.2.1
|
||||||
- ghc-bignum == 1.0
|
- ghc-bignum == 1.0
|
||||||
- extensions < 0.1.0.2 # Incompatible with Cabal < 3.12, the newest extensions version is only needed on ghc 9.10
|
- extensions < 0.1.0.2 # Incompatible with Cabal < 3.12, the newest extensions version is only needed on ghc 9.10
|
||||||
# 2024-05-10: need to match hlegder from stackage
|
|
||||||
- hledger-ui < 1.33
|
|
||||||
- chs-cabal < 0.1.1.2 # Incompatible with Cabal < 3.12
|
- chs-cabal < 0.1.1.2 # Incompatible with Cabal < 3.12
|
||||||
# 2024-08-17: Stackage doesn't contain hnix-store-core >= 0.8 yet, so we need to restrict hnix-store-remote
|
# 2024-08-17: Stackage doesn't contain hnix-store-core >= 0.8 yet, so we need to restrict hnix-store-remote
|
||||||
- hnix-store-remote < 0.7
|
- hnix-store-remote < 0.7
|
||||||
# 2024-09-12: match xmonad 0.17.* from Stackage LTS
|
|
||||||
- xmonad-contrib < 0.18.1
|
|
||||||
# 2024-11-01: no release version of http2/3 supports http-semantics >= 0.3.0 at the moment
|
|
||||||
- http-semantics < 0.3.0
|
|
||||||
# 2024-12-23: last version to be compatible with Stackage LTS 22/23 (due to data-default)
|
# 2024-12-23: last version to be compatible with Stackage LTS 22/23 (due to data-default)
|
||||||
- diagrams-input < 0.1.4
|
- diagrams-input < 0.1.4
|
||||||
# 2024-12-31: last version that's compatible with GHC < 9.9
|
# 2024-12-31: last version that's compatible with GHC < 9.9
|
||||||
- htree < 0.2.0.0
|
- htree < 0.2.0.0
|
||||||
|
# 2025-01-17: need to match stackage version of hosc
|
||||||
|
- hsc3 < 0.21
|
||||||
|
|
||||||
extra-packages:
|
extra-packages:
|
||||||
- Cabal == 3.2.* # Used for packages needing newer Cabal on ghc 8.6 and 8.8
|
- Cabal == 3.2.* # Used for packages needing newer Cabal on ghc 8.6 and 8.8
|
||||||
- Cabal-syntax == 3.6.* # Dummy package that ensures packages depending on Cabal-syntax can work for Cabal < 3.8
|
|
||||||
- Cabal-syntax == 3.8.* # version required for ormolu and fourmolu on ghc 9.2 and 9.0
|
|
||||||
- Cabal-syntax == 3.10.*
|
|
||||||
- Cabal == 3.10.*
|
- Cabal == 3.10.*
|
||||||
- Cabal == 3.12.* # version required for cabal-install and other packages
|
- Cabal == 3.12.* # version required for cabal-install and other packages
|
||||||
|
- Cabal-syntax == 3.6.* # Dummy package that ensures packages depending on Cabal-syntax can work for Cabal < 3.8
|
||||||
|
- Cabal-syntax == 3.8.* # version required for ormolu and fourmolu on ghc 9.0
|
||||||
|
- Cabal-syntax == 3.10.*
|
||||||
- Cabal-syntax == 3.12.* # version required for cabal-install and other packages
|
- Cabal-syntax == 3.12.* # version required for cabal-install and other packages
|
||||||
|
- ShellCheck == 0.9.0 # 2024-03-21: pinned by haskell-ci
|
||||||
- aeson < 2 # required by pantry-0.5.2
|
- aeson < 2 # required by pantry-0.5.2
|
||||||
|
- algebraic-graphs < 0.7 # 2023-08-14: Needed for building weeder < 2.6.0
|
||||||
|
- ansi-terminal < 1.1 # 2025-02-27: required for ghcjs
|
||||||
|
- ansi-terminal-types == 0.11.5 # 2025-02-27: required for ghcjs
|
||||||
|
- ansi-wl-pprint >= 0.6 && < 0.7 # 2024-03-23: required for ghcjs
|
||||||
- apply-refact == 0.9.* # 2022-12-12: needed for GHC < 9.2
|
- apply-refact == 0.9.* # 2022-12-12: needed for GHC < 9.2
|
||||||
- apply-refact == 0.11.* # 2023-02-02: needed for hls-hlint-plugin on GHC 9.2
|
|
||||||
- attoparsec == 0.13.* # 2022-02-23: Needed to compile elm for now
|
- attoparsec == 0.13.* # 2022-02-23: Needed to compile elm for now
|
||||||
|
- commonmark-pandoc < 0.2.3 # 2025-04-06: Needed for pandoc 3.6
|
||||||
|
- extensions == 0.1.0.2 # 2024-10-20: for GHC 9.10/Cabal 3.12
|
||||||
|
- fourmolu == 0.14.0.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
|
||||||
|
- fourmolu == 0.16.0.0 # 2025-01-27: for ghc 9.10 compat
|
||||||
|
- fsnotify < 0.4 # 2024-04-22: required by spago-0.21
|
||||||
|
- fuzzyset == 0.2.4 # 2023-12-20: Needed for building postgrest > 10
|
||||||
- ghc-api-compat == 8.10.7 # 2022-02-17: preserve for GHC 8.10.7
|
- ghc-api-compat == 8.10.7 # 2022-02-17: preserve for GHC 8.10.7
|
||||||
- ghc-exactprint == 0.6.* # 2022-12-12: needed for GHC < 9.2
|
- ghc-exactprint == 0.6.* # 2022-12-12: needed for GHC < 9.2
|
||||||
- ghc-exactprint == 1.5.* # 2023-03-30: needed for GHC == 9.2
|
- ghc-exactprint == 1.5.* # 2023-03-30: needed for GHC == 9.2
|
||||||
- ghc-exactprint == 1.6.* # 2023-03-30: needed for GHC == 9.4
|
- ghc-exactprint == 1.6.* # 2023-03-30: needed for GHC == 9.4
|
||||||
|
- ghc-exactprint == 1.7.* # 2025-03-09: needed for GHC == 9.6
|
||||||
- ghc-exactprint == 1.8.* # 2024-05-20: needed for GHC == 9.8
|
- ghc-exactprint == 1.8.* # 2024-05-20: needed for GHC == 9.8
|
||||||
- ghc-exactprint == 1.9.* # 2024-08-27: needed for GHC == 9.10
|
- ghc-exactprint == 1.9.* # 2024-08-27: needed for GHC == 9.10
|
||||||
- ghc-lib == 9.2.* # 2022-02-17: preserve for GHC 8.10, 9.0
|
- ghc-lib == 9.2.* # 2022-02-17: preserve for GHC 8.10, 9.0
|
||||||
- ghc-lib == 9.8.* # 2024-05-19: preserve for GHC 9.8
|
- ghc-lib == 9.6.* # 2022-02-17: preserve for GHC 9.2, 9.4
|
||||||
- ghc-lib-parser == 9.2.* # 2022-02-17: preserve for GHC 8.10, 9.0
|
|
||||||
- ghc-lib-parser == 9.8.* # 2024-05-19: preserve for GHC 9.8
|
|
||||||
- ghc-lib == 9.10.* # 2024-12-30: preserve for GHC 9.10/ghc-tags 1.9
|
- ghc-lib == 9.10.* # 2024-12-30: preserve for GHC 9.10/ghc-tags 1.9
|
||||||
- ghc-lib-parser == 9.10.* # 2024-12-26: preserve for ghc-syntax-highlighter == 0.0.12.0
|
- ghc-lib-parser == 9.2.* # 2022-02-17: preserve for GHC 8.10, 9.0
|
||||||
- ghc-lib-parser-ex == 9.10.* # 2024-12-26: preserve for 9.10 HLS
|
- ghc-lib-parser == 9.6.* # 2024-05-19: preserve for GHC 9.2, 9.4
|
||||||
|
- ghc-lib-parser == 9.10.* # 2024-12-26: preserve for GHC 9.10
|
||||||
- ghc-lib-parser-ex == 9.2.* # 2022-07-13: preserve for GHC 8.10, 9.0
|
- ghc-lib-parser-ex == 9.2.* # 2022-07-13: preserve for GHC 8.10, 9.0
|
||||||
- ghc-lib-parser-ex == 9.8.* # 2024-05-19: preserve for GHC 9.8
|
- ghc-lib-parser-ex == 9.6.* # 2024-05-19: preserve for GHC 9.2, 9.4
|
||||||
|
- ghc-lib-parser-ex == 9.10.* # 2024-12-26: preserve for 9.10 HLS
|
||||||
|
- ghc-source-gen < 0.4.6.0 # 2024-12-31: support GHC < 9.0
|
||||||
|
- ghc-tags == 1.5.* # 2023-02-18: preserve for ghc-lib == 9.2.*
|
||||||
|
- ghc-tags == 1.7.* # 2023-02-18: preserve for ghc-lib == 9.6.*
|
||||||
|
- ghc-tags == 1.8.* # 2023-02-18: preserve for ghc-lib == 9.8.*
|
||||||
- happy == 1.19.12 # for ghcjs
|
- happy == 1.19.12 # for ghcjs
|
||||||
- hashable == 1.4.7.0 # allows GHC 9.10
|
- happy == 1.20.* # for ghc-lib-parser == 9.6.*
|
||||||
- ansi-wl-pprint >= 0.6 && < 0.7 # 2024-03-23: required for ghcjs
|
- hasql < 1.7 # 2025-01-19: Needed for building postgrest
|
||||||
- hlint == 3.4.1 # 2022-09-21: needed for hls with ghc-lib-parser 9.2
|
- hasql-dynamic-statements < 0.3.1.6 # 2025-01-19: Needed for building postgrest
|
||||||
|
- hasql-implicits < 0.2 # 2025-01-19: Needed for building postgrest
|
||||||
|
- hasql-notifications < 0.2.3 # 2025-01-19: Needed for building postgrest
|
||||||
|
- hasql-pool < 1.1 # 2025-01-19: Needed for building postgrest
|
||||||
|
- hasql-transaction < 1.1.1 # 2025-01-19: Needed for building postgrest
|
||||||
|
- hlint == 3.4.1 # 2022-09-21: preserve for ghc 8.10
|
||||||
|
- hlint == 3.6.* # 2025-04-14: needed for hls with ghc-lib-parser 9.6
|
||||||
- hnix-store-core < 0.7 # 2023-12-11: required by hnix-store-remote 0.6
|
- hnix-store-core < 0.7 # 2023-12-11: required by hnix-store-remote 0.6
|
||||||
- hspec < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
|
- hspec < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
|
||||||
- hspec-core < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
|
- hspec-core < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
|
||||||
- hspec-discover < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
|
- hspec-discover < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
|
||||||
- hspec-megaparsec == 2.2.0 # 2023-11-18: Latest version compatible with ghc 9.0, needed for HLS
|
- hspec-megaparsec == 2.2.0 # 2023-11-18: Latest version compatible with ghc 9.0
|
||||||
- hspec-meta < 2.8 # 2022-12-07: Needed for elmPackages.elm / hspec-discover
|
- hspec-meta < 2.8 # 2022-12-07: Needed for elmPackages.elm / hspec-discover
|
||||||
- immortal == 0.2.2.1 # required by Hasura 1.3.1, 2020-08-20
|
|
||||||
- language-docker == 11.0.0 # required by hadolint 2.12.0, 2022-11-16
|
|
||||||
- language-javascript == 0.7.0.0 # required by purescript
|
- language-javascript == 0.7.0.0 # required by purescript
|
||||||
- lsp == 2.1.0.0 # 2024-02-28: need for dhall-lsp-server unstable
|
|
||||||
- lsp-types == 2.0.2.0 # 2024-02-28: need for dhall-lsp-server unstable
|
|
||||||
- lsp < 2.5 # 2024-07-08: need for koka
|
- lsp < 2.5 # 2024-07-08: need for koka
|
||||||
- lsp-types < 2.2 # 2024-07-08: need for koka
|
- lsp == 2.1.* # 2024-02-28: need for dhall-lsp-server
|
||||||
|
- lsp-types == 2.1.* # 2024-02-28: need for dhall-lsp-server and koka
|
||||||
|
- network-run == 0.4.0 # 2024-10-20: for GHC 9.10/network == 3.1.*
|
||||||
- optparse-applicative < 0.16 # needed for niv-0.2.19
|
- optparse-applicative < 0.16 # needed for niv-0.2.19
|
||||||
- fourmolu == 0.14.0.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
|
- ormolu == 0.5.2.0 # 2023-08-08: preserve for ghc 9.0
|
||||||
- fourmolu == 0.15.0.0 # 2024-07-07: for ghc 9.8 compat
|
|
||||||
- ormolu == 0.5.2.0 # 2023-08-08: for hls on ghc 9.0 and 9.2
|
|
||||||
- ormolu == 0.7.2.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
|
- ormolu == 0.7.2.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
|
||||||
- ormolu == 0.7.4.0 # 2024-07-07: for ghc 9.8 compat
|
- ormolu == 0.7.7.0 # 2025-01-27: for ghc 9.10 compat
|
||||||
- primitive-unlifted == 0.1.3.1 # 2024-03-16: Needed for hls on ghc 9.2
|
- postgresql-binary < 0.14 # 2025-01-19: Needed for building postgrest
|
||||||
- stylish-haskell == 0.14.4.0 # 2022-09-19: needed for hls on ghc 9.2
|
- primitive-unlifted == 0.1.3.1 # 2024-03-16: preserve for ghc 9.2
|
||||||
|
- retrie < 1.2.0.0 # 2022-12-30: preserve for ghc < 9.2
|
||||||
|
- shake-cabal < 0.2.2.3 # 2023-07-01: last version to support Cabal 3.6.*
|
||||||
|
- stylish-haskell == 0.14.4.0 # 2022-09-19: preserve for ghc 9.0
|
||||||
|
- stylish-haskell == 0.14.5.0 # 2025-04-14: needed for hls with ghc-lib 9.6
|
||||||
|
- tar == 0.6.0.0 # 2025-02-08: last version to not require os-string (which can't be built with GHC < 9.2)
|
||||||
- text == 2.0.2 # 2023-09-14: Needed for elm (which is currently on ghc-8.10)
|
- text == 2.0.2 # 2023-09-14: Needed for elm (which is currently on ghc-8.10)
|
||||||
|
- text-metrics < 0.3.3 # 2025-02-08: >= 0.3.3 uses GHC2021
|
||||||
|
- versions < 6 # 2024-04-22: required by spago-0.21
|
||||||
- weeder == 2.2.* # 2022-02-21: preserve for GHC 8.10.7
|
- weeder == 2.2.* # 2022-02-21: preserve for GHC 8.10.7
|
||||||
- weeder == 2.3.* # 2022-05-31: preserve for GHC 9.0.2
|
- weeder == 2.3.* # 2022-05-31: preserve for GHC 9.0.2
|
||||||
- weeder == 2.4.* # 2023-02-02: preserve for GHC 9.2.*
|
- weeder == 2.4.* # 2023-02-02: preserve for GHC 9.2.*
|
||||||
- retrie < 1.2.0.0 # 2022-12-30: required for hls on ghc < 9.2
|
|
||||||
- ghc-tags == 1.5.* # 2023-02-18: preserve for ghc-lib == 9.2.*
|
|
||||||
- ghc-tags == 1.6.* # 2023-02-18: preserve for ghc-lib == 9.4.*
|
|
||||||
- ghc-tags == 1.7.* # 2023-02-18: preserve for ghc-lib == 9.6.*
|
|
||||||
- ghc-tags == 1.8.* # 2023-02-18: preserve for ghc-lib == 9.8.*
|
|
||||||
- shake-cabal < 0.2.2.3 # 2023-07-01: last version to support Cabal 3.6.*
|
|
||||||
- algebraic-graphs < 0.7 # 2023-08-14: Needed for building weeder < 2.6.0
|
|
||||||
- fuzzyset == 0.2.4 # 2023-12-20: Needed for building postgrest > 10
|
|
||||||
- ShellCheck == 0.9.0 # 2024-03-21: pinned by haskell-ci
|
|
||||||
- versions < 6 # 2024-04-22: required by spago-0.21
|
|
||||||
- fsnotify < 0.4 # 2024-04-22: required by spago-0.21
|
|
||||||
- th-desugar == 1.16 # 2024-06-28: preserve for GHC 9.8
|
|
||||||
- singletons-th == 3.3 # 2024-06-28: preserve for GHC 9.8
|
|
||||||
- singletons-base == 3.3 # 2024-06-28: preserve for GHC 9.8
|
|
||||||
- tls < 2.1.0 # 2024-07-19: requested by darcs == 2.18.3
|
|
||||||
- extensions == 0.1.0.2 # 2024-10-20: for GHC 9.10/Cabal 3.12
|
|
||||||
- network-run == 0.4.0 # 2024-10-20: for GHC 9.10/network == 3.1.*
|
|
||||||
- ghc-source-gen < 0.4.6.0 # 2024-12-31: support GHC < 9.0
|
|
||||||
|
|
||||||
package-maintainers:
|
package-maintainers:
|
||||||
abbradar:
|
abbradar:
|
||||||
- Agda
|
- Agda
|
||||||
alexfmpe:
|
alexfmpe:
|
||||||
- aeson-gadt-th
|
- aeson-gadt-th
|
||||||
|
- android-activity
|
||||||
- basic-sop
|
- basic-sop
|
||||||
|
- bytestring-aeson-orphans
|
||||||
- cli-extras
|
- cli-extras
|
||||||
- cli-git
|
- cli-git
|
||||||
- cli-nix
|
- cli-nix
|
||||||
|
@ -157,6 +159,7 @@ package-maintainers:
|
||||||
- large-records
|
- large-records
|
||||||
- lens-sop
|
- lens-sop
|
||||||
- linux-namespaces
|
- linux-namespaces
|
||||||
|
- monoid-map
|
||||||
- monoidal-containers
|
- monoidal-containers
|
||||||
- nix-thunk
|
- nix-thunk
|
||||||
- patch
|
- patch
|
||||||
|
@ -168,6 +171,8 @@ package-maintainers:
|
||||||
- reflex-dom
|
- reflex-dom
|
||||||
- reflex-dom-core
|
- reflex-dom-core
|
||||||
- reflex-gadt-api
|
- reflex-gadt-api
|
||||||
|
- reflex-fsnotify
|
||||||
|
- th-abstraction
|
||||||
- universe
|
- universe
|
||||||
- universe-some
|
- universe-some
|
||||||
- vessel
|
- vessel
|
||||||
|
@ -203,7 +208,6 @@ package-maintainers:
|
||||||
- nfc
|
- nfc
|
||||||
dalpd:
|
dalpd:
|
||||||
- dhall-lsp-server
|
- dhall-lsp-server
|
||||||
- espial
|
|
||||||
- ghc-vis
|
- ghc-vis
|
||||||
- patat
|
- patat
|
||||||
- svgcairo
|
- svgcairo
|
||||||
|
@ -296,6 +300,15 @@ package-maintainers:
|
||||||
- sensei
|
- sensei
|
||||||
malo:
|
malo:
|
||||||
- cornelis
|
- cornelis
|
||||||
|
mangoiv:
|
||||||
|
- fused-effects
|
||||||
|
- htree
|
||||||
|
- http-barf
|
||||||
|
- libsodium-bindings
|
||||||
|
- scoped-codensity
|
||||||
|
- sel
|
||||||
|
- text-display
|
||||||
|
- unclogging
|
||||||
maralorn:
|
maralorn:
|
||||||
- bluefin
|
- bluefin
|
||||||
- cabal-fmt
|
- cabal-fmt
|
||||||
|
@ -344,8 +357,6 @@ package-maintainers:
|
||||||
- shake
|
- shake
|
||||||
nomeata:
|
nomeata:
|
||||||
- cabal-plan-bounds
|
- cabal-plan-bounds
|
||||||
- candid
|
|
||||||
- leb128-cereal
|
|
||||||
- lhs2tex
|
- lhs2tex
|
||||||
- rec-def
|
- rec-def
|
||||||
- tasty-expected-failure
|
- tasty-expected-failure
|
||||||
|
@ -405,6 +416,14 @@ package-maintainers:
|
||||||
- taffybar
|
- taffybar
|
||||||
- arbtt
|
- arbtt
|
||||||
- lentil
|
- lentil
|
||||||
|
sellout:
|
||||||
|
- dualizer
|
||||||
|
- no-recursion
|
||||||
|
- yaya
|
||||||
|
- yaya-containers
|
||||||
|
- yaya-hedgehog
|
||||||
|
- yaya-quickcheck
|
||||||
|
- yaya-unsafe
|
||||||
sheepforce:
|
sheepforce:
|
||||||
- mpi-hs
|
- mpi-hs
|
||||||
- mpi-hs-store
|
- mpi-hs-store
|
||||||
|
@ -645,7 +664,10 @@ package-maintainers:
|
||||||
- minio-hs
|
- minio-hs
|
||||||
- smtp-mail
|
- smtp-mail
|
||||||
- pdftotext
|
- pdftotext
|
||||||
|
- warp-systemd
|
||||||
|
- amazonka
|
||||||
wolfgangwalther:
|
wolfgangwalther:
|
||||||
|
- postgres-websockets
|
||||||
- postgrest
|
- postgrest
|
||||||
|
|
||||||
unsupported-platforms:
|
unsupported-platforms:
|
||||||
|
@ -823,6 +845,8 @@ supported-platforms:
|
||||||
memfd: [ platforms.linux ]
|
memfd: [ platforms.linux ]
|
||||||
midi-alsa: [ platforms.linux ] # alsa-core only supported on linux
|
midi-alsa: [ platforms.linux ] # alsa-core only supported on linux
|
||||||
midisurface: [ platforms.linux ] # alsa-core only supported on linux
|
midisurface: [ platforms.linux ] # alsa-core only supported on linux
|
||||||
|
miso-action-logger: [ javascript-ghcjs ] # https://github.com/Lermex/miso-action-logger/issues/1
|
||||||
|
miso-examples: [ javascript-ghcjs ]
|
||||||
OrderedBits: [ platforms.x86 ] # lacks implementations for non-x86: https://github.com/choener/OrderedBits/blob/401cbbe933b1635aa33e8e9b29a4a570b0a8f044/lib/Data/Bits/Ordered.hs#L316
|
OrderedBits: [ platforms.x86 ] # lacks implementations for non-x86: https://github.com/choener/OrderedBits/blob/401cbbe933b1635aa33e8e9b29a4a570b0a8f044/lib/Data/Bits/Ordered.hs#L316
|
||||||
reactivity: [ platforms.windows ]
|
reactivity: [ platforms.windows ]
|
||||||
reflex-libtelnet: [ platforms.linux ] # pkgs.libtelnet only supports linux
|
reflex-libtelnet: [ platforms.linux ] # pkgs.libtelnet only supports linux
|
||||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -54,6 +54,11 @@ builtins.intersectAttrs super {
|
||||||
### HASKELL-LANGUAGE-SERVER SECTION ###
|
### HASKELL-LANGUAGE-SERVER SECTION ###
|
||||||
#######################################
|
#######################################
|
||||||
|
|
||||||
|
cabal-add = overrideCabal (drv: {
|
||||||
|
# tests depend on executable
|
||||||
|
preCheck = ''export PATH="$PWD/dist/build/cabal-add:$PATH"'';
|
||||||
|
}) super.cabal-add;
|
||||||
|
|
||||||
haskell-language-server = overrideCabal (drv: {
|
haskell-language-server = overrideCabal (drv: {
|
||||||
# starting with 1.6.1.1 haskell-language-server wants to be linked dynamically
|
# starting with 1.6.1.1 haskell-language-server wants to be linked dynamically
|
||||||
# by default. Unless we reflect this in the generic builder, GHC is going to
|
# by default. Unless we reflect this in the generic builder, GHC is going to
|
||||||
|
@ -79,7 +84,7 @@ builtins.intersectAttrs super {
|
||||||
self.cabal-install
|
self.cabal-install
|
||||||
pkgs.git
|
pkgs.git
|
||||||
];
|
];
|
||||||
testTarget = "func-test"; # wrapper test accesses internet
|
testTargets = [ "func-test" ]; # wrapper test accesses internet
|
||||||
preCheck = ''
|
preCheck = ''
|
||||||
export PATH=$PATH:$PWD/dist/build/haskell-language-server:$PWD/dist/build/haskell-language-server-wrapper
|
export PATH=$PATH:$PWD/dist/build/haskell-language-server:$PWD/dist/build/haskell-language-server-wrapper
|
||||||
export HOME=$TMPDIR
|
export HOME=$TMPDIR
|
||||||
|
@ -93,8 +98,6 @@ builtins.intersectAttrs super {
|
||||||
ghcide = overrideCabal (drv: {
|
ghcide = overrideCabal (drv: {
|
||||||
# tests depend on executable
|
# tests depend on executable
|
||||||
preCheck = ''export PATH="$PWD/dist/build/ghcide:$PATH"'';
|
preCheck = ''export PATH="$PWD/dist/build/ghcide:$PATH"'';
|
||||||
# tests disabled because they require network
|
|
||||||
doCheck = false;
|
|
||||||
}) super.ghcide;
|
}) super.ghcide;
|
||||||
|
|
||||||
hiedb = overrideCabal (drv: {
|
hiedb = overrideCabal (drv: {
|
||||||
|
@ -119,43 +122,12 @@ builtins.intersectAttrs super {
|
||||||
+ drv.preCheck or "";
|
+ drv.preCheck or "";
|
||||||
}) super.agda2lagda;
|
}) super.agda2lagda;
|
||||||
|
|
||||||
# - Disable scrypt support since the library used only works on x86 due to SSE2:
|
# scrypt requires SSE2
|
||||||
# https://github.com/informatikr/scrypt/issues/8
|
password = super.password.override (
|
||||||
# - Use crypton as the encryption backend. That override becomes obsolete with
|
lib.optionalAttrs (!(lib.meta.availableOn pkgs.stdenv.hostPlatform self.scrypt)) {
|
||||||
# 3.1.* since cabal2nix picks crypton by default then.
|
scrypt = null;
|
||||||
password =
|
}
|
||||||
let
|
);
|
||||||
scryptSupported = pkgs.stdenv.hostPlatform.isx86;
|
|
||||||
in
|
|
||||||
|
|
||||||
lib.pipe
|
|
||||||
(super.password.override (
|
|
||||||
{
|
|
||||||
cryptonite = self.crypton;
|
|
||||||
}
|
|
||||||
// lib.optionalAttrs (!scryptSupported) {
|
|
||||||
scrypt = null;
|
|
||||||
}
|
|
||||||
))
|
|
||||||
(
|
|
||||||
[
|
|
||||||
(enableCabalFlag "crypton")
|
|
||||||
(disableCabalFlag "cryptonite")
|
|
||||||
# https://github.com/cdepillabout/password/pull/84
|
|
||||||
(appendPatch ./patches/password-3.0.4.0-scrypt-conditional.patch)
|
|
||||||
(overrideCabal (drv: {
|
|
||||||
# patch doesn't apply otherwise because of revisions
|
|
||||||
prePatch =
|
|
||||||
drv.prePatch or ""
|
|
||||||
+ ''
|
|
||||||
${pkgs.buildPackages.dos2unix}/bin/dos2unix *.cabal
|
|
||||||
'';
|
|
||||||
}))
|
|
||||||
]
|
|
||||||
++ lib.optionals (!scryptSupported) [
|
|
||||||
(disableCabalFlag "scrypt")
|
|
||||||
]
|
|
||||||
);
|
|
||||||
|
|
||||||
audacity = enableCabalFlag "buildExamples" (
|
audacity = enableCabalFlag "buildExamples" (
|
||||||
overrideCabal (drv: {
|
overrideCabal (drv: {
|
||||||
|
@ -242,43 +214,14 @@ builtins.intersectAttrs super {
|
||||||
});
|
});
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
hledger = installHledgerExtraFiles "" super.hledger;
|
hledger = installHledgerExtraFiles "embeddedfiles" super.hledger;
|
||||||
hledger-web = installHledgerExtraFiles "" (hledgerWebTestFix super.hledger-web);
|
hledger-web = installHledgerExtraFiles "" (hledgerWebTestFix super.hledger-web);
|
||||||
hledger-ui = installHledgerExtraFiles "" super.hledger-ui;
|
hledger-ui = installHledgerExtraFiles "" super.hledger-ui;
|
||||||
|
|
||||||
hledger_1_40 = installHledgerExtraFiles "embeddedfiles" (
|
|
||||||
doDistribute (
|
|
||||||
super.hledger_1_40.override {
|
|
||||||
hledger-lib = self.hledger-lib_1_40;
|
|
||||||
}
|
|
||||||
)
|
|
||||||
);
|
|
||||||
hledger-ui_1_40 = installHledgerExtraFiles "" (
|
|
||||||
doDistribute (
|
|
||||||
super.hledger-ui_1_40.override {
|
|
||||||
hledger = self.hledger_1_40;
|
|
||||||
hledger-lib = self.hledger-lib_1_40;
|
|
||||||
}
|
|
||||||
)
|
|
||||||
);
|
|
||||||
hledger-web_1_40 = installHledgerExtraFiles "" (
|
|
||||||
hledgerWebTestFix (
|
|
||||||
doDistribute (
|
|
||||||
super.hledger-web_1_40.override {
|
|
||||||
hledger = self.hledger_1_40;
|
|
||||||
hledger-lib = self.hledger-lib_1_40;
|
|
||||||
}
|
|
||||||
)
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
hledger
|
hledger
|
||||||
hledger-web
|
hledger-web
|
||||||
hledger-ui
|
hledger-ui
|
||||||
hledger_1_40
|
|
||||||
hledger-ui_1_40
|
|
||||||
hledger-web_1_40
|
|
||||||
;
|
;
|
||||||
|
|
||||||
cufft = overrideCabal (drv: {
|
cufft = overrideCabal (drv: {
|
||||||
|
@ -424,27 +367,23 @@ builtins.intersectAttrs super {
|
||||||
digitalocean-kzs = dontCheck super.digitalocean-kzs; # https://github.com/KazumaSATO/digitalocean-kzs/issues/1
|
digitalocean-kzs = dontCheck super.digitalocean-kzs; # https://github.com/KazumaSATO/digitalocean-kzs/issues/1
|
||||||
github-types = dontCheck super.github-types; # http://hydra.cryp.to/build/1114046/nixlog/1/raw
|
github-types = dontCheck super.github-types; # http://hydra.cryp.to/build/1114046/nixlog/1/raw
|
||||||
hadoop-rpc = dontCheck super.hadoop-rpc; # http://hydra.cryp.to/build/527461/nixlog/2/raw
|
hadoop-rpc = dontCheck super.hadoop-rpc; # http://hydra.cryp.to/build/527461/nixlog/2/raw
|
||||||
hjsonschema = overrideCabal (drv: { testTarget = "local"; }) super.hjsonschema;
|
hjsonschema = overrideCabal (drv: { testTargets = [ "local" ]; }) super.hjsonschema;
|
||||||
marmalade-upload = dontCheck super.marmalade-upload; # http://hydra.cryp.to/build/501904/nixlog/1/raw
|
marmalade-upload = dontCheck super.marmalade-upload; # http://hydra.cryp.to/build/501904/nixlog/1/raw
|
||||||
mongoDB = dontCheck super.mongoDB;
|
mongoDB = dontCheck super.mongoDB;
|
||||||
network-transport-tcp = dontCheck super.network-transport-tcp;
|
|
||||||
network-transport-zeromq = dontCheck super.network-transport-zeromq; # https://github.com/tweag/network-transport-zeromq/issues/30
|
network-transport-zeromq = dontCheck super.network-transport-zeromq; # https://github.com/tweag/network-transport-zeromq/issues/30
|
||||||
oidc-client = dontCheck super.oidc-client; # the spec runs openid against google.com
|
oidc-client = dontCheck super.oidc-client; # the spec runs openid against google.com
|
||||||
persistent-migration = dontCheck super.persistent-migration; # spec requires pg_ctl binary
|
persistent-migration = dontCheck super.persistent-migration; # spec requires pg_ctl binary
|
||||||
pipes-mongodb = dontCheck super.pipes-mongodb; # http://hydra.cryp.to/build/926195/log/raw
|
pipes-mongodb = dontCheck super.pipes-mongodb; # http://hydra.cryp.to/build/926195/log/raw
|
||||||
pixiv = dontCheck super.pixiv;
|
pixiv = dontCheck super.pixiv;
|
||||||
raven-haskell = dontCheck super.raven-haskell; # http://hydra.cryp.to/build/502053/log/raw
|
|
||||||
riak = dontCheck super.riak; # http://hydra.cryp.to/build/498763/log/raw
|
riak = dontCheck super.riak; # http://hydra.cryp.to/build/498763/log/raw
|
||||||
scotty-binding-play = dontCheck super.scotty-binding-play;
|
scotty-binding-play = dontCheck super.scotty-binding-play;
|
||||||
servant-router = dontCheck super.servant-router;
|
servant-router = dontCheck super.servant-router;
|
||||||
serversession-backend-redis = dontCheck super.serversession-backend-redis;
|
serversession-backend-redis = dontCheck super.serversession-backend-redis;
|
||||||
slack-api = dontCheck super.slack-api; # https://github.com/mpickering/slack-api/issues/5
|
slack-api = dontCheck super.slack-api; # https://github.com/mpickering/slack-api/issues/5
|
||||||
socket = dontCheck super.socket;
|
|
||||||
stackage = dontCheck super.stackage; # http://hydra.cryp.to/build/501867/nixlog/1/raw
|
stackage = dontCheck super.stackage; # http://hydra.cryp.to/build/501867/nixlog/1/raw
|
||||||
textocat-api = dontCheck super.textocat-api; # http://hydra.cryp.to/build/887011/log/raw
|
textocat-api = dontCheck super.textocat-api; # http://hydra.cryp.to/build/887011/log/raw
|
||||||
wreq = dontCheck super.wreq; # http://hydra.cryp.to/build/501895/nixlog/1/raw
|
wreq = dontCheck super.wreq; # http://hydra.cryp.to/build/501895/nixlog/1/raw
|
||||||
wreq-sb = dontCheck super.wreq-sb; # http://hydra.cryp.to/build/783948/log/raw
|
wreq-sb = dontCheck super.wreq-sb; # http://hydra.cryp.to/build/783948/log/raw
|
||||||
wuss = dontCheck super.wuss; # http://hydra.cryp.to/build/875964/nixlog/2/raw
|
|
||||||
download = dontCheck super.download;
|
download = dontCheck super.download;
|
||||||
http-client = dontCheck super.http-client;
|
http-client = dontCheck super.http-client;
|
||||||
http-client-openssl = dontCheck super.http-client-openssl;
|
http-client-openssl = dontCheck super.http-client-openssl;
|
||||||
|
@ -452,10 +391,8 @@ builtins.intersectAttrs super {
|
||||||
http-conduit = dontCheck super.http-conduit;
|
http-conduit = dontCheck super.http-conduit;
|
||||||
transient-universe = dontCheck super.transient-universe;
|
transient-universe = dontCheck super.transient-universe;
|
||||||
telegraph = dontCheck super.telegraph;
|
telegraph = dontCheck super.telegraph;
|
||||||
typed-process = dontCheck super.typed-process;
|
|
||||||
js-jquery = dontCheck super.js-jquery;
|
js-jquery = dontCheck super.js-jquery;
|
||||||
hPDB-examples = dontCheck super.hPDB-examples;
|
hPDB-examples = dontCheck super.hPDB-examples;
|
||||||
configuration-tools = dontCheck super.configuration-tools; # https://github.com/alephcloud/hs-configuration-tools/issues/40
|
|
||||||
tcp-streams = dontCheck super.tcp-streams;
|
tcp-streams = dontCheck super.tcp-streams;
|
||||||
holy-project = dontCheck super.holy-project;
|
holy-project = dontCheck super.holy-project;
|
||||||
mustache = dontCheck super.mustache;
|
mustache = dontCheck super.mustache;
|
||||||
|
@ -721,7 +658,7 @@ builtins.intersectAttrs super {
|
||||||
'';
|
'';
|
||||||
}) super.GLUT;
|
}) super.GLUT;
|
||||||
|
|
||||||
libsystemd-journal = doJailbreak (addExtraLibrary pkgs.systemd super.libsystemd-journal);
|
libsystemd-journal = addExtraLibrary pkgs.systemd super.libsystemd-journal;
|
||||||
|
|
||||||
# does not specify tests in cabal file, instead has custom runTest cabal hook,
|
# does not specify tests in cabal file, instead has custom runTest cabal hook,
|
||||||
# so cabal2nix will not detect test dependencies.
|
# so cabal2nix will not detect test dependencies.
|
||||||
|
@ -732,9 +669,6 @@ builtins.intersectAttrs super {
|
||||||
];
|
];
|
||||||
}) super.either-unwrap;
|
}) super.either-unwrap;
|
||||||
|
|
||||||
# https://github.com/haskell-fswatch/hfsnotify/issues/62
|
|
||||||
fsnotify = dontCheck super.fsnotify;
|
|
||||||
|
|
||||||
hs-GeoIP = super.hs-GeoIP.override { GeoIP = pkgs.geoipWithDatabase; };
|
hs-GeoIP = super.hs-GeoIP.override { GeoIP = pkgs.geoipWithDatabase; };
|
||||||
|
|
||||||
discount = super.discount.override { markdown = pkgs.discount; };
|
discount = super.discount.override { markdown = pkgs.discount; };
|
||||||
|
@ -833,12 +767,32 @@ builtins.intersectAttrs super {
|
||||||
|
|
||||||
# Not running the "example" test because it requires a binary from lsps test
|
# Not running the "example" test because it requires a binary from lsps test
|
||||||
# suite which is not part of the output of lsp.
|
# suite which is not part of the output of lsp.
|
||||||
lsp-test = overrideCabal (old: { testTarget = "tests func-test"; }) super.lsp-test;
|
lsp-test = overrideCabal (old: {
|
||||||
|
testTargets = [
|
||||||
|
"tests"
|
||||||
|
"func-test"
|
||||||
|
];
|
||||||
|
}) super.lsp-test;
|
||||||
|
|
||||||
# the test suite attempts to run the binaries built in this package
|
# the test suite attempts to run the binaries built in this package
|
||||||
# through $PATH but they aren't in $PATH
|
# through $PATH but they aren't in $PATH
|
||||||
dhall-lsp-server = dontCheck super.dhall-lsp-server;
|
dhall-lsp-server = dontCheck super.dhall-lsp-server;
|
||||||
|
|
||||||
|
# Test suite requires z3 to be in PATH
|
||||||
|
copilot-libraries = overrideCabal (drv: {
|
||||||
|
testToolDepends = drv.testToolDepends or [ ] ++ [
|
||||||
|
pkgs.z3
|
||||||
|
];
|
||||||
|
}) super.copilot-libraries;
|
||||||
|
# tests need to execute the built executable
|
||||||
|
ogma-cli = overrideCabal (drv: {
|
||||||
|
preCheck =
|
||||||
|
''
|
||||||
|
export PATH=dist/build/ogma:$PATH
|
||||||
|
''
|
||||||
|
+ (drv.preCheck or "");
|
||||||
|
}) super.ogma-cli;
|
||||||
|
|
||||||
# Expects z3 to be on path so we replace it with a hard
|
# Expects z3 to be on path so we replace it with a hard
|
||||||
#
|
#
|
||||||
# The tests expect additional solvers on the path, replace the
|
# The tests expect additional solvers on the path, replace the
|
||||||
|
@ -864,6 +818,13 @@ builtins.intersectAttrs super {
|
||||||
# The test-suite requires a running PostgreSQL server.
|
# The test-suite requires a running PostgreSQL server.
|
||||||
Frames-beam = dontCheck super.Frames-beam;
|
Frames-beam = dontCheck super.Frames-beam;
|
||||||
|
|
||||||
|
# Test suite requires yices to be in PATH
|
||||||
|
crucible-symio = overrideCabal (drv: {
|
||||||
|
testToolDepends = drv.testToolDepends or [ ] ++ [
|
||||||
|
pkgs.yices
|
||||||
|
];
|
||||||
|
}) super.crucible-symio;
|
||||||
|
|
||||||
# Compile manpages (which are in RST and are compiled with Sphinx).
|
# Compile manpages (which are in RST and are compiled with Sphinx).
|
||||||
futhark =
|
futhark =
|
||||||
overrideCabal
|
overrideCabal
|
||||||
|
@ -912,6 +873,15 @@ builtins.intersectAttrs super {
|
||||||
executableSystemDepends = runtimeExecDeps;
|
executableSystemDepends = runtimeExecDeps;
|
||||||
enableSharedExecutables = false;
|
enableSharedExecutables = false;
|
||||||
|
|
||||||
|
# Unnecessary for Setup.hs, but we reuse the setup package db
|
||||||
|
# for the installation utilities.
|
||||||
|
setupHaskellDepends = drv.setupHaskellDepends or [ ] ++ [
|
||||||
|
self.buildHaskellPackages.unix-compat
|
||||||
|
self.buildHaskellPackages.IfElse
|
||||||
|
self.buildHaskellPackages.QuickCheck
|
||||||
|
self.buildHaskellPackages.data-default
|
||||||
|
];
|
||||||
|
|
||||||
preConfigure =
|
preConfigure =
|
||||||
drv.preConfigure or ""
|
drv.preConfigure or ""
|
||||||
+ ''
|
+ ''
|
||||||
|
@ -995,9 +965,6 @@ builtins.intersectAttrs super {
|
||||||
# The test suite has undeclared dependencies on git.
|
# The test suite has undeclared dependencies on git.
|
||||||
githash = dontCheck super.githash;
|
githash = dontCheck super.githash;
|
||||||
|
|
||||||
# Avoid infitite recursion with yaya.
|
|
||||||
yaya-hedgehog = super.yaya-hedgehog.override { yaya = dontCheck self.yaya; };
|
|
||||||
|
|
||||||
# Avoid infitite recursion with tonatona.
|
# Avoid infitite recursion with tonatona.
|
||||||
tonaparser = dontCheck super.tonaparser;
|
tonaparser = dontCheck super.tonaparser;
|
||||||
|
|
||||||
|
@ -1048,7 +1015,8 @@ builtins.intersectAttrs super {
|
||||||
in
|
in
|
||||||
lib.pipe
|
lib.pipe
|
||||||
(super.spago.override {
|
(super.spago.override {
|
||||||
versions = self.versions_5_0_5;
|
# base <4.19, text <2.1
|
||||||
|
versions = doJailbreak self.versions_5_0_5;
|
||||||
fsnotify = self.fsnotify_0_3_0_1;
|
fsnotify = self.fsnotify_0_3_0_1;
|
||||||
})
|
})
|
||||||
[
|
[
|
||||||
|
@ -1109,7 +1077,6 @@ builtins.intersectAttrs super {
|
||||||
# break infinite recursion with base-orphans
|
# break infinite recursion with base-orphans
|
||||||
primitive = dontCheck super.primitive;
|
primitive = dontCheck super.primitive;
|
||||||
primitive_0_7_1_0 = dontCheck super.primitive_0_7_1_0;
|
primitive_0_7_1_0 = dontCheck super.primitive_0_7_1_0;
|
||||||
primitive_0_9_0_0 = dontCheck super.primitive_0_9_0_0;
|
|
||||||
|
|
||||||
cut-the-crap =
|
cut-the-crap =
|
||||||
let
|
let
|
||||||
|
@ -1126,7 +1093,7 @@ builtins.intersectAttrs super {
|
||||||
}) (addBuildTool pkgs.buildPackages.makeWrapper super.cut-the-crap);
|
}) (addBuildTool pkgs.buildPackages.makeWrapper super.cut-the-crap);
|
||||||
|
|
||||||
# Compiling the readme throws errors and has no purpose in nixpkgs
|
# Compiling the readme throws errors and has no purpose in nixpkgs
|
||||||
aeson-gadt-th = disableCabalFlag "build-readme" (doJailbreak super.aeson-gadt-th);
|
aeson-gadt-th = disableCabalFlag "build-readme" super.aeson-gadt-th;
|
||||||
|
|
||||||
# Fix compilation of Setup.hs by removing the module declaration.
|
# Fix compilation of Setup.hs by removing the module declaration.
|
||||||
# See: https://github.com/tippenein/guid/issues/1
|
# See: https://github.com/tippenein/guid/issues/1
|
||||||
|
@ -1160,6 +1127,9 @@ builtins.intersectAttrs super {
|
||||||
retrie_1_2_0_0 = addTestToolDepends [ pkgs.git pkgs.mercurial ] super.retrie_1_2_0_0;
|
retrie_1_2_0_0 = addTestToolDepends [ pkgs.git pkgs.mercurial ] super.retrie_1_2_0_0;
|
||||||
retrie_1_2_1_1 = addTestToolDepends [ pkgs.git pkgs.mercurial ] super.retrie_1_2_1_1;
|
retrie_1_2_1_1 = addTestToolDepends [ pkgs.git pkgs.mercurial ] super.retrie_1_2_1_1;
|
||||||
|
|
||||||
|
# Just an executable
|
||||||
|
ret = enableSeparateBinOutput super.ret;
|
||||||
|
|
||||||
# there are three very heavy test suites that need external repos, one requires network access
|
# there are three very heavy test suites that need external repos, one requires network access
|
||||||
hevm = dontCheck super.hevm;
|
hevm = dontCheck super.hevm;
|
||||||
|
|
||||||
|
@ -1241,7 +1211,7 @@ builtins.intersectAttrs super {
|
||||||
substituteInPlace src/Nix/Diff/Types.hs \
|
substituteInPlace src/Nix/Diff/Types.hs \
|
||||||
--replace "{-# OPTIONS_GHC -Wno-orphans #-}" "{-# OPTIONS_GHC -Wno-orphans -fconstraint-solver-iterations=0 #-}"
|
--replace "{-# OPTIONS_GHC -Wno-orphans #-}" "{-# OPTIONS_GHC -Wno-orphans -fconstraint-solver-iterations=0 #-}"
|
||||||
'';
|
'';
|
||||||
}) (doJailbreak (dontCheck super.nix-diff));
|
}) (dontCheck super.nix-diff);
|
||||||
|
|
||||||
# mockery's tests depend on hspec-discover which dependso on mockery for its tests
|
# mockery's tests depend on hspec-discover which dependso on mockery for its tests
|
||||||
mockery = dontCheck super.mockery;
|
mockery = dontCheck super.mockery;
|
||||||
|
@ -1312,7 +1282,7 @@ builtins.intersectAttrs super {
|
||||||
rel8 = pkgs.lib.pipe super.rel8 [
|
rel8 = pkgs.lib.pipe super.rel8 [
|
||||||
(addTestToolDepend pkgs.postgresql)
|
(addTestToolDepend pkgs.postgresql)
|
||||||
# https://github.com/NixOS/nixpkgs/issues/198495
|
# https://github.com/NixOS/nixpkgs/issues/198495
|
||||||
(dontCheckIf (!pkgs.postgresql.doCheck))
|
(dontCheckIf (!pkgs.postgresql.doInstallCheck))
|
||||||
];
|
];
|
||||||
|
|
||||||
cloudy = pkgs.lib.pipe super.cloudy [
|
cloudy = pkgs.lib.pipe super.cloudy [
|
||||||
|
@ -1409,10 +1379,6 @@ builtins.intersectAttrs super {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
# Test suite is just the default example executable which doesn't work if not
|
|
||||||
# executed by Setup.hs, but works if started on a proper TTY
|
|
||||||
isocline = dontCheck super.isocline;
|
|
||||||
|
|
||||||
# Some hash implementations are x86 only, but part of the test suite.
|
# Some hash implementations are x86 only, but part of the test suite.
|
||||||
# So executing and building it on non-x86 platforms will always fail.
|
# So executing and building it on non-x86 platforms will always fail.
|
||||||
hashes = dontCheckIf (!pkgs.stdenv.hostPlatform.isx86) super.hashes;
|
hashes = dontCheckIf (!pkgs.stdenv.hostPlatform.isx86) super.hashes;
|
||||||
|
@ -1458,8 +1424,8 @@ builtins.intersectAttrs super {
|
||||||
builtins.mapAttrs (_: fourmoluTestFix) super
|
builtins.mapAttrs (_: fourmoluTestFix) super
|
||||||
)
|
)
|
||||||
fourmolu
|
fourmolu
|
||||||
fourmolu_0_15_0_0
|
fourmolu_0_14_0_0
|
||||||
fourmolu_0_16_2_0
|
fourmolu_0_16_0_0
|
||||||
;
|
;
|
||||||
|
|
||||||
# Test suite needs to execute 'disco' binary
|
# Test suite needs to execute 'disco' binary
|
||||||
|
@ -1475,7 +1441,7 @@ builtins.intersectAttrs super {
|
||||||
"!/oeis/"
|
"!/oeis/"
|
||||||
];
|
];
|
||||||
# disco-examples needs network access
|
# disco-examples needs network access
|
||||||
testTarget = "disco-tests";
|
testTargets = [ "disco-tests" ];
|
||||||
}) super.disco;
|
}) super.disco;
|
||||||
|
|
||||||
# Apply a patch which hardcodes the store path of graphviz instead of using
|
# Apply a patch which hardcodes the store path of graphviz instead of using
|
||||||
|
@ -1505,17 +1471,39 @@ builtins.intersectAttrs super {
|
||||||
|
|
||||||
# Test have become more fussy in >= 2.0. We need to have which available for
|
# Test have become more fussy in >= 2.0. We need to have which available for
|
||||||
# tests to succeed and the makefile no longer finds happy by itself.
|
# tests to succeed and the makefile no longer finds happy by itself.
|
||||||
happy_2_1_3 = overrideCabal (drv: {
|
inherit
|
||||||
buildTools = drv.buildTools or [ ] ++ [ pkgs.buildPackages.which ];
|
(lib.mapAttrs
|
||||||
preCheck =
|
(
|
||||||
drv.preCheck or ""
|
_:
|
||||||
+ ''
|
overrideCabal (drv: {
|
||||||
export PATH="$PWD/dist/build/happy:$PATH"
|
buildTools = drv.buildTools or [ ] ++ [ pkgs.buildPackages.which ];
|
||||||
'';
|
preCheck =
|
||||||
}) super.happy_2_1_3;
|
drv.preCheck or ""
|
||||||
|
+ ''
|
||||||
|
export PATH="$PWD/dist/build/happy:$PATH"
|
||||||
|
'';
|
||||||
|
})
|
||||||
|
)
|
||||||
|
{
|
||||||
|
inherit (super) happy;
|
||||||
|
happy_2_1_5 = super.happy_2_1_5.override {
|
||||||
|
happy-lib = self.happy-lib_2_1_5;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
)
|
||||||
|
happy_2_1_5
|
||||||
|
happy
|
||||||
|
;
|
||||||
|
|
||||||
# Additionally install documentation
|
# Additionally install documentation
|
||||||
jacinda = overrideCabal (drv: {
|
jacinda = overrideCabal (drv: {
|
||||||
enableSeparateDocOutput = true;
|
enableSeparateDocOutput = true;
|
||||||
|
# Test suite is broken by DOS line endings inserted by Hackage revisions
|
||||||
|
# https://github.com/vmchale/jacinda/issues/5
|
||||||
|
postPatch = ''
|
||||||
|
${drv.postPatch or ""}
|
||||||
|
${pkgs.buildPackages.dos2unix}/bin/dos2unix *.cabal
|
||||||
|
'';
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
${drv.postInstall or ""}
|
${drv.postInstall or ""}
|
||||||
|
|
||||||
|
@ -1565,9 +1553,9 @@ builtins.intersectAttrs super {
|
||||||
# is not commonly installed on systems, so we add it to PATH. Closure size
|
# is not commonly installed on systems, so we add it to PATH. Closure size
|
||||||
# penalty is about 10MB at the time of writing this (2022-08-20).
|
# penalty is about 10MB at the time of writing this (2022-08-20).
|
||||||
cabal-install = overrideCabal (old: {
|
cabal-install = overrideCabal (old: {
|
||||||
executableToolDepends = [
|
buildTools = [
|
||||||
pkgs.buildPackages.makeWrapper
|
pkgs.buildPackages.makeWrapper
|
||||||
] ++ old.buildToolDepends or [ ];
|
] ++ old.buildTools or [ ];
|
||||||
postInstall =
|
postInstall =
|
||||||
old.postInstall
|
old.postInstall
|
||||||
+ ''
|
+ ''
|
||||||
|
@ -1639,14 +1627,21 @@ builtins.intersectAttrs super {
|
||||||
}
|
}
|
||||||
) super)
|
) super)
|
||||||
gi-javascriptcore
|
gi-javascriptcore
|
||||||
|
gi-javascriptcore4
|
||||||
|
gi-javascriptcore6
|
||||||
gi-webkit2webextension
|
gi-webkit2webextension
|
||||||
gi-gtk_4_0_11
|
gi-gtk_4_0_12
|
||||||
gi-gdk_4_0_9
|
gi-gdk_4_0_10
|
||||||
|
gi-gdk4
|
||||||
|
gi-gdkx114
|
||||||
|
gi-gtk4
|
||||||
|
gi-gtksource5
|
||||||
gi-gsk
|
gi-gsk
|
||||||
gi-adwaita
|
gi-adwaita
|
||||||
sdl2-ttf
|
sdl2-ttf
|
||||||
sdl2
|
sdl2
|
||||||
dear-imgui
|
dear-imgui
|
||||||
|
libremidi
|
||||||
;
|
;
|
||||||
|
|
||||||
webkit2gtk3-javascriptcore = lib.pipe super.webkit2gtk3-javascriptcore [
|
webkit2gtk3-javascriptcore = lib.pipe super.webkit2gtk3-javascriptcore [
|
||||||
|
@ -1673,7 +1668,7 @@ builtins.intersectAttrs super {
|
||||||
mpiImpl = pkgs.mpi.pname;
|
mpiImpl = pkgs.mpi.pname;
|
||||||
disableUnused = with builtins; map disableCabalFlag (filter (n: n != mpiImpl) validMpi);
|
disableUnused = with builtins; map disableCabalFlag (filter (n: n != mpiImpl) validMpi);
|
||||||
in
|
in
|
||||||
lib.pipe (super.mpi-hs_0_7_3_1.override { ompi = pkgs.mpi; }) (
|
lib.pipe (super.mpi-hs.override { ompi = pkgs.mpi; }) (
|
||||||
[
|
[
|
||||||
(addTestToolDepends [
|
(addTestToolDepends [
|
||||||
pkgs.openssh
|
pkgs.openssh
|
||||||
|
@ -1696,13 +1691,17 @@ builtins.intersectAttrs super {
|
||||||
mpi-hs-binary
|
mpi-hs-binary
|
||||||
;
|
;
|
||||||
|
|
||||||
postgresql-libpq = overrideCabal (drv: {
|
postgresql-libpq = lib.pipe super.postgresql-libpq [
|
||||||
# Using use-pkg-config flag, because pg_config won't work when cross-compiling.
|
(x: x.override { postgresql-libpq-configure = null; })
|
||||||
configureFlags = drv.configureFlags or [ ] ++ [ "-fuse-pkg-config" ];
|
(appendConfigureFlag "-fuse-pkg-config")
|
||||||
# Move postgresql from SystemDepends to PkgconfigDepends
|
(addBuildDepend self.postgresql-libpq-pkgconfig)
|
||||||
libraryPkgconfigDepends = drv.librarySystemDepends;
|
];
|
||||||
librarySystemDepends = [ ];
|
|
||||||
}) super.postgresql-libpq;
|
postgresql-libpq-configure = overrideCabal (drv: {
|
||||||
|
librarySystemDepends = (drv.librarySystemDepends or [ ]) ++ [ pkgs.libpq ];
|
||||||
|
}) super.postgresql-libpq-configure;
|
||||||
|
|
||||||
|
postgresql-libpq-pkgconfig = addPkgconfigDepend pkgs.libpq super.postgresql-libpq-pkgconfig;
|
||||||
|
|
||||||
# Test failure is related to a GHC implementation detail of primitives and doesn't
|
# Test failure is related to a GHC implementation detail of primitives and doesn't
|
||||||
# cause actual problems in dependent packages, see https://github.com/lehins/pvar/issues/4
|
# cause actual problems in dependent packages, see https://github.com/lehins/pvar/issues/4
|
||||||
|
@ -1718,16 +1717,57 @@ builtins.intersectAttrs super {
|
||||||
xmobar = enableSeparateBinOutput super.xmobar;
|
xmobar = enableSeparateBinOutput super.xmobar;
|
||||||
|
|
||||||
# 2024-08-09: Disable some cabal-doctest tests pending further investigation.
|
# 2024-08-09: Disable some cabal-doctest tests pending further investigation.
|
||||||
doctest = overrideCabal (drv: {
|
inherit
|
||||||
testFlags = drv.testFlags or [ ] ++ [
|
(lib.mapAttrs (
|
||||||
# These tests require cabal-install
|
_: doctest:
|
||||||
"--skip=/Cabal.Options"
|
lib.pipe doctest [
|
||||||
"--skip=/Cabal.Paths/paths"
|
(overrideCabal (drv: {
|
||||||
];
|
patches = drv.patches or [ ] ++ [
|
||||||
}) super.doctest;
|
(pkgs.fetchpatch {
|
||||||
|
name = "doctest-0.23.0-ghc-9.12.patch";
|
||||||
|
url = "https://github.com/sol/doctest/commit/77373c5d84cd5e59ea86ec30b9ada874f50fad9e.patch";
|
||||||
|
sha256 = "07dx99lna17fni1ccbklijx1ckkf2p4kk9wvkwib0ihmra70zpn2";
|
||||||
|
includes = [ "test/**" ];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
testFlags = drv.testFlags or [ ] ++ [
|
||||||
|
# These tests require cabal-install (would cause infinite recursion)
|
||||||
|
"--skip=/Cabal.Options"
|
||||||
|
"--skip=/Cabal.Paths/paths"
|
||||||
|
"--skip=/Cabal.ReplOptions" # >= 0.23
|
||||||
|
];
|
||||||
|
}))
|
||||||
|
doDistribute
|
||||||
|
]
|
||||||
|
) { inherit (super) doctest doctest_0_23_0; })
|
||||||
|
doctest
|
||||||
|
doctest_0_23_0
|
||||||
|
;
|
||||||
|
|
||||||
# tracked upstream: https://github.com/snapframework/openssl-streams/pull/11
|
# tracked upstream: https://github.com/snapframework/openssl-streams/pull/11
|
||||||
# certificate used only 1024 Bit RSA key and SHA-1, which is not allowed in OpenSSL 3.1+
|
# certificate used only 1024 Bit RSA key and SHA-1, which is not allowed in OpenSSL 3.1+
|
||||||
# security level 2
|
# security level 2
|
||||||
openssl-streams = appendPatch ./patches/openssl-streams-cert.patch super.openssl-streams;
|
openssl-streams = appendPatch ./patches/openssl-streams-cert.patch super.openssl-streams;
|
||||||
|
|
||||||
|
libtorch-ffi =
|
||||||
|
appendConfigureFlags
|
||||||
|
(
|
||||||
|
[
|
||||||
|
"--extra-include-dirs=${lib.getDev pkgs.libtorch-bin}/include/torch/csrc/api/include"
|
||||||
|
]
|
||||||
|
++ (lib.optionals pkgs.config.cudaSupport [
|
||||||
|
"-f"
|
||||||
|
"cuda"
|
||||||
|
])
|
||||||
|
)
|
||||||
|
(
|
||||||
|
super.libtorch-ffi.override ({
|
||||||
|
c10 = pkgs.libtorch-bin;
|
||||||
|
torch = pkgs.libtorch-bin;
|
||||||
|
torch_cpu = pkgs.libtorch-bin;
|
||||||
|
})
|
||||||
|
);
|
||||||
|
|
||||||
|
# Upper bounds of text and bytestring too strict: https://github.com/zsedem/haskell-cpython/pull/24
|
||||||
|
cpython = doJailbreak super.cpython;
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@ let
|
||||||
});
|
});
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
tensorflow-proto = doJailbreak (setTensorflowSourceRoot "tensorflow-proto" super.tensorflow-proto);
|
tensorflow-proto = setTensorflowSourceRoot "tensorflow-proto" super.tensorflow-proto;
|
||||||
|
|
||||||
tensorflow = overrideCabal (drv: {
|
tensorflow = overrideCabal (drv: {
|
||||||
libraryHaskellDepends = drv.libraryHaskellDepends ++ [ self.vector-split ];
|
libraryHaskellDepends = drv.libraryHaskellDepends ++ [ self.vector-split ];
|
||||||
|
|
|
@ -126,7 +126,9 @@ in
|
||||||
benchmarkHaskellDepends ? [ ],
|
benchmarkHaskellDepends ? [ ],
|
||||||
benchmarkSystemDepends ? [ ],
|
benchmarkSystemDepends ? [ ],
|
||||||
benchmarkFrameworkDepends ? [ ],
|
benchmarkFrameworkDepends ? [ ],
|
||||||
|
# testTarget is deprecated. Use testTargets instead.
|
||||||
testTarget ? "",
|
testTarget ? "",
|
||||||
|
testTargets ? lib.strings.splitString " " testTarget,
|
||||||
testFlags ? [ ],
|
testFlags ? [ ],
|
||||||
broken ? false,
|
broken ? false,
|
||||||
preCompileBuildDriver ? null,
|
preCompileBuildDriver ? null,
|
||||||
|
@ -537,6 +539,11 @@ let
|
||||||
exec "$@"
|
exec "$@"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
testTargetsString =
|
||||||
|
lib.warnIf (testTarget != "")
|
||||||
|
"haskellPackages.mkDerivation: testTarget is deprecated. Use testTargets instead"
|
||||||
|
(lib.concatStringsSep " " testTargets);
|
||||||
|
|
||||||
in
|
in
|
||||||
lib.fix (
|
lib.fix (
|
||||||
drv:
|
drv:
|
||||||
|
@ -765,7 +772,7 @@ lib.fix (
|
||||||
${lib.escapeShellArgs (builtins.map (opt: "--test-option=${opt}") testFlags)}
|
${lib.escapeShellArgs (builtins.map (opt: "--test-option=${opt}") testFlags)}
|
||||||
)
|
)
|
||||||
export NIX_GHC_PACKAGE_PATH_FOR_TEST="''${NIX_GHC_PACKAGE_PATH_FOR_TEST:-$packageConfDir:}"
|
export NIX_GHC_PACKAGE_PATH_FOR_TEST="''${NIX_GHC_PACKAGE_PATH_FOR_TEST:-$packageConfDir:}"
|
||||||
${setupCommand} test ${testTarget} $checkFlags ''${checkFlagsArray:+"''${checkFlagsArray[@]}"}
|
${setupCommand} test ${testTargetsString} $checkFlags ''${checkFlagsArray:+"''${checkFlagsArray[@]}"}
|
||||||
runHook postCheck
|
runHook postCheck
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
38854
pkgs/development/haskell-modules/hackage-packages.nix
generated
38854
pkgs/development/haskell-modules/hackage-packages.nix
generated
File diff suppressed because it is too large
Load diff
|
@ -41,17 +41,6 @@ self: super:
|
||||||
|
|
||||||
nix-linter = self.callPackage ../../development/tools/analysis/nix-linter { };
|
nix-linter = self.callPackage ../../development/tools/analysis/nix-linter { };
|
||||||
|
|
||||||
# hasura graphql-engine is not released to hackage.
|
|
||||||
# https://github.com/hasura/graphql-engine/issues/7391
|
|
||||||
ci-info = self.callPackage ../misc/haskell/hasura/ci-info.nix { };
|
|
||||||
pg-client = self.callPackage ../misc/haskell/hasura/pg-client.nix { };
|
|
||||||
graphql-parser = self.callPackage ../misc/haskell/hasura/graphql-parser.nix { };
|
|
||||||
graphql-engine = self.callPackage ../misc/haskell/hasura/graphql-engine.nix { };
|
|
||||||
kriti-lang = self.callPackage ../misc/haskell/hasura/kriti-lang.nix { };
|
|
||||||
hasura-resource-pool = self.callPackage ../misc/haskell/hasura/pool.nix { };
|
|
||||||
hasura-ekg-core = self.callPackage ../misc/haskell/hasura/ekg-core.nix { };
|
|
||||||
hasura-ekg-json = self.callPackage ../misc/haskell/hasura/ekg-json.nix { };
|
|
||||||
|
|
||||||
# Unofficial fork until PRs are merged https://github.com/pcapriotti/optparse-applicative/pulls/roberth
|
# Unofficial fork until PRs are merged https://github.com/pcapriotti/optparse-applicative/pulls/roberth
|
||||||
# cabal2nix --maintainer roberth https://github.com/hercules-ci/optparse-applicative.git > pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix
|
# cabal2nix --maintainer roberth https://github.com/hercules-ci/optparse-applicative.git > pkgs/development/misc/haskell/hercules-ci-optparse-applicative.nix
|
||||||
hercules-ci-optparse-applicative =
|
hercules-ci-optparse-applicative =
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
--- a/cabal-install.cabal
|
||||||
|
+++ b/cabal-install.cabal
|
||||||
|
@@ -261,7 +261,7 @@
|
||||||
|
-- newer directory for symlinks
|
||||||
|
build-depends: Win32 >= 2.8 && < 3, directory >=1.3.1.0
|
||||||
|
else
|
||||||
|
- build-depends: unix >= 2.5 && < 2.8 || >= 2.8.6.0 && < 2.9
|
||||||
|
+ build-depends: unix >= 2.5 && < 2.9
|
||||||
|
|
||||||
|
if flag(lukko)
|
||||||
|
build-depends: lukko >= 0.1 && <0.2
|
|
@ -2,12 +2,12 @@ diff --git a/Utility/FreeDesktop.hs b/Utility/FreeDesktop.hs
|
||||||
index 896b89b991..6cbb4f90ae 100644
|
index 896b89b991..6cbb4f90ae 100644
|
||||||
--- a/Utility/FreeDesktop.hs
|
--- a/Utility/FreeDesktop.hs
|
||||||
+++ b/Utility/FreeDesktop.hs
|
+++ b/Utility/FreeDesktop.hs
|
||||||
@@ -112,7 +112,7 @@ desktopfile f = f ++ ".desktop"
|
@@ -106,7 +106,7 @@ desktopfile f = toOsPath $ f ++ ".desktop"
|
||||||
|
|
||||||
{- Directory used for installation of system wide data files.. -}
|
{- Directory used for installation of system wide data files.. -}
|
||||||
systemDataDir :: FilePath
|
systemDataDir :: OsPath
|
||||||
-systemDataDir = "/usr/share"
|
-systemDataDir = literalOsPath "/usr/share"
|
||||||
+systemDataDir = "/share"
|
+systemDataDir = literalOsPath "/share"
|
||||||
|
|
||||||
{- Directory used for installation of system wide config files. -}
|
{- Directory used for installation of system wide config files. -}
|
||||||
systemConfigDir :: FilePath
|
systemConfigDir :: OsPath
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
diff --git a/gogol-core.cabal b/gogol-core.cabal
|
|
||||||
index 4c47988..caa4796 100644
|
|
||||||
--- a/gogol-core.cabal
|
|
||||||
+++ b/gogol-core.cabal
|
|
||||||
@@ -62,7 +62,7 @@ library
|
|
||||||
, lens >= 4.4
|
|
||||||
, resourcet >= 1.1
|
|
||||||
, scientific >= 0.3
|
|
||||||
- , servant >= 0.4.4
|
|
||||||
+ , servant >= 0.14.1
|
|
||||||
, text >= 1.1
|
|
||||||
, unordered-containers >= 0.2.5
|
|
||||||
|
|
||||||
diff --git a/src/Network/Google/Prelude.hs b/src/Network/Google/Prelude.hs
|
|
||||||
index a4ad9de..795c690 100644
|
|
||||||
--- a/src/Network/Google/Prelude.hs
|
|
||||||
+++ b/src/Network/Google/Prelude.hs
|
|
||||||
@@ -28,7 +28,7 @@ import Network.HTTP.Client as Export (RequestBody)
|
|
||||||
import Numeric.Natural as Export (Natural)
|
|
||||||
import Prelude as Export hiding (product, span, any, Word)
|
|
||||||
import Servant.API as Export hiding (Headers, Link, getResponse, Stream, ResponseHeader, Header, header)
|
|
||||||
-import Servant.Utils.Links as Export hiding (Link)
|
|
||||||
+import Servant.Links as Export hiding (Link)
|
|
||||||
import Web.HttpApiData as Export (FromHttpApiData (..), ToHttpApiData (..))
|
|
||||||
|
|
||||||
import Network.Google.Data.Bytes as Export
|
|
|
@ -1,21 +0,0 @@
|
||||||
diff --git a/password/password.cabal b/password/password.cabal
|
|
||||||
index 506457e..8fa978b 100644
|
|
||||||
--- a/password.cabal
|
|
||||||
+++ b/password.cabal
|
|
||||||
@@ -186,6 +186,8 @@ test-suite password-tasty
|
|
||||||
other-modules:
|
|
||||||
Scrypt
|
|
||||||
Data.Password.Scrypt
|
|
||||||
+ build-depends:
|
|
||||||
+ scrypt
|
|
||||||
ghc-options:
|
|
||||||
-threaded -O2 -rtsopts -with-rtsopts=-N
|
|
||||||
build-depends:
|
|
||||||
@@ -195,7 +197,6 @@ test-suite password-tasty
|
|
||||||
, bytestring
|
|
||||||
, memory
|
|
||||||
, quickcheck-instances
|
|
||||||
- , scrypt
|
|
||||||
, tasty
|
|
||||||
, tasty-hunit
|
|
||||||
, tasty-quickcheck
|
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
stdenv,
|
stdenv,
|
||||||
lib,
|
lib,
|
||||||
|
testers,
|
||||||
buildPackages,
|
buildPackages,
|
||||||
fetchFromGitLab,
|
fetchFromGitLab,
|
||||||
python3,
|
python3,
|
||||||
|
@ -253,7 +254,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
moveToOutput "bin/pw-jack" "$jack"
|
moveToOutput "bin/pw-jack" "$jack"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.tests.installed-tests = nixosTests.installed-tests.pipewire;
|
passthru.tests = {
|
||||||
|
installed-tests = nixosTests.installed-tests.pipewire;
|
||||||
|
pkg-config = testers.hasPkgConfigModules {
|
||||||
|
package = finalAttrs.finalPackage;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Server and user space API to deal with multimedia pipelines";
|
description = "Server and user space API to deal with multimedia pipelines";
|
||||||
|
@ -265,5 +271,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
kranzes
|
kranzes
|
||||||
k900
|
k900
|
||||||
];
|
];
|
||||||
|
pkgConfigModules = [
|
||||||
|
"libpipewire-0.3"
|
||||||
|
"libspa-0.2"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
stdenv,
|
stdenv,
|
||||||
lib,
|
lib,
|
||||||
pandoc_3_6,
|
pandoc,
|
||||||
typst,
|
typst,
|
||||||
esbuild,
|
esbuild,
|
||||||
deno,
|
deno,
|
||||||
|
@ -39,7 +39,7 @@ stdenv.mkDerivation (final: {
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
wrapProgram $out/bin/quarto \
|
wrapProgram $out/bin/quarto \
|
||||||
--prefix QUARTO_DENO : ${lib.getExe deno} \
|
--prefix QUARTO_DENO : ${lib.getExe deno} \
|
||||||
--prefix QUARTO_PANDOC : ${lib.getExe pandoc_3_6} \
|
--prefix QUARTO_PANDOC : ${lib.getExe pandoc} \
|
||||||
--prefix QUARTO_ESBUILD : ${lib.getExe esbuild} \
|
--prefix QUARTO_ESBUILD : ${lib.getExe esbuild} \
|
||||||
--prefix QUARTO_DART_SASS : ${lib.getExe dart-sass} \
|
--prefix QUARTO_DART_SASS : ${lib.getExe dart-sass} \
|
||||||
--prefix QUARTO_TYPST : ${lib.getExe typst} \
|
--prefix QUARTO_TYPST : ${lib.getExe typst} \
|
||||||
|
|
|
@ -1,41 +0,0 @@
|
||||||
# This has been automatically generated by the script
|
|
||||||
# ./update.sh. This should not be changed by hand.
|
|
||||||
{
|
|
||||||
mkDerivation,
|
|
||||||
aeson,
|
|
||||||
aeson-casing,
|
|
||||||
base,
|
|
||||||
fetchgit,
|
|
||||||
hashable,
|
|
||||||
hpack,
|
|
||||||
lib,
|
|
||||||
template-haskell,
|
|
||||||
text,
|
|
||||||
th-lift-instances,
|
|
||||||
unordered-containers,
|
|
||||||
}:
|
|
||||||
mkDerivation {
|
|
||||||
pname = "ci-info";
|
|
||||||
version = "0.1.0.0";
|
|
||||||
src = fetchgit {
|
|
||||||
url = "https://github.com/hasura/ci-info-hs.git";
|
|
||||||
sha256 = "018vfyg0y2sn497nigjrcs6b1v3i9bna06dsbvgr6wjikcl6dhh4";
|
|
||||||
rev = "68247a83738ac4bb9f719f0e4213aeb7be9565cf";
|
|
||||||
fetchSubmodules = true;
|
|
||||||
};
|
|
||||||
libraryHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
aeson-casing
|
|
||||||
base
|
|
||||||
hashable
|
|
||||||
template-haskell
|
|
||||||
text
|
|
||||||
th-lift-instances
|
|
||||||
unordered-containers
|
|
||||||
];
|
|
||||||
libraryToolDepends = [ hpack ];
|
|
||||||
prePatch = "hpack";
|
|
||||||
homepage = "https://github.com/hasura/ci-info-hs#readme";
|
|
||||||
license = lib.licenses.mit;
|
|
||||||
maintainers = with lib.maintainers; [ lassulus ];
|
|
||||||
}
|
|
|
@ -1,75 +0,0 @@
|
||||||
# This has been automatically generated by the script
|
|
||||||
# ./update.sh. This should not be changed by hand.
|
|
||||||
{
|
|
||||||
mkDerivation,
|
|
||||||
async,
|
|
||||||
atomic-primops,
|
|
||||||
base,
|
|
||||||
containers,
|
|
||||||
criterion,
|
|
||||||
fetchgit,
|
|
||||||
ghc-prim,
|
|
||||||
hashable,
|
|
||||||
hspec,
|
|
||||||
hspec-smallcheck,
|
|
||||||
HUnit,
|
|
||||||
inspection-testing,
|
|
||||||
lib,
|
|
||||||
markdown-unlit,
|
|
||||||
primitive,
|
|
||||||
QuickCheck,
|
|
||||||
smallcheck,
|
|
||||||
text,
|
|
||||||
unordered-containers,
|
|
||||||
}:
|
|
||||||
mkDerivation {
|
|
||||||
pname = "ekg-core";
|
|
||||||
version = "0.1.1.7";
|
|
||||||
src = fetchgit {
|
|
||||||
url = "https://github.com/hasura/ekg-core.git";
|
|
||||||
sha256 = "1syb87iav3fgj6vqjh1izdvw4g0l4mngcyhvcg2nazisw3l685z6";
|
|
||||||
rev = "b0cdc337ca2a52e392d427916ba3e28246b396c0";
|
|
||||||
fetchSubmodules = true;
|
|
||||||
};
|
|
||||||
libraryHaskellDepends = [
|
|
||||||
atomic-primops
|
|
||||||
base
|
|
||||||
containers
|
|
||||||
ghc-prim
|
|
||||||
hashable
|
|
||||||
inspection-testing
|
|
||||||
primitive
|
|
||||||
text
|
|
||||||
unordered-containers
|
|
||||||
];
|
|
||||||
testHaskellDepends = [
|
|
||||||
async
|
|
||||||
atomic-primops
|
|
||||||
base
|
|
||||||
containers
|
|
||||||
ghc-prim
|
|
||||||
hashable
|
|
||||||
hspec
|
|
||||||
hspec-smallcheck
|
|
||||||
HUnit
|
|
||||||
inspection-testing
|
|
||||||
markdown-unlit
|
|
||||||
primitive
|
|
||||||
QuickCheck
|
|
||||||
smallcheck
|
|
||||||
text
|
|
||||||
unordered-containers
|
|
||||||
];
|
|
||||||
testToolDepends = [ markdown-unlit ];
|
|
||||||
benchmarkHaskellDepends = [
|
|
||||||
base
|
|
||||||
criterion
|
|
||||||
];
|
|
||||||
doHaddock = false;
|
|
||||||
homepage = "https://github.com/tibbe/ekg-core";
|
|
||||||
description = "Tracking of system metrics";
|
|
||||||
license = lib.licenses.bsd3;
|
|
||||||
hydraPlatforms = lib.platforms.none;
|
|
||||||
maintainers = with lib.maintainers; [ lassulus ];
|
|
||||||
broken = true;
|
|
||||||
}
|
|
|
@ -1,46 +0,0 @@
|
||||||
# This has been automatically generated by the script
|
|
||||||
# ./update.sh. This should not be changed by hand.
|
|
||||||
{
|
|
||||||
mkDerivation,
|
|
||||||
aeson,
|
|
||||||
base,
|
|
||||||
ekg-core,
|
|
||||||
fetchgit,
|
|
||||||
hspec,
|
|
||||||
lib,
|
|
||||||
text,
|
|
||||||
unordered-containers,
|
|
||||||
vector,
|
|
||||||
}:
|
|
||||||
mkDerivation {
|
|
||||||
pname = "ekg-json";
|
|
||||||
version = "0.1.0.7";
|
|
||||||
src = fetchgit {
|
|
||||||
url = "https://github.com/hasura/ekg-json.git";
|
|
||||||
sha256 = "17kd2f1695dmf5l95iz1w86hapc4f1gfrd0ld3ivffa2q5vxbi70";
|
|
||||||
rev = "d1c5031b49a5559cf4b4f6beb0238b872890a48c";
|
|
||||||
fetchSubmodules = true;
|
|
||||||
};
|
|
||||||
libraryHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
base
|
|
||||||
ekg-core
|
|
||||||
text
|
|
||||||
unordered-containers
|
|
||||||
vector
|
|
||||||
];
|
|
||||||
testHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
base
|
|
||||||
ekg-core
|
|
||||||
hspec
|
|
||||||
text
|
|
||||||
unordered-containers
|
|
||||||
];
|
|
||||||
homepage = "https://github.com/tibbe/ekg-json";
|
|
||||||
description = "JSON encoding of ekg metrics";
|
|
||||||
license = lib.licenses.bsd3;
|
|
||||||
hydraPlatforms = lib.platforms.none;
|
|
||||||
maintainers = with lib.maintainers; [ lassulus ];
|
|
||||||
broken = true;
|
|
||||||
}
|
|
|
@ -1,406 +0,0 @@
|
||||||
# This has been automatically generated by the script
|
|
||||||
# ./update.sh. This should not be changed by hand.
|
|
||||||
{
|
|
||||||
mkDerivation,
|
|
||||||
aeson,
|
|
||||||
aeson-casing,
|
|
||||||
aeson-qq,
|
|
||||||
ansi-wl-pprint,
|
|
||||||
asn1-encoding,
|
|
||||||
asn1-types,
|
|
||||||
async,
|
|
||||||
attoparsec,
|
|
||||||
attoparsec-iso8601,
|
|
||||||
auto-update,
|
|
||||||
base,
|
|
||||||
base16-bytestring,
|
|
||||||
base64-bytestring,
|
|
||||||
binary,
|
|
||||||
byteorder,
|
|
||||||
bytestring,
|
|
||||||
case-insensitive,
|
|
||||||
ci-info,
|
|
||||||
conduit,
|
|
||||||
connection,
|
|
||||||
containers,
|
|
||||||
cron,
|
|
||||||
cryptonite,
|
|
||||||
data-default-class,
|
|
||||||
data-has,
|
|
||||||
deepseq,
|
|
||||||
dependent-map,
|
|
||||||
dependent-sum,
|
|
||||||
directory,
|
|
||||||
either,
|
|
||||||
ekg-core,
|
|
||||||
ekg-json,
|
|
||||||
exceptions,
|
|
||||||
fast-logger,
|
|
||||||
fetchgit,
|
|
||||||
file-embed,
|
|
||||||
filepath,
|
|
||||||
ghc-heap-view,
|
|
||||||
graphql-parser,
|
|
||||||
hashable,
|
|
||||||
hashable-time,
|
|
||||||
haskell-src-meta,
|
|
||||||
hedgehog,
|
|
||||||
hspec,
|
|
||||||
hspec-core,
|
|
||||||
hspec-discover,
|
|
||||||
hspec-expectations,
|
|
||||||
hspec-expectations-lifted,
|
|
||||||
hspec-hedgehog,
|
|
||||||
hspec-wai,
|
|
||||||
hspec-wai-json,
|
|
||||||
http-api-data,
|
|
||||||
http-client,
|
|
||||||
http-client-tls,
|
|
||||||
http-conduit,
|
|
||||||
http-media,
|
|
||||||
http-types,
|
|
||||||
immortal,
|
|
||||||
insert-ordered-containers,
|
|
||||||
jose,
|
|
||||||
kan-extensions,
|
|
||||||
kriti-lang,
|
|
||||||
lens,
|
|
||||||
lens-aeson,
|
|
||||||
lib,
|
|
||||||
libyaml,
|
|
||||||
lifted-async,
|
|
||||||
lifted-base,
|
|
||||||
list-t,
|
|
||||||
memory,
|
|
||||||
mime-types,
|
|
||||||
mmorph,
|
|
||||||
monad-control,
|
|
||||||
monad-logger,
|
|
||||||
monad-loops,
|
|
||||||
monad-validate,
|
|
||||||
mtl,
|
|
||||||
mustache,
|
|
||||||
mysql,
|
|
||||||
mysql-simple,
|
|
||||||
natural-transformation,
|
|
||||||
network,
|
|
||||||
network-uri,
|
|
||||||
odbc,
|
|
||||||
openapi3,
|
|
||||||
optparse-applicative,
|
|
||||||
optparse-generic,
|
|
||||||
parsec,
|
|
||||||
pem,
|
|
||||||
pg-client,
|
|
||||||
postgresql-binary,
|
|
||||||
postgresql-libpq,
|
|
||||||
postgresql-simple,
|
|
||||||
pretty-simple,
|
|
||||||
process,
|
|
||||||
profunctors,
|
|
||||||
psqueues,
|
|
||||||
QuickCheck,
|
|
||||||
quickcheck-instances,
|
|
||||||
random,
|
|
||||||
regex-tdfa,
|
|
||||||
resource-pool,
|
|
||||||
resourcet,
|
|
||||||
retry,
|
|
||||||
safe,
|
|
||||||
safe-exceptions,
|
|
||||||
scientific,
|
|
||||||
semialign,
|
|
||||||
semigroups,
|
|
||||||
semver,
|
|
||||||
shakespeare,
|
|
||||||
some,
|
|
||||||
split,
|
|
||||||
Spock-core,
|
|
||||||
stm,
|
|
||||||
stm-containers,
|
|
||||||
tagged,
|
|
||||||
template-haskell,
|
|
||||||
text,
|
|
||||||
text-builder,
|
|
||||||
text-conversions,
|
|
||||||
th-lift,
|
|
||||||
th-lift-instances,
|
|
||||||
these,
|
|
||||||
time,
|
|
||||||
tls,
|
|
||||||
tmp-postgres,
|
|
||||||
transformers,
|
|
||||||
transformers-base,
|
|
||||||
typed-process,
|
|
||||||
unix,
|
|
||||||
unliftio-core,
|
|
||||||
unordered-containers,
|
|
||||||
uri-bytestring,
|
|
||||||
uri-encode,
|
|
||||||
url,
|
|
||||||
utf8-string,
|
|
||||||
uuid,
|
|
||||||
validation,
|
|
||||||
vector,
|
|
||||||
vector-instances,
|
|
||||||
wai,
|
|
||||||
wai-extra,
|
|
||||||
warp,
|
|
||||||
websockets,
|
|
||||||
witch,
|
|
||||||
wreq,
|
|
||||||
x509,
|
|
||||||
x509-store,
|
|
||||||
x509-system,
|
|
||||||
x509-validation,
|
|
||||||
yaml,
|
|
||||||
zlib,
|
|
||||||
}:
|
|
||||||
mkDerivation {
|
|
||||||
pname = "graphql-engine";
|
|
||||||
version = "1.0.0";
|
|
||||||
src = fetchgit {
|
|
||||||
url = "https://github.com/hasura/graphql-engine.git";
|
|
||||||
sha256 = "1r19qw2wxzmngb6sjpin3dk6i5r491brcb0ir4g8kw9d0ic90hpy";
|
|
||||||
rev = "1349e6cdcfdef4b06593b48fe8e2e51b9f9c94e9";
|
|
||||||
fetchSubmodules = true;
|
|
||||||
};
|
|
||||||
postUnpack = "sourceRoot+=/server; echo source root reset to $sourceRoot";
|
|
||||||
isLibrary = true;
|
|
||||||
isExecutable = true;
|
|
||||||
libraryHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
aeson-casing
|
|
||||||
ansi-wl-pprint
|
|
||||||
asn1-encoding
|
|
||||||
asn1-types
|
|
||||||
async
|
|
||||||
attoparsec
|
|
||||||
attoparsec-iso8601
|
|
||||||
auto-update
|
|
||||||
base
|
|
||||||
base16-bytestring
|
|
||||||
base64-bytestring
|
|
||||||
binary
|
|
||||||
byteorder
|
|
||||||
bytestring
|
|
||||||
case-insensitive
|
|
||||||
ci-info
|
|
||||||
connection
|
|
||||||
containers
|
|
||||||
cron
|
|
||||||
cryptonite
|
|
||||||
data-default-class
|
|
||||||
data-has
|
|
||||||
deepseq
|
|
||||||
dependent-map
|
|
||||||
dependent-sum
|
|
||||||
directory
|
|
||||||
either
|
|
||||||
ekg-core
|
|
||||||
ekg-json
|
|
||||||
exceptions
|
|
||||||
fast-logger
|
|
||||||
file-embed
|
|
||||||
filepath
|
|
||||||
ghc-heap-view
|
|
||||||
graphql-parser
|
|
||||||
hashable
|
|
||||||
hashable-time
|
|
||||||
http-api-data
|
|
||||||
http-client
|
|
||||||
http-client-tls
|
|
||||||
http-conduit
|
|
||||||
http-media
|
|
||||||
http-types
|
|
||||||
immortal
|
|
||||||
insert-ordered-containers
|
|
||||||
jose
|
|
||||||
kan-extensions
|
|
||||||
kriti-lang
|
|
||||||
lens
|
|
||||||
lens-aeson
|
|
||||||
lifted-async
|
|
||||||
lifted-base
|
|
||||||
list-t
|
|
||||||
memory
|
|
||||||
mime-types
|
|
||||||
mmorph
|
|
||||||
monad-control
|
|
||||||
monad-loops
|
|
||||||
monad-validate
|
|
||||||
mtl
|
|
||||||
mustache
|
|
||||||
mysql
|
|
||||||
mysql-simple
|
|
||||||
network
|
|
||||||
network-uri
|
|
||||||
odbc
|
|
||||||
openapi3
|
|
||||||
optparse-applicative
|
|
||||||
optparse-generic
|
|
||||||
parsec
|
|
||||||
pem
|
|
||||||
pg-client
|
|
||||||
postgresql-binary
|
|
||||||
postgresql-libpq
|
|
||||||
pretty-simple
|
|
||||||
process
|
|
||||||
profunctors
|
|
||||||
psqueues
|
|
||||||
QuickCheck
|
|
||||||
quickcheck-instances
|
|
||||||
random
|
|
||||||
regex-tdfa
|
|
||||||
resource-pool
|
|
||||||
retry
|
|
||||||
safe-exceptions
|
|
||||||
scientific
|
|
||||||
semialign
|
|
||||||
semigroups
|
|
||||||
semver
|
|
||||||
shakespeare
|
|
||||||
some
|
|
||||||
split
|
|
||||||
Spock-core
|
|
||||||
stm
|
|
||||||
stm-containers
|
|
||||||
tagged
|
|
||||||
template-haskell
|
|
||||||
text
|
|
||||||
text-builder
|
|
||||||
text-conversions
|
|
||||||
these
|
|
||||||
time
|
|
||||||
tls
|
|
||||||
transformers
|
|
||||||
transformers-base
|
|
||||||
unix
|
|
||||||
unordered-containers
|
|
||||||
uri-bytestring
|
|
||||||
uri-encode
|
|
||||||
url
|
|
||||||
utf8-string
|
|
||||||
uuid
|
|
||||||
validation
|
|
||||||
vector
|
|
||||||
vector-instances
|
|
||||||
wai
|
|
||||||
warp
|
|
||||||
websockets
|
|
||||||
witch
|
|
||||||
wreq
|
|
||||||
x509
|
|
||||||
x509-store
|
|
||||||
x509-system
|
|
||||||
x509-validation
|
|
||||||
yaml
|
|
||||||
zlib
|
|
||||||
];
|
|
||||||
executableHaskellDepends = [
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
ekg-core
|
|
||||||
kan-extensions
|
|
||||||
pg-client
|
|
||||||
text
|
|
||||||
text-conversions
|
|
||||||
time
|
|
||||||
unix
|
|
||||||
];
|
|
||||||
testHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
aeson-casing
|
|
||||||
aeson-qq
|
|
||||||
async
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
case-insensitive
|
|
||||||
conduit
|
|
||||||
containers
|
|
||||||
cron
|
|
||||||
dependent-map
|
|
||||||
dependent-sum
|
|
||||||
ekg-core
|
|
||||||
exceptions
|
|
||||||
graphql-parser
|
|
||||||
haskell-src-meta
|
|
||||||
hedgehog
|
|
||||||
hspec
|
|
||||||
hspec-core
|
|
||||||
hspec-discover
|
|
||||||
hspec-expectations
|
|
||||||
hspec-expectations-lifted
|
|
||||||
hspec-hedgehog
|
|
||||||
hspec-wai
|
|
||||||
hspec-wai-json
|
|
||||||
http-client
|
|
||||||
http-client-tls
|
|
||||||
http-conduit
|
|
||||||
http-types
|
|
||||||
insert-ordered-containers
|
|
||||||
jose
|
|
||||||
kan-extensions
|
|
||||||
lens
|
|
||||||
lens-aeson
|
|
||||||
libyaml
|
|
||||||
lifted-base
|
|
||||||
mmorph
|
|
||||||
monad-control
|
|
||||||
monad-logger
|
|
||||||
mtl
|
|
||||||
mysql
|
|
||||||
mysql-simple
|
|
||||||
natural-transformation
|
|
||||||
network
|
|
||||||
network-uri
|
|
||||||
odbc
|
|
||||||
optparse-applicative
|
|
||||||
parsec
|
|
||||||
pg-client
|
|
||||||
postgresql-libpq
|
|
||||||
postgresql-simple
|
|
||||||
process
|
|
||||||
QuickCheck
|
|
||||||
resource-pool
|
|
||||||
resourcet
|
|
||||||
safe
|
|
||||||
safe-exceptions
|
|
||||||
scientific
|
|
||||||
shakespeare
|
|
||||||
split
|
|
||||||
Spock-core
|
|
||||||
stm
|
|
||||||
template-haskell
|
|
||||||
text
|
|
||||||
text-conversions
|
|
||||||
th-lift
|
|
||||||
th-lift-instances
|
|
||||||
time
|
|
||||||
tmp-postgres
|
|
||||||
transformers
|
|
||||||
transformers-base
|
|
||||||
typed-process
|
|
||||||
unix
|
|
||||||
unliftio-core
|
|
||||||
unordered-containers
|
|
||||||
utf8-string
|
|
||||||
vector
|
|
||||||
wai
|
|
||||||
wai-extra
|
|
||||||
warp
|
|
||||||
websockets
|
|
||||||
yaml
|
|
||||||
];
|
|
||||||
testToolDepends = [ hspec-discover ];
|
|
||||||
doCheck = false;
|
|
||||||
homepage = "https://www.hasura.io";
|
|
||||||
description = "GraphQL API over Postgres";
|
|
||||||
license = lib.licenses.asl20;
|
|
||||||
maintainers = with lib.maintainers; [ lassulus ];
|
|
||||||
|
|
||||||
# Needs to be updated for aeson-2.0
|
|
||||||
# https://github.com/hasura/graphql-engine/issues/8369
|
|
||||||
hydraPlatforms = lib.platforms.none;
|
|
||||||
broken = true;
|
|
||||||
}
|
|
|
@ -1,74 +0,0 @@
|
||||||
# This has been automatically generated by the script
|
|
||||||
# ./update.sh. This should not be changed by hand.
|
|
||||||
{
|
|
||||||
mkDerivation,
|
|
||||||
aeson,
|
|
||||||
attoparsec,
|
|
||||||
base,
|
|
||||||
bytestring,
|
|
||||||
deepseq,
|
|
||||||
fetchgit,
|
|
||||||
hashable,
|
|
||||||
hedgehog,
|
|
||||||
lib,
|
|
||||||
prettyprinter,
|
|
||||||
scientific,
|
|
||||||
tasty-bench,
|
|
||||||
template-haskell,
|
|
||||||
text,
|
|
||||||
text-builder,
|
|
||||||
th-lift-instances,
|
|
||||||
unordered-containers,
|
|
||||||
}:
|
|
||||||
mkDerivation {
|
|
||||||
pname = "graphql-parser";
|
|
||||||
version = "0.2.0.0";
|
|
||||||
src = fetchgit {
|
|
||||||
url = "https://github.com/hasura/graphql-parser-hs.git";
|
|
||||||
sha256 = "1xprr5wdhcfnbggkygz71v3za1mmkqv5mbm7h16kpsrhm1m9mpx8";
|
|
||||||
rev = "c311bc15b8d8cef28a846d1d81b0bcc1d59bd956";
|
|
||||||
fetchSubmodules = true;
|
|
||||||
};
|
|
||||||
libraryHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
attoparsec
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
deepseq
|
|
||||||
hashable
|
|
||||||
hedgehog
|
|
||||||
prettyprinter
|
|
||||||
scientific
|
|
||||||
template-haskell
|
|
||||||
text
|
|
||||||
text-builder
|
|
||||||
th-lift-instances
|
|
||||||
unordered-containers
|
|
||||||
];
|
|
||||||
testHaskellDepends = [
|
|
||||||
attoparsec
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
hedgehog
|
|
||||||
prettyprinter
|
|
||||||
text
|
|
||||||
text-builder
|
|
||||||
];
|
|
||||||
benchmarkHaskellDepends = [
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
prettyprinter
|
|
||||||
tasty-bench
|
|
||||||
text
|
|
||||||
text-builder
|
|
||||||
];
|
|
||||||
homepage = "https://github.com/hasura/graphql-parser-hs";
|
|
||||||
description = "Native Haskell GraphQL parser";
|
|
||||||
license = lib.licenses.bsd3;
|
|
||||||
maintainers = with lib.maintainers; [ lassulus ];
|
|
||||||
|
|
||||||
# Needs to be updated for aeson-2.0
|
|
||||||
# https://github.com/hasura/graphql-engine/issues/8369
|
|
||||||
hydraPlatforms = lib.platforms.none;
|
|
||||||
broken = true;
|
|
||||||
}
|
|
|
@ -1,119 +0,0 @@
|
||||||
# This has been automatically generated by the script
|
|
||||||
# ./update.sh. This should not be changed by hand.
|
|
||||||
{
|
|
||||||
mkDerivation,
|
|
||||||
aeson,
|
|
||||||
aeson-pretty,
|
|
||||||
alex,
|
|
||||||
array,
|
|
||||||
base,
|
|
||||||
bytestring,
|
|
||||||
containers,
|
|
||||||
directory,
|
|
||||||
fetchgit,
|
|
||||||
filepath,
|
|
||||||
generic-arbitrary,
|
|
||||||
happy,
|
|
||||||
hspec,
|
|
||||||
hspec-core,
|
|
||||||
hspec-golden,
|
|
||||||
lens,
|
|
||||||
lens-aeson,
|
|
||||||
lib,
|
|
||||||
megaparsec,
|
|
||||||
mtl,
|
|
||||||
network-uri,
|
|
||||||
optparse-applicative,
|
|
||||||
parsec,
|
|
||||||
parser-combinators,
|
|
||||||
pretty-simple,
|
|
||||||
prettyprinter,
|
|
||||||
QuickCheck,
|
|
||||||
raw-strings-qq,
|
|
||||||
safe-exceptions,
|
|
||||||
scientific,
|
|
||||||
text,
|
|
||||||
unordered-containers,
|
|
||||||
utf8-string,
|
|
||||||
vector,
|
|
||||||
}:
|
|
||||||
mkDerivation {
|
|
||||||
pname = "kriti-lang";
|
|
||||||
version = "0.3.1";
|
|
||||||
src = fetchgit {
|
|
||||||
url = "https://github.com/hasura/kriti-lang.git";
|
|
||||||
sha256 = "09v31xp8gkc0p0gfysxyd8yb7lyb1vpgzq8550h3s3msjbapr7pj";
|
|
||||||
rev = "0f0b153b93af5dc6c6e995c016ca4562e8438cec";
|
|
||||||
fetchSubmodules = true;
|
|
||||||
};
|
|
||||||
isLibrary = true;
|
|
||||||
isExecutable = true;
|
|
||||||
libraryHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
array
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
containers
|
|
||||||
lens
|
|
||||||
megaparsec
|
|
||||||
mtl
|
|
||||||
network-uri
|
|
||||||
optparse-applicative
|
|
||||||
parser-combinators
|
|
||||||
prettyprinter
|
|
||||||
scientific
|
|
||||||
text
|
|
||||||
unordered-containers
|
|
||||||
utf8-string
|
|
||||||
vector
|
|
||||||
];
|
|
||||||
libraryToolDepends = [
|
|
||||||
alex
|
|
||||||
happy
|
|
||||||
];
|
|
||||||
executableHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
containers
|
|
||||||
mtl
|
|
||||||
optparse-applicative
|
|
||||||
prettyprinter
|
|
||||||
text
|
|
||||||
utf8-string
|
|
||||||
];
|
|
||||||
testHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
aeson-pretty
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
containers
|
|
||||||
directory
|
|
||||||
filepath
|
|
||||||
generic-arbitrary
|
|
||||||
hspec
|
|
||||||
hspec-core
|
|
||||||
hspec-golden
|
|
||||||
lens
|
|
||||||
lens-aeson
|
|
||||||
mtl
|
|
||||||
optparse-applicative
|
|
||||||
parsec
|
|
||||||
pretty-simple
|
|
||||||
prettyprinter
|
|
||||||
QuickCheck
|
|
||||||
raw-strings-qq
|
|
||||||
safe-exceptions
|
|
||||||
scientific
|
|
||||||
text
|
|
||||||
unordered-containers
|
|
||||||
utf8-string
|
|
||||||
vector
|
|
||||||
];
|
|
||||||
license = lib.licenses.asl20;
|
|
||||||
maintainers = with lib.maintainers; [ lassulus ];
|
|
||||||
|
|
||||||
# Does not compile with ghc-9.2
|
|
||||||
hydraPlatforms = lib.platforms.none;
|
|
||||||
broken = true;
|
|
||||||
}
|
|
|
@ -1,100 +0,0 @@
|
||||||
# This has been automatically generated by the script
|
|
||||||
# ./update.sh. This should not be changed by hand.
|
|
||||||
{
|
|
||||||
mkDerivation,
|
|
||||||
aeson,
|
|
||||||
aeson-casing,
|
|
||||||
async,
|
|
||||||
attoparsec,
|
|
||||||
base,
|
|
||||||
bytestring,
|
|
||||||
ekg-core,
|
|
||||||
fetchgit,
|
|
||||||
file-embed,
|
|
||||||
hashable,
|
|
||||||
hashtables,
|
|
||||||
hasql,
|
|
||||||
hasql-pool,
|
|
||||||
hasql-transaction,
|
|
||||||
hspec,
|
|
||||||
lib,
|
|
||||||
mmorph,
|
|
||||||
monad-control,
|
|
||||||
mtl,
|
|
||||||
postgresql-binary,
|
|
||||||
postgresql-libpq,
|
|
||||||
resource-pool,
|
|
||||||
retry,
|
|
||||||
safe-exceptions,
|
|
||||||
scientific,
|
|
||||||
tasty-bench,
|
|
||||||
template-haskell,
|
|
||||||
text,
|
|
||||||
text-builder,
|
|
||||||
time,
|
|
||||||
transformers-base,
|
|
||||||
uuid,
|
|
||||||
vector,
|
|
||||||
}:
|
|
||||||
mkDerivation {
|
|
||||||
pname = "pg-client";
|
|
||||||
version = "0.1.0";
|
|
||||||
src = fetchgit {
|
|
||||||
url = "https://github.com/hasura/pg-client-hs.git";
|
|
||||||
sha256 = "0ga2bj0mfng25c8kxsvi8i13pnanbnhahxvbq8ijl0bysd41g7zi";
|
|
||||||
rev = "09b40ad8e5d16a78f5d91fe2306676f52caadbc8";
|
|
||||||
fetchSubmodules = true;
|
|
||||||
};
|
|
||||||
libraryHaskellDepends = [
|
|
||||||
aeson
|
|
||||||
aeson-casing
|
|
||||||
async
|
|
||||||
attoparsec
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
ekg-core
|
|
||||||
hashable
|
|
||||||
hashtables
|
|
||||||
mmorph
|
|
||||||
monad-control
|
|
||||||
mtl
|
|
||||||
postgresql-binary
|
|
||||||
postgresql-libpq
|
|
||||||
resource-pool
|
|
||||||
retry
|
|
||||||
safe-exceptions
|
|
||||||
scientific
|
|
||||||
template-haskell
|
|
||||||
text
|
|
||||||
text-builder
|
|
||||||
time
|
|
||||||
transformers-base
|
|
||||||
uuid
|
|
||||||
vector
|
|
||||||
];
|
|
||||||
testHaskellDepends = [
|
|
||||||
async
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
hspec
|
|
||||||
mtl
|
|
||||||
safe-exceptions
|
|
||||||
time
|
|
||||||
];
|
|
||||||
benchmarkHaskellDepends = [
|
|
||||||
base
|
|
||||||
bytestring
|
|
||||||
file-embed
|
|
||||||
hasql
|
|
||||||
hasql-pool
|
|
||||||
hasql-transaction
|
|
||||||
mtl
|
|
||||||
tasty-bench
|
|
||||||
text
|
|
||||||
];
|
|
||||||
homepage = "https://github.com/hasura/platform";
|
|
||||||
license = lib.licenses.asl20;
|
|
||||||
hydraPlatforms = lib.platforms.none;
|
|
||||||
maintainers = with lib.maintainers; [ lassulus ];
|
|
||||||
broken = true;
|
|
||||||
}
|
|
|
@ -1,44 +0,0 @@
|
||||||
# This has been automatically generated by the script
|
|
||||||
# ./update.sh. This should not be changed by hand.
|
|
||||||
{
|
|
||||||
mkDerivation,
|
|
||||||
base,
|
|
||||||
fetchgit,
|
|
||||||
hashable,
|
|
||||||
hspec,
|
|
||||||
lib,
|
|
||||||
monad-control,
|
|
||||||
stm,
|
|
||||||
time,
|
|
||||||
transformers,
|
|
||||||
transformers-base,
|
|
||||||
vector,
|
|
||||||
}:
|
|
||||||
mkDerivation {
|
|
||||||
pname = "resource-pool";
|
|
||||||
version = "0.2.3.2";
|
|
||||||
src = fetchgit {
|
|
||||||
url = "https://github.com/hasura/pool.git";
|
|
||||||
sha256 = "02wa32fl5wq5fk59id54xmxiqjl564r4rhsc79xsgf2j2spj0v94";
|
|
||||||
rev = "dc56753338e7b61220a09bed0469c6dcc5e9fb52";
|
|
||||||
fetchSubmodules = true;
|
|
||||||
};
|
|
||||||
libraryHaskellDepends = [
|
|
||||||
base
|
|
||||||
hashable
|
|
||||||
monad-control
|
|
||||||
stm
|
|
||||||
time
|
|
||||||
transformers
|
|
||||||
transformers-base
|
|
||||||
vector
|
|
||||||
];
|
|
||||||
testHaskellDepends = [
|
|
||||||
base
|
|
||||||
hspec
|
|
||||||
];
|
|
||||||
homepage = "https://github.com/bos/pool";
|
|
||||||
description = "High-performance striped resource pooling implementation";
|
|
||||||
license = lib.licenses.bsd3;
|
|
||||||
maintainers = with lib.maintainers; [ lassulus ];
|
|
||||||
}
|
|
|
@ -1,95 +0,0 @@
|
||||||
#!/usr/bin/env nix-shell
|
|
||||||
#!nix-shell -i bash -p cabal2nix curl jq -I nixpkgs=.
|
|
||||||
#
|
|
||||||
# This script will update the hasura derivations to the latest version using
|
|
||||||
# cabal2nix.
|
|
||||||
#
|
|
||||||
# Note that you should always try building hasura graphql-engine after updating it here, since
|
|
||||||
# some of the overrides in pkgs/development/haskell/configuration-nix.nix may
|
|
||||||
# need to be updated/changed.
|
|
||||||
|
|
||||||
set -eo pipefail
|
|
||||||
|
|
||||||
# This is the directory of this update.sh script.
|
|
||||||
script_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
|
||||||
|
|
||||||
# graphql-engine derivation created with cabal2nix.
|
|
||||||
engine_derivation_file="${script_dir}/graphql-engine.nix"
|
|
||||||
parser_derivation_file="${script_dir}/graphql-parser.nix"
|
|
||||||
ciinfo_derivation_file="${script_dir}/ci-info.nix"
|
|
||||||
pgclient_derivation_file="${script_dir}/pg-client.nix"
|
|
||||||
pool_derivation_file="${script_dir}/pool.nix"
|
|
||||||
ekgcore_derivation_file="${script_dir}/ekg-core.nix"
|
|
||||||
ekgjson_derivation_file="${script_dir}/ekg-json.nix"
|
|
||||||
kritilang_derivation_file="${script_dir}/kriti-lang.nix"
|
|
||||||
|
|
||||||
# TODO: get current revision of graphql-engine in Nixpkgs.
|
|
||||||
# old_version="$(sed -En 's/.*\bversion = "(.*?)".*/\1/p' "$engine_derivation_file")"
|
|
||||||
|
|
||||||
# This is the latest release version of graphql-engine on GitHub.
|
|
||||||
new_version=$(curl --silent "https://api.github.com/repos/hasura/graphql-engine/releases" | jq 'map(select(.prerelease | not)) | .[0].tag_name' --raw-output)
|
|
||||||
|
|
||||||
echo "Running cabal2nix and outputting to ${engine_derivation_file}..."
|
|
||||||
|
|
||||||
echo "# This has been automatically generated by the script" > "$engine_derivation_file"
|
|
||||||
echo "# ./update.sh. This should not be changed by hand." >> "$engine_derivation_file"
|
|
||||||
|
|
||||||
cabal2nix --revision "$new_version" --subpath server --maintainer lassulus --no-check "https://github.com/hasura/graphql-engine.git" >> "$engine_derivation_file"
|
|
||||||
|
|
||||||
echo "Running cabal2nix and outputting to ${parser_derivation_file}..."
|
|
||||||
|
|
||||||
echo "# This has been automatically generated by the script" > "$parser_derivation_file"
|
|
||||||
echo "# ./update.sh. This should not be changed by hand." >> "$parser_derivation_file"
|
|
||||||
|
|
||||||
cabal2nix --maintainer lassulus "https://github.com/hasura/graphql-parser-hs.git" >> "$parser_derivation_file"
|
|
||||||
|
|
||||||
echo "Running cabal2nix and outputting to ${ciinfo_derivation_file}..."
|
|
||||||
|
|
||||||
echo "# This has been automatically generated by the script" > "$ciinfo_derivation_file"
|
|
||||||
echo "# ./update.sh. This should not be changed by hand." >> "$ciinfo_derivation_file"
|
|
||||||
|
|
||||||
cabal2nix --maintainer lassulus "https://github.com/hasura/ci-info-hs.git" >> "$ciinfo_derivation_file"
|
|
||||||
|
|
||||||
echo "Running cabal2nix and outputting to ${pgclient_derivation_file}..."
|
|
||||||
|
|
||||||
echo "# This has been automatically generated by the script" > "$pgclient_derivation_file"
|
|
||||||
echo "# ./update.sh. This should not be changed by hand." >> "$pgclient_derivation_file"
|
|
||||||
|
|
||||||
cabal2nix --maintainer lassulus "https://github.com/hasura/pg-client-hs.git" >> "$pgclient_derivation_file"
|
|
||||||
|
|
||||||
echo "Running cabal2nix and outputting to ${pool_derivation_file}..."
|
|
||||||
|
|
||||||
echo "# This has been automatically generated by the script" > "$pool_derivation_file"
|
|
||||||
echo "# ./update.sh. This should not be changed by hand." >> "$pool_derivation_file"
|
|
||||||
|
|
||||||
cabal2nix --maintainer lassulus "https://github.com/hasura/pool.git" >> "$pool_derivation_file"
|
|
||||||
|
|
||||||
echo "Running cabal2nix and outputting to ${ekgcore_derivation_file}..."
|
|
||||||
|
|
||||||
echo "# This has been automatically generated by the script" > "$ekgcore_derivation_file"
|
|
||||||
echo "# ./update.sh. This should not be changed by hand." >> "$ekgcore_derivation_file"
|
|
||||||
|
|
||||||
cabal2nix --maintainer lassulus "https://github.com/hasura/ekg-core.git" >> "$ekgcore_derivation_file"
|
|
||||||
|
|
||||||
echo "Running cabal2nix and outputting to ${ekgjson_derivation_file}..."
|
|
||||||
|
|
||||||
echo "# This has been automatically generated by the script" > "$ekgjson_derivation_file"
|
|
||||||
echo "# ./update.sh. This should not be changed by hand." >> "$ekgjson_derivation_file"
|
|
||||||
|
|
||||||
cabal2nix --maintainer lassulus "https://github.com/hasura/ekg-json.git" >> "$ekgjson_derivation_file"
|
|
||||||
|
|
||||||
echo "Running cabal2nix and outputting to ${kritilang_derivation_file}..."
|
|
||||||
|
|
||||||
echo "# This has been automatically generated by the script" > "$kritilang_derivation_file"
|
|
||||||
echo "# ./update.sh. This should not be changed by hand." >> "$kritilang_derivation_file"
|
|
||||||
|
|
||||||
new_kritilang_version=$(curl --silent "https://api.github.com/repos/hasura/kriti-lang/tags" | jq '.[0].name' --raw-output)
|
|
||||||
|
|
||||||
cabal2nix --revision "$new_kritilang_version" --maintainer lassulus "https://github.com/hasura/kriti-lang.git" >> "$kritilang_derivation_file"
|
|
||||||
|
|
||||||
echo "###################"
|
|
||||||
echo "please update pkgs/servers/hasura/cli.nix vendorHash"
|
|
||||||
echo "please update pkgs/development/haskell-modules/configuration-common.nix graphql-engine version"
|
|
||||||
echo "###################"
|
|
||||||
|
|
||||||
echo "Finished."
|
|
|
@ -52,7 +52,8 @@ mkDerivation {
|
||||||
# that only seems to affect Windows. We never build GHC natively on Windows.
|
# that only seems to affect Windows. We never build GHC natively on Windows.
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/24382
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/24382
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/commit/a2c033cf82635c83f3107706634bebee43297b99
|
# https://gitlab.haskell.org/ghc/ghc/-/commit/a2c033cf82635c83f3107706634bebee43297b99
|
||||||
(lib.versionAtLeast ghcVersion "9.12" && lib.versionOlder ghcVersion "9.13");
|
(lib.versionAtLeast ghcVersion "9.6.7" && lib.versionOlder ghcVersion "9.7")
|
||||||
|
|| (lib.versionAtLeast ghcVersion "9.12" && lib.versionOlder ghcVersion "9.15");
|
||||||
isLibrary = false;
|
isLibrary = false;
|
||||||
isExecutable = true;
|
isExecutable = true;
|
||||||
executableHaskellDepends =
|
executableHaskellDepends =
|
||||||
|
|
|
@ -64,6 +64,6 @@ callPackage' ./hadrian.nix (
|
||||||
}
|
}
|
||||||
// lib.optionalAttrs (lib.versionAtLeast ghcVersion "9.11") {
|
// lib.optionalAttrs (lib.versionAtLeast ghcVersion "9.11") {
|
||||||
# See https://gitlab.haskell.org/ghc/ghc/-/commit/145a6477854d4003a07573d5e7ffa0c9a64ae29c
|
# See https://gitlab.haskell.org/ghc/ghc/-/commit/145a6477854d4003a07573d5e7ffa0c9a64ae29c
|
||||||
Cabal = bootPkgs.Cabal_3_14_1_0;
|
Cabal = bootPkgs.Cabal_3_14_1_1;
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
|
@ -9,7 +9,9 @@
|
||||||
# Run
|
# Run
|
||||||
# $ nix-instantiate --eval -E 'with import <nixpkgs> {}; builtins.attrNames pkgs.haskell.packages'
|
# $ nix-instantiate --eval -E 'with import <nixpkgs> {}; builtins.attrNames pkgs.haskell.packages'
|
||||||
# to list for your nixpkgs version.
|
# to list for your nixpkgs version.
|
||||||
supportedGhcVersions ? [ "96" ],
|
supportedGhcVersions ? [
|
||||||
|
(lib.strings.replaceStrings [ "." ] [ "" ] (lib.versions.majorMinor haskellPackages.ghc.version))
|
||||||
|
],
|
||||||
|
|
||||||
# Whether to build hls with the dynamic run-time system.
|
# Whether to build hls with the dynamic run-time system.
|
||||||
# See https://haskell-language-server.readthedocs.io/en/latest/troubleshooting.html#static-binaries for more information.
|
# See https://haskell-language-server.readthedocs.io/en/latest/troubleshooting.html#static-binaries for more information.
|
||||||
|
|
|
@ -1,10 +1,19 @@
|
||||||
{ buildGoModule, hasura-graphql-engine }:
|
{
|
||||||
|
buildGoModule,
|
||||||
|
lib,
|
||||||
|
fetchFromGitHub,
|
||||||
|
}:
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "hasura";
|
pname = "hasura";
|
||||||
version = hasura-graphql-engine.version;
|
version = "2.3.1";
|
||||||
|
|
||||||
src = hasura-graphql-engine.src;
|
src = fetchFromGitHub {
|
||||||
|
owner = "hasura";
|
||||||
|
repo = "graphql-engine";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "1r19qw2wxzmngb6sjpin3dk6i5r491brcb0ir4g8kw9d0ic90hpy";
|
||||||
|
};
|
||||||
modRoot = "./cli";
|
modRoot = "./cli";
|
||||||
|
|
||||||
subPackages = [ "cmd/hasura" ];
|
subPackages = [ "cmd/hasura" ];
|
||||||
|
@ -28,7 +37,9 @@ buildGoModule rec {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
inherit (hasura-graphql-engine.meta) license homepage maintainers;
|
homepage = "https://www.hasura.io";
|
||||||
|
maintainers = [ lib.maintainers.lassulus ];
|
||||||
|
license = lib.licenses.asl20;
|
||||||
description = "Hasura GraphQL Engine CLI";
|
description = "Hasura GraphQL Engine CLI";
|
||||||
mainProgram = "hasura";
|
mainProgram = "hasura";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ pkgs, haskellPackages }:
|
{ pkgs, haskellPackages }:
|
||||||
|
|
||||||
let
|
let
|
||||||
drv = haskellPackages.vector;
|
drv = haskellPackages.random;
|
||||||
docs = pkgs.haskell.lib.compose.documentationTarball drv;
|
docs = pkgs.haskell.lib.compose.documentationTarball drv;
|
||||||
|
|
||||||
in
|
in
|
||||||
|
@ -15,10 +15,10 @@ pkgs.runCommand "test haskell.lib.compose.documentationTarball"
|
||||||
tar xvzf "${docs}/${drv.name}-docs.tar.gz"
|
tar xvzf "${docs}/${drv.name}-docs.tar.gz"
|
||||||
|
|
||||||
# Check for Haddock html
|
# Check for Haddock html
|
||||||
find "${drv.name}-docs" | grep -q "Data-Vector.html"
|
find "${drv.name}-docs" | grep -q "System-Random.html"
|
||||||
|
|
||||||
# Check for source html
|
# Check for source html
|
||||||
find "${drv.name}-docs" | grep -q "src/Data.Vector.html"
|
find "${drv.name}-docs" | grep -q "src/System.Random.html"
|
||||||
|
|
||||||
touch "$out"
|
touch "$out"
|
||||||
''
|
''
|
||||||
|
|
|
@ -68,4 +68,8 @@
|
||||||
maintainers = allMaintainers;
|
maintainers = allMaintainers;
|
||||||
inherit (cabal-install.meta) platforms;
|
inherit (cabal-install.meta) platforms;
|
||||||
};
|
};
|
||||||
|
# `shellFor` adds a `buildCommand` (via `envFunc -> runCommandCC`), which
|
||||||
|
# overrides custom phases. To ensure this test's phases run, we remove
|
||||||
|
# that `buildCommand` from the derivation.
|
||||||
|
buildCommand = null;
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,121 +0,0 @@
|
||||||
{
|
|
||||||
stdenv,
|
|
||||||
lib,
|
|
||||||
fetchpatch,
|
|
||||||
mkDerivation,
|
|
||||||
fetchFromGitHub,
|
|
||||||
haskellPackages,
|
|
||||||
slither-analyzer,
|
|
||||||
}:
|
|
||||||
|
|
||||||
mkDerivation (
|
|
||||||
rec {
|
|
||||||
pname = "echidna";
|
|
||||||
version = "2.2.3";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "crytic";
|
|
||||||
repo = "echidna";
|
|
||||||
rev = "v${version}";
|
|
||||||
sha256 = "sha256-NJ2G6EkexYE4P3GD7PZ+lLEs1dqnoqIB2zfAOD5SQ8M=";
|
|
||||||
};
|
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Support cross platform vty 6.x with vty-crossplatform
|
|
||||||
# https://github.com/crytic/echidna/pull/1290
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://github.com/crytic/echidna/commit/2913b027d7e793390ed489ef6a47d23ec9b3c800.patch";
|
|
||||||
hash = "sha256-5CGD9nDbDUTG869xUybWYSvGRsrm7JP7n0WMBNYfayw=";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
isExecutable = true;
|
|
||||||
|
|
||||||
libraryToolDepends = with haskellPackages; [ haskellPackages.hpack ];
|
|
||||||
|
|
||||||
executableHaskellDepends = with haskellPackages; [
|
|
||||||
# package.yaml - dependencies
|
|
||||||
base
|
|
||||||
aeson
|
|
||||||
async
|
|
||||||
base16-bytestring
|
|
||||||
binary
|
|
||||||
bytestring
|
|
||||||
code-page
|
|
||||||
containers
|
|
||||||
data-bword
|
|
||||||
data-dword
|
|
||||||
deepseq
|
|
||||||
extra
|
|
||||||
directory
|
|
||||||
exceptions
|
|
||||||
filepath
|
|
||||||
hashable
|
|
||||||
hevm
|
|
||||||
html-entities
|
|
||||||
ListLike
|
|
||||||
MonadRandom
|
|
||||||
mtl
|
|
||||||
optparse-applicative
|
|
||||||
optics
|
|
||||||
optics-core
|
|
||||||
process
|
|
||||||
random
|
|
||||||
rosezipper
|
|
||||||
semver
|
|
||||||
split
|
|
||||||
text
|
|
||||||
transformers
|
|
||||||
time
|
|
||||||
unliftio
|
|
||||||
utf8-string
|
|
||||||
vector
|
|
||||||
with-utf8
|
|
||||||
word-wrap
|
|
||||||
yaml
|
|
||||||
http-conduit
|
|
||||||
html-conduit
|
|
||||||
warp
|
|
||||||
wai-extra
|
|
||||||
xml-conduit
|
|
||||||
strip-ansi-escape
|
|
||||||
# package.yaml - dependencies when "!os(windows)"
|
|
||||||
brick
|
|
||||||
unix
|
|
||||||
vty
|
|
||||||
];
|
|
||||||
|
|
||||||
# Note: there is also a runtime dependency of slither-analyzer. So, let's include it.
|
|
||||||
executableSystemDepends = [ slither-analyzer ];
|
|
||||||
|
|
||||||
preConfigure = ''
|
|
||||||
hpack
|
|
||||||
'';
|
|
||||||
|
|
||||||
shellHook = "hpack";
|
|
||||||
|
|
||||||
doHaddock = false;
|
|
||||||
|
|
||||||
# tests depend on a specific version of solc
|
|
||||||
doCheck = false;
|
|
||||||
|
|
||||||
description = "Ethereum smart contract fuzzer";
|
|
||||||
homepage = "https://github.com/crytic/echidna";
|
|
||||||
license = lib.licenses.agpl3Plus;
|
|
||||||
maintainers = with lib.maintainers; [
|
|
||||||
arturcygan
|
|
||||||
hellwolf
|
|
||||||
];
|
|
||||||
platforms = lib.platforms.unix;
|
|
||||||
mainProgram = "echidna-test";
|
|
||||||
|
|
||||||
}
|
|
||||||
// lib.optionalAttrs (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) {
|
|
||||||
|
|
||||||
# https://github.com/NixOS/nixpkgs/pull/304352
|
|
||||||
postInstall = with haskellPackages; ''
|
|
||||||
remove-references-to -t ${warp.out} "$out/bin/echidna"
|
|
||||||
remove-references-to -t ${wreq.out} "$out/bin/echidna"
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
)
|
|
|
@ -815,6 +815,7 @@ mapAliases {
|
||||||
hacksaw = throw "'hacksaw' has been removed due to lack of upstream maintenance"; # Added 2025-01-25
|
hacksaw = throw "'hacksaw' has been removed due to lack of upstream maintenance"; # Added 2025-01-25
|
||||||
haka = throw "haka has been removed because it failed to build and was unmaintained for 9 years"; # Added 2025-03-11
|
haka = throw "haka has been removed because it failed to build and was unmaintained for 9 years"; # Added 2025-03-11
|
||||||
hardinfo = throw "'hardinfo' has been removed as it was abandoned upstream. Consider using 'hardinfo2' instead."; # added 2025-04-17
|
hardinfo = throw "'hardinfo' has been removed as it was abandoned upstream. Consider using 'hardinfo2' instead."; # added 2025-04-17
|
||||||
|
hasura-graphql-engine = throw "hasura-graphql-engine has been removed because was broken and its packaging severly out of date"; # Added 2025-02-14
|
||||||
haven-cli = throw "'haven-cli' has been removed due to the official announcement of the project closure. Read more at https://havenprotocol.org/2024/12/12/project-closure-announcement"; # Added 2025-02-25
|
haven-cli = throw "'haven-cli' has been removed due to the official announcement of the project closure. Read more at https://havenprotocol.org/2024/12/12/project-closure-announcement"; # Added 2025-02-25
|
||||||
HentaiAtHome = hentai-at-home; # Added 2024-06-12
|
HentaiAtHome = hentai-at-home; # Added 2024-06-12
|
||||||
hll2390dw-cups = throw "The hll2390dw-cups package was dropped since it was unmaintained."; # Added 2024-06-21
|
hll2390dw-cups = throw "The hll2390dw-cups package was dropped since it was unmaintained."; # Added 2024-06-21
|
||||||
|
|
|
@ -1825,10 +1825,6 @@ with pkgs;
|
||||||
|
|
||||||
dkimpy = with python3Packages; toPythonApplication dkimpy;
|
dkimpy = with python3Packages; toPythonApplication dkimpy;
|
||||||
|
|
||||||
echidna = haskell.lib.compose.justStaticExecutables (
|
|
||||||
haskellPackages.callPackage ../tools/security/echidna { }
|
|
||||||
);
|
|
||||||
|
|
||||||
esbuild = callPackage ../development/tools/esbuild { };
|
esbuild = callPackage ../development/tools/esbuild { };
|
||||||
|
|
||||||
esbuild_netlify = callPackage ../development/tools/esbuild/netlify.nix { };
|
esbuild_netlify = callPackage ../development/tools/esbuild/netlify.nix { };
|
||||||
|
@ -4400,10 +4396,6 @@ with pkgs;
|
||||||
|
|
||||||
pakcs = callPackage ../development/compilers/pakcs { };
|
pakcs = callPackage ../development/compilers/pakcs { };
|
||||||
|
|
||||||
pandoc_3_6 = callPackage ../by-name/pa/pandoc/package.nix {
|
|
||||||
selectPandocCLI = (p: p.pandoc-cli_3_6);
|
|
||||||
};
|
|
||||||
|
|
||||||
paperwork = callPackage ../applications/office/paperwork/paperwork-gtk.nix { };
|
paperwork = callPackage ../applications/office/paperwork/paperwork-gtk.nix { };
|
||||||
|
|
||||||
parallel = callPackage ../tools/misc/parallel { };
|
parallel = callPackage ../tools/misc/parallel { };
|
||||||
|
@ -5934,9 +5926,9 @@ with pkgs;
|
||||||
haskell.packages.native-bignum.ghc94
|
haskell.packages.native-bignum.ghc94
|
||||||
# JS backend can't use gmp
|
# JS backend can't use gmp
|
||||||
else if stdenv.hostPlatform.isGhcjs then
|
else if stdenv.hostPlatform.isGhcjs then
|
||||||
haskell.packages.native-bignum.ghc96
|
haskell.packages.native-bignum.ghc98
|
||||||
else
|
else
|
||||||
haskell.packages.ghc96
|
haskell.packages.ghc98
|
||||||
)
|
)
|
||||||
// {
|
// {
|
||||||
__recurseIntoDerivationForReleaseJobs = true;
|
__recurseIntoDerivationForReleaseJobs = true;
|
||||||
|
@ -5959,9 +5951,9 @@ with pkgs;
|
||||||
haskell.compiler.native-bignum.ghc94
|
haskell.compiler.native-bignum.ghc94
|
||||||
# JS backend can't use GMP
|
# JS backend can't use GMP
|
||||||
else if stdenv.targetPlatform.isGhcjs then
|
else if stdenv.targetPlatform.isGhcjs then
|
||||||
haskell.compiler.native-bignum.ghc96
|
haskell.compiler.native-bignum.ghc98
|
||||||
else
|
else
|
||||||
haskell.compiler.ghc96
|
haskell.compiler.ghc98
|
||||||
);
|
);
|
||||||
|
|
||||||
alex = haskell.lib.compose.justStaticExecutables haskellPackages.alex;
|
alex = haskell.lib.compose.justStaticExecutables haskellPackages.alex;
|
||||||
|
@ -6012,9 +6004,10 @@ with pkgs;
|
||||||
spicedb-zed = callPackage ../servers/spicedb/zed.nix { };
|
spicedb-zed = callPackage ../servers/spicedb/zed.nix { };
|
||||||
|
|
||||||
tamarin-prover = (
|
tamarin-prover = (
|
||||||
haskellPackages.callPackage ../applications/science/logic/tamarin-prover {
|
callPackage ../applications/science/logic/tamarin-prover {
|
||||||
# NOTE: do not use the haskell packages 'graphviz' and 'maude'
|
# 2025-03-07: dependency fclabels doesn't compile with GHC >= 9.8
|
||||||
inherit maude which;
|
# https://github.com/sebastiaanvisser/fclabels/issues/46
|
||||||
|
haskellPackages = haskell.packages.ghc96;
|
||||||
graphviz = graphviz-nox;
|
graphviz = graphviz-nox;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
@ -11075,8 +11068,6 @@ with pkgs;
|
||||||
grafana = callPackage ../servers/monitoring/grafana { };
|
grafana = callPackage ../servers/monitoring/grafana { };
|
||||||
grafanaPlugins = callPackages ../servers/monitoring/grafana/plugins { };
|
grafanaPlugins = callPackages ../servers/monitoring/grafana/plugins { };
|
||||||
|
|
||||||
hasura-graphql-engine = haskell.lib.compose.justStaticExecutables haskell.packages.ghc810.graphql-engine;
|
|
||||||
|
|
||||||
hasura-cli = callPackage ../servers/hasura/cli.nix { };
|
hasura-cli = callPackage ../servers/hasura/cli.nix { };
|
||||||
|
|
||||||
inherit (callPackage ../servers/hbase { })
|
inherit (callPackage ../servers/hbase { })
|
||||||
|
|
|
@ -135,51 +135,6 @@ in
|
||||||
llvmPackages = pkgs.llvmPackages_12;
|
llvmPackages = pkgs.llvmPackages_12;
|
||||||
};
|
};
|
||||||
ghc90 = compiler.ghc902;
|
ghc90 = compiler.ghc902;
|
||||||
ghc925 = callPackage ../development/compilers/ghc/9.2.5.nix {
|
|
||||||
bootPkgs =
|
|
||||||
if stdenv.buildPlatform.isPower64 && stdenv.buildPlatform.isLittleEndian then
|
|
||||||
bb.packages.ghc810
|
|
||||||
else
|
|
||||||
bb.packages.ghc8107Binary;
|
|
||||||
inherit (buildPackages.python311Packages) sphinx; # a distutils issue with 3.12
|
|
||||||
python3 = buildPackages.python311; # so that we don't have two of them
|
|
||||||
# Need to use apple's patched xattr until
|
|
||||||
# https://github.com/xattr/xattr/issues/44 and
|
|
||||||
# https://github.com/xattr/xattr/issues/55 are solved.
|
|
||||||
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
|
|
||||||
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
|
|
||||||
llvmPackages = pkgs.llvmPackages_12;
|
|
||||||
};
|
|
||||||
ghc926 = callPackage ../development/compilers/ghc/9.2.6.nix {
|
|
||||||
bootPkgs =
|
|
||||||
if stdenv.buildPlatform.isPower64 && stdenv.buildPlatform.isLittleEndian then
|
|
||||||
bb.packages.ghc810
|
|
||||||
else
|
|
||||||
bb.packages.ghc8107Binary;
|
|
||||||
inherit (buildPackages.python311Packages) sphinx; # a distutils issue with 3.12
|
|
||||||
python3 = buildPackages.python311; # so that we don't have two of them
|
|
||||||
# Need to use apple's patched xattr until
|
|
||||||
# https://github.com/xattr/xattr/issues/44 and
|
|
||||||
# https://github.com/xattr/xattr/issues/55 are solved.
|
|
||||||
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
|
|
||||||
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
|
|
||||||
llvmPackages = pkgs.llvmPackages_12;
|
|
||||||
};
|
|
||||||
ghc927 = callPackage ../development/compilers/ghc/9.2.7.nix {
|
|
||||||
bootPkgs =
|
|
||||||
if stdenv.buildPlatform.isPower64 && stdenv.buildPlatform.isLittleEndian then
|
|
||||||
bb.packages.ghc810
|
|
||||||
else
|
|
||||||
bb.packages.ghc8107Binary;
|
|
||||||
inherit (buildPackages.python311Packages) sphinx; # a distutils issue with 3.12
|
|
||||||
python3 = buildPackages.python311; # so that we don't have two of them
|
|
||||||
# Need to use apple's patched xattr until
|
|
||||||
# https://github.com/xattr/xattr/issues/44 and
|
|
||||||
# https://github.com/xattr/xattr/issues/55 are solved.
|
|
||||||
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
|
|
||||||
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
|
|
||||||
llvmPackages = pkgs.llvmPackages_12;
|
|
||||||
};
|
|
||||||
ghc928 = callPackage ../development/compilers/ghc/9.2.8.nix {
|
ghc928 = callPackage ../development/compilers/ghc/9.2.8.nix {
|
||||||
bootPkgs =
|
bootPkgs =
|
||||||
if stdenv.buildPlatform.isPower64 && stdenv.buildPlatform.isLittleEndian then
|
if stdenv.buildPlatform.isPower64 && stdenv.buildPlatform.isLittleEndian then
|
||||||
|
@ -317,7 +272,25 @@ in
|
||||||
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_15;
|
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_15;
|
||||||
llvmPackages = pkgs.llvmPackages_15;
|
llvmPackages = pkgs.llvmPackages_15;
|
||||||
};
|
};
|
||||||
ghc96 = compiler.ghc966;
|
ghc967 = callPackage ../development/compilers/ghc/9.6.7.nix {
|
||||||
|
bootPkgs =
|
||||||
|
# For GHC 9.2 no armv7l bindists are available.
|
||||||
|
if stdenv.buildPlatform.isAarch32 then
|
||||||
|
bb.packages.ghc928
|
||||||
|
else if stdenv.buildPlatform.isPower64 && stdenv.buildPlatform.isLittleEndian then
|
||||||
|
bb.packages.ghc928
|
||||||
|
else
|
||||||
|
bb.packages.ghc924Binary;
|
||||||
|
inherit (buildPackages.python3Packages) sphinx;
|
||||||
|
# Need to use apple's patched xattr until
|
||||||
|
# https://github.com/xattr/xattr/issues/44 and
|
||||||
|
# https://github.com/xattr/xattr/issues/55 are solved.
|
||||||
|
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
|
||||||
|
# Support range >= 11 && < 16
|
||||||
|
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_15;
|
||||||
|
llvmPackages = pkgs.llvmPackages_15;
|
||||||
|
};
|
||||||
|
ghc96 = compiler.ghc967;
|
||||||
ghc981 = callPackage ../development/compilers/ghc/9.8.1.nix {
|
ghc981 = callPackage ../development/compilers/ghc/9.8.1.nix {
|
||||||
bootPkgs =
|
bootPkgs =
|
||||||
# For GHC 9.6 no armv7l bindists are available.
|
# For GHC 9.6 no armv7l bindists are available.
|
||||||
|
@ -432,7 +405,20 @@ in
|
||||||
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_19;
|
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_19;
|
||||||
llvmPackages = pkgs.llvmPackages_19;
|
llvmPackages = pkgs.llvmPackages_19;
|
||||||
};
|
};
|
||||||
ghc912 = compiler.ghc9121;
|
ghc9122 = callPackage ../development/compilers/ghc/9.12.2.nix {
|
||||||
|
bootPkgs =
|
||||||
|
# No suitable bindist packaged yet
|
||||||
|
bb.packages.ghc9101;
|
||||||
|
inherit (buildPackages.python3Packages) sphinx;
|
||||||
|
# Need to use apple's patched xattr until
|
||||||
|
# https://github.com/xattr/xattr/issues/44 and
|
||||||
|
# https://github.com/xattr/xattr/issues/55 are solved.
|
||||||
|
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
|
||||||
|
# 2024-12-21: Support range >= 13 && < 20
|
||||||
|
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_19;
|
||||||
|
llvmPackages = pkgs.llvmPackages_19;
|
||||||
|
};
|
||||||
|
ghc912 = compiler.ghc9122;
|
||||||
ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
|
ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
|
||||||
bootPkgs =
|
bootPkgs =
|
||||||
# No armv7l bindists are available.
|
# No armv7l bindists are available.
|
||||||
|
@ -540,21 +526,6 @@ in
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.0.x.nix { };
|
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.0.x.nix { };
|
||||||
};
|
};
|
||||||
ghc90 = packages.ghc902;
|
ghc90 = packages.ghc902;
|
||||||
ghc925 = callPackage ../development/haskell-modules {
|
|
||||||
buildHaskellPackages = bh.packages.ghc925;
|
|
||||||
ghc = bh.compiler.ghc925;
|
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
|
|
||||||
};
|
|
||||||
ghc926 = callPackage ../development/haskell-modules {
|
|
||||||
buildHaskellPackages = bh.packages.ghc926;
|
|
||||||
ghc = bh.compiler.ghc926;
|
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
|
|
||||||
};
|
|
||||||
ghc927 = callPackage ../development/haskell-modules {
|
|
||||||
buildHaskellPackages = bh.packages.ghc927;
|
|
||||||
ghc = bh.compiler.ghc927;
|
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
|
|
||||||
};
|
|
||||||
ghc928 = callPackage ../development/haskell-modules {
|
ghc928 = callPackage ../development/haskell-modules {
|
||||||
buildHaskellPackages = bh.packages.ghc928;
|
buildHaskellPackages = bh.packages.ghc928;
|
||||||
ghc = bh.compiler.ghc928;
|
ghc = bh.compiler.ghc928;
|
||||||
|
@ -592,7 +563,12 @@ in
|
||||||
ghc = bh.compiler.ghc966;
|
ghc = bh.compiler.ghc966;
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.6.x.nix { };
|
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.6.x.nix { };
|
||||||
};
|
};
|
||||||
ghc96 = packages.ghc966;
|
ghc967 = callPackage ../development/haskell-modules {
|
||||||
|
buildHaskellPackages = bh.packages.ghc967;
|
||||||
|
ghc = bh.compiler.ghc967;
|
||||||
|
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.6.x.nix { };
|
||||||
|
};
|
||||||
|
ghc96 = packages.ghc967;
|
||||||
ghc981 = callPackage ../development/haskell-modules {
|
ghc981 = callPackage ../development/haskell-modules {
|
||||||
buildHaskellPackages = bh.packages.ghc981;
|
buildHaskellPackages = bh.packages.ghc981;
|
||||||
ghc = bh.compiler.ghc981;
|
ghc = bh.compiler.ghc981;
|
||||||
|
@ -625,7 +601,12 @@ in
|
||||||
ghc = bh.compiler.ghc9121;
|
ghc = bh.compiler.ghc9121;
|
||||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.12.x.nix { };
|
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.12.x.nix { };
|
||||||
};
|
};
|
||||||
ghc912 = packages.ghc9121;
|
ghc9122 = callPackage ../development/haskell-modules {
|
||||||
|
buildHaskellPackages = bh.packages.ghc9122;
|
||||||
|
ghc = bh.compiler.ghc9122;
|
||||||
|
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.12.x.nix { };
|
||||||
|
};
|
||||||
|
ghc912 = packages.ghc9122;
|
||||||
ghcHEAD = callPackage ../development/haskell-modules {
|
ghcHEAD = callPackage ../development/haskell-modules {
|
||||||
buildHaskellPackages = bh.packages.ghcHEAD;
|
buildHaskellPackages = bh.packages.ghcHEAD;
|
||||||
ghc = bh.compiler.ghcHEAD;
|
ghc = bh.compiler.ghcHEAD;
|
||||||
|
|
|
@ -65,9 +65,6 @@ let
|
||||||
released = with compilerNames; [
|
released = with compilerNames; [
|
||||||
ghc8107
|
ghc8107
|
||||||
ghc902
|
ghc902
|
||||||
ghc925
|
|
||||||
ghc926
|
|
||||||
ghc927
|
|
||||||
ghc928
|
ghc928
|
||||||
ghc947
|
ghc947
|
||||||
ghc948
|
ghc948
|
||||||
|
@ -75,12 +72,14 @@ let
|
||||||
ghc964
|
ghc964
|
||||||
ghc965
|
ghc965
|
||||||
ghc966
|
ghc966
|
||||||
|
ghc967
|
||||||
ghc981
|
ghc981
|
||||||
ghc982
|
ghc982
|
||||||
ghc983
|
ghc983
|
||||||
ghc984
|
ghc984
|
||||||
ghc9101
|
ghc9101
|
||||||
ghc9121
|
# exclude ghc9121 due to severe miscompilation bug
|
||||||
|
ghc9122
|
||||||
];
|
];
|
||||||
|
|
||||||
# packagePlatforms applied to `haskell.packages.*`
|
# packagePlatforms applied to `haskell.packages.*`
|
||||||
|
@ -310,7 +309,6 @@ let
|
||||||
happy
|
happy
|
||||||
haskell-ci
|
haskell-ci
|
||||||
haskell-language-server
|
haskell-language-server
|
||||||
hasura-graphql-engine
|
|
||||||
hci
|
hci
|
||||||
hercules-ci-agent
|
hercules-ci-agent
|
||||||
hinit
|
hinit
|
||||||
|
@ -455,6 +453,7 @@ let
|
||||||
cabal2nix
|
cabal2nix
|
||||||
terminfo # isn't bundled for cross
|
terminfo # isn't bundled for cross
|
||||||
xhtml # isn't bundled for cross
|
xhtml # isn't bundled for cross
|
||||||
|
postgrest
|
||||||
;
|
;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -467,6 +466,7 @@ let
|
||||||
cabal2nix
|
cabal2nix
|
||||||
terminfo # isn't bundled for cross
|
terminfo # isn't bundled for cross
|
||||||
xhtml # isn't bundled for cross
|
xhtml # isn't bundled for cross
|
||||||
|
postgrest
|
||||||
;
|
;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -504,6 +504,16 @@ let
|
||||||
;
|
;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
haskell.packages.ghc912 = {
|
||||||
|
inherit (packagePlatforms pkgs.pkgsCross.ghcjs.haskell.packages.ghc912)
|
||||||
|
ghc
|
||||||
|
hello
|
||||||
|
microlens
|
||||||
|
miso
|
||||||
|
reflex-dom
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
haskell.packages.ghcHEAD = {
|
haskell.packages.ghcHEAD = {
|
||||||
inherit (packagePlatforms pkgs.pkgsCross.ghcjs.haskell.packages.ghcHEAD)
|
inherit (packagePlatforms pkgs.pkgsCross.ghcjs.haskell.packages.ghcHEAD)
|
||||||
ghc
|
ghc
|
||||||
|
@ -554,16 +564,17 @@ let
|
||||||
# work with older compilers.
|
# work with older compilers.
|
||||||
compilerNames.ghc8107
|
compilerNames.ghc8107
|
||||||
compilerNames.ghc902
|
compilerNames.ghc902
|
||||||
compilerNames.ghc925
|
|
||||||
compilerNames.ghc926
|
|
||||||
compilerNames.ghc927
|
|
||||||
compilerNames.ghc928
|
compilerNames.ghc928
|
||||||
compilerNames.ghc947
|
compilerNames.ghc947
|
||||||
compilerNames.ghc948
|
compilerNames.ghc948
|
||||||
] released;
|
] released;
|
||||||
Cabal_3_10_3_0 = released;
|
Cabal_3_10_3_0 = lib.subtractLists [
|
||||||
|
# time < 1.13 conflicts with time == 1.14.*
|
||||||
|
compilerNames.ghc9121
|
||||||
|
compilerNames.ghc9122
|
||||||
|
] released;
|
||||||
Cabal_3_12_1_0 = released;
|
Cabal_3_12_1_0 = released;
|
||||||
Cabal_3_14_1_0 = released;
|
Cabal_3_14_1_1 = released;
|
||||||
cabal2nix = released;
|
cabal2nix = released;
|
||||||
cabal2nix-unstable = released;
|
cabal2nix-unstable = released;
|
||||||
funcmp = released;
|
funcmp = released;
|
||||||
|
@ -572,12 +583,14 @@ let
|
||||||
compilerNames.ghc8107
|
compilerNames.ghc8107
|
||||||
# Support ceased as of 2.5.0.0
|
# Support ceased as of 2.5.0.0
|
||||||
compilerNames.ghc902
|
compilerNames.ghc902
|
||||||
|
# Support ceased as of 2.10.0.0
|
||||||
|
compilerNames.ghc928
|
||||||
] released;
|
] released;
|
||||||
hoogle = released;
|
hoogle = released;
|
||||||
hlint = lib.subtractLists [
|
hlint = lib.subtractLists [
|
||||||
compilerNames.ghc902
|
compilerNames.ghc902
|
||||||
compilerNames.ghc9101
|
compilerNames.ghc9101
|
||||||
compilerNames.ghc9121
|
compilerNames.ghc9122
|
||||||
] released;
|
] released;
|
||||||
hpack = released;
|
hpack = released;
|
||||||
hsdns = released;
|
hsdns = released;
|
||||||
|
@ -596,16 +609,21 @@ let
|
||||||
ghc-lib-parser = released;
|
ghc-lib-parser = released;
|
||||||
ghc-lib-parser-ex = released;
|
ghc-lib-parser-ex = released;
|
||||||
ghc-source-gen = lib.subtractLists [
|
ghc-source-gen = lib.subtractLists [
|
||||||
compilerNames.ghc9121
|
compilerNames.ghc9122
|
||||||
] released;
|
] released;
|
||||||
ghc-tags = lib.subtractLists [
|
ghc-tags = lib.subtractLists [
|
||||||
compilerNames.ghc9121
|
compilerNames.ghc9122
|
||||||
] released;
|
] released;
|
||||||
hashable = released;
|
hashable = released;
|
||||||
primitive = released;
|
primitive = released;
|
||||||
|
semaphore-compat = [
|
||||||
|
# Compiler < 9.8 don't have the semaphore-compat core package, but
|
||||||
|
# requires unix >= 2.8.1.0 which implies GHC >= 9.6 for us.
|
||||||
|
compilerNames.ghc966
|
||||||
|
];
|
||||||
weeder = lib.subtractLists [
|
weeder = lib.subtractLists [
|
||||||
compilerNames.ghc9101
|
compilerNames.ghc9101
|
||||||
compilerNames.ghc9121
|
compilerNames.ghc9122
|
||||||
] released;
|
] released;
|
||||||
})
|
})
|
||||||
{
|
{
|
||||||
|
@ -671,16 +689,10 @@ let
|
||||||
jobs.pkgsMusl.haskell.compiler.ghc8107Binary
|
jobs.pkgsMusl.haskell.compiler.ghc8107Binary
|
||||||
jobs.pkgsMusl.haskell.compiler.ghc8107
|
jobs.pkgsMusl.haskell.compiler.ghc8107
|
||||||
jobs.pkgsMusl.haskell.compiler.ghc902
|
jobs.pkgsMusl.haskell.compiler.ghc902
|
||||||
jobs.pkgsMusl.haskell.compiler.ghc925
|
|
||||||
jobs.pkgsMusl.haskell.compiler.ghc926
|
|
||||||
jobs.pkgsMusl.haskell.compiler.ghc927
|
|
||||||
jobs.pkgsMusl.haskell.compiler.ghc928
|
jobs.pkgsMusl.haskell.compiler.ghc928
|
||||||
jobs.pkgsMusl.haskell.compiler.ghcHEAD
|
jobs.pkgsMusl.haskell.compiler.ghcHEAD
|
||||||
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc8107
|
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc8107
|
||||||
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc902
|
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc902
|
||||||
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc925
|
|
||||||
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc926
|
|
||||||
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc927
|
|
||||||
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc928
|
jobs.pkgsMusl.haskell.compiler.native-bignum.ghc928
|
||||||
jobs.pkgsMusl.haskell.compiler.native-bignum.ghcHEAD
|
jobs.pkgsMusl.haskell.compiler.native-bignum.ghcHEAD
|
||||||
];
|
];
|
||||||
|
|
|
@ -365,6 +365,7 @@ let
|
||||||
"ghc96"
|
"ghc96"
|
||||||
"ghc98"
|
"ghc98"
|
||||||
"ghc910"
|
"ghc910"
|
||||||
|
"ghc912"
|
||||||
]
|
]
|
||||||
(compilerName: {
|
(compilerName: {
|
||||||
inherit (packagePlatforms pkgs.haskell.packages.${compilerName})
|
inherit (packagePlatforms pkgs.haskell.packages.${compilerName})
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue