Re: loose dependency

2019-03-14 Thread Hiroki Sato
Koichiro Iwao  wrote
  in <20190314062217.3wx3h2hp74mo3...@icepick.vmeta.jp>:

me> On Thu, Mar 14, 2019 at 03:12:43PM +0900, Koichiro Iwao wrote:
me> > On Thu, Mar 14, 2019 at 01:40:14PM +0900, Hiroki Sato wrote:
me> > >  There is no easy solution to solve it completely because currently
me> > >  package dependency is solved in a strict manner including package
me> > >  names and version numbers, not only existence of specific files.
me> > >  Creating multiple ports which depend on each software or using
me> > >  FLAVORS to make it easier is a way to provide packages with every
me> > >  possible combinations of dependency and let one to choose.
me> >
me> > Specifically talking, net/tigervnc is the case. Actually, the dependency
me> > is build dependency not runtime. ImageMagick is used to create multiple
me> > sizes of icons such as 24x24, 32x32, 48x48 during the build. Whichever
me> > versions of ImageMagick in the current ports tree can be used for the
me> > purpose. Once the port is built, ImageMagick is not required at all and
me> > can be uninstalled if no other packages depends on it.
me> >
me> > I think FLAVORS does not fit such case. Creating
me> > net/tigervnc@ImageMagick[67] sounds me stupid. But If I specify IM6,
me> > IM7 users cannot build net/tigervnc due to ImageMagick conflict and
me> > vise cersa.
me> >
me> > I'm stuck :(
me>
me> BTW, what about this idea?
me>
me> I prepare pre-converted icons and put it to public_distfiles. The port
me> fetches it as EXTRA_DIST.  It still sounds me a little bit stupid but
me> I can remove the dependency on ImageMagick from the port...

 That is a workaround while increasing maintenance cost.  It is at the
 maintainer's discretion.

-- Hiroki


pgpLBixZ6_1yO.pgp
Description: PGP signature


Re: loose dependency

2019-03-14 Thread Hiroki Sato
Koichiro Iwao  wrote
  in <20190314061242.ixvtakqiel4aa...@icepick.vmeta.jp>:

me> On Thu, Mar 14, 2019 at 01:40:14PM +0900, Hiroki Sato wrote:
me> >  There is no easy solution to solve it completely because currently
me> >  package dependency is solved in a strict manner including package
me> >  names and version numbers, not only existence of specific files.
me> >  Creating multiple ports which depend on each software or using
me> >  FLAVORS to make it easier is a way to provide packages with every
me> >  possible combinations of dependency and let one to choose.
me>
me> Specifically talking, net/tigervnc is the case. Actually, the dependency
me> is build dependency not runtime. ImageMagick is used to create multiple
me> sizes of icons such as 24x24, 32x32, 48x48 during the build. Whichever
me> versions of ImageMagick in the current ports tree can be used for the
me> purpose. Once the port is built, ImageMagick is not required at all and
me> can be uninstalled if no other packages depends on it.

 In this case BUILD_DEPENDS with bin/convert just works.  It does not
 record package-level dependency and it does not matter that where
 bin/convert came from while you have to put a specific version of
 ImageMagick on the BUILD_DEPENDS line.  An installed bin/convert will
 used if it exists already, and the specified version will be
 installed if not.

 One problem is that "a specific version" on the BUILD_DEPENDS line
 can be different from other ports.  In that case, which version will
 be installed during the build can depend on the order of builds
 including other ports.  We define Mk/bsd.default-versions.mk to make
 it consistent especially for runtime dependency.  It should work for
 build-time dependency though I am not sure if it is worth doing.

-- Hiroki


pgpXkiIzmypJ8.pgp
Description: PGP signature


Re: loose dependency

2019-03-14 Thread Koichiro Iwao
On Thu, Mar 14, 2019 at 01:01:42PM +0700, Eugene Grosbein wrote:
> 14.03.2019 11:40, Hiroki Sato wrote:
> 
> > Koichiro Iwao  wrote
> >   in <20190314031726.aaspgwdcuithh...@icepick.vmeta.jp>:
> > 
> > me> Hi,
> > me>
> > me> If a port have runtime dependency on bin/convert command of ImageMagick
> > me> but whichever ImageMagick{6,7}{,-nox11} are OK, how port Makefile should
> > me> be written?
> > me>
> > me> ImageMagick6 and 7 conflicts each other. I want to respect user's
> > me> choice which ImageMagick to use.
> > 
> >  There is no easy solution to solve it completely because currently
> >  package dependency is solved in a strict manner including package
> >  names and version numbers, not only existence of specific files.
> >  Creating multiple ports which depend on each software or using
> >  FLAVORS to make it easier is a way to provide packages with every
> >  possible combinations of dependency and let one to choose.
> 
> OTOH, one still may create a port depending on existence of specific file
> and fetching another port automatically in case of file absence.
> It works just fine for those using ports as primary source, not packages.
> 
> And yes, if one uses packages, it is forced to live with "default" versions
> including dependencies or build its own pkg repo.

In this case, I think FLAVORS don't fit but that's OK.

Regarding FLAVORS, is it possible to depend on any of FLAVORS, not on
one specific FLAVORS? For example, a port requires some command written
in python but python version doesn't matter.

-- 
meta 
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: loose dependency

2019-03-14 Thread Koichiro Iwao
On Thu, Mar 14, 2019 at 04:50:18PM +0900, Hiroki Sato wrote:
>  That is a workaround while increasing maintenance cost.  It is at the
>  maintainer's discretion.

Thanks for the advice. Fortunely, icons are not updated too open. The
maintenance cost is not negligible but might be acceptable.

-- 
meta 
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


FreeBSD ports you maintain which are out of date

2019-03-14 Thread portscout
Dear port maintainer,

The portscout new distfile checker has detected that one or more of your
ports appears to be out of date. Please take the opportunity to check
each of the ports listed below, and if possible and appropriate,
submit/commit an update. If any ports have already been updated, you can
safely ignore the entry.

You will not be e-mailed again for any of the port/version combinations
below.

Full details can be found at the following URL:
http://portscout.freebsd.org/po...@freebsd.org.html


Port| Current version | New version
+-+
cad/gmsh| 4.2.1   | 4.2.2
+-+


If any of the above results are invalid, please check the following page
for details on how to improve portscout's detection and selection of
distfiles on a per-port basis:

http://portscout.freebsd.org/info/portscout-portconfig.txt

Thanks.
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: loose dependency

2019-03-14 Thread Tijl Coosemans
On Thu, 14 Mar 2019 19:09:40 +0900 Koichiro Iwao 
wrote:
> On Thu, Mar 14, 2019 at 04:50:18PM +0900, Hiroki Sato wrote:
>> That is a workaround while increasing maintenance cost.  It is at the
>> maintainer's discretion.
> 
> Thanks for the advice. Fortunely, icons are not updated too open. The
> maintenance cost is not negligible but might be acceptable.

Like hrs already said: since this is a build dependency you can just
write:

BUILD_DEPENDS=  convert:graphics/ImageMagick6

This does not install ImageMagick6 if 7 is installed.  It will only
install 6 if convert does not exist.  It is a loose dependency.

This is not the case for RUN_DEPENDS because dependencies in a package
are currently specified using package names (including version).  They
would have to be specified using features where multiple packages can
then provide a feature.

port1:
PROVIDES=   feature1 feature2

port2:
PROVIDES=   feature2

port3:
RUN_DEPENDS=feature2:category/port1

Then pkg could see if any installed packages provide feature2 and only
install port1 by default.
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: loose dependency

2019-03-14 Thread Koichiro Iwao
On Thu, Mar 14, 2019 at 02:33:30PM +0100, Tijl Coosemans wrote:
> Like hrs already said: since this is a build dependency you can just
> write:
> 
> BUILD_DEPENDS=convert:graphics/ImageMagick6
> 
> This does not install ImageMagick6 if 7 is installed.  It will only
> install 6 if convert does not exist.  It is a loose dependency.

I understand now. This is what I wanted. Perfect!

> This is not the case for RUN_DEPENDS because dependencies in a package
> are currently specified using package names (including version).  They
> would have to be specified using features where multiple packages can
> then provide a feature.

That's good to know. I'd been thinking the only difference between RUN_
and BUILD_DEPENDS is when the dependency is checked.

Thanks,

-- 
meta 
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: loose dependency

2019-03-14 Thread Adam Weinberger
On Thu, Mar 14, 2019 at 10:41 AM Koichiro Iwao  wrote:
>
> On Thu, Mar 14, 2019 at 02:33:30PM +0100, Tijl Coosemans wrote:
> > Like hrs already said: since this is a build dependency you can just
> > write:
> >
> > BUILD_DEPENDS=convert:graphics/ImageMagick6
> >
> > This does not install ImageMagick6 if 7 is installed.  It will only
> > install 6 if convert does not exist.  It is a loose dependency.
>
> I understand now. This is what I wanted. Perfect!
>
> > This is not the case for RUN_DEPENDS because dependencies in a package
> > are currently specified using package names (including version).  They
> > would have to be specified using features where multiple packages can
> > then provide a feature.
>
> That's good to know. I'd been thinking the only difference between RUN_
> and BUILD_DEPENDS is when the dependency is checked.

This makes building from ports behave differently from pkg. Please,
just make an OPTIONS_SINGLE for it, and default it to the current
version (7), not the old version.

# Adam


-- 
Adam Weinberger
ad...@adamw.org
https://www.adamw.org
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: loose dependency

2019-03-14 Thread Tijl Coosemans
On Thu, 14 Mar 2019 11:20:09 -0600 Adam Weinberger 
wrote:
> On Thu, Mar 14, 2019 at 10:41 AM Koichiro Iwao  wrote:
>> On Thu, Mar 14, 2019 at 02:33:30PM +0100, Tijl Coosemans wrote:  
>>> Like hrs already said: since this is a build dependency you can just
>>> write:
>>>
>>> BUILD_DEPENDS=convert:graphics/ImageMagick6
>>>
>>> This does not install ImageMagick6 if 7 is installed.  It will only
>>> install 6 if convert does not exist.  It is a loose dependency.  
>>
>> I understand now. This is what I wanted. Perfect!
>>  
>>> This is not the case for RUN_DEPENDS because dependencies in a package
>>> are currently specified using package names (including version).  They
>>> would have to be specified using features where multiple packages can
>>> then provide a feature.  
>>
>> That's good to know. I'd been thinking the only difference between RUN_
>> and BUILD_DEPENDS is when the dependency is checked.  
> 
> This makes building from ports behave differently from pkg. Please,
> just make an OPTIONS_SINGLE for it, and default it to the current
> version (7), not the old version.

You mean building from ports versus poudriere?  Poudriere would always
select ImageMagick6 with the BUILD_DEPENDS line above, but that's fine.

Options aren't a good interface for this because the user can select an
option that conflicts with the installed version.  It's not really a
port option but a system-wide option.  If this needs to be configurable
for poudriere then an entry should be added to bsd.default-versions.mk.
Then the BUILD_DEPENDS line above can become:

BUILD_DEPENDS=  convert:graphics/ImageMagick${IMAGEMAGICK_DEFAULT}
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: loose dependency

2019-03-14 Thread Koichiro Iwao
On Thu, Mar 14, 2019 at 11:20:09AM -0600, Adam Weinberger wrote:
> This makes building from ports behave differently from pkg. Please,
> just make an OPTIONS_SINGLE for it, and default it to the current
> version (7), not the old version.

Yes, I'm going to switch to 7. The current port using 6 but it's not my
intension [1]. I've created a review [2]. I'd appreciate if you give me
some advice on OPTIONS_SINGLE.

[1] 
https://svnweb.freebsd.org/ports/head/net/tigervnc/Makefile?r1=484427&r2=484640
[2] https://reviews.freebsd.org/D19585
-- 
meta 
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


www/luakit users?

2019-03-14 Thread Milan Obuch
Hi,

some time ago I tried to write port maintainer just to get bounce
back... Now I see maintainer is reset.

I am curious if I can find some other users of this really
interesting browser, maybe try to build development version... There is
no much info I found, but it still seems to be actively developed, at
least there are some new entries in issue tracker.

What I need find now is following: in a special arrangement, I have
luakit started directly from startx script, so I have some kind of
kiosk. Basically it works OK, I just need change mouse cursor shape.
Googling did not reveal anything for me, but maybe someone knows better
than I...

Regards,
Milan
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: loose dependency

2019-03-14 Thread Koichiro Iwao
On Thu, Mar 14, 2019 at 06:50:43PM +0100, Tijl Coosemans wrote:
> You mean building from ports versus poudriere?  Poudriere would always
> select ImageMagick6 with the BUILD_DEPENDS line above, but that's fine.
> 
> Options aren't a good interface for this because the user can select an
> option that conflicts with the installed version.  It's not really a
> port option but a system-wide option.  If this needs to be configurable
> for poudriere then an entry should be added to bsd.default-versions.mk.
> Then the BUILD_DEPENDS line above can become:
> 
> BUILD_DEPENDS=convert:graphics/ImageMagick${IMAGEMAGICK_DEFAULT}

I'm still not sure whether OPTIONS for IM[67] are needed. tijl@ and
adamw@ say different thing but the below works fine for me in both ports
and pkg schenario. Even if IM6 installed, no problem for me.

BUILD_DEPENDS=  convert:graphics/ImageMagick7

-- 
meta 
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"