about summary refs log tree commit diff
path: root/pkgs/servers/mail/mlmmj/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/servers/mail/mlmmj/default.nix')
-rw-r--r--pkgs/servers/mail/mlmmj/default.nix36
1 files changed, 20 insertions, 16 deletions
diff --git a/pkgs/servers/mail/mlmmj/default.nix b/pkgs/servers/mail/mlmmj/default.nix
index 2795ba1af358a..76ce2d0115998 100644
--- a/pkgs/servers/mail/mlmmj/default.nix
+++ b/pkgs/servers/mail/mlmmj/default.nix
@@ -1,27 +1,32 @@
-{ lib, stdenv, fetchurl }:
-
+{
+  lib,
+  stdenv,
+  fetchFromGitea,
+  autoreconfHook,
+  atf,
+  pkg-config,
+  kyua,
+}:
 stdenv.mkDerivation rec {
-
   pname = "mlmmj";
-  version = "1.3.0";
-
-  src = fetchurl {
-    url = "http://mlmmj.org/releases/${pname}-${version}.tar.gz";
-    sha256 = "1sghqvwizvm1a9w56r34qy5njaq1c26bagj85r60h32gh3fx02bn";
+  version = "1.4.7";
+
+  src = fetchFromGitea {
+    domain = "codeberg.org";
+    owner = pname;
+    repo = pname;
+    rev = "refs/tags/RELEASE_" + lib.replaceStrings ["."] ["_"] version;
+    hash = "sha256-QetxCxny9elPetKuAsgKF0xTov1bNIRxi7gWhv6dYyU=";
   };
 
+  nativeBuildInputs = [autoreconfHook atf pkg-config kyua];
+
   configureFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     # AC_FUNC_MALLOC is broken on cross builds.
     "ac_cv_func_malloc_0_nonnull=yes"
     "ac_cv_func_realloc_0_nonnull=yes"
   ];
 
-  # Workaround build failure on -fno-common toolchains like upstream
-  # gcc-10. Otherwise build fails as:
-  #   ld: getlistdelim.o:/build/mlmmj-1.3.0/src/../include/mlmmj.h:84: multiple definition of
-  #     `subtype_strs'; mlmmj-send.o:/build/mlmmj-1.3.0/src/../include/mlmmj.h:84: first defined here
-  env.NIX_CFLAGS_COMPILE = "-fcommon";
-
   postInstall = ''
     # grab all documentation files
     docfiles=$(find -maxdepth 1 -name "[[:upper:]][[:upper:]]*")
@@ -31,9 +36,8 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://mlmmj.org";
     description = "Mailing List Management Made Joyful";
-    maintainers = [ maintainers.edwtjo ];
+    maintainers = [maintainers.edwtjo];
     platforms = platforms.linux;
     license = licenses.mit;
   };
-
 }