From 80ba9a7458ec3a4830ea22c447607255d760ec53 Mon Sep 17 00:00:00 2001 From: Moraxyc Date: Sat, 22 Feb 2025 20:32:02 +0800 Subject: [PATCH 1/2] icbm3d: fix build on gcc-14 --- pkgs/by-name/ic/icbm3d/package.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/by-name/ic/icbm3d/package.nix b/pkgs/by-name/ic/icbm3d/package.nix index 27c398dc641c..ecefe095c3c6 100644 --- a/pkgs/by-name/ic/icbm3d/package.nix +++ b/pkgs/by-name/ic/icbm3d/package.nix @@ -15,6 +15,12 @@ stdenv.mkDerivation rec { buildInputs = [ libX11 ]; + # Function are declared after they are used in the file, this is error since gcc-14. + # randnum.c:25:3: warning: implicit declaration of function 'srand' [-Wimplicit-function-declaration] + # randnum.c:33:7: warning: implicit declaration of function 'rand'; did you mean 'randnum'? [-Wimplicit-function-declaration] + # text.c:34:50: warning: implicit declaration of function 'strlen' [-Wimplicit-function-declaration] + env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; + installPhase = '' mkdir -p $out/bin cp icbm3d $out/bin From 5d913ad309148e97e6b0bb979770f06ce6ddc8e7 Mon Sep 17 00:00:00 2001 From: Moraxyc Date: Sat, 22 Feb 2025 20:39:22 +0800 Subject: [PATCH 2/2] icbm3d: modernize --- pkgs/by-name/ic/icbm3d/package.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/ic/icbm3d/package.nix b/pkgs/by-name/ic/icbm3d/package.nix index ecefe095c3c6..22a2fc0cc044 100644 --- a/pkgs/by-name/ic/icbm3d/package.nix +++ b/pkgs/by-name/ic/icbm3d/package.nix @@ -5,12 +5,13 @@ libX11, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "icbm3d"; version = "0.4"; + src = fetchurl { - url = "ftp://ftp.tuxpaint.org/unix/x/icbm3d/icbm3d.${version}.tar.gz"; - sha256 = "1z9q01mj0v9qbwby5cajjc9wpvdw2ma5v1r639vraxpl9qairm4s"; + url = "ftp://ftp.tuxpaint.org/unix/x/icbm3d/icbm3d.${finalAttrs.version}.tar.gz"; + hash = "sha256-mtQcFU70dpV3GiaHXVQVvO3LE5NSseIXXzhtIGsAOP0="; }; buildInputs = [ libX11 ]; @@ -22,8 +23,11 @@ stdenv.mkDerivation rec { env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; installPhase = '' - mkdir -p $out/bin - cp icbm3d $out/bin + runHook preInstall + + install -Dm755 -t $out/bin icbm3d + + runHook postInstall ''; meta = { @@ -33,4 +37,4 @@ stdenv.mkDerivation rec { license = lib.licenses.gpl2Plus; platforms = lib.platforms.linux; }; -} +})