]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - pkgs/pure-ftpd/default.nix
Continue moving overlays to dedicated directory
[perso/Immae/Config/Nix.git] / pkgs / pure-ftpd / default.nix
diff --git a/pkgs/pure-ftpd/default.nix b/pkgs/pure-ftpd/default.nix
new file mode 100644 (file)
index 0000000..37ce695
--- /dev/null
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, openssl, postgresql, openldap }:
+
+stdenv.mkDerivation rec {
+  name = "pure-ftpd-1.0.47";
+
+  src = fetchurl {
+    url = "https://download.pureftpd.org/pub/pure-ftpd/releases/${name}.tar.gz";
+    sha256 = "1b97ixva8m10vln8xrfwwwzi344bkgxqji26d0nrm1yzylbc6h27";
+  };
+
+  preConfigure = ''
+    sed -i -e "s#FTPuid#immaeFtpUid#" src/log_ldap.h
+    sed -i -e "s#FTPgid#immaeFtpGid#" src/log_ldap.h
+    '';
+  postConfigure = ''
+    sed -i 's/define MAX_DATA_SIZE (40/define MAX_DATA_SIZE (70/' src/ftpd.h
+    '';
+  buildInputs = [ openssl postgresql openldap ];
+
+  configureFlags = [ "--with-everything" "--with-tls" "--with-pgsql" "--with-ldap" ];
+
+  meta = with stdenv.lib; {
+    description = "A free, secure, production-quality and standard-conformant FTP server";
+    homepage = https://www.pureftpd.org;
+    license = licenses.isc; # with some parts covered by BSD3(?)
+    maintainers = [ maintainers.lethalman ];
+    platforms = platforms.linux;
+  };
+}