Summary: | CastPodder (former iPodder) - new ebuild | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Salim Fadhley <sal> |
Component: | New packages | Assignee: | Default Assignee for New Packages <maintainer-wanted> |
Status: | RESOLVED CANTFIX | ||
Severity: | enhancement | CC: | gentoobugzilla, gts, jigme.datse, nick, roy, sgrayban |
Priority: | High | Keywords: | EBUILD |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | http://www.castpodder.net/ | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
ebuild for CastPodder 4.0
castpodder-5.0.ebuild castpodder-5.0-r1.ebuild Emerge log castpodder-5.0-r2.ebuild castpodder-5.0-r3.ebuild |
Description
Salim Fadhley
2005-12-04 03:51:32 UTC
*** Bug 118742 has been marked as a duplicate of this bug. *** Created attachment 83899 [details]
ebuild for CastPodder 4.0
First attempt at ebuild. I've been using net-misc/castpodder for the location.
Critique very welcome.
Recommend running xmms stand-alone and changing preferences to use alsa instead of oss. Created attachment 86170 [details] castpodder-5.0.ebuild New release (5.0) and new SRC_URI # diff castpodder-4.0.ebuild castpodder-5.0.ebuild 12c12 < SRC_URI="http://www.castpodder.net/${MY_NAME}-${PV}.tar.bz2" --- > SRC_URI="http://dev-1.borgforge.net:82/castpodder/chrome/site/downloads/${MY_NAME}-${PV}.tar.bz2" This ebuild does not work anymore since 4-5 days.
I installed it on 1 machine last week, where it was ok.
I installed it on 2 other ones today and I have following error:
> CastPodder
/usr/lib/python2.4/site-packages/wx-2.6-gtk2-unicode/wx/_core.py:13155: UserWarning: wxPython/wxWidgets release number mismatch
warnings.warn("wxPython/wxWidgets release number mismatch")
Traceback (most recent call last):
File "CastPodderGui.py", line 42, in ?
import pickle, bsddb.db, bsddb.dbshelve
ImportError: No module named bsddb.db
I installed dev-python/bsddb3 but it didn't help.
The error in question is the following lines in CastPodderGui.py # Multislot wxPython patch from gentoo dev # http://bugs.gentoo.org/show_bug.cgi?id=109116 import wxversion wxversion.ensureMinimal('2.6') # ensures the wx is atleast 2.6 Hmmm. For info: I have dev-python/wxpython-2.4.2.4-r3 and dev-python/wxpython-2.6.1.0 installed. (In reply to comment #7) > Hmmm. > For info: I have dev-python/wxpython-2.4.2.4-r3 and dev-python/wxpython-2.6.1.0 > installed. > That's probably causing a conflict then. Remove both and just install the 2.6 version. I don't think. On the PC where is works I also have the 2 wxpython versions installed. Besides, I unmerged wxpython-2.4 before emerging CastPodder, but it was reinstalled during the emerge. I focus more on bsddb. On the working machine, a "locate bsddb" returns: /usr/lib/python2.4/test/test_bsddb.py /usr/lib/python2.4/test/test_bsddb.pyc /usr/lib/python2.4/test/test_bsddb.pyo /usr/lib/python2.4/lib-dynload/_bsddb.so On the non-working ones: /usr/lib/python2.3/test/test_bsddb185.py /usr/lib/python2.3/test/test_bsddb3.pyc /usr/lib/python2.3/test/test_bsddb3.pyo /usr/lib/python2.3/test/test_bsddb.py /usr/lib/python2.3/test/test_bsddb3.py /usr/lib/python2.3/test/test_bsddb.pyc /usr/lib/python2.3/test/test_bsddb.pyo /usr/lib/python2.3/test/test_bsddb185.pyc /usr/lib/python2.3/test/test_bsddb185.pyo /usr/lib/python2.3/lib-dynload/_bsddb.so /usr/lib/python2.3/bsddb /usr/lib/python2.3/bsddb/dbrecio.pyc /usr/lib/python2.3/bsddb/dbrecio.pyo /usr/lib/python2.3/bsddb/dbobj.pyc /usr/lib/python2.3/bsddb/dbobj.pyo /usr/lib/python2.3/bsddb/db.py /usr/lib/python2.3/bsddb/dbobj.py /usr/lib/python2.3/bsddb/db.pyc /usr/lib/python2.3/bsddb/db.pyo /usr/lib/python2.3/bsddb/dbrecio.py /usr/lib/python2.3/bsddb/dbutils.py /usr/lib/python2.3/bsddb/dbshelve.pyc /usr/lib/python2.3/bsddb/dbshelve.pyo /usr/lib/python2.3/bsddb/__init__.pyc /usr/lib/python2.3/bsddb/__init__.pyo /usr/lib/python2.3/bsddb/dbtables.py /usr/lib/python2.3/bsddb/dbutils.pyc /usr/lib/python2.3/bsddb/dbutils.pyo /usr/lib/python2.3/bsddb/dbshelve.py /usr/lib/python2.3/bsddb/__init__.py /usr/lib/python2.3/bsddb/dbtables.pyc /usr/lib/python2.3/bsddb/dbtables.pyo /usr/lib/python2.4/test/test_bsddb185.py /usr/lib/python2.4/test/test_bsddb3.pyc /usr/lib/python2.4/test/test_bsddb3.pyo /usr/lib/python2.4/test/test_bsddb.py /usr/lib/python2.4/test/test_bsddb3.py /usr/lib/python2.4/test/test_bsddb.pyc /usr/lib/python2.4/test/test_bsddb.pyo /usr/lib/python2.4/test/test_bsddb185.pyc /usr/lib/python2.4/test/test_bsddb185.pyo /usr/lib/python2.4/lib-dynload/_bsddb.so (dev-python/bsddb3 is not installed) Is it possible that these files belong to a package that was removed from portage? "equery belongs /usr/lib/python2.3/bsddb/*" returns nothing... Well, I will 1st run python-updater, remove and cleanup python-2.3 and try again running CastPodder. Well I have no idea. I was just offering help. I don't use gentoo -- I'm onlt the developer for CastPodder. Looks like my mistake in the ebuild, I'm requiring wxpython-2.4* and CastPodder-5.0 now requires >= 2.6. I'll go over the prerequisites again and post a new ebuild. Created attachment 87514 [details] castpodder-5.0-r1.ebuild Bumped the dependencies. diff castpodder-5.0.ebuild castpodder-5.0-r1.ebuild 20c20 < =dev-python/wxpython-2.4* --- > =dev-python/wxpython-2.6* 22c22 < >=dev-python/pygtk-2.4" --- > >=dev-python/pygtk-2.6" Yes I had to require wx 2.6 because of few distributions only have that version now. Sorry for the troubles. Hi again. I cleanup up my system a bit. I removed python-2.3 and wxpython-2.4. 1. I just realized that something strange happened during the emerge of castpodder-5.0-r1 : it seems incomplete (emerge log attached). No /usr/bin/CastPodder for example. 2. Anyway, I tried starting it with "cd /usr/share/castpodder ; python CastPodderGui.py" but it still fails with the same error: Traceback (most recent call last): File "CastPodderGui.py", line 42, in ? import pickle, bsddb.db, bsddb.dbshelve ImportError: No module named bsddb.db The module bsddb.db seems to be missing (or failing?). What the hell is bsddb.db? Berkley DB, like dev-python/bsddb3? Is it part of python? Created attachment 87653 [details]
Emerge log
(In reply to comment #14) > Hi again. > > I cleanup up my system a bit. I removed python-2.3 and wxpython-2.4. > > 1. I just realized that something strange happened during the emerge of > castpodder-5.0-r1 : it seems incomplete (emerge log attached). > No /usr/bin/CastPodder for example. > > 2. Anyway, I tried starting it with "cd /usr/share/castpodder ; python > CastPodderGui.py" but it still fails with the same error: > Traceback (most recent call last): > File "CastPodderGui.py", line 42, in ? > import pickle, bsddb.db, bsddb.dbshelve > ImportError: No module named bsddb.db > > The module bsddb.db seems to be missing (or failing?). > What the hell is bsddb.db? Berkley DB, like dev-python/bsddb3? > Is it part of python? > Berkley DB support should be part of the normal install of python. But then again I have no idea how gentoo does there packages. IMO they shouldn't be separating any package that is a normal part of python. Your error is suggesting a few things. Broke python 2.4, missing the berkley db libs, or gentoo has done wrong. You could always just get the source tarball yourself and run that and see if that clears up your problems. I think I found something. # equery uses python [ Searching for packages matching python... ] [ Colour Code : set unset ] [ Legend : Left column (U) - USE flags from make.conf ] [ : Right column (I) - USE flags packages was installed with ] [ Found these USE variables for dev-lang/python-2.4.2 ] U I + + X : Adds support for X11 - - berkdb : Adds support for sys-libs/db (Berkeley DB for MySQL) - - bootstrap : !!internal use only!! DO NOT SET THIS FLAG YOURSELF!, used during original system bootstrapping - - build : !!internal use only!! DO NOT SET THIS FLAG YOURSELF!, used for creating build images and the first half of bootstrapping. + + doc : Adds extra documentation (API, Javadoc, etc) + + gdbm : Adds support for sys-libs/gdbm (GNU database libraries) + + ipv6 : Adds support for IP version 6 + + ncurses : Adds ncurses support (console display library) - - nocxx : Disable support for C++ (DON'T USE THIS UNLESS YOU KNOW WHAT YOU'RE DOING) + + readline : Enables support for libreadline, a GNU line-editing library that almost everyone wants + + ssl : Adds support for Secure Socket Layer connections + + tcltk : Support for Tcl and/or Tk GUI toolkits + + ucs2 : Enable byte size 2 unicode berkdb is described as a use flag for mysql, so I disabled it. It's perhaps a wrong description or the python ebuild is misusing it. I'll reenable, reinstall python and check what happens. Hehe. Yes, that's it! I only have a warning now, and CastPodder starts. $ CastPodder /usr/lib/python2.4/site-packages/wx-2.6-gtk2-unicode/wx/_core.py:13155: UserWarning: wxPython/wxWidgets release number mismatch warnings.warn("wxPython/wxWidgets release number mismatch") I'll add a USES clause for berkdb (I did have it set on my system so didn't see the python problem). I'll also investigate the /usr/bin/castpodder linkage problem. Thank you. According to the gentoo development guide: Currently it is impossible to depend upon "foo built with the bar USE flag enabled". So the best I can do is print out a message saying: Python must be built with the berkdb USE flag. You can check the user flags of python by running: equery uses python If anyone has a better solution, please chime in. Thank you. (In reply to comment #20) > Python must be built with the berkdb USE flag. > You can check the user flags of python by running: equery uses python > > If anyone has a better solution, please chime in. As this dies anyway, the following won't do any harm: <snip> inherit eutils if ! built_with_use dev-lang/python berkdb ; then eerror "Re-emerge python with USE=\"berkdb\"" die "python is missing berkdb support" fi </snip> Created attachment 87922 [details] castpodder-5.0-r2.ebuild added check for python built with berkdb /usr/bin/CastPodder should now be linked to /usr/share/castpodder/CastPodder.sh # diff castpodder-5.0-r1.ebuild castpodder-5.0-r2.ebuild 31a32,38 > pkg_preinst() { > if ! built_with_use dev-lang/python berkdb ; then > eerror "Re-emerge python with USE=\"berkdb\"" > die "python is missing berkdb support" > fi > } > 55a63 > # copy files into /usr/share/castpodder 57a66,68 > > # create a symbolic link from /usr/share/castpodder/CastPodder.sh to /usr/bin/CastPodder > dosym /usr/share/castpodder/CastPodder.sh /usr/bin/CastPodder 61,63d71 < # need to create a symbolic link from /usr/share/castpodder/CastPodder.sh to /usr/bin/CastPodder < ln -sf /usr/share/castpodder/CastPodder.sh /usr/bin/CastPodder < Using the castpodder-5.0-r2.ebuild from comment #22 I get this when running castpodder: usr/lib/python2.4/site-packages/wx-2.6-gtk2-ansi/wx/_core.py:13155: UserWarning: wxPython/wxWidgets release number mismatch warnings.warn("wxPython/wxWidgets release number mismatch") [<class 'ipodder.players.XMMSPlayer'>, <class 'ipodder.players.NoPlayer'>] Beep-Media-Player couldn't be imported Traceback (most recent call last): File "./CastPodderGui.py", line 3700, in ? main() File "./CastPodderGui.py", line 3694, in main myApp = iPodderGui(ipodder) File "./CastPodderGui.py", line 721, in __init__ wx.App.__init__(self, False, None) File "/usr/lib/python2.4/site-packages/wx-2.6-gtk2-ansi/wx/_core.py", line 7473, in __init__ self._BootstrapApp() File "/usr/lib/python2.4/site-packages/wx-2.6-gtk2-ansi/wx/_core.py", line 7125, in _BootstrapApp return _core_.PyApp__BootstrapApp(*args, **kwargs) File "./CastPodderGui.py", line 1538, in OnInit self.SetLanguages() File "./CastPodderGui.py", line 874, in SetLanguages self.InitLanguageMenu() File "./CastPodderGui.py", line 744, in InitLanguageMenu langmenu.AppendRadioItem(id,catalog.get_language_name(lang)) File "/usr/lib/python2.4/site-packages/wx-2.6-gtk2-ansi/wx/_core.py", line 10214, in AppendRadioItem return _core_.Menu_AppendRadioItem(*args, **kwargs) UnicodeEncodeError: 'ascii' codec can't encode character u'\xea' in position 7: ordinal not in range(128) Seems the last line is the relevant one. Seems to be a unicode error, about which I am clueless. OK easily solved, i re-emerged wxpython with the unicode USE flag enabled. Maybe you should add another test to check that wxpython was emerged with unicode support. Cheers, Nick Created attachment 89233 [details] castpodder-5.0-r3.ebuild added check to make sure wxpython was built with USE="unicode". Thank you Nick! # diff castpodder-5.0-r2.ebuild castpodder-5.0-r3.ebuild 36a37,40 > if ! built_with_use dev-python/wxpython unicode ; then > eerror "Re-emerge wxpython with USE=\"unicode\"" > die "wxpython is missing unicode support" > fi Right, next I intend to find out why the dosym symlink thing doesn't work. Its a path thing by the looks of this error message from the install: ln: creating symbolic link `/var/tmp/portage/castpodder-5.0-r2/image//usr/bin/CastPodder' to `/usr/share/castpodder/CastPodder.sh': No such file or directory It'll be a weekend thing. Weather looks foul so I might get a chance to look into it. Well, this looks like the end of the line for my CastPodder ebuild. The CastPodder team changed packaging for 5.1 to either a gui installer or an rpm and moved the downloads into their account protected forum download area. That's beyond my beginner ebuild skills. Best of luck, Roy (In reply to comment #27) > Well, this looks like the end of the line for my CastPodder ebuild. The > CastPodder team changed packaging for 5.1 to either a gui installer or an rpm > and moved the downloads into their account protected forum download area. > That's beyond my beginner ebuild skills. > > Best of luck, > Roy > There is a source tarball. All you had to do was email me and I would have sent it to you. And registering isn't that hard. Everyone place requires some registration now. For instance here. I can't reply to my own program problems unless I registered. Scott Castpodder has died as of Nov 8, 2006. Do we wish to take the code for castpodder and maintain it ourselves? Is someone willing to do this. From what I can see the answer looks like no. I could be wrong. We are not putting stuff with dead upstream into the tree, sorry. |