Date: Thu, 22 Mar 2007 23:25:42 +0100 From: Danny Pansters <danny@ricin.com> To: freebsd-ports@freebsd.org Subject: Re: Problems running pkgdb -fF Message-ID: <200703222325.43113.danny@ricin.com> In-Reply-To: <cb5206420703201106j7bc724e1vc8f7a99ecd3fa021@mail.gmail.com> References: <1174330341.26866.32.camel@shumai.marcuscom.com> <46001864.8050005@FreeBSD.org> <cb5206420703201106j7bc724e1vc8f7a99ecd3fa021@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
There should be single (or escaped double) quotes inside the "" for the sed argument. Seems to be caused by the combination of [ ] with \t. Observe: desktop# cat /COPYRIGHT | sed s/[ \t]// sed: 1: "s/[": unbalanced brackets ([]) But cat /COPYRIGHT | sed 's/[ \t]//' is OK. So "s|^\\(@comment[ \t][ \t]*ORIGIN:\\).*$|\\1#{origin}|" should be replaced by "'s|^\\(@comment[ \t][ \t]*ORIGIN:\\).*$|\\1#{origin}|'" Not tested as I'm not in sync with latest portstree and I don't know Ruby. Dan On Tuesday 20 March 2007 19:06:06 Andrew Pantyukhin wrote: > On 3/20/07, Sergey Matveychuk <sem@freebsd.org> wrote: > > Andrew Pantyukhin wrote: > > > On 3/19/07, Joe Marcus Clarke <marcus@marcuscom.com> wrote: > > >> Running pkgdb -Ff today gives me the following error: > > > > > > Just a "me too" here, and this problem appears during > > > portupgrade runs, too. > > > > Try the patch please. I could not find a box where I can reproduce the > > error, so it's not tested. Just a obvious quick fix. > > > > Index: pkgtools.rb > > =================================================================== > > RCS file: /cvsroot/portupgrade/pkgtools/lib/pkgtools.rb,v > > retrieving revision 1.16.2.4 > > diff -u -r1.16.2.4 pkgtools.rb > > --- pkgtools.rb 27 Feb 2007 11:34:59 -0000 1.16.2.4 > > +++ pkgtools.rb 20 Mar 2007 17:18:35 -0000 > > @@ -790,8 +790,7 @@ > > contents_file = $pkgdb.pkg_contents(pkgname) > > > > if grep_q_file(/^@comment[ \t]+ORIGIN:/, contents_file) > > - command = shelljoin('sed', > > - "s|^\\(@comment[ \t][ > > \t]*ORIGIN:\\).*$|\\1#{origin}|") > > + command = "sed s|^\\(@comment[ \t][ \t]*ORIGIN:\\).*$|\\1#{origin}|" > > else > > command = "(cat; echo '@comment ORIGIN:#{origin}')" > > end > > Stale origin: 'x11-wm/fluxbox-devel': perhaps moved or obsoleted. > -> The port 'x11-wm/fluxbox-devel' was moved to 'x11-wm/fluxbox' on > 2007-03-19 because: > "Merged into x11-wm/fluxbox" > 1x11-wm/fluxbox: not found > ^(@comment[: not found > sed: 1: "s": substitute pattern can not be delimited by newline or > backslash Fixed. (-> x11-wm/fluxbox) > > At least the error is shorter now. I can make my > /var/db/pkg available if you want. > _______________________________________________ > freebsd-ports@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-ports > To unsubscribe, send any mail to "freebsd-ports-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200703222325.43113.danny>