Subject: bug#31737: 26.1.50; Gnus does not use mailutils movemail

From: Robert Pluim <[email-masked]>
Date: Fri, 08 Jun 2018 20:47:53 +0200

Eli Zaretskii <[email-masked]> writes:

>> From: Robert Pluim <[email-masked]>
>> Cc: [email-masked],  [email-masked]
>> Date: Fri, 08 Jun 2018 18:01:14 +0200
>> 
>> > Sorry, I don't think I follow: mail-source-movemail-progam is a
>> > variable in Gnus, and its default is nil.
>> 
>> Yes, and in that case Gnus looks for movemail in 'exec-directory'
>> only, where emacs no longer installs it if it found Mailutils
>> movemail at configure time.
>
> But then the fix should be where mail-source-movemail-progam is used,
> not in its default value, right?  Gnus should use executable-find to
> look for the program named by mail-source-movemail-progam.
>

It blindly calls call-process at the moment, rather than using
executable-find, but thatʼs a separate issue.

>> >> [1]  Eli, 26.2? This is an emacs-26 regression
>> >
>> > What exactly was the regression, and which change do you propose for
>> > the branch?
>> 
>> Gnus can no longer use movemail, even though at configure time it was
>> found.
>
> And why is that an emacs-26 regression?  the value of that variable
> hasn't changed since 2004, AFAICS.

Pre-emacs 26 gnus used the 'builtin' movemail. That movemail is no
longer installed, because configure found the Mailutils one. But gnus
doesnʼt use the Mailutils one. So the end result from the user's
perspective is "emacs disabled its own movemail because I have
Mailutils installed, but then doesnʼt use the Mailutils movemail"

We can call it a regression or not, but itʼs an unexpected outcome.

>> The simplest fix is below, but it will cause people who currently have
>> Mailutils movemail installed, but an emacs built to not use it, to
>> start using it, so it makes me uncomfortable. Perhaps gnus should
>> check in 'exec-directory' first if mail-source-movemail-program is
>> nil, and then fall back to 'executable-find'?
>
> I see no need for any special handling by Emacs here: the user could
> customize the value to point to "our" movemail as an absolute file
> name, in which case executable-find will pick it up.  We just need to
> change Gnus to use executable-find where the variable is used.

In emacs-26 there is no "our" movemail to point at when Mailutils were
detected, and asking the user to customize a variable to get back to
where they were before feels wrong as well.

Robert