Installing owncloud downgrades mysql57

Marius Schamschula lists at schamschula.com
Fri Jan 29 15:00:59 UTC 2016


Jim,

Great catch!

Currently installing…

Thanks!

On Jan 29, 2016, at 8:44 AM, Jim Ohlstein <jim at ohlste.in> wrote:

> 
> 
> On 1/29/16 9:21 AM, Marius Schamschula wrote:
>> Matthew,
>> 
>> Thanks.
>> 
>> On Jan 29, 2016, at 6:50 AM, Matthew Seaman <m.seaman at infracaninophile.co.uk> wrote:
>> 
>>> On 01/29/16 12:14, Marius Schamschula wrote:
>>>> I’m new to FreeBSD, but rather familiar to *NIX OSs (20 years of
>>>> various flavors of Linux, IRIX and (Mac) OS X/Darwin).
>>>> 
>>>> I'm attempting to install owncloud-8.2.2 under FreeBSD 10.2.>
>>>> I previously have installed mysql57 client and server. To my dismay I find
>>>> 
>>>> Installed packages to be REMOVED:
>>>> 	mysql57-server-5.7.10_1
>>>> 	mysql57-client-5.7.10_1
>>>> 
>>>> to be replaced by
>>>> 	mysql56-client: 5.6.27
>>>> 
>>>> No mention no replacement of mysql56-server. I’m not sure how
>>>> owncloud is expected to work w/o a working mysql-server. Never mind
>>>> that there may be backward incompatible changes between mysql56 and
>>>> mysql57.
>>> 
>>> That's one of those things: mysql57-client was removed because it
>>> conflicts with mysql56-client, and then mysql57-server was removed
>>> because it depends on mysql57-client.  However, once that happens,
>>> there's nothing that depends on mysql56-server to bring it in: your
>>> owncloud application only depends on mysqlXX-client -- which makes sens
>>> if you think about it: your mysql server could be on an entirely
>>> different machine and then you'ld be annoyed if you were forced to
>>> install mysqlXX-server where it wasn't needed.
>> 
>> Make sense.
>> 
>>>> It is somewhat unclear to me where in the dependency tree
>>>> mysql56-client: 5.6.27 is specified, i.e. if owncloud or one of its
>>>> dependencies makes this request.
>>>> 
>>>> I suppose I could do a mysqldump, and restore into mysql56-server,
>>>> but I really want to be using the current stable branch (as defined
>>>> upstream).
>>>> 
>>>> Is there any way to specify which version of mysql to use, i.e. a
>>>> variant? Under MacPorts I’d use something like
>>>> 
>>>> port install owncloud +mysql57
>>>> 
>>>> (if there were such a package - the case insensitive files system
>>>> precludes installing owncloud under OS X).
>>> 
>>> This is a well known limitation of binary packages under FreeBSD at the
>>> moment.  Dependencies on exact versions of packages are baked in, which
>>> means it is particularly hard to use alternate versions of software
>>> systems like python or php or perl and the system provided packages.
>>> 
>>> Mysql as a case in point is always going to be harder to substitute in
>>> because here the specific dependency is required because of the
>>> libmysql.so ABI version.
>>> 
>>> However, the answer here is to compile your own packages -- effectively
>>> the same as what you're doing with MacPorts.  To do that, look at this
>>> section in the Handbook:
>>> 
>>> https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ports.html
>>> 
>>> To prefer ports to build and link against mysql57, add this to the
>>> DEFAULT_VERSIONS variable in /etc/make.conf:
>>> 
>>> DEFAULT_VERSIONS+=  mysql=5.7
>> 
>> Unfortunately, this didn’t work for me. After creating (copying from share/examples) /etc/make.conf and adding DEFAULT_VERSIONS+=  mysql=5.7 to the file, I cded to /usr/ports/www/owncloud and ran
>> 
>> # make install
>> ===>  owncloud-8.0.4 cannot install: unknown MySQL version: 57.
>> *** Error code 1
>> 
>> Stop.
> 
> You're using an outdated ports collection as the current owncloud version is 8.2.2. I'm guessing that's why MySQL 5.7 isn't recognized. Try upgrading it with portsnap or svn.
> 
> 
>> 
>> This is strange, as mysql57-* are still installed. I then commented out the DEFAULT_VERSIONS line in /etc/make.conf and got the same result.
>> 
>> Is there a master list of the allowed versions of mysql, etc.? A quick search did not come up with anything other than https://wiki.freebsd.org/DEFAULT_VERSIONS and Mk/bsd.default-versions.mk which has
>> 
>> MYSQL_DEFAULT?=         5.6
>> 
>> which is exactly what I’m trying to avoid…
>> 
>> I also checked the owncloud Makefile and saw nothing requiring a specific version of mysql.
>> 
>>> (There are many other bits of software you can switch default versions
>>> in the same way)
>>> 
>>> 	Cheers,
>>> 
>>> 	Matthew
>> 
>> 
>> TIA,
>> 
>> Marius
>> --
>> Marius Schamschula
>> 
>> 
>> 
> -- 
> Jim Ohlstein
> 
> 
> "Never argue with a fool, onlookers may not be able to tell the difference." - Mark Twain

Marius
--
Marius Schamschula






More information about the freebsd-questions mailing list