From 85e1bcb3a644cf79e69da61b81ee936566f7bab9 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Thu, 24 Apr 2025 13:08:45 +0200 Subject: [PATCH 1/2] mono: 6.12.0.182 -> 6.14.0 The original Mono project [1] was archived. It is now maintained by WineHQ on their gitlab [2]. This changes the homepage for the new mono package, and moves the source fetchers to the version profiles. [1] https://www.mono-project.com/ [2] https://gitlab.winehq.org/mono/mono --- pkgs/development/compilers/mono/4.nix | 8 ++++-- pkgs/development/compilers/mono/5.nix | 8 ++++-- pkgs/development/compilers/mono/6.nix | 23 +++++++++++----- pkgs/development/compilers/mono/generic.nix | 30 ++++++++++++--------- 4 files changed, 46 insertions(+), 23 deletions(-) diff --git a/pkgs/development/compilers/mono/4.nix b/pkgs/development/compilers/mono/4.nix index 0b87dba569f9..5d8c6052ef17 100644 --- a/pkgs/development/compilers/mono/4.nix +++ b/pkgs/development/compilers/mono/4.nix @@ -2,11 +2,11 @@ callPackage, stdenv, lib, + fetchurl, }: -callPackage ./generic.nix { +callPackage ./generic.nix rec { version = "4.8.1.0"; - sha256 = "1vyvp2g28ihcgxgxr8nhzyzdmzicsh5djzk8dk1hj5p5f2k3ijqq"; enableParallelBuilding = false; # #32386, https://hydra.nixos.org/build/65600645 extraPatches = lib.optionals stdenv.hostPlatform.isLinux [ ./mono4-glibc.patch ]; env.NIX_CFLAGS_COMPILE = toString [ @@ -16,4 +16,8 @@ callPackage ./generic.nix { "-Wno-error=int-conversion" "-Wno-error=return-mismatch" ]; + src = fetchurl { + url = "https://download.mono-project.com/sources/mono/mono-${version}.tar.bz2"; + sha256 = "1vyvp2g28ihcgxgxr8nhzyzdmzicsh5djzk8dk1hj5p5f2k3ijqq"; + }; } diff --git a/pkgs/development/compilers/mono/5.nix b/pkgs/development/compilers/mono/5.nix index a8f1283467e0..f8c58914b65c 100644 --- a/pkgs/development/compilers/mono/5.nix +++ b/pkgs/development/compilers/mono/5.nix @@ -1,10 +1,14 @@ { callPackage, + fetchurl, }: -callPackage ./generic.nix { +callPackage ./generic.nix rec { version = "5.20.1.34"; - sha256 = "12vw5dkhmp1vk9l658pil8jiqirkpdsc5z8dm5mpj595yr6d94fd"; enableParallelBuilding = true; env.NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types -Wno-error=implicit-function-declaration"; + src = fetchurl { + url = "https://download.mono-project.com/sources/mono/mono-${version}.tar.bz2"; + sha256 = "12vw5dkhmp1vk9l658pil8jiqirkpdsc5z8dm5mpj595yr6d94fd"; + }; } diff --git a/pkgs/development/compilers/mono/6.nix b/pkgs/development/compilers/mono/6.nix index d8a8123b5679..e2b684473a93 100644 --- a/pkgs/development/compilers/mono/6.nix +++ b/pkgs/development/compilers/mono/6.nix @@ -1,10 +1,21 @@ { callPackage, + fetchurl, + fetchpatch, }: -callPackage ./generic.nix { - version = "6.12.0.182"; - srcArchiveSuffix = "tar.xz"; - sha256 = "sha256-VzZqarTztezxEdSFSAMWFbOhANuHxnn8AG6Mik79lCQ="; - enableParallelBuilding = true; -} +callPackage ./generic.nix (rec { + version = "6.14.0"; + src = fetchurl { + url = "https://dl.winehq.org/mono/sources/mono/mono-${version}.tar.xz"; + hash = "sha256-bdZLOQD15dX1UBbYnM92NchznLszzbgcHDthYi6R1RA="; + }; + extraPatches = [ + # https://gitlab.winehq.org/mono/mono/-/merge_requests/101 + # fixes a pointer cast on aarch64 that causes crashes + (fetchpatch { + url = "https://gitlab.winehq.org/mono/mono/-/commit/2224c6915a98f870cc9a3a9f9e3698e7b20e3d27.patch"; + hash = "sha256-qyc3t1OyDzWBSnNW+W2YpdgFfTBs1Ew13jwdGKs09u0="; + }) + ]; +}) diff --git a/pkgs/development/compilers/mono/generic.nix b/pkgs/development/compilers/mono/generic.nix index ebccbf326f03..72f560c7e456 100644 --- a/pkgs/development/compilers/mono/generic.nix +++ b/pkgs/development/compilers/mono/generic.nix @@ -1,7 +1,6 @@ { lib, stdenv, - fetchurl, bison, pkg-config, glib, @@ -15,7 +14,7 @@ cacert, python3, version, - sha256, + src, autoconf, libtool, automake, @@ -23,19 +22,13 @@ which, gnumake42, enableParallelBuilding ? true, - srcArchiveSuffix ? "tar.bz2", extraPatches ? [ ], env ? { }, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "mono"; - inherit version env; - - src = fetchurl { - inherit sha256; - url = "https://download.mono-project.com/sources/mono/${pname}-${version}.${srcArchiveSuffix}"; - }; + inherit version src env; strictDeps = true; nativeBuildInputs = [ @@ -49,6 +42,7 @@ stdenv.mkDerivation rec { python3 which gnumake42 + gettext ]; buildInputs = [ glib @@ -113,12 +107,22 @@ stdenv.mkDerivation rec { ( stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64 - && lib.versionOlder version "6.12.0.129" + && lib.versionOlder finalAttrs.version "6.12.0.129" ) || !stdenv.buildPlatform.canExecute stdenv.hostPlatform; - homepage = "https://mono-project.com/"; + homepage = + if lib.versionOlder finalAttrs.version "6.14.0" then + "https://mono-project.com/" + else + "https://gitlab.winehq.org/mono/mono"; description = "Cross platform, open source .NET development framework"; platforms = with platforms; darwin ++ linux; + knownVulnerabilities = lib.optionals (lib.versionOlder finalAttrs.version "6.14.0") [ + '' + mono was archived upstream, see https://www.mono-project.com/ + While WineHQ has taken over development, consider using 6.14.0 or newer. + '' + ]; maintainers = with maintainers; [ thoughtpolice obadz @@ -142,4 +146,4 @@ stdenv.mkDerivation rec { ]; mainProgram = "mono"; }; -} +}) From b0319a96fbb1ad3513269e370c855cfd77b1ba02 Mon Sep 17 00:00:00 2001 From: Grimmauld Date: Sat, 17 May 2025 16:45:43 +0200 Subject: [PATCH 2/2] mono: 6.14.0 -> 6.14.1 --- pkgs/development/compilers/mono/6.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/mono/6.nix b/pkgs/development/compilers/mono/6.nix index e2b684473a93..dd525c645214 100644 --- a/pkgs/development/compilers/mono/6.nix +++ b/pkgs/development/compilers/mono/6.nix @@ -4,11 +4,11 @@ fetchpatch, }: -callPackage ./generic.nix (rec { - version = "6.14.0"; +callPackage ./generic.nix rec { + version = "6.14.1"; src = fetchurl { url = "https://dl.winehq.org/mono/sources/mono/mono-${version}.tar.xz"; - hash = "sha256-bdZLOQD15dX1UBbYnM92NchznLszzbgcHDthYi6R1RA="; + hash = "sha256-MCTJfAvIy81hHEAdX5lFKHBBCM6zHzGyjepHgwBNCCA="; }; extraPatches = [ # https://gitlab.winehq.org/mono/mono/-/merge_requests/101 @@ -18,4 +18,4 @@ callPackage ./generic.nix (rec { hash = "sha256-qyc3t1OyDzWBSnNW+W2YpdgFfTBs1Ew13jwdGKs09u0="; }) ]; -}) +}