3

I love kubuntu, but the day I get to install a new version without issue is the day I dance naked through the streets :-(

Trying to install 13.04 on my Dell XPS. The installer starts up fine, but when I get to hard disk setup I get a problem: the installer crashes. I have two hard disks with 12 partitions in total. When I select manual setup, I can configure the first 5 partitions without problem, but when I get to the sixt partition on the 1st hard disk, the installer crashes with the following error:

Installer crashed

/usr/lib/ubiquity/ubiquity/frontend/kde_components/PartitionModel.py", line 111, in parent parentItem = childItem.parent()

AttributeError: 'Partition' object has no attribute 'parent'

I've even tried not configuring the 6th partition on disk 1 and moving to disk 2 instead. When I try to configure a partition there, the installer crashes as well, but without an error (just a black screen)

Any suggestions?

3

I had the same error and after not finding a solution I decided to fix it myself. What I did:

  • open a konsole, become root and go to /usr/lib/ubiquity/ubiquity/frontend/kde_components/

    sudo -s
    cd /usr/lib/ubiquity/ubiquity/frontend/kde_components
    
  • open PartitionModel.py for editing:

    nano PartitionModel.py
    
  • navigate to line 111 (navigate with pageUp, Down and the cursor keys and check where you are with Ctrl-c; nano is not the easiest). You should find something like this there:

    def parent(self, index):
        if not index.isValid():
            return QtCore.QModelIndex()
    
        childItem = index.internalPointer()
        parentItem = childItem.parent()
    
        if parentItem == self.rootItem:
            return QtCore.QModelIndex()
    
        return self.createIndex(parentItem.row(), 0, parentItem)
    
  • the line "parentItem = childItem.parent()" should be line 111. Change it to this:

    try:
            parentItem = childItem.parent()
    except AttributeError:
            parentItem = self.rootItem
    
  • now the above method should look like this:

    def parent(self, index):
        if not index.isValid():
            return QtCore.QModelIndex()
    
        childItem = index.internalPointer()
        try:
            parentItem = childItem.parent()
        except AttributeError:
            parentItem = self.rootItem
    
        if parentItem == self.rootItem:
            return QtCore.QModelIndex()
    
        return self.createIndex(parentItem.row(), 0, parentItem)
    
  • make sure you only use spaces not tabs

  • restart the installer, and it should now not crash...

Worked for me, YMMV...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.