From unknown Sat Jun 14 14:28:26 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#77926] [PATCH] gnu: Add proftpd Resent-From: Grigory Shepelev Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 19 Apr 2025 18:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 77926 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 77926@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.174508713524833 (code B ref -1); Sat, 19 Apr 2025 18:26:01 +0000 Received: (at submit) by debbugs.gnu.org; 19 Apr 2025 18:25:35 +0000 Received: from localhost ([127.0.0.1]:37098 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1u6Csg-0006SR-09 for submit@debbugs.gnu.org; Sat, 19 Apr 2025 14:25:34 -0400 Received: from lists.gnu.org ([2001:470:142::17]:45466) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1u6Csa-0006Pa-GM for submit@debbugs.gnu.org; Sat, 19 Apr 2025 14:25:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1u6CsP-0002Pv-TF for guix-patches@gnu.org; Sat, 19 Apr 2025 14:25:17 -0400 Received: from mail-lf1-x129.google.com ([2a00:1450:4864:20::129]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u6CsN-0003GR-9M for guix-patches@gnu.org; Sat, 19 Apr 2025 14:25:17 -0400 Received: by mail-lf1-x129.google.com with SMTP id 2adb3069b0e04-54afb5fcebaso3746935e87.3 for ; Sat, 19 Apr 2025 11:25:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1745087112; x=1745691912; darn=gnu.org; h=message-id:date:mime-version:subject:to:from:from:to:cc:subject :date:message-id:reply-to; bh=xbRUgxwnq1leIgSZ7vejbSqMyDTeIRnFMpcRAegvoLo=; b=Y0hfGaSUW/CAfPJowoBG6u6RowpzFLjHTP8ikoRfn7ymZFYRIhwYs+PNnsO9lIoo9z GtHdG82wteBlO/G6QfLraXHcEoPaCeGgnDHbK0Y4hxZtGxQ7w3p3m2pyF788row9o4Nx UYRPEVmm1Pz7EOIKJrI8ZO4nfvBpkI57JmMoBEoxnRVGalJWMcRNQgFeMn7Mm4xoc0Du QSSiEqo3XrMkR+NZTCeiXk2XBmyD1HU4qlNVZYBd7F+xk0VHbh8jpveyp9JTHj0cS1mE YjpE4bQ2403pWgFdNA+mM/bYTNZM/BWSL8InTEnrnDvKDcte4Hg6ofV5fjlKLS056q4Q JyxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745087112; x=1745691912; h=message-id:date:mime-version:subject:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=xbRUgxwnq1leIgSZ7vejbSqMyDTeIRnFMpcRAegvoLo=; b=mbasB6EqMjLIX6OLOvHYuUHjg4zKGTwoV7cFG51MGB/PmRsts9L1zKlog8WKklX8VZ Gyjp+h3nFPXx3nbBDhzJvAbslbeARBGoYQK5JEplB+pTdjbWfUDZ8z3C/phIpaeRQWO4 ClNsTkFcNRBPqgJ+b90QfnXLXbZ3+aS+R920dPPmWELsZj2U9ZZMY5SK/2nsaHA4gtxz 5hd1cCuetUL15zHS864iu58INAm5CC8zeBNLcZovJremWknDS5e0uSvYqAvvQVbIdHfM 51feKyfyipWG4DpsWSE0esQLtPFiZQ8K3gKLMr4s/ITJVFg07WDsNgTgpbwWV8c9tANd 4qvA== X-Gm-Message-State: AOJu0YxQ32i4K4yxSV0EcwCcdilRdMDcR9QgjEg+HgF8318+7v6tJvpN /AcrxIbALru/bgdJJ34vsBbCzzKQgFxFc6JQOpatr/R8P31rbQrE8vKnewHEmqk= X-Gm-Gg: ASbGncsUuMW5hHp4US98ReN+y03GfmtYvziF1p6kCro3QLUSZOObAXY/KsTVG0JoFQv k/bdqPjeJFmVqAaHS6dfWzfbZDAYs5rJmCpycFRPYnhmtH0+1unQm7rCDlIlaLJCY16AabAC2vl 732YjM3fRoDe6q3aU4XRS7uzPKm1iJMUThx0AaxSFe3YP/A5V0XI8Y2CrkKn7v35g00j81+XcOu 4o7Zt/73dMDuas+McCl92/gjxnDKvx4upoaRjWeQMm0l4uHV8E0qNRVhw4aYN7WMBbVk3ckKA89 bD6pZZ97xMfnm/qSjYBgM0KD8Y5TSeTWnBKC X-Google-Smtp-Source: AGHT+IEZjn47QA1m6u+S++D1GS5UPq1w7HDE4heqxuREW+9A2hZYQ8PS0y2pJ+kHsvOqdVI1WIM+Dw== X-Received: by 2002:a05:6512:118d:b0:54a:fa5a:e9b1 with SMTP id 2adb3069b0e04-54d6e61cd68mr1843983e87.10.1745087111991; Sat, 19 Apr 2025 11:25:11 -0700 (PDT) Received: from localhost ([82.151.112.249]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-54d6e5d0837sm484727e87.118.2025.04.19.11.25.10 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 19 Apr 2025 11:25:10 -0700 (PDT) From: Grigory Shepelev MIME-Version: 1.0 Content-Type: text/plain Date: Mon, 14 Apr 2025 21:00:11 +0300 Message-ID: <878qnw101p.fsf@gmail.com> Received-SPF: pass client-ip=2a00:1450:4864:20::129; envelope-from=shegeley@gmail.com; helo=mail-lf1-x129.google.com X-Spam_score_int: 13 X-Spam_score: 1.3 X-Spam_bar: + X-Spam_report: (1.3 / 5.0 requ) BAYES_00=-1.9, DATE_IN_PAST_96_XX=3.405, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: 3.0 (+++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: Notes: 1. "no-install-user.patch" is stolen from nixpkgs 2. By default it looks for ScoreboardFile file in $output/var/ and won't find it 3. By default tries to setup PidFile in $CWD/ [...] Content analysis details: (3.0 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (shegeley[at]gmail.com) -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2001:470:142:0:0:0:0:17 listed in] [list.dnswl.org] 1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) -0.0 SPF_HELO_PASS SPF: HELO matches SPF record 2.1 DATE_IN_PAST_96_XX Date: is 96 hours or more before Received: date X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 2.0 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: Notes: 1. "no-install-user.patch" is stolen from nixpkgs 2. By default it looks for ScoreboardFile file in $output/var/ and won't find it 3. By default tries to setup PidFile in $CWD/ [...] Content analysis details: (2.0 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2001:470:142:0:0:0:0:17 listed in] [list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (shegeley[at]gmail.com) 1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) -0.0 SPF_HELO_PASS SPF: HELO matches SPF record 2.1 DATE_IN_PAST_96_XX Date: is 96 hours or more before Received: date -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager Notes: 1. "no-install-user.patch" is stolen from nixpkgs 2. By default it looks for ScoreboardFile file in $output/var/ and won't find it 3. By default tries to setup PidFile in $CWD/var/proftpd.pid 4. By default mod_delay.c is on and proftpd looks for DelayTable file in $output/var/share Example configuration that disables all of that above: #+begin_src conf ServerName "Secure FTP Server" ServerType standalone DefaultServer on ScoreboardFile off # won't find $output/var/ PidFile /var/proftpd.pid # will try to launch in $CWD/var/proftpd.pid # http://proftpd.org/docs/modules/mod_delay.html#DelayTable # won't find delaytable in $output/var/share DelayEngine off # very minor security consern #+end_src Change-Id: Ic96745df7ef23664099f73d7130688151c5fc128 --- gnu/packages/ftp.scm | 31 ++++ gnu/packages/patches/no-install-user.patch | 189 +++++++++++++++++++++ 2 files changed, 220 insertions(+) create mode 100644 gnu/packages/patches/no-install-user.patch diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index 2df6797c42..0027e3dfbc 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -25,6 +25,7 @@ (define-module (gnu packages ftp) #:use-module ((guix licenses) #:select (gpl2 gpl2+ gpl3+ clarified-artistic)) + #:use-module (gnu packages perl) #:use-module (guix build-system gnu) #:use-module (guix download) #:use-module (guix gexp) @@ -334,3 +335,33 @@ (define-public vsftpd guarantee.") (home-page "https://security.appspot.com/vsftpd.html") (license gpl2))) ; with OpenSSL exception + +(define-public proftpd + (package + (name "proftpd") + (version "1.3.9") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/proftpd/proftpd") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (patches (search-patches "no-install-user.patch")) + (sha256 + (base32 + "0zgx652qdwj2xkc7218v74x919dxmcs3q5s61v1kpdcw8f9v7370")))) + (build-system gnu-build-system) + (inputs (list libcap linux-pam openssl perl + libxcrypt ncurses zlib libsodium)) + (arguments + (list + #:configure-flags #~(list "--enable-openssl" + "--with-modules=mod_sftp"))) + (synopsis "Highly configurable GPL-licensed FTP server software") + (description + "ProFTPD grew out of the desire to have a secure and configurable FTP server, and out of a significant admiration of the Apache web server. + +ProFTPD is not a hack based on any other server, it's an independent source tree from the ground up. A number of well known and high traffic sites use ProFTPD.") + (home-page "http://www.proftpd.org/") + (license gpl2+))) diff --git a/gnu/packages/patches/no-install-user.patch b/gnu/packages/patches/no-install-user.patch new file mode 100644 index 0000000000..9a8e8edd04 --- /dev/null +++ b/gnu/packages/patches/no-install-user.patch @@ -0,0 +1,189 @@ +diff --git a/Make.rules.in b/Make.rules.in +index 2666b2c..bce4b2b 100644 +--- a/Make.rules.in ++++ b/Make.rules.in +@@ -30,9 +30,9 @@ INSTALL=@INSTALL@ + INSTALL_STRIP=@INSTALL_STRIP@ + INSTALL_USER=@install_user@ + INSTALL_GROUP=@install_group@ +-INSTALL_BIN=$(INSTALL) $(INSTALL_STRIP) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755 +-INSTALL_SBIN=$(INSTALL) $(INSTALL_STRIP) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755 +-INSTALL_MAN=$(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644 ++INSTALL_BIN=$(INSTALL) $(INSTALL_STRIP) -m 0755 ++INSTALL_SBIN=$(INSTALL) $(INSTALL_STRIP) -m 0755 ++INSTALL_MAN=$(INSTALL) -m 0644 + + RM=rm -f + SHELL=@CONFIG_SHELL@ +diff --git a/Makefile.in b/Makefile.in +index 32fd5f3..37c8907 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -129,7 +129,6 @@ check: proftpd$(EXEEXT) + $(DESTDIR)$(localedir) $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd $(DESTDIR)$(libdir) $(DESTDIR)$(pkgconfigdir) $(DESTDIR)$(libdir)/proftpd $(DESTDIR)$(libexecdir) $(DESTDIR)$(localstatedir) $(DESTDIR)$(sysconfdir) $(DESTDIR)$(bindir) $(DESTDIR)$(sbindir) $(DESTDIR)$(mandir) $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man8: + @if [ ! -d $@ ]; then \ + mkdir -p $@; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ + chmod 0755 $@; \ + fi + +@@ -139,7 +138,6 @@ install-proftpd: $(DESTDIR)$(includedir) $(DESTDIR)$(localstatedir) $(DESTDIR)$( + rm -f $(DESTDIR)$(sbindir)/in.proftpd ; \ + fi + ln -s $(top_builddir)/proftpd $(DESTDIR)$(sbindir)/in.proftpd +- -chown -h $(INSTALL_USER):$(INSTALL_GROUP) $(DESTDIR)$(sbindir)/in.proftpd + + install-libs: $(DESTDIR)$(libdir)/proftpd + cd lib/ && $(MAKE) install +@@ -177,11 +175,11 @@ install-utils: $(DESTDIR)$(sbindir) $(DESTDIR)$(bindir) + $(INSTALL_SBIN) $(top_builddir)/ftpshut $(DESTDIR)$(sbindir)/ftpshut + $(INSTALL_BIN) $(top_builddir)/ftptop $(DESTDIR)$(bindir)/ftptop + $(INSTALL_BIN) $(top_builddir)/ftpwho $(DESTDIR)$(bindir)/ftpwho +- $(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755 $(top_builddir)/src/prxs $(DESTDIR)$(bindir)/prxs ++ $(INSTALL) -m 0755 $(top_builddir)/src/prxs $(DESTDIR)$(bindir)/prxs + + install-conf: $(DESTDIR)$(sysconfdir) + if [ ! -f $(DESTDIR)$(sysconfdir)/proftpd.conf ] ; then \ +- $(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644 \ ++ $(INSTALL) -m 0644 \ + $(top_srcdir)/sample-configurations/basic.conf \ + $(DESTDIR)$(sysconfdir)/proftpd.conf ; \ + fi +diff --git a/contrib/Makefile.in b/contrib/Makefile.in +index d1a31af..65d2abc 100644 +--- a/contrib/Makefile.in ++++ b/contrib/Makefile.in +@@ -17,6 +17,6 @@ Makefile: Makefile.in ../config.status + cd ../ && ./config.status + + install-utils: +- $(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755 $(srcdir)/ftpasswd $(DESTDIR)$(bindir)/ftpasswd +- $(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755 $(srcdir)/ftpmail $(DESTDIR)$(bindir)/ftpmail +- $(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0755 $(srcdir)/ftpquota $(DESTDIR)$(bindir)/ftpquota ++ $(INSTALL) -m 0755 $(srcdir)/ftpasswd $(DESTDIR)$(bindir)/ftpasswd ++ $(INSTALL) -m 0755 $(srcdir)/ftpmail $(DESTDIR)$(bindir)/ftpmail ++ $(INSTALL) -m 0755 $(srcdir)/ftpquota $(DESTDIR)$(bindir)/ftpquota +diff --git a/contrib/mod_auth_otp/Makefile.in b/contrib/mod_auth_otp/Makefile.in +index 4026969..f07914c 100644 +--- a/contrib/mod_auth_otp/Makefile.in ++++ b/contrib/mod_auth_otp/Makefile.in +@@ -52,7 +52,6 @@ install: install-headers install-man install-utils + $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd $(DESTDIR)$(mandir) $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man8: + @if [ ! -d $@ ]; then \ + mkdir -p $@; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ + chmod 0755 $@; \ + fi + +diff --git a/contrib/mod_dnsbl/Makefile.in b/contrib/mod_dnsbl/Makefile.in +index 4bb54c4..7d70972 100644 +--- a/contrib/mod_dnsbl/Makefile.in ++++ b/contrib/mod_dnsbl/Makefile.in +@@ -46,7 +46,6 @@ install: install-headers + $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd: + @if [ ! -d $@ ]; then \ + mkdir -p $@; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ + chmod 0755 $@; \ + fi + +diff --git a/contrib/mod_load/Makefile.in b/contrib/mod_load/Makefile.in +index 5ec575e..e7e41cc 100644 +--- a/contrib/mod_load/Makefile.in ++++ b/contrib/mod_load/Makefile.in +@@ -47,7 +47,6 @@ install: install-headers + $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd: + @if [ ! -d $@ ]; then \ + mkdir -p $@; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ + chmod 0755 $@; \ + fi + +diff --git a/contrib/mod_sftp/Makefile.in b/contrib/mod_sftp/Makefile.in +index 4b8df1f..f7526b9 100644 +--- a/contrib/mod_sftp/Makefile.in ++++ b/contrib/mod_sftp/Makefile.in +@@ -65,7 +65,6 @@ install: install-headers install-misc + $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd: + @if [ ! -d $@ ]; then \ + mkdir -p $@; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ + chmod 0755 $@; \ + fi + +@@ -73,7 +72,6 @@ $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd: + $(DESTDIR)$(includedir)/proftpd/$(MODULE_NAME): + @if [ ! -d $@ ]; then \ + mkdir -p $@; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ + chmod 0755 $@; \ + fi + +@@ -83,8 +81,8 @@ install-headers: $(DESTDIR)$(includedir)/proftpd $(DESTDIR)$(includedir)/proftpd + $(RM) $(DESTDIR)$(includedir)/proftpd/$(MODULE_NAME)/$(MODULE_NAME).h + + install-misc: +- $(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644 $(top_srcdir)/dhparams.pem $(DESTDIR)$(sysconfdir)/dhparams.pem +- $(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644 $(top_srcdir)/blacklist.dat $(DESTDIR)$(sysconfdir)/blacklist.dat ++ $(INSTALL) -m 0644 $(top_srcdir)/dhparams.pem $(DESTDIR)$(sysconfdir)/dhparams.pem ++ $(INSTALL) -m 0644 $(top_srcdir)/blacklist.dat $(DESTDIR)$(sysconfdir)/blacklist.dat + + clean: + $(LIBTOOL) --mode=clean $(RM) $(MODULE_NAME).a $(MODULE_NAME).la *.o *.lo .libs/*.o +diff --git a/contrib/mod_snmp/Makefile.in b/contrib/mod_snmp/Makefile.in +index 7de4c1c..5987896 100644 +--- a/contrib/mod_snmp/Makefile.in ++++ b/contrib/mod_snmp/Makefile.in +@@ -45,7 +45,6 @@ install: install-headers install-misc + $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd: + @if [ ! -d $@ ]; then \ + mkdir -p $@; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ + chmod 0755 $@; \ + fi + +@@ -53,7 +52,7 @@ install-headers: $(DESTDIR)$(includedir)/proftpd + $(INSTALL_MAN) $(MODULE_NAME).h $(DESTDIR)$(includedir)/proftpd/$(MODULE_NAME).h + + install-misc: +- $(INSTALL) -o $(INSTALL_USER) -g $(INSTALL_GROUP) -m 0644 $(top_srcdir)/PROFTPD-MIB.txt $(DESTDIR)$(sysconfdir)/PROFTPD-MIB.txt ++ $(INSTALL) -m 0644 $(top_srcdir)/PROFTPD-MIB.txt $(DESTDIR)$(sysconfdir)/PROFTPD-MIB.txt + + clean: + $(LIBTOOL) --mode=clean $(RM) $(MODULE_NAME).a $(MODULE_NAME).la *.o *.lo .libs/*.o +diff --git a/contrib/mod_wrap2/Makefile.in b/contrib/mod_wrap2/Makefile.in +index 7da015f..d912d23 100644 +--- a/contrib/mod_wrap2/Makefile.in ++++ b/contrib/mod_wrap2/Makefile.in +@@ -46,7 +46,6 @@ install: install-headers + $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd: + @if [ ! -d $@ ]; then \ + mkdir -p $@; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ + chmod 0755 $@; \ + fi + +diff --git a/include/Makefile.in b/include/Makefile.in +index 1b69d93..b7e8f5a 100644 +--- a/include/Makefile.in ++++ b/include/Makefile.in +@@ -24,7 +24,6 @@ Makefile: Makefile.in ../config.status + $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd: + @if [ ! -d $@ ]; then \ + mkdir -p $@; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ + chmod 0755 $@; \ + fi + +diff --git a/locale/Makefile.in b/locale/Makefile.in +index 77fd787..1c41c0e 100644 +--- a/locale/Makefile.in ++++ b/locale/Makefile.in +@@ -52,7 +52,6 @@ install: $(LANGS) + if [ -f $(top_builddir)/locale/$$lang.mo ]; then \ + if [ ! -d $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES ]; then \ + mkdir -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \ +- chown $(INSTALL_USER):$(INSTALL_GROUP) $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \ + chmod 0755 $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \ + fi; \ + $(INSTALL_MAN) $$lang.mo $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(PACKAGE).mo; \ -- 2.49.0 From unknown Sat Jun 14 14:28:26 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#77926] [PATCH] gnu: Add proftpd Resent-From: =?UTF-8?Q?Andr=C3=A9?= Batista Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 16 May 2025 20:27:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 77926 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Grigory Shepelev Cc: 77926@debbugs.gnu.org Received: via spool by 77926-submit@debbugs.gnu.org id=B77926.17474271982844 (code B ref 77926); Fri, 16 May 2025 20:27:02 +0000 Received: (at 77926) by debbugs.gnu.org; 16 May 2025 20:26:38 +0000 Received: from localhost ([127.0.0.1]:41179 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uG1de-0000jn-3m for submit@debbugs.gnu.org; Fri, 16 May 2025 16:26:38 -0400 Received: from mx0.riseup.net ([198.252.153.6]:54194) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uG1dZ-0000i4-Fe for 77926@debbugs.gnu.org; Fri, 16 May 2025 16:26:35 -0400 Received: from fews02-sea.riseup.net (fews02-sea-pn.riseup.net [10.0.1.112]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx0.riseup.net (Postfix) with ESMTPS id 4Zzdry6K2Bz9xHm; Fri, 16 May 2025 20:26:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak; t=1747427187; bh=IVdY7WxuJIdPCpMvzbpLC3nyKLmfALrEu19PYnmaPfw=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=OHvxrhaOIZB9Rm57okZowBS/3iEKyjW+wu7o4Cskee8NWz0Qv1euUiCAnKE81VfNV wP7jA5rZ0hDNII5lsPPCWo82wQ7bnq9puQ353VY+r3q99LVGpMQqWxNWBOcmB5pW/P 5imUSDguO2/4Yvrjc6dssaMOrRM4KAdRyGnVlVuY= X-Riseup-User-ID: 247C3B5FDD793852505F12E68B470B2C7A5982F1E0E67D3A1C81453538680B75 Received: from [127.0.0.1] (localhost [127.0.0.1]) by fews02-sea.riseup.net (Postfix) with ESMTPSA id 4Zzdrw6KNKzFwJS; Fri, 16 May 2025 20:26:24 +0000 (UTC) Date: Fri, 16 May 2025 17:26:18 -0300 From: =?UTF-8?Q?Andr=C3=A9?= Batista Message-ID: References: <878qnw101p.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <878qnw101p.fsf@gmail.com> X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hi Grigory, seg 14 abr 2025 ās 21:00:11 (1744675211), shegeley@gmail.com enviou: > > Notes: > 1. "no-install-user.patch" is stolen from nixpkgs > 2. By default it looks for ScoreboardFile file in $output/var/ and won't find it > 3. By default tries to setup PidFile in $CWD/var/proftpd.pid > 4. By default mod_delay.c is on and proftpd looks for DelayTable file in $output/var/share > > Example configuration that disables all of that above: > #+begin_src conf > ServerName "Secure FTP Server" > ServerType standalone > DefaultServer on > ScoreboardFile off # won't find $output/var/ > PidFile /var/proftpd.pid # will try to launch in $CWD/var/proftpd.pid > > > # http://proftpd.org/docs/modules/mod_delay.html#DelayTable > # won't find delaytable in $output/var/share > DelayEngine off # very minor security consern > > #+end_src > Thanks for the detailed explanation. However, as is, the becomes the ChangeLog message and the proper guix changelog is missing. > Change-Id: Ic96745df7ef23664099f73d7130688151c5fc128 > --- > gnu/packages/ftp.scm | 31 ++++ > gnu/packages/patches/no-install-user.patch | 189 +++++++++++++++++++++ I'd suggest to add proftpd to the patch filename, so we can know where this patch applies without opening, grepping or what not. Also, you need to add an entry to gnu/local.mk registering this patch on "dist_patch_DATA" - keep the alphabetical order, please. > 2 files changed, 220 insertions(+) > create mode 100644 gnu/packages/patches/no-install-user.patch > > diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm > index 2df6797c42..0027e3dfbc 100644 > --- a/gnu/packages/ftp.scm > +++ b/gnu/packages/ftp.scm > @@ -25,6 +25,7 @@ > > (define-module (gnu packages ftp) > #:use-module ((guix licenses) #:select (gpl2 gpl2+ gpl3+ clarified-artistic)) > + #:use-module (gnu packages perl) > #:use-module (guix build-system gnu) > #:use-module (guix download) > #:use-module (guix gexp) > @@ -334,3 +335,33 @@ (define-public vsftpd > guarantee.") > (home-page "https://security.appspot.com/vsftpd.html") > (license gpl2))) ; with OpenSSL exception > + > +(define-public proftpd > + (package > + (name "proftpd") > + (version "1.3.9") > + (source > + (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/proftpd/proftpd") > + (commit (string-append "v" version)))) > + (file-name (git-file-name name version)) > + (patches (search-patches "no-install-user.patch")) > + (sha256 > + (base32 > + "0zgx652qdwj2xkc7218v74x919dxmcs3q5s61v1kpdcw8f9v7370")))) > + (build-system gnu-build-system) > + (inputs (list libcap linux-pam openssl perl > + libxcrypt ncurses zlib libsodium)) > + (arguments > + (list > + #:configure-flags #~(list "--enable-openssl" > + "--with-modules=mod_sftp"))) > + (synopsis "Highly configurable GPL-licensed FTP server software") I would remove GPL-licensed as it does not seem to be critical info that on expects on a synopsis. > + (description > + "ProFTPD grew out of the desire to have a secure and configurable FTP server, and out of a significant admiration of the Apache web server. > + > +ProFTPD is not a hack based on any other server, it's an independent source tree from the ground up. A number of well known and high traffic sites use ProFTPD.") When starting new sentences, add double spaces, so: "... ground up. A number well known..." Also, this package description sounds like advertising for proftpd in place of a proper description. Could you rework it so it becomes more of neutral description? Other than that, when applying this patch, git trows the following warning: Applying: gnu: Add proftpd .git/rebase-apply/patch:82: space before tab in indent. @if [ ! -d $@ ]; then \ .git/rebase-apply/patch:83: space before tab in indent. mkdir -p $@; \ .git/rebase-apply/patch:85: space before tab in indent. chmod 0755 $@; \ .git/rebase-apply/patch:86: space before tab in indent. fi .git/rebase-apply/patch:89: space before tab in indent. rm -f $(DESTDIR)$(sbindir)/in.proftpd ; \ warning: squelched 53 whitespace errors warning: 58 lines add whitespace errors. But they seem to be related to the file to be patched so not much one can do. Could you please send a v2 of this patch contemplating the suggested changes? Thanks From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 09 16:08:03 2025 Received: (at control) by debbugs.gnu.org; 9 Jun 2025 20:08:03 +0000 Received: from localhost ([127.0.0.1]:57904 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uOimo-0007kd-K8 for submit@debbugs.gnu.org; Mon, 09 Jun 2025 16:08:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44872) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uOime-0007ha-0B for control@debbugs.gnu.org; Mon, 09 Jun 2025 16:07:53 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uOimW-0007ZP-Jw for control@debbugs.gnu.org; Mon, 09 Jun 2025 16:07:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:Subject:From:To:Date:in-reply-to: references; bh=ruk9NEJ9vASin27W6bBfnANxFpHF9Erzm+QX98KJEII=; b=f8yjTkHkvQaUjy mZQztDIJUASy2rYyAM79mTrRZgMueFNMbWYFL1Vn3bJG/u79W1ubCOcL5N/mtqTizq9UJVgnhibIl zm0zrYVw2QLEu1FvEXtQw53zeVLSUqLVm/4YkxgSo3TjNarr3mN4R5eCoP/zfJcdoXyKyApKUk6ig +hT/aTtkus9fAEprF/CvF3WEEbJ4nBn8/4dny3BhbE/kAdlMosmmkJT5lTnXNgumzc/HwwBAzzza/ u87P1RvyI1spXA6MsgzZcseeg+NSmKCdzLAaI9VxEfe8UJ5M9kGMT0/K8A6HeoP1TR+vy7A0QC0mc erEQMB4sh5PkqABdGPMg==; Date: Mon, 09 Jun 2025 19:33:44 +0200 Message-Id: <87jz5k95vr.fsf_-_@gnu.org> To: control@debbugs.gnu.org From: =?utf-8?Q?Ludovic_Court=C3=A8s?= Subject: control message for bug #77926 MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) tags 77926 + moreinfo quit