all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Léo Le Bouter via Guix-patches via" <guix-patches@gnu.org>
To: Rovanion Luckey <rovanion.luckey@gmail.com>,
	Leo Famulari <leo@famulari.name>
Cc: 47435@debbugs.gnu.org
Subject: [bug#47435] gnu: mail: Make the sendmail package actually output its binary
Date: Tue, 30 Mar 2021 04:05:10 +0200	[thread overview]
Message-ID: <75974c07f11e9e07061c192fe50c8704e4cb4d1c.camel@zaclys.net> (raw)
In-Reply-To: <CAAaf0CCFHwF=QFTxxzLNN_X=CtZWav8NmQ=U2QW+=UQ6t5keUA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 4534 bytes --]

On Mon, 2021-03-29 at 16:24 +0200, Rovanion Luckey wrote:
> Attached to this email you will find three patches that
> 1. make the sendmail binary appear in PATH after the sendmail package
> is
> installed,
> 2. add libmilter to the package collection and
> 3. updates sendmail and libmilter to 8.16.1.
> 
> I ended up putting smrsh back in libexec because that is where all
> the
> other distros put it and seems like a program that should only be
> used by
> sendmail itself.

Thank you for the patches!

> +    (synopsis "Sendmail library for creating mail filters.")))
> +

On the commit message, the convention is that all titles end with a
period, also all statements in the subtext also end with a period, and
that the subtext is wrapped to 80 columns (unless links). Look at other
commit messages for examples.

It seems in your latest patches applied on top of master, the
'sendmail' package does not build:

starting phase `pre-install'
Using M4=/gnu/store/jlm51s1gz6pah5bn7mc1i12kj5xilhck-m4-1.4.18/bin/m4
../../devtools/bin/install.sh -c -o root -g bin -m 0444 sendmail.cf
/gnu/store/6iaqmnb3rgcjdh3jz56x4r1hafalrvmg-sendmail-
8.16.1/etc/mail/sendmail.cf
cp: cannot create regular file
'/gnu/store/6iaqmnb3rgcjdh3jz56x4r1hafalrvmg-sendmail-
8.16.1/etc/mail/sendmail.cf': No such file or directory
make: *** [Makefile:83: install-sendmail-cf] Error 1
command "sh" "Build" "install-cf" failed with status 2
builder for `/gnu/store/7rm2hkxw5sqz34k562wfgwsfvpg0avsk-sendmail-
8.16.1.drv' failed with exit code 1
@ build-failed /gnu/store/7rm2hkxw5sqz34k562wfgwsfvpg0avsk-sendmail-
8.16.1.drv - 1 builder for
`/gnu/store/7rm2hkxw5sqz34k562wfgwsfvpg0avsk-sendmail-8.16.1.drv'
failed with exit code 1
derivation '/gnu/store/7rm2hkxw5sqz34k562wfgwsfvpg0avsk-sendmail-
8.16.1.drv' offloaded to 'www.proxmox-2.schmilblick.org' failed: build
of `/gnu/store/7rm2hkxw5sqz34k562wfgwsfvpg0avsk-sendmail-8.16.1.drv'
failed
build of /gnu/store/7rm2hkxw5sqz34k562wfgwsfvpg0avsk-sendmail-
8.16.1.drv failed

libmilter builds fine however.

I noticed it builds as a static library:

/gnu/store/vdg98ynngj637sdn1xazgafb8af8fv2j-libmilter-
1.0.1/lib/libmilter.so.: ELF 64-bit LSB shared object, x86-64, version
1 (SYSV), statically linked, not stripped

Is there any build flag to disable that? If so, I think we probably
should, for security updates of it's dependencies, but it doesnt look
like it has any, not even the glibc? Maybe it's not so important here.

I also noticed that there was a weird naming for the actual so file, it
ends with a dot '.':

$ tree $(./pre-inst-env guix build libmilter)
/gnu/store/vdg98ynngj637sdn1xazgafb8af8fv2j-libmilter-1.0.1
├── include
│   └── libmilter
│       ├── mfapi.h
│       └── mfdef.h
├── lib
│   ├── libmilter.a
│   ├── libmilter.so -> libmilter.so. <<-- here
│   └── libmilter.so. <<-- also here
└── share
    └── doc
        └── libmilter-1.0.1
            └── LICENSE

6 directories, 6 files

Again it will work anyways I believe, not crucial.

> +(define-public libmilter
> +  (package
> +    (inherit sendmail)
> +    (name "libmilter")
> +    (version "1.0.1")

Where does this version come from? Are you sure about that? Also do
note that changing the version field here in libmilter does not change
the version used in the origin of the inherited package So it's using
the same sources as sendmail exactly, that's what you want?

> +    (arguments
> +     (substitute-keyword-arguments (package-arguments sendmail)
> +       ((#:phases phases)
> +        `(modify-phases ,phases
> +           (replace 'build
> +             (lambda* _
> +               (with-directory-excursion "libmilter"
> +                 (invoke "sh" "Build"))
> +               #t))
> +           (delete 'pre-install)
> +           (replace 'install
> +             (lambda* _
> +               (with-directory-excursion "libmilter"
> +                 (mkdir-p (string-append (assoc-ref %outputs "out")
> "/lib"))
> +                 (invoke "make" "install"))
> +               #t))))))
> +    (synopsis "Sendmail library for creating mail filters.")))
> +

I suggest adding a dedicated synopsis and description here, also
synopsises as I see it should not be sentences and not end with a
period, descriptions on the other hand should be full sentences, look
at the other packages for inspiration.

Léo

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2021-03-30  2:06 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-27 17:34 [bug#47435] gnu: mail: Make the sendmail package actually output its binary Rovanion Luckey
2021-03-27 18:07 ` Léo Le Bouter via Guix-patches via
2021-03-27 18:22 ` Leo Famulari
2021-03-28 11:57   ` Rovanion Luckey
2021-03-29 14:24     ` Rovanion Luckey
2021-03-30  2:05       ` Léo Le Bouter via Guix-patches via [this message]
2021-03-30  2:13         ` Léo Le Bouter via Guix-patches via
2021-04-09 19:30         ` Rovanion Luckey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=75974c07f11e9e07061c192fe50c8704e4cb4d1c.camel@zaclys.net \
    --to=guix-patches@gnu.org \
    --cc=47435@debbugs.gnu.org \
    --cc=leo@famulari.name \
    --cc=lle-bout@zaclys.net \
    --cc=rovanion.luckey@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.