# pkgng sees different version of owncloud as recent on two boxes



## fwyKKCkQze2z (Sep 22, 2016)

Dear all

I have two FreeBSD boxes, one is running 10.1, the other (a fresh install) is running 10.3.

Interestingly `pkgng` sees different versions of owncloud as the most recent one on these installations. I would expect them to be the same (i.e. ownCloud 9.1).

FreeBSD 10.1:
`$ freebsd-version
10.1-RELEASE-p37

$ pkg update
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.

$ pkg version -v |grep own
owncloud-9.1.0                     <   needs updating (remote has 9.1.0_1)`

FreeBSD 10.3:
`$ freebsd-version
10.3-RELEASE-p7

$ pkg update
Updating FreeBSD repository catalogue...
FreeBSD repository is up-to-date.
All repositories are up-to-date.

$ pkg version -v |grep own
owncloud-9.0.3                     =   up-to-date with remote`

I doubt that the root cause is the different FreeBSD version, but that's how I distinguish them here. Could it be that the two machines are using a different pkg repo?

BTW: /usr/local/etc/pkg.conf is the same on both machines:
`$ openssl dgst -sha256 /usr/local/etc/pkg.conf
SHA256(/usr/local/etc/pkg.conf)= 13fc46c33a0b08aa45f0612f20d336b7a77bdd52928d15485f2d0dcb92132efe`
`$ openssl dgst -sha256 /usr/local/etc/pkg.conf
SHA256(/usr/local/etc/pkg.conf)= 13fc46c33a0b08aa45f0612f20d336b7a77bdd52928d15485f2d0dcb92132efe`


----------



## SirDice (Sep 22, 2016)

All versions of FreeBSD use the same ports tree so they should have the same ports/packages at the same versions. It is however possible the 10.3 machine is using the quarterly package repository while the 10.1 machine uses the latest. Check with `pkg -vv`.


----------



## fwyKKCkQze2z (Sep 22, 2016)

SirDice said:


> It is however possible the 10.3 machine is using the quarterly package repository



Unbelievably quick and Spot on (as usual...):

`$ diff -u pkgvv_10_3 pkgvv_10_1
--- pkgvv_10_3    2016-09-22 08:59:46.492131000 +0200
+++ pkgvv_10_1    2016-09-22 09:00:31.152136000 +0200
<snip>
 Repositories:
   FreeBSD: {
-    url             : "pkg+http://pkg.FreeBSD.org/FreeBSD:10:i386/quarterly",
+    url             : "pkg+http://pkg.FreeBSD.org/FreeBSD:10:amd64/latest",`

Now, the question is (you probably guessed that, right?): how do I change it?

Can I just adapt /etc/pkg/FreeBSD.conf?

`$ grep 'url' /etc/pkg/FreeBSD.conf
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/quarterly",`


----------



## fwyKKCkQze2z (Sep 22, 2016)

Ah, I guess that's it: https://forums.freebsd.org/threads/52843/#post-296554

Configure an override for "url".


----------



## ASX (Sep 22, 2016)

SirDice said:


> All versions of FreeBSD use the same ports tree so they should have the same ports/packages at the same versions. It is however possible the 10.3 machine is using the quarterly package repository while the 10.1 machine uses the latest. Check with `pkg -vv`.



Sorry if I'm a hijacking a little, but I have a pertinent question:
Doesn't mixing ports and packages from quarterly repository, defeat the whole purpose of the quarterly repository ?

I'm assuming the purpose of the quarterly repository is about offering increased stability ... am I wrong ?


----------



## SirDice (Sep 22, 2016)

ASX said:


> Doesn't mixing ports and packages from quarterly repository, defeat the whole purpose of the quarterly repository ?


Mixing ports and packages is of itself not recommended due to different, and possibly conflicting, options. Even if they both refer to the 'latest'.



ASX said:


> I'm assuming the purpose of the quarterly repository is about offering increased stability ... am I wrong ?


Yes, that's the idea at least. Truthfully, I've never used the quarterly repositories as I've been building my own package repositories for many, many years.


----------



## ASX (Sep 22, 2016)

SirDice said:


> Mixing ports and packages is of itself not recommended due to different, and possibly conflicting, options. Even if they both refer to the 'latest'.



Thanks.

But the Handbook state, literally:
"In addition, FreeBSD provides two *complementary* technologies for installing third-party software: the FreeBSD Ports Collection, for installing from source, and packages, for installing from pre-built binaries."
https://www.freebsd.org/doc/handbook/ports.html

Adding a warning in the handbook would be useful, particularly considering that from 10.2 the default packages repository is "quarterly".


----------



## SirDice (Sep 22, 2016)

Technically it's correct. A package is really nothing more than a pre-compiled port, as a matter of fact a port actually builds a package and it's this package that eventually gets installed. So there's no intrinsic difference between a port and a package. Problems arise however if you change any of the default options of a port, the packages in the official repositories are always built using the default options. This is were most of the problems start as enabling/disabling an option could potentially change the port's dependencies. This in turn could conflict with the options set in the packages.


----------



## ASX (Sep 22, 2016)

SirDice said:


> Mixing ports and packages is of itself not recommended





SirDice said:


> Technically it's correct.



... somewhat conflicting answers ...

What I understand is that it is "safe" mixing ports and packages when using the default options, I think this is usually the case when using "latest" repository, but might be this is not the case when using "quarterly" repository, and not because the user change the options, but because the options may have changed due to (new/changed) port requirements, thus my initial question about mixing ports and quarterly packages and the consequent possible loss of "stability", ultimately I think it is a bad idea mixing the two, and your answers seems to confirm my opinion.


----------



## SirDice (Sep 22, 2016)

ASX said:


> What I understand is that it is "safe" mixing ports and packages when using the default options,


Yes, that's correct. But if you're going to use the default options you might as well just install the package.


> I think this is usually the case when using "latest" repository, but might be this is not the case when using "quarterly" repository,


Yes, that's very likely to cause problems. Mostly because of conflicting versions. It can be done though but you'll have to make sure to checkout the quarterly ports branch, not the latest (see https://svnweb.freebsd.org/ports/branches/ ).

In this respect the handbook could probably use an update to clarify the difference between 'latest' and 'quarterly'.


----------



## ASX (Sep 22, 2016)

So far I used ports when packages were not available in repository, "audio/lame" , "astro/google-earth" and similar ...



SirDice said:


> Yes, that's very likely to cause problems. Mostly because of conflicting versions. It can be done though but you'll have to make sure to checkout *the quarterly ports branch*, not the latest (see https://svnweb.freebsd.org/ports/branches/ ).


I wasn't aware of that possibility.



> In this respect the handbook could probably use an update to clarify the difference between 'latest' and 'quarterly'.


Indeed!

Thanks for the additional clarifications.


----------



## ljboiler (Sep 22, 2016)

Please note that there are some ports (audio/lame, astro/google-earth to name a couple) that have licensing restrictions on redistribution and therefore cannot ever be built and put in the FreeBSD repository; you're stuck building those from the port.

Look for 'RESTRICTED' in the port Makefile.


----------

