WANTED: Tool to verify installed package/port consistancy
Matthew Seaman
matthew at freebsd.org
Tue May 14 07:58:10 UTC 2013
On 14/05/2013 02:53, Ronald F. Guilmette wrote:
> Running my revised version of the script yields this output:
>
> pkg_sanity: gettext-0.18.1.1: Newer than +CONTENTS file: /usr/local/lib/charset.alias
> pkg_sanity: linux_base-f10-10_5: Newer than +CONTENTS file: /compat/linux/etc/ld.so.cache
> pkg_sanity: linux_base-f10-10_5: Newer than +CONTENTS file: /compat/linux/var/cache/ldconfig/aux-cache
> pkg_sanity: p5-XML-SAX-0.99: /usr/local/lib/perl5/site_perl/5.14.2/XML/SAX/ParserDetails.ini: File failed MD5 checksum
> pkg_sanity: p5-XML-SAX-0.99: /usr/local/lib/perl5/site_perl/5.14.2/XML/SAX/ParserDetails.ini: 15bfbb02aa79670b148f21dfbac64843 versus cf8c5cb8a7b6cf7a8db7c53f1ba27148
>
> (Oh! And by the way, this date/time stamp pre-check is one that "pkg_info -g"
> _should_ really be doing also, but isn't. I'll be filing a PR on that.)
There's not much love for the old pkg_tools scripts nowadays, given that
their days are clearly numbered.
However, I really like your idea of comparing the mtime of package files
with the installation time of the package. I may just steal that idea
for pkgng...
> Hummm... Here's a hint. My current ParserDetails.ini file is shown below.
> On a different FreeBSD 9.1 system that I have here, this same file is
> present also, but is shorter (9 lines rather than 15) and contains only
> the first two sections, rather than four, as seen here.
>
> =============================================================================
> [XML::SAX::PurePerl]
> http://xml.org/sax/features/namespaces = 1
>
> [XML::SAX::Expat]
> http://xml.org/sax/features/namespaces = 1
> http://xml.org/sax/features/external-general-entities = 1
> http://xml.org/sax/features/external-parameter-entities = 1
>
> [XML::LibXML::SAX::Parser]
> http://xml.org/sax/features/namespaces = 1
>
> [XML::LibXML::SAX]
> http://xml.org/sax/features/namespaces = 1
>
>
> =============================================================================
Check what different SAX related perl modules you have on the two
different machines -- it should correspond to the contents of that file.
I believe that as you add different modules they will update
ParserDetails.ini to register themselves. Which means that
ParserDetails.ini should be treated like a user-modifiable configuration
file and not belong to any particular package.
Cheers,
Matthew
More information about the freebsd-ports
mailing list