Multiple installation of one ports

John Nielsen lists at jnielsen.net
Tue Sep 16 19:59:29 UTC 2008


On Tuesday 16 September 2008 01:26:35 pm FreeBSD wrote:
> I've been asked by a customer to install Drupal on one server to manage
> a new site. No problem yet. But, he also asked if it would be possible
> to install it for other sites.
>
> I know that there is a warning if you want to install a port that is
> already installed, but is there a way to bypass this? I know I could
> install it from the tarball from the website, but I want to be able to
> use portupgrade and portaudit to deal with it.

I've done this in the past with Gallery and it looks like Drupal should be 
workable too. The thing to do is to make either a clone port or a slave 
port of the original and tweak a few things. In particular you'll want to 
add some sort of suffix to the port name and change the installation 
directory.

For example, you could make a directory called ports/www/drupal6-customer 
and drop this in its Makefile:

PKGNAMESUFFIX=-${CUSTNAME}
DRUPAL_BASE=drupal6-${CUSTNAME}
.include "../drupal6/Makefile"

You could then do things like
# cd /usr/ports/www/drupal6-customer
# make CUSTNAME=foo install clean
# make CUSTNAME=bar install clean
which would (with any luck) create independent installations of drupal 
under /usr/local/www/drupal6-foo and /usr/local/www/drupal6-bar. Or if 
you didn't want to worry about defining CUSTNAME all the time (or the 
desired name/location won't follow a predictable pattern) you could make 
a different slave port for each installation and hard-code the two 
values. I haven't tested any of this other than some quick verification 
of variables using make -V.

HTH. If you have specific questions about port mechanics the ports@ list 
might be the best place to ask. See also the Porter's Handbook: 
http://www.freebsd.org/doc/en/books/porters-handbook/

JN



More information about the freebsd-questions mailing list