Problems running pkgdb -fF
Danny Pansters
danny at ricin.com
Thu Mar 22 22:25:59 UTC 2007
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 at freebsd.org> wrote:
> > Andrew Pantyukhin wrote:
> > > On 3/19/07, Joe Marcus Clarke <marcus at 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 at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-ports
> To unsubscribe, send any mail to "freebsd-ports-unsubscribe at freebsd.org"
More information about the freebsd-ports
mailing list