Pkg dependency strangeness

Walter Parker walterp at gmail.com
Thu Dec 27 22:04:58 UTC 2018


Hi Matthew,

I ran pkg upgrade -n

New packages to be INSTALLED:
        xorgproto: 2018.4
        wayland: 1.16.0
        libepoll-shim: 0.0.20180530
        libXtst: 1.2.3_2
        postgresql95-client: 9.5.15_2
        mysql56-client: 5.6.42_1
        php72-pdo_sqlite: 7.2.13
(lots of p5-<package>s)

Installed packages to be UPGRADED:
(lots of py36 <package>s
(lots of p5-<package>s)
        dspam: 3.10.2_4 -> 3.10.2_5
        dovecot-pigeonhole: 0.4.21_1 -> 0.5.4_1
        dovecot: 2.2.33.2_4 -> 2.3.4_3

Installed packages to be REINSTALLED:
        roundcube-php72-1.3.8_1,1 (options changed)
        php72-pgsql-7.2.13_1 (direct dependency changed:
postgresql95-client)
        php72-pdo_pgsql-7.2.13_1 (direct dependency changed:
postgresql95-client)
        php72-openssl-7.2.13 (direct dependency changed: php72)

Note, the system is currently running postgresql96. I used postmaster to
install the php72-pgsql & php72-pdo_pgsql ports and to install
postgresql96-client and server.

Ran pkg version -vRL=
Found several ophaned packages, most seem be because I remove the
x<name>proto packages per the UPDATING instructions
ImageMagick-nox11-6.9.9.28,1       ?   orphaned: graphics/ImageMagick-nox11
bigreqsproto-1.1.2                 ?   orphaned: x11/bigreqsproto
Also, my X appears to be out of date (system runs headless so that is a
lower concern)
libXext-1.3.3_1,1                  <   needs updating (remote has 1.3.3_3,1)
libXfixes-5.0.3                    <   needs updating (remote has 5.0.3_2)
libXfont-1.5.2,2                   <   needs updating (remote has 1.5.4_2,2)
libXft-2.3.2_1                     <   needs updating (remote has 2.3.2_3)
lha-1.14i_7                        ?   orphaned: archivers/lha
p5-Net-SMTP-SSL-1.04               ?   orphaned: mail/p5-Net-SMTP-SSL
pecl-imagick-3.4.3_2               ?   orphaned: graphics/pecl-imagick
pecl-memcached2-2.2.0_5            ?   orphaned: databases/pecl-memcached2
roundcube-sieverules-2.1.2,1       ?   orphaned: mail/roundcube-sieverules

When I run pkg install phppgadmin-php72, it tells me that I'm on the most
recent version of the package. So I removed it and tried a reinstall

[root at natasha /usr/ports/mail/postfixadmin]# pkg install phppgadmin-php72
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 7 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        phppgadmin-php72: 5.1_5
        php56-session: 5.6.39
        php56: 5.6.39
        postgresql95-client: 9.5.15_2
        php56-json: 5.6.39
        php56-pdo_pgsql: 5.6.39_1
        php56-pdo: 5.6.39

Number of packages to be installed: 7

I stopped this and did a portmaster -B -D databases/phppgadmin it it
installed
===>>> All dependencies are up to date

===>  Cleaning for phppgadmin-php72-5.1_5
===>  Cleaning for phppgadmin-php56-5.1_5
===>  Cleaning for phppgadmin-php71-5.1_5
===>  Cleaning for phppgadmin-php73-5.1_5
# you can customize the installation directory
# by setting PGADMDIR in /etc/make.conf
===>  License GPLv2 accepted by the user
===>   phppgadmin-php72-5.1_5 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by phppgadmin-php72-5.1_5 for building
===>  Extracting for phppgadmin-php72-5.1_5
=> SHA256 Checksum OK for phpPgAdmin-5.1.tar.bz2.
===>  Patching for phppgadmin-php72-5.1_5


Thank you,


Walter

On Thu, Dec 27, 2018 at 5:08 AM Matthew Seaman <matthew at freebsd.org> wrote:

> On 27/12/2018 01:45, Walter Parker wrote:
> > I've just upgraded an existing FreeBSD 11.1 system with php56 to FreeBSD
> > 11.2 and php72.
> >
> > In order to do this, I used a mix of ports and packages to delete php56
> and
> > all of the php56 extensions and replace them with php72 and php72
> > extensions. Everything is working now, but when I try to install anything
> > using pkg, it wants to reinstall php56 and serveral php56 extensions.
> This
> > happens for packages that don't have php56 as a dependency.
> >
> > For example
> >  pkg install alpine
> >
>
> As far as I can tell, this is nothing to do with alpine itself, which
> doesn't seem to depend on PHP at all.  My guess is that you have some
> other PHP-based application installed which has an unmet dependency on
> php56.
>
> If you run 'pkg upgrade -n' without trying to install anything new, what
> happens?  Also try 'pkg version -vRL=' Do you have any orphaned packages?
>
> See if you can work out what it is you've installed that wants to pull
> in php56.  Judging by the dependencies in your original post, it could
> be something like databases/phppgadmin or a similar PHP application that
> uses a postgresql back-end. I'm going to use phppgadmin as the example
> package in what follows: you should substitute the actual package or
> packages that are relevant in your case.
>
> What can happen is the pkg(8) fails to handle the change from an
> unflavoured PHP package to a flavoured one.  It doesn't grok that an
> un-flavoured 'phppgadmin' package was essentially the same thing as
> 'phppgadmin-php56' and also that 'phppgadmin-php56' can be replaced by
> 'phppgadmin-php72'. You need to prod it into doing the right thing by
> making it install exactly the flavour of phppgadmin you want.
>
> So, assuming phppgadmin was the culprit, you simply need to run 'pkg
> install phppgadmin-php72'
>
>         Cheers,
>
>         Matthew
>
>
>
>
>
>

-- 
The greatest dangers to liberty lurk in insidious encroachment by men of
zeal, well-meaning but without understanding.   -- Justice Louis D. Brandeis


More information about the freebsd-stable mailing list