Doug Barton wrote:
Miroslav Lachman wrote:
I don't know if it is well known / documented somewhere in portmaster,
but after debugging, I realized that pkg_add on FreeBSD 6.3 has no long
options

This is why all of the ports tools should be in the ports tree. :)

I just added the fix to the svn version of portmaster, if you can
confirm that it works I'll add it to the port immediately. I was not
aware of this issue, and apparently you're the first person to test
package support on a release this old. Thank you, both for the testing
and the bug report.

It is not working - pkg_add on 6.3 has no option for "Install the package without fetching and installing dependencies". I mean, there is no long nor short option for this, so this portmaster's functionality cannot be easily ported to 6.3. That's why I suggest to disable packages support on FreeBSD =< 6.3 as it cannot work this way. pkg_add will always install dependencies on this old version.

6.3 pkg_add options
usage: pkg_add [-vInrfRMSK]
7.2 pkg_add options
usage: pkg_add [-viInfFrRMSK]

According to man pkg_add on 6.4, there are needed options
http://www.freebsd.org/cgi/man.cgi?query=pkg_add&apropos=0&sektion=0&manpath=FreeBSD+6.4-RELEASE&format=html

But not on 6.3
http://www.freebsd.org/cgi/man.cgi?query=pkg_add&apropos=0&sektion=0&manpath=FreeBSD+6.3-RELEASE&format=html

I think you don't need to spend a lot of time to solve this for 6.3 as it's Estimated EoL is January 31, 2010 ;)

Maybe something like this can be enough:

if [ ! `uname -r | egrep -q "^(5|6\.[0-3])"` ]; then
        echo "Packages options are not supported on your OS version"
        exit
fi

And one question - is it really mandatory to use
--local-packagedir=/usr/ports/packages if I want to install locally
available packages from standard path /usr/local/packages/All?

Yes.

Shouldn't it be default behavior?

IMO, no. I think that the vast majority of FreeBSD users just want to
be able to fetch packages and have them installed.

Without --local-packagedir portmaster is trying to fetch it from FTP:
"Package and/or archive not found at:
http://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.3-release/lang/";
and doesn't look at the local directory:
"There is no valid package to install, building port instead"

This is the desired behavior.

OK, I can live with it. :) I was asking it because somebody can use NFS mounted /usr/ports from build machine and then all packages are located in /usr/local/packages/All and packages should be installed from this location only (not fetched from FreeBSD FTP).

Is there a simple way to disable fetching packages from remote site and use local packages only? (something better than fake PACKAGEROOT?)

Anyway, thank you for packages support in portmaster! Now I am waiting for "more general scripting hooks such as BEFOREDEINSTALL and AFTERINSTALL" and then portmaster will have all features I need! :o)

Miroslav Lachman
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "[email protected]"

Reply via email to