Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 Feb 2006 13:29:27 -0500
From:      Parv <parv@pair.com>
To:        Chandan Haldar <chandanh@gmail.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Trading cautiously on new ports
Message-ID:  <20060225182927.GB1102@holestein.holy.cow>
In-Reply-To: <44001DB9.2000503@gmail.com>
References:  <43F96644.3070306@gmail.com> <cb5206420602200015o3b0bdb00ve0f4942eff960229@mail.gmail.com> <43F99F17.1040407@gmail.com> <cb5206420602200413j5b5e4f9bs71261657b11dac69@mail.gmail.com> <43FA1C37.1070607@childeric.freeserve.co.uk> <43FC66DD.1080408@gmail.com> <44bqwwdafb.fsf@be-well.ilk.org> <44001DB9.2000503@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
in message <44001DB9.2000503@gmail.com>,
wrote Chandan Haldar thusly...
>
> This led me to find out how to check out the effects of installing
> a new port or new versions of installed ports (from a portsnap
> fetch or cvsup download) non-destructively by extracting the new
> version of a port <PATH> as a non-root user in a different ports
> directory
...
> and by attempting to build the new port version with "make" rather
> than with "make install clean".  This way I have no risk of
> upsetting my installed ports (installed as root) since anyway I
> cannot write in /usr/local or /usr/X11R6 etc as the non-root user.
> Once I see that the new port build finds all the installed
> dependency ports in order and the build completes without
> surprises, I rebuild it as root, deinstall the previous port
> version, and install the new one

Alternatively, you could change the owner of $PORTS/distfiles &
$WRKDIRPREFIX to your own user id;  run "make build" in the
directory of desired port.  If successful, run "make install" as
root.  That way, you would save time and unnecessary compilation.


> But is there a clean command for reporting the dependencies (with
> versions) of a new port or a new port version without actually
> attempting to make/install/ or upgrade it?

One way is by parsing 'INDEX*' (see textproc/p5-FreeBSD-Ports) which
lists the dependency of ports.  Other is running 'make
pretty-print-run-depends-list pretty-print-build-depends-list' in a
port directory[0].  Yet another method is to run "make -V
RUN_DEPENDS; make -V BUILD_DEPENDS"


> And may be such a command also shows the versions of these
> dependencies installed on the system at the moment, so that one
> can have a sneak preview of any upgrade trouble brewing?  The
> closest to this I see is "pkg_add -n" but it requires a built
> package.

You need pkg_info(1) command listed in "SEE ALSO" section of
pkg_add(1) man page.  Use the "-r" option to list dependencies of a
installed port/package.


[0] Oddly, pretty-print-run-depends-list target is listing no
    dependencies in print/teTex ...

      This port requires package(s) "" to run.

    ... which is just absurd as indicated by "make -V RUN_DEPENDS" ...

      /misc/local/share/texmf-local/ls-R:/misc/ports/print/tex-texmflocal \
      /misc/local/share/texmf-dist/LICENSE.texmf:/misc/ports/print/teTeX-texmf \
      latex:/misc/ports/print/teTeX-base \
      dvips:/misc/ports/print/dvipsk-tetex \
      xdvi:/misc/ports/print/xdvik


  - Parv

-- 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060225182927.GB1102>