View Full Version : how to download ports?
hassan
December 9th, 2008, 20:19
Hello
I am using freeBSD on a system with low speed connection
is there any way to download ports elsewhere and install
then on my system?
thanks for help!
l2f
December 9th, 2008, 20:28
Hello,
fetch the tarball into a differente machine (fast one) and copy it to the slow machine: /usr/ports/distfiles and rerun make
how to get the fetch url: look into the Makefile
variable: MASTER_SITES and EXTRACT_SUFX to get the right tarball
or
run make and do ctrl+C when you see the fetch command.
Regards,
SirDice
December 9th, 2008, 20:29
Yes, you can download the source files on another system and copy them to /usr/ports/distfiles. A normal port's make will find them there.
Or download the pre-compiled packages and install those if you don't want to compile everything yourself.
marius
December 9th, 2008, 20:32
Yes, you can build ports on another computer and move the port/packaget over. Try using "make package-recursive" on the port you would like to move over to the other machine.
cd /usr/ports/editors/nano && make package-recursive
This will build and install the port on the machine you built it on, and you will have to uninstall it afterwards.
If you already have a port installed you can then make a package out of it without having to recompile the port.
pkg_create -Rb /var/db/pkg/nano-1.2.5/
This will make a package called nano-1.2.5.tbz in /var/db/pkg/ that you can later install with pkg_add
Ole
December 9th, 2008, 20:35
Hello
I am using freeBSD on a system with low speed connection
is there any way to download ports elsewhere and install
then on my system?
thanks for help!
I may suggest:
1) synchronize /usr/ports/ tree with another machine with fast Internet connection, then
2) (on the fast link machine) change current directory to interesting ports (for example kde3):
cd /usr/ports/x11/kde3
3) prepare all config files for all dependency:
make config-recursive
- doing this for a while you not get "no operation" after entering.
4) fetch ports and all dependency:
make fetch && make fetch-recursive
5) then burn /usr/ports/distfiles directory and /var/db/ports (saved options) to CD/flash drive and mount it to /usr/ports/distfiles and /var/db/ports on home machine.
6) go to ports dir (cd /usr/ports/x11/kde3) and "make install"
Also if release/architecture on machine matching you may himself compile all packages
make package-recursive
and after complete collect all .tbz files in /usr/ports to CD/flash for "pkg_add " in home machine
hassan
December 10th, 2008, 15:39
Thanks all
I will try that ;)
lme@
December 11th, 2008, 16:46
A nice thing to have would be the following:
# Download and unzip ports/{Mk,Makefile,$basefoo}
> fetch http://foo.freebsd.org/bar/ports_base.tbz
> tar xf ports_base.tbz
# Get INDEX
> make fetchindex
# Search the index and download all necessary port skeletons
> make quicksearch name=foobar
> make fetchskel-recursive portname=baz/foobar
# Compile foobar
> cd baz/foobar && make install clean
That way you only need to download
- Portstree base file like Makefiles etc. (a few MB)
- The port's and all dependent skeletons (a few KB)
This would also be very handy in embedded environments where hdd space is very limited.
MartijnAtLico
December 11th, 2008, 21:55
A nice thing to have would be the following:
# Download and unzip ports/{Mk,Makefile,$basefoo}
> fetch http://foo.freebsd.org/bar/ports_base.tbz
> tar xf ports_base.tbz
# Get INDEX
> make fetchindex
# Search the index and download all necessary port skeletons
> make quicksearch name=foobar
> make fetchskel-recursive portname=baz/foobar
# Compile foobar
> cd baz/foobar && make install clean
That way you only need to download
- Portstree base file like Makefiles etc. (a few MB)
- The port's and all dependent skeletons (a few KB)
This would also be very handy in embedded environments where hdd space is very limited.
Why would I want to compile ports in a embedded environment? I'd rather cross-compile them on another machine or just use packages.
lme@
December 12th, 2008, 10:01
You don't always have a big machine running the same version of FreeBSD around.
Sometimes the CPU speed is okay but you don't have enough free drive space like on a netbook with a SSD.
GD
December 19th, 2008, 01:35
I use porteasy :
#to download the php5 port + requirements:
porteasy -u lang/php5
(all that is needed is the Templates Mk and Tools present in the ports directory)
vBulletin® v3.8.7, Copyright ©2000-2012, vBulletin Solutions, Inc.