Opened 15 years ago

Closed 15 years ago

#20607 closed submission (fixed)

new port : gpodder

Reported by: neric27@… Owned by: nerdling (Jeremy Lavergne)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: gpodder

Description

gPodder is a standalone podcast manager.

It provides anything to manage feeds and podcasts but requires an external player to actually listen/view the content, e.g. Apple Quick Time Player.

Attachments (6)

Portfile (1.3 KB) - added by neric27@… 15 years ago.
Portfile
py25-gpodder_configure_build.txt (13.8 KB) - added by nerdling (Jeremy Lavergne) 15 years ago.
gpodder.log (242.7 KB) - added by nerdling (Jeremy Lavergne) 15 years ago.
even with reinplace of "echo -n" to printf (see pre-patch phase) it fails. also tried switching to python2.6
Portfile.2 (2.2 KB) - added by nerdling (Jeremy Lavergne) 15 years ago.
gpodder-2.0, non-python module
Portfile.3 (2.2 KB) - added by neric27@… 15 years ago.
python26 variant : gnome-python26-extras & prefix to Library/Frameworks/…
Portfile.4 (2.1 KB) - added by neric27@… 15 years ago.
python26 variant : gnome-python26-extras (install in $prefix)

Download all attachments as: .zip

Change History (23)

Changed 15 years ago by neric27@…

Attachment: Portfile added

Portfile

comment:1 Changed 15 years ago by nerdling (Jeremy Lavergne)

Owner: changed from macports-tickets@… to snc@…
Status: newassigned

comment:2 Changed 15 years ago by nerdling (Jeremy Lavergne)

This did not build for me. It produced errors while working with what seem to be language files:

Error: Target org.macports.build returned: shell command "cd /opt/local/var/macports/build/_Users_snc_ports_python_py25-gpodder/work/gpodder-0.17.0 && make messages" returned error 2
Command output: msgmerge: `fi.po': No such file or directory
-n fr.po
........................................................... done.
msgmerge: `fr.po': No such file or directory
-n gl.po
........................................................... done.
msgmerge: `gl.po': No such file or directory
-n it.po
........................................................... done.
msgmerge: `it.po': No such file or directory
-n nb.po
........................................................... done.
msgmerge: `nb.po': No such file or directory
-n nl.po
........................................................... done.
msgmerge: `nl.po': No such file or directory
-n pt.po
........................................................... done.
msgmerge: `pt.po': No such file or directory
-n ru.po
........................................................... done.
msgmerge: `ru.po': No such file or directory
-n sv.po
........................................................... done.
msgmerge: `sv.po': No such file or directory
-n uk.po
........................................................... done.
msgmerge: `uk.po': No such file or directory
make[1]: *** [generators] Error 1
make: *** [gen_gettext] Error 2

Any suggestions?

comment:3 Changed 15 years ago by neric27@…

I don't know : this is what I get after port extract py25-gpodder :

ports_net_py25-gpodder/work/gpodder-0.17.0 elelay$ sudo make messages
intltool-extract --type=gettext/glade data/ui/gpodder.ui
Generating C format header file for translation.
Wrote data/ui/gpodder.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderaddpodcastdialog.ui
Generating C format header file for translation.
Wrote data/ui/gpodderaddpodcastdialog.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderchannel.ui
Generating C format header file for translation.
Wrote data/ui/gpodderchannel.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderconfigeditor.ui
Generating C format header file for translation.
Wrote data/ui/gpodderconfigeditor.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderdependencymanager.ui
Generating C format header file for translation.
Wrote data/ui/gpodderdependencymanager.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderepisode.ui
Generating C format header file for translation.
Wrote data/ui/gpodderepisode.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderepisodeselector.ui
Generating C format header file for translation.
Wrote data/ui/gpodderepisodeselector.ui.h
intltool-extract --type=gettext/glade data/ui/gpoddermaemopreferences.ui
Generating C format header file for translation.
Wrote data/ui/gpoddermaemopreferences.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderopmllister.ui
Generating C format header file for translation.
Wrote data/ui/gpodderopmllister.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderplaylist.ui
Generating C format header file for translation.
Wrote data/ui/gpodderplaylist.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderproperties.ui
Generating C format header file for translation.
Wrote data/ui/gpodderproperties.ui.h
intltool-extract --type=gettext/glade data/ui/gpoddersync.ui
Generating C format header file for translation.
Wrote data/ui/gpoddersync.ui.h
intltool-extract --type=gettext/glade data/ui/gpodderwelcome.ui
Generating C format header file for translation.
Wrote data/ui/gpodderwelcome.ui.h
xgettext -k_ -kN_ -o data/messages.pot src/gpodder/*.py data/ui/gpodder.ui.h data/ui/gpodderaddpodcastdialog.ui.h data/ui/gpodderchannel.ui.h data/ui/gpodderconfigeditor.ui.h data/ui/gpodderdependencymanager.ui.h data/ui/gpodderepisode.ui.h data/ui/gpodderepisodeselector.ui.h data/ui/gpoddermaemopreferences.ui.h data/ui/gpodderopmllister.ui.h data/ui/gpodderplaylist.ui.h data/ui/gpodderproperties.ui.h data/ui/gpoddersync.ui.h data/ui/gpodderwelcome.ui.h bin/gpodder
src/gpodder/console.py:133 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                             Le traducteur ne peut pas réordonner les arguments.
                                             Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                             et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/console.py:170 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                             Le traducteur ne peut pas réordonner les arguments.
                                             Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                             et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/download.py:637 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                              Le traducteur ne peut pas réordonner les arguments.
                                              Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                              et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/download.py:641 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                              Le traducteur ne peut pas réordonner les arguments.
                                              Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                              et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:2128 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:2134 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:2486 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:2615 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:2838 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:3267 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:3882 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:3912 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:4126 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/gui.py:4766 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/sync.py:387 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/sync.py:601 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/sync.py:608 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                          Le traducteur ne peut pas réordonner les arguments.
                                          Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                          et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/trayicon.py:344 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                              Le traducteur ne peut pas réordonner les arguments.
                                              Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                              et un mapping plutôt qu'un tuple pour les arguments.
src/gpodder/trayicon.py:348 : AVERTISSEMENT : La chaîne de format 'msgid' avec des arguments non nommés ne peut pas être correctement localisée :
                                              Le traducteur ne peut pas réordonner les arguments.
                                              Envisagez d'utiliser une chaîne de format contenant des arguments nommés,
                                              et un mapping plutôt qu'un tuple pour les arguments.
xgettext: AVERTISSEMENT : pour le fichier « bin/gpodder », l'extension «  » est inconnue. On suppose que c'est du C
bin/gpodder:22 : AVERTISSEMENT : chaîne sans terminaison
bin/gpodder:27 : AVERTISSEMENT : constante caractère sans terminaison
bin/gpodder:28 : AVERTISSEMENT : chaîne sans terminaison
bin/gpodder:42 : AVERTISSEMENT : chaîne sans terminaison
bin/gpodder:44 : AVERTISSEMENT : chaîne sans terminaison
bin/gpodder:187 : AVERTISSEMENT : constante caractère sans terminaison
sed -i'~' -e 's/SOME DESCRIPTIVE TITLE/gPodder translation template/g' -e 's/YEAR THE PACKAGE'"'"'S COPYRIGHT HOLDER/2006 Thomas Perl/g' -e 's/FIRST AUTHOR <EMAIL@ADDRESS>, YEAR/Thomas Perl <thp@perli.net>, 2006/g' -e 's/PACKAGE VERSION/gPodder '`cat bin/gpodder |grep ^__version__.*=|cut -d\" -f2`'/g' -e 's/PACKAGE/gPodder/g' data/messages.pot
make -C data/po generators
for langfile in *.po; do echo -n ${langfile}; msgmerge -U ${langfile} ../messages.pot; done
cs.po........................................................... terminé.
da.po........................................................... terminé.
de.po........................................................... terminé.
es.po........................................................... terminé.
fi.po........................................................... terminé.
fr.po........................................................... terminé.
gl.po........................................................... terminé.
it.po........................................................... terminé.
nb.po........................................................... terminé.
nl.po........................................................... terminé.
pt.po........................................................... terminé.
ru.po........................................................... terminé.
sv.po........................................................... terminé.
uk.po........................................................... terminé.
make -C data/po update
for langfile in *.po; do echo 'Compiling translation:' ${langfile}; mkdir -p ../locale/`basename ${langfile} .po`/LC_MESSAGES/; msgfmt ${langfile} -o ../locale/`basename ${langfile} .po`/LC_MESSAGES/gpodder.mo; done
Compiling translation: cs.po
Compiling translation: da.po
Compiling translation: de.po
Compiling translation: es.po
Compiling translation: fi.po
Compiling translation: fr.po
Compiling translation: gl.po
Compiling translation: it.po
Compiling translation: nb.po
Compiling translation: nl.po
Compiling translation: pt.po
Compiling translation: ru.po
Compiling translation: sv.po
Compiling translation: uk.po

comment:4 Changed 15 years ago by neric27@…

please could you post the output of port -d build after a port clean ?

Changed 15 years ago by nerdling (Jeremy Lavergne)

comment:5 Changed 15 years ago by nerdling (Jeremy Lavergne)

I've attached the debug of configure and build phases

comment:6 Changed 15 years ago by neric27@…

this is weird. Could you please tell me what OS,make,and shell you are using. the "-n fr.po" does not make sense : echo -n fr.po should not output -n ??? I'm on OS X Tiger.

comment:7 Changed 15 years ago by nerdling (Jeremy Lavergne)

Leopard (9L30) /usr/bin/make (GNU Make 3.81) /bin/bash (GNU bash, version 3.2.17(1)-release (i386-apple-darwin9.0))

comment:8 Changed 15 years ago by neric27@…

It was stupid of me to ask you about your shell, since make uses /bin/sh unless instructed (in the makefile) to use something else.

We have a slight mismatch in make versions (/usr/bin/make is 3.80 on Tiger), but I installed the one from macports and invoking "gmake messages" just worked. so it doesn't qualify...

The echo -n thing is normal (/bin/sh in 10.5 is doesn't support it, contrary to /bin/sh in 10.4 see http://www.macosxhints.com/article.php?story=20071106192548833).

However, this is only some feedback to the user : msgmerge shouldn't fail. if you go to the directory work/gpodder-0.17.0/data/po and invoke

msgmerge -U cs.po ../messages.pot

does it also fail with "msgmerge: `cs.po': No such file or directory" ?

While you're at it, could you please change the "echo -n" to "printf" ?

Thanks a lot,

comment:9 Changed 15 years ago by nerdling (Jeremy Lavergne)

Yup:

cd work/gpodder-2.0/data/po && sudo msgmerge -U cs.po ../messages.pot
......................................................... done.
msgmerge: `cs.po': No such file or directory

The differing echo -n behavior is from using bash versus sh (or perhaps built-in versus not).

Changed 15 years ago by nerdling (Jeremy Lavergne)

Attachment: gpodder.log added

even with reinplace of "echo -n" to printf (see pre-patch phase) it fails. also tried switching to python2.6

Changed 15 years ago by nerdling (Jeremy Lavergne)

Attachment: Portfile.2 added

gpodder-2.0, non-python module

comment:10 Changed 15 years ago by nerdling (Jeremy Lavergne)

Port: gpodder added; py25-gpodder removed
Summary: new port : py25-gpoddernew port : gpodder
Version: 1.7.1

I've attached a new portfile that does not use the python portgroup or the module naming scheme. Note that python26 variant doesn't work correctly since gnome-python-extras uses python25 presently.

I also commented out the language generators. I don't understand why they're needed, and even with /bin/echo inplace of echo and full paths it still says file not found. Disabling make messages rectified this.

Please try this port with +python25 and let me know if it produces what you intended.

comment:11 Changed 15 years ago by neric27@…

first of all, thank's so much for your perseverance ! Work has been a bit hectic for the past couple of months and I had not much time for macports.

about using make to build (hence dropping the pythonXX portgroup), I was under the false impression that one had to use setup.py, but even in the INSTALL, it reads "use make install". My mistake...

About mixing python25 an python26 in the same portfile, that's a really cool enhancement : I have a python26 version of gpodder sitting in my local_dports directory ; it works fine, but is a dumb s/py25/py26.

gnome-python26-extras is here : http://trac.macports.org/ticket/20608x, also needing care from my side (apply the correction suggested by "nodamage")...

I'll try the Portfile later tonight and tell you what I think (my main concern is about the translation part that you commented out).

Again : thanks a lot for your effort !

comment:12 Changed 15 years ago by neric27@…

The translations are indeed 100% working. You made it !

Still, there is an issue with the python26 variant that I would like to bring to your attention : I had heard that all python26 ports should install in /opt/local/Library/Frameworks/Python.framework/Versions/2.6. However, users are not likely to have /opt/local/Library/Frameworks/Python.framework/Versions/2.6/bin in their path, thus failing to launch py26 programs.

Please find attached an amended version of the Portfile, with gnome-python26-extras added for the python26 variants and a modified prefix.

Changed 15 years ago by neric27@…

Attachment: Portfile.3 added

python26 variant : gnome-python26-extras & prefix to Library/Frameworks/...

comment:13 in reply to:  12 Changed 15 years ago by nerdling (Jeremy Lavergne)

Replying to neric27@…:

I had heard that all python26 ports should install in /opt/local/Library/Frameworks/Python.framework/Versions/2.6

I would have to say that's for modules and not ports.

comment:14 Changed 15 years ago by neric27@…

Do you mean that if it's not used as a library, it doesn't have to live in /opt/local/Library/Frameworks/Python.framework/Versions/2.6 ?

comment:15 Changed 15 years ago by nerdling (Jeremy Lavergne)

Right: If gpodder is something you call outside of python then it ought not be in the python directory, unless it might have a piece that belongs there while the rest does not.

Changed 15 years ago by neric27@…

Attachment: Portfile.4 added

python26 variant : gnome-python26-extras (install in $prefix)

comment:16 Changed 15 years ago by neric27@…

I've reverted the prefix stuff.

If you agree with the Portfile as it is (Portfile.4), I would say it's ready to commit :-)

comment:17 Changed 15 years ago by nerdling (Jeremy Lavergne)

Resolution: fixed
Status: assignedclosed

You've earned snc's Über Stamp of Approval!

r60267.

Note: See TracTickets for help on using tickets.