RPM Community Forums

Mailing List Message of <rpm-devel>

Re: --parentdirs default in 5.0?

From: Jeff Johnson <n3npq@mac.com>
Date: Wed 09 Jan 2008 - 19:05:34 CET
Message-Id: <9E655281-D1E3-46F2-A7AC-DA4DDA36084A@mac.com>

On Jan 9, 2008, at 12:54 PM, Michael Jennings wrote:

> So check this out:
>
> root@pulsar /home #> yum install perl-Digest-SHA1 perl-Net-DNS
> Setting up Install Process
> Setting up Repos
> core                      100% |=========================|  951  
> B    00:00
> testing                   100% |=========================| 1.1  
> kB    00:00
> Reading repository metadata in from local files
> core      : ################################################## 187/187
> testing   : ##################################################  
> 1781/1781
> Excluding Packages in global exclude list
> Finished
> Parsing package install arguments
> Resolving Dependencies
> --> Populating transaction set with selected packages. Please wait.
> ---> Downloading header for perl-Digest-SHA1 to pack into  
> transaction set.
> error: rpmpkgRead: Header: (null)
> perl-Digest-SHA1-2.11-1.c 100% |=========================| 2.5  
> kB    00:00
> error: rpmpkgRead: Header: (null)
> ---> Package perl-Digest-SHA1.noarch 0:2.11-1.caos set to be updated
> ---> Downloading header for perl-Net-DNS to pack into transaction set.
> error: rpmpkgRead: Header: (null)
> perl-Net-DNS-0.60-1.caos. 100% |=========================|  15  
> kB    00:00
> error: rpmpkgRead: Header: (null)
> ---> Package perl-Net-DNS.x86_64 0:0.60-1.caos set to be updated
> --> Running transaction check
> --> Processing Dependency: perl(Net::IP) for package: perl-Net-DNS
> --> Processing Dependency: /usr/lib64/perl5/vendor_perl/5.8.5/ 
> x86_64-linux-thread-multi/Digest for package: perl-Digest-SHA1
> Importing Additional filelist information for dependency resolution
> core      : ################################################## 187/187
> testing   : ##################################################  
> 1781/1781
> --> Processing Dependency: perl(Digest::HMAC_MD5) for package: perl- 
> Net-DNS
> --> Processing Dependency: /usr/lib64/perl5/vendor_perl/5.8.5/ 
> x86_64-linux-thread-multi/auto/Digest/SHA1 for package: perl-Digest- 
> SHA1
> Importing Additional filelist information for dependency resolution
> --> Restarting Dependency Resolution with new changes.
> --> Populating transaction set with selected packages. Please wait.
> error: rpmpkgRead: Header: (null)
> error: rpmpkgRead: Header: (null)
> ---> Package perl-Digest-SHA1.noarch 0:2.11-1.caos set to be updated
> ---> Downloading header for perl-Digest-HMAC to pack into  
> transaction set.
> error: rpmpkgRead: Header: (null)
> perl-Digest-HMAC-1.01-5.n 100% |=========================| 3.0  
> kB    00:00
> error: rpmpkgRead: Header: (null)
> ---> Package perl-Digest-HMAC.noarch 0:1.01-5 set to be updated
> ---> Downloading header for perl-Net-IP to pack into transaction set.
> error: rpmpkgRead: Header: (null)
> perl-Net-IP-1.25-1.caos.n 100% |=========================| 2.3  
> kB    00:00
> error: rpmpkgRead: Header: (null)
> ---> Package perl-Net-IP.noarch 0:1.25-1.caos set to be updated
> error: rpmpkgRead: Header: (null)
> error: rpmpkgRead: Header: (null)
> ---> Package perl-Net-DNS.x86_64 0:0.60-1.caos set to be updated
> --> Running transaction check
> --> Processing Dependency: /usr/lib/perl5/vendor_perl/5.8.5/Net for  
> package: perl-Net-IP
> Importing Additional filelist information for dependency resolution
> --> Processing Dependency: /usr/lib/perl5/vendor_perl/5.8.5/Digest  
> for package: perl-Digest-HMAC
> Importing Additional filelist information for dependency resolution
> --> Processing Dependency: /usr/lib64/perl5/vendor_perl/5.8.5/ 
> x86_64-linux-thread-multi/Digest for package: perl-Digest-SHA1
> Importing Additional filelist information for dependency resolution
> --> Processing Dependency: /usr/lib64/perl5/vendor_perl/5.8.5/ 
> x86_64-linux-thread-multi/auto/Digest/SHA1 for package: perl-Digest- 
> SHA1
> Importing Additional filelist information for dependency resolution
> --> Finished Dependency Resolution
> Error: Missing Dependency: /usr/lib64/perl5/vendor_perl/5.8.5/ 
> x86_64-linux-thread-multi/Digest is needed by package perl-Digest-SHA1
> Error: Missing Dependency: /usr/lib64/perl5/vendor_perl/5.8.5/ 
> x86_64-linux-thread-multi/auto/Digest/SHA1 is needed by package  
> perl-Digest-SHA1
> Error: Missing Dependency: /usr/lib/perl5/vendor_perl/5.8.5/Net is  
> needed by package perl-Net-IP
> Error: Missing Dependency: /usr/lib/perl5/vendor_perl/5.8.5/Digest  
> is needed by package perl-Digest-HMAC
>
> The "error: rpmpkgRead: Header: (null)" messages are cosmetically bad

todo++

> but functionally irrelevant.  The errors at the bottom, however,
> indicate that parent directory dependencies seem to have somehow been
> re-activated.  Weren't these turned off by default for 5.0, or am I
> confused?
>

Nope, not changed at all in 5.0. That's what happens when you have  
dueling depsolvers
with different semantics, yum has its own depsolver.

Try
	rpm -Va --nofiles --orphandirs > /etc/rpm/sysinfo/Dirnames
to stub out the packaging flaws.

Alternatively, one can roll a filesystem-like package with %files to
claim ownership of the erroneously (because not owned by _ANY_
package) package directory paths.

Or follow the --noparentdirs option and flip the default setting.

Off to figger the
     error: rpmpkgRead: Header: (null)
issue.

73 de Jeff
Received on Wed Jan 9 19:06:12 2008
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.