Commit graph

75 commits

Author SHA1 Message Date
sternenseemann
b1197ac729 writers: run fixupPhase for darwin bin writers
mach-o executables we produce in writers are not always fully valid for
some reason. In normal derivation this is fixed in fixupPhase and we can
replicate this behavior here easily.

Resolves #132660.
2021-10-29 12:34:48 +02:00
sternenseemann
6101c27a43 release-haskell.nix: test working packages with ghc921 as well
This will produce some binary cache and CI for GHC 9.2.1. Specifically
we will notice when we can drop the head.hackage packages again.
2021-10-17 16:21:13 +02:00
sternenseemann
76d93938da release-haskell.nix: rename all (compilers) to released (compilers)
This is more accurate, since we don't have GHC 9.2.1 nor HEAD in there.
2021-10-17 16:21:13 +02:00
sternenseemann
2fb806dba0 haskell.packages.*: reflect Cabal minor version update 2021-10-12 12:51:49 +02:00
Damien Cassou
0ec6fc72a0 hledger-check-fancyassertions: init at 1.23
Co-authored-by: sterni <sternenseemann@systemli.org>
2021-09-30 12:23:30 +02:00
sternenseemann
dfad6f38cc release-haskell.nix: add more GHC drvs to muslGHCs
Now a lot more is working here, let's keep it that way!
2021-09-26 21:08:13 +02:00
sternenseemann
fded78193d release-haskell.nix: don't build musl integer-simple GHC 8.8.4 2021-09-26 21:07:21 +02:00
Niklas Hambüchen
c57ad7ccb9 haskell.compiler.ghc*: Use 8.10.7 bindist for bootstrapping.
This fixes musl+integer-simple, see #130441.

Co-Authored-By: sternenseemann <sternenseemann@systemli.org>
2021-09-23 20:38:36 +02:00
Malte Brandy
d71129e1af
haskell.packages.ghc901.haskell-language-server: Fix build 2021-09-18 03:17:47 +02:00
(cdep)illabout
fb4ad10f1a
haskell: remove ghcjs from pkgsMusl in release-haskell.nix 2021-09-18 02:38:20 +09:00
(cdep)illabout
561e37e641
haskellPackages.Cabal_3_6_1_0: compiles on all GHCs 2021-09-11 12:12:46 +09:00
(cdep)illabout
96f6dbbd10
haskell: bump uses of Cabal_3_6_0_0 to Cabal_3_6_1_0 to get rid of eval errors 2021-09-11 11:58:02 +09:00
sternenseemann
61b713abd6 haskell.packages.*.ghc-api-compat: fix across all supported sets
* haskell.packages.ghc884.ghc-api-compat needed us to re-add the 8.6
  version of the package.
* haskell.packages.ghc901.ghc-api-compat now points to the newly
  released 9.0.1 version of the package.
* haskell.packages.ghc8107.ghc-api-compat now correctly points to
  ghc-api-compat 8.10.7.

GHC 9.2.1 is still unsupported (which is to be expected, with it
being a release candidate).

To make sure everything stays working we'll build ghc-api-compat as part
of versionedCompilerJobs.
2021-09-07 15:48:08 +02:00
sternenseemann
9eca744cc0 ghc: 8.10.6 -> 8.10.7
https://www.haskell.org/ghc/download_ghc_8_10_7.html
2021-08-27 00:42:51 +02:00
sternenseemann
244784d132 top-level/release-haskell.nix: fix remaining references to ghc8104
Attribute was removed in cb330ce4f0.
2021-08-17 12:20:08 +02:00
sternenseemann
cb330ce4f0 ghc: 8.10.4 -> 8.10.6
The only big change is required for darwin since GHC 8.10.5 now
runs xattr in the install phase on darwin:

* 11e1dcde0d
* ec451cac39

Unfortunately, it uses the host /usr/bin/xattr by default which is
present in the build due to a lack of sandboxing on darwin. That xattr
version however still requires Python 2.7 whereas Python 3.8 is in PATH
in our build. We solve this by setting the XATTR environment variable.

We can't use python3Packages.xattr since GHC expects Apple's fork of
xattr which provides some extra flags to utilize.

Co-authored-by: Cheng Shao <cheng.shao@tweag.io>
2021-08-14 17:12:39 +02:00
sternenseemann
124d658eff haskellPackages.{cabal-install, cabal-install-parsers}: use Cabal 3.6.0.0
Try using the latest and greatest version Cabal for cabal-install and
cabal-install-parsers, we'll see how it goes.
2021-08-07 16:23:10 +02:00
(cdep)illabout
95cd2f7a1f
release-haskell: fix comment on pkgsMusl.haskellPackages 2021-07-24 21:13:42 +09:00
(cdep)illabout
aca8a4e36d
release-haskell: move back to using accumulateDerivations for staticHaskellPackages 2021-07-24 21:13:41 +09:00
(cdep)illabout
f8592f6ba5
release-haskell: add docs for removeMany and removePlatforms 2021-07-24 21:13:41 +09:00
(cdep)illabout
5b6f2ae03d
release-haskell: build a few haskell packages with musl
This is helpful to get a small cache going for people
who want musl-enabled packages.
2021-07-24 14:26:20 +09:00
(cdep)illabout
b0a42925f1
release-haskell: stop building musl integer-simple GHCs
integer-simple GHCs appear to be broken when linking against musl and
non-static-linking.
2021-07-24 14:26:20 +09:00
(cdep)illabout
e8bdec3e32
release-haskell: stop building aarch64 and darwin static haskell packages
The statically-linked Haskell packages on Darwin are not currently
working because libiconv is not building statically on Darwin.

The statically-linked Haskell packages on aarch64 are timing out on Hydra.
2021-07-24 14:23:50 +09:00
(cdep)illabout
cae27cfeb4
release-haskell: disable aarch64 builds from staticHaskellPackages
These aarch64 builds appear to be timing out.
2021-07-24 14:23:50 +09:00
(cdep)illabout
f78a3ef835
release-haskell: move location of muslGHCs so that musl always comes before static
This is just a small reorganization.
2021-07-24 14:23:50 +09:00
Dennis Gosnell
9546f2332e
Merge pull request #130263 from sternenseemann/haskell-updates-agda
top-level/release-haskell.nix: add agda packages and test to jobset
2021-07-22 22:49:40 +09:00
sternenseemann
7d20323b11 top-level/release-haskell.nix: add agda packages and test to jobset
Since the agda compiler is updated via haskellPackages.Agda, we are
quite likely to cause regressions in agdaPackages when the language is
changed via compiler updates. Thus we should build agdaPackages (which
is very small) as part of the haskell-updates jobset and track if
basic agda functionality (compiler and standard library) is working.
2021-07-22 15:33:08 +02:00
(cdep)illabout
9fdec6876e
release-haskell: disable the x86_64-darwin writers test 2021-07-17 13:30:51 +09:00
sternenseemann
52acca72bf top-level/release-haskell.nix: test writers on all platforms
Since the rust writer doesn't seem to get fixed on darwin, we'll just
wrap the haskell writer test in our own derivation (which is possible
since tests.writers exposes a bunch of internals via passthru) and
expose it via tests.haskell which are already in mergeable.

Finally a way to test the (hopefully) working haskell writer on darwin
again!
2021-07-13 15:19:36 +02:00
sternenseemann
b7a0833e68 top-level/release-haskell.nix: don't test ghc865Binary on musl
pkgsMusl.haskell.compiler.ghc865Binary is known and expected to not
work, so we can remove it easily. Also gets rid of annoying evaluation
errors.
2021-07-13 15:07:05 +02:00
Niklas Hambüchen
c114cd459e
Merge pull request #129289 from nh2/issue-129247-ghc-musl-fixes
Fix GHC not building with musl
2021-07-12 05:02:58 +02:00
Niklas Hambüchen
0044356dc7 release-haskell.nix: Add pkgsMusl haskell compilers to Hydra jobs 2021-07-10 02:49:42 +02:00
sternenseemann
542b4497e9 top-level/release-haskell.nix: use integer-simple GHC for static CI
This should avoid any licensing problems wrt GMP being LGPL.
2021-07-04 21:39:11 +02:00
sternenseemann
71ffc07f4e haskellPackages.cabal2nix-unstable: 2021-06-10 -> 2021-06-12
Adds support for GHC 9.0.x which we also test by compiling it with all
available GHC versions on Hydra.
2021-06-12 00:36:30 +02:00
sternenseemann
da993f42ee top-level/release-haskell.nix: add missing top-level packages
Inherit nvfetcher and uusi jobs from top-level for extra visibility.
2021-06-03 11:51:34 +02:00
sternenseemann
66722bc2f1 top-level/release-haskell.nix: no darwin in static aggregate job
Since libiconv doesn't build in pkgsStatic on darwin, having these
builds in our aggregate jobset are just gonna make it fail due to reason
not really in scope for our jobset here.
2021-05-25 12:38:30 +02:00
sternenseemann
0fddf5bd5a top-level/release-haskell.nix: test static linking as well
This way we can keep track of any new regressions to this as well as
have some binary cache, so using this infrastructure doesn't require
compiling GHC all the time.
2021-05-22 15:05:10 +02:00
(cdep)illabout
0293c964de
haskellPackages.ldgallery-compiler: add pacien as maintainer 2021-05-16 17:09:57 +09:00
(cdep)illabout
0c7f75732f
haskell-language-server: disable hydra tests for ghc-9.0 2021-05-16 14:41:24 +09:00
(cdep)illabout
1ddd893bd1
haskell-updates: remove tests.writers.x86_64-darwin job from Hydra 2021-05-16 11:24:28 +09:00
(cdep)illabout
ea304f2d78
release-haskell: add documentation explaining what this file is used for 2021-05-15 11:49:00 +09:00
sternenseemann
f170298c9a top-level/release.nix: fix evaluation of jobset
We need to merge the set of complete jobs not of platforms to test on
since our aggregate jobs will always be “proper” jobs.
2021-05-09 01:49:17 +02:00
sternenseemann
df5b6c61ec top-level/release-haskell.nix: merge jobs using lib.recursiveUpdate
We have different attribute sets defining jobs: The list of base jobs,
the ones generated by versionedCompilerJobs and our added aggregate
jobs. During this we define `haskell` twice: Once for `haskell.compiler`
and once for `haskell.packages.*`. The `//` operator throws a way the
former which is fixed by using lib.recursiveUpdate.

Unfortunately makes the expression less pretty, but at least we have our
compiler jobs back.
2021-05-08 18:27:47 +02:00
sternenseemann
a7dfc81ade top-level/release-haskell.nix: support aarch64-linux and x86_64-darwin
top-level/release.nix builds haskellPackages on those systems as well,
so we should test on them as well. Currently we have virtually no
insight into the state on there.
2021-05-05 17:32:46 +02:00
sternenseemann
ea71b0aa91 top-level/release-haskell.nix: also tests writers tests
This should show us what impact our changes have on writeHaskell.
2021-05-04 15:42:49 +02:00
sternenseemann
07dd4a91f5 top-level/release-haskell.nix: use top-level git-annex attribute
This saves us from the annoyances of the gitAndTools attribute set which
doesn't have recurseForDerivations and is thus ignored by
packagePlatforms.
2021-05-04 15:42:46 +02:00
sternenseemann
6784d2b87c top-level/release-haskell.nix: add less obvious top-level haskell pkgs
These were found by grepping for haskellPackages in the whole
repository.
2021-05-04 15:41:59 +02:00
sternenseemann
6e98fdd7c3 top-level/release-haskell.nix: add more top-level haskell packages
These should now also include all packages that use haskellPackages in
some form where it is apparent from all-packages.nix.

Some of those probably could do with a cleanup (maybe fetchable from
hackage, many are missing justStaticExecutables).
2021-05-04 11:33:42 +02:00
sternenseemann
233682cf1e pkgs/release-haskell.nix: add aggregate job of all pkgs with maintainers 2021-05-03 11:40:03 +02:00
sternenseemann
ef9631e523 pkgs/top-level: init expression for haskell-updates jobset
release-haskell.nix is intended to be a replacement for
https://github.com/peti/ci/blob/master/haskell-nixpkgs.nix
which is currently the main expression for the haskell-updates jobset
on hydra (in the nixpkgs project).

It has the same jobs as the old haskell-nixpkgs.nix file:

* haskellPackages.*
* haskell.compiler.*
* Some extra haskell packages for certain compilers

The following jobs are new:

* tests.haskell.*
* A manually maintained list of top-level haskell packages (most of them
  using justStaticExecutables)
* An aggregate job which is intended to aid merging the haskell-updates
  branch: It holds an arbitrary list of haskell-related packages and
  tests we intend have working at all times. This is still somewhat
  incomplete and should be extendend in the future.

Additionally a lot of refactoring has been done and some unnecessary
code has been eliminated. Due to the increased set of jobs and my
ideas of convenience however, the code size has grown overall.
I've tried document the individual parts and would be happy about
feedback in general.

One future improvement could be making adding top-level haskell packages
more convenient and adding them all to the aggregate job automatically.
2021-05-03 11:40:03 +02:00