mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-09-20 20:20:26 +03:00
Merge remote-tracking branch 'origin/master' into staging-next
This commit is contained in:
commit
887e96e875
@ -4688,6 +4688,15 @@
|
|||||||
fingerprint = "8FD2 153F 4889 541A 54F1 E09E 71B6 C31C 8A5A 9D21";
|
fingerprint = "8FD2 153F 4889 541A 54F1 E09E 71B6 C31C 8A5A 9D21";
|
||||||
}];
|
}];
|
||||||
};
|
};
|
||||||
|
dixslyf = {
|
||||||
|
name = "Dixon Sean Low Yan Feng";
|
||||||
|
email = "dixonseanlow@protonmail.com";
|
||||||
|
github = "dixslyf";
|
||||||
|
githubId = 56017218;
|
||||||
|
keys = [{
|
||||||
|
fingerprint = "E6F4 BFB4 8DE3 893F 68FC A15F FF5F 4B30 A41B BAC8";
|
||||||
|
}];
|
||||||
|
};
|
||||||
djacu = {
|
djacu = {
|
||||||
email = "daniel.n.baker@gmail.com";
|
email = "daniel.n.baker@gmail.com";
|
||||||
github = "djacu";
|
github = "djacu";
|
||||||
@ -13879,10 +13888,10 @@
|
|||||||
name = "Sandro Stikić";
|
name = "Sandro Stikić";
|
||||||
};
|
};
|
||||||
OPNA2608 = {
|
OPNA2608 = {
|
||||||
email = "christoph.neidahl@gmail.com";
|
email = "opna2608@protonmail.com";
|
||||||
github = "OPNA2608";
|
github = "OPNA2608";
|
||||||
githubId = 23431373;
|
githubId = 23431373;
|
||||||
name = "Christoph Neidahl";
|
name = "Cosima Neidahl";
|
||||||
};
|
};
|
||||||
orbekk = {
|
orbekk = {
|
||||||
email = "kjetil.orbekk@gmail.com";
|
email = "kjetil.orbekk@gmail.com";
|
||||||
@ -14620,15 +14629,6 @@
|
|||||||
fingerprint = "B00F E582 FD3F 0732 EA48 3937 F558 14E4 D687 4375";
|
fingerprint = "B00F E582 FD3F 0732 EA48 3937 F558 14E4 D687 4375";
|
||||||
}];
|
}];
|
||||||
};
|
};
|
||||||
PlayerNameHere = {
|
|
||||||
name = "Dixon Sean Low Yan Feng";
|
|
||||||
email = "dixonseanlow@protonmail.com";
|
|
||||||
github = "dixslyf";
|
|
||||||
githubId = 56017218;
|
|
||||||
keys = [{
|
|
||||||
fingerprint = "E6F4 BFB4 8DE3 893F 68FC A15F FF5F 4B30 A41B BAC8";
|
|
||||||
}];
|
|
||||||
};
|
|
||||||
plchldr = {
|
plchldr = {
|
||||||
email = "mail@oddco.de";
|
email = "mail@oddco.de";
|
||||||
github = "plchldr";
|
github = "plchldr";
|
||||||
@ -16786,6 +16786,12 @@
|
|||||||
}];
|
}];
|
||||||
name = "Shane Sveller";
|
name = "Shane Sveller";
|
||||||
};
|
};
|
||||||
|
shard7 = {
|
||||||
|
email = "sh7user@gmail.com";
|
||||||
|
github = "shard77";
|
||||||
|
githubId = 106669955;
|
||||||
|
name = "Léon Gessner";
|
||||||
|
};
|
||||||
shardy = {
|
shardy = {
|
||||||
email = "shardul@baral.ca";
|
email = "shardul@baral.ca";
|
||||||
github = "shardulbee";
|
github = "shardulbee";
|
||||||
|
@ -54,8 +54,8 @@ if ! gh auth status 2>/dev/null ; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Make sure this is configured before we start doing anything
|
# Make sure this is configured before we start doing anything
|
||||||
push_remote="$(git config branch.haskell-updates.pushRemote \
|
push_remote="$(git config branch.haskell-updates.pushRemote)" \
|
||||||
|| die 'Can'\''t determine pushRemote for haskell-updates. Please set using `git config branch.haskell-updates.pushremote <remote name>`.')"
|
|| die 'Can'\''t determine pushRemote for haskell-updates. Please set using `git config branch.haskell-updates.pushremote <remote name>`.'
|
||||||
|
|
||||||
# Fetch nixpkgs to get an up-to-date origin/haskell-updates branch.
|
# Fetch nixpkgs to get an up-to-date origin/haskell-updates branch.
|
||||||
echo "Fetching origin..."
|
echo "Fetching origin..."
|
||||||
|
@ -14,7 +14,7 @@ with lib;
|
|||||||
description = "Linux Audit daemon";
|
description = "Linux Audit daemon";
|
||||||
wantedBy = [ "basic.target" ];
|
wantedBy = [ "basic.target" ];
|
||||||
before = [ "shutdown.target" ];
|
before = [ "shutdown.target" ];
|
||||||
conflicts = [ "shutdown.target "];
|
conflicts = [ "shutdown.target" ];
|
||||||
|
|
||||||
unitConfig = {
|
unitConfig = {
|
||||||
ConditionVirtualization = "!container";
|
ConditionVirtualization = "!container";
|
||||||
|
@ -4,7 +4,7 @@ with lib;
|
|||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
pkg = pkgs.sane-backends.override {
|
pkg = config.hardware.sane.backends-package.override {
|
||||||
scanSnapDriversUnfree = config.hardware.sane.drivers.scanSnap.enable;
|
scanSnapDriversUnfree = config.hardware.sane.drivers.scanSnap.enable;
|
||||||
scanSnapDriversPackage = config.hardware.sane.drivers.scanSnap.package;
|
scanSnapDriversPackage = config.hardware.sane.drivers.scanSnap.package;
|
||||||
};
|
};
|
||||||
@ -57,6 +57,13 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hardware.sane.backends-package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.sane-backends;
|
||||||
|
defaultText = literalExpression "pkgs.sane-backends";
|
||||||
|
description = lib.mdDoc "Backends driver package to use.";
|
||||||
|
};
|
||||||
|
|
||||||
hardware.sane.snapshot = mkOption {
|
hardware.sane.snapshot = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = false;
|
default = false;
|
||||||
|
@ -45,6 +45,7 @@ in {
|
|||||||
systemd.services.vdr = {
|
systemd.services.vdr = {
|
||||||
description = "VDR";
|
description = "VDR";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
after = [ "network.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = ''
|
ExecStart = ''
|
||||||
${cfg.package}/bin/vdr \
|
${cfg.package}/bin/vdr \
|
||||||
|
@ -100,8 +100,8 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
systemd.services.tailscaled-autoconnect = mkIf (cfg.authKeyFile != null) {
|
systemd.services.tailscaled-autoconnect = mkIf (cfg.authKeyFile != null) {
|
||||||
after = ["tailscale.service"];
|
after = ["tailscaled.service"];
|
||||||
wants = ["tailscale.service"];
|
wants = ["tailscaled.service"];
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
|
@ -854,7 +854,7 @@ in
|
|||||||
BridgeRelay = true;
|
BridgeRelay = true;
|
||||||
ExtORPort.port = mkDefault "auto";
|
ExtORPort.port = mkDefault "auto";
|
||||||
ServerTransportPlugin.transports = mkDefault ["obfs4"];
|
ServerTransportPlugin.transports = mkDefault ["obfs4"];
|
||||||
ServerTransportPlugin.exec = mkDefault "${pkgs.obfs4}/bin/obfs4proxy managed";
|
ServerTransportPlugin.exec = mkDefault "${lib.getExe pkgs.obfs4} managed";
|
||||||
} // optionalAttrs (cfg.relay.role == "private-bridge") {
|
} // optionalAttrs (cfg.relay.role == "private-bridge") {
|
||||||
ExtraInfoStatistics = false;
|
ExtraInfoStatistics = false;
|
||||||
PublishServerDescriptor = false;
|
PublishServerDescriptor = false;
|
||||||
|
@ -1132,14 +1132,6 @@ in
|
|||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
|
||||||
assertion = any (host: host.kTLS) (attrValues virtualHosts) -> versionAtLeast cfg.package.version "1.21.4";
|
|
||||||
message = ''
|
|
||||||
services.nginx.virtualHosts.<name>.kTLS requires nginx version
|
|
||||||
1.21.4 or above; see the documentation for services.nginx.package.
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
assertion = all (host: !(host.enableACME && host.useACMEHost != null)) (attrValues virtualHosts);
|
assertion = all (host: !(host.enableACME && host.useACMEHost != null)) (attrValues virtualHosts);
|
||||||
message = ''
|
message = ''
|
||||||
@ -1348,6 +1340,8 @@ in
|
|||||||
nginx.gid = config.ids.gids.nginx;
|
nginx.gid = config.ids.gids.nginx;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
boot.kernelModules = optional (versionAtLeast config.boot.kernelPackages.kernel.version "4.17") "tls";
|
||||||
|
|
||||||
# do not delete the default temp directories created upon nginx startup
|
# do not delete the default temp directories created upon nginx startup
|
||||||
systemd.tmpfiles.rules = [
|
systemd.tmpfiles.rules = [
|
||||||
"X /tmp/systemd-private-%b-nginx.service-*/tmp/nginx_*"
|
"X /tmp/systemd-private-%b-nginx.service-*/tmp/nginx_*"
|
||||||
|
@ -104,7 +104,17 @@ stdenv.mkDerivation rec {
|
|||||||
patches = [
|
patches = [
|
||||||
./option-debugging.patch
|
./option-debugging.patch
|
||||||
# ffmpeg 6 fix https://github.com/cmus/cmus/pull/1254/
|
# ffmpeg 6 fix https://github.com/cmus/cmus/pull/1254/
|
||||||
(fetchpatch { url = "https://github.com/cmus/cmus/commit/07b368ff1500e1d2957cad61ced982fa10243fbc.patch"; hash = "sha256-5gsz3q8R9FPobHoLj8BQPsa9s4ULEA9w2VQR+gmpmgA="; })
|
(fetchpatch {
|
||||||
|
name = "ffmpeg-6-compat.patch";
|
||||||
|
url = "https://github.com/cmus/cmus/commit/07b368ff1500e1d2957cad61ced982fa10243fbc.patch";
|
||||||
|
hash = "sha256-5gsz3q8R9FPobHoLj8BQPsa9s4ULEA9w2VQR+gmpmgA=";
|
||||||
|
})
|
||||||
|
# function detection breaks with clang 16
|
||||||
|
(fetchpatch {
|
||||||
|
name = "clang-16-function-detection.patch";
|
||||||
|
url = "https://github.com/cmus/cmus/commit/4123b54bad3d8874205aad7f1885191c8e93343c.patch";
|
||||||
|
hash = "sha256-YKqroibgMZFxWQnbmLIHSHR5sMJduyEv6swnKZQ33Fg=";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
@ -16,13 +16,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "miniaudicle";
|
pname = "miniaudicle";
|
||||||
version = "1.5.0.7";
|
version = "1.5.2.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ccrma";
|
owner = "ccrma";
|
||||||
repo = "miniAudicle";
|
repo = "miniAudicle";
|
||||||
rev = "chuck-${finalAttrs.version}";
|
rev = "chuck-${finalAttrs.version}";
|
||||||
hash = "sha256-CqsajNLcOp7CS5RsVabWM6APnNh4alSKb2/eoZ7F4Ao=";
|
hash = "sha256-jpPF2Qx/6tiotsj92m1XmxsEUgtm5029ijpu3O8B9qM=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -5,11 +5,11 @@
|
|||||||
|
|
||||||
let
|
let
|
||||||
pname = "codux";
|
pname = "codux";
|
||||||
version = "15.16.2";
|
version = "15.17.2";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/wixplosives/codux-versions/releases/download/${version}/Codux-${version}.x86_64.AppImage";
|
url = "https://github.com/wixplosives/codux-versions/releases/download/${version}/Codux-${version}.x86_64.AppImage";
|
||||||
sha256 = "sha256-GKn8T3MEh+MnOqUnxruTqbnfxUcjGh6EAt+6LHTNCiY=";
|
sha256 = "sha256-6y3c9SbRxGhfND0bsMh0yYs7Dy8B23VSjj4qQ/2eBos=";
|
||||||
};
|
};
|
||||||
|
|
||||||
appimageContents = appimageTools.extractType2 { inherit pname version src; };
|
appimageContents = appimageTools.extractType2 { inherit pname version src; };
|
||||||
|
@ -8,18 +8,17 @@
|
|||||||
, gtk3
|
, gtk3
|
||||||
, gtk-mac-integration
|
, gtk-mac-integration
|
||||||
, glib
|
, glib
|
||||||
, amtk
|
|
||||||
, tepl
|
, tepl
|
||||||
|
, libgedit-amtk
|
||||||
|
, libgedit-gtksourceview
|
||||||
, libpeas
|
, libpeas
|
||||||
, libxml2
|
, libxml2
|
||||||
, gtksourceview4
|
|
||||||
, gsettings-desktop-schemas
|
, gsettings-desktop-schemas
|
||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
, gtk-doc
|
, gtk-doc
|
||||||
, gobject-introspection
|
, gobject-introspection
|
||||||
, docbook-xsl-nons
|
, docbook-xsl-nons
|
||||||
, ninja
|
, ninja
|
||||||
, libsoup
|
|
||||||
, gnome
|
, gnome
|
||||||
, gspell
|
, gspell
|
||||||
, perl
|
, perl
|
||||||
@ -30,13 +29,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "gedit";
|
pname = "gedit";
|
||||||
version = "44.2";
|
version = "46.1";
|
||||||
|
|
||||||
outputs = [ "out" "devdoc" ];
|
outputs = [ "out" "devdoc" ];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/gedit/${lib.versions.major version}/gedit-${version}.tar.xz";
|
url = "mirror://gnome/sources/gedit/${lib.versions.major version}/gedit-${version}.tar.xz";
|
||||||
sha256 = "O7sbN3XUwnfa9UqqtEsOuDpOsfCfA5GAAEHJ5WiT7BE=";
|
sha256 = "oabjfwQXZd/3InofVXi29J+q8Bax4X6GnK9b+5TGqk4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
@ -64,15 +63,14 @@ stdenv.mkDerivation rec {
|
|||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
amtk
|
|
||||||
tepl
|
tepl
|
||||||
glib
|
glib
|
||||||
gsettings-desktop-schemas
|
gsettings-desktop-schemas
|
||||||
gspell
|
gspell
|
||||||
gtk3
|
gtk3
|
||||||
gtksourceview4
|
libgedit-amtk
|
||||||
|
libgedit-gtksourceview
|
||||||
libpeas
|
libpeas
|
||||||
libsoup
|
|
||||||
] ++ lib.optionals stdenv.isDarwin [
|
] ++ lib.optionals stdenv.isDarwin [
|
||||||
gtk-mac-integration
|
gtk-mac-integration
|
||||||
];
|
];
|
||||||
@ -96,7 +94,7 @@ stdenv.mkDerivation rec {
|
|||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://wiki.gnome.org/Apps/Gedit";
|
homepage = "https://wiki.gnome.org/Apps/Gedit";
|
||||||
description = "Former GNOME text editor";
|
description = "Former GNOME text editor";
|
||||||
maintainers = [ ];
|
maintainers = with maintainers; [ bobby285271 ];
|
||||||
license = licenses.gpl2Plus;
|
license = licenses.gpl2Plus;
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
mainProgram = "gedit";
|
mainProgram = "gedit";
|
||||||
|
@ -8,10 +8,10 @@
|
|||||||
, wrapGAppsHook
|
, wrapGAppsHook
|
||||||
, gsettings-desktop-schemas
|
, gsettings-desktop-schemas
|
||||||
, gspell
|
, gspell
|
||||||
, gtksourceview4
|
, libgedit-amtk
|
||||||
|
, libgedit-gtksourceview
|
||||||
, libgee
|
, libgee
|
||||||
, tepl
|
, tepl
|
||||||
, amtk
|
|
||||||
, gnome
|
, gnome
|
||||||
, glib
|
, glib
|
||||||
, pkg-config
|
, pkg-config
|
||||||
@ -21,12 +21,12 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "3.44.0";
|
version = "3.46.0";
|
||||||
pname = "gnome-latex";
|
pname = "gnome-latex";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||||
sha256 = "iL1TQL0ox+0Bx5ZqOgBzK72QJ3PfWsZZvmrRGAap50Q=";
|
sha256 = "1nVVY5sqFaiuvVTzNTVORP40MxQ648s8ynqOJvgRKto=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
@ -41,12 +41,12 @@ stdenv.mkDerivation rec {
|
|||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
amtk
|
|
||||||
gnome.adwaita-icon-theme
|
gnome.adwaita-icon-theme
|
||||||
glib
|
glib
|
||||||
gsettings-desktop-schemas
|
gsettings-desktop-schemas
|
||||||
gspell
|
gspell
|
||||||
gtksourceview4
|
libgedit-amtk
|
||||||
|
libgedit-gtksourceview
|
||||||
libgee
|
libgee
|
||||||
libxml2
|
libxml2
|
||||||
tepl
|
tepl
|
||||||
@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
|
|||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://wiki.gnome.org/Apps/GNOME-LaTeX";
|
homepage = "https://wiki.gnome.org/Apps/GNOME-LaTeX";
|
||||||
description = "A LaTeX editor for the GNOME desktop";
|
description = "A LaTeX editor for the GNOME desktop";
|
||||||
maintainers = [ maintainers.manveru ];
|
maintainers = with maintainers; [ manveru bobby285271 ];
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
mainProgram = "gnome-latex";
|
mainProgram = "gnome-latex";
|
||||||
|
@ -13,7 +13,7 @@ let
|
|||||||
genericName = "Quartus Prime";
|
genericName = "Quartus Prime";
|
||||||
categories = [ "Development" ];
|
categories = [ "Development" ];
|
||||||
};
|
};
|
||||||
# I think modelsim_ase/linux/vlm checksums itself, so use FHSUserEnv instead of `patchelf`
|
# I think questa_fse/linux/vlm checksums itself, so use FHSUserEnv instead of `patchelf`
|
||||||
in buildFHSEnv rec {
|
in buildFHSEnv rec {
|
||||||
name = "quartus-prime-lite"; # wrapped
|
name = "quartus-prime-lite"; # wrapped
|
||||||
|
|
||||||
@ -27,8 +27,13 @@ in buildFHSEnv rec {
|
|||||||
glib
|
glib
|
||||||
xorg.libICE
|
xorg.libICE
|
||||||
xorg.libSM
|
xorg.libSM
|
||||||
zlib
|
xorg.libXau
|
||||||
|
xorg.libXdmcp
|
||||||
libudev0-shim
|
libudev0-shim
|
||||||
|
bzip2
|
||||||
|
brotli
|
||||||
|
expat
|
||||||
|
dbus
|
||||||
# qsys requirements
|
# qsys requirements
|
||||||
xorg.libXtst
|
xorg.libXtst
|
||||||
xorg.libXi
|
xorg.libXi
|
||||||
@ -43,7 +48,7 @@ in buildFHSEnv rec {
|
|||||||
fontconfig = pkgs.fontconfig.override { inherit freetype; };
|
fontconfig = pkgs.fontconfig.override { inherit freetype; };
|
||||||
libXft = pkgs.xorg.libXft.override { inherit freetype fontconfig; };
|
libXft = pkgs.xorg.libXft.override { inherit freetype fontconfig; };
|
||||||
in [
|
in [
|
||||||
# modelsim requirements
|
# questa requirements
|
||||||
libxml2
|
libxml2
|
||||||
ncurses5
|
ncurses5
|
||||||
unixODBC
|
unixODBC
|
||||||
@ -58,15 +63,15 @@ in buildFHSEnv rec {
|
|||||||
];
|
];
|
||||||
|
|
||||||
extraInstallCommands = ''
|
extraInstallCommands = ''
|
||||||
mkdir -p $out/share/applications $out/share/icons/128x128
|
mkdir -p $out/share/applications $out/share/icons/hicolor/64x64/apps
|
||||||
ln -s ${desktopItem}/share/applications/* $out/share/applications
|
ln -s ${desktopItem}/share/applications/* $out/share/applications
|
||||||
ln -s ${unwrapped}/licenses/images/dc_quartus_panel_logo.png $out/share/icons/128x128/quartus.png
|
ln -s ${unwrapped}/quartus/adm/quartusii.png $out/share/icons/hicolor/64x64/apps/quartus.png
|
||||||
|
|
||||||
progs_to_wrap=(
|
progs_to_wrap=(
|
||||||
"${unwrapped}"/quartus/bin/*
|
"${unwrapped}"/quartus/bin/*
|
||||||
"${unwrapped}"/quartus/sopc_builder/bin/qsys-{generate,edit,script}
|
"${unwrapped}"/quartus/sopc_builder/bin/qsys-{generate,edit,script}
|
||||||
"${unwrapped}"/modelsim_ase/bin/*
|
"${unwrapped}"/questa_fse/bin/*
|
||||||
"${unwrapped}"/modelsim_ase/linuxaloem/lmutil
|
"${unwrapped}"/questa_fse/linux_x86_64/lmutil
|
||||||
)
|
)
|
||||||
|
|
||||||
wrapper=$out/bin/${name}
|
wrapper=$out/bin/${name}
|
||||||
@ -78,8 +83,8 @@ in buildFHSEnv rec {
|
|||||||
mkdir -p "$(dirname "$wrapped")"
|
mkdir -p "$(dirname "$wrapped")"
|
||||||
echo "#!${runtimeShell}" >> "$wrapped"
|
echo "#!${runtimeShell}" >> "$wrapped"
|
||||||
case "$relname" in
|
case "$relname" in
|
||||||
modelsim_ase/*)
|
questa_fse/*)
|
||||||
echo "export NIXPKGS_IS_MODELSIM_WRAPPER=1" >> "$wrapped"
|
echo "export NIXPKGS_IS_QUESTA_WRAPPER=1" >> "$wrapped"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
echo "$wrapper $prog \"\$@\"" >> "$wrapped"
|
echo "$wrapper $prog \"\$@\"" >> "$wrapped"
|
||||||
@ -98,10 +103,10 @@ in buildFHSEnv rec {
|
|||||||
# https://community.intel.com/t5/Intel-FPGA-Software-Installation/Running-Quartus-Prime-Standard-on-WSL-crashes-in-libudev-so/m-p/1189032
|
# https://community.intel.com/t5/Intel-FPGA-Software-Installation/Running-Quartus-Prime-Standard-on-WSL-crashes-in-libudev-so/m-p/1189032
|
||||||
#
|
#
|
||||||
# But, as can be seen in the above resource, LD_PRELOADing libudev breaks
|
# But, as can be seen in the above resource, LD_PRELOADing libudev breaks
|
||||||
# compiling encrypted device libraries in ModelSim (with error
|
# compiling encrypted device libraries in Questa (with error
|
||||||
# `(vlog-2163) Macro `<protected> is undefined.`), so only use LD_PRELOAD
|
# `(vlog-2163) Macro `<protected> is undefined.`), so only use LD_PRELOAD
|
||||||
# for non-ModelSim wrappers.
|
# for non-Questa wrappers.
|
||||||
if [ "$NIXPKGS_IS_MODELSIM_WRAPPER" != 1 ]; then
|
if [ "$NIXPKGS_IS_QUESTA_WRAPPER" != 1 ]; then
|
||||||
export LD_PRELOAD=''${LD_PRELOAD:+$LD_PRELOAD:}/usr/lib/libudev.so.0
|
export LD_PRELOAD=''${LD_PRELOAD:+$LD_PRELOAD:}/usr/lib/libudev.so.0
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
@ -112,8 +117,8 @@ in buildFHSEnv rec {
|
|||||||
passthru = {
|
passthru = {
|
||||||
inherit unwrapped;
|
inherit unwrapped;
|
||||||
tests = {
|
tests = {
|
||||||
modelsimEncryptedModel = runCommand "quartus-prime-lite-test-modelsim-encrypted-model" {} ''
|
questaEncryptedModel = runCommand "quartus-prime-lite-test-questa-encrypted-model" {} ''
|
||||||
"${quartus-prime-lite}/bin/vlog" "${quartus-prime-lite.unwrapped}/modelsim_ase/altera/verilog/src/arriav_atoms_ncrypt.v"
|
"${quartus-prime-lite}/bin/vlog" "${quartus-prime-lite.unwrapped}/questa_fse/intel/verilog/src/arriav_atoms_ncrypt.v"
|
||||||
touch "$out"
|
touch "$out"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
@ -25,20 +25,20 @@ let
|
|||||||
) deviceIds;
|
) deviceIds;
|
||||||
|
|
||||||
componentHashes = {
|
componentHashes = {
|
||||||
"arria_lite" = "140jqnb97vrxx6398cpgpw35zrrx3z5kv1x5gr9is1xdbnf4fqhy";
|
"arria_lite" = "07p862i3dn2c0s3p39y23g94id59nzrpzbwdmrdnhy61ca3m0vzp";
|
||||||
"cyclone" = "116kf69ryqcmlc2k8ra0v32jy7nrk7w4s5z3yll7h3c3r68xcsfr";
|
"cyclone" = "0dic35j9q1ndrn8i2vdqg9176fr3kn6c8iiv0c03nni0m4ar3ykn";
|
||||||
"cyclone10lp" = "07wpgx9bap6rlr5bcmr9lpsxi3cy4yar4n3pxfghazclzqfi2cyl";
|
"cyclone10lp" = "03w4f71fhhwvnkzzly9m15nrdf0jw8m0ckhhzv1vg3nd9pkk86jh";
|
||||||
"cyclonev" = "11baa9zpmmfkmyv33w1r57ipf490gnd3dpi2daripf38wld8lgak";
|
"cyclonev" = "091mlg2iy452fk28idbiwi3rhcgkbhg7ggh3xvnqa9jrfffq9pjc";
|
||||||
"max" = "1zy2d42dqmn97fwmv4x6pmihh4m23jypv3nd830m1mj7jkjx9kcq";
|
"max" = "0r649l2n6hj6x5v6hx8k4xnvd6df6wxajx1xp2prq6dpapjfb06y";
|
||||||
"max10" = "1hvi9cpcjgbih3l6nh8x1vsp0lky5ax85jb2yqmzla80n7dl9ahs";
|
"max10" = "1p5ds3cq2gq2mzq2hjwwjhw50c931kgiqxaf7ss228c6s7rv6zpk";
|
||||||
};
|
};
|
||||||
|
|
||||||
version = "20.1.1.720";
|
version = "22.1std.2.922";
|
||||||
|
|
||||||
download = {name, sha256}: fetchurl {
|
download = {name, sha256}: fetchurl {
|
||||||
inherit name sha256;
|
inherit name sha256;
|
||||||
# e.g. "20.1.1.720" -> "20.1std.1/720"
|
# e.g. "22.1std.2.922" -> "22.1std.2/922"
|
||||||
url = "https://downloads.intel.com/akdlm/software/acdsinst/${lib.versions.majorMinor version}std.${lib.versions.patch version}/${lib.elemAt (lib.splitVersion version) 3}/ib_installers/${name}";
|
url = "https://downloads.intel.com/akdlm/software/acdsinst/${lib.versions.majorMinor version}std.${lib.elemAt (lib.splitVersion version) 3}/${lib.elemAt (lib.splitVersion version) 4}/ib_installers/${name}";
|
||||||
};
|
};
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
@ -47,10 +47,10 @@ in stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = map download ([{
|
src = map download ([{
|
||||||
name = "QuartusLiteSetup-${version}-linux.run";
|
name = "QuartusLiteSetup-${version}-linux.run";
|
||||||
sha256 = "0mjp1rg312dipr7q95pb4nf4b8fwvxgflnd1vafi3g9cshbb1c3k";
|
sha256 = "078x42pbc51n6ynrvzpwiwgi6g2sg4csv6x2vnnzjgx6bg5kq6l3";
|
||||||
} {
|
} {
|
||||||
name = "ModelSimSetup-${version}-linux.run";
|
name = "QuestaSetup-${version}-linux.run";
|
||||||
sha256 = "1cqgv8x6vqga8s4v19yhmgrr886rb6p7sbx80528df5n4rpr2k4i";
|
sha256 = "04pv5fq3kfy3xsjnj435zzpj5kf6329cbs1xgvkgmq1gpn4ji5zy";
|
||||||
}] ++ (map (id: {
|
}] ++ (map (id: {
|
||||||
name = "${id}-${version}.qdz";
|
name = "${id}-${version}.qdz";
|
||||||
sha256 = lib.getAttr id componentHashes;
|
sha256 = lib.getAttr id componentHashes;
|
||||||
@ -68,12 +68,12 @@ in stdenv.mkDerivation rec {
|
|||||||
patchelf --interpreter $(cat $NIX_CC/nix-support/dynamic-linker) $TEMP/${installer.name}
|
patchelf --interpreter $(cat $NIX_CC/nix-support/dynamic-linker) $TEMP/${installer.name}
|
||||||
'';
|
'';
|
||||||
copyComponent = component: "cp ${component} $TEMP/${component.name}";
|
copyComponent = component: "cp ${component} $TEMP/${component.name}";
|
||||||
# leaves enabled: quartus, modelsim_ase, devinfo
|
# leaves enabled: quartus, questa_fse, devinfo
|
||||||
disabledComponents = [
|
disabledComponents = [
|
||||||
"quartus_help"
|
"quartus_help"
|
||||||
"quartus_update"
|
"quartus_update"
|
||||||
# not modelsim_ase
|
# not questa_fse
|
||||||
"modelsim_ae"
|
"questa_fe"
|
||||||
] ++ (lib.attrValues unsupportedDeviceIds);
|
] ++ (lib.attrValues unsupportedDeviceIds);
|
||||||
in ''
|
in ''
|
||||||
${lib.concatMapStringsSep "\n" copyInstaller installers}
|
${lib.concatMapStringsSep "\n" copyInstaller installers}
|
||||||
|
@ -24,6 +24,7 @@
|
|||||||
, gstreamer
|
, gstreamer
|
||||||
, gst-plugins-base
|
, gst-plugins-base
|
||||||
, gst-plugins-bad
|
, gst-plugins-bad
|
||||||
|
, gst-plugins-good
|
||||||
, gtest
|
, gtest
|
||||||
, gtk3
|
, gtk3
|
||||||
, hicolor-icon-theme
|
, hicolor-icon-theme
|
||||||
@ -90,6 +91,7 @@ stdenv.mkDerivation rec {
|
|||||||
gstreamer
|
gstreamer
|
||||||
gst-plugins-base
|
gst-plugins-base
|
||||||
gst-plugins-bad
|
gst-plugins-bad
|
||||||
|
gst-plugins-good
|
||||||
gtk3
|
gtk3
|
||||||
hicolor-icon-theme
|
hicolor-icon-theme
|
||||||
ilmbase
|
ilmbase
|
||||||
|
@ -7,16 +7,16 @@
|
|||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "gimoji";
|
pname = "gimoji";
|
||||||
version = "0.7.1";
|
version = "0.7.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "zeenix";
|
owner = "zeenix";
|
||||||
repo = "gimoji";
|
repo = "gimoji";
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-rXGnSXqKxxmC2V2qapWZb+TB89a854ZGq1kG/3JjlUg=";
|
hash = "sha256-PF7vjbmoNSBD9C6JOB1s5NHnBEkv1LD/3RZAB0/HFPc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-WYMqKwe78D00ZZ+uwV61keRBNiJQKNqlpQtteVR0bVA=";
|
cargoHash = "sha256-iJblgcwn9uCl2X0AjG+dlAwdwwyZ321LRBFjDCZOr/A=";
|
||||||
|
|
||||||
buildInputs = lib.optionals stdenv.isDarwin [
|
buildInputs = lib.optionals stdenv.isDarwin [
|
||||||
darwin.apple_sdk.frameworks.AppKit
|
darwin.apple_sdk.frameworks.AppKit
|
||||||
|
@ -5,11 +5,11 @@
|
|||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "mainsail";
|
pname = "mainsail";
|
||||||
version = "2.9.0";
|
version = "2.9.1";
|
||||||
|
|
||||||
src = fetchzip {
|
src = fetchzip {
|
||||||
url = "https://github.com/mainsail-crew/mainsail/releases/download/v${version}/mainsail.zip";
|
url = "https://github.com/mainsail-crew/mainsail/releases/download/v${version}/mainsail.zip";
|
||||||
hash = "sha256-7GnPdnBoK0lErUgnG3dw644ASb0/1pwGqqvxfn/81T0=";
|
hash = "sha256-OrCS+0zfXs72vJbrqjvEaHJWD0ndozfCcHs1N9Gqios=";
|
||||||
stripRoot = false;
|
stripRoot = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ let
|
|||||||
vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
|
vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
pname = "vivaldi";
|
pname = "vivaldi";
|
||||||
version = "6.5.3206.39";
|
version = "6.5.3206.48";
|
||||||
|
|
||||||
suffix = {
|
suffix = {
|
||||||
aarch64-linux = "arm64";
|
aarch64-linux = "arm64";
|
||||||
@ -34,8 +34,8 @@ in stdenv.mkDerivation rec {
|
|||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}-1_${suffix}.deb";
|
url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}-1_${suffix}.deb";
|
||||||
hash = {
|
hash = {
|
||||||
aarch64-linux = "sha256-7f3JRkkBGF+7EFGbzosUcKUUFswmKhpacbcd0AaY8fw=";
|
aarch64-linux = "sha256-laerVZWB9kNozy0MxYAPXbTjcfgvr+jL18NMP5u7ST0=";
|
||||||
x86_64-linux = "sha256-louqE7Icf8qEiegzoVd/1jzA+wLFTrQyN3V8g64uQT8=";
|
x86_64-linux = "sha256-3gRvPSSyJapqay6nePlMA1R/tfFI75mHi+mx3f+wfjQ=";
|
||||||
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
|
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -762,6 +762,15 @@
|
|||||||
"spdx": "MPL-2.0",
|
"spdx": "MPL-2.0",
|
||||||
"vendorHash": "sha256-QxbZv6YMa5/I4bTeQBNdmG3EKtLEmstnH7HMiZzFJrI="
|
"vendorHash": "sha256-QxbZv6YMa5/I4bTeQBNdmG3EKtLEmstnH7HMiZzFJrI="
|
||||||
},
|
},
|
||||||
|
"migadu": {
|
||||||
|
"hash": "sha256-Alr9E9kaShDls8KZzi1OAennXi+T7y4F6AnpMLnhOgM=",
|
||||||
|
"homepage": "https://registry.terraform.io/providers/metio/migadu",
|
||||||
|
"owner": "metio",
|
||||||
|
"repo": "terraform-provider-migadu",
|
||||||
|
"rev": "2023.12.21",
|
||||||
|
"spdx": "0BSD",
|
||||||
|
"vendorHash": "sha256-xCra7bh/vydRUAV/g5L8ZbJR3K+UeT8ovz7vMpsupAE="
|
||||||
|
},
|
||||||
"minio": {
|
"minio": {
|
||||||
"hash": "sha256-i3YYBffP7Jp3f0wN1ZwP+c7C8WN8EKUh7JOKzbH0R/I=",
|
"hash": "sha256-i3YYBffP7Jp3f0wN1ZwP+c7C8WN8EKUh7JOKzbH0R/I=",
|
||||||
"homepage": "https://registry.terraform.io/providers/aminueza/minio",
|
"homepage": "https://registry.terraform.io/providers/aminueza/minio",
|
||||||
|
@ -11,16 +11,16 @@
|
|||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "twitch-tui";
|
pname = "twitch-tui";
|
||||||
version = "2.6.0";
|
version = "2.6.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Xithrius";
|
owner = "Xithrius";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-UPcJHuqDnyg2U3aNtd44dqt2iC2iLkR4wzsOjAByISw=";
|
hash = "sha256-q7Z7a/Mfi6djUGK0xvhD0WznxQlDyejZtaq9rSlNz8g=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-HFBCLYjrDAPU2EZ1NQ+A0mAFo5jvj79Ghge6+D1PBAg=";
|
cargoHash = "sha256-utnwDqQe0PScRXUD/mC6/uSX8cjBHLbRsO0GcVntPKk=";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
pkg-config
|
pkg-config
|
||||||
|
@ -60,6 +60,8 @@ stdenv.mkDerivation rec {
|
|||||||
gst-plugins-bad
|
gst-plugins-bad
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
pythonPath = with python3Packages; [
|
pythonPath = with python3Packages; [
|
||||||
pygobject3
|
pygobject3
|
||||||
pycairo
|
pycairo
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
, geoip
|
, geoip
|
||||||
, gettext
|
, gettext
|
||||||
, glib
|
, glib
|
||||||
|
, glib-networking
|
||||||
, gtk3
|
, gtk3
|
||||||
, json-glib
|
, json-glib
|
||||||
, libappindicator
|
, libappindicator
|
||||||
@ -50,7 +51,9 @@ stdenv.mkDerivation rec {
|
|||||||
libmrss
|
libmrss
|
||||||
libproxy
|
libproxy
|
||||||
libsoup_3
|
libsoup_3
|
||||||
] ++ libsoup_3.propagatedUserEnvPackages;
|
# For TLS support.
|
||||||
|
glib-networking
|
||||||
|
];
|
||||||
|
|
||||||
doCheck = false; # Requires network access
|
doCheck = false; # Requires network access
|
||||||
|
|
||||||
|
@ -11,13 +11,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "dump1090";
|
pname = "dump1090";
|
||||||
version = "8.2";
|
version = "9.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "flightaware";
|
owner = "flightaware";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-SUvK9XTXIDimEMEnORnp/Af/F030TZTxLI43Jzz31Js=";
|
sha256 = "sha256-rc4mg+Px+0p2r38wxIah/rHqWjHSU0+KCPgqj/Gl3oo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
@ -31,9 +31,9 @@ stdenv.mkDerivation rec {
|
|||||||
] ++ lib.optional stdenv.isLinux limesuite;
|
] ++ lib.optional stdenv.isLinux limesuite;
|
||||||
|
|
||||||
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang
|
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang
|
||||||
"-Wno-implicit-function-declaration -Wno-int-conversion";
|
"-Wno-implicit-function-declaration -Wno-int-conversion -Wno-unknown-warning-option";
|
||||||
|
|
||||||
buildFlags = [ "dump1090" "view1090" ];
|
buildFlags = [ "DUMP1090_VERSION=${version}" "dump1090" "view1090" ];
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "5.12.181";
|
version = "5.12.182";
|
||||||
in
|
in
|
||||||
rustPlatform.buildRustPackage {
|
rustPlatform.buildRustPackage {
|
||||||
pname = "git-mit";
|
pname = "git-mit";
|
||||||
@ -20,10 +20,10 @@ rustPlatform.buildRustPackage {
|
|||||||
owner = "PurpleBooth";
|
owner = "PurpleBooth";
|
||||||
repo = "git-mit";
|
repo = "git-mit";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-XXVLYKicFcYNx33eElqlZcDNZgq4FnbwvYSshZwwHls=";
|
hash = "sha256-MED38N+4ZeiFqsdaVb7TK7WsANwEOPR8hqcgMBGS64c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-PskRV+LfHjHK0WTwb9Lt2E2R9g+lyyEY7A1vvFLhPdw=";
|
cargoHash = "sha256-KfROYHiau6nKnsMAyVk1Rb4ciRMJ721zfLnEcUc2qO0=";
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
||||||
|
@ -82,7 +82,6 @@ let
|
|||||||
"email" = "someone@nixos.org";
|
"email" = "someone@nixos.org";
|
||||||
"phone" = "+31 71 452 5670";
|
"phone" = "+31 71 452 5670";
|
||||||
"country" = "nl";
|
"country" = "nl";
|
||||||
"street" = "Hogeweide 346";
|
|
||||||
"state" = "Province of Utrecht";
|
"state" = "Province of Utrecht";
|
||||||
"city" = "Utrecht";
|
"city" = "Utrecht";
|
||||||
"product" = PRODUCT;
|
"product" = PRODUCT;
|
||||||
|
@ -5,12 +5,12 @@
|
|||||||
}: stdenv.mkDerivation rec {
|
}: stdenv.mkDerivation rec {
|
||||||
|
|
||||||
pname = "vdr";
|
pname = "vdr";
|
||||||
version = "2.6.4";
|
version = "2.6.5";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "git://git.tvdr.de/vdr.git";
|
url = "git://git.tvdr.de/vdr.git";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-QCq+IxulrxDX+fzI+IHywboemJQnUfZrHRzP6B9qfvk=";
|
hash = "sha256-CKgo1Saj6EkSRNoIh16wzGHmToIMADZtjd8VQ+c1nus=";
|
||||||
};
|
};
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -19,12 +19,12 @@
|
|||||||
}:
|
}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "vdr-markad";
|
pname = "vdr-markad";
|
||||||
version = "3.3.6";
|
version = "3.4.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
repo = "vdr-plugin-markad";
|
repo = "vdr-plugin-markad";
|
||||||
owner = "kfb77";
|
owner = "kfb77";
|
||||||
sha256 = "sha256-aHhQljWE1om/mILM+TXB9uPTrUwNNc4Loiejbakj9NU=";
|
sha256 = "sha256-C7s/92xmG6bffRqr3ndecmi/RbVlboRsYZLLThLYEzQ=";
|
||||||
rev = "V${version}";
|
rev = "V${version}";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -9,15 +9,17 @@
|
|||||||
, libva
|
, libva
|
||||||
, libvdpau
|
, libvdpau
|
||||||
, xorg
|
, xorg
|
||||||
|
, libGL
|
||||||
|
, libGLU
|
||||||
}:
|
}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "vdr-softhddevice";
|
pname = "vdr-softhddevice";
|
||||||
version = "2.0.6";
|
version = "2.0.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ua0lnj";
|
owner = "ua0lnj";
|
||||||
repo = "vdr-plugin-softhddevice";
|
repo = "vdr-plugin-softhddevice";
|
||||||
sha256 = "sha256-eE2cxqV/XpGyxneVzpP7f215IReH1nwGEkfCHbxUgVs=";
|
sha256 = "sha256-AzWYgR0IdB4922HxH7K83heRIEi31fz20Z2W7E9ljXw=";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -30,6 +32,8 @@ stdenv.mkDerivation rec {
|
|||||||
libvdpau
|
libvdpau
|
||||||
xorg.libxcb
|
xorg.libxcb
|
||||||
xorg.libX11
|
xorg.libX11
|
||||||
|
libGL
|
||||||
|
libGLU
|
||||||
];
|
];
|
||||||
|
|
||||||
makeFlags = [ "DESTDIR=$(out)" ];
|
makeFlags = [ "DESTDIR=$(out)" ];
|
||||||
|
@ -3,16 +3,16 @@
|
|||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "wmfocus";
|
pname = "wmfocus";
|
||||||
version = "1.4.0";
|
version = "1.5.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "svenstaro";
|
owner = "svenstaro";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-zXqPZORwi7X1wBTecPg9nOCvRHWNTtloCpgbPwtFhzo=";
|
sha256 = "sha256-94MgE2j8HaS8IyzHEDtoqTls2A8xD96v2iAFx9XfMcw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-4eoV/viI7Q7I7mIqcHVAyPf/y2RWaWX0B+mLZWMEbcI=";
|
cargoHash = "sha256-sSJAlDe1vBYs1vZW/X04cU14Wj1OF4Jy8oI4uWkrEjk=";
|
||||||
|
|
||||||
nativeBuildInputs = [ python3 pkg-config ];
|
nativeBuildInputs = [ python3 pkg-config ];
|
||||||
buildInputs = [ cairo expat libxkbcommon xorg.xcbutilkeysyms ];
|
buildInputs = [ cairo expat libxkbcommon xorg.xcbutilkeysyms ];
|
||||||
|
12
pkgs/build-support/kernel/make-initrd-ng/Cargo.lock
generated
12
pkgs/build-support/kernel/make-initrd-ng/Cargo.lock
generated
@ -57,18 +57,18 @@ checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "proc-macro2"
|
name = "proc-macro2"
|
||||||
version = "1.0.70"
|
version = "1.0.73"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
|
checksum = "2dd5e8a1f1029c43224ad5898e50140c2aebb1705f19e67c918ebf5b9e797fe1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"unicode-ident",
|
"unicode-ident",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quote"
|
name = "quote"
|
||||||
version = "1.0.33"
|
version = "1.0.34"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
|
checksum = "22a37c9326af5ed140c86a46655b5278de879853be5573c01df185b6f49a580a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
]
|
]
|
||||||
@ -95,9 +95,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "syn"
|
name = "syn"
|
||||||
version = "2.0.41"
|
version = "2.0.44"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "44c8b28c477cc3bf0e7966561e3460130e1255f7a1cf71931075f1c5e7a7e269"
|
checksum = "92d27c2c202598d05175a6dd3af46824b7f747f8d8e9b14c623f19fa5069735d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
|
@ -193,7 +193,7 @@ let
|
|||||||
|
|
||||||
if grep -q workspace "$out/Cargo.toml"; then
|
if grep -q workspace "$out/Cargo.toml"; then
|
||||||
chmod u+w "$out/Cargo.toml"
|
chmod u+w "$out/Cargo.toml"
|
||||||
${replaceWorkspaceValues} "$out/Cargo.toml" "${tree}/Cargo.toml"
|
${replaceWorkspaceValues} "$out/Cargo.toml" "$(${cargo}/bin/cargo metadata --format-version 1 --no-deps --manifest-path $crateCargoTOML | ${jq}/bin/jq -r .workspace_root)/Cargo.toml"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Cargo is happy with empty metadata.
|
# Cargo is happy with empty metadata.
|
||||||
|
@ -1,62 +1,119 @@
|
|||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
|
||||||
, fetchurl
|
, fetchFromGitHub
|
||||||
, autoPatchelfHook
|
, buildNpmPackage
|
||||||
, dpkg
|
|
||||||
, wrapGAppsHook
|
|
||||||
, alsa-lib
|
|
||||||
, gtk3
|
|
||||||
, mesa
|
|
||||||
, nspr
|
|
||||||
, nss
|
|
||||||
, systemd
|
|
||||||
, nix-update-script
|
, nix-update-script
|
||||||
|
, electron
|
||||||
|
, writeShellScriptBin
|
||||||
|
, makeWrapper
|
||||||
|
, copyDesktopItems
|
||||||
|
, makeDesktopItem
|
||||||
|
, pkg-config
|
||||||
|
, pixman
|
||||||
|
, cairo
|
||||||
|
, pango
|
||||||
|
, npm-lockfile-fix
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
buildNpmPackage rec {
|
||||||
pname = "bruno";
|
pname = "bruno";
|
||||||
version = "1.5.1";
|
version = "1.5.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "https://github.com/usebruno/bruno/releases/download/v${version}/bruno_${version}_amd64_linux.deb";
|
owner = "usebruno";
|
||||||
hash = "sha256-kJfS3yORwvh7rMGgDV5Bn2L7+7ZMa8ZBpRI1P5y+ShQ=";
|
repo = "bruno";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-GgXnsPEUurPHrijf966x5ldp+1lDrgS1iBinU+EkdYU=b";
|
||||||
|
|
||||||
|
postFetch = ''
|
||||||
|
${lib.getExe npm-lockfile-fix} $out/package-lock.json
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook ];
|
npmDepsHash = "sha256-R5dEL4QbwCSE9+HHCXlf/pYLmjCaD15tmdSSLbZgmt0=";
|
||||||
|
|
||||||
buildInputs = [
|
nativeBuildInputs = [
|
||||||
alsa-lib
|
(writeShellScriptBin "phantomjs" "echo 2.1.1")
|
||||||
gtk3
|
makeWrapper
|
||||||
mesa
|
copyDesktopItems
|
||||||
nspr
|
pkg-config
|
||||||
nss
|
|
||||||
];
|
];
|
||||||
|
|
||||||
runtimeDependencies = [ (lib.getLib systemd) ];
|
buildInputs = [
|
||||||
|
pixman
|
||||||
|
cairo
|
||||||
|
pango
|
||||||
|
];
|
||||||
|
|
||||||
|
desktopItems = [
|
||||||
|
(makeDesktopItem {
|
||||||
|
name = "bruno";
|
||||||
|
desktopName = "Bruno";
|
||||||
|
exec = "bruno %U";
|
||||||
|
icon = "bruno";
|
||||||
|
comment = "Opensource API Client for Exploring and Testing APIs";
|
||||||
|
categories = [ "Development" ];
|
||||||
|
startupWMClass = "Bruno";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace scripts/build-electron.sh \
|
||||||
|
--replace 'if [ "$1" == "snap" ]; then' 'exit 0; if [ "$1" == "snap" ]; then'
|
||||||
|
'';
|
||||||
|
|
||||||
|
ELECTRON_SKIP_BINARY_DOWNLOAD=1;
|
||||||
|
|
||||||
|
dontNpmBuild = true;
|
||||||
|
postBuild = ''
|
||||||
|
npm run build --workspace=packages/bruno-graphql-docs
|
||||||
|
npm run build --workspace=packages/bruno-app
|
||||||
|
npm run build --workspace=packages/bruno-query
|
||||||
|
|
||||||
|
bash scripts/build-electron.sh
|
||||||
|
|
||||||
|
pushd packages/bruno-electron
|
||||||
|
|
||||||
|
npm exec electron-builder -- \
|
||||||
|
--dir \
|
||||||
|
-c.electronDist=${electron}/libexec/electron \
|
||||||
|
-c.electronVersion=${electron.version} \
|
||||||
|
-c.npmRebuild=false
|
||||||
|
|
||||||
|
popd
|
||||||
|
'';
|
||||||
|
|
||||||
|
npmPackFlags = [ "--ignore-scripts" ];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
runHook preInstall
|
||||||
mkdir -p "$out/bin"
|
|
||||||
cp -R opt $out
|
|
||||||
cp -R "usr/share" "$out/share"
|
|
||||||
ln -s "$out/opt/Bruno/bruno" "$out/bin/bruno"
|
|
||||||
chmod -R g-w "$out"
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
postFixup = ''
|
mkdir -p $out/opt/bruno $out/bin
|
||||||
substituteInPlace "$out/share/applications/bruno.desktop" \
|
|
||||||
--replace "/opt/Bruno/bruno" "$out/bin/bruno"
|
cp -r packages/bruno-electron/dist/linux-unpacked/{locales,resources{,.pak}} $out/opt/bruno
|
||||||
|
|
||||||
|
makeWrapper ${lib.getExe electron} $out/bin/bruno \
|
||||||
|
--add-flags $out/opt/bruno/resources/app.asar \
|
||||||
|
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
|
||||||
|
--set-default ELECTRON_IS_DEV 0 \
|
||||||
|
--inherit-argv0
|
||||||
|
|
||||||
|
for s in 16 32 48 64 128 256 512 1024; do
|
||||||
|
size=${"$"}{s}x$s
|
||||||
|
install -Dm644 $src/packages/bruno-electron/resources/icons/png/$size.png $out/share/icons/hicolor/$size/apps/bruno.png
|
||||||
|
done
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.updateScript = nix-update-script { };
|
passthru.updateScript = nix-update-script { };
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Open-source IDE For exploring and testing APIs";
|
description = "Open-source IDE For exploring and testing APIs.";
|
||||||
homepage = "https://www.usebruno.com";
|
homepage = "https://www.usebruno.com";
|
||||||
|
inherit (electron.meta) platforms;
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
maintainers = with maintainers; [ water-sucks lucasew kashw2 ];
|
maintainers = with maintainers; [ water-sucks lucasew kashw2 ];
|
||||||
platforms = [ "x86_64-linux" ];
|
mainProgram = "bruno";
|
||||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -6,13 +6,13 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "c2FmZQ";
|
pname = "c2FmZQ";
|
||||||
version = "0.4.16";
|
version = "0.4.17";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "c2FmZQ";
|
owner = "c2FmZQ";
|
||||||
repo = "c2FmZQ";
|
repo = "c2FmZQ";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-DJvcWUPIEu3zCVIVB/mUBqbOzHwUI+01gMQUdYk4qm4=";
|
hash = "sha256-xjgoE1HlCmSPZ6TQcemI7fNE9wbIrk/WSrz6vlVt66U=";
|
||||||
};
|
};
|
||||||
|
|
||||||
ldflags = [ "-s" "-w" ];
|
ldflags = [ "-s" "-w" ];
|
||||||
|
@ -30,7 +30,6 @@
|
|||||||
, pkg-config
|
, pkg-config
|
||||||
, polkit
|
, polkit
|
||||||
, python3Packages
|
, python3Packages
|
||||||
, ripgrep
|
|
||||||
, runtimeShell
|
, runtimeShell
|
||||||
, systemd
|
, systemd
|
||||||
, udev
|
, udev
|
||||||
@ -45,13 +44,13 @@ in
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "cockpit";
|
pname = "cockpit";
|
||||||
version = "306";
|
version = "307";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "cockpit-project";
|
owner = "cockpit-project";
|
||||||
repo = "cockpit";
|
repo = "cockpit";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
hash = "sha256-RB5RpwFTi//XNIIm/86JR4Jo3q5nuoW6ruH05JSfMSk=";
|
hash = "sha256-6z3IAEc+qzh02g1uTaO6LdLD09eYE/5P8Gg7KW3jlvY=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -71,7 +70,6 @@ stdenv.mkDerivation rec {
|
|||||||
pythonWithGobject.python
|
pythonWithGobject.python
|
||||||
python3Packages.setuptools
|
python3Packages.setuptools
|
||||||
systemd
|
systemd
|
||||||
ripgrep
|
|
||||||
xmlto
|
xmlto
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -197,7 +195,6 @@ stdenv.mkDerivation rec {
|
|||||||
glib-networking
|
glib-networking
|
||||||
openssh
|
openssh
|
||||||
python3Packages.pytest
|
python3Packages.pytest
|
||||||
python3Packages.vulture
|
|
||||||
];
|
];
|
||||||
checkPhase = ''
|
checkPhase = ''
|
||||||
export GIO_EXTRA_MODULES=$GIO_EXTRA_MODULES:${glib-networking}/lib/gio/modules
|
export GIO_EXTRA_MODULES=$GIO_EXTRA_MODULES:${glib-networking}/lib/gio/modules
|
||||||
|
@ -6,16 +6,16 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "gickup";
|
pname = "gickup";
|
||||||
version = "0.10.24";
|
version = "0.10.25";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "cooperspencer";
|
owner = "cooperspencer";
|
||||||
repo = "gickup";
|
repo = "gickup";
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-c7IP5jYP8DbJkQEHmU2cMgClLqmMTAJkPCCHbdW5yLw=";
|
hash = "sha256-2ydYGuIcoxw9iBSeCg3q6gVW2yMqL8j3nRzlplIm8Ps=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-fqtZL3Tr9QTFRUsczs11Y3b127CqoYkHV+dPI+vYpDk=";
|
vendorHash = "sha256-zyjtiZzePqWtxqkHqdNp04g70V42Rkrf60V7BY8JMz4=";
|
||||||
|
|
||||||
ldflags = ["-X main.version=${version}"];
|
ldflags = ["-X main.version=${version}"];
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{ stdenv
|
{ stdenv
|
||||||
, lib
|
, lib
|
||||||
, fetchurl
|
, fetchFromGitHub
|
||||||
|
, glib
|
||||||
, gtk3
|
, gtk3
|
||||||
, meson
|
, meson
|
||||||
, mesonEmulatorHook
|
, mesonEmulatorHook
|
||||||
@ -9,20 +10,22 @@
|
|||||||
, gobject-introspection
|
, gobject-introspection
|
||||||
, gtk-doc
|
, gtk-doc
|
||||||
, docbook-xsl-nons
|
, docbook-xsl-nons
|
||||||
, gnome
|
, gitUpdater
|
||||||
, dbus
|
, dbus
|
||||||
, xvfb-run
|
, xvfb-run
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "amtk";
|
pname = "libgedit-amtk";
|
||||||
version = "5.6.1";
|
version = "5.8.0";
|
||||||
|
|
||||||
outputs = [ "out" "dev" "devdoc" ];
|
outputs = [ "out" "dev" "devdoc" ];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
owner = "gedit-technology";
|
||||||
sha256 = "1QEVuFyHKqwpaTS17nJqP6FWxvWtltJ+Dt0Kpa0XMig=";
|
repo = "libgedit-amtk";
|
||||||
|
rev = version;
|
||||||
|
hash = "sha256-U77/KMZw9k9ukebCXVXAsCa4uJaTgw9irfZ/l0303kk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
strictDeps = true;
|
strictDeps = true;
|
||||||
@ -30,7 +33,6 @@ stdenv.mkDerivation rec {
|
|||||||
meson
|
meson
|
||||||
ninja
|
ninja
|
||||||
pkg-config
|
pkg-config
|
||||||
dbus
|
|
||||||
gobject-introspection
|
gobject-introspection
|
||||||
gtk-doc
|
gtk-doc
|
||||||
docbook-xsl-nons
|
docbook-xsl-nons
|
||||||
@ -38,27 +40,36 @@ stdenv.mkDerivation rec {
|
|||||||
mesonEmulatorHook
|
mesonEmulatorHook
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
# Required by libgedit-amtk-5.pc
|
||||||
|
glib
|
||||||
gtk3
|
gtk3
|
||||||
];
|
];
|
||||||
|
|
||||||
|
nativeCheckInputs = [
|
||||||
|
dbus # For dbus-run-session
|
||||||
|
];
|
||||||
|
|
||||||
doCheck = stdenv.isLinux;
|
doCheck = stdenv.isLinux;
|
||||||
checkPhase = ''
|
checkPhase = ''
|
||||||
|
runHook preCheck
|
||||||
|
|
||||||
export NO_AT_BRIDGE=1
|
export NO_AT_BRIDGE=1
|
||||||
${xvfb-run}/bin/xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
|
${xvfb-run}/bin/xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
|
||||||
--config-file=${dbus}/share/dbus-1/session.conf \
|
--config-file=${dbus}/share/dbus-1/session.conf \
|
||||||
meson test --print-errorlogs
|
meson test --print-errorlogs
|
||||||
|
|
||||||
|
runHook postCheck
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.updateScript = gnome.updateScript {
|
passthru.updateScript = gitUpdater {
|
||||||
packageName = pname;
|
odd-unstable = true;
|
||||||
versionPolicy = "none";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
homepage = "https://wiki.gnome.org/Projects/Amtk";
|
homepage = "https://github.com/gedit-technology/libgedit-amtk";
|
||||||
description = "Actions, Menus and Toolbars Kit for GTK applications";
|
description = "Actions, Menus and Toolbars Kit for GTK applications";
|
||||||
maintainers = [ maintainers.manveru ];
|
maintainers = with maintainers; [ manveru bobby285271 ];
|
||||||
license = licenses.lgpl21Plus;
|
license = licenses.lgpl21Plus;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
11
pkgs/by-name/li/libgedit-gtksourceview/nix-share-path.patch
Normal file
11
pkgs/by-name/li/libgedit-gtksourceview/nix-share-path.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- a/gtksourceview/gtksourceutils.c
|
||||||
|
+++ b/gtksourceview/gtksourceutils.c
|
||||||
|
@@ -232,6 +232,8 @@
|
||||||
|
NULL));
|
||||||
|
}
|
||||||
|
|
||||||
|
+ g_ptr_array_add (dirs, g_build_filename (DATADIR, GSV_DATA_SUBDIR, basename, NULL));
|
||||||
|
+
|
||||||
|
g_ptr_array_add (dirs, NULL);
|
||||||
|
|
||||||
|
return (gchar **) g_ptr_array_free (dirs, FALSE);
|
69
pkgs/by-name/li/libgedit-gtksourceview/package.nix
Normal file
69
pkgs/by-name/li/libgedit-gtksourceview/package.nix
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
{ stdenv
|
||||||
|
, lib
|
||||||
|
, fetchFromGitHub
|
||||||
|
, docbook-xsl-nons
|
||||||
|
, gobject-introspection
|
||||||
|
, gtk-doc
|
||||||
|
, meson
|
||||||
|
, ninja
|
||||||
|
, pkg-config
|
||||||
|
, libxml2
|
||||||
|
, glib
|
||||||
|
, gtk3
|
||||||
|
, shared-mime-info
|
||||||
|
, gitUpdater
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
|
pname = "libgedit-gtksourceview";
|
||||||
|
version = "299.0.5";
|
||||||
|
|
||||||
|
outputs = [ "out" "dev" "devdoc" ];
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "gedit-technology";
|
||||||
|
repo = "libgedit-gtksourceview";
|
||||||
|
rev = finalAttrs.version;
|
||||||
|
hash = "sha256-PQ7cpul9h1JzywDWm9YyD95B1ONSdUUk0EQJMEGoRN0=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# By default, the library loads syntaxes from XDG_DATA_DIRS and user directory
|
||||||
|
# but not from its own datadr (it assumes it will be in XDG_DATA_DIRS).
|
||||||
|
# Since this is not generally true with Nix, let’s add $out/share unconditionally.
|
||||||
|
./nix-share-path.patch
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
docbook-xsl-nons
|
||||||
|
gobject-introspection
|
||||||
|
gtk-doc
|
||||||
|
meson
|
||||||
|
ninja
|
||||||
|
pkg-config
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
libxml2
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
# Required by libgedit-gtksourceview-300.pc
|
||||||
|
glib
|
||||||
|
gtk3
|
||||||
|
# Used by gtk_source_language_manager_guess_language
|
||||||
|
shared-mime-info
|
||||||
|
];
|
||||||
|
|
||||||
|
passthru.updateScript = gitUpdater {
|
||||||
|
odd-unstable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Source code editing widget for GTK";
|
||||||
|
homepage = "https://github.com/gedit-technology/libgedit-gtksourceview";
|
||||||
|
license = licenses.lgpl21Plus;
|
||||||
|
maintainers = with maintainers; [ bobby285271 ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
})
|
38
pkgs/by-name/li/licensure/package.nix
Normal file
38
pkgs/by-name/li/licensure/package.nix
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
{ lib
|
||||||
|
, rustPlatform
|
||||||
|
, fetchFromGitHub
|
||||||
|
, pkg-config
|
||||||
|
, openssl
|
||||||
|
, git
|
||||||
|
, gitls
|
||||||
|
}:
|
||||||
|
rustPlatform.buildRustPackage rec {
|
||||||
|
pname = "licensure";
|
||||||
|
version = "0.3.2";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "chasinglogic";
|
||||||
|
repo = "licensure";
|
||||||
|
rev = version;
|
||||||
|
hash = "sha256-rOD2H9TEoZ8JCjlg6feNQiAjvroVGqrlOkDHNZKXDoE=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoHash = "sha256-ku0SI14pZmbhzE7RnK5kJY6tSMjRVKEMssC9e0Hq6hc=";
|
||||||
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
buildInputs = [ openssl git gitls ];
|
||||||
|
|
||||||
|
checkFlags = [
|
||||||
|
# Checking for files in the git repo (git ls-files),
|
||||||
|
# That obviously does not work with nix
|
||||||
|
"--skip=test_get_project_files"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "A FOSS License management tool for your projects";
|
||||||
|
homepage = "https://github.com/chasinglogic/licensure";
|
||||||
|
license = licenses.gpl3Plus;
|
||||||
|
mainProgram = "licensure";
|
||||||
|
maintainers = [ maintainers.soispha ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
@ -5,7 +5,6 @@
|
|||||||
, fetchpatch
|
, fetchpatch
|
||||||
, nix-update-script
|
, nix-update-script
|
||||||
, stdenv
|
, stdenv
|
||||||
, symlinkJoin
|
|
||||||
|
|
||||||
, config
|
, config
|
||||||
, cudaSupport ? config.cudaSupport
|
, cudaSupport ? config.cudaSupport
|
||||||
@ -17,30 +16,19 @@
|
|||||||
, openclSupport ? false
|
, openclSupport ? false
|
||||||
, clblast
|
, clblast
|
||||||
|
|
||||||
, openblasSupport ? !rocmSupport
|
, blasSupport ? !rocmSupport && !cudaSupport
|
||||||
, openblas
|
, openblas
|
||||||
, pkg-config
|
, pkg-config
|
||||||
|
, metalSupport ? stdenv.isDarwin && stdenv.isAarch64 && !openclSupport
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert lib.assertMsg
|
|
||||||
(lib.count lib.id [openclSupport openblasSupport rocmSupport] == 1)
|
|
||||||
"llama-cpp: exactly one of openclSupport, openblasSupport and rocmSupport should be enabled";
|
|
||||||
|
|
||||||
let
|
let
|
||||||
cudatoolkit_joined = symlinkJoin {
|
# It's necessary to consistently use backendStdenv when building with CUDA support,
|
||||||
name = "${cudaPackages.cudatoolkit.name}-merged";
|
# otherwise we get libstdc++ errors downstream.
|
||||||
paths = [
|
# cuda imposes an upper bound on the gcc version, e.g. the latest gcc compatible with cudaPackages_11 is gcc11
|
||||||
cudaPackages.cudatoolkit.lib
|
effectiveStdenv = if cudaSupport then cudaPackages.backendStdenv else stdenv;
|
||||||
cudaPackages.cudatoolkit.out
|
|
||||||
] ++ lib.optionals (lib.versionOlder cudaPackages.cudatoolkit.version "11") [
|
|
||||||
# for some reason some of the required libs are in the targets/x86_64-linux
|
|
||||||
# directory; not sure why but this works around it
|
|
||||||
"${cudaPackages.cudatoolkit}/targets/${stdenv.system}"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
metalSupport = stdenv.isDarwin && stdenv.isAarch64;
|
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
effectiveStdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "llama-cpp";
|
pname = "llama-cpp";
|
||||||
version = "1710";
|
version = "1710";
|
||||||
|
|
||||||
@ -67,25 +55,42 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
--replace '[bundle pathForResource:@"ggml-metal" ofType:@"metal"];' "@\"$out/bin/ggml-metal.metal\";"
|
--replace '[bundle pathForResource:@"ggml-metal" ofType:@"metal"];' "@\"$out/bin/ggml-metal.metal\";"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ] ++ lib.optionals openblasSupport [ pkg-config ];
|
nativeBuildInputs = [ cmake ] ++ lib.optionals blasSupport [ pkg-config ] ++ lib.optionals cudaSupport [
|
||||||
|
cudaPackages.cuda_nvcc
|
||||||
|
|
||||||
buildInputs = lib.optionals metalSupport
|
# TODO: Replace with autoAddDriverRunpath
|
||||||
|
# once https://github.com/NixOS/nixpkgs/pull/275241 has been merged
|
||||||
|
cudaPackages.autoAddOpenGLRunpathHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = lib.optionals effectiveStdenv.isDarwin
|
||||||
(with darwin.apple_sdk.frameworks; [
|
(with darwin.apple_sdk.frameworks; [
|
||||||
Accelerate
|
Accelerate
|
||||||
CoreGraphics
|
CoreGraphics
|
||||||
CoreVideo
|
CoreVideo
|
||||||
Foundation
|
Foundation
|
||||||
MetalKit
|
|
||||||
])
|
])
|
||||||
++ lib.optionals cudaSupport [
|
++ lib.optionals metalSupport (with darwin.apple_sdk.frameworks; [
|
||||||
cudatoolkit_joined
|
MetalKit
|
||||||
] ++ lib.optionals rocmSupport [
|
])
|
||||||
|
++ lib.optionals cudaSupport (with cudaPackages; [
|
||||||
|
cuda_cccl.dev # <nv/target>
|
||||||
|
|
||||||
|
# A temporary hack for reducing the closure size, remove once cudaPackages
|
||||||
|
# have stopped using lndir: https://github.com/NixOS/nixpkgs/issues/271792
|
||||||
|
cuda_cudart.dev
|
||||||
|
cuda_cudart.lib
|
||||||
|
cuda_cudart.static
|
||||||
|
libcublas.dev
|
||||||
|
libcublas.lib
|
||||||
|
libcublas.static
|
||||||
|
]) ++ lib.optionals rocmSupport [
|
||||||
rocmPackages.clr
|
rocmPackages.clr
|
||||||
rocmPackages.hipblas
|
rocmPackages.hipblas
|
||||||
rocmPackages.rocblas
|
rocmPackages.rocblas
|
||||||
] ++ lib.optionals openclSupport [
|
] ++ lib.optionals openclSupport [
|
||||||
clblast
|
clblast
|
||||||
] ++ lib.optionals openblasSupport [
|
] ++ lib.optionals blasSupport [
|
||||||
openblas
|
openblas
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -109,7 +114,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
++ lib.optionals openclSupport [
|
++ lib.optionals openclSupport [
|
||||||
"-DLLAMA_CLBLAST=ON"
|
"-DLLAMA_CLBLAST=ON"
|
||||||
]
|
]
|
||||||
++ lib.optionals openblasSupport [
|
++ lib.optionals blasSupport [
|
||||||
"-DLLAMA_BLAS=ON"
|
"-DLLAMA_BLAS=ON"
|
||||||
"-DLLAMA_BLAS_VENDOR=OpenBLAS"
|
"-DLLAMA_BLAS_VENDOR=OpenBLAS"
|
||||||
];
|
];
|
||||||
@ -140,7 +145,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
mainProgram = "llama-cpp-main";
|
mainProgram = "llama-cpp-main";
|
||||||
maintainers = with maintainers; [ dit7ya elohmeier ];
|
maintainers = with maintainers; [ dit7ya elohmeier ];
|
||||||
broken = stdenv.isDarwin && stdenv.isx86_64;
|
broken = (effectiveStdenv.isDarwin && effectiveStdenv.isx86_64) || lib.count lib.id [openclSupport blasSupport rocmSupport cudaSupport] == 0;
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
, yajl
|
, yajl
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "newsraft";
|
pname = "newsraft";
|
||||||
version = "0.22";
|
version = "0.22";
|
||||||
|
|
||||||
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
|||||||
domain = "codeberg.org";
|
domain = "codeberg.org";
|
||||||
owner = "newsraft";
|
owner = "newsraft";
|
||||||
repo = "newsraft";
|
repo = "newsraft";
|
||||||
rev = "newsraft-${version}";
|
rev = "newsraft-${finalAttrs.version}";
|
||||||
hash = "sha256-QjIADDk1PSZP89+G7B1Bpu3oTEAykD4RJYghZnMJKho=";
|
hash = "sha256-QjIADDk1PSZP89+G7B1Bpu3oTEAykD4RJYghZnMJKho=";
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -35,4 +35,4 @@ stdenv.mkDerivation rec {
|
|||||||
mainProgram = "newsraft";
|
mainProgram = "newsraft";
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
33
pkgs/by-name/np/npm-lockfile-fix/package.nix
Normal file
33
pkgs/by-name/np/npm-lockfile-fix/package.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{ lib
|
||||||
|
, python3
|
||||||
|
, fetchFromGitHub
|
||||||
|
, nix-update-script
|
||||||
|
}:
|
||||||
|
|
||||||
|
|
||||||
|
python3.pkgs.buildPythonApplication rec {
|
||||||
|
pname = "npm-lockfile-fix";
|
||||||
|
version = "0.1.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "jeslie0";
|
||||||
|
repo = "npm-lockfile-fix";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-0EGPCPmCf6bxbso3aHCeJ1XBOpYp3jtMXv8LGdwrsbs=";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
python3.pkgs.requests
|
||||||
|
];
|
||||||
|
|
||||||
|
doCheck = false; # no tests
|
||||||
|
|
||||||
|
passthru.updateScript = nix-update-script {};
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Add missing integrity and resolved fields to a package-lock.json file";
|
||||||
|
mainProgram = "npm-lockfile-fix";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
maintainers = [ maintainers.lucasew ];
|
||||||
|
};
|
||||||
|
}
|
@ -10,6 +10,7 @@
|
|||||||
, libadwaita
|
, libadwaita
|
||||||
, pango
|
, pango
|
||||||
, copyDesktopItems
|
, copyDesktopItems
|
||||||
|
, installShellFiles
|
||||||
}:
|
}:
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
@ -30,6 +31,7 @@ rustPlatform.buildRustPackage rec {
|
|||||||
copyDesktopItems
|
copyDesktopItems
|
||||||
pkg-config
|
pkg-config
|
||||||
wrapGAppsHook4
|
wrapGAppsHook4
|
||||||
|
installShellFiles
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
@ -43,6 +45,11 @@ rustPlatform.buildRustPackage rec {
|
|||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
install -Dt $out/share/icons/hicolor/scalable/apps/ assets/satty.svg
|
install -Dt $out/share/icons/hicolor/scalable/apps/ assets/satty.svg
|
||||||
|
|
||||||
|
installShellCompletion --cmd satty \
|
||||||
|
--bash completions/satty.bash \
|
||||||
|
--fish completions/satty.fish \
|
||||||
|
--zsh completions/_satty
|
||||||
'';
|
'';
|
||||||
|
|
||||||
desktopItems = [ "satty.desktop" ];
|
desktopItems = [ "satty.desktop" ];
|
||||||
@ -51,7 +58,7 @@ rustPlatform.buildRustPackage rec {
|
|||||||
description = "A screenshot annotation tool inspired by Swappy and Flameshot";
|
description = "A screenshot annotation tool inspired by Swappy and Flameshot";
|
||||||
homepage = "https://github.com/gabm/Satty";
|
homepage = "https://github.com/gabm/Satty";
|
||||||
license = licenses.mpl20;
|
license = licenses.mpl20;
|
||||||
maintainers = with maintainers; [ pinpox ];
|
maintainers = with maintainers; [ pinpox donovanglover ];
|
||||||
mainProgram = "satty";
|
mainProgram = "satty";
|
||||||
platforms = lib.platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
};
|
};
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "spicetify-cli";
|
pname = "spicetify-cli";
|
||||||
version = "2.28.1";
|
version = "2.29.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "spicetify";
|
owner = "spicetify";
|
||||||
repo = "spicetify-cli";
|
repo = "spicetify-cli";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-PiOpj9FsolFZzoMATnJmMwjZrBLGXDIHv8SIaJQetRc=";
|
hash = "sha256-fgecZn0/CWQFH4Tnm5kqOOvWlE1jzGvG6LxVN7KryPg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-alNUJ+ejwZPvefCTHt0/NWSAIt4MFzbPmkMinMrpe2M=";
|
vendorHash = "sha256-alNUJ+ejwZPvefCTHt0/NWSAIt4MFzbPmkMinMrpe2M=";
|
||||||
|
@ -7,13 +7,13 @@
|
|||||||
|
|
||||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||||
pname = "vcpkg";
|
pname = "vcpkg";
|
||||||
version = "2023.10.19";
|
version = "2023.12.12";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "microsoft";
|
owner = "microsoft";
|
||||||
repo = "vcpkg";
|
repo = "vcpkg";
|
||||||
rev = finalAttrs.version;
|
rev = finalAttrs.version;
|
||||||
hash = "sha256-u+4vyOphnowoaZgfkCbzF7Q4tuz2GN1bHylaKw352Lc=";
|
hash = "sha256-WNQJ19bgb55MBnz87Ho9BEHDjD7INLDevfW6lCwV/4U=";
|
||||||
};
|
};
|
||||||
|
|
||||||
installPhase = let
|
installPhase = let
|
||||||
|
@ -34,6 +34,6 @@ stdenvNoCC.mkDerivation rec {
|
|||||||
homepage = "https://materialdesignicons.com";
|
homepage = "https://materialdesignicons.com";
|
||||||
license = licenses.asl20;
|
license = licenses.asl20;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
maintainers = with maintainers; [ vlaci PlayerNameHere ];
|
maintainers = with maintainers; [ vlaci dixslyf ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -61,6 +61,6 @@ stdenvNoCC.mkDerivation rec {
|
|||||||
homepage = "https://github.com/catppuccin/cursors";
|
homepage = "https://github.com/catppuccin/cursors";
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
maintainers = with maintainers; [ PlayerNameHere ];
|
maintainers = with maintainers; [ dixslyf ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"commit": "def4ad933fb86415a9802d7833369d12520e7744",
|
"commit": "6a46f981138e6d012bfcced5f1d2b309b5452766",
|
||||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/def4ad933fb86415a9802d7833369d12520e7744.tar.gz",
|
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/6a46f981138e6d012bfcced5f1d2b309b5452766.tar.gz",
|
||||||
"sha256": "0nfqz1mwzgvkkk22igq5jxfwfcc0l8i1ihlgxaixf2ip1qqlqzs6",
|
"sha256": "1v297xyfv9nv1bji08gq8s6wrgmxjnhklvf6p0mvslyrj36w7mlj",
|
||||||
"msg": "Update from Hackage at 2023-11-20T05:37:18Z"
|
"msg": "Update from Hackage at 2023-12-04T17:35:08Z"
|
||||||
}
|
}
|
||||||
|
@ -82,6 +82,6 @@ stdenvNoCC.mkDerivation rec {
|
|||||||
homepage = "https://github.com/catppuccin/gtk";
|
homepage = "https://github.com/catppuccin/gtk";
|
||||||
license = licenses.gpl3Plus;
|
license = licenses.gpl3Plus;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
maintainers = with maintainers; [ fufexan PlayerNameHere ];
|
maintainers = with maintainers; [ fufexan dixslyf ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -44,12 +44,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
|
@ -46,12 +46,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pullls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
|
@ -1,392 +0,0 @@
|
|||||||
{ lib, stdenv, pkgsBuildTarget, pkgsHostTarget, targetPackages
|
|
||||||
|
|
||||||
# build-tools
|
|
||||||
, bootPkgs
|
|
||||||
, autoconf, automake, coreutils, fetchpatch, fetchurl, perl, python3, m4, sphinx
|
|
||||||
, xattr, autoSignDarwinBinariesHook
|
|
||||||
, bash
|
|
||||||
|
|
||||||
, libiconv ? null, ncurses
|
|
||||||
, glibcLocales ? null
|
|
||||||
|
|
||||||
, # GHC can be built with system libffi or a bundled one.
|
|
||||||
libffi ? null
|
|
||||||
|
|
||||||
, useLLVM ? !(stdenv.targetPlatform.isx86
|
|
||||||
|| stdenv.targetPlatform.isPower
|
|
||||||
|| stdenv.targetPlatform.isSparc
|
|
||||||
|| stdenv.targetPlatform.isAarch64)
|
|
||||||
, # LLVM is conceptually a run-time-only dependency, but for
|
|
||||||
# non-x86, we need LLVM to bootstrap later stages, so it becomes a
|
|
||||||
# build-time dependency too.
|
|
||||||
buildTargetLlvmPackages, llvmPackages
|
|
||||||
|
|
||||||
, # If enabled, GHC will be built with the GPL-free but slightly slower native
|
|
||||||
# bignum backend instead of the faster but GPLed gmp backend.
|
|
||||||
enableNativeBignum ? !(lib.meta.availableOn stdenv.hostPlatform gmp
|
|
||||||
&& lib.meta.availableOn stdenv.targetPlatform gmp)
|
|
||||||
, gmp
|
|
||||||
|
|
||||||
, # If enabled, use -fPIC when compiling static libs.
|
|
||||||
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
|
|
||||||
|
|
||||||
, enableProfiledLibs ? true
|
|
||||||
|
|
||||||
, # Whether to build dynamic libs for the standard library (on the target
|
|
||||||
# platform). Static libs are always built.
|
|
||||||
enableShared ? with stdenv.targetPlatform; !isWindows && !useiOSPrebuilt && !isStatic
|
|
||||||
|
|
||||||
, # Whether to build terminfo.
|
|
||||||
enableTerminfo ? !stdenv.targetPlatform.isWindows
|
|
||||||
|
|
||||||
, # What flavour to build. An empty string indicates no
|
|
||||||
# specific flavour and falls back to ghc default values.
|
|
||||||
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
|
||||||
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
|
||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
|
||||||
enableDocs ? (
|
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
|
||||||
# all `sphinx` dependencies building in those environments.
|
|
||||||
# `sphinx` pulls in among others:
|
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
|
||||||
# Disabled for cross; see note [HADDOCK_DOCS].
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
|
|
||||||
, # Whether to disable the large address space allocator
|
|
||||||
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
|
|
||||||
}:
|
|
||||||
|
|
||||||
assert !enableNativeBignum -> gmp != null;
|
|
||||||
|
|
||||||
# Cross cannot currently build the `haddock` program for silly reasons,
|
|
||||||
# see note [HADDOCK_DOCS].
|
|
||||||
assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
|
|
||||||
|
|
||||||
let
|
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
|
||||||
|
|
||||||
inherit (bootPkgs) ghc;
|
|
||||||
|
|
||||||
# TODO(@Ericson2314) Make unconditional
|
|
||||||
targetPrefix = lib.optionalString
|
|
||||||
(targetPlatform != hostPlatform)
|
|
||||||
"${targetPlatform.config}-";
|
|
||||||
|
|
||||||
buildMK = ''
|
|
||||||
BuildFlavour = ${ghcFlavour}
|
|
||||||
ifneq \"\$(BuildFlavour)\" \"\"
|
|
||||||
include mk/flavours/\$(BuildFlavour).mk
|
|
||||||
endif
|
|
||||||
BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
|
|
||||||
BUILD_SPHINX_PDF = NO
|
|
||||||
'' +
|
|
||||||
# Note [HADDOCK_DOCS]:
|
|
||||||
# Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
|
|
||||||
# program is built (which we generally always want to have a complete GHC install)
|
|
||||||
# and whether it is run on the GHC sources to generate hyperlinked source code
|
|
||||||
# (which is impossible for cross-compilation); see:
|
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/20077
|
|
||||||
# This implies that currently a cross-compiled GHC will never have a `haddock`
|
|
||||||
# program, so it can never generate haddocks for any packages.
|
|
||||||
# If this is solved in the future, we'd like to unconditionally
|
|
||||||
# build the haddock program (removing the `enableHaddockProgram` option).
|
|
||||||
''
|
|
||||||
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
|
||||||
# Build haddocks for boot packages with hyperlinking
|
|
||||||
EXTRA_HADDOCK_OPTS += --hyperlinked-source --quickjump
|
|
||||||
|
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
|
||||||
BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
|
|
||||||
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
|
||||||
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
|
||||||
GhcLibWays = "v dyn"
|
|
||||||
'' +
|
|
||||||
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
|
|
||||||
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.
|
|
||||||
# This solution was described in https://www.tweag.io/blog/2020-09-30-bazel-static-haskell
|
|
||||||
lib.optionalString enableRelocatedStaticLibs ''
|
|
||||||
GhcLibHcOpts += -fPIC -fexternal-dynamic-refs
|
|
||||||
GhcRtsHcOpts += -fPIC -fexternal-dynamic-refs
|
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
|
||||||
EXTRA_CC_OPTS += -std=gnu99
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Splicer will pull out correct variations
|
|
||||||
libDeps = platform: lib.optional enableTerminfo ncurses
|
|
||||||
++ [libffi]
|
|
||||||
++ lib.optional (!enableNativeBignum) gmp
|
|
||||||
++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
|
|
||||||
|
|
||||||
# TODO(@sternenseemann): is buildTarget LLVM unnecessary?
|
|
||||||
# GHC doesn't seem to have {LLC,OPT}_HOST
|
|
||||||
toolsForTarget = [
|
|
||||||
pkgsBuildTarget.targetPackages.stdenv.cc
|
|
||||||
] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm;
|
|
||||||
|
|
||||||
targetCC = builtins.head toolsForTarget;
|
|
||||||
|
|
||||||
# Sometimes we have to dispatch between the bintools wrapper and the unwrapped
|
|
||||||
# derivation for certain tools depending on the platform.
|
|
||||||
bintoolsFor = {
|
|
||||||
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
|
|
||||||
# part of the bintools wrapper (due to codesigning requirements), but not on
|
|
||||||
# x86_64-darwin.
|
|
||||||
install_name_tool =
|
|
||||||
if stdenv.targetPlatform.isAarch64
|
|
||||||
then targetCC.bintools
|
|
||||||
else targetCC.bintools.bintools;
|
|
||||||
# Same goes for strip.
|
|
||||||
strip =
|
|
||||||
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
|
|
||||||
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
|
|
||||||
then targetCC.bintools
|
|
||||||
else targetCC.bintools.bintools;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
|
|
||||||
# But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
|
|
||||||
# see #84670 and #49071 for more background.
|
|
||||||
useLdGold = targetPlatform.linker == "gold" ||
|
|
||||||
(targetPlatform.linker == "bfd" && (targetCC.bintools.bintools.hasGold or false) && !targetPlatform.isMusl);
|
|
||||||
|
|
||||||
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
|
|
||||||
variantSuffix = lib.concatStrings [
|
|
||||||
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
|
|
||||||
(lib.optionalString enableNativeBignum "-native-bignum")
|
|
||||||
];
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
# C compiler, bintools and LLVM are used at build time, but will also leak into
|
|
||||||
# the resulting GHC's settings file and used at runtime. This means that we are
|
|
||||||
# currently only able to build GHC if hostPlatform == buildPlatform.
|
|
||||||
assert targetCC == pkgsHostTarget.targetPackages.stdenv.cc;
|
|
||||||
assert buildTargetLlvmPackages.llvm == llvmPackages.llvm;
|
|
||||||
assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;
|
|
||||||
|
|
||||||
stdenv.mkDerivation (rec {
|
|
||||||
version = "9.2.4";
|
|
||||||
pname = "${targetPrefix}ghc${variantSuffix}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
|
|
||||||
sha256 = "15213888064a0ec4e7723d075f31b87a678ce0851773d58b44ef7aa3de996458";
|
|
||||||
};
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
|
|
||||||
outputs = [ "out" "doc" ];
|
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Fix docs build with sphinx >= 6.0
|
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/22766
|
|
||||||
(fetchpatch {
|
|
||||||
name = "ghc-docs-sphinx-6.0.patch";
|
|
||||||
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
|
|
||||||
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
|
|
||||||
})
|
|
||||||
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
|
|
||||||
./docs-sphinx-7.patch
|
|
||||||
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch";
|
|
||||||
sha256 = "sha256-8w8QUCsODaTvknCDGgTfFNZa8ZmvIKaKS+2ZJZ9foYk=";
|
|
||||||
extraPrefix = "utils/haddock/";
|
|
||||||
stripLen = 1;
|
|
||||||
})
|
|
||||||
# Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
|
|
||||||
# Can be removed if the Cabal library included with ghc backports the linked fix
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
|
|
||||||
stripLen = 1;
|
|
||||||
extraPrefix = "libraries/Cabal/";
|
|
||||||
sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
|
|
||||||
})
|
|
||||||
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
|
|
||||||
# Prevent the paths module from emitting symbols that we don't use
|
|
||||||
# when building with separate outputs.
|
|
||||||
#
|
|
||||||
# These cause problems as they're not eliminated by GHC's dead code
|
|
||||||
# elimination on aarch64-darwin. (see
|
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
|
||||||
|
|
||||||
# GHC needs the locale configured during the Haddock phase.
|
|
||||||
LANG = "en_US.UTF-8";
|
|
||||||
|
|
||||||
# GHC is a bit confused on its cross terminology.
|
|
||||||
# TODO(@sternenseemann): investigate coreutils dependencies and pass absolute paths
|
|
||||||
preConfigure = ''
|
|
||||||
for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
|
|
||||||
export "''${env#TARGET_}=''${!env}"
|
|
||||||
done
|
|
||||||
# GHC is a bit confused on its cross terminology, as these would normally be
|
|
||||||
# the *host* tools.
|
|
||||||
export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
|
|
||||||
export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++"
|
|
||||||
# Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
|
|
||||||
export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
|
|
||||||
export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
|
|
||||||
export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
|
|
||||||
export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
|
|
||||||
export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
|
|
||||||
export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
|
|
||||||
export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
|
|
||||||
'' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
|
|
||||||
export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool"
|
|
||||||
export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool"
|
|
||||||
'' + lib.optionalString useLLVM ''
|
|
||||||
export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc"
|
|
||||||
export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt"
|
|
||||||
'' + lib.optionalString (useLLVM && stdenv.targetPlatform.isDarwin) ''
|
|
||||||
# LLVM backend on Darwin needs clang: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/codegens.html#llvm-code-generator-fllvm
|
|
||||||
export CLANG="${buildTargetLlvmPackages.clang}/bin/${buildTargetLlvmPackages.clang.targetPrefix}clang"
|
|
||||||
'' + ''
|
|
||||||
echo -n "${buildMK}" > mk/build.mk
|
|
||||||
'' + lib.optionalString (stdenv.isLinux && hostPlatform.libc == "glibc") ''
|
|
||||||
export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
|
|
||||||
'' + lib.optionalString (!stdenv.isDarwin) ''
|
|
||||||
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
|
|
||||||
'' + lib.optionalString stdenv.isDarwin ''
|
|
||||||
export NIX_LDFLAGS+=" -no_dtrace_dof"
|
|
||||||
|
|
||||||
# GHC tries the host xattr /usr/bin/xattr by default which fails since it expects python to be 2.7
|
|
||||||
export XATTR=${lib.getBin xattr}/bin/xattr
|
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
|
||||||
sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
|
|
||||||
'' + lib.optionalString targetPlatform.isMusl ''
|
|
||||||
echo "patching llvm-targets for musl targets..."
|
|
||||||
echo "Cloning these existing '*-linux-gnu*' targets:"
|
|
||||||
grep linux-gnu llvm-targets | sed 's/^/ /'
|
|
||||||
echo "(go go gadget sed)"
|
|
||||||
sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
|
|
||||||
echo "llvm-targets now contains these '*-linux-musl*' targets:"
|
|
||||||
grep linux-musl llvm-targets | sed 's/^/ /'
|
|
||||||
|
|
||||||
echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
|
|
||||||
# (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
|
|
||||||
for x in configure aclocal.m4; do
|
|
||||||
substituteInPlace $x \
|
|
||||||
--replace '*-android*|*-gnueabi*)' \
|
|
||||||
'*-android*|*-gnueabi*|*-musleabi*)'
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
|
|
||||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
|
||||||
configurePlatforms = [ "build" "host" ]
|
|
||||||
++ lib.optional (targetPlatform != hostPlatform) "target";
|
|
||||||
|
|
||||||
# `--with` flags for libraries needed for RTS linker
|
|
||||||
configureFlags = [
|
|
||||||
"--datadir=$doc/share/doc/ghc"
|
|
||||||
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
|
|
||||||
] ++ lib.optionals (libffi != null) [
|
|
||||||
"--with-system-libffi"
|
|
||||||
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
|
|
||||||
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && !enableNativeBignum) [
|
|
||||||
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
|
|
||||||
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
|
|
||||||
"--with-iconv-includes=${libiconv}/include"
|
|
||||||
"--with-iconv-libraries=${libiconv}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform != hostPlatform) [
|
|
||||||
"--enable-bootstrap-with-devel-snapshot"
|
|
||||||
] ++ lib.optionals useLdGold [
|
|
||||||
"CFLAGS=-fuse-ld=gold"
|
|
||||||
"CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
|
|
||||||
"CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
|
|
||||||
] ++ lib.optionals (disableLargeAddressSpace) [
|
|
||||||
"--disable-large-address-space"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Make sure we never relax`$PATH` and hooks support for compatibility.
|
|
||||||
strictDeps = true;
|
|
||||||
|
|
||||||
# Don’t add -liconv to LDFLAGS automatically so that GHC will add it itself.
|
|
||||||
dontAddExtraLibs = true;
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
perl autoconf automake m4 python3
|
|
||||||
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
|
||||||
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
|
|
||||||
autoSignDarwinBinariesHook
|
|
||||||
] ++ lib.optionals enableDocs [
|
|
||||||
sphinx
|
|
||||||
];
|
|
||||||
|
|
||||||
# For building runtime libs
|
|
||||||
depsBuildTarget = toolsForTarget;
|
|
||||||
|
|
||||||
buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
|
|
||||||
|
|
||||||
depsTargetTarget = map lib.getDev (libDeps targetPlatform);
|
|
||||||
depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
|
|
||||||
|
|
||||||
# required, because otherwise all symbols from HSffi.o are stripped, and
|
|
||||||
# that in turn causes GHCi to abort
|
|
||||||
stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
|
|
||||||
|
|
||||||
checkTarget = "test";
|
|
||||||
|
|
||||||
hardeningDisable =
|
|
||||||
[ "format" ]
|
|
||||||
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
|
||||||
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
|
||||||
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
|
||||||
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
|
||||||
# See:
|
|
||||||
# * https://github.com/NixOS/nixpkgs/issues/129247
|
|
||||||
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
|
||||||
++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
|
||||||
|
|
||||||
# big-parallel allows us to build with more than 2 cores on
|
|
||||||
# Hydra which already warrants a significant speedup
|
|
||||||
requiredSystemFeatures = [ "big-parallel" ];
|
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
# Install the bash completion file.
|
|
||||||
install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
|
|
||||||
'';
|
|
||||||
|
|
||||||
passthru = {
|
|
||||||
inherit bootPkgs targetPrefix;
|
|
||||||
|
|
||||||
inherit llvmPackages;
|
|
||||||
inherit enableShared;
|
|
||||||
|
|
||||||
# This is used by the haskell builder to query
|
|
||||||
# the presence of the haddock program.
|
|
||||||
hasHaddock = enableHaddockProgram;
|
|
||||||
|
|
||||||
# Our Cabal compiler name
|
|
||||||
haskellCompilerName = "ghc-${version}";
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://haskell.org/ghc";
|
|
||||||
description = "The Glasgow Haskell Compiler";
|
|
||||||
maintainers = with lib.maintainers; [
|
|
||||||
guibou
|
|
||||||
] ++ lib.teams.haskell.members;
|
|
||||||
timeout = 24 * 3600;
|
|
||||||
inherit (ghc.meta) license platforms;
|
|
||||||
};
|
|
||||||
|
|
||||||
} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
|
|
||||||
dontStrip = true;
|
|
||||||
dontPatchELF = true;
|
|
||||||
noAuditTmpdir = true;
|
|
||||||
})
|
|
@ -46,12 +46,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
@ -218,7 +215,7 @@ stdenv.mkDerivation (rec {
|
|||||||
# These cause problems as they're not eliminated by GHC's dead code
|
# These cause problems as they're not eliminated by GHC's dead code
|
||||||
# elimination on aarch64-darwin. (see
|
# elimination on aarch64-darwin. (see
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
@ -46,12 +46,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
@ -218,7 +215,7 @@ stdenv.mkDerivation (rec {
|
|||||||
# These cause problems as they're not eliminated by GHC's dead code
|
# These cause problems as they're not eliminated by GHC's dead code
|
||||||
# elimination on aarch64-darwin. (see
|
# elimination on aarch64-darwin. (see
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
@ -46,12 +46,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
@ -218,7 +215,7 @@ stdenv.mkDerivation (rec {
|
|||||||
# These cause problems as they're not eliminated by GHC's dead code
|
# These cause problems as they're not eliminated by GHC's dead code
|
||||||
# elimination on aarch64-darwin. (see
|
# elimination on aarch64-darwin. (see
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
@ -46,12 +46,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
@ -218,7 +215,7 @@ stdenv.mkDerivation (rec {
|
|||||||
# These cause problems as they're not eliminated by GHC's dead code
|
# These cause problems as they're not eliminated by GHC's dead code
|
||||||
# elimination on aarch64-darwin. (see
|
# elimination on aarch64-darwin. (see
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
@ -1,398 +0,0 @@
|
|||||||
# DO NOT port this expression to hadrian. It is not possible to build a GHC
|
|
||||||
# cross compiler with 9.4.* and hadrian.
|
|
||||||
{ lib, stdenv, pkgsBuildTarget, pkgsHostTarget, targetPackages
|
|
||||||
|
|
||||||
# build-tools
|
|
||||||
, bootPkgs
|
|
||||||
, autoconf, automake, coreutils, fetchpatch, fetchurl, perl, python3, m4, sphinx
|
|
||||||
, xattr, autoSignDarwinBinariesHook
|
|
||||||
, bash
|
|
||||||
|
|
||||||
, libiconv ? null, ncurses
|
|
||||||
, glibcLocales ? null
|
|
||||||
|
|
||||||
, # GHC can be built with system libffi or a bundled one.
|
|
||||||
libffi ? null
|
|
||||||
|
|
||||||
, useLLVM ? !(stdenv.targetPlatform.isx86
|
|
||||||
|| stdenv.targetPlatform.isPower
|
|
||||||
|| stdenv.targetPlatform.isSparc
|
|
||||||
|| stdenv.targetPlatform.isAarch64)
|
|
||||||
, # LLVM is conceptually a run-time-only dependency, but for
|
|
||||||
# non-x86, we need LLVM to bootstrap later stages, so it becomes a
|
|
||||||
# build-time dependency too.
|
|
||||||
buildTargetLlvmPackages, llvmPackages
|
|
||||||
|
|
||||||
, # If enabled, GHC will be built with the GPL-free but slightly slower native
|
|
||||||
# bignum backend instead of the faster but GPLed gmp backend.
|
|
||||||
enableNativeBignum ? !(lib.meta.availableOn stdenv.hostPlatform gmp
|
|
||||||
&& lib.meta.availableOn stdenv.targetPlatform gmp)
|
|
||||||
, gmp
|
|
||||||
|
|
||||||
, # If enabled, use -fPIC when compiling static libs.
|
|
||||||
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
|
|
||||||
|
|
||||||
, enableProfiledLibs ? true
|
|
||||||
|
|
||||||
, # Whether to build dynamic libs for the standard library (on the target
|
|
||||||
# platform). Static libs are always built.
|
|
||||||
enableShared ? with stdenv.targetPlatform; !isWindows && !useiOSPrebuilt && !isStatic
|
|
||||||
|
|
||||||
, # Whether to build terminfo.
|
|
||||||
enableTerminfo ? !stdenv.targetPlatform.isWindows
|
|
||||||
|
|
||||||
, # What flavour to build. An empty string indicates no
|
|
||||||
# specific flavour and falls back to ghc default values.
|
|
||||||
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
|
||||||
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
|
||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
|
||||||
enableDocs ? (
|
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
|
||||||
# all `sphinx` dependencies building in those environments.
|
|
||||||
# `sphinx` pulls in among others:
|
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
|
||||||
# Disabled for cross; see note [HADDOCK_DOCS].
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
|
|
||||||
, # Whether to disable the large address space allocator
|
|
||||||
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
|
|
||||||
}:
|
|
||||||
|
|
||||||
assert !enableNativeBignum -> gmp != null;
|
|
||||||
|
|
||||||
# Cross cannot currently build the `haddock` program for silly reasons,
|
|
||||||
# see note [HADDOCK_DOCS].
|
|
||||||
assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
|
|
||||||
|
|
||||||
let
|
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
|
||||||
|
|
||||||
inherit (bootPkgs) ghc;
|
|
||||||
|
|
||||||
# TODO(@Ericson2314) Make unconditional
|
|
||||||
targetPrefix = lib.optionalString
|
|
||||||
(targetPlatform != hostPlatform)
|
|
||||||
"${targetPlatform.config}-";
|
|
||||||
|
|
||||||
buildMK = ''
|
|
||||||
BuildFlavour = ${ghcFlavour}
|
|
||||||
ifneq \"\$(BuildFlavour)\" \"\"
|
|
||||||
include mk/flavours/\$(BuildFlavour).mk
|
|
||||||
endif
|
|
||||||
BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
|
|
||||||
BUILD_SPHINX_PDF = NO
|
|
||||||
'' +
|
|
||||||
# Note [HADDOCK_DOCS]:
|
|
||||||
# Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
|
|
||||||
# program is built (which we generally always want to have a complete GHC install)
|
|
||||||
# and whether it is run on the GHC sources to generate hyperlinked source code
|
|
||||||
# (which is impossible for cross-compilation); see:
|
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/20077
|
|
||||||
# This implies that currently a cross-compiled GHC will never have a `haddock`
|
|
||||||
# program, so it can never generate haddocks for any packages.
|
|
||||||
# If this is solved in the future, we'd like to unconditionally
|
|
||||||
# build the haddock program (removing the `enableHaddockProgram` option).
|
|
||||||
''
|
|
||||||
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
|
||||||
# Build haddocks for boot packages with hyperlinking
|
|
||||||
EXTRA_HADDOCK_OPTS += --hyperlinked-source --quickjump
|
|
||||||
|
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
|
||||||
BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
|
|
||||||
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
|
||||||
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
|
||||||
GhcLibWays = "v dyn"
|
|
||||||
'' +
|
|
||||||
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
|
|
||||||
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.
|
|
||||||
# This solution was described in https://www.tweag.io/blog/2020-09-30-bazel-static-haskell
|
|
||||||
lib.optionalString enableRelocatedStaticLibs ''
|
|
||||||
GhcLibHcOpts += -fPIC -fexternal-dynamic-refs
|
|
||||||
GhcRtsHcOpts += -fPIC -fexternal-dynamic-refs
|
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
|
||||||
EXTRA_CC_OPTS += -std=gnu99
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Splicer will pull out correct variations
|
|
||||||
libDeps = platform: lib.optional enableTerminfo ncurses
|
|
||||||
++ [libffi]
|
|
||||||
++ lib.optional (!enableNativeBignum) gmp
|
|
||||||
++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
|
|
||||||
|
|
||||||
# TODO(@sternenseemann): is buildTarget LLVM unnecessary?
|
|
||||||
# GHC doesn't seem to have {LLC,OPT}_HOST
|
|
||||||
toolsForTarget = [
|
|
||||||
pkgsBuildTarget.targetPackages.stdenv.cc
|
|
||||||
] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm;
|
|
||||||
|
|
||||||
targetCC = builtins.head toolsForTarget;
|
|
||||||
|
|
||||||
# Sometimes we have to dispatch between the bintools wrapper and the unwrapped
|
|
||||||
# derivation for certain tools depending on the platform.
|
|
||||||
bintoolsFor = {
|
|
||||||
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
|
|
||||||
# part of the bintools wrapper (due to codesigning requirements), but not on
|
|
||||||
# x86_64-darwin.
|
|
||||||
install_name_tool =
|
|
||||||
if stdenv.targetPlatform.isAarch64
|
|
||||||
then targetCC.bintools
|
|
||||||
else targetCC.bintools.bintools;
|
|
||||||
# Same goes for strip.
|
|
||||||
strip =
|
|
||||||
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
|
|
||||||
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
|
|
||||||
then targetCC.bintools
|
|
||||||
else targetCC.bintools.bintools;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
|
|
||||||
# But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
|
|
||||||
# see #84670 and #49071 for more background.
|
|
||||||
useLdGold = targetPlatform.linker == "gold" ||
|
|
||||||
(targetPlatform.linker == "bfd" && (targetCC.bintools.bintools.hasGold or false) && !targetPlatform.isMusl);
|
|
||||||
|
|
||||||
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
|
|
||||||
variantSuffix = lib.concatStrings [
|
|
||||||
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
|
|
||||||
(lib.optionalString enableNativeBignum "-native-bignum")
|
|
||||||
];
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
# C compiler, bintools and LLVM are used at build time, but will also leak into
|
|
||||||
# the resulting GHC's settings file and used at runtime. This means that we are
|
|
||||||
# currently only able to build GHC if hostPlatform == buildPlatform.
|
|
||||||
assert targetCC == pkgsHostTarget.targetPackages.stdenv.cc;
|
|
||||||
assert buildTargetLlvmPackages.llvm == llvmPackages.llvm;
|
|
||||||
assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;
|
|
||||||
|
|
||||||
stdenv.mkDerivation (rec {
|
|
||||||
version = "9.4.2";
|
|
||||||
pname = "${targetPrefix}ghc${variantSuffix}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
|
|
||||||
sha256 = "7227ef3b5e15a0d70b8f1a43aec32867e2a9b2d857cc0ed556aeed172d4db3a5";
|
|
||||||
};
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
|
|
||||||
outputs = [ "out" "doc" ];
|
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
|
|
||||||
# Can be removed if the Cabal library included with ghc backports the linked fix
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
|
|
||||||
stripLen = 1;
|
|
||||||
extraPrefix = "libraries/Cabal/";
|
|
||||||
sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
|
|
||||||
})
|
|
||||||
|
|
||||||
# Fix docs build with sphinx >= 6.0
|
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/22766
|
|
||||||
(fetchpatch {
|
|
||||||
name = "ghc-docs-sphinx-6.0.patch";
|
|
||||||
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
|
|
||||||
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
|
|
||||||
})
|
|
||||||
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
|
|
||||||
./docs-sphinx-7.patch
|
|
||||||
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
|
|
||||||
# Prevent the paths module from emitting symbols that we don't use
|
|
||||||
# when building with separate outputs.
|
|
||||||
#
|
|
||||||
# These cause problems as they're not eliminated by GHC's dead code
|
|
||||||
# elimination on aarch64-darwin. (see
|
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
|
||||||
|
|
||||||
# GHC needs the locale configured during the Haddock phase.
|
|
||||||
LANG = "en_US.UTF-8";
|
|
||||||
|
|
||||||
# GHC is a bit confused on its cross terminology.
|
|
||||||
# TODO(@sternenseemann): investigate coreutils dependencies and pass absolute paths
|
|
||||||
preConfigure = ''
|
|
||||||
for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
|
|
||||||
export "''${env#TARGET_}=''${!env}"
|
|
||||||
done
|
|
||||||
# GHC is a bit confused on its cross terminology, as these would normally be
|
|
||||||
# the *host* tools.
|
|
||||||
export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
|
|
||||||
export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++"
|
|
||||||
# Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
|
|
||||||
export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
|
|
||||||
export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
|
|
||||||
export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
|
|
||||||
export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
|
|
||||||
export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
|
|
||||||
export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
|
|
||||||
export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
|
|
||||||
'' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
|
|
||||||
export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool"
|
|
||||||
export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool"
|
|
||||||
'' + lib.optionalString useLLVM ''
|
|
||||||
export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc"
|
|
||||||
export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt"
|
|
||||||
'' + lib.optionalString (useLLVM && stdenv.targetPlatform.isDarwin) ''
|
|
||||||
# LLVM backend on Darwin needs clang: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/codegens.html#llvm-code-generator-fllvm
|
|
||||||
export CLANG="${buildTargetLlvmPackages.clang}/bin/${buildTargetLlvmPackages.clang.targetPrefix}clang"
|
|
||||||
'' + ''
|
|
||||||
|
|
||||||
echo -n "${buildMK}" > mk/build.mk
|
|
||||||
|
|
||||||
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
|
||||||
'' + lib.optionalString (stdenv.isLinux && hostPlatform.libc == "glibc") ''
|
|
||||||
export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
|
|
||||||
'' + lib.optionalString (!stdenv.isDarwin) ''
|
|
||||||
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
|
|
||||||
'' + lib.optionalString stdenv.isDarwin ''
|
|
||||||
export NIX_LDFLAGS+=" -no_dtrace_dof"
|
|
||||||
|
|
||||||
# GHC tries the host xattr /usr/bin/xattr by default which fails since it expects python to be 2.7
|
|
||||||
export XATTR=${lib.getBin xattr}/bin/xattr
|
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
|
||||||
sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
|
|
||||||
'' + lib.optionalString targetPlatform.isMusl ''
|
|
||||||
echo "patching llvm-targets for musl targets..."
|
|
||||||
echo "Cloning these existing '*-linux-gnu*' targets:"
|
|
||||||
grep linux-gnu llvm-targets | sed 's/^/ /'
|
|
||||||
echo "(go go gadget sed)"
|
|
||||||
sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
|
|
||||||
echo "llvm-targets now contains these '*-linux-musl*' targets:"
|
|
||||||
grep linux-musl llvm-targets | sed 's/^/ /'
|
|
||||||
|
|
||||||
echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
|
|
||||||
# (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
|
|
||||||
for x in configure aclocal.m4; do
|
|
||||||
substituteInPlace $x \
|
|
||||||
--replace '*-android*|*-gnueabi*)' \
|
|
||||||
'*-android*|*-gnueabi*|*-musleabi*)'
|
|
||||||
done
|
|
||||||
''
|
|
||||||
# HACK: allow bootstrapping with GHC 8.10 which works fine, as we don't have
|
|
||||||
# binary 9.0 packaged. Bootstrapping with 9.2 is broken without hadrian.
|
|
||||||
+ ''
|
|
||||||
substituteInPlace configure --replace \
|
|
||||||
'MinBootGhcVersion="9.0"' \
|
|
||||||
'MinBootGhcVersion="8.10"'
|
|
||||||
'';
|
|
||||||
|
|
||||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
|
||||||
configurePlatforms = [ "build" "host" ]
|
|
||||||
++ lib.optional (targetPlatform != hostPlatform) "target";
|
|
||||||
|
|
||||||
# `--with` flags for libraries needed for RTS linker
|
|
||||||
configureFlags = [
|
|
||||||
"--datadir=$doc/share/doc/ghc"
|
|
||||||
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
|
|
||||||
] ++ lib.optionals (libffi != null) [
|
|
||||||
"--with-system-libffi"
|
|
||||||
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
|
|
||||||
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && !enableNativeBignum) [
|
|
||||||
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
|
|
||||||
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
|
|
||||||
"--with-iconv-includes=${libiconv}/include"
|
|
||||||
"--with-iconv-libraries=${libiconv}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform != hostPlatform) [
|
|
||||||
"--enable-bootstrap-with-devel-snapshot"
|
|
||||||
] ++ lib.optionals useLdGold [
|
|
||||||
"CFLAGS=-fuse-ld=gold"
|
|
||||||
"CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
|
|
||||||
"CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
|
|
||||||
] ++ lib.optionals (disableLargeAddressSpace) [
|
|
||||||
"--disable-large-address-space"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Make sure we never relax`$PATH` and hooks support for compatibility.
|
|
||||||
strictDeps = true;
|
|
||||||
|
|
||||||
# Don’t add -liconv to LDFLAGS automatically so that GHC will add it itself.
|
|
||||||
dontAddExtraLibs = true;
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
perl autoconf automake m4 python3
|
|
||||||
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
|
||||||
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
|
|
||||||
autoSignDarwinBinariesHook
|
|
||||||
] ++ lib.optionals enableDocs [
|
|
||||||
sphinx
|
|
||||||
];
|
|
||||||
|
|
||||||
# For building runtime libs
|
|
||||||
depsBuildTarget = toolsForTarget;
|
|
||||||
|
|
||||||
buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
|
|
||||||
|
|
||||||
depsTargetTarget = map lib.getDev (libDeps targetPlatform);
|
|
||||||
depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
|
|
||||||
|
|
||||||
# required, because otherwise all symbols from HSffi.o are stripped, and
|
|
||||||
# that in turn causes GHCi to abort
|
|
||||||
stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
|
|
||||||
|
|
||||||
checkTarget = "test";
|
|
||||||
|
|
||||||
hardeningDisable =
|
|
||||||
[ "format" ]
|
|
||||||
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
|
||||||
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
|
||||||
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
|
||||||
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
|
||||||
# See:
|
|
||||||
# * https://github.com/NixOS/nixpkgs/issues/129247
|
|
||||||
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
|
||||||
++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
|
||||||
|
|
||||||
# big-parallel allows us to build with more than 2 cores on
|
|
||||||
# Hydra which already warrants a significant speedup
|
|
||||||
requiredSystemFeatures = [ "big-parallel" ];
|
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
# Install the bash completion file.
|
|
||||||
install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
|
|
||||||
'';
|
|
||||||
|
|
||||||
passthru = {
|
|
||||||
inherit bootPkgs targetPrefix;
|
|
||||||
|
|
||||||
inherit llvmPackages;
|
|
||||||
inherit enableShared;
|
|
||||||
|
|
||||||
# This is used by the haskell builder to query
|
|
||||||
# the presence of the haddock program.
|
|
||||||
hasHaddock = enableHaddockProgram;
|
|
||||||
|
|
||||||
# Our Cabal compiler name
|
|
||||||
haskellCompilerName = "ghc-${version}";
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://haskell.org/ghc";
|
|
||||||
description = "The Glasgow Haskell Compiler";
|
|
||||||
maintainers = with lib.maintainers; [
|
|
||||||
guibou
|
|
||||||
] ++ lib.teams.haskell.members;
|
|
||||||
timeout = 24 * 3600;
|
|
||||||
inherit (ghc.meta) license platforms;
|
|
||||||
};
|
|
||||||
|
|
||||||
} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
|
|
||||||
dontStrip = true;
|
|
||||||
dontPatchELF = true;
|
|
||||||
noAuditTmpdir = true;
|
|
||||||
})
|
|
@ -1,398 +0,0 @@
|
|||||||
# DO NOT port this expression to hadrian. It is not possible to build a GHC
|
|
||||||
# cross compiler with 9.4.* and hadrian.
|
|
||||||
{ lib, stdenv, pkgsBuildTarget, pkgsHostTarget, targetPackages
|
|
||||||
|
|
||||||
# build-tools
|
|
||||||
, bootPkgs
|
|
||||||
, autoconf, automake, coreutils, fetchpatch, fetchurl, perl, python3, m4, sphinx
|
|
||||||
, xattr, autoSignDarwinBinariesHook
|
|
||||||
, bash
|
|
||||||
|
|
||||||
, libiconv ? null, ncurses
|
|
||||||
, glibcLocales ? null
|
|
||||||
|
|
||||||
, # GHC can be built with system libffi or a bundled one.
|
|
||||||
libffi ? null
|
|
||||||
|
|
||||||
, useLLVM ? !(stdenv.targetPlatform.isx86
|
|
||||||
|| stdenv.targetPlatform.isPower
|
|
||||||
|| stdenv.targetPlatform.isSparc
|
|
||||||
|| stdenv.targetPlatform.isAarch64)
|
|
||||||
, # LLVM is conceptually a run-time-only dependency, but for
|
|
||||||
# non-x86, we need LLVM to bootstrap later stages, so it becomes a
|
|
||||||
# build-time dependency too.
|
|
||||||
buildTargetLlvmPackages, llvmPackages
|
|
||||||
|
|
||||||
, # If enabled, GHC will be built with the GPL-free but slightly slower native
|
|
||||||
# bignum backend instead of the faster but GPLed gmp backend.
|
|
||||||
enableNativeBignum ? !(lib.meta.availableOn stdenv.hostPlatform gmp
|
|
||||||
&& lib.meta.availableOn stdenv.targetPlatform gmp)
|
|
||||||
, gmp
|
|
||||||
|
|
||||||
, # If enabled, use -fPIC when compiling static libs.
|
|
||||||
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
|
|
||||||
|
|
||||||
, enableProfiledLibs ? true
|
|
||||||
|
|
||||||
, # Whether to build dynamic libs for the standard library (on the target
|
|
||||||
# platform). Static libs are always built.
|
|
||||||
enableShared ? with stdenv.targetPlatform; !isWindows && !useiOSPrebuilt && !isStatic
|
|
||||||
|
|
||||||
, # Whether to build terminfo.
|
|
||||||
enableTerminfo ? !stdenv.targetPlatform.isWindows
|
|
||||||
|
|
||||||
, # What flavour to build. An empty string indicates no
|
|
||||||
# specific flavour and falls back to ghc default values.
|
|
||||||
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
|
||||||
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
|
||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
|
||||||
enableDocs ? (
|
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
|
||||||
# all `sphinx` dependencies building in those environments.
|
|
||||||
# `sphinx` pulls in among others:
|
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
|
||||||
# Disabled for cross; see note [HADDOCK_DOCS].
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
|
|
||||||
, # Whether to disable the large address space allocator
|
|
||||||
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
|
|
||||||
}:
|
|
||||||
|
|
||||||
assert !enableNativeBignum -> gmp != null;
|
|
||||||
|
|
||||||
# Cross cannot currently build the `haddock` program for silly reasons,
|
|
||||||
# see note [HADDOCK_DOCS].
|
|
||||||
assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
|
|
||||||
|
|
||||||
let
|
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
|
||||||
|
|
||||||
inherit (bootPkgs) ghc;
|
|
||||||
|
|
||||||
# TODO(@Ericson2314) Make unconditional
|
|
||||||
targetPrefix = lib.optionalString
|
|
||||||
(targetPlatform != hostPlatform)
|
|
||||||
"${targetPlatform.config}-";
|
|
||||||
|
|
||||||
buildMK = ''
|
|
||||||
BuildFlavour = ${ghcFlavour}
|
|
||||||
ifneq \"\$(BuildFlavour)\" \"\"
|
|
||||||
include mk/flavours/\$(BuildFlavour).mk
|
|
||||||
endif
|
|
||||||
BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
|
|
||||||
BUILD_SPHINX_PDF = NO
|
|
||||||
'' +
|
|
||||||
# Note [HADDOCK_DOCS]:
|
|
||||||
# Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
|
|
||||||
# program is built (which we generally always want to have a complete GHC install)
|
|
||||||
# and whether it is run on the GHC sources to generate hyperlinked source code
|
|
||||||
# (which is impossible for cross-compilation); see:
|
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/20077
|
|
||||||
# This implies that currently a cross-compiled GHC will never have a `haddock`
|
|
||||||
# program, so it can never generate haddocks for any packages.
|
|
||||||
# If this is solved in the future, we'd like to unconditionally
|
|
||||||
# build the haddock program (removing the `enableHaddockProgram` option).
|
|
||||||
''
|
|
||||||
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
|
||||||
# Build haddocks for boot packages with hyperlinking
|
|
||||||
EXTRA_HADDOCK_OPTS += --hyperlinked-source --quickjump
|
|
||||||
|
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
|
||||||
BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
|
|
||||||
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
|
||||||
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
|
||||||
GhcLibWays = "v dyn"
|
|
||||||
'' +
|
|
||||||
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
|
|
||||||
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.
|
|
||||||
# This solution was described in https://www.tweag.io/blog/2020-09-30-bazel-static-haskell
|
|
||||||
lib.optionalString enableRelocatedStaticLibs ''
|
|
||||||
GhcLibHcOpts += -fPIC -fexternal-dynamic-refs
|
|
||||||
GhcRtsHcOpts += -fPIC -fexternal-dynamic-refs
|
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
|
||||||
EXTRA_CC_OPTS += -std=gnu99
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Splicer will pull out correct variations
|
|
||||||
libDeps = platform: lib.optional enableTerminfo ncurses
|
|
||||||
++ [libffi]
|
|
||||||
++ lib.optional (!enableNativeBignum) gmp
|
|
||||||
++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
|
|
||||||
|
|
||||||
# TODO(@sternenseemann): is buildTarget LLVM unnecessary?
|
|
||||||
# GHC doesn't seem to have {LLC,OPT}_HOST
|
|
||||||
toolsForTarget = [
|
|
||||||
pkgsBuildTarget.targetPackages.stdenv.cc
|
|
||||||
] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm;
|
|
||||||
|
|
||||||
targetCC = builtins.head toolsForTarget;
|
|
||||||
|
|
||||||
# Sometimes we have to dispatch between the bintools wrapper and the unwrapped
|
|
||||||
# derivation for certain tools depending on the platform.
|
|
||||||
bintoolsFor = {
|
|
||||||
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
|
|
||||||
# part of the bintools wrapper (due to codesigning requirements), but not on
|
|
||||||
# x86_64-darwin.
|
|
||||||
install_name_tool =
|
|
||||||
if stdenv.targetPlatform.isAarch64
|
|
||||||
then targetCC.bintools
|
|
||||||
else targetCC.bintools.bintools;
|
|
||||||
# Same goes for strip.
|
|
||||||
strip =
|
|
||||||
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
|
|
||||||
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
|
|
||||||
then targetCC.bintools
|
|
||||||
else targetCC.bintools.bintools;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
|
|
||||||
# But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
|
|
||||||
# see #84670 and #49071 for more background.
|
|
||||||
useLdGold = targetPlatform.linker == "gold" ||
|
|
||||||
(targetPlatform.linker == "bfd" && (targetCC.bintools.bintools.hasGold or false) && !targetPlatform.isMusl);
|
|
||||||
|
|
||||||
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
|
|
||||||
variantSuffix = lib.concatStrings [
|
|
||||||
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
|
|
||||||
(lib.optionalString enableNativeBignum "-native-bignum")
|
|
||||||
];
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
# C compiler, bintools and LLVM are used at build time, but will also leak into
|
|
||||||
# the resulting GHC's settings file and used at runtime. This means that we are
|
|
||||||
# currently only able to build GHC if hostPlatform == buildPlatform.
|
|
||||||
assert targetCC == pkgsHostTarget.targetPackages.stdenv.cc;
|
|
||||||
assert buildTargetLlvmPackages.llvm == llvmPackages.llvm;
|
|
||||||
assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;
|
|
||||||
|
|
||||||
stdenv.mkDerivation (rec {
|
|
||||||
version = "9.4.3";
|
|
||||||
pname = "${targetPrefix}ghc${variantSuffix}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
|
|
||||||
sha256 = "eaf63949536ede50ee39179f2299d5094eb9152d87cc6fb2175006bc98e8905a";
|
|
||||||
};
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
|
|
||||||
outputs = [ "out" "doc" ];
|
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
|
|
||||||
# Can be removed if the Cabal library included with ghc backports the linked fix
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
|
|
||||||
stripLen = 1;
|
|
||||||
extraPrefix = "libraries/Cabal/";
|
|
||||||
sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
|
|
||||||
})
|
|
||||||
|
|
||||||
# Fix docs build with sphinx >= 6.0
|
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/22766
|
|
||||||
(fetchpatch {
|
|
||||||
name = "ghc-docs-sphinx-6.0.patch";
|
|
||||||
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
|
|
||||||
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
|
|
||||||
})
|
|
||||||
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
|
|
||||||
./docs-sphinx-7.patch
|
|
||||||
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
|
|
||||||
# Prevent the paths module from emitting symbols that we don't use
|
|
||||||
# when building with separate outputs.
|
|
||||||
#
|
|
||||||
# These cause problems as they're not eliminated by GHC's dead code
|
|
||||||
# elimination on aarch64-darwin. (see
|
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
|
||||||
|
|
||||||
# GHC needs the locale configured during the Haddock phase.
|
|
||||||
LANG = "en_US.UTF-8";
|
|
||||||
|
|
||||||
# GHC is a bit confused on its cross terminology.
|
|
||||||
# TODO(@sternenseemann): investigate coreutils dependencies and pass absolute paths
|
|
||||||
preConfigure = ''
|
|
||||||
for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
|
|
||||||
export "''${env#TARGET_}=''${!env}"
|
|
||||||
done
|
|
||||||
# GHC is a bit confused on its cross terminology, as these would normally be
|
|
||||||
# the *host* tools.
|
|
||||||
export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
|
|
||||||
export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++"
|
|
||||||
# Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
|
|
||||||
export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
|
|
||||||
export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
|
|
||||||
export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
|
|
||||||
export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
|
|
||||||
export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
|
|
||||||
export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
|
|
||||||
export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
|
|
||||||
'' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
|
|
||||||
export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool"
|
|
||||||
export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool"
|
|
||||||
'' + lib.optionalString useLLVM ''
|
|
||||||
export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc"
|
|
||||||
export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt"
|
|
||||||
'' + lib.optionalString (useLLVM && stdenv.targetPlatform.isDarwin) ''
|
|
||||||
# LLVM backend on Darwin needs clang: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/codegens.html#llvm-code-generator-fllvm
|
|
||||||
export CLANG="${buildTargetLlvmPackages.clang}/bin/${buildTargetLlvmPackages.clang.targetPrefix}clang"
|
|
||||||
'' + ''
|
|
||||||
|
|
||||||
echo -n "${buildMK}" > mk/build.mk
|
|
||||||
|
|
||||||
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
|
||||||
'' + lib.optionalString (stdenv.isLinux && hostPlatform.libc == "glibc") ''
|
|
||||||
export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
|
|
||||||
'' + lib.optionalString (!stdenv.isDarwin) ''
|
|
||||||
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
|
|
||||||
'' + lib.optionalString stdenv.isDarwin ''
|
|
||||||
export NIX_LDFLAGS+=" -no_dtrace_dof"
|
|
||||||
|
|
||||||
# GHC tries the host xattr /usr/bin/xattr by default which fails since it expects python to be 2.7
|
|
||||||
export XATTR=${lib.getBin xattr}/bin/xattr
|
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
|
||||||
sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
|
|
||||||
'' + lib.optionalString targetPlatform.isMusl ''
|
|
||||||
echo "patching llvm-targets for musl targets..."
|
|
||||||
echo "Cloning these existing '*-linux-gnu*' targets:"
|
|
||||||
grep linux-gnu llvm-targets | sed 's/^/ /'
|
|
||||||
echo "(go go gadget sed)"
|
|
||||||
sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
|
|
||||||
echo "llvm-targets now contains these '*-linux-musl*' targets:"
|
|
||||||
grep linux-musl llvm-targets | sed 's/^/ /'
|
|
||||||
|
|
||||||
echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
|
|
||||||
# (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
|
|
||||||
for x in configure aclocal.m4; do
|
|
||||||
substituteInPlace $x \
|
|
||||||
--replace '*-android*|*-gnueabi*)' \
|
|
||||||
'*-android*|*-gnueabi*|*-musleabi*)'
|
|
||||||
done
|
|
||||||
''
|
|
||||||
# HACK: allow bootstrapping with GHC 8.10 which works fine, as we don't have
|
|
||||||
# binary 9.0 packaged. Bootstrapping with 9.2 is broken without hadrian.
|
|
||||||
+ ''
|
|
||||||
substituteInPlace configure --replace \
|
|
||||||
'MinBootGhcVersion="9.0"' \
|
|
||||||
'MinBootGhcVersion="8.10"'
|
|
||||||
'';
|
|
||||||
|
|
||||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
|
||||||
configurePlatforms = [ "build" "host" ]
|
|
||||||
++ lib.optional (targetPlatform != hostPlatform) "target";
|
|
||||||
|
|
||||||
# `--with` flags for libraries needed for RTS linker
|
|
||||||
configureFlags = [
|
|
||||||
"--datadir=$doc/share/doc/ghc"
|
|
||||||
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
|
|
||||||
] ++ lib.optionals (libffi != null) [
|
|
||||||
"--with-system-libffi"
|
|
||||||
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
|
|
||||||
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && !enableNativeBignum) [
|
|
||||||
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
|
|
||||||
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
|
|
||||||
"--with-iconv-includes=${libiconv}/include"
|
|
||||||
"--with-iconv-libraries=${libiconv}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform != hostPlatform) [
|
|
||||||
"--enable-bootstrap-with-devel-snapshot"
|
|
||||||
] ++ lib.optionals useLdGold [
|
|
||||||
"CFLAGS=-fuse-ld=gold"
|
|
||||||
"CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
|
|
||||||
"CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
|
|
||||||
] ++ lib.optionals (disableLargeAddressSpace) [
|
|
||||||
"--disable-large-address-space"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Make sure we never relax`$PATH` and hooks support for compatibility.
|
|
||||||
strictDeps = true;
|
|
||||||
|
|
||||||
# Don’t add -liconv to LDFLAGS automatically so that GHC will add it itself.
|
|
||||||
dontAddExtraLibs = true;
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
perl autoconf automake m4 python3
|
|
||||||
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
|
||||||
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
|
|
||||||
autoSignDarwinBinariesHook
|
|
||||||
] ++ lib.optionals enableDocs [
|
|
||||||
sphinx
|
|
||||||
];
|
|
||||||
|
|
||||||
# For building runtime libs
|
|
||||||
depsBuildTarget = toolsForTarget;
|
|
||||||
|
|
||||||
buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
|
|
||||||
|
|
||||||
depsTargetTarget = map lib.getDev (libDeps targetPlatform);
|
|
||||||
depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
|
|
||||||
|
|
||||||
# required, because otherwise all symbols from HSffi.o are stripped, and
|
|
||||||
# that in turn causes GHCi to abort
|
|
||||||
stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
|
|
||||||
|
|
||||||
checkTarget = "test";
|
|
||||||
|
|
||||||
hardeningDisable =
|
|
||||||
[ "format" ]
|
|
||||||
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
|
||||||
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
|
||||||
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
|
||||||
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
|
||||||
# See:
|
|
||||||
# * https://github.com/NixOS/nixpkgs/issues/129247
|
|
||||||
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
|
||||||
++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
|
||||||
|
|
||||||
# big-parallel allows us to build with more than 2 cores on
|
|
||||||
# Hydra which already warrants a significant speedup
|
|
||||||
requiredSystemFeatures = [ "big-parallel" ];
|
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
# Install the bash completion file.
|
|
||||||
install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
|
|
||||||
'';
|
|
||||||
|
|
||||||
passthru = {
|
|
||||||
inherit bootPkgs targetPrefix;
|
|
||||||
|
|
||||||
inherit llvmPackages;
|
|
||||||
inherit enableShared;
|
|
||||||
|
|
||||||
# This is used by the haskell builder to query
|
|
||||||
# the presence of the haddock program.
|
|
||||||
hasHaddock = enableHaddockProgram;
|
|
||||||
|
|
||||||
# Our Cabal compiler name
|
|
||||||
haskellCompilerName = "ghc-${version}";
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://haskell.org/ghc";
|
|
||||||
description = "The Glasgow Haskell Compiler";
|
|
||||||
maintainers = with lib.maintainers; [
|
|
||||||
guibou
|
|
||||||
] ++ lib.teams.haskell.members;
|
|
||||||
timeout = 24 * 3600;
|
|
||||||
inherit (ghc.meta) license platforms;
|
|
||||||
};
|
|
||||||
|
|
||||||
} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
|
|
||||||
dontStrip = true;
|
|
||||||
dontPatchELF = true;
|
|
||||||
noAuditTmpdir = true;
|
|
||||||
})
|
|
@ -1,398 +0,0 @@
|
|||||||
# DO NOT port this expression to hadrian. It is not possible to build a GHC
|
|
||||||
# cross compiler with 9.4.* and hadrian.
|
|
||||||
{ lib, stdenv, pkgsBuildTarget, pkgsHostTarget, targetPackages
|
|
||||||
|
|
||||||
# build-tools
|
|
||||||
, bootPkgs
|
|
||||||
, autoconf, automake, coreutils, fetchpatch, fetchurl, perl, python3, m4, sphinx
|
|
||||||
, xattr, autoSignDarwinBinariesHook
|
|
||||||
, bash
|
|
||||||
|
|
||||||
, libiconv ? null, ncurses
|
|
||||||
, glibcLocales ? null
|
|
||||||
|
|
||||||
, # GHC can be built with system libffi or a bundled one.
|
|
||||||
libffi ? null
|
|
||||||
|
|
||||||
, useLLVM ? !(stdenv.targetPlatform.isx86
|
|
||||||
|| stdenv.targetPlatform.isPower
|
|
||||||
|| stdenv.targetPlatform.isSparc
|
|
||||||
|| stdenv.targetPlatform.isAarch64)
|
|
||||||
, # LLVM is conceptually a run-time-only dependency, but for
|
|
||||||
# non-x86, we need LLVM to bootstrap later stages, so it becomes a
|
|
||||||
# build-time dependency too.
|
|
||||||
buildTargetLlvmPackages, llvmPackages
|
|
||||||
|
|
||||||
, # If enabled, GHC will be built with the GPL-free but slightly slower native
|
|
||||||
# bignum backend instead of the faster but GPLed gmp backend.
|
|
||||||
enableNativeBignum ? !(lib.meta.availableOn stdenv.hostPlatform gmp
|
|
||||||
&& lib.meta.availableOn stdenv.targetPlatform gmp)
|
|
||||||
, gmp
|
|
||||||
|
|
||||||
, # If enabled, use -fPIC when compiling static libs.
|
|
||||||
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
|
|
||||||
|
|
||||||
, enableProfiledLibs ? true
|
|
||||||
|
|
||||||
, # Whether to build dynamic libs for the standard library (on the target
|
|
||||||
# platform). Static libs are always built.
|
|
||||||
enableShared ? with stdenv.targetPlatform; !isWindows && !useiOSPrebuilt && !isStatic
|
|
||||||
|
|
||||||
, # Whether to build terminfo.
|
|
||||||
enableTerminfo ? !stdenv.targetPlatform.isWindows
|
|
||||||
|
|
||||||
, # What flavour to build. An empty string indicates no
|
|
||||||
# specific flavour and falls back to ghc default values.
|
|
||||||
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
|
|
||||||
(if useLLVM then "perf-cross" else "perf-cross-ncg")
|
|
||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
|
||||||
enableDocs ? (
|
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
|
||||||
# all `sphinx` dependencies building in those environments.
|
|
||||||
# `sphinx` pulls in among others:
|
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
|
||||||
# Disabled for cross; see note [HADDOCK_DOCS].
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
|
|
||||||
, # Whether to disable the large address space allocator
|
|
||||||
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
|
|
||||||
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
|
|
||||||
}:
|
|
||||||
|
|
||||||
assert !enableNativeBignum -> gmp != null;
|
|
||||||
|
|
||||||
# Cross cannot currently build the `haddock` program for silly reasons,
|
|
||||||
# see note [HADDOCK_DOCS].
|
|
||||||
assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
|
|
||||||
|
|
||||||
let
|
|
||||||
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
|
|
||||||
|
|
||||||
inherit (bootPkgs) ghc;
|
|
||||||
|
|
||||||
# TODO(@Ericson2314) Make unconditional
|
|
||||||
targetPrefix = lib.optionalString
|
|
||||||
(targetPlatform != hostPlatform)
|
|
||||||
"${targetPlatform.config}-";
|
|
||||||
|
|
||||||
buildMK = ''
|
|
||||||
BuildFlavour = ${ghcFlavour}
|
|
||||||
ifneq \"\$(BuildFlavour)\" \"\"
|
|
||||||
include mk/flavours/\$(BuildFlavour).mk
|
|
||||||
endif
|
|
||||||
BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
|
|
||||||
BUILD_SPHINX_PDF = NO
|
|
||||||
'' +
|
|
||||||
# Note [HADDOCK_DOCS]:
|
|
||||||
# Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
|
|
||||||
# program is built (which we generally always want to have a complete GHC install)
|
|
||||||
# and whether it is run on the GHC sources to generate hyperlinked source code
|
|
||||||
# (which is impossible for cross-compilation); see:
|
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/20077
|
|
||||||
# This implies that currently a cross-compiled GHC will never have a `haddock`
|
|
||||||
# program, so it can never generate haddocks for any packages.
|
|
||||||
# If this is solved in the future, we'd like to unconditionally
|
|
||||||
# build the haddock program (removing the `enableHaddockProgram` option).
|
|
||||||
''
|
|
||||||
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
|
|
||||||
# Build haddocks for boot packages with hyperlinking
|
|
||||||
EXTRA_HADDOCK_OPTS += --hyperlinked-source --quickjump
|
|
||||||
|
|
||||||
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
|
|
||||||
BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
|
|
||||||
'' + lib.optionalString (targetPlatform != hostPlatform) ''
|
|
||||||
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
|
|
||||||
CrossCompilePrefix = ${targetPrefix}
|
|
||||||
'' + lib.optionalString (!enableProfiledLibs) ''
|
|
||||||
GhcLibWays = "v dyn"
|
|
||||||
'' +
|
|
||||||
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
|
|
||||||
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.
|
|
||||||
# This solution was described in https://www.tweag.io/blog/2020-09-30-bazel-static-haskell
|
|
||||||
lib.optionalString enableRelocatedStaticLibs ''
|
|
||||||
GhcLibHcOpts += -fPIC -fexternal-dynamic-refs
|
|
||||||
GhcRtsHcOpts += -fPIC -fexternal-dynamic-refs
|
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
|
||||||
EXTRA_CC_OPTS += -std=gnu99
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Splicer will pull out correct variations
|
|
||||||
libDeps = platform: lib.optional enableTerminfo ncurses
|
|
||||||
++ [libffi]
|
|
||||||
++ lib.optional (!enableNativeBignum) gmp
|
|
||||||
++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
|
|
||||||
|
|
||||||
# TODO(@sternenseemann): is buildTarget LLVM unnecessary?
|
|
||||||
# GHC doesn't seem to have {LLC,OPT}_HOST
|
|
||||||
toolsForTarget = [
|
|
||||||
pkgsBuildTarget.targetPackages.stdenv.cc
|
|
||||||
] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm;
|
|
||||||
|
|
||||||
targetCC = builtins.head toolsForTarget;
|
|
||||||
|
|
||||||
# Sometimes we have to dispatch between the bintools wrapper and the unwrapped
|
|
||||||
# derivation for certain tools depending on the platform.
|
|
||||||
bintoolsFor = {
|
|
||||||
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
|
|
||||||
# part of the bintools wrapper (due to codesigning requirements), but not on
|
|
||||||
# x86_64-darwin.
|
|
||||||
install_name_tool =
|
|
||||||
if stdenv.targetPlatform.isAarch64
|
|
||||||
then targetCC.bintools
|
|
||||||
else targetCC.bintools.bintools;
|
|
||||||
# Same goes for strip.
|
|
||||||
strip =
|
|
||||||
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
|
|
||||||
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
|
|
||||||
then targetCC.bintools
|
|
||||||
else targetCC.bintools.bintools;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
|
|
||||||
# But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
|
|
||||||
# see #84670 and #49071 for more background.
|
|
||||||
useLdGold = targetPlatform.linker == "gold" ||
|
|
||||||
(targetPlatform.linker == "bfd" && (targetCC.bintools.bintools.hasGold or false) && !targetPlatform.isMusl);
|
|
||||||
|
|
||||||
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
|
|
||||||
variantSuffix = lib.concatStrings [
|
|
||||||
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
|
|
||||||
(lib.optionalString enableNativeBignum "-native-bignum")
|
|
||||||
];
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
# C compiler, bintools and LLVM are used at build time, but will also leak into
|
|
||||||
# the resulting GHC's settings file and used at runtime. This means that we are
|
|
||||||
# currently only able to build GHC if hostPlatform == buildPlatform.
|
|
||||||
assert targetCC == pkgsHostTarget.targetPackages.stdenv.cc;
|
|
||||||
assert buildTargetLlvmPackages.llvm == llvmPackages.llvm;
|
|
||||||
assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;
|
|
||||||
|
|
||||||
stdenv.mkDerivation (rec {
|
|
||||||
version = "9.4.4";
|
|
||||||
pname = "${targetPrefix}ghc${variantSuffix}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
|
|
||||||
sha256 = "e8cef25a6ded1531cda7a90488d0cfb6d780657d16636daa59430be030cd67e2";
|
|
||||||
};
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
|
|
||||||
outputs = [ "out" "doc" ];
|
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
|
|
||||||
# Can be removed if the Cabal library included with ghc backports the linked fix
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
|
|
||||||
stripLen = 1;
|
|
||||||
extraPrefix = "libraries/Cabal/";
|
|
||||||
sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
|
|
||||||
})
|
|
||||||
|
|
||||||
# Fix docs build with sphinx >= 6.0
|
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/22766
|
|
||||||
(fetchpatch {
|
|
||||||
name = "ghc-docs-sphinx-6.0.patch";
|
|
||||||
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
|
|
||||||
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
|
|
||||||
})
|
|
||||||
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
|
|
||||||
./docs-sphinx-7.patch
|
|
||||||
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
|
|
||||||
# Prevent the paths module from emitting symbols that we don't use
|
|
||||||
# when building with separate outputs.
|
|
||||||
#
|
|
||||||
# These cause problems as they're not eliminated by GHC's dead code
|
|
||||||
# elimination on aarch64-darwin. (see
|
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
|
||||||
|
|
||||||
# GHC needs the locale configured during the Haddock phase.
|
|
||||||
LANG = "en_US.UTF-8";
|
|
||||||
|
|
||||||
# GHC is a bit confused on its cross terminology.
|
|
||||||
# TODO(@sternenseemann): investigate coreutils dependencies and pass absolute paths
|
|
||||||
preConfigure = ''
|
|
||||||
for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
|
|
||||||
export "''${env#TARGET_}=''${!env}"
|
|
||||||
done
|
|
||||||
# GHC is a bit confused on its cross terminology, as these would normally be
|
|
||||||
# the *host* tools.
|
|
||||||
export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
|
|
||||||
export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++"
|
|
||||||
# Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
|
|
||||||
export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
|
|
||||||
export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
|
|
||||||
export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
|
|
||||||
export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
|
|
||||||
export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
|
|
||||||
export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
|
|
||||||
export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
|
|
||||||
'' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
|
|
||||||
export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool"
|
|
||||||
export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool"
|
|
||||||
'' + lib.optionalString useLLVM ''
|
|
||||||
export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc"
|
|
||||||
export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt"
|
|
||||||
'' + lib.optionalString (useLLVM && stdenv.targetPlatform.isDarwin) ''
|
|
||||||
# LLVM backend on Darwin needs clang: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/codegens.html#llvm-code-generator-fllvm
|
|
||||||
export CLANG="${buildTargetLlvmPackages.clang}/bin/${buildTargetLlvmPackages.clang.targetPrefix}clang"
|
|
||||||
'' + ''
|
|
||||||
|
|
||||||
echo -n "${buildMK}" > mk/build.mk
|
|
||||||
|
|
||||||
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
|
||||||
'' + lib.optionalString (stdenv.isLinux && hostPlatform.libc == "glibc") ''
|
|
||||||
export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
|
|
||||||
'' + lib.optionalString (!stdenv.isDarwin) ''
|
|
||||||
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
|
|
||||||
'' + lib.optionalString stdenv.isDarwin ''
|
|
||||||
export NIX_LDFLAGS+=" -no_dtrace_dof"
|
|
||||||
|
|
||||||
# GHC tries the host xattr /usr/bin/xattr by default which fails since it expects python to be 2.7
|
|
||||||
export XATTR=${lib.getBin xattr}/bin/xattr
|
|
||||||
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
|
|
||||||
sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
|
|
||||||
'' + lib.optionalString targetPlatform.isMusl ''
|
|
||||||
echo "patching llvm-targets for musl targets..."
|
|
||||||
echo "Cloning these existing '*-linux-gnu*' targets:"
|
|
||||||
grep linux-gnu llvm-targets | sed 's/^/ /'
|
|
||||||
echo "(go go gadget sed)"
|
|
||||||
sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
|
|
||||||
echo "llvm-targets now contains these '*-linux-musl*' targets:"
|
|
||||||
grep linux-musl llvm-targets | sed 's/^/ /'
|
|
||||||
|
|
||||||
echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
|
|
||||||
# (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
|
|
||||||
for x in configure aclocal.m4; do
|
|
||||||
substituteInPlace $x \
|
|
||||||
--replace '*-android*|*-gnueabi*)' \
|
|
||||||
'*-android*|*-gnueabi*|*-musleabi*)'
|
|
||||||
done
|
|
||||||
''
|
|
||||||
# HACK: allow bootstrapping with GHC 8.10 which works fine, as we don't have
|
|
||||||
# binary 9.0 packaged. Bootstrapping with 9.2 is broken without hadrian.
|
|
||||||
+ ''
|
|
||||||
substituteInPlace configure --replace \
|
|
||||||
'MinBootGhcVersion="9.0"' \
|
|
||||||
'MinBootGhcVersion="8.10"'
|
|
||||||
'';
|
|
||||||
|
|
||||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
|
||||||
configurePlatforms = [ "build" "host" ]
|
|
||||||
++ lib.optional (targetPlatform != hostPlatform) "target";
|
|
||||||
|
|
||||||
# `--with` flags for libraries needed for RTS linker
|
|
||||||
configureFlags = [
|
|
||||||
"--datadir=$doc/share/doc/ghc"
|
|
||||||
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
|
|
||||||
] ++ lib.optionals (libffi != null) [
|
|
||||||
"--with-system-libffi"
|
|
||||||
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
|
|
||||||
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && !enableNativeBignum) [
|
|
||||||
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
|
|
||||||
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
|
|
||||||
"--with-iconv-includes=${libiconv}/include"
|
|
||||||
"--with-iconv-libraries=${libiconv}/lib"
|
|
||||||
] ++ lib.optionals (targetPlatform != hostPlatform) [
|
|
||||||
"--enable-bootstrap-with-devel-snapshot"
|
|
||||||
] ++ lib.optionals useLdGold [
|
|
||||||
"CFLAGS=-fuse-ld=gold"
|
|
||||||
"CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
|
|
||||||
"CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
|
|
||||||
] ++ lib.optionals (disableLargeAddressSpace) [
|
|
||||||
"--disable-large-address-space"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Make sure we never relax`$PATH` and hooks support for compatibility.
|
|
||||||
strictDeps = true;
|
|
||||||
|
|
||||||
# Don’t add -liconv to LDFLAGS automatically so that GHC will add it itself.
|
|
||||||
dontAddExtraLibs = true;
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
perl autoconf automake m4 python3
|
|
||||||
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
|
|
||||||
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
|
|
||||||
autoSignDarwinBinariesHook
|
|
||||||
] ++ lib.optionals enableDocs [
|
|
||||||
sphinx
|
|
||||||
];
|
|
||||||
|
|
||||||
# For building runtime libs
|
|
||||||
depsBuildTarget = toolsForTarget;
|
|
||||||
|
|
||||||
buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
|
|
||||||
|
|
||||||
depsTargetTarget = map lib.getDev (libDeps targetPlatform);
|
|
||||||
depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
|
|
||||||
|
|
||||||
# required, because otherwise all symbols from HSffi.o are stripped, and
|
|
||||||
# that in turn causes GHCi to abort
|
|
||||||
stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
|
|
||||||
|
|
||||||
checkTarget = "test";
|
|
||||||
|
|
||||||
hardeningDisable =
|
|
||||||
[ "format" ]
|
|
||||||
# In nixpkgs, musl based builds currently enable `pie` hardening by default
|
|
||||||
# (see `defaultHardeningFlags` in `make-derivation.nix`).
|
|
||||||
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
|
|
||||||
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
|
|
||||||
# See:
|
|
||||||
# * https://github.com/NixOS/nixpkgs/issues/129247
|
|
||||||
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
|
|
||||||
++ lib.optional stdenv.targetPlatform.isMusl "pie";
|
|
||||||
|
|
||||||
# big-parallel allows us to build with more than 2 cores on
|
|
||||||
# Hydra which already warrants a significant speedup
|
|
||||||
requiredSystemFeatures = [ "big-parallel" ];
|
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
# Install the bash completion file.
|
|
||||||
install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
|
|
||||||
'';
|
|
||||||
|
|
||||||
passthru = {
|
|
||||||
inherit bootPkgs targetPrefix;
|
|
||||||
|
|
||||||
inherit llvmPackages;
|
|
||||||
inherit enableShared;
|
|
||||||
|
|
||||||
# This is used by the haskell builder to query
|
|
||||||
# the presence of the haddock program.
|
|
||||||
hasHaddock = enableHaddockProgram;
|
|
||||||
|
|
||||||
# Our Cabal compiler name
|
|
||||||
haskellCompilerName = "ghc-${version}";
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "http://haskell.org/ghc";
|
|
||||||
description = "The Glasgow Haskell Compiler";
|
|
||||||
maintainers = with lib.maintainers; [
|
|
||||||
guibou
|
|
||||||
] ++ lib.teams.haskell.members;
|
|
||||||
timeout = 24 * 3600;
|
|
||||||
inherit (ghc.meta) license platforms;
|
|
||||||
};
|
|
||||||
|
|
||||||
} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
|
|
||||||
dontStrip = true;
|
|
||||||
dontPatchELF = true;
|
|
||||||
noAuditTmpdir = true;
|
|
||||||
})
|
|
@ -48,12 +48,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
@ -215,7 +212,7 @@ stdenv.mkDerivation (rec {
|
|||||||
# These cause problems as they're not eliminated by GHC's dead code
|
# These cause problems as they're not eliminated by GHC's dead code
|
||||||
# elimination on aarch64-darwin. (see
|
# elimination on aarch64-darwin. (see
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
@ -48,12 +48,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
@ -211,7 +208,7 @@ stdenv.mkDerivation (rec {
|
|||||||
# These cause problems as they're not eliminated by GHC's dead code
|
# These cause problems as they're not eliminated by GHC's dead code
|
||||||
# elimination on aarch64-darwin. (see
|
# elimination on aarch64-darwin. (see
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
@ -48,12 +48,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
@ -207,7 +204,7 @@ stdenv.mkDerivation (rec {
|
|||||||
# These cause problems as they're not eliminated by GHC's dead code
|
# These cause problems as they're not eliminated by GHC's dead code
|
||||||
# elimination on aarch64-darwin. (see
|
# elimination on aarch64-darwin. (see
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
@ -48,12 +48,9 @@
|
|||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, enableHaddockProgram ?
|
, enableHaddockProgram ?
|
||||||
@ -207,7 +204,7 @@ stdenv.mkDerivation (rec {
|
|||||||
# These cause problems as they're not eliminated by GHC's dead code
|
# These cause problems as they're not eliminated by GHC's dead code
|
||||||
# elimination on aarch64-darwin. (see
|
# elimination on aarch64-darwin. (see
|
||||||
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
||||||
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
|
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = "patchShebangs .";
|
postPatch = "patchShebangs .";
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
import ./common-hadrian.nix rec {
|
|
||||||
version = "9.6.2";
|
|
||||||
sha256 = "1b510c5f8753c3ba24851702c6c9da7d81dc5e47fe3ecb7af39c7c2613abf170";
|
|
||||||
}
|
|
@ -162,13 +162,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
, # Whether to build sphinx documentation.
|
, # Whether to build sphinx documentation.
|
||||||
|
# TODO(@sternenseemann): Hadrian ignores the --docs flag if finalStage = Stage1
|
||||||
enableDocs ? (
|
enableDocs ? (
|
||||||
# Docs disabled for musl and cross because it's a large task to keep
|
# Docs disabled if we are building on musl because it's a large task to keep
|
||||||
# all `sphinx` dependencies building in those environments.
|
# all `sphinx` dependencies building in this environment.
|
||||||
# `sphinx` pulls in among others:
|
!stdenv.buildPlatform.isMusl
|
||||||
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
|
|
||||||
(stdenv.targetPlatform == stdenv.hostPlatform)
|
|
||||||
&& !stdenv.hostPlatform.isMusl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
, # Whether to disable the large address space allocator
|
, # Whether to disable the large address space allocator
|
||||||
@ -271,7 +269,16 @@ stdenv.mkDerivation ({
|
|||||||
(if lib.versionAtLeast version "9.8"
|
(if lib.versionAtLeast version "9.8"
|
||||||
then ./docs-sphinx-7-ghc98.patch
|
then ./docs-sphinx-7-ghc98.patch
|
||||||
else ./docs-sphinx-7.patch )
|
else ./docs-sphinx-7.patch )
|
||||||
|
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
|
||||||
|
# Prevent the paths module from emitting symbols that we don't use
|
||||||
|
# when building with separate outputs.
|
||||||
|
#
|
||||||
|
# These cause problems as they're not eliminated by GHC's dead code
|
||||||
|
# elimination on aarch64-darwin. (see
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
|
||||||
|
./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
patchShebangs --build .
|
patchShebangs --build .
|
||||||
'';
|
'';
|
||||||
@ -507,6 +514,10 @@ stdenv.mkDerivation ({
|
|||||||
|
|
||||||
# Expose hadrian used for bootstrapping, for debugging purposes
|
# Expose hadrian used for bootstrapping, for debugging purposes
|
||||||
inherit hadrian;
|
inherit hadrian;
|
||||||
|
|
||||||
|
# TODO(@sternenseemann): there's no stage0:exe:haddock target by default,
|
||||||
|
# so haddock isn't available for GHC cross-compilers. Can we fix that?
|
||||||
|
hasHaddock = stdenv.hostPlatform == stdenv.targetPlatform;
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -192,5 +192,6 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
maintainers = teams.golang.members;
|
maintainers = teams.golang.members;
|
||||||
platforms = platforms.darwin ++ platforms.linux;
|
platforms = platforms.darwin ++ platforms.linux;
|
||||||
|
mainProgram = "go";
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
@ -184,5 +184,6 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
maintainers = teams.golang.members;
|
maintainers = teams.golang.members;
|
||||||
platforms = platforms.darwin ++ platforms.linux;
|
platforms = platforms.darwin ++ platforms.linux;
|
||||||
|
mainProgram = "go";
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
@ -184,5 +184,6 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
maintainers = teams.golang.members;
|
maintainers = teams.golang.members;
|
||||||
platforms = platforms.darwin ++ platforms.linux;
|
platforms = platforms.darwin ++ platforms.linux;
|
||||||
|
mainProgram = "go";
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
@ -46,6 +46,9 @@ self: super: {
|
|||||||
} // lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch64 {
|
} // lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch64 {
|
||||||
# AARCH64-SPECIFIC OVERRIDES
|
# AARCH64-SPECIFIC OVERRIDES
|
||||||
|
|
||||||
|
# Corrupted store path https://github.com/NixOS/nixpkgs/pull/272097#issuecomment-1848414265
|
||||||
|
cachix = triggerRebuild 1 super.cachix;
|
||||||
|
|
||||||
# Doctests fail on aarch64 due to a GHCi linking bug
|
# Doctests fail on aarch64 due to a GHCi linking bug
|
||||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/15275#note_295437
|
# https://gitlab.haskell.org/ghc/ghc/-/issues/15275#note_295437
|
||||||
# TODO: figure out if needed on aarch32 as well
|
# TODO: figure out if needed on aarch32 as well
|
||||||
|
@ -328,7 +328,7 @@ self: super: {
|
|||||||
name = "git-annex-${super.git-annex.version}-src";
|
name = "git-annex-${super.git-annex.version}-src";
|
||||||
url = "git://git-annex.branchable.com/";
|
url = "git://git-annex.branchable.com/";
|
||||||
rev = "refs/tags/" + super.git-annex.version;
|
rev = "refs/tags/" + super.git-annex.version;
|
||||||
sha256 = "14x7avdvf0fjqncwxydlrv32lbyfiqrm346nvypzg27gq46fvkcg";
|
sha256 = "sha256-DFdfRh4ST4hZl9AOsp0/Y4N+bT2Y1NoLdwi5sxVnCaw=";
|
||||||
# delete android and Android directories which cause issues on
|
# delete android and Android directories which cause issues on
|
||||||
# darwin (case insensitive directory). Since we don't need them
|
# darwin (case insensitive directory). Since we don't need them
|
||||||
# during the build process, we can delete it to prevent a hash
|
# during the build process, we can delete it to prevent a hash
|
||||||
@ -477,15 +477,17 @@ self: super: {
|
|||||||
matterhorn = doJailbreak super.matterhorn;
|
matterhorn = doJailbreak super.matterhorn;
|
||||||
|
|
||||||
# 2020-06-05: HACK: does not pass own build suite - `dontCheck`
|
# 2020-06-05: HACK: does not pass own build suite - `dontCheck`
|
||||||
# 2022-11-24: jailbreak as it has too strict bounds on a bunch of things
|
hnix = dontCheck (super.hnix.override {
|
||||||
# 2023-07-26: Cherry-pick GHC 9.4 changes from hnix master branch
|
# 2023-12-11: Needs older core due to remote
|
||||||
hnix = appendPatches [
|
hnix-store-core = self.hnix-store-core_0_6_1_0;
|
||||||
./patches/hnix-compat-for-ghc-9.4.patch
|
});
|
||||||
] (dontCheck (doJailbreak super.hnix));
|
|
||||||
|
|
||||||
# Too strict bounds on algebraic-graphs and bytestring
|
|
||||||
|
# Too strict bounds on algebraic-graphs
|
||||||
# https://github.com/haskell-nix/hnix-store/issues/180
|
# https://github.com/haskell-nix/hnix-store/issues/180
|
||||||
hnix-store-core = doJailbreak super.hnix-store-core;
|
hnix-store-core_0_6_1_0 = doJailbreak super.hnix-store-core_0_6_1_0;
|
||||||
|
# 2023-12-11: Needs older core
|
||||||
|
hnix-store-remote = super.hnix-store-remote.override { hnix-store-core = self.hnix-store-core_0_6_1_0; };
|
||||||
|
|
||||||
# Fails for non-obvious reasons while attempting to use doctest.
|
# Fails for non-obvious reasons while attempting to use doctest.
|
||||||
focuslist = dontCheck super.focuslist;
|
focuslist = dontCheck super.focuslist;
|
||||||
@ -883,6 +885,26 @@ self: super: {
|
|||||||
# 2022-03-19: Testsuite is failing: https://github.com/puffnfresh/haskell-jwt/issues/2
|
# 2022-03-19: Testsuite is failing: https://github.com/puffnfresh/haskell-jwt/issues/2
|
||||||
jwt = dontCheck super.jwt;
|
jwt = dontCheck super.jwt;
|
||||||
|
|
||||||
|
# Build Selda with the latest git version.
|
||||||
|
# See https://github.com/valderman/selda/issues/187
|
||||||
|
inherit (let
|
||||||
|
mkSeldaPackage = name: overrideCabal (drv: {
|
||||||
|
version = "2023-02-05-unstable";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "valderman";
|
||||||
|
repo = "selda";
|
||||||
|
rev = "ab9619db13b93867d1a244441bb4de03d3e1dadb";
|
||||||
|
hash = "sha256-P0nqAYzbeTyEEgzMij/3mKcs++/p/Wgc7Y6bDudXt2U=";
|
||||||
|
} + "/${name}";
|
||||||
|
}) super.${name};
|
||||||
|
in
|
||||||
|
lib.genAttrs [ "selda" "selda-sqlite" "selda-json" ] mkSeldaPackage
|
||||||
|
)
|
||||||
|
selda
|
||||||
|
selda-sqlite
|
||||||
|
selda-json
|
||||||
|
;
|
||||||
|
|
||||||
# Build the latest git version instead of the official release. This isn't
|
# Build the latest git version instead of the official release. This isn't
|
||||||
# ideal, but Chris doesn't seem to make official releases any more.
|
# ideal, but Chris doesn't seem to make official releases any more.
|
||||||
structured-haskell-mode = overrideCabal (drv: {
|
structured-haskell-mode = overrideCabal (drv: {
|
||||||
@ -1197,34 +1219,12 @@ self: super: {
|
|||||||
|
|
||||||
# Generate cli completions for dhall.
|
# Generate cli completions for dhall.
|
||||||
dhall = self.generateOptparseApplicativeCompletions [ "dhall" ] super.dhall;
|
dhall = self.generateOptparseApplicativeCompletions [ "dhall" ] super.dhall;
|
||||||
# For reasons that are not quire clear 'dhall-json' won't compile without 'tasty 1.4' due to its tests
|
dhall-json = self.generateOptparseApplicativeCompletions ["dhall-to-json" "dhall-to-yaml"] super.dhall-json;
|
||||||
# https://github.com/commercialhaskell/stackage/issues/5795
|
# 2023-12-19: jailbreaks due to hnix-0.17 https://github.com/dhall-lang/dhall-haskell/pull/2559
|
||||||
# This issue can be mitigated with 'dontCheck' which skips the tests and their compilation.
|
# until dhall-nix 1.1.26+, dhall-nixpkgs 1.0.10+
|
||||||
dhall-json = self.generateOptparseApplicativeCompletions ["dhall-to-json" "dhall-to-yaml"] (dontCheck super.dhall-json);
|
dhall-nix = self.generateOptparseApplicativeCompletions [ "dhall-to-nix" ] (doJailbreak super.dhall-nix);
|
||||||
dhall-nix = self.generateOptparseApplicativeCompletions [ "dhall-to-nix" ]
|
dhall-nixpkgs = self.generateOptparseApplicativeCompletions [ "dhall-to-nixpkgs" ] (doJailbreak super.dhall-nixpkgs);
|
||||||
(overrideCabal (drv: {
|
|
||||||
patches = [
|
|
||||||
# Compatibility with hnix 0.16, waiting for release
|
|
||||||
# https://github.com/dhall-lang/dhall-haskell/pull/2474
|
|
||||||
(pkgs.fetchpatch {
|
|
||||||
name = "dhall-nix-hnix-0.16.patch";
|
|
||||||
url = "https://github.com/dhall-lang/dhall-haskell/commit/49b9b3e3ce1718a89773c2b1bfa3c2af1a6e8752.patch";
|
|
||||||
sha256 = "12sh5md81nlhyzzkmf7jrll3w1rvg2j48m57hfyvjn8has9c4gw6";
|
|
||||||
stripLen = 1;
|
|
||||||
includes = [ "dhall-nix.cabal" "src/Dhall/Nix.hs" ];
|
|
||||||
})
|
|
||||||
] ++ drv.patches or [];
|
|
||||||
prePatch = drv.prePatch or "" + ''
|
|
||||||
${pkgs.buildPackages.dos2unix}/bin/dos2unix *.cabal
|
|
||||||
'';
|
|
||||||
}) super.dhall-nix);
|
|
||||||
dhall-yaml = self.generateOptparseApplicativeCompletions ["dhall-to-yaml-ng" "yaml-to-dhall"] super.dhall-yaml;
|
dhall-yaml = self.generateOptparseApplicativeCompletions ["dhall-to-yaml-ng" "yaml-to-dhall"] super.dhall-yaml;
|
||||||
dhall-nixpkgs = self.generateOptparseApplicativeCompletions [ "dhall-to-nixpkgs" ]
|
|
||||||
(overrideCabal (drv: {
|
|
||||||
# Allow hnix 0.16, needs unreleased bounds change
|
|
||||||
# https://github.com/dhall-lang/dhall-haskell/pull/2474
|
|
||||||
jailbreak = assert drv.version == "1.0.9" && drv.revision == "1"; true;
|
|
||||||
}) super.dhall-nixpkgs);
|
|
||||||
|
|
||||||
crypton-connection = super.crypton-connection.override {
|
crypton-connection = super.crypton-connection.override {
|
||||||
# requires tls >= 1.7
|
# requires tls >= 1.7
|
||||||
@ -1246,13 +1246,17 @@ self: super: {
|
|||||||
http-client-tls = hprev.http-client-tls_0_3_6_3; # needs http-client-tls >= 0.3.6.2
|
http-client-tls = hprev.http-client-tls_0_3_6_3; # needs http-client-tls >= 0.3.6.2
|
||||||
http-download = dontCheck hprev.http-download_0_2_1_0; # needs http-download >= 0.2.1.0, tests access network
|
http-download = dontCheck hprev.http-download_0_2_1_0; # needs http-download >= 0.2.1.0, tests access network
|
||||||
optparse-applicative = hprev.optparse-applicative_0_18_1_0; # needs optparse-applicative >= 0.18.1.0
|
optparse-applicative = hprev.optparse-applicative_0_18_1_0; # needs optparse-applicative >= 0.18.1.0
|
||||||
pantry = dontCheck hprev.pantry_0_9_2; # needs pantry >= 0.9.2, tests access network
|
pantry = dontCheck hprev.pantry_0_9_3; # needs pantry >= 0.9.2, tests access network
|
||||||
syb = dontCheck hprev.syb; # cyclic dependencies
|
syb = dontCheck hprev.syb; # cyclic dependencies
|
||||||
tar-conduit = hprev.tar-conduit_0_4_0; # pantry needs tar-conduit >= 0.4.0
|
tar-conduit = hprev.tar-conduit_0_4_0; # pantry needs tar-conduit >= 0.4.0
|
||||||
temporary = dontCheck hprev.temporary; # cyclic dependencies
|
temporary = dontCheck hprev.temporary; # cyclic dependencies
|
||||||
}))
|
}))
|
||||||
];
|
];
|
||||||
|
|
||||||
|
hopenpgp-tools = super.hopenpgp-tools.override {
|
||||||
|
optparse-applicative = self.optparse-applicative_0_18_1_0;
|
||||||
|
};
|
||||||
|
|
||||||
# musl fixes
|
# musl fixes
|
||||||
# dontCheck: use of non-standard strptime "%s" which musl doesn't support; only used in test
|
# dontCheck: use of non-standard strptime "%s" which musl doesn't support; only used in test
|
||||||
unix-time = if pkgs.stdenv.hostPlatform.isMusl then dontCheck super.unix-time else super.unix-time;
|
unix-time = if pkgs.stdenv.hostPlatform.isMusl then dontCheck super.unix-time else super.unix-time;
|
||||||
@ -1318,12 +1322,30 @@ self: super: {
|
|||||||
testToolDepends = (drv.testToolDepends or []) ++ [pkgs.postgresql];
|
testToolDepends = (drv.testToolDepends or []) ++ [pkgs.postgresql];
|
||||||
}) super.beam-postgres;
|
}) super.beam-postgres;
|
||||||
|
|
||||||
|
# PortMidi needs an environment variable to have ALSA find its plugins:
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/6860
|
||||||
|
PortMidi = overrideCabal (drv: {
|
||||||
|
patches = (drv.patches or []) ++ [ ./patches/portmidi-alsa-plugins.patch ];
|
||||||
|
postPatch = (drv.postPatch or "") + ''
|
||||||
|
substituteInPlace portmidi/pm_linux/pmlinuxalsa.c \
|
||||||
|
--replace @alsa_plugin_dir@ "${pkgs.alsa-plugins}/lib/alsa-lib"
|
||||||
|
'';
|
||||||
|
}) super.PortMidi;
|
||||||
|
|
||||||
# Fix for base >= 4.11
|
# Fix for base >= 4.11
|
||||||
scat = overrideCabal (drv: {
|
scat = overrideCabal (drv: {
|
||||||
patches = [(fetchpatch {
|
patches = [
|
||||||
url = "https://github.com/redelmann/scat/pull/6.diff";
|
# Fix build with base >= 4.11
|
||||||
sha256 = "07nj2p0kg05livhgp1hkkdph0j0a6lb216f8x348qjasy0lzbfhl";
|
(fetchpatch {
|
||||||
})];
|
url = "https://github.com/redelmann/scat/commit/429f22944b7634b8789cb3805292bcc2b23e3e9f.diff";
|
||||||
|
hash = "sha256-FLr1KfBaSYzI6MiZIBY1CkgAb5sThvvgjrSAN8EV0h4=";
|
||||||
|
})
|
||||||
|
# Fix build with vector >= 0.13
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/redelmann/scat/commit/e21cc9c17b5b605b5bc0aacad66d44bbe0beb8c4.diff";
|
||||||
|
hash = "sha256-MifHb2EKZx8skOcs+2t54CzxAS4PaEC0OTEfq4yVXzk=";
|
||||||
|
})
|
||||||
|
];
|
||||||
}) super.scat;
|
}) super.scat;
|
||||||
|
|
||||||
# Fix build with attr-2.4.48 (see #53716)
|
# Fix build with attr-2.4.48 (see #53716)
|
||||||
@ -1680,16 +1702,27 @@ self: super: {
|
|||||||
# - Patch can be removed on next package set bump (for v0.2.11)
|
# - Patch can be removed on next package set bump (for v0.2.11)
|
||||||
|
|
||||||
# 2023-06-26: Test failure: https://hydra.nixos.org/build/225081865
|
# 2023-06-26: Test failure: https://hydra.nixos.org/build/225081865
|
||||||
update-nix-fetchgit = dontCheck (let deps = [ pkgs.git pkgs.nix pkgs.nix-prefetch-git ];
|
update-nix-fetchgit = let
|
||||||
in self.generateOptparseApplicativeCompletions [ "update-nix-fetchgit" ] (overrideCabal
|
deps = [ pkgs.git pkgs.nix pkgs.nix-prefetch-git ];
|
||||||
(drv: {
|
in lib.pipe super.update-nix-fetchgit [
|
||||||
buildTools = drv.buildTools or [ ] ++ [ pkgs.buildPackages.makeWrapper ];
|
dontCheck
|
||||||
postInstall = drv.postInstall or "" + ''
|
(self.generateOptparseApplicativeCompletions [ "update-nix-fetchgit" ])
|
||||||
wrapProgram "$out/bin/update-nix-fetchgit" --prefix 'PATH' ':' "${
|
(overrideCabal (drv: {
|
||||||
lib.makeBinPath deps
|
buildTools = drv.buildTools or [ ] ++ [ pkgs.buildPackages.makeWrapper ];
|
||||||
}"
|
postInstall = drv.postInstall or "" + ''
|
||||||
'';
|
wrapProgram "$out/bin/update-nix-fetchgit" --prefix 'PATH' ':' "${
|
||||||
}) (addTestToolDepends deps super.update-nix-fetchgit)));
|
lib.makeBinPath deps
|
||||||
|
}"
|
||||||
|
'';
|
||||||
|
}))
|
||||||
|
(addTestToolDepends deps)
|
||||||
|
# Patch for hnix compat.
|
||||||
|
(appendPatch (fetchpatch {
|
||||||
|
url = "https://github.com/expipiplus1/update-nix-fetchgit/commit/dfa34f9823e282aa8c5a1b8bc95ad8def0e8d455.patch";
|
||||||
|
sha256 = "sha256-yBjn1gVihVTlLewKgJc2I9gEj8ViNBAmw0bcsb5rh1A=";
|
||||||
|
excludes = [ "cabal.project" ];
|
||||||
|
}))
|
||||||
|
];
|
||||||
|
|
||||||
# Raise version bounds: https://github.com/idontgetoutmuch/binary-low-level/pull/16
|
# Raise version bounds: https://github.com/idontgetoutmuch/binary-low-level/pull/16
|
||||||
binary-strict = appendPatches [
|
binary-strict = appendPatches [
|
||||||
@ -1912,8 +1945,8 @@ self: super: {
|
|||||||
http-client-tls = self.http-client-tls_0_3_6_3;
|
http-client-tls = self.http-client-tls_0_3_6_3;
|
||||||
|
|
||||||
# pandoc depends on skylighting >= 0.14
|
# pandoc depends on skylighting >= 0.14
|
||||||
skylighting = self.skylighting_0_14;
|
skylighting = self.skylighting_0_14_1;
|
||||||
skylighting-core = self.skylighting-core_0_14;
|
skylighting-core = self.skylighting-core_0_14_1;
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
pandoc-cli = super.pandoc-cli.overrideScope pandoc-cli-overlay;
|
pandoc-cli = super.pandoc-cli.overrideScope pandoc-cli-overlay;
|
||||||
@ -2176,6 +2209,22 @@ self: super: {
|
|||||||
gi-gtk-declarative = doJailbreak super.gi-gtk-declarative;
|
gi-gtk-declarative = doJailbreak super.gi-gtk-declarative;
|
||||||
gi-gtk-declarative-app-simple = doJailbreak super.gi-gtk-declarative-app-simple;
|
gi-gtk-declarative-app-simple = doJailbreak super.gi-gtk-declarative-app-simple;
|
||||||
|
|
||||||
|
# Missing dependency on gi-cairo
|
||||||
|
# https://github.com/haskell-gi/haskell-gi/pull/420
|
||||||
|
gi-vte =
|
||||||
|
overrideCabal
|
||||||
|
(oldAttrs: {
|
||||||
|
# This is implemented as a sed expression instead of pulling a patch
|
||||||
|
# from upstream because the gi-vte repo doesn't actually contain a
|
||||||
|
# gi-vte.cabal file. The gi-vte.cabal file is generated from metadata
|
||||||
|
# in the repo.
|
||||||
|
postPatch = (oldAttrs.postPatch or "") + ''
|
||||||
|
sed -i 's/\(gi-gtk == .*\),/\1, gi-cairo == 1.0.*,/' ./gi-vte.cabal
|
||||||
|
'';
|
||||||
|
buildDepends = (oldAttrs.buildDepends or []) ++ [self.gi-cairo];
|
||||||
|
})
|
||||||
|
super.gi-vte;
|
||||||
|
|
||||||
# 2023-04-09: haskell-ci needs Cabal-syntax 3.10
|
# 2023-04-09: haskell-ci needs Cabal-syntax 3.10
|
||||||
# 2023-07-03: allow lattices-2.2, waiting on https://github.com/haskell-CI/haskell-ci/pull/664
|
# 2023-07-03: allow lattices-2.2, waiting on https://github.com/haskell-CI/haskell-ci/pull/664
|
||||||
haskell-ci = doJailbreak (super.haskell-ci.overrideScope (self: super: {
|
haskell-ci = doJailbreak (super.haskell-ci.overrideScope (self: super: {
|
||||||
@ -2665,19 +2714,24 @@ self: super: {
|
|||||||
co-log-polysemy = doJailbreak super.co-log-polysemy;
|
co-log-polysemy = doJailbreak super.co-log-polysemy;
|
||||||
co-log-polysemy-formatting = doJailbreak super.co-log-polysemy-formatting;
|
co-log-polysemy-formatting = doJailbreak super.co-log-polysemy-formatting;
|
||||||
|
|
||||||
# 2022-12-02: Needs newer postgrest package
|
# 2023-12-20: Needs newer hasql-pool package and extra dependencies
|
||||||
# 2022-12-02: Hackage release lags behind actual releases: https://github.com/PostgREST/postgrest/issues/2275
|
postgrest = lib.pipe (super.postgrest.overrideScope (lself: lsuper: {
|
||||||
# 2022-12-02: Too strict bounds: https://github.com/PostgREST/postgrest/issues/2580
|
hasql-pool = lself.hasql-pool_0_10;
|
||||||
# 2022-12-02: Tests require running postresql server
|
})) [
|
||||||
postgrest = dontCheck (doJailbreak (overrideSrc rec {
|
(addBuildDepends [ self.extra self.fuzzyset_0_2_4 self.cache self.timeit ])
|
||||||
version = "10.1.1";
|
# 2022-12-02: Too strict bounds: https://github.com/PostgREST/postgrest/issues/2580
|
||||||
src = pkgs.fetchFromGitHub {
|
doJailbreak
|
||||||
owner = "PostgREST";
|
# 2022-12-02: Hackage release lags behind actual releases: https://github.com/PostgREST/postgrest/issues/2275
|
||||||
repo = "postgrest";
|
(overrideSrc rec {
|
||||||
rev = "v${version}";
|
version = "12.0.2";
|
||||||
sha256 = "sha256-ceSPBH+lzGU1OwjolcaE1BCpkKCJrvMU5G8TPeaJesM=";
|
src = pkgs.fetchFromGitHub {
|
||||||
};
|
owner = "PostgREST";
|
||||||
} super.postgrest));
|
repo = "postgrest";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-fpGeL8R6hziEtIgHUMfWLF7JAjo3FDYQw3xPSeQH+to=";
|
||||||
|
};
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
html-charset = dontCheck super.html-charset;
|
html-charset = dontCheck super.html-charset;
|
||||||
|
|
||||||
@ -2757,10 +2811,10 @@ self: super: {
|
|||||||
# Both of these need specific versions of ghc-lib-parser, the minor releases
|
# Both of these need specific versions of ghc-lib-parser, the minor releases
|
||||||
# seem to be tied.
|
# seem to be tied.
|
||||||
ghc-syntax-highlighter_0_0_10_0 = super.ghc-syntax-highlighter_0_0_10_0.overrideScope(self: super: {
|
ghc-syntax-highlighter_0_0_10_0 = super.ghc-syntax-highlighter_0_0_10_0.overrideScope(self: super: {
|
||||||
ghc-lib-parser = self.ghc-lib-parser_9_6_3_20231014;
|
ghc-lib-parser = self.ghc-lib-parser_9_6_3_20231121;
|
||||||
});
|
});
|
||||||
ghc-syntax-highlighter_0_0_11_0 = super.ghc-syntax-highlighter_0_0_11_0.overrideScope(self: super: {
|
ghc-syntax-highlighter_0_0_11_0 = super.ghc-syntax-highlighter_0_0_11_0.overrideScope(self: super: {
|
||||||
ghc-lib-parser = self.ghc-lib-parser_9_8_1_20231009;
|
ghc-lib-parser = self.ghc-lib-parser_9_8_1_20231121;
|
||||||
});
|
});
|
||||||
|
|
||||||
# Needs a matching version of ipython-kernel and a
|
# Needs a matching version of ipython-kernel and a
|
||||||
@ -2771,4 +2825,8 @@ self: super: {
|
|||||||
ghc-syntax-highlighter = self.ghc-syntax-highlighter_0_0_10_0;
|
ghc-syntax-highlighter = self.ghc-syntax-highlighter_0_0_10_0;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
# 2024-01-01: Too strict bounds on megaparsec
|
||||||
|
# Fixed in 0.2.8: https://github.com/PostgREST/configurator-pg/pull/20
|
||||||
|
configurator-pg = doJailbreak super.configurator-pg;
|
||||||
|
|
||||||
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
|
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
|
||||||
|
@ -39,14 +39,14 @@ self: super: {
|
|||||||
stm = null;
|
stm = 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
|
||||||
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_6;
|
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else doDistribute self.terminfo_0_4_1_6;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
unix = null;
|
unix = null;
|
||||||
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
||||||
# 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 self.xhtml_3000_3_0_0;
|
xhtml = if self.ghc.hasHaddock or true then null else doDistribute self.xhtml_3000_3_0_0;
|
||||||
|
|
||||||
# Need the Cabal-syntax-3.6.0.0 fake package for Cabal < 3.8 to allow callPackage and the constraint solver to work
|
# Need the Cabal-syntax-3.6.0.0 fake package for Cabal < 3.8 to allow callPackage and the constraint solver to work
|
||||||
Cabal-syntax = self.Cabal-syntax_3_6_0_0;
|
Cabal-syntax = self.Cabal-syntax_3_6_0_0;
|
||||||
@ -105,14 +105,9 @@ self: super: {
|
|||||||
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_2_1_1;
|
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_2_1_1;
|
||||||
ghc-lib = doDistribute self.ghc-lib_9_2_8_20230729;
|
ghc-lib = doDistribute self.ghc-lib_9_2_8_20230729;
|
||||||
|
|
||||||
mod = super.mod_0_1_2_2;
|
|
||||||
path-io = doJailbreak super.path-io;
|
path-io = doJailbreak super.path-io;
|
||||||
|
|
||||||
|
|
||||||
ormolu = self.ormolu_0_5_0_1;
|
|
||||||
fourmolu = dontCheck self.fourmolu_0_9_0_0;
|
|
||||||
hlint = self.hlint_3_4_1;
|
hlint = self.hlint_3_4_1;
|
||||||
stylish-haskell = doJailbreak self.stylish-haskell_0_14_3_0;
|
|
||||||
|
|
||||||
mime-string = disableOptimization super.mime-string;
|
mime-string = disableOptimization super.mime-string;
|
||||||
|
|
||||||
@ -175,4 +170,7 @@ self: super: {
|
|||||||
|
|
||||||
# Requires GHC < 9.4
|
# Requires GHC < 9.4
|
||||||
ghc-source-gen = doDistribute (unmarkBroken super.ghc-source-gen);
|
ghc-source-gen = doDistribute (unmarkBroken super.ghc-source-gen);
|
||||||
|
|
||||||
|
# No instance for (Show B.Builder) arising from a use of ‘print’
|
||||||
|
http-types = dontCheck super.http-types;
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,8 @@ in
|
|||||||
|
|
||||||
self: super: {
|
self: super: {
|
||||||
|
|
||||||
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
|
# Should be llvmPackages_6 which has been removed from nixpkgs
|
||||||
|
llvmPackages = null;
|
||||||
|
|
||||||
# Disable GHC 8.6.x core libraries.
|
# Disable GHC 8.6.x core libraries.
|
||||||
array = null;
|
array = null;
|
||||||
@ -38,17 +39,20 @@ self: super: {
|
|||||||
stm = null;
|
stm = 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
|
||||||
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_6;
|
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else doDistribute self.terminfo_0_4_1_6;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
unix = null;
|
unix = null;
|
||||||
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
||||||
# 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 self.xhtml_3000_3_0_0;
|
xhtml = if self.ghc.hasHaddock or true then null else doDistribute self.xhtml_3000_3_0_0;
|
||||||
|
|
||||||
# Need the Cabal-syntax-3.6.0.0 fake package for Cabal < 3.8 to allow callPackage and the constraint solver to work
|
# Need the Cabal-syntax-3.6.0.0 fake package for Cabal < 3.8 to allow callPackage and the constraint solver to work
|
||||||
Cabal-syntax = self.Cabal-syntax_3_6_0_0;
|
Cabal-syntax = self.Cabal-syntax_3_6_0_0;
|
||||||
|
# These core package only exist for GHC >= 9.4. The best we can do is feign
|
||||||
|
# their existence to callPackages, but their is no shim for lower GHC versions.
|
||||||
|
system-cxx-std-lib = null;
|
||||||
|
|
||||||
# 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; });
|
||||||
@ -91,7 +95,7 @@ self: super: {
|
|||||||
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;
|
||||||
|
|
||||||
# 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 = super.exceptions_0_10_4;
|
exceptions = null;
|
||||||
|
|
||||||
# Older compilers need the latest ghc-lib to build this package.
|
# Older compilers need the latest ghc-lib to build this package.
|
||||||
hls-hlint-plugin = addBuildDepend self.ghc-lib super.hls-hlint-plugin;
|
hls-hlint-plugin = addBuildDepend self.ghc-lib super.hls-hlint-plugin;
|
||||||
|
@ -40,14 +40,14 @@ self: super: {
|
|||||||
stm = null;
|
stm = 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
|
||||||
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_6;
|
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else doDistribute self.terminfo_0_4_1_6;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
unix = null;
|
unix = null;
|
||||||
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
||||||
# 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 self.xhtml_3000_3_0_0;
|
xhtml = if self.ghc.hasHaddock or true then null else doDistribute self.xhtml_3000_3_0_0;
|
||||||
|
|
||||||
# Need the Cabal-syntax-3.6.0.0 fake package for Cabal < 3.8 to allow callPackage and the constraint solver to work
|
# Need the Cabal-syntax-3.6.0.0 fake package for Cabal < 3.8 to allow callPackage and the constraint solver to work
|
||||||
Cabal-syntax = self.Cabal-syntax_3_6_0_0;
|
Cabal-syntax = self.Cabal-syntax_3_6_0_0;
|
||||||
@ -173,4 +173,7 @@ self: super: {
|
|||||||
ghc-source-gen = doDistribute (unmarkBroken super.ghc-source-gen);
|
ghc-source-gen = doDistribute (unmarkBroken super.ghc-source-gen);
|
||||||
|
|
||||||
hspec-megaparsec = super.hspec-megaparsec_2_2_0;
|
hspec-megaparsec = super.hspec-megaparsec_2_2_0;
|
||||||
|
|
||||||
|
# No instance for (Show B.Builder) arising from a use of ‘print’
|
||||||
|
http-types = dontCheck super.http-types;
|
||||||
}
|
}
|
||||||
|
@ -43,7 +43,7 @@ self: super: {
|
|||||||
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
|
||||||
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_6;
|
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else haskellLib.doDistribute self.terminfo_0_4_1_6;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
@ -40,14 +40,14 @@ self: super: {
|
|||||||
stm = null;
|
stm = 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
|
||||||
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_6;
|
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else doDistribute self.terminfo_0_4_1_6;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
unix = null;
|
unix = null;
|
||||||
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
||||||
# 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 self.xhtml_3000_3_0_0;
|
xhtml = if self.ghc.hasHaddock or true then null else doDistribute self.xhtml_3000_3_0_0;
|
||||||
|
|
||||||
# Need the Cabal-syntax-3.6.0.0 fake package for Cabal < 3.8 to allow callPackage and the constraint solver to work
|
# Need the Cabal-syntax-3.6.0.0 fake package for Cabal < 3.8 to allow callPackage and the constraint solver to work
|
||||||
Cabal-syntax = self.Cabal-syntax_3_6_0_0;
|
Cabal-syntax = self.Cabal-syntax_3_6_0_0;
|
||||||
|
@ -46,14 +46,14 @@ in {
|
|||||||
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
|
||||||
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_6;
|
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else doDistribute self.terminfo_0_4_1_6;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
unix = null;
|
unix = null;
|
||||||
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
# GHC only bundles the xhtml library if haddock is enabled, check if this is
|
||||||
# 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 self.xhtml_3000_3_0_0;
|
xhtml = if self.ghc.hasHaddock or true then null else doDistribute self.xhtml_3000_3_0_0;
|
||||||
|
|
||||||
# Jailbreaks & Version Updates
|
# Jailbreaks & Version Updates
|
||||||
|
|
||||||
@ -115,7 +115,7 @@ in {
|
|||||||
(
|
(
|
||||||
let
|
let
|
||||||
hls_overlay = lself: lsuper: {
|
hls_overlay = lself: lsuper: {
|
||||||
ghc-lib-parser = lself.ghc-lib-parser_9_6_3_20231014;
|
ghc-lib-parser = lself.ghc-lib-parser_9_6_3_20231121;
|
||||||
ghc-lib-parser-ex = doDistribute lself.ghc-lib-parser-ex_9_6_0_2;
|
ghc-lib-parser-ex = doDistribute lself.ghc-lib-parser-ex_9_6_0_2;
|
||||||
Cabal-syntax = lself.Cabal-syntax_3_10_2_0;
|
Cabal-syntax = lself.Cabal-syntax_3_10_2_0;
|
||||||
};
|
};
|
||||||
|
@ -54,7 +54,7 @@ self: super: {
|
|||||||
system-cxx-std-lib = null;
|
system-cxx-std-lib = null;
|
||||||
template-haskell = null;
|
template-haskell = null;
|
||||||
# terminfo is not built if GHC is a cross compiler
|
# terminfo is not built if GHC is a cross compiler
|
||||||
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_5;
|
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else doDistribute self.terminfo_0_4_1_6;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
@ -91,8 +91,8 @@ self: super: {
|
|||||||
# https://github.com/mokus0/th-extras/pull/21
|
# https://github.com/mokus0/th-extras/pull/21
|
||||||
th-extras = doJailbreak super.th-extras;
|
th-extras = doJailbreak super.th-extras;
|
||||||
|
|
||||||
ghc-lib = doDistribute self.ghc-lib_9_6_3_20231014;
|
ghc-lib = doDistribute self.ghc-lib_9_6_3_20231121;
|
||||||
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_6_3_20231014;
|
ghc-lib-parser = doDistribute self.ghc-lib-parser_9_6_3_20231121;
|
||||||
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_6_0_2;
|
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_6_0_2;
|
||||||
|
|
||||||
# Tests fail due to the newly-build fourmolu not being in PATH
|
# Tests fail due to the newly-build fourmolu not being in PATH
|
||||||
@ -265,9 +265,6 @@ self: super: {
|
|||||||
})];
|
})];
|
||||||
}) super.ConfigFile;
|
}) super.ConfigFile;
|
||||||
|
|
||||||
# The curl executable is required for withApplication tests.
|
|
||||||
warp_3_3_30 = addTestToolDepend pkgs.curl super.warp_3_3_30;
|
|
||||||
|
|
||||||
# The NCG backend for aarch64 generates invalid jumps in some situations,
|
# The NCG backend for aarch64 generates invalid jumps in some situations,
|
||||||
# the workaround on 9.6 is to revert to the LLVM backend (which is used
|
# the workaround on 9.6 is to revert to the LLVM backend (which is used
|
||||||
# for these sorts of situations even on 9.2 and 9.4).
|
# for these sorts of situations even on 9.2 and 9.4).
|
||||||
|
@ -39,9 +39,10 @@ self: super: {
|
|||||||
process = null;
|
process = null;
|
||||||
rts = null;
|
rts = null;
|
||||||
stm = null;
|
stm = 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
|
||||||
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_6;
|
terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else doDistribute self.terminfo_0_4_1_6;
|
||||||
text = null;
|
text = null;
|
||||||
time = null;
|
time = null;
|
||||||
transformers = null;
|
transformers = null;
|
||||||
|
@ -613,6 +613,7 @@ broken-packages:
|
|||||||
- cacophony # failure in job https://hydra.nixos.org/build/233239380 at 2023-09-02
|
- cacophony # failure in job https://hydra.nixos.org/build/233239380 at 2023-09-02
|
||||||
- cafeteria-prelude # failure in job https://hydra.nixos.org/build/233254881 at 2023-09-02
|
- cafeteria-prelude # failure in job https://hydra.nixos.org/build/233254881 at 2023-09-02
|
||||||
- cairo-core # failure in job https://hydra.nixos.org/build/233248151 at 2023-09-02
|
- cairo-core # failure in job https://hydra.nixos.org/build/233248151 at 2023-09-02
|
||||||
|
- cairo-image # failure in job https://hydra.nixos.org/build/243813080 at 2024-01-01
|
||||||
- cake3 # failure in job https://hydra.nixos.org/build/233231662 at 2023-09-02
|
- cake3 # failure in job https://hydra.nixos.org/build/233231662 at 2023-09-02
|
||||||
- cal3d # failure in job https://hydra.nixos.org/build/233200357 at 2023-09-02
|
- cal3d # failure in job https://hydra.nixos.org/build/233200357 at 2023-09-02
|
||||||
- calamity # failure in updateAutotoolsGnuConfigScriptsPhase in job https://hydra.nixos.org/build/238601583 at 2023-10-21
|
- calamity # failure in updateAutotoolsGnuConfigScriptsPhase in job https://hydra.nixos.org/build/238601583 at 2023-10-21
|
||||||
@ -829,10 +830,11 @@ broken-packages:
|
|||||||
- commodities # failure in job https://hydra.nixos.org/build/233239851 at 2023-09-02
|
- commodities # failure in job https://hydra.nixos.org/build/233239851 at 2023-09-02
|
||||||
- Compactable # failure in job https://hydra.nixos.org/build/233227285 at 2023-09-02
|
- Compactable # failure in job https://hydra.nixos.org/build/233227285 at 2023-09-02
|
||||||
- compactable # failure in job https://hydra.nixos.org/build/233228106 at 2023-09-02
|
- compactable # failure in job https://hydra.nixos.org/build/233228106 at 2023-09-02
|
||||||
- compact # failure in job https://hydra.nixos.org/build/233203421 at 2023-09-02
|
|
||||||
- compact-list # failure in job https://hydra.nixos.org/build/233241961 at 2023-09-02
|
- compact-list # failure in job https://hydra.nixos.org/build/233241961 at 2023-09-02
|
||||||
- compact-map # failure in job https://hydra.nixos.org/build/233201665 at 2023-09-02
|
- compact-map # failure in job https://hydra.nixos.org/build/233201665 at 2023-09-02
|
||||||
|
- compact-mutable-vector # failure in job https://hydra.nixos.org/build/245539335 at 2024-01-02
|
||||||
- compact-sequences # failure in job https://hydra.nixos.org/build/233208553 at 2023-09-02
|
- compact-sequences # failure in job https://hydra.nixos.org/build/233208553 at 2023-09-02
|
||||||
|
- compact-socket # failure in job https://hydra.nixos.org/build/245539349 at 2024-01-02
|
||||||
- compact-string # failure in job https://hydra.nixos.org/build/233204162 at 2023-09-02
|
- compact-string # failure in job https://hydra.nixos.org/build/233204162 at 2023-09-02
|
||||||
- compact-string-fix # failure in job https://hydra.nixos.org/build/233238513 at 2023-09-02
|
- compact-string-fix # failure in job https://hydra.nixos.org/build/233238513 at 2023-09-02
|
||||||
- comparse # failure in job https://hydra.nixos.org/build/233220012 at 2023-09-02
|
- comparse # failure in job https://hydra.nixos.org/build/233220012 at 2023-09-02
|
||||||
@ -847,6 +849,7 @@ broken-packages:
|
|||||||
- composite-aeson-path # failure in job https://hydra.nixos.org/build/233203114 at 2023-09-02
|
- composite-aeson-path # failure in job https://hydra.nixos.org/build/233203114 at 2023-09-02
|
||||||
- composite-aeson-refined # failure in job https://hydra.nixos.org/build/233241450 at 2023-09-02
|
- composite-aeson-refined # failure in job https://hydra.nixos.org/build/233241450 at 2023-09-02
|
||||||
- composite-cassava # failure in job https://hydra.nixos.org/build/233241110 at 2023-09-02
|
- composite-cassava # failure in job https://hydra.nixos.org/build/233241110 at 2023-09-02
|
||||||
|
- composite-dhall # failure in job https://hydra.nixos.org/build/244399630 at 2024-01-01
|
||||||
- composite-ekg # failure in job https://hydra.nixos.org/build/233235858 at 2023-09-02
|
- composite-ekg # failure in job https://hydra.nixos.org/build/233235858 at 2023-09-02
|
||||||
- composite-opaleye # failure in job https://hydra.nixos.org/build/233256318 at 2023-09-02
|
- composite-opaleye # failure in job https://hydra.nixos.org/build/233256318 at 2023-09-02
|
||||||
- composite-swagger # failure in job https://hydra.nixos.org/build/233258006 at 2023-09-02
|
- composite-swagger # failure in job https://hydra.nixos.org/build/233258006 at 2023-09-02
|
||||||
@ -888,7 +891,6 @@ broken-packages:
|
|||||||
- config-parser # failure in job https://hydra.nixos.org/build/233206136 at 2023-09-02
|
- config-parser # failure in job https://hydra.nixos.org/build/233206136 at 2023-09-02
|
||||||
- Configurable # failure in job https://hydra.nixos.org/build/233200781 at 2023-09-02
|
- Configurable # failure in job https://hydra.nixos.org/build/233200781 at 2023-09-02
|
||||||
- configuration # failure in job https://hydra.nixos.org/build/233195399 at 2023-09-02
|
- configuration # failure in job https://hydra.nixos.org/build/233195399 at 2023-09-02
|
||||||
- configurator-pg # failure in job https://hydra.nixos.org/build/233219556 at 2023-09-02
|
|
||||||
- config-value-getopt # failure in job https://hydra.nixos.org/build/233204566 at 2023-09-02
|
- config-value-getopt # failure in job https://hydra.nixos.org/build/233204566 at 2023-09-02
|
||||||
- confsolve # failure in job https://hydra.nixos.org/build/233194913 at 2023-09-02
|
- confsolve # failure in job https://hydra.nixos.org/build/233194913 at 2023-09-02
|
||||||
- congruence-relation # failure in job https://hydra.nixos.org/build/233222125 at 2023-09-02
|
- congruence-relation # failure in job https://hydra.nixos.org/build/233222125 at 2023-09-02
|
||||||
@ -945,6 +947,7 @@ broken-packages:
|
|||||||
- CoreErlang # failure in job https://hydra.nixos.org/build/233199110 at 2023-09-02
|
- CoreErlang # failure in job https://hydra.nixos.org/build/233199110 at 2023-09-02
|
||||||
- core # failure in job https://hydra.nixos.org/build/233253971 at 2023-09-02
|
- core # failure in job https://hydra.nixos.org/build/233253971 at 2023-09-02
|
||||||
- core-haskell # failure in job https://hydra.nixos.org/build/233222588 at 2023-09-02
|
- core-haskell # failure in job https://hydra.nixos.org/build/233222588 at 2023-09-02
|
||||||
|
- corenlp-types # failure in job https://hydra.nixos.org/build/243808366 at 2024-01-01
|
||||||
- core-warn # failure in job https://hydra.nixos.org/build/233204404 at 2023-09-02
|
- core-warn # failure in job https://hydra.nixos.org/build/233204404 at 2023-09-02
|
||||||
- Coroutine # failure in job https://hydra.nixos.org/build/233211213 at 2023-09-02
|
- Coroutine # failure in job https://hydra.nixos.org/build/233211213 at 2023-09-02
|
||||||
- coroutine-object # failure in job https://hydra.nixos.org/build/233220413 at 2023-09-02
|
- coroutine-object # failure in job https://hydra.nixos.org/build/233220413 at 2023-09-02
|
||||||
@ -1187,6 +1190,7 @@ broken-packages:
|
|||||||
- dhall-fly # failure in job https://hydra.nixos.org/build/233220306 at 2023-09-02
|
- dhall-fly # failure in job https://hydra.nixos.org/build/233220306 at 2023-09-02
|
||||||
- dhall-recursive-adt # failure in job https://hydra.nixos.org/build/233210665 at 2023-09-02
|
- dhall-recursive-adt # failure in job https://hydra.nixos.org/build/233210665 at 2023-09-02
|
||||||
- dhall-text # failure in job https://hydra.nixos.org/build/233253809 at 2023-09-02
|
- dhall-text # failure in job https://hydra.nixos.org/build/233253809 at 2023-09-02
|
||||||
|
- dhall-text-shell # failure in job https://hydra.nixos.org/build/244399613 at 2024-01-01
|
||||||
- dhall-to-cabal # failure in job https://hydra.nixos.org/build/233193270 at 2023-09-02
|
- dhall-to-cabal # failure in job https://hydra.nixos.org/build/233193270 at 2023-09-02
|
||||||
- dhcp-lease-parser # failure in job https://hydra.nixos.org/build/233229124 at 2023-09-02
|
- dhcp-lease-parser # failure in job https://hydra.nixos.org/build/233229124 at 2023-09-02
|
||||||
- dhrun # failure in job https://hydra.nixos.org/build/233227529 at 2023-09-02
|
- dhrun # failure in job https://hydra.nixos.org/build/233227529 at 2023-09-02
|
||||||
@ -1746,7 +1750,6 @@ broken-packages:
|
|||||||
- future # failure in job https://hydra.nixos.org/build/233224844 at 2023-09-02
|
- future # failure in job https://hydra.nixos.org/build/233224844 at 2023-09-02
|
||||||
- futures # failure in job https://hydra.nixos.org/build/233230206 at 2023-09-02
|
- futures # failure in job https://hydra.nixos.org/build/233230206 at 2023-09-02
|
||||||
- fuzzyfind # failure in job https://hydra.nixos.org/build/233206269 at 2023-09-02
|
- fuzzyfind # failure in job https://hydra.nixos.org/build/233206269 at 2023-09-02
|
||||||
- fuzzyset # failure in job https://hydra.nixos.org/build/233231726 at 2023-09-02
|
|
||||||
- fuzzy-timings # failure in job https://hydra.nixos.org/build/233235765 at 2023-09-02
|
- fuzzy-timings # failure in job https://hydra.nixos.org/build/233235765 at 2023-09-02
|
||||||
- fvars # failure in job https://hydra.nixos.org/build/234461649 at 2023-09-13
|
- fvars # failure in job https://hydra.nixos.org/build/234461649 at 2023-09-13
|
||||||
- fwgl # failure in job https://hydra.nixos.org/build/233246210 at 2023-09-02
|
- fwgl # failure in job https://hydra.nixos.org/build/233246210 at 2023-09-02
|
||||||
@ -2496,7 +2499,6 @@ broken-packages:
|
|||||||
- hopencc # failure in job https://hydra.nixos.org/build/233192954 at 2023-09-02
|
- hopencc # failure in job https://hydra.nixos.org/build/233192954 at 2023-09-02
|
||||||
- hopencl # failure in job https://hydra.nixos.org/build/233249443 at 2023-09-02
|
- hopencl # failure in job https://hydra.nixos.org/build/233249443 at 2023-09-02
|
||||||
- HOpenCV # failure in job https://hydra.nixos.org/build/233255422 at 2023-09-02
|
- HOpenCV # failure in job https://hydra.nixos.org/build/233255422 at 2023-09-02
|
||||||
- hopenpgp-tools # failure in job https://hydra.nixos.org/build/233259304 at 2023-09-02
|
|
||||||
- hopfield # failure in job https://hydra.nixos.org/build/233598214 at 2023-09-02
|
- hopfield # failure in job https://hydra.nixos.org/build/233598214 at 2023-09-02
|
||||||
- hoppy-generator # failure in job https://hydra.nixos.org/build/233240608 at 2023-09-02
|
- hoppy-generator # failure in job https://hydra.nixos.org/build/233240608 at 2023-09-02
|
||||||
- hops # failure in job https://hydra.nixos.org/build/233207172 at 2023-09-02
|
- hops # failure in job https://hydra.nixos.org/build/233207172 at 2023-09-02
|
||||||
@ -2504,6 +2506,7 @@ broken-packages:
|
|||||||
- ho-rewriting # failure in job https://hydra.nixos.org/build/233253726 at 2023-09-02
|
- ho-rewriting # failure in job https://hydra.nixos.org/build/233253726 at 2023-09-02
|
||||||
- horizon # failure in job https://hydra.nixos.org/build/233215473 at 2023-09-02
|
- horizon # failure in job https://hydra.nixos.org/build/233215473 at 2023-09-02
|
||||||
- horizon-gen-nix # failure in job https://hydra.nixos.org/build/233663130 at 2023-09-02
|
- horizon-gen-nix # failure in job https://hydra.nixos.org/build/233663130 at 2023-09-02
|
||||||
|
- horizon-spec # failure in job https://hydra.nixos.org/build/244399500 at 2024-01-01
|
||||||
- horizon-spec-lens # failure in job https://hydra.nixos.org/build/233221337 at 2023-09-02
|
- horizon-spec-lens # failure in job https://hydra.nixos.org/build/233221337 at 2023-09-02
|
||||||
- horizon-spec-pretty # failure in job https://hydra.nixos.org/build/233227612 at 2023-09-02
|
- horizon-spec-pretty # failure in job https://hydra.nixos.org/build/233227612 at 2023-09-02
|
||||||
- horname # failure in job https://hydra.nixos.org/build/233198123 at 2023-09-02
|
- horname # failure in job https://hydra.nixos.org/build/233198123 at 2023-09-02
|
||||||
@ -3207,6 +3210,7 @@ broken-packages:
|
|||||||
- libpq # failure in job https://hydra.nixos.org/build/233192542 at 2023-09-02
|
- libpq # failure in job https://hydra.nixos.org/build/233192542 at 2023-09-02
|
||||||
- librandomorg # failure in job https://hydra.nixos.org/build/233232749 at 2023-09-02
|
- librandomorg # failure in job https://hydra.nixos.org/build/233232749 at 2023-09-02
|
||||||
- libsecp256k1 # failure in job https://hydra.nixos.org/build/234441559 at 2023-09-13
|
- libsecp256k1 # failure in job https://hydra.nixos.org/build/234441559 at 2023-09-13
|
||||||
|
- libsodium # failure in job https://hydra.nixos.org/build/243816565 at 2024-01-01
|
||||||
- libsystemd-daemon # failure in job https://hydra.nixos.org/build/233207090 at 2023-09-02
|
- libsystemd-daemon # failure in job https://hydra.nixos.org/build/233207090 at 2023-09-02
|
||||||
- libtagc # failure in job https://hydra.nixos.org/build/233223631 at 2023-09-02
|
- libtagc # failure in job https://hydra.nixos.org/build/233223631 at 2023-09-02
|
||||||
- libtelnet # failure in job https://hydra.nixos.org/build/233209594 at 2023-09-02
|
- libtelnet # failure in job https://hydra.nixos.org/build/233209594 at 2023-09-02
|
||||||
@ -3708,6 +3712,7 @@ broken-packages:
|
|||||||
- nats-client # failure in job https://hydra.nixos.org/build/233241313 at 2023-09-02
|
- nats-client # failure in job https://hydra.nixos.org/build/233241313 at 2023-09-02
|
||||||
- nat-sized-numbers # failure in job https://hydra.nixos.org/build/233244238 at 2023-09-02
|
- nat-sized-numbers # failure in job https://hydra.nixos.org/build/233244238 at 2023-09-02
|
||||||
- natural # failure in job https://hydra.nixos.org/build/233232490 at 2023-09-02
|
- natural # failure in job https://hydra.nixos.org/build/233232490 at 2023-09-02
|
||||||
|
- NaturalLanguageAlphabets # failure in job https://hydra.nixos.org/build/245539294 at 2024-01-02
|
||||||
- NaturalSort # failure in job https://hydra.nixos.org/build/233213239 at 2023-09-02
|
- NaturalSort # failure in job https://hydra.nixos.org/build/233213239 at 2023-09-02
|
||||||
- naver-translate # failure in job https://hydra.nixos.org/build/233225934 at 2023-09-02
|
- naver-translate # failure in job https://hydra.nixos.org/build/233225934 at 2023-09-02
|
||||||
- nbt # failure in job https://hydra.nixos.org/build/233253509 at 2023-09-02
|
- nbt # failure in job https://hydra.nixos.org/build/233253509 at 2023-09-02
|
||||||
@ -3815,6 +3820,7 @@ broken-packages:
|
|||||||
- notzero # failure in job https://hydra.nixos.org/build/233216133 at 2023-09-02
|
- notzero # failure in job https://hydra.nixos.org/build/233216133 at 2023-09-02
|
||||||
- np-linear # failure in job https://hydra.nixos.org/build/233257696 at 2023-09-02
|
- np-linear # failure in job https://hydra.nixos.org/build/233257696 at 2023-09-02
|
||||||
- nptools # failure in job https://hydra.nixos.org/build/233234905 at 2023-09-02
|
- nptools # failure in job https://hydra.nixos.org/build/233234905 at 2023-09-02
|
||||||
|
- nqe # failure in job https://hydra.nixos.org/build/243814217 at 2024-01-01
|
||||||
- ntp-control # failure in job https://hydra.nixos.org/build/233231061 at 2023-09-02
|
- ntp-control # failure in job https://hydra.nixos.org/build/233231061 at 2023-09-02
|
||||||
- ntrip-client # failure in job https://hydra.nixos.org/build/233230605 at 2023-09-02
|
- ntrip-client # failure in job https://hydra.nixos.org/build/233230605 at 2023-09-02
|
||||||
- n-tuple # failure in job https://hydra.nixos.org/build/233225021 at 2023-09-02
|
- n-tuple # failure in job https://hydra.nixos.org/build/233225021 at 2023-09-02
|
||||||
@ -3867,6 +3873,7 @@ broken-packages:
|
|||||||
- om-http-logging # failure in job https://hydra.nixos.org/build/233218069 at 2023-09-02
|
- om-http-logging # failure in job https://hydra.nixos.org/build/233218069 at 2023-09-02
|
||||||
- om-logging # failure in job https://hydra.nixos.org/build/233222909 at 2023-09-02
|
- om-logging # failure in job https://hydra.nixos.org/build/233222909 at 2023-09-02
|
||||||
- omnifmt # failure in job https://hydra.nixos.org/build/233219763 at 2023-09-02
|
- omnifmt # failure in job https://hydra.nixos.org/build/233219763 at 2023-09-02
|
||||||
|
- om-plugin-imports # failure in job https://hydra.nixos.org/build/243826382 at 2024-01-01
|
||||||
- om-socket # failure in job https://hydra.nixos.org/build/233235423 at 2023-09-02
|
- om-socket # failure in job https://hydra.nixos.org/build/233235423 at 2023-09-02
|
||||||
- on-a-horse # failure in job https://hydra.nixos.org/build/233199193 at 2023-09-02
|
- on-a-horse # failure in job https://hydra.nixos.org/build/233199193 at 2023-09-02
|
||||||
- onama # failure in job https://hydra.nixos.org/build/233241430 at 2023-09-02
|
- onama # failure in job https://hydra.nixos.org/build/233241430 at 2023-09-02
|
||||||
@ -3886,6 +3893,7 @@ broken-packages:
|
|||||||
- openapi3 # failure in job https://hydra.nixos.org/build/233208815 at 2023-09-02
|
- openapi3 # failure in job https://hydra.nixos.org/build/233208815 at 2023-09-02
|
||||||
- openapi-petstore # failure in job https://hydra.nixos.org/build/233221722 at 2023-09-02
|
- openapi-petstore # failure in job https://hydra.nixos.org/build/233221722 at 2023-09-02
|
||||||
- openapi-typed # failure in job https://hydra.nixos.org/build/233226830 at 2023-09-02
|
- openapi-typed # failure in job https://hydra.nixos.org/build/233226830 at 2023-09-02
|
||||||
|
- opencascade-hs # failure in job https://hydra.nixos.org/build/243821447 at 2024-01-01
|
||||||
- opencc # failure in job https://hydra.nixos.org/build/233211902 at 2023-09-02
|
- opencc # failure in job https://hydra.nixos.org/build/233211902 at 2023-09-02
|
||||||
- opench-meteo # failure in job https://hydra.nixos.org/build/233212476 at 2023-09-02
|
- opench-meteo # failure in job https://hydra.nixos.org/build/233212476 at 2023-09-02
|
||||||
- OpenCL # failure in job https://hydra.nixos.org/build/233216571 at 2023-09-02
|
- OpenCL # failure in job https://hydra.nixos.org/build/233216571 at 2023-09-02
|
||||||
@ -4529,7 +4537,7 @@ broken-packages:
|
|||||||
- rangemin # failure in job https://hydra.nixos.org/build/233244031 at 2023-09-02
|
- rangemin # failure in job https://hydra.nixos.org/build/233244031 at 2023-09-02
|
||||||
- rank1dynamic # failure in job https://hydra.nixos.org/build/233229881 at 2023-09-02
|
- rank1dynamic # failure in job https://hydra.nixos.org/build/233229881 at 2023-09-02
|
||||||
- rank-product # failure in job https://hydra.nixos.org/build/233239589 at 2023-09-02
|
- rank-product # failure in job https://hydra.nixos.org/build/233239589 at 2023-09-02
|
||||||
- rapid # failure in job https://hydra.nixos.org/build/233223077 at 2023-09-02
|
- rapid # failure in job https://hydra.nixos.org/build/244061259 at 2024-01-01
|
||||||
- rapid-term # failure in job https://hydra.nixos.org/build/233251731 at 2023-09-02
|
- rapid-term # failure in job https://hydra.nixos.org/build/233251731 at 2023-09-02
|
||||||
- Rasenschach # failure in job https://hydra.nixos.org/build/234445901 at 2023-09-13
|
- Rasenschach # failure in job https://hydra.nixos.org/build/234445901 at 2023-09-13
|
||||||
- rating-chgk-info # failure in job https://hydra.nixos.org/build/233598034 at 2023-09-02
|
- rating-chgk-info # failure in job https://hydra.nixos.org/build/233598034 at 2023-09-02
|
||||||
@ -4792,7 +4800,6 @@ broken-packages:
|
|||||||
- scale # failure in job https://hydra.nixos.org/build/233222189 at 2023-09-02
|
- scale # failure in job https://hydra.nixos.org/build/233222189 at 2023-09-02
|
||||||
- scaleimage # failure in job https://hydra.nixos.org/build/233240688 at 2023-09-02
|
- scaleimage # failure in job https://hydra.nixos.org/build/233240688 at 2023-09-02
|
||||||
- scalendar # failure in job https://hydra.nixos.org/build/233206581 at 2023-09-02
|
- scalendar # failure in job https://hydra.nixos.org/build/233206581 at 2023-09-02
|
||||||
- scat # failure in job https://hydra.nixos.org/build/233199202 at 2023-09-02
|
|
||||||
- scc # failure in job https://hydra.nixos.org/build/233247446 at 2023-09-02
|
- scc # failure in job https://hydra.nixos.org/build/233247446 at 2023-09-02
|
||||||
- scgi # failure in job https://hydra.nixos.org/build/233247314 at 2023-09-02
|
- scgi # failure in job https://hydra.nixos.org/build/233247314 at 2023-09-02
|
||||||
- schedevr # failure in job https://hydra.nixos.org/build/233240124 at 2023-09-02
|
- schedevr # failure in job https://hydra.nixos.org/build/233240124 at 2023-09-02
|
||||||
@ -4828,6 +4835,7 @@ broken-packages:
|
|||||||
- sdl2-image # failure in job https://hydra.nixos.org/build/233216837 at 2023-09-02
|
- sdl2-image # failure in job https://hydra.nixos.org/build/233216837 at 2023-09-02
|
||||||
- sdl2-mixer # failure in job https://hydra.nixos.org/build/233228951 at 2023-09-02
|
- sdl2-mixer # failure in job https://hydra.nixos.org/build/233228951 at 2023-09-02
|
||||||
- sdp # failure in job https://hydra.nixos.org/build/233246702 at 2023-09-02
|
- sdp # failure in job https://hydra.nixos.org/build/233246702 at 2023-09-02
|
||||||
|
- sdr # failure in job https://hydra.nixos.org/build/243807383 at 2024-01-01
|
||||||
- seacat # failure in job https://hydra.nixos.org/build/233229959 at 2023-09-02
|
- seacat # failure in job https://hydra.nixos.org/build/233229959 at 2023-09-02
|
||||||
- seakale # failure in job https://hydra.nixos.org/build/233236200 at 2023-09-02
|
- seakale # failure in job https://hydra.nixos.org/build/233236200 at 2023-09-02
|
||||||
- secdh # failure in job https://hydra.nixos.org/build/233244391 at 2023-09-02
|
- secdh # failure in job https://hydra.nixos.org/build/233244391 at 2023-09-02
|
||||||
@ -4842,7 +4850,7 @@ broken-packages:
|
|||||||
- secure-sockets # failure in job https://hydra.nixos.org/build/233254170 at 2023-09-02
|
- secure-sockets # failure in job https://hydra.nixos.org/build/233254170 at 2023-09-02
|
||||||
- secureUDP # failure in job https://hydra.nixos.org/build/233215410 at 2023-09-02
|
- secureUDP # failure in job https://hydra.nixos.org/build/233215410 at 2023-09-02
|
||||||
- SegmentTree # failure in job https://hydra.nixos.org/build/233216161 at 2023-09-02
|
- SegmentTree # failure in job https://hydra.nixos.org/build/233216161 at 2023-09-02
|
||||||
- selda # failure in job https://hydra.nixos.org/build/233234757 at 2023-09-02
|
- selda-postgresql # failure in job https://hydra.nixos.org/build/245539286 at 2024-01-02
|
||||||
- selectors # failure in job https://hydra.nixos.org/build/233227433 at 2023-09-02
|
- selectors # failure in job https://hydra.nixos.org/build/233227433 at 2023-09-02
|
||||||
- selenium # failure in job https://hydra.nixos.org/build/233214276 at 2023-09-02
|
- selenium # failure in job https://hydra.nixos.org/build/233214276 at 2023-09-02
|
||||||
- selinux # failure in job https://hydra.nixos.org/build/233192853 at 2023-09-02
|
- selinux # failure in job https://hydra.nixos.org/build/233192853 at 2023-09-02
|
||||||
@ -4914,6 +4922,7 @@ broken-packages:
|
|||||||
- servant-streamly # failure in job https://hydra.nixos.org/build/233231404 at 2023-09-02
|
- servant-streamly # failure in job https://hydra.nixos.org/build/233231404 at 2023-09-02
|
||||||
- servant-tracing # failure in job https://hydra.nixos.org/build/233229308 at 2023-09-02
|
- servant-tracing # failure in job https://hydra.nixos.org/build/233229308 at 2023-09-02
|
||||||
- servant-wasm # failure in job https://hydra.nixos.org/build/233191644 at 2023-09-02
|
- servant-wasm # failure in job https://hydra.nixos.org/build/233191644 at 2023-09-02
|
||||||
|
- servant-xml-conduit # failure in job https://hydra.nixos.org/build/243828707 at 2024-01-01
|
||||||
- servant-yaml # failure in job https://hydra.nixos.org/build/233260010 at 2023-09-02
|
- servant-yaml # failure in job https://hydra.nixos.org/build/233260010 at 2023-09-02
|
||||||
- servant-zeppelin # failure in job https://hydra.nixos.org/build/233230172 at 2023-09-02
|
- servant-zeppelin # failure in job https://hydra.nixos.org/build/233230172 at 2023-09-02
|
||||||
- server-generic # failure in job https://hydra.nixos.org/build/233194042 at 2023-09-02
|
- server-generic # failure in job https://hydra.nixos.org/build/233194042 at 2023-09-02
|
||||||
@ -5434,6 +5443,7 @@ broken-packages:
|
|||||||
- template-yj # failure in job https://hydra.nixos.org/build/233236245 at 2023-09-02
|
- template-yj # failure in job https://hydra.nixos.org/build/233236245 at 2023-09-02
|
||||||
- templatise # failure in updateAutotoolsGnuConfigScriptsPhase in job https://hydra.nixos.org/build/237235933 at 2023-10-21
|
- templatise # failure in updateAutotoolsGnuConfigScriptsPhase in job https://hydra.nixos.org/build/237235933 at 2023-10-21
|
||||||
- tempodb # failure in job https://hydra.nixos.org/build/233205994 at 2023-09-02
|
- tempodb # failure in job https://hydra.nixos.org/build/233205994 at 2023-09-02
|
||||||
|
- temporal-csound # failure in job https://hydra.nixos.org/build/243818090 at 2024-01-01
|
||||||
- tempus # failure in job https://hydra.nixos.org/build/233245670 at 2023-09-02
|
- tempus # failure in job https://hydra.nixos.org/build/233245670 at 2023-09-02
|
||||||
- ten # failure in job https://hydra.nixos.org/build/233216705 at 2023-09-02
|
- ten # failure in job https://hydra.nixos.org/build/233216705 at 2023-09-02
|
||||||
- tensor # failure in job https://hydra.nixos.org/build/233233707 at 2023-09-02
|
- tensor # failure in job https://hydra.nixos.org/build/233233707 at 2023-09-02
|
||||||
@ -5788,6 +5798,7 @@ broken-packages:
|
|||||||
- unused # failure in job https://hydra.nixos.org/build/233243602 at 2023-09-02
|
- unused # failure in job https://hydra.nixos.org/build/233243602 at 2023-09-02
|
||||||
- uom-plugin # failure in job https://hydra.nixos.org/build/233228019 at 2023-09-02
|
- uom-plugin # failure in job https://hydra.nixos.org/build/233228019 at 2023-09-02
|
||||||
- Updater # failure in job https://hydra.nixos.org/build/233215373 at 2023-09-02
|
- Updater # failure in job https://hydra.nixos.org/build/233215373 at 2023-09-02
|
||||||
|
- updo # failure in job https://hydra.nixos.org/build/244399557 at 2024-01-01
|
||||||
- uploadcare # failure in job https://hydra.nixos.org/build/233197403 at 2023-09-02
|
- uploadcare # failure in job https://hydra.nixos.org/build/233197403 at 2023-09-02
|
||||||
- upskirt # failure in job https://hydra.nixos.org/build/233226983 at 2023-09-02
|
- upskirt # failure in job https://hydra.nixos.org/build/233226983 at 2023-09-02
|
||||||
- urbit-hob # failure in job https://hydra.nixos.org/build/233209231 at 2023-09-02
|
- urbit-hob # failure in job https://hydra.nixos.org/build/233209231 at 2023-09-02
|
||||||
@ -5988,6 +5999,7 @@ broken-packages:
|
|||||||
- web-routes-quasi # failure in job https://hydra.nixos.org/build/233222454 at 2023-09-02
|
- web-routes-quasi # failure in job https://hydra.nixos.org/build/233222454 at 2023-09-02
|
||||||
- web-routes-transformers # failure in job https://hydra.nixos.org/build/233256428 at 2023-09-02
|
- web-routes-transformers # failure in job https://hydra.nixos.org/build/233256428 at 2023-09-02
|
||||||
- webshow # failure in job https://hydra.nixos.org/build/233243842 at 2023-09-02
|
- webshow # failure in job https://hydra.nixos.org/build/233243842 at 2023-09-02
|
||||||
|
- web-view # failure in job https://hydra.nixos.org/build/244678837 at 2024-01-01
|
||||||
- webwire # failure in job https://hydra.nixos.org/build/233233892 at 2023-09-02
|
- webwire # failure in job https://hydra.nixos.org/build/233233892 at 2023-09-02
|
||||||
- WEditor # failure in job https://hydra.nixos.org/build/233215233 at 2023-09-02
|
- WEditor # failure in job https://hydra.nixos.org/build/233215233 at 2023-09-02
|
||||||
- weighted-regexp # failure in job https://hydra.nixos.org/build/233243077 at 2023-09-02
|
- weighted-regexp # failure in job https://hydra.nixos.org/build/233243077 at 2023-09-02
|
||||||
|
@ -33,13 +33,6 @@ default-package-overrides:
|
|||||||
# Downgrade hasql-dynamic-statements until hasql 1.6 is in Stackage
|
# Downgrade hasql-dynamic-statements until hasql 1.6 is in Stackage
|
||||||
- hasql-dynamic-statements < 0.3.1.2
|
- hasql-dynamic-statements < 0.3.1.2
|
||||||
- rope-utf16-splay < 0.4.0.0
|
- rope-utf16-splay < 0.4.0.0
|
||||||
# hnix < 0.17 (unreleased) needs hnix-store-* 0.5.*
|
|
||||||
- hnix-store-core == 0.5.0.0 # 2022-06-17: Until hnix 0.17
|
|
||||||
- hnix-store-remote == 0.5.0.0 # 2022-06-17: Until hnix 0.17
|
|
||||||
|
|
||||||
# 2023-04-22: For dhall < 1.42 compatibility
|
|
||||||
- dhall-nixpkgs == 1.0.9
|
|
||||||
- dhall-nix == 1.1.25
|
|
||||||
|
|
||||||
# 2023-07-06: ghcide-2.0.0.1 explicitly needs implicit-hie < 0.1.3, because some sort of
|
# 2023-07-06: ghcide-2.0.0.1 explicitly needs implicit-hie < 0.1.3, because some sort of
|
||||||
# breaking change was introduced in implicit-hie-0.1.3.0.
|
# breaking change was introduced in implicit-hie-0.1.3.0.
|
||||||
@ -69,7 +62,6 @@ extra-packages:
|
|||||||
- Cabal == 3.6.* # used for packages needing newer Cabal on ghc 8.10 and 9.0
|
- Cabal == 3.6.* # used for packages needing newer Cabal on ghc 8.10 and 9.0
|
||||||
- Cabal-syntax == 3.8.* # version required for ormolu and fourmolu on ghc 9.2 and 9.0
|
- Cabal-syntax == 3.8.* # version required for ormolu and fourmolu on ghc 9.2 and 9.0
|
||||||
- Cabal-syntax == 3.10.* # newest version required for cabal-install and other packages
|
- Cabal-syntax == 3.10.* # newest version required for cabal-install and other packages
|
||||||
- cachix < 1.4 # 2023-04-02: cachix 1.4{,.1} have known on multi-user Nix systems
|
|
||||||
- directory == 1.3.7.* # required to build cabal-install 3.10.* with GHC 9.2
|
- directory == 1.3.7.* # required to build cabal-install 3.10.* with GHC 9.2
|
||||||
- Diff < 0.4 # required by liquidhaskell-0.8.10.2: https://github.com/ucsd-progsys/liquidhaskell/issues/1729
|
- Diff < 0.4 # required by liquidhaskell-0.8.10.2: https://github.com/ucsd-progsys/liquidhaskell/issues/1729
|
||||||
- aeson < 2 # required by pantry-0.5.2
|
- aeson < 2 # required by pantry-0.5.2
|
||||||
@ -115,6 +107,7 @@ extra-packages:
|
|||||||
- hinotify == 0.3.9 # for xmonad-0.26: https://github.com/kolmodin/hinotify/issues/29
|
- hinotify == 0.3.9 # for xmonad-0.26: https://github.com/kolmodin/hinotify/issues/29
|
||||||
- hlint == 3.2.8 # 2022-09-21: needed for hls on ghc 8.8
|
- hlint == 3.2.8 # 2022-09-21: needed for hls on ghc 8.8
|
||||||
- hlint == 3.4.1 # 2022-09-21: needed for hls with ghc-lib-parser 9.2
|
- hlint == 3.4.1 # 2022-09-21: needed for hls with ghc-lib-parser 9.2
|
||||||
|
- 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
|
||||||
@ -154,6 +147,7 @@ extra-packages:
|
|||||||
- shake-cabal < 0.2.2.3 # 2023-07-01: last version to support Cabal 3.6.*
|
- shake-cabal < 0.2.2.3 # 2023-07-01: last version to support Cabal 3.6.*
|
||||||
- unix-compat < 0.7 # 2023-07-04: Need System.PosixCompat.User for git-annex
|
- unix-compat < 0.7 # 2023-07-04: Need System.PosixCompat.User for git-annex
|
||||||
- algebraic-graphs < 0.7 # 2023-08-14: Needed for building weeder < 2.6.0
|
- 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
|
||||||
|
|
||||||
package-maintainers:
|
package-maintainers:
|
||||||
abbradar:
|
abbradar:
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Stackage LTS 21.21
|
# Stackage LTS 21.23
|
||||||
# This file is auto-generated by
|
# This file is auto-generated by
|
||||||
# maintainers/scripts/haskell/update-stackage.sh
|
# maintainers/scripts/haskell/update-stackage.sh
|
||||||
default-package-overrides:
|
default-package-overrides:
|
||||||
@ -6,7 +6,7 @@ default-package-overrides:
|
|||||||
- abstract-deque-tests ==0.3
|
- abstract-deque-tests ==0.3
|
||||||
- abstract-par ==0.3.3
|
- abstract-par ==0.3.3
|
||||||
- AC-Angle ==1.0
|
- AC-Angle ==1.0
|
||||||
- acc ==0.2.0.2
|
- acc ==0.2.0.3
|
||||||
- ace ==0.6
|
- ace ==0.6
|
||||||
- acid-state ==0.16.1.3
|
- acid-state ==0.16.1.3
|
||||||
- action-permutations ==0.0.0.1
|
- action-permutations ==0.0.0.1
|
||||||
@ -24,7 +24,7 @@ default-package-overrides:
|
|||||||
- aeson-combinators ==0.1.1.0
|
- aeson-combinators ==0.1.1.0
|
||||||
- aeson-diff ==1.1.0.13
|
- aeson-diff ==1.1.0.13
|
||||||
- aeson-extra ==0.5.1.2
|
- aeson-extra ==0.5.1.2
|
||||||
- aeson-generic-compat ==0.0.1.3
|
- aeson-generic-compat ==0.0.2.0
|
||||||
- aeson-iproute ==0.3.0
|
- aeson-iproute ==0.3.0
|
||||||
- aeson-optics ==1.2.1
|
- aeson-optics ==1.2.1
|
||||||
- aeson-picker ==0.1.0.6
|
- aeson-picker ==0.1.0.6
|
||||||
@ -95,7 +95,7 @@ default-package-overrides:
|
|||||||
- assert-failure ==0.1.3.0
|
- assert-failure ==0.1.3.0
|
||||||
- assoc ==1.1
|
- assoc ==1.1
|
||||||
- astro ==0.4.3.0
|
- astro ==0.4.3.0
|
||||||
- async ==2.2.4
|
- async ==2.2.5
|
||||||
- async-extra ==0.2.0.0
|
- async-extra ==0.2.0.0
|
||||||
- async-refresh ==0.3.0.0
|
- async-refresh ==0.3.0.0
|
||||||
- async-refresh-tokens ==0.4.0.0
|
- async-refresh-tokens ==0.4.0.0
|
||||||
@ -117,7 +117,7 @@ default-package-overrides:
|
|||||||
- audacity ==0.0.2.1
|
- audacity ==0.0.2.1
|
||||||
- authenticate ==1.3.5.2
|
- authenticate ==1.3.5.2
|
||||||
- authenticate-oauth ==1.7
|
- authenticate-oauth ==1.7
|
||||||
- autodocodec ==0.2.1.0
|
- autodocodec ==0.2.2.0
|
||||||
- autodocodec-openapi3 ==0.2.1.1
|
- autodocodec-openapi3 ==0.2.1.1
|
||||||
- autodocodec-schema ==0.1.0.3
|
- autodocodec-schema ==0.1.0.3
|
||||||
- autodocodec-yaml ==0.2.0.3
|
- autodocodec-yaml ==0.2.0.3
|
||||||
@ -247,7 +247,7 @@ default-package-overrides:
|
|||||||
- bugsnag-haskell ==0.0.4.4
|
- bugsnag-haskell ==0.0.4.4
|
||||||
- bugsnag-hs ==0.2.0.12
|
- bugsnag-hs ==0.2.0.12
|
||||||
- bugsnag-wai ==1.0.0.1
|
- bugsnag-wai ==1.0.0.1
|
||||||
- bugsnag-yesod ==1.0.0.1
|
- bugsnag-yesod ==1.0.1.0
|
||||||
- bugzilla-redhat ==1.0.1.1
|
- bugzilla-redhat ==1.0.1.1
|
||||||
- burrito ==2.0.1.7
|
- burrito ==2.0.1.7
|
||||||
- bv ==0.5
|
- bv ==0.5
|
||||||
@ -279,7 +279,7 @@ default-package-overrides:
|
|||||||
- cabal-doctest ==1.0.9
|
- cabal-doctest ==1.0.9
|
||||||
- cabal-file ==0.1.1
|
- cabal-file ==0.1.1
|
||||||
- cabal-install-solver ==3.8.1.0
|
- cabal-install-solver ==3.8.1.0
|
||||||
- cabal-rpm ==2.1.4
|
- cabal-rpm ==2.1.5
|
||||||
- cache ==0.1.3.0
|
- cache ==0.1.3.0
|
||||||
- cached-json-file ==0.1.1
|
- cached-json-file ==0.1.1
|
||||||
- cacophony ==0.10.1
|
- cacophony ==0.10.1
|
||||||
@ -350,7 +350,7 @@ default-package-overrides:
|
|||||||
- cmark-gfm ==0.2.6
|
- cmark-gfm ==0.2.6
|
||||||
- cmdargs ==0.10.22
|
- cmdargs ==0.10.22
|
||||||
- codec-beam ==0.2.0
|
- codec-beam ==0.2.0
|
||||||
- code-conjure ==0.5.2
|
- code-conjure ==0.5.6
|
||||||
- code-page ==0.2.1
|
- code-page ==0.2.1
|
||||||
- coinor-clp ==0.0.0.1
|
- coinor-clp ==0.0.0.1
|
||||||
- cointracking-imports ==0.1.0.2
|
- cointracking-imports ==0.1.0.2
|
||||||
@ -561,10 +561,6 @@ default-package-overrides:
|
|||||||
- deriving-trans ==0.5.2.0
|
- deriving-trans ==0.5.2.0
|
||||||
- detour-via-sci ==1.0.0
|
- detour-via-sci ==1.0.0
|
||||||
- df1 ==0.4.2
|
- df1 ==0.4.2
|
||||||
- dhall ==1.41.2
|
|
||||||
- dhall-bash ==1.0.40
|
|
||||||
- dhall-json ==1.7.11
|
|
||||||
- dhall-yaml ==1.2.12
|
|
||||||
- di ==1.3
|
- di ==1.3
|
||||||
- diagrams ==1.4.1
|
- diagrams ==1.4.1
|
||||||
- diagrams-cairo ==1.4.2.1
|
- diagrams-cairo ==1.4.2.1
|
||||||
@ -610,7 +606,7 @@ default-package-overrides:
|
|||||||
- doctemplates ==0.11
|
- doctemplates ==0.11
|
||||||
- doctest ==0.20.1
|
- doctest ==0.20.1
|
||||||
- doctest-discover ==0.2.0.0
|
- doctest-discover ==0.2.0.0
|
||||||
- doctest-driver-gen ==0.3.0.7
|
- doctest-driver-gen ==0.3.0.8
|
||||||
- doctest-exitcode-stdio ==0.0
|
- doctest-exitcode-stdio ==0.0
|
||||||
- doctest-extract ==0.1.1.1
|
- doctest-extract ==0.1.1.1
|
||||||
- doctest-lib ==0.1
|
- doctest-lib ==0.1
|
||||||
@ -708,7 +704,7 @@ default-package-overrides:
|
|||||||
- evm-opcodes ==0.1.2
|
- evm-opcodes ==0.1.2
|
||||||
- exact-combinatorics ==0.2.0.11
|
- exact-combinatorics ==0.2.0.11
|
||||||
- exact-pi ==0.5.0.2
|
- exact-pi ==0.5.0.2
|
||||||
- exception-hierarchy ==0.1.0.8
|
- exception-hierarchy ==0.1.0.10
|
||||||
- exception-mtl ==0.4.0.2
|
- exception-mtl ==0.4.0.2
|
||||||
- exception-transformers ==0.4.0.12
|
- exception-transformers ==0.4.0.12
|
||||||
- executable-hash ==0.2.0.4
|
- executable-hash ==0.2.0.4
|
||||||
@ -718,7 +714,7 @@ default-package-overrides:
|
|||||||
- exomizer ==1.0.0
|
- exomizer ==1.0.0
|
||||||
- experimenter ==0.1.0.14
|
- experimenter ==0.1.0.14
|
||||||
- expiring-cache-map ==0.0.6.1
|
- expiring-cache-map ==0.0.6.1
|
||||||
- explainable-predicates ==0.1.2.3
|
- explainable-predicates ==0.1.2.4
|
||||||
- explicit-exception ==0.2
|
- explicit-exception ==0.2
|
||||||
- exp-pairs ==0.2.1.0
|
- exp-pairs ==0.2.1.0
|
||||||
- express ==1.0.12
|
- express ==1.0.12
|
||||||
@ -816,7 +812,7 @@ default-package-overrides:
|
|||||||
- friday ==0.2.3.2
|
- friday ==0.2.3.2
|
||||||
- friday-juicypixels ==0.1.2.4
|
- friday-juicypixels ==0.1.2.4
|
||||||
- friendly-time ==0.4.1
|
- friendly-time ==0.4.1
|
||||||
- frisby ==0.2.4
|
- frisby ==0.2.5
|
||||||
- from-sum ==0.2.3.0
|
- from-sum ==0.2.3.0
|
||||||
- frontmatter ==0.1.0.2
|
- frontmatter ==0.1.0.2
|
||||||
- fsnotify ==0.4.1.0
|
- fsnotify ==0.4.1.0
|
||||||
@ -1035,13 +1031,13 @@ default-package-overrides:
|
|||||||
- hasql-transaction ==1.0.1.2
|
- hasql-transaction ==1.0.1.2
|
||||||
- has-transformers ==0.1.0.4
|
- has-transformers ==0.1.0.4
|
||||||
- hasty-hamiltonian ==1.3.4
|
- hasty-hamiltonian ==1.3.4
|
||||||
- HaTeX ==3.22.4.0
|
- HaTeX ==3.22.4.1
|
||||||
- HaXml ==1.25.13
|
- HaXml ==1.25.13
|
||||||
- haxr ==3000.11.5
|
- haxr ==3000.11.5
|
||||||
- HCodecs ==0.5.2
|
- HCodecs ==0.5.2
|
||||||
- hdaemonize ==0.5.7
|
- hdaemonize ==0.5.7
|
||||||
- HDBC ==2.4.0.4
|
- HDBC ==2.4.0.4
|
||||||
- HDBC-session ==0.1.2.0
|
- HDBC-session ==0.1.2.1
|
||||||
- headed-megaparsec ==0.2.1.2
|
- headed-megaparsec ==0.2.1.2
|
||||||
- heap ==1.0.4
|
- heap ==1.0.4
|
||||||
- heaps ==0.4
|
- heaps ==0.4
|
||||||
@ -1214,7 +1210,7 @@ default-package-overrides:
|
|||||||
- http-query ==0.1.3
|
- http-query ==0.1.3
|
||||||
- http-reverse-proxy ==0.6.0.1
|
- http-reverse-proxy ==0.6.0.1
|
||||||
- http-streams ==0.8.9.9
|
- http-streams ==0.8.9.9
|
||||||
- http-types ==0.12.3
|
- http-types ==0.12.4
|
||||||
- human-readable-duration ==0.2.1.4
|
- human-readable-duration ==0.2.1.4
|
||||||
- HUnit ==1.6.2.0
|
- HUnit ==1.6.2.0
|
||||||
- HUnit-approx ==1.1.1.1
|
- HUnit-approx ==1.1.1.1
|
||||||
@ -1293,7 +1289,7 @@ default-package-overrides:
|
|||||||
- inline-c ==0.9.1.10
|
- inline-c ==0.9.1.10
|
||||||
- inline-c-cpp ==0.5.0.2
|
- inline-c-cpp ==0.5.0.2
|
||||||
- inline-r ==1.0.1
|
- inline-r ==1.0.1
|
||||||
- input-parsers ==0.3.0.1
|
- input-parsers ==0.3.0.2
|
||||||
- insert-ordered-containers ==0.2.5.3
|
- insert-ordered-containers ==0.2.5.3
|
||||||
- inspection-testing ==0.5.0.2
|
- inspection-testing ==0.5.0.2
|
||||||
- instance-control ==0.1.2.0
|
- instance-control ==0.1.2.0
|
||||||
@ -1363,7 +1359,7 @@ default-package-overrides:
|
|||||||
- jwt ==0.11.0
|
- jwt ==0.11.0
|
||||||
- kan-extensions ==5.2.5
|
- kan-extensions ==5.2.5
|
||||||
- kansas-comet ==0.4.2
|
- kansas-comet ==0.4.2
|
||||||
- katip ==0.8.7.4
|
- katip ==0.8.8.0
|
||||||
- katip-logstash ==0.1.0.2
|
- katip-logstash ==0.1.0.2
|
||||||
- katip-wai ==0.1.2.2
|
- katip-wai ==0.1.2.2
|
||||||
- kazura-queue ==0.1.0.4
|
- kazura-queue ==0.1.0.4
|
||||||
@ -1435,7 +1431,7 @@ default-package-overrides:
|
|||||||
- LetsBeRational ==1.0.0.0
|
- LetsBeRational ==1.0.0.0
|
||||||
- leveldb-haskell ==0.6.5
|
- leveldb-haskell ==0.6.5
|
||||||
- lexer-applicative ==2.1.0.2
|
- lexer-applicative ==2.1.0.2
|
||||||
- libBF ==0.6.6
|
- libBF ==0.6.7
|
||||||
- libffi ==0.2.1
|
- libffi ==0.2.1
|
||||||
- libgit ==0.3.1
|
- libgit ==0.3.1
|
||||||
- liboath-hs ==0.0.1.2
|
- liboath-hs ==0.0.1.2
|
||||||
@ -1707,7 +1703,7 @@ default-package-overrides:
|
|||||||
- nfc ==0.1.1
|
- nfc ==0.1.1
|
||||||
- nicify-lib ==1.0.1
|
- nicify-lib ==1.0.1
|
||||||
- NineP ==0.0.2.1
|
- NineP ==0.0.2.1
|
||||||
- nix-derivation ==1.1.2
|
- nix-derivation ==1.1.3
|
||||||
- nix-paths ==1.0.1
|
- nix-paths ==1.0.1
|
||||||
- NoHoed ==0.1.1
|
- NoHoed ==0.1.1
|
||||||
- nonce ==1.0.7
|
- nonce ==1.0.7
|
||||||
@ -1756,7 +1752,7 @@ default-package-overrides:
|
|||||||
- oops ==0.2.0.1
|
- oops ==0.2.0.1
|
||||||
- opaleye ==0.9.7.0
|
- opaleye ==0.9.7.0
|
||||||
- OpenAL ==1.7.0.5
|
- OpenAL ==1.7.0.5
|
||||||
- openapi3 ==3.2.3
|
- openapi3 ==3.2.4
|
||||||
- open-browser ==0.2.1.0
|
- open-browser ==0.2.1.0
|
||||||
- openexr-write ==0.1.0.2
|
- openexr-write ==0.1.0.2
|
||||||
- OpenGL ==3.0.3.0
|
- OpenGL ==3.0.3.0
|
||||||
@ -2137,7 +2133,7 @@ default-package-overrides:
|
|||||||
- rpmbuild-order ==0.4.10
|
- rpmbuild-order ==0.4.10
|
||||||
- rpm-nvr ==0.1.2
|
- rpm-nvr ==0.1.2
|
||||||
- rp-tree ==0.7.1
|
- rp-tree ==0.7.1
|
||||||
- rrb-vector ==0.2.0.1
|
- rrb-vector ==0.2.1.0
|
||||||
- RSA ==2.4.1
|
- RSA ==2.4.1
|
||||||
- rss ==3000.2.0.7
|
- rss ==3000.2.0.7
|
||||||
- rss-conduit ==0.6.0.1
|
- rss-conduit ==0.6.0.1
|
||||||
@ -2349,11 +2345,11 @@ default-package-overrides:
|
|||||||
- Spock-lucid ==0.4.0.1
|
- Spock-lucid ==0.4.0.1
|
||||||
- Spock-worker ==0.3.1.0
|
- Spock-worker ==0.3.1.0
|
||||||
- spoon ==0.3.1
|
- spoon ==0.3.1
|
||||||
- spreadsheet ==0.1.3.9
|
- spreadsheet ==0.1.3.10
|
||||||
- sqlcli ==0.2.2.0
|
- sqlcli ==0.2.2.0
|
||||||
- sqlcli-odbc ==0.2.0.1
|
- sqlcli-odbc ==0.2.0.1
|
||||||
- sqlite-simple ==0.4.18.2
|
- sqlite-simple ==0.4.18.2
|
||||||
- sql-words ==0.1.6.4
|
- sql-words ==0.1.6.5
|
||||||
- squeather ==0.8.0.0
|
- squeather ==0.8.0.0
|
||||||
- srcloc ==0.6.0.1
|
- srcloc ==0.6.0.1
|
||||||
- srt ==0.1.2.0
|
- srt ==0.1.2.0
|
||||||
@ -2573,7 +2569,7 @@ default-package-overrides:
|
|||||||
- th-bang-compat ==0.0.1.0
|
- th-bang-compat ==0.0.1.0
|
||||||
- th-compat ==0.1.4
|
- th-compat ==0.1.4
|
||||||
- th-constraint-compat ==0.0.1.0
|
- th-constraint-compat ==0.0.1.0
|
||||||
- th-data-compat ==0.1.2.0
|
- th-data-compat ==0.1.3.0
|
||||||
- th-desugar ==1.14
|
- th-desugar ==1.14
|
||||||
- th-env ==0.1.1
|
- th-env ==0.1.1
|
||||||
- these ==1.2
|
- these ==1.2
|
||||||
@ -2633,7 +2629,7 @@ default-package-overrides:
|
|||||||
- token-bucket ==0.1.0.1
|
- token-bucket ==0.1.0.1
|
||||||
- toml-reader ==0.2.1.0
|
- toml-reader ==0.2.1.0
|
||||||
- toml-reader-parse ==0.1.1.1
|
- toml-reader-parse ==0.1.1.1
|
||||||
- tophat ==1.0.6.1
|
- tophat ==1.0.7.0
|
||||||
- topograph ==1.0.0.2
|
- topograph ==1.0.0.2
|
||||||
- torrent ==10000.1.3
|
- torrent ==10000.1.3
|
||||||
- torsor ==0.1
|
- torsor ==0.1
|
||||||
@ -2928,7 +2924,7 @@ default-package-overrides:
|
|||||||
- yesod-auth-oauth2 ==0.7.1.3
|
- yesod-auth-oauth2 ==0.7.1.3
|
||||||
- yesod-auth-oidc ==0.1.4
|
- yesod-auth-oidc ==0.1.4
|
||||||
- yesod-bin ==1.6.2.2
|
- yesod-bin ==1.6.2.2
|
||||||
- yesod-core ==1.6.25.0
|
- yesod-core ==1.6.25.1
|
||||||
- yesod-eventsource ==1.6.0.1
|
- yesod-eventsource ==1.6.0.1
|
||||||
- yesod-fb ==0.6.1
|
- yesod-fb ==0.6.1
|
||||||
- yesod-form ==1.7.6
|
- yesod-form ==1.7.6
|
||||||
|
@ -235,7 +235,6 @@ dont-distribute-packages:
|
|||||||
- IORefCAS
|
- IORefCAS
|
||||||
- IndexedList
|
- IndexedList
|
||||||
- InfixApplicative
|
- InfixApplicative
|
||||||
- InternedData
|
|
||||||
- JSON-Combinator
|
- JSON-Combinator
|
||||||
- JSON-Combinator-Examples
|
- JSON-Combinator-Examples
|
||||||
- Javasf
|
- Javasf
|
||||||
@ -292,8 +291,8 @@ dont-distribute-packages:
|
|||||||
- NGLess
|
- NGLess
|
||||||
- NTRU
|
- NTRU
|
||||||
- NXT
|
- NXT
|
||||||
|
- NaCl
|
||||||
- NaperianNetCDF
|
- NaperianNetCDF
|
||||||
- NaturalLanguageAlphabets
|
|
||||||
- NearContextAlgebra
|
- NearContextAlgebra
|
||||||
- Ninjas
|
- Ninjas
|
||||||
- NoSlow
|
- NoSlow
|
||||||
@ -522,6 +521,7 @@ dont-distribute-packages:
|
|||||||
- apiary-redis
|
- apiary-redis
|
||||||
- apiary-session
|
- apiary-session
|
||||||
- apiary-websockets
|
- apiary-websockets
|
||||||
|
- apigen
|
||||||
- apis
|
- apis
|
||||||
- apotiki
|
- apotiki
|
||||||
- approx-rand-test
|
- approx-rand-test
|
||||||
@ -661,7 +661,6 @@ dont-distribute-packages:
|
|||||||
- bip32
|
- bip32
|
||||||
- birch-beer
|
- birch-beer
|
||||||
- bird
|
- bird
|
||||||
- bisc
|
|
||||||
- biscuit-servant
|
- biscuit-servant
|
||||||
- bishbosh
|
- bishbosh
|
||||||
- bit-array
|
- bit-array
|
||||||
@ -912,8 +911,6 @@ dont-distribute-packages:
|
|||||||
- comonad-random
|
- comonad-random
|
||||||
- compaREST
|
- compaREST
|
||||||
- compact-mutable
|
- compact-mutable
|
||||||
- compact-mutable-vector
|
|
||||||
- compact-socket
|
|
||||||
- complexity
|
- complexity
|
||||||
- comprehensions-ghc
|
- comprehensions-ghc
|
||||||
- computational-algebra
|
- computational-algebra
|
||||||
@ -972,7 +969,7 @@ dont-distribute-packages:
|
|||||||
- couch-simple
|
- couch-simple
|
||||||
- couchdb-enumerator
|
- couchdb-enumerator
|
||||||
- country
|
- country
|
||||||
- country_0_2_4_0
|
- country_0_2_4_1
|
||||||
- cpkg
|
- cpkg
|
||||||
- cprng-aes-effect
|
- cprng-aes-effect
|
||||||
- cql-io-tinylog
|
- cql-io-tinylog
|
||||||
@ -998,6 +995,7 @@ dont-distribute-packages:
|
|||||||
- crypto-classical
|
- crypto-classical
|
||||||
- crypto-conduit
|
- crypto-conduit
|
||||||
- crypto-pubkey
|
- crypto-pubkey
|
||||||
|
- crypto-sodium
|
||||||
- cryptocipher
|
- cryptocipher
|
||||||
- cryptoids
|
- cryptoids
|
||||||
- cryptoids-class
|
- cryptoids-class
|
||||||
@ -1161,6 +1159,7 @@ dont-distribute-packages:
|
|||||||
- dobutokO4
|
- dobutokO4
|
||||||
- doc-review
|
- doc-review
|
||||||
- doi
|
- doi
|
||||||
|
- dojang
|
||||||
- domaindriven
|
- domaindriven
|
||||||
- dormouse-client
|
- dormouse-client
|
||||||
- dotparse
|
- dotparse
|
||||||
@ -1480,7 +1479,7 @@ dont-distribute-packages:
|
|||||||
- ghc-dump-util
|
- ghc-dump-util
|
||||||
- ghc-imported-from
|
- ghc-imported-from
|
||||||
- ghc-instances
|
- ghc-instances
|
||||||
- ghc-lib_9_8_1_20231009
|
- ghc-lib_9_8_1_20231121
|
||||||
- ghc-mod
|
- ghc-mod
|
||||||
- ghc-plugs-out
|
- ghc-plugs-out
|
||||||
- ghc-session
|
- ghc-session
|
||||||
@ -1931,6 +1930,8 @@ dont-distribute-packages:
|
|||||||
- hasklepias
|
- hasklepias
|
||||||
- haskoin-bitcoind
|
- haskoin-bitcoind
|
||||||
- haskoin-crypto
|
- haskoin-crypto
|
||||||
|
- haskoin-node
|
||||||
|
- haskoin-node_1_0_1
|
||||||
- haskoin-protocol
|
- haskoin-protocol
|
||||||
- haskoin-script
|
- haskoin-script
|
||||||
- haskoon
|
- haskoon
|
||||||
@ -3113,7 +3114,6 @@ dont-distribute-packages:
|
|||||||
- postgresql-tx-query
|
- postgresql-tx-query
|
||||||
- postgresql-tx-squeal
|
- postgresql-tx-squeal
|
||||||
- postgresql-tx-squeal-compat-simple
|
- postgresql-tx-squeal-compat-simple
|
||||||
- postgrest
|
|
||||||
- postmark
|
- postmark
|
||||||
- potoki
|
- potoki
|
||||||
- potoki-cereal
|
- potoki-cereal
|
||||||
@ -3453,7 +3453,7 @@ dont-distribute-packages:
|
|||||||
- samtools-conduit
|
- samtools-conduit
|
||||||
- samtools-enumerator
|
- samtools-enumerator
|
||||||
- samtools-iteratee
|
- samtools-iteratee
|
||||||
- sandwich_0_2_0_0
|
- sandwich_0_2_1_0
|
||||||
- sarsi
|
- sarsi
|
||||||
- sasha
|
- sasha
|
||||||
- sasl
|
- sasl
|
||||||
@ -3507,9 +3507,6 @@ dont-distribute-packages:
|
|||||||
- secrm
|
- secrm
|
||||||
- sednaDBXML
|
- sednaDBXML
|
||||||
- seitz-symbol
|
- seitz-symbol
|
||||||
- selda-json
|
|
||||||
- selda-postgresql
|
|
||||||
- selda-sqlite
|
|
||||||
- selenium-server
|
- selenium-server
|
||||||
- semantic-source
|
- semantic-source
|
||||||
- semantic-version
|
- semantic-version
|
||||||
@ -3599,10 +3596,12 @@ dont-distribute-packages:
|
|||||||
- silvi
|
- silvi
|
||||||
- simgi
|
- simgi
|
||||||
- simple-c-value
|
- simple-c-value
|
||||||
|
- simple-cairo
|
||||||
- simple-firewire
|
- simple-firewire
|
||||||
- simple-log-syslog
|
- simple-log-syslog
|
||||||
- simple-logging
|
- simple-logging
|
||||||
- simple-nix
|
- simple-nix
|
||||||
|
- simple-pango
|
||||||
- simple-pascal
|
- simple-pascal
|
||||||
- simple-postgresql-orm
|
- simple-postgresql-orm
|
||||||
- simpleirc-lens
|
- simpleirc-lens
|
||||||
@ -3840,7 +3839,6 @@ dont-distribute-packages:
|
|||||||
- tagged-list
|
- tagged-list
|
||||||
- tagged-th
|
- tagged-th
|
||||||
- tagsoup-navigate
|
- tagsoup-navigate
|
||||||
- tagstew
|
|
||||||
- tahoe-directory
|
- tahoe-directory
|
||||||
- tahoe-great-black-swamp
|
- tahoe-great-black-swamp
|
||||||
- tahoe-ssk
|
- tahoe-ssk
|
||||||
@ -4140,6 +4138,8 @@ dont-distribute-packages:
|
|||||||
- warp-grpc
|
- warp-grpc
|
||||||
- warp-quic
|
- warp-quic
|
||||||
- warped
|
- warped
|
||||||
|
- waterfall-cad
|
||||||
|
- waterfall-cad-examples
|
||||||
- wavesurfer
|
- wavesurfer
|
||||||
- wavy
|
- wavy
|
||||||
- weatherhs
|
- weatherhs
|
||||||
|
@ -394,7 +394,6 @@ self: super: builtins.intersectAttrs super {
|
|||||||
socket = dontCheck super.socket;
|
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
|
||||||
warp = dontCheck super.warp; # http://hydra.cryp.to/build/501073/nixlog/5/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
|
wuss = dontCheck super.wuss; # http://hydra.cryp.to/build/875964/nixlog/2/raw
|
||||||
@ -414,14 +413,27 @@ self: super: builtins.intersectAttrs super {
|
|||||||
mustache = dontCheck super.mustache;
|
mustache = dontCheck super.mustache;
|
||||||
arch-web = dontCheck super.arch-web;
|
arch-web = dontCheck super.arch-web;
|
||||||
|
|
||||||
|
# The curl executable is required for withApplication tests.
|
||||||
|
warp = addTestToolDepend pkgs.curl super.warp;
|
||||||
|
|
||||||
# Test suite requires running a database server. Testing is done upstream.
|
# Test suite requires running a database server. Testing is done upstream.
|
||||||
hasql = dontCheck super.hasql;
|
hasql = dontCheck super.hasql;
|
||||||
hasql-dynamic-statements = dontCheck super.hasql-dynamic-statements;
|
hasql-dynamic-statements = dontCheck super.hasql-dynamic-statements;
|
||||||
hasql-interpolate = dontCheck super.hasql-interpolate;
|
hasql-interpolate = dontCheck super.hasql-interpolate;
|
||||||
hasql-notifications = dontCheck super.hasql-notifications;
|
hasql-notifications = dontCheck super.hasql-notifications;
|
||||||
hasql-pool = dontCheck super.hasql-pool;
|
hasql-pool = dontCheck super.hasql-pool;
|
||||||
|
hasql-pool_0_10 = dontCheck super.hasql-pool_0_10;
|
||||||
hasql-transaction = dontCheck super.hasql-transaction;
|
hasql-transaction = dontCheck super.hasql-transaction;
|
||||||
|
|
||||||
|
# Test suite requires a running postgresql server,
|
||||||
|
# avoid compiling twice by providing executable as a separate output (with small closure size),
|
||||||
|
# generate shell completion
|
||||||
|
postgrest = lib.pipe super.postgrest [
|
||||||
|
dontCheck
|
||||||
|
enableSeparateBinOutput
|
||||||
|
(self.generateOptparseApplicativeCompletions [ "postgrest" ])
|
||||||
|
];
|
||||||
|
|
||||||
# Tries to mess with extended POSIX attributes, but can't in our chroot environment.
|
# Tries to mess with extended POSIX attributes, but can't in our chroot environment.
|
||||||
xattr = dontCheck super.xattr;
|
xattr = dontCheck super.xattr;
|
||||||
|
|
||||||
@ -1090,7 +1102,6 @@ self: super: builtins.intersectAttrs super {
|
|||||||
'';
|
'';
|
||||||
}) (lib.pipe
|
}) (lib.pipe
|
||||||
(super.cachix.override {
|
(super.cachix.override {
|
||||||
hnix-store-core = self.hnix-store-core_0_7_0_0;
|
|
||||||
nix = self.hercules-ci-cnix-store.nixPackage;
|
nix = self.hercules-ci-cnix-store.nixPackage;
|
||||||
})
|
})
|
||||||
[
|
[
|
||||||
|
2150
pkgs/development/haskell-modules/hackage-packages.nix
generated
2150
pkgs/development/haskell-modules/hackage-packages.nix
generated
File diff suppressed because it is too large
Load Diff
@ -354,7 +354,12 @@ rec {
|
|||||||
/* Add a dummy command to trigger a build despite an equivalent
|
/* Add a dummy command to trigger a build despite an equivalent
|
||||||
earlier build that is present in the store or cache.
|
earlier build that is present in the store or cache.
|
||||||
*/
|
*/
|
||||||
triggerRebuild = i: overrideCabal (drv: { postUnpack = ": trigger rebuild ${toString i}"; });
|
triggerRebuild = i: overrideCabal (drv: {
|
||||||
|
postUnpack = drv.postUnpack or "" + ''
|
||||||
|
|
||||||
|
# trigger rebuild ${toString i}
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
|
||||||
/* Override the sources for the package and optionally the version.
|
/* Override the sources for the package and optionally the version.
|
||||||
This also takes of removing editedCabalFile.
|
This also takes of removing editedCabalFile.
|
||||||
|
@ -1,79 +0,0 @@
|
|||||||
From daae423d339e820e3fe8c720bd568cc49eae3fde Mon Sep 17 00:00:00 2001
|
|
||||||
From: Rodney Lorrimar <dev@rodney.id.au>
|
|
||||||
Date: Tue, 25 Jul 2023 16:46:36 +0800
|
|
||||||
Subject: [PATCH] GHC 9.4 compatibility
|
|
||||||
|
|
||||||
This is commit b89eed9 from haskell-nix/hnix master branch,
|
|
||||||
backported to 0.16.
|
|
||||||
|
|
||||||
The patch should be removed once hnix-0.17 is released.
|
|
||||||
|
|
||||||
---
|
|
||||||
src/Nix/Fresh.hs | 2 +-
|
|
||||||
src/Nix/Lint.hs | 2 +-
|
|
||||||
src/Nix/Utils.hs | 2 +-
|
|
||||||
src/Nix/Value.hs | 2 +-
|
|
||||||
4 files changed, 4 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/Nix/Fresh.hs b/src/Nix/Fresh.hs
|
|
||||||
index fdd20c4a..4b55de4e 100644
|
|
||||||
--- a/src/Nix/Fresh.hs
|
|
||||||
+++ b/src/Nix/Fresh.hs
|
|
||||||
@@ -14,7 +14,7 @@ import Control.Monad.Catch ( MonadCatch
|
|
||||||
, MonadMask
|
|
||||||
, MonadThrow
|
|
||||||
)
|
|
||||||
-import Control.Monad.Except ( MonadFix )
|
|
||||||
+import Control.Monad.Fix ( MonadFix )
|
|
||||||
import Control.Monad.Ref ( MonadAtomicRef(..)
|
|
||||||
, MonadRef(Ref)
|
|
||||||
)
|
|
||||||
diff --git a/src/Nix/Lint.hs b/src/Nix/Lint.hs
|
|
||||||
index 2c207c91..3da8c298 100644
|
|
||||||
--- a/src/Nix/Lint.hs
|
|
||||||
+++ b/src/Nix/Lint.hs
|
|
||||||
@@ -498,7 +498,7 @@ instance MonadThrow (Lint s) where
|
|
||||||
throwM e = Lint $ ReaderT $ const (throw e)
|
|
||||||
|
|
||||||
instance MonadCatch (Lint s) where
|
|
||||||
- catch _m _h = Lint $ ReaderT $ const (fail "Cannot catch in 'Lint s'")
|
|
||||||
+ catch _m _h = Lint $ ReaderT $ const (error "Cannot catch in 'Lint s'")
|
|
||||||
|
|
||||||
runLintM :: Options -> Lint s a -> ST s a
|
|
||||||
runLintM opts action =
|
|
||||||
diff --git a/src/Nix/Utils.hs b/src/Nix/Utils.hs
|
|
||||||
index 8f53b3a7..af370c21 100644
|
|
||||||
--- a/src/Nix/Utils.hs
|
|
||||||
+++ b/src/Nix/Utils.hs
|
|
||||||
@@ -67,6 +67,7 @@ import Relude hiding ( pass
|
|
||||||
import Data.Binary ( Binary )
|
|
||||||
import Data.Data ( Data )
|
|
||||||
import Codec.Serialise ( Serialise )
|
|
||||||
+import Control.Monad ( foldM )
|
|
||||||
import Control.Monad.Fix ( MonadFix(..) )
|
|
||||||
import Control.Monad.Free ( Free(..) )
|
|
||||||
import Control.Monad.Trans.Control ( MonadTransControl(..) )
|
|
||||||
@@ -84,7 +85,6 @@ import Lens.Family2.Stock ( _1
|
|
||||||
, _2
|
|
||||||
)
|
|
||||||
import qualified System.FilePath as FilePath
|
|
||||||
-import Control.Monad.List (foldM)
|
|
||||||
|
|
||||||
#if ENABLE_TRACING
|
|
||||||
import qualified Relude.Debug as X
|
|
||||||
diff --git a/src/Nix/Value.hs b/src/Nix/Value.hs
|
|
||||||
index aafdc25a..28b9508c 100644
|
|
||||||
--- a/src/Nix/Value.hs
|
|
||||||
+++ b/src/Nix/Value.hs
|
|
||||||
@@ -554,7 +554,7 @@ liftNValue
|
|
||||||
=> (forall x . u m x -> m x)
|
|
||||||
-> NValue t f m
|
|
||||||
-> NValue t f (u m)
|
|
||||||
-liftNValue = (`hoistNValue` lift)
|
|
||||||
+liftNValue f = hoistNValue f lift
|
|
||||||
|
|
||||||
|
|
||||||
-- *** MonadTransUnlift
|
|
||||||
--
|
|
||||||
2.40.1
|
|
||||||
|
|
@ -0,0 +1,31 @@
|
|||||||
|
diff -Naurd PortMidi-0.2.0.0/portmidi/pm_linux/pmlinuxalsa.c PortMidi-0.2.0.0-alsafix/portmidi/pm_linux/pmlinuxalsa.c
|
||||||
|
--- PortMidi-0.2.0.0/portmidi/pm_linux/pmlinuxalsa.c 2023-12-13 11:35:12.517413022 +0000
|
||||||
|
+++ PortMidi-0.2.0.0-alsafix/portmidi/pm_linux/pmlinuxalsa.c 2023-12-13 11:35:12.565413037 +0000
|
||||||
|
@@ -719,6 +719,18 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
+static void set_alsa_plugin_path( void )
|
||||||
|
+{
|
||||||
|
+ char *existing;
|
||||||
|
+
|
||||||
|
+ existing = getenv("ALSA_PLUGIN_DIR");
|
||||||
|
+ if (NULL != existing) {
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+ setenv("ALSA_PLUGIN_DIR", "@alsa_plugin_dir@", 0);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+
|
||||||
|
PmError pm_linuxalsa_init( void )
|
||||||
|
{
|
||||||
|
int err;
|
||||||
|
@@ -726,6 +738,8 @@
|
||||||
|
snd_seq_port_info_t *pinfo;
|
||||||
|
unsigned int caps;
|
||||||
|
|
||||||
|
+ set_alsa_plugin_path();
|
||||||
|
+
|
||||||
|
/* Previously, the last parameter was SND_SEQ_NONBLOCK, but this
|
||||||
|
* would cause messages to be dropped if the ALSA buffer fills up.
|
||||||
|
* The correct behavior is for writes to block until there is
|
@ -1,6 +1,6 @@
|
|||||||
{ mkDerivation }:
|
{ mkDerivation }:
|
||||||
|
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
version = "24.3.4.14";
|
version = "24.3.4.15";
|
||||||
sha256 = "sha256-+OEA7bVomZox/iHhkRQPt91WayyxZQDkDI92B5Ez24Q=";
|
sha256 = "sha256-1a/5jxTLDWlQHEMfKZoAO3wrg1U0wYBf+xXhyO/EnXA=";
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{ mkDerivation }:
|
{ mkDerivation }:
|
||||||
|
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
version = "25.3.2.7";
|
version = "25.3.2.8";
|
||||||
sha256 = "sha256-JMHfnnvjAIrJ2YhSzk1qVeS7qGx2HDf2J+8+WFD5Bv8=";
|
sha256 = "sha256-pS96jO1VBqTGWzaZO4XpXI9V+Whse4PjGnJRunFC98s=";
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{ mkDerivation }:
|
{ mkDerivation }:
|
||||||
|
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
version = "26.2";
|
version = "26.2.1";
|
||||||
sha256 = "sha256-mk8vPgWFTMo4oPY/OIdboYMTyxG/22Ow4EYs1b+nHuM=";
|
sha256 = "sha256-4aQ4YTeiT32lZ9ZFi7/vV7O4fARYVLbGLtHm5alSDyw=";
|
||||||
}
|
}
|
||||||
|
@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "1lab";
|
pname = "1lab";
|
||||||
version = "unstable-2023-10-11";
|
version = "unstable-2023-12-04";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "plt-amy";
|
owner = "plt-amy";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "c6e0c3c714486fd6c89ace31443428ba48871685";
|
rev = "47c2a96220b4d14419e5ddb973bc1fa06933e723";
|
||||||
hash = "sha256-PC75NtT0e99HVyFedox+6xz/CY2zP2g4Vzqruj5Bjhc=";
|
hash = "sha256-0U6s6sXdynk2IWRBDXBJCf7Gc+gE8AhR1PXZl0DS4yU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# We don't need anything in support; avoid installing LICENSE.agda
|
# We don't need anything in support; avoid installing LICENSE.agda
|
||||||
@ -16,7 +16,7 @@ mkDerivation rec {
|
|||||||
rm -rf support
|
rm -rf support
|
||||||
'';
|
'';
|
||||||
|
|
||||||
libraryName = "cubical-1lab";
|
libraryName = "1lab";
|
||||||
libraryFile = "1lab.agda-lib";
|
libraryFile = "1lab.agda-lib";
|
||||||
everythingFile = "src/index.lagda.md";
|
everythingFile = "src/index.lagda.md";
|
||||||
|
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
{ lib, mkDerivation, fetchFromGitHub, standard-library }:
|
{ lib, mkDerivation, fetchFromGitHub, standard-library }:
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
version = "0.1.7.2";
|
version = "0.2.0";
|
||||||
pname = "agda-categories";
|
pname = "agda-categories";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "agda";
|
owner = "agda";
|
||||||
repo = "agda-categories";
|
repo = "agda-categories";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-lQzAfPqkdb0pG5seYVODPngSLrJxhbH1jf0K6qqoj3c=";
|
sha256 = "sha256-GQuQxzYSQxAIVSJ1vf0blRC0juoxAqD1AHW66H/6NSk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
@ -26,6 +26,10 @@ mkDerivation rec {
|
|||||||
find src -name '*.agda' | sed -e 's|^src/[/]*|import |' -e 's|/|.|g' -e 's/.agda//' -e '/import Everything/d' | LC_COLLATE='C' sort > Everything.agda
|
find src -name '*.agda' | sed -e 's|^src/[/]*|import |' -e 's|/|.|g' -e 's/.agda//' -e '/import Everything/d' | LC_COLLATE='C' sort > Everything.agda
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# agda: Heap exhausted;
|
||||||
|
# agda: Current maximum heap size is 4294967296 bytes (4096 MB).
|
||||||
|
GHCRTS = "-M5G";
|
||||||
|
|
||||||
buildInputs = [ standard-library ];
|
buildInputs = [ standard-library ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
@ -24,5 +24,6 @@ mkDerivation rec {
|
|||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
maintainers = with maintainers; [ turion ];
|
maintainers = with maintainers; [ turion ];
|
||||||
|
broken = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{ fetchFromGitHub, lib, mkDerivation, standard-library }:
|
{ fetchFromGitHub, lib, mkDerivation, standard-library }:
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
version = "0.4.1";
|
version = "0.5.0";
|
||||||
pname = "functional-linear-algebra";
|
pname = "functional-linear-algebra";
|
||||||
|
|
||||||
buildInputs = [ standard-library ];
|
buildInputs = [ standard-library ];
|
||||||
@ -10,7 +10,7 @@ mkDerivation rec {
|
|||||||
repo = "functional-linear-algebra";
|
repo = "functional-linear-algebra";
|
||||||
owner = "ryanorendorff";
|
owner = "ryanorendorff";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "GrTeMEHEXb0t2RgHWiGfvvofNYl8YYaaoCE18JrG6Q4=";
|
sha256 = "sha256-3nme/eH4pY6bD0DkhL4Dj/Vp/WnZqkQtZTNk+n1oAyY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
|
@ -2,18 +2,18 @@
|
|||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "standard-library";
|
pname = "standard-library";
|
||||||
version = "1.7.3";
|
version = "2.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
repo = "agda-stdlib";
|
repo = "agda-stdlib";
|
||||||
owner = "agda";
|
owner = "agda";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-vtL6VPvTXhl/mepulUm8SYyTjnGsqno4RHDmTIy22Xg=";
|
hash = "sha256-TjGvY3eqpF+DDwatT7A78flyPcTkcLHQ1xcg+MKgCoE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ (ghcWithPackages (self : [ self.filemanip ])) ];
|
nativeBuildInputs = [ (ghcWithPackages (self : [ self.filemanip ])) ];
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
runhaskell GenerateEverything.hs
|
runhaskell GenerateEverything.hs --include-deprecated
|
||||||
# We will only build/consider Everything.agda, in particular we don't want Everything*.agda
|
# We will only build/consider Everything.agda, in particular we don't want Everything*.agda
|
||||||
# do be copied to the store.
|
# do be copied to the store.
|
||||||
rm EverythingSafe.agda
|
rm EverythingSafe.agda
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchurl
|
, fetchurl
|
||||||
|
, fetchpatch2
|
||||||
, meson
|
, meson
|
||||||
, ninja
|
, ninja
|
||||||
, pkg-config
|
, pkg-config
|
||||||
@ -40,6 +41,19 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
# but not from its own datadr (it assumes it will be in XDG_DATA_DIRS).
|
# but not from its own datadr (it assumes it will be in XDG_DATA_DIRS).
|
||||||
# Since this is not generally true with Nix, let’s add $out/share unconditionally.
|
# Since this is not generally true with Nix, let’s add $out/share unconditionally.
|
||||||
./4.x-nix_share_path.patch
|
./4.x-nix_share_path.patch
|
||||||
|
|
||||||
|
# nix.lang: Add Nix syntax highlighting
|
||||||
|
# https://gitlab.gnome.org/GNOME/gtksourceview/-/merge_requests/303
|
||||||
|
(fetchpatch2 {
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/gtksourceview/-/commit/685b3bd08869c2aefe33fad696a7f5f2dc831016.patch";
|
||||||
|
hash = "sha256-yeYXJ2l/QS857C4UXOnMFyh0JsptA0TQt0lfD7wN5ic=";
|
||||||
|
})
|
||||||
|
|
||||||
|
# nix.lang: fix section name
|
||||||
|
(fetchpatch2 {
|
||||||
|
url = "https://gitlab.gnome.org/GNOME/gtksourceview/-/commit/1dbbb01da98140e0b2d5d0c6c2df29247650ed83.patch";
|
||||||
|
hash = "sha256-6HxLKQyI5DDvmKhmldQlwVPV62RfFa2gwWbcHA2cICs=";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -16,13 +16,13 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "libayatana-common";
|
pname = "libayatana-common";
|
||||||
version = "0.9.9";
|
version = "0.9.10";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "AyatanaIndicators";
|
owner = "AyatanaIndicators";
|
||||||
repo = "libayatana-common";
|
repo = "libayatana-common";
|
||||||
rev = finalAttrs.version;
|
rev = finalAttrs.version;
|
||||||
hash = "sha256-IBLJPgi+dKZKbR0Yjr2aNjCdpY+PE1k9QLSsk++6Wqo=";
|
hash = "sha256-qi3xsnZjqSz3I7O+xPxDnI91qDIA0XFJ3tCQQF84vIg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -8,7 +8,6 @@
|
|||||||
, gnome
|
, gnome
|
||||||
, libsysprof-capture
|
, libsysprof-capture
|
||||||
, sqlite
|
, sqlite
|
||||||
, glib-networking
|
|
||||||
, buildPackages
|
, buildPackages
|
||||||
, gobject-introspection
|
, gobject-introspection
|
||||||
, withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages
|
, withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages
|
||||||
@ -93,9 +92,6 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
propagatedUserEnvPackages = [
|
|
||||||
glib-networking.out
|
|
||||||
];
|
|
||||||
updateScript = gnome.updateScript {
|
updateScript = gnome.updateScript {
|
||||||
attrPath = "libsoup_3";
|
attrPath = "libsoup_3";
|
||||||
packageName = pname;
|
packageName = pname;
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user