Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Nov 2005 08:15:47 -0800
From:      "Michael C. Shultz" <ringworm01@gmail.com>
To:        Jan Grant <Jan.Grant@bristol.ac.uk>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: gnome-upgrade.sh
Message-ID:  <200511110815.48118.ringworm01@gmail.com>
In-Reply-To: <200511110729.36677.ringworm01@gmail.com>
References:  <43726E40.3090701@iaces.com> <Pine.GSO.4.62.0511111516410.19268@mail.ilrt.bris.ac.uk> <200511110729.36677.ringworm01@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday 11 November 2005 07:29, Michael C. Shultz wrote:
> On Friday 11 November 2005 07:23, Jan Grant wrote:
> > On Fri, 11 Nov 2005, Michael C. Shultz wrote:
> > > > > One last thing, if you make a script that does the conversion,
> > > > > might I have a copy?  Here is how I'll set up pm-020.conf to work:
> > > >
> > > > Surely. pkgtools.conf is actually a ruby script: I've no idea how
> > > > dynamically the rules are evaluated but something that works ona
> > > > prettystock bunch of settings should be close to trivial.
> > >
> > > Thank you.  If it works well I might use it to have portmanager pick up
> > > settings from portupgrade "on the fly", or at least provide some sort
> > > of conversion command.  Thanks :)
> >
> > Attached uses ruby to parse the pkgtools.conf (it relies on the
> > portupgrade ruby package) - it'll spit out the appropriate sections
> > (HOLD_PKGS, BEFOREBUILD, AFTERINSTALL and MAKE_ARGS) in what I think the
> > portmanager format is (although the script is trivial, as you can see).
> > Note that the MAKE_ARGS etc go through a hash/dictionary and
> > consequently are unordered. A small snippet of the output I get from
> > this:
> >
> > [[[
> > CATEGORY/PORT|OPTION=|          # do not delete this line!
> >
> > # Ignored packages from HOLD_PKGS
> >
> > IGNORE|bsdpan-*|
> > IGNORE|x11/nvidia-driver|
> > IGNORE|editors/openoffice*|
> >
> > # STOP entries come from BEFOREBUILD
> >
> >
> > # START entries come from AFTERINSTALL
> >
> > START|/databases/postgresql7 chmod a+x
> > /usr/local/share/postgresql/502.pgsql| START|/www/jakarta-tomcat5 chmod
> > a-x /usr/local/etc/rc.d/020.jakarta-tomcat*.sh|
> >
> > # Package options from MAKE_ARGS
> > # Note: pkgtools.conf will use the UNION of all matching lines
> >
> > security/gnupg|WITH_SUID_GPG=yes|
> > devel/subversion|WITH_PYTHON=yes WITH_MOD_DAV_SVN=yes WITHOUT_BDB=yes|
> > x11/kde3||
> > deskutils/kdepim3|WITH_KPILOT=yes|
> > www/gallery||
> > www/rt*|WITH_FASTCGI=yes WITH_APACHE2=yes DB_TYPE=Pg DB_HOST=localhost
> > DB_DATABASE=rt3 DB_USER=rt3| www/apache2|WITH_PROXY_MODULES=yes|
> > multimedia/kdemultimedia*|WITH_LAME=yes WITH_XINE=yes WITH_MPEGLIB=yes|
> > */*|BATCH=yes|
> > java/jdk14|NATIVE_BOOTSTRAP=yes JAVA_HOME=|
> > */kde*|WITH_KDE_DEBUG=yes|
> > mail/exim|WITH_EXIMON=yes WITH_EXISCAN_ACL=yes WITH_TCP_WRAPPERS=yes
> > WITH_PGSQL=yes WITHOUT_PERL=yes | ]]]
>
> 								^^^^^^^^^^^ little glitch?
>
> Works good, just one thing, portmanager has no dependencies, like to keep
> it that way.  How are you at awk? I use this awk script to do initial
> parsing of the config file:
>
> #!/bin/sh
> #
> # $1 = pm-020.conf $2 = output file name
> #
> echo "keyzzNULLzzvaluezzNULLzz" > $2;awk 'BEGIN{ FS = "|" } NF == 3 &&
> $1 !~ /#/  && $1 !~ /CATEGORY\/PORT/ && $2 !~ /#/ {print $1 "zzNULLz
>
> I'm no scripter so getting the above to work was painful ;)
>
> -Mike

Sorry I was being dumb.   The ruby script is no problem, it will only run
if portupgrade is installed so a dependency won't have to be put on ruby.

-Mike





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