Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Apr 2020 11:22:34 +0200
From:      Jan Henrik Sylvester <me@janh.de>
To:        Greg Lehey <grog@FreeBSD.org>
Cc:        svn-ports-all@freebsd.org, Ashish SHUKLA <ashish@FreeBSD.org>, Joseph Mingrone <jrm@FreeBSD.org>
Subject:   Re: Which ImageMagick?
Message-ID:  <227b5d36-81dc-5316-2597-7f5e4c5096e5@janh.de>
In-Reply-To: <20200429055313.GN88862@eureka.lemis.com>
References:  <f9472213-b26b-285e-29ff-4260ecb4d1e9@FreeBSD.org> <ab64ecc6-0866-6dbb-51c6-5edd95a93390@janh.de> <20200427092250.GH88862@eureka.lemis.com> <a8f08dbe-40fc-73d3-5bab-f6f89c6aaa5e@janh.de> <20200429055313.GN88862@eureka.lemis.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 4/29/20 7:53 AM, Greg 'groggy' Lehey wrote:
> On Monday, 27 April 2020 at 18:52:08 +0200, Jan Henrik Sylvester wrote:
>> On 4/27/20 11:22 AM, Greg 'groggy' Lehey wrote:
>>>> If I am not mistaken, now emacs cannot be installed at the same time
>>>> as for example kde5 (kdemultimedia, kdenlive, dvdauthor,
>>>> ImageMagick6), inkscape (ImageMagick6), or calligra (pstoedit,
>>>> ImageMagick6).
>>>
>>> Clearly your choice is different from mine.  I found that most ports
>>> depended on ImageMagick 7, not 6.  And since it's not a legacy
>>> version, it made sense to go that way.
>>
>> Of course, personal choices vary, but according to FreshPorts, there are
>> 5+4 ports requiring ImageMagick7 for libraries or run and there are
>> 30+49 für ImageMagick6. Moreover, most of the ports requiring
>> ImageMagick7 are leaf ports while some of the ports requiring
>> ImageMagick6 are needed by some of the big chains like the one mentioned
>> above leading to kde5.
> 
> I don't do freshports, but I took a look through the ports Makefiles:
> 
>    cd /usr/ports
>    find . -name Makefile | xargs grep ImageMagick6 | less
> 
> and I don't see any reference to ImageMagick in the KDE context.
> Possibly it's a dependency with a different name.
> 
> What I do see is that a lot of the dependencies look like:
> 
>    ./graphics/curator/Makefile:RUN_DEPENDS=        convert:graphics/ImageMagick6
> 
> That suggests that it's only running ImageMagick programs.
> 
> Apart from that, yes, you're right, there are more hits on 6 than on
> 7, but by no means as many as freshports leads you to believe.

I am right apart from what exactly? What is exactly wrong with 
FreshPorts results? RUN_DEPENDS are package dependencies. They cause 
conflicts even for people that do not build on the machine the package 
is supposed to run on. Grepping with your command, I get 153 
dependencies that are not just build dependencies. Some of them are 
optional, that is the main reason FreshPorts having lower numbers.

find /usr/ports -name Makefile | xargs grep ImageMagick6 | grep -v BUILD 
| wc -l

That is by no means the best approach (using the INDEX or the result of 
a package builder would be more useful), but it is your command.

It does not matter what you believe is easily fixable. I just stated 
what is broken now, which was not broken before your commit.

Granted, the chain I listed leading to kde5 has an optional dependency 
in it that is not default, but the default packages of calligra and 
inkscape are affected (and there are probably more people than just me 
having dvdauthor depend on ImageMagick6 as it is needed for basic 
operations and dvdauthor is not optional for kde5). Anyhow, as long as 
you do not work recursively, your search does not tell you which 
conflicts you create and you have no chance to find the chain I listed 
leading to kde5.

The ImageMagick7 port is five years old. Still many ports depend on 
ImageMagick6. For me, this suggests that the change is not trivial or 
not wanted. (For example, Debian has all dependencies on 6, too.)

You fixed the conflicts of emacs with some ports, but broke it for many 
many people. The first group has workarounds, the seconds does not.

As I know FreeBSD, consequences of changes negatively affecting many 
people are evaluated first. If people forget to do that or make mistakes 
in their evaluation, they usually revert their change for the duration 
of a proper evaluation.

I am not into fixing ImageMagick dependencies, I just told you that I 
think you broke the setup of many people.

Reverting your change, you could introduce a non default option for 
emacs to depend on ImageMagick7 instead of ImageMagick6, but I am in no 
position to tell you what is best here.

Best regards,
Jan Henrik



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?227b5d36-81dc-5316-2597-7f5e4c5096e5>