19.09 compat (#403)

* fix SETUP being build properly by the build stdenv (nixpkgs#56555 made NIX_DONT_SET_RPATH less restrictive; which showed up in 19.09).

* 19.09 fixes

* Update wine.nix
This commit is contained in:
Moritz Angermann 2020-01-16 16:25:31 +08:00 committed by GitHub
parent caa7375d41
commit e68599bec9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 23 additions and 6 deletions

View File

@ -9,6 +9,11 @@ let
setup-builder = haskellLib.weakCallPackage pkgs ./setup-builder.nix {
ghc = (ghc.passthru.buildGHC or ghc);
hsPkgs = hsPkgs.buildPackages;
# We need to use the buildPackages stdenv to build the setup-builder.
# in the native case, it would be the same in the corss case however
# re *really* want to build the Setup.hs on the build machine and not
# have the stdenv confuse it with the target/host env.
inherit (buildPackages) stdenv;
inherit buildPackages pkgconfig;
inherit haskellLib nonReinstallablePkgs makeSetupConfigFiles;
};

View File

@ -2,13 +2,9 @@
# allow building for windows
allowUnsupportedSystem = true;
# we want the 64bit wine version
# See overlays/wine.nix as well!
wine.build = "wine64";
# once https://github.com/NixOS/nixpkgs/pull/71216 is
# merged, we can use `series3`; wine4 seems to suffer
# from some non-obvious regression :(
# This will also need to be backported to 19.03 and 19.09
# at least...
wine.release = "series3";
wine.release = "stable";
# sadly we need to patch GHC a bit.
packageOverrides = ps: with ps; let

View File

@ -3,6 +3,7 @@
# This should prevent us inadvertantly depending on them.
(_: super: { haskell = {}; haskellPackages = {}; haskell-nix-super = super; })
(import ./release-19.03.nix)
(import ./wine.nix)
#(import ./ghcjs-asterius-triple.nix)
#(import ./python.nix)
(import ./haskell.nix)

15
overlays/wine.nix Normal file
View File

@ -0,0 +1,15 @@
# fix wine at 3.0.2; the 4.x branch breaks windows cross compilation.
# this will inevitably replace *any* wine version. Thus this might not
# really be what we ultimately want.
self: super:
{
winePackages = super.winePackages // {
minimal = super.winePackages.minimal.overrideAttrs (oldAttrs: {
name = "wine-3.0.2";
version = "3.0.2";
src = super.fetchurl {
url = "https://dl.winehq.org/wine/source/3.0/wine-3.0.2.tar.xz";
sha256 = "1zv3nk31s758ghp4795ym3w8l5868c2dllmjx9245qh9ahvp3mya"; };
});
};
}