Re: portupgrade vs. portmaster

2018-05-03 Thread Thomas Mueller
from Jonathan Chen and my previous post:

> On 30 April 2018 at 22:33, Thomas Mueller  wrote:
[...]
> > I see hardly any mention of synth on the freebsd-ports list.  Have synth 
> > users become disenchanted?

> There are a growing number of synth users. They just don't appear on
> the list 'cause the software just works.

> > One downside is that synth fails to install build dependencies, so I have 
> > to pkg install all of these separately, very annoying.

> Why should build dependencies be installed? Their only purpose is for
> building the port.

But build dependencies happen to be build dependencies for something out of 
synth territory, like cross-compiling Haiku or Linux toolchains.

> > I was bitten just yesterday trying to build cross-compiling tools for Haiku 
> > when make info was missing because texinfo was built but not installed.

> > But I was able to recover with pkg install after checking my repository.

> > With portmaster, I need to specify ports by category/portname rather than 
> > just portname, for example
> > portmaster www/seamonkey

> > On my other computer, with MSI Z77 MPOWER motherboard, synth just fumbles 
> > and crashes.

> I would suspect you have hardware issues instead. synth builds tend to
> strain the machine - it's a good test of machine hardiness.

I might try to see if booting in UEFI mode might give better results.

Excerpt from Stefan Esser and my previous post:

> I do not know how much development is occurring for synth. It is written in a
> language that is only supported on amd64 (and i386?) and I'd rather use a tool
> that works on all platforms.

I believe Ada did not originate on i386 PCs, existed long before amd64.  There 
have been Ada compiler suites for i386 DOS and MS-Windows, and there is DJGPP 
for DOS.

But I see why you prefer something that can be ported to all FreeBSD-supported 
platforms.

> > One downside is that synth fails to install build dependencies, so I have 
> > to pkg install all of these separately, very annoying.

> Pure build dependencies should not be required on a system, outside the build
> process. If you need some compiler or build tool, then it is just a normal
> program selected by the user.

One benefit of FreeBSD and NetBSD, and some Linux versions, is package systems 
that build and install packages and dependencies from source.  So I am 
accustomed to haing dependencies pulled in rather than having to name every 
package.  Some packages, even when named, were built but not installed by synth.

There ought to be an option to install build dependencies for circumstances 
where that would be useful.

> > I was bitten just yesterday trying to build cross-compiling tools for Haiku 
> > when make info was missing because texinfo was built but not installed.

> This might be a problem with the specification of dependencies in the port.



Tom

___
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"


portmaster plans (was: Re: portupgrade vs. portmaster)

2018-04-30 Thread Stefan Esser
Am 30.04.18 um 12:33 schrieb Thomas Mueller:
> Current portmaster, even before FLAVORS, was clumsy upgrading a large number 
> of ports, especially when there is an upgrade of perl or png.

The author of portmaster decided to abort the upgrade of all remaining ports,
if any dependency failed for any one port (i.e. did not try to build further
independent ports, in that case).

Or is there some other problem with e.g. perl upgrades?

I plan to introduce new build options, e.g. to rebuild all ports that depend
on libraries in some compat directory, or which have installed files in some
path (e.g. the perl ports that install in a sub-directory that depends on the
perl version).

What other criteria might be useful to select ports for upgrading?

> I see hardly any mention of synth on the freebsd-ports list.  Have synth 
> users become disenchanted?

I do not know how much development is occurring for synth. It is written in a
language that is only supported on amd64 (and i386?) and I'd rather use a tool
that works on all platforms.

> One downside is that synth fails to install build dependencies, so I have to 
> pkg install all of these separately, very annoying.

Pure build dependencies should not be required on a system, outside the build
process. If you need some compiler or build tool, then it is just a normal
program selected by the user.

> I was bitten just yesterday trying to build cross-compiling tools for Haiku 
> when make info was missing because texinfo was built but not installed.

This might be a problem with the specification of dependencies in the port.

> But I was able to recover with pkg install after checking my repository.

With correct dependencies, this should not have been necessary.

> With portmaster, I need to specify ports by category/portname rather than 
> just portname, for example
> portmaster www/seamonkey

Yes, this is intentional. It could easily be changed, but currently only a
parameter with / in it can lead to a new port being permanently installed
(instead of as a dependency that might be automatically deleted when no longer
required).

What is the proposed semantic of a parameter that might select a port origin
or some installed package, say if I invoke "portmaster bash" with or without
bash being installed?

> Will both the old and revamped portmaster be maintained, and what will be the 
> port names, since there can't be two ports both named portmaster?

I plan to create a portmaster-devel port, once the main-functionality of the
existing portmaster port is complete. That version is meant for testing and
as development version for new features. It should replace the current version
after a few (say 3 to 6) months of testing.


I'm willing to consider feature requests for the new version. My goal for now
is to make it automatically deal with situations like the recent KDE4 port and
package renaming, but also with scenarios not covered by the current version,
where an indirect dependency must be considered.

I'd like to implement a feature that builds all ports in a clean environment,
as synth does. But this is not a priority, since we have poudriere and that is
the official tool to build your own package repository. But a low overhead
mode that works without setup effort on a subset of what poudriere offers
might be quite useful. (And synth might offer that if it was written in a more
portable language and if it was guaranteed to be well supported and maintained
over the coming years.)

Best regards, STefan
___
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: portupgrade vs. portmaster

2018-04-30 Thread Jonathan Chen
On 30 April 2018 at 22:33, Thomas Mueller  wrote:
[...]
> I see hardly any mention of synth on the freebsd-ports list.  Have synth 
> users become disenchanted?

There are a growing number of synth users. They just don't appear on
the list 'cause the software just works.

> One downside is that synth fails to install build dependencies, so I have to 
> pkg install all of these separately, very annoying.

Why should build dependencies be installed? Their only purpose is for
building the port.

> I was bitten just yesterday trying to build cross-compiling tools for Haiku 
> when make info was missing because texinfo was built but not installed.
>
> But I was able to recover with pkg install after checking my repository.
>
> With portmaster, I need to specify ports by category/portname rather than 
> just portname, for example
> portmaster www/seamonkey
>
> On my other computer, with MSI Z77 MPOWER motherboard, synth just fumbles and 
> crashes.

I would suspect you have hardware issues instead. synth builds tend to
strain the machine - it's a good test of machine hardiness.

Cheers.
-- 
Jonathan Chen 
___
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: portupgrade vs. portmaster

2018-04-30 Thread Carmel NY
On Mon, 30 Apr 2018 10:33:48 +, Thomas Mueller stated:

>from STefan Esser:
>
>> I used to be a portupgrade user, long ago (years before the introduction
>> of the new package tools), but then mobed over to using portmaster.  
>
>> When the package system (PKG-NG) war completely reworked, I heard that
>> portupgrade was better adapted to the new tools, but did not verify that
>> claim (and instead submitted a few fixes for portmaster).  
>
>> I'm working on a complete rewrite on portmaster, since the original author
>> has left the FreeBSD project, years ago, and I found it very hard to wrap
>> my mind around his design when I implemented FLAVOR support in portmaster.  
>
>> My time is now spent on completing that new portmaster version, but I still
>> fix problems reported in the current portmaster port (but will not implement
>> any changes that are not bug-related, to be able to concentrate on the new
>> version).  
>
>I'd like the opportunity to try out a new revamped portmaster, having fallen
>behind with my FreeBSD installations.
>
>Current portmaster, even before FLAVORS, was clumsy upgrading a large number
>of ports, especially when there is an upgrade of perl or png.
>
>I see hardly any mention of synth on the freebsd-ports list.  Have synth
>users become disenchanted?

I have been using synth now for several months and have not experienced any
problems. I have found it to be far more competent that either portmaster or
portupgrade ever were.

>One downside is that synth fails to install build dependencies, so I have to
>pkg install all of these separately, very annoying.

I don't understand your problem. Why install something that is not needed?

>I was bitten just yesterday trying to build cross-compiling tools for Haiku
>when make info was missing because texinfo was built but not installed.

I don't cross-compile, so I have no knowledge of this phenomena. Have you
tried to contact the author and voice your concerns?

>But I was able to recover with pkg install after checking my repository.
>
>With portmaster, I need to specify ports by category/portname rather than
>just portname, for example portmaster www/seamonkey
>
>On my other computer, with MSI Z77 MPOWER motherboard, synth just fumbles and
>crashes.
>
>Will both the old and revamped portmaster be maintained, and what will be the
>port names, since there can't be two ports both named portmaster?
>
>I used portupgrade before switching to portmaster.
>
>Tom

-- 
Carmel
___
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: portupgrade vs. portmaster

2018-04-30 Thread Thomas Mueller
from STefan Esser:

> I used to be a portupgrade user, long ago (years before the introduction
> of the new package tools), but then mobed over to using portmaster.

> When the package system (PKG-NG) war completely reworked, I heard that
> portupgrade was better adapted to the new tools, but did not verify that
> claim (and instead submitted a few fixes for portmaster).

> I'm working on a complete rewrite on portmaster, since the original author
> has left the FreeBSD project, years ago, and I found it very hard to wrap
> my mind around his design when I implemented FLAVOR support in portmaster.

> My time is now spent on completing that new portmaster version, but I still
> fix problems reported in the current portmaster port (but will not implement
> any changes that are not bug-related, to be able to concentrate on the new
> version).

I'd like the opportunity to try out a new revamped portmaster, having fallen 
behind with my FreeBSD installations.

Current portmaster, even before FLAVORS, was clumsy upgrading a large number of 
ports, especially when there is an upgrade of perl or png.

I see hardly any mention of synth on the freebsd-ports list.  Have synth users 
become disenchanted?

One downside is that synth fails to install build dependencies, so I have to 
pkg install all of these separately, very annoying.

I was bitten just yesterday trying to build cross-compiling tools for Haiku 
when make info was missing because texinfo was built but not installed.

But I was able to recover with pkg install after checking my repository.

With portmaster, I need to specify ports by category/portname rather than just 
portname, for example
portmaster www/seamonkey

On my other computer, with MSI Z77 MPOWER motherboard, synth just fumbles and 
crashes.

Will both the old and revamped portmaster be maintained, and what will be the 
port names, since there can't be two ports both named portmaster?

I used portupgrade before switching to portmaster.

Tom

___
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"


portupgrade vs. portmaster (was: Re: Port directory not found:)

2018-04-30 Thread Stefan Esser
Am 30.04.18 um 05:45 schrieb Kevin Oberman:
> portmaster(8) operates very similarly to portupgrade(8). There are some
> differences that can bite you, though, so read the man page first.

I used to be a portupgrade user, long ago (years before the introduction
of the new package tools), but then mobed over to using portmaster.

When the package system (PKG-NG) war completely reworked, I heard that
portupgrade was better adapted to the new tools, but did not verify that
claim (and instead submitted a few fixes for portmaster).

I'm working on a complete rewrite on portmaster, since the original author
has left the FreeBSD project, years ago, and I found it very hard to wrap
my mind around his design when I implemented FLAVOR support in portmaster.

My time is now spent on completing that new portmaster version, but I still
fix problems reported in the current portmaster port (but will not implement
any changes that are not bug-related, to be able to concentrate on the new
version).

> For updating a single port: portmaster PORTNAME (e.g. portmaster
> chromium-65.0.3325.181_1)
> Note that portmaster(8) treats when you type like there is an '*' at the
> end, so, e.g. "portmaster virtualbox-ose" will result in both
> virtualbox-ose and virtualbox-ose-kmod being updated. Very useful for
> updating multiple related ports such as "portmaster p5-" to update all p5
> ports.

I know that portmaster and portupgrade offer differing features and options,
but do not have time to identify features missing in portmaster to make it
a fully functional replacement of portmaster.

I'd appreciate, if portupgrade users could let me know, what features or
behaviour they miss in portmaster.

The globbing performed by portmaster (as explained by Kevin) is one of
the portmaster features that I find surprising at times, and I think
I'll require "virtualbox-ose*" for the current behaviour - but I'll let
the portmaster users decide, whether this is a useful change.

> If you are installing, you must include both the ports
> subdirectory/portdirectory. E.g. graphics/ImageMagick

Does portupgrade locate the correct category for you, if you just specify
the sub-directory within some category?

That is something that I could add to portmaster, but currently the slash
in a parameter signals, that a port directory is meant instead of a
package name ...

> Options are similar, but not identical nd there are a lot of added ones. I
> find "-y --clean-dirtfiles" very handy.

Those dirtfiles are distfiles, I assume ;-)

That is one of the many features already re-implemented in my new version.

Missing are special features like the temporary installation of pure build
dependencies (say bison or some cross-gcc version) from packages (if those
are available at the expected version level) and de-installation of those
dependencies after a successful creation of packages that needed to be
upgraded (e.g. for use by the nanobsd release builder).


So, if you miss a portupgrade feature in portmaster, let me know or create
a feature request on bugzilla. I'll consider those for the new version,
that I hope to be able to release in a few weeks.

Best regards, STefan
___
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"