On Thu, Apr 22, 2004 at 02:57:53PM +0100, Richard Bradley wrote: > Perhaps I am confused about the terminology here - by "packages" I mean > precompiled programs, and by "ports" I mean source code & make files for the > same programs.
Yes -- that's the correct terminology. But there's no real difference other than that: the pkg is built by compiling the port, and you can freely mix software derived from either source on your system. > I want to keep my programs up to date, and I want to use precompiled versions > as much as possible because it can take hours to compile a large program. > However some programs don't have packages, or the packages won't install > because I have used the ports system and other, required, programs are out of > sync. Absolutely. Now, where are you getting the pre-compiled packages from? If it's from one of the 4-Disk FreeBSD CD Rom sets, then yes, you're going to have problems with file versions as there have been updates to a number of major software systems gone into the ports tree in the 4 months or so since 4.9-RELEASE. On the other hand, if you're downloading the packages from the ftp sites, you should be within a week or two of the latest versions. Take a look at, eg: http://www.mirror.ac.uk/sites/ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-4-stable/Latest/ (if you want to access that server for your FTP'ing needs, it's also known as ftp2.uk.freebsd.org) That shows you all of the packages for 4-STABLE that have been updated since 4.9-RELEASE came out. (There's a similar directory structure for the 5.x packages). Looks like there was a new batch produced on 11th April, including the KDE packages: http://www.mirror.ac.uk/sites/ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-4-stable/Latest/kde.tgz That gets you kde-3.2.1_1 The ports tree is currently at kde-3.2.2 -- like you say, a minor version number behind. Unfortunately, that's just the way things are: the project only has a limited capacity to keep compiling new packages when ports get updated, especially since they're producing packages for both 4.x and 5.x at the moment. Also, sometime soon the new package set for 4.10-RELEASE will be produced, which means compiling *everything* in the ports tree from scratch. You should be able to get all of the dependencies of KDE etc. as precompiled packages -- using: # pkg_add -r kde will try and download everything required. I should note that you're particularly unlucky right now with both KDE and Gnome having gone through some major updates just recently. Usually the lag between the port coming out and the updated package doesn't affect such a large proportion of all of the available ports/packages. > If I use `portupgrade -PP` (i.e. forcing it to use packages) it (almost) > always fails because there are never precompiled packages of the same version > as my (cvsup'ed) ports tree. > > In the same way, `portupgrade -P` (i.e. try to use packages) is equivalent to > `portupgrade` (i.e. compile from source) because of the version lag in the > packages as compared to the ports. > > One solution might be to get cvsup to check out slightly older versions of the > port tree that matches up with the available packages. However this doesn't > seem possible. As someone else commented, you can hold various packages inside pkgtools.conf -- that means portupgrade won't even attempt to upgrade them. Or you can tell portupgrade that you want certain ports to be installed either preferentially or exclusively via packages -- see the section in /usr/local/etc/pkgtools.conf on USE_PKGS and USE_PKGS_ONLY. If you enter the names of the really big packages that you never want to spend time compiling in one or other of those arrays, then you can let portupgrade upgrade everything else around them. You will find that certain ports are marked as 'ignored' if they depend on a port where there isn't the latest version of a package available yet, but that includes a lot of ports that wouldn't need to be upgraded anyhow. You can certainly check out a backdated version of the ports tree via cvsup(1) -- eg. to get the ports tree from 1st April just add: *default date=2004.04.01.12.00 to your supfile. Cheers, Matthew -- Dr Matthew J Seaman MA, D.Phil. 26 The Paddocks Savill Way PGP: http://www.infracaninophile.co.uk/pgpkey Marlow Tel: +44 1628 476614 Bucks., SL7 1TH UK
pgp00000.pgp
Description: PGP signature