Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 571688 - revdep-rebuild: 'NoneType' object is not subscriptable
Summary: revdep-rebuild: 'NoneType' object is not subscriptable
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Portage Tools Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-01-12 19:01 UTC by PetaMem R&D
Modified: 2016-01-13 11:16 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description PetaMem R&D 2016-01-12 19:01:26 UTC
I encountered this on one of our Gentoo VMs

# revdep-rebuild
 * This is the new python coded version
 * Please report any bugs found using it.
 * The original revdep-rebuild script is installed as revdep-rebuild.sh
 * Please files bugs at: https://bugs.gentoo.org/
 * Checking dynamic linking consistency
 * Assign files to packages
Traceback (most recent call last):
  File "/usr/lib/python-exec/python3.4/revdep-rebuild", line 40, in <module>
    success = rebuild.main(rebuild.parse_options())
  File "/usr/lib/python3.4/site-packages/gentoolkit/revdep_rebuild/rebuild.py", line 171, in main
    success = rebuild(logger, assigned, settings)
  File "/usr/lib/python3.4/site-packages/gentoolkit/revdep_rebuild/rebuild.py", line 73, in rebuild
    _assigned = get_slotted_cps(assigned, logger)
  File "/usr/lib/python3.4/site-packages/gentoolkit/revdep_rebuild/assign.py", line 106, in get_slotted_cps
    cp = parts[0] + '/' + parts[1]
TypeError: 'NoneType' object is not subscriptable


Tried with Python 2.7, 3.4 both the same

Then did the revdep-rebuild.sh (thanks for keeping that) and it showed:

# revdep-rebuild.sh 
 * Configuring search environment for revdep-rebuild

 * Checking reverse dependencies
 * Packages containing binaries and libraries broken by a package update
 * will be emerged.

 * Collecting system binaries and libraries
 * Generated new 1_files.rr
 * Collecting complete LD_LIBRARY_PATH
 * Generated new 2_ldpath.rr
 * Checking dynamic linking consistency
[ 5% ]  *   broken /lib/libgpm.so.1.20.0 (requires libncurses.so.5)
[ 100% ]                 
 * Generated new 3_broken.rr
 * Assigning files to packages
 *   /lib/libgpm.so.1.20.0 -> /var/db/pkg/sys-libs/-MERGING-gpm
 * Generated new 4_raw.rr and 4_owners.rr
 * Cleaning list of packages to rebuild
 * Generated new 4_pkgs.rr
 * Assigning packages to ebuilds
/usr/bin/revdep-rebuild.sh: line 955: /var/db/pkg//var/db/pkg/sys-libs/-MERGING-gpm-1.20.7-r2/CONTENTS/SLOT: No such file or directory
 * Generated new 4_ebuilds.rr
 * Evaluating package order
ERROR: Invalid atom: '/var/db/pkg/sys-libs/-MERGING-gpm:'
 * 
 * Portage could not find any version of the following packages it could build:
 * /var/db/pkg/sys-libs/-MERGING-gpm:
 * 
 * (Perhaps they are masked, blocked, or removed from portage.)
 * Try to emerge them manually.
 * 
 * Warning: Portage cannot rebuild any of the necessary packages.


after manually cleaning that up and re-ran revdep-rebuild I got


# revdep-rebuild
 * This is the new python coded version
 * Please report any bugs found using it.
 * The original revdep-rebuild script is installed as revdep-rebuild.sh
 * Please files bugs at: https://bugs.gentoo.org/
 * Collecting system binaries and libraries
 * Checking dynamic linking consistency
 * Assign files to packages

 !!! Broken orphaned files: No installed package was found for the following:
        * /usr/bin/disable-paste
        * /usr/bin/display-buttons
        * /usr/bin/mouse-test
        * /usr/bin/display-coords
        * /usr/bin/hltest
        * /usr/bin/mev
        * /usr/bin/gpm-root
        * /usr/bin/get-versions

There is nothing to emerge. Exiting.


somehow there were files from gpm although the package itself was not installed. I removed them.


Maybe this helps to add some extra-robustness to revdep-rebuild.


Reproducible: Always