Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 408917

Summary: Homepage variable contains sub variable
Product: Gentoo Linux Reporter: zvasylvv
Component: New packagesAssignee: Gentoo Quality Assurance Team <qa>
Status: UNCONFIRMED ---    
Severity: trivial    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/7424
Whiteboard:
Package list:
Runtime testing required: ---

Description zvasylvv 2012-03-19 21:28:52 UTC
Accordingly to the doc

HOMEPAGE	 Package's homepage. If you are unable to locate an official one, try to provide a link to freshmeat.net or a similar package tracking site. Never refer to a variable name in the string; include only raw text.

Next list of ebuilds have subvariable HOMEPAGE inside HOMEPAGE variable. Recursion?

vv@vv-Latitude-E5520 ~/work/own/ruby/portage3/source $ grep -r ' ${HOMEPAGE}' /dev/shm/portage3_data/portage/* | grep 'E='
/dev/shm/portage3_data/portage/dev-java/pdfbox/pdfbox-0.7.3-r2.ebuild:  elog "USE=doc, or ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/perltidy/perltidy-20101217.0.0.ebuild:HOMEPAGE="http://perltidy.sourceforge.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/mogilefs-server/mogilefs-server-2.590.0.ebuild:HOMEPAGE="http://www.danga.com/mogilefs/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/mogilefs-server/mogilefs-server-2.580.0.ebuild:HOMEPAGE="http://www.danga.com/mogilefs/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/mogilefs-server/mogilefs-server-2.570.0.ebuild:HOMEPAGE="http://www.danga.com/mogilefs/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/mogilefs-server/mogilefs-server-2.560.0.ebuild:HOMEPAGE="http://www.danga.com/mogilefs/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/mogilefs-server/mogilefs-server-2.550.0.ebuild:HOMEPAGE="http://www.danga.com/mogilefs/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/mogilefs-server/mogilefs-server-2.540.0.ebuild:HOMEPAGE="http://www.danga.com/mogilefs/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/mogilefs-server/mogilefs-server-2.530.0.ebuild:HOMEPAGE="http://www.danga.com/mogilefs/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/libintl-perl/libintl-perl-1.200.0.ebuild:HOMEPAGE="http://guido-flohr.net/projects/libintl-perl ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/gtk2-traymanager/gtk2-traymanager-0.50.0.ebuild:HOMEPAGE="http://gtk2-perl.sf.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/gtk2-trayicon/gtk2-trayicon-0.60.0.ebuild:HOMEPAGE="http://gtk2-perl.sf.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/gtk2-spell/gtk2-spell-1.40.0.ebuild:HOMEPAGE="http://gtk2-perl.sf.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/gtk2-spell/gtk2-spell-1.30.0.ebuild:HOMEPAGE="http://gtk2-perl.sf.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/gtk2-gladexml/gtk2-gladexml-1.7.0.ebuild:HOMEPAGE="http://gtk2-perl.sf.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/gtk2-ex-formfactory/gtk2-ex-formfactory-0.670.0.ebuild:HOMEPAGE="http://www.exit1.org/Gtk2-Ex-FormFactory/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/gnome2-wnck/gnome2-wnck-0.160.0.ebuild:HOMEPAGE="http://gtk2-perl.sourceforge.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/gnome2-perl/gnome2-perl-1.42.0.ebuild:HOMEPAGE="http://gtk2-perl.sourceforge.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/Nmap-Parser/Nmap-Parser-1.210.0.ebuild:HOMEPAGE="http://nmapparser.wordpress.com/ http://code.google.com/p/nmap-parser/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/Nmap-Parser/Nmap-Parser-1.200.0.ebuild:HOMEPAGE="http://nmapparser.wordpress.com/ http://code.google.com/p/nmap-parser/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/HTML-Mason/HTML-Mason-1.480.0.ebuild:HOMEPAGE="http://www.masonhq.com/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/File-RsyncP/File-RsyncP-0.700.0.ebuild:HOMEPAGE="http://perlrsync.sourceforge.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/Data-Stag/Data-Stag-0.110.0.ebuild:HOMEPAGE="http://stag.sourceforge.net/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/CursesWidgets/CursesWidgets-1.997.0.ebuild:HOMEPAGE="http://www.digitalmages.com/perl/CursesWidgets/index.html ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/Cache-Memcached/Cache-Memcached-1.290.0.ebuild:HOMEPAGE="http://www.danga.com/memcached/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-perl/CGI-FormBuilder/CGI-FormBuilder-3.50.100.ebuild:HOMEPAGE="http://www.formbuilder.org/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-util/autodia/autodia-2.140.0.ebuild:HOMEPAGE="http://www.aarontrevena.co.uk/opensource/autodia/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/dev-util/autodia/autodia-2.100.0-r1.ebuild:HOMEPAGE="http://www.aarontrevena.co.uk/opensource/autodia/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/eclass/kernel-2.eclass:HOMEPAGE="http://www.kernel.org/ http://www.gentoo.org/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/media-libs/exiftool/exiftool-8.75.ebuild:HOMEPAGE="http://www.sno.phy.queensu.ca/~phil/exiftool/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/media-libs/exiftool/exiftool-8.65.ebuild:HOMEPAGE="http://www.sno.phy.queensu.ca/~phil/exiftool/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/media-libs/exiftool/exiftool-8.60.ebuild:HOMEPAGE="http://www.sno.phy.queensu.ca/~phil/exiftool/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/media-libs/exiftool/exiftool-8.770.0.ebuild:HOMEPAGE="http://www.sno.phy.queensu.ca/~phil/exiftool/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/media-libs/exiftool/exiftool-8.50.ebuild:HOMEPAGE="http://www.sno.phy.queensu.ca/~phil/exiftool/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/perl-core/ExtUtils-MakeMaker/ExtUtils-MakeMaker-6.620.0.ebuild:HOMEPAGE="http://makemaker.org ${HOMEPAGE}"
/dev/shm/portage3_data/portage/perl-core/ExtUtils-MakeMaker/ExtUtils-MakeMaker-6.590.0.ebuild:HOMEPAGE="http://makemaker.org ${HOMEPAGE}"
/dev/shm/portage3_data/portage/perl-core/ExtUtils-MakeMaker/ExtUtils-MakeMaker-6.580.0.ebuild:HOMEPAGE="http://makemaker.org ${HOMEPAGE}"
/dev/shm/portage3_data/portage/perl-core/ExtUtils-MakeMaker/ExtUtils-MakeMaker-6.56-r1.ebuild:HOMEPAGE="http://makemaker.org ${HOMEPAGE}"
/dev/shm/portage3_data/portage/sys-apps/ack/ack-1.96.ebuild:HOMEPAGE="http://betterthangrep.com/ ${HOMEPAGE}"
/dev/shm/portage3_data/portage/sys-apps/ack/ack-1.94-r1.ebuild:HOMEPAGE="http://betterthangrep.com/ ${HOMEPAGE}"
vv@vv-Latitude-E5520 ~/work/own/ruby/portage3/source $

Also there ebuilds with PN/PV vars inside homepage variable but I am not sure if you accept this as bug(s)

Reproducible: Always
Comment 1 zvasylvv 2012-03-20 14:31:26 UTC
Under 

>> Also there ebuilds with PN/PV vars inside homepage variable but I am not sure if you accept this as bug(s)

I mean

app-emacs/nxml-gentoo-schemas/nxml-gentoo-schemas-20111129.ebuild:HOMEPAGE="http://dev.gentoo.org/~flameeyes/${PN}/"
app-misc/egads/egads-0.9.5.ebuild:HOMEPAGE="http://www.securesoftware.com/download_${PN}.htm"
dev-db/mysql-super-smack/mysql-super-smack-1.2.ebuild:HOMEPAGE="http://jeremy.zawodny.com/mysql/${MY_PN}/"
dev-embedded/sgpp-lite-arm-uclinux-bin/sgpp-lite-arm-uclinux-bin-2010.09.58.ebuild:HOMEPAGE="http://www.codesourcery.com/sgpp/lite/${CPU}"
dev-embedded/sgpp-lite-arm-linux-bin/sgpp-lite-arm-linux-bin-2010.09.50.ebuild:HOMEPAGE="http://www.codesourcery.com/sgpp/lite/${CPU}"
dev-embedded/sgpp-lite-arm-eabi-bin/sgpp-lite-arm-eabi-bin-2010.09.51.ebuild:HOMEPAGE="http://www.codesourcery.com/sgpp/lite/${CPU}"
dev-java/skinlf/skinlf-6.7.ebuild:HOMEPAGE="http://${PN}.l2fprod.com/"
dev-java/simplyhtml/simplyhtml-0.13.1.ebuild:HOMEPAGE="http://${PN}.sourceforge.net"
dev-java/jreleaseinfo/jreleaseinfo-1.3.0-r1.ebuild:HOMEPAGE="http://${PN}.sourceforge.net/"
dev-java/jpf/jpf-1.5.1.ebuild:HOMEPAGE="http://${PN}.sourceforge.net/"
dev-java/hamcrest-core/hamcrest-core-1.1.ebuild:HOMEPAGE="http://code.google.com/p/${MY_PN}/"
dev-java/batik/batik-1.7-r2.ebuild:HOMEPAGE="http://xmlgraphics.apache.org/${PN}/"
dev-java/backport-util-concurrent/backport-util-concurrent-3.1.ebuild:HOMEPAGE="http://${SF_PN}.sourceforge.net/"
dev-lang/v8cgi/v8cgi-0.9.2.ebuild:HOMEPAGE="http://code.google.com/p/${PN}/"
dev-lang/cilk/cilk-5.4.6.ebuild:HOMEPAGE="http://supertech.csail.mit.edu/${PN}/"
dev-perl/inline-files/inline-files-0.62.ebuild:HOMEPAGE="http://search.cpan.org/author/DCONWAY/${MY_P}"
dev-perl/cache-mmap/cache-mmap-0.09.ebuild:HOMEPAGE="http://search.cpan.org/author/PMH/${MY_P}"
dev-perl/XML-Stream/XML-Stream-1.22.ebuild:HOMEPAGE="http://search.cpan.org/~reatmon/${P}/"
dev-perl/XML-Grove/XML-Grove-0.46_alpha-r1.ebuild:HOMEPAGE="http://cpan.org/modules/by-module/XML/${MY_P}.readme"
dev-perl/XML-DT/XML-DT-0.47.ebuild:HOMEPAGE="http://search.cpan.org/~ambs/${P}/"
dev-perl/Tree-Simple/Tree-Simple-1.17.ebuild:HOMEPAGE="http://search.cpan.org/~stevan/${P}/"
dev-perl/Test-Manifest/Test-Manifest-1.22.ebuild:HOMEPAGE="http://search.cpan.org/~bdfoy/${P}/"
dev-perl/Test-Manifest/Test-Manifest-1.21.ebuild:HOMEPAGE="http://search.cpan.org/~bdfoy/${P}/"
dev-perl/Template-DBI/Template-DBI-2.64.ebuild:HOMEPAGE="http://search.cpan.org/dist/${P}/"
dev-perl/SVN-Mirror/SVN-Mirror-0.73.ebuild:HOMEPAGE="http://www.cpan.org/authors/id/C/CL/CLKAO/${P}.readme"
dev-perl/PerlIO-via-dynamic/PerlIO-via-dynamic-0.12.ebuild:HOMEPAGE="http://www.cpan.org/modules/by-module/PerlIO/${P}.readme"
dev-perl/Parse-Syslog/Parse-Syslog-1.09.ebuild:HOMEPAGE="http://search.cpan.org/~dschwei/${P}"
dev-perl/Number-Format/Number-Format-1.52.ebuild:HOMEPAGE="http://www.cpan.org/modules/by-authors/id/W/WR/WRW/${P}.readme"
dev-perl/Mail-ListDetector/Mail-ListDetector-1.01.ebuild:HOMEPAGE="http://www.cpan.org/modules/by-module/Mail/${P}.readme"
dev-perl/Jcode/Jcode-2.06.ebuild:HOMEPAGE="http://cpan.org/modules/by-authors/id/D/DA/DANKOGAI/${P}.readme"
dev-perl/IP-Country/IP-Country-2.23.ebuild:HOMEPAGE="http://search.cpan.org/~nwetters/${P}/"
dev-perl/IO-Interface/IO-Interface-1.03.ebuild:HOMEPAGE="http://search.cpan.org/dist/${P}/"
dev-perl/GD-SVG/GD-SVG-0.28.ebuild:HOMEPAGE="http://search.cpan.org/~twh/${P}/"
dev-perl/File-Slurp/File-Slurp-9999.13.ebuild:HOMEPAGE="http://search.cpan.org/~uri/${P}/"
dev-perl/Event/Event-1.10.ebuild:HOMEPAGE="http://www.cpan.org/modules/by-module/Event/${P}.readme"
dev-perl/Event/Event-1.09.ebuild:HOMEPAGE="http://www.cpan.org/modules/by-module/Event/${P}.readme"
dev-perl/Event-RPC/Event-RPC-0.90.ebuild:HOMEPAGE="http://www.exit1.org/${PN}/"
dev-perl/Devel-Cycle/Devel-Cycle-1.07.ebuild:HOMEPAGE="http://search.cpan.org/~lds/${P}/"
dev-perl/Crypt-OpenSSL-RSA/Crypt-OpenSSL-RSA-0.25.ebuild:HOMEPAGE="http://search.cpan.org/~iroberts/${P}/"
dev-perl/Class-Autouse/Class-Autouse-1.29.ebuild:HOMEPAGE="http://search.cpan.org/~adamk/${P}"
dev-perl/Class-Accessor/Class-Accessor-0.31.ebuild:HOMEPAGE="http://search.cpan.org/~kasei/${P}/"
dev-perl/CPAN-Mini/CPAN-Mini-0.562.ebuild:HOMEPAGE="http://search.cpan.org/~rjbs/${P}/"
dev-perl/CPAN-Mini-Inject/CPAN-Mini-Inject-0.18.ebuild:HOMEPAGE="http://search.cpan.org/~ssoriche/${P}/"
dev-perl/Apache-DBI/Apache-DBI-1.06.ebuild:HOMEPAGE="http://search.cpan.org/~pgollucci/${P}/"
dev-php/pecl-bbcode/pecl-bbcode-1.0.3_beta1.ebuild:HOMEPAGE="http://pecl.php.net/${PECL_PKG}"
dev-python/dreampie/dreampie-1.0.3.ebuild:HOMEPAGE="http://${PN}.sourceforge.net/"
dev-python/dreampie/dreampie-1.0.2.ebuild:HOMEPAGE="http://${PN}.sourceforge.net/"
dev-ruby/tidy_table/tidy_table-0.0.5-r2.ebuild:HOMEPAGE="http://seattlerb.rubyforge.org/${PN}/"
dev-ruby/tidy_table/tidy_table-0.0.5-r1.ebuild:HOMEPAGE="http://seattlerb.rubyforge.org/${PN}/"
dev-ruby/loquacious/loquacious-1.9.1.ebuild:HOMEPAGE="http://github.com/TwP/${PN}"
dev-ruby/loquacious/loquacious-1.9.0.ebuild:HOMEPAGE="http://github.com/TwP/${PN}"
dev-ruby/little-plugger/little-plugger-1.1.3.ebuild:HOMEPAGE="http://github.com/TwP/${PN}"
dev-ruby/little-plugger/little-plugger-1.1.2-r1.ebuild:HOMEPAGE="http://github.com/TwP/${PN}"
dev-ruby/flexmock/flexmock-0.9.0.ebuild:HOMEPAGE="http://${PN}.rubyforge.org/"
dev-ruby/flexmock/flexmock-0.8.11.ebuild:HOMEPAGE="http://${PN}.rubyforge.org/"
dev-ruby/actionwebservice/actionwebservice-2.3.5-r1.ebuild:HOMEPAGE="http://github.com/${MY_OWNER}/${PN}"
eclass/xemacs-packages.eclass:[ -z "$HOMEPAGE" ]    && HOMEPAGE="http://xemacs.org/"
eclass/ruby.eclass:HOMEPAGE="http://raa.ruby-lang.org/list.rhtml?name=${PN}"
eclass/php-ext-pecl-r2.eclass:HOMEPAGE="http://pecl.php.net/${PECL_PKG}"
eclass/perl-module.eclass:      HOMEPAGE="http://search.cpan.org/dist/${MY_PN:-${PN}}/"
eclass/java-pkg-2.eclass:       HOMEPAGE="http://commons.apache.org/${PN#commons-}/"
eclass/horde.eclass:HOMEPAGE="http://www.horde.org/${HORDE_PN}"
kde-misc/colibri/colibri-0.2.2.ebuild:HOMEPAGE="http://www.kde-look.org/content/show.php?content=${KDE_LOOK}"
media-gfx/springgraph/springgraph-79.ebuild:HOMEPAGE="${BASE_URI}"
media-plugins/vdr-dummydevice/vdr-dummydevice-1.0.3.ebuild:HOMEPAGE="http://phivdr.dyndns.org/vdr/${PN}/"
media-plugins/vdr-dummydevice/vdr-dummydevice-1.0.2.ebuild:HOMEPAGE="http://phivdr.dyndns.org/vdr/${PN}/"
media-plugins/vdr-chanman/vdr-chanman-0.0.6.ebuild:HOMEPAGE="http://www.messinalug.org/${PN}/"
media-radio/ibp/ibp-0.21.ebuild:HOMEPAGE="http://wwwhome.cs.utwente.nl/~ptdeboer/ham/${PN}.html"
net-mail/vqadmin/vqadmin-2.3.6.ebuild:HOMEPAGE="http://www.inter7.com/${PN}"
net-p2p/smet2html/smet2html-0.1.ebuild:HOMEPAGE="http://ed2k-tools.sourceforge.net/${PN}.shtml"
sci-biology/pysam/pysam-0.6.ebuild:HOMEPAGE="http://code.google.com/p/${PN} http://pypi.python.org/pypi/${PN}"
sci-electronics/gplcver/gplcver-2.12a.ebuild:HOMEPAGE="http://www.pragmatic-c.com/${MY_PN}"
sci-electronics/gplcver/gplcver-2.11a.ebuild:HOMEPAGE="http://www.pragmatic-c.com/${MY_PN}"
sci-geosciences/gpxviewer/gpxviewer-0.2.0.ebuild:HOMEPAGE="http://blog.sarine.nl/${PN}/"
sci-mathematics/fricas/fricas-1.1.6.ebuild:HOMEPAGE="http://${PN}.sourceforge.net/"
sci-mathematics/fricas/fricas-1.1.5.ebuild:HOMEPAGE="http://${PN}.sourceforge.net/"
sys-libs/openipmi/openipmi-1.4.14.ebuild:HOMEPAGE="http://sourceforge.net/projects/${PN}/"
sys-libs/openipmi/openipmi-1.4.12.ebuild:HOMEPAGE="http://sourceforge.net/projects/${PN}/"
sys-libs/openipmi/openipmi-1.3.18.ebuild:HOMEPAGE="http://sourceforge.net/projects/${PN}/"
vv@vv-Latitude-E5520 /dev/shm/portage3_data/portage $ 

Or other vars is not allowed or devmanual should be fixed
Comment 2 Michael Palimaka (kensington) gentoo-dev 2014-05-12 12:46:36 UTC
I currently see 87 packages affected by this, perhaps a repoman check would be nice.

I am curious as to the reason for banning variables from $HOMEPAGE is however.
Comment 3 Sergey Popov gentoo-dev 2014-05-16 13:30:38 UTC
I think that the whole idea of not using variables inside HOMEPAGE is about metadata cache consistency. However, if we use variables there, that are persistent on all arches(e.g. ${P}/${PN}/${PV} and so on), i do not see problem there.

But maybe i am missing something...
Comment 4 Ulrich Müller gentoo-dev 2014-05-16 13:38:19 UTC
(In reply to Sergey Popov from comment #3)
> I think that the whole idea of not using variables inside HOMEPAGE is about
> metadata cache consistency. However, if we use variables there, that are
> persistent on all arches(e.g. ${P}/${PN}/${PV} and so on), i do not see
> problem there.
> 
> But maybe i am missing something...

It is very convenient if you have an ebuild open in and editor and you can open the homepage's URL in your browser. Likewise, if you view the ebuild via some web interface (e.g., via gitweb, or in a bug's attachment). Allowing ${PN} there would break this.
Comment 5 Larry the Git Cow gentoo-dev 2018-03-26 19:18:09 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1d7554df702c0f2d111b9e14ec331f75aebe9334

commit 1d7554df702c0f2d111b9e14ec331f75aebe9334
Author:     Michael Mair-Keimberger <m.mairkeimberger@gmail.com>
AuthorDate: 2018-03-11 17:21:27 +0000
Commit:     Aaron Bauman <bman@gentoo.org>
CommitDate: 2018-03-26 19:15:40 +0000

    media-plugins/vdr-pin: use HTTPS, remove Variable in HOMEPAGE
    
    Bug: https://bugs.gentoo.org/408917

 media-plugins/vdr-pin/vdr-pin-0.1.14.ebuild | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)}