# Some thoughts on PACKAGESITE, pkg_add, portupgrade



## achix (Dec 16, 2009)

Hi,
i have been deploying a new FreeBSD 8.0-RELEASE System on amd64 (AMD Phenom(tm) II X4 965 Processor).

I found out that the system (pkg_add, portupgrade), by default would choose 
ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-8.0-release/
as the base for fetching packages.

pkg_add -r would look for ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-8.0-release/Latest/portname.tbz

while portinstall -P would look for ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/amd64/packages-8.0-release/All/portname-x.y.z_w.tbz

I noticed for openoffice.org-3 and openjdk6 (and many other packages), that they dont exist in neither of the above URI's.

So, if someone goes by the book, and while the latest release is 8.0, they would spend days to compile ports like the two aforementioned above.

However, i noticed that the directories under ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-8-stable were literally *loaded* with stuff!!

openjdk, openoffice, kde4, and many many others.

So by setting 
setenv PACKAGESITE ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-8-stable/All/

i nearly got all my 500+ ports updated with minimal compilation (1-2 ports).

Now the question, would just changing the behavior of pkg_add, portupgrade to look at the -stable repository, eventually break something?

pkg_add -r, being more dump would certainly have/cause problems,
but portupgrade -P ?


----------



## Nirbo (Dec 17, 2009)

Changing pkg_add's PACKAGESITE isn't a problem at all if you're switching it to a compatible repository. Right now 8.0-RELEASE and 8.0-STABLE are close enough that you shouldn't notice any problems. And realistically I doubt you'd ever really have any serius problems installing 8-STABLE packages on 8.0-RELEASE (At least until 8.1-RELEASE, when you would probably be well advised to update to that )

I used to switch my PACKAGESITE to the pointyhat build cluster's package repository http://pointyhat.freebsd.org/errorlogs/ . That's way more reckless than what you're doing IMO


----------



## achix (Dec 18, 2009)

Thanx for the info.
Is there any reason/procedure according to which

```
ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-8-stable/All/
```
is/should be any different from

```
http://pointyhat.freebsd.org/errorlogs/amd64-8-packages-latest/All/
```
?
Is there any process involved between pointyhat and the ftp package repositories?
That said, and provided that http://pointyhat.freebsd.org/errorlogs/amd64-8-packages-latest/ provides normal packages, i find the "errologs" part of the above URI, ultra counter-intuitive to use it in PACKAGESITE.


----------



## achix (Dec 18, 2009)

just downloaded the first package from ports/editors 2bsd-vi-050325.tbz from each of the aforementioned URLs. same md5.


----------



## zeiz (Dec 18, 2009)

I do setenv all the time and yes, sometimes a broken package appears (very rare). Well it can be recompiled from source. 

On the other hand instead of keeping 8.0-RELEASE I would right away migrate to 8-STABLE by changing to RELENG_8 in supfile. Then rebuild world and kernel. Then follow STABLE "legally" up to 9.0-RELEASE 

PS> Right now I finished installation of xorg and kde4.3.4 from packages on 9-CURRENT (packageless so far). All the packages are from just packages-current (may be 8-CURRENT? . Xorg has none outdated packages, kde4 showed just 3 of third priority, portupgraded in 5 minutes and everything is running great


----------



## achix (Dec 18, 2009)

zeiz said:
			
		

> On the other hand instead of keeping 8.0-RELEASE I would right away migrate to 8-STABLE by changing to RELENG_8 in supfile. Then rebuild world and kernel. Then follow STABLE "legally" up to 9.0-RELEASE



That's the way, i've been working with FreeBSD since FreeBSD 2.2.7.
However this way:
a) I lose the merits of freebsd-update, especially when i run (for the first time) a GENERIC kernel (its the first time that i will try to live with freebsd-update instead of csup/cvsup)
b) I lose considerable amounts of time.

Now, as far as "legality" is concerned, i think that kernel-wise 8-STABLE will be kernel-compatible with 8.0 up to 8.1-RELEASE.
Also i think that kernel-system and ports have their own different lives. Good ports IMHO should compile and run in all supported platforms/architectures/supported releases (production and legacy, at the moment 8.0-RELEASE, 7.*, 6.*)


----------

