Ticket #110 (closed defect: invalid)
A few bug fixes for building a rpm from nicotine+-1.2.6
| Reported by: | vatbier@… | Owned by: | daelstorm |
|---|---|---|---|
| Priority: | major | Milestone: | |
| Component: | nicotine | Version: | 1.2.6 |
| Keywords: | Cc: |
Description
Hello,
I'm using Mandriva Linux 2007.
I solved a few errors trying to build a rpm from nicotine+-1.2.6.tar.bz2 with command "python setup.py bdist_rpm":
... building RPMs rpmbuild -ba --define _topdir /home/vatbier/Download/nicotine+-1.2.6/build/bdist.linux-i686/rpm --clean build/bdist.linux-i686/rpm/SPECS/nicotine.spec error: Unknown icon type: nicotine.png error: command 'rpmbuild' failed with exit status 1
I think Mandriva's rpmbuild doesn't like the word "Icon:" inside a .spec file. Maybe other rpm-based distro's don't suffer from this problem. See ht tp://archives.mandrivalinux.com/cooker/2007-01/msg02476.php:
well, without more comments, i choose: we disallow "Icon:" in our packages (through a rpmlint rule?) and closing this bug as wontfix
So in nicotine.spec "Icon: nicotine.png" must be removed. I did this by removing "icon = img/nicotine.png" from /home/vatbier/Download/nicotine+-1.2.6/setup.cfg.
Please put this info for Mandriva systems in the INSTALL file.
Again "python setup.py bdist_rpm": Next error: invalid Python installation: unable to open /usr/lib/python2.4/config/Makefile (No such file or directory)
The solution I found is: On some Linux systems, notably Debian-based systems, you'll need to have the Python2.4-dev package installed in order to be able to compile C extensions.
Mandriva Linux 2007 doesn't have python2.4-dev But I did find libpython2.4-devel, so I installed that.
Again "python setup.py bdist_rpm": Next error: creating /home/vatbier/rpm/tmp/nicotine-1.2.6-1-buildroot/usr/share/applications copying files/nicotine.desktop -> /home/vatbier/rpm/tmp/nicotine-1.2.6-1-buildroot/usr/share/applications creating /home/vatbier/rpm/tmp/nicotine-1.2.6-1-buildroot/usr/share/pixmaps error: can't copy 'files/nicotine-plus-32px.png': doesn't exist or not a regular file
And even after I was able to fix that error I got other error messages: + /bin/mkdir -p /home/vatbier/rpm/tmp/nicotine-1.2.6-1-buildroot/usr/share/doc/nicotine-1.2.6 + cp -pr COPYING MANIFEST doc/CHANGELOG doc/CHANGELOG_DOCS doc/INSTALL doc/KNOWN_BUGS doc/MAINTAINERS doc/README doc/README.import-winconfig doc/README.trayicon doc/TODO doc/TRANSLATIONS doc/TRANSLATORS /home/vatbier/rpm/tmp/nicotine-1.2.6-1-buildroot/usr/share/doc/nicotine-1.2.6 cp: cannot stat `doc/CHANGELOG_DOCS': No such file or directory cp: cannot stat `doc/README.trayicon': No such file or directory cp: cannot stat `doc/TRANSLATIONS': No such file or directory error: Bad exit status from /home/vatbier/rpm/tmp/rpm-tmp.16258 (%doc)
After a lot of scratching my head I found that there were lines missing in the file /home/vatbier/Download/nicotine+-1.2.6/MANIFEST: I inserted the following lines:
files/nicotine-plus-32px.png
doc/CHANGELOG_DOCS
doc/README.trayicon
doc/TRANSLATIONS
Again "python setup.py bdist_rpm": moving build/bdist.linux-i686/rpm/SRPMS/nicotine-1.2.6-1.src.rpm -> dist moving build/bdist.linux-i686/rpm/RPMS/noarch/nicotine-1.2.6-1.noarch.rpm -> dist The rpm was finally built.
Next error: installing the rpm on Mandriva: urpmi nicotine-1.2.6-1.noarch.rpm Some requested packages cannot be installed: nicotine-1.2.6-1.noarch (due to unsatisfied pygtk2[>= 2.4.0]) Continue installation anyway? (Y/n) n
The pygtk2.0 on my Mandriva Linux 2007 is 2.10.1, which is bigger than 2.4.0. I noticed that on Mandriva "pygtk2" is called "pygtk2.0". So I changed in /home/vatbier/Download/nicotine+-1.2.6/setup.cfg "pygtk2 >= 2.4.0" to"pygtk2.0 >= 2.4.0"
Please but this info for Mandriva systems in the INSTALL file.
Again python setup.py bdist_rpm: Then I was able to install the rpm with "urpmi nicotine-1.2.6-1.noarch.rpm".
Next error: Running nicotine: Traceback (most recent call last):
File "/usr/bin/nicotine", line 153, in ?
from pynicotine.gtkgui import frame
File "/usr/lib/python2.4/site-packages/pynicotine/gtkgui/frame.py", line 26, in ?
from userbrowse import UserBrowse?
File "/usr/lib/python2.4/site-packages/pynicotine/gtkgui/userbrowse.py", line 13, in ?
from entrydialog import *
ImportError?: No module named entrydialog
I noticed that in /usr/lib/python2.4/site-packages/pynicotine/gtkgui entrydialog.py was missing. Again I added the missing lines to /home/vatbier/Download/nicotine+-1.2.6/MANIFEST:
pynicotine/gtkgui/entrydialog.py
pynicotine/gtkgui/icondata.py
pynicotine/gtkgui/nowplaying.py
I uninstalled the wrong rpm. Again "python setup.py bdist_rpm" and "urpmi nicotine-1.2.6-1.noarch.rpm".
Finally nicotine+ worked for me.
Could you please put this info next to the download links of nicotine+-1.2.6.tar.bz2 or add it to a new package 1.2.6.1?
Daelstorm: thank you very much for nicotine+! Now I no longer have to boot WinXP and run Soulseek for Windows if I want to find a particular mp3. (Soulseek for Windows on Wine emulator doesn't work.)
Regards,
vatbier
