Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 63803 - ACCEPT_LICENSE is not correctly parsed by eutils.eclass
Summary: ACCEPT_LICENSE is not correctly parsed by eutils.eclass
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Ebuild Support (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-09-12 11:09 UTC by John Nilsson
Modified: 2004-09-21 10:36 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
eutils.eclass patch (eutils.eclass.patch,434 bytes, patch)
2004-09-12 11:12 UTC, John Nilsson
Details | Diff
eutils.eclass patch with support for * in ACCEPT_LICENSE (eutils.eclass.patch,472 bytes, patch)
2004-09-12 14:30 UTC, John Nilsson
Details | Diff
eutils.eclass patch (eutils.eclass.patch,703 bytes, patch)
2004-09-18 18:01 UTC, John Nilsson
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description John Nilsson 2004-09-12 11:09:50 UTC
If more than one license is spcified in ACCEPT_LICENSE the feature does not work.

Reproducible: Always
Steps to Reproduce:
1. put ACCEPT_LICENSE="RTCW-ETEULA ut2003" in make.conf
2. emerge ut2004

Actual Results:  
License confirmation dialog will be shown.

Expected Results:  
emerge will start

Portage 2.0.51_pre22 (default-linux/x86/2004.2/gcc34, gcc-3.4.1,
glibc-2.3.4.20040808-r0, 2.6.8-gentoo-r1 i686)
=================================================================
System uname: 2.6.8-gentoo-r1 i686 AMD Athlon(TM) XP 1900+
Gentoo Base System version 1.5.3
distcc 2.17 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.90.0.1.1-r3
Headers:
Libtools: sys-devel/libtool-1.5.2-r5
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=athlon-xp -O3 -fweb -ftracer -ffast-math
-momit-leaf-frame-pointer -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/init.d /etc/terminfo /etc/env.d"
CXXFLAGS="-march=athlon-xp -O3 -fweb -ftracer -ffast-math
-momit-leaf-frame-pointer -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox sfperms"
GENTOO_MIRRORS="ftp://mirrors.sec.informatik.tu-darmstadt.de/gentoo/
http://ds.thn.htu.se/linux/gentoo http://ftp.du.se/pub/os/gentoo"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="3dnow X alsa apache2 avi berkdb cdr crypt dga divx4linux dvb dvd dvdread
evo faac faad flac foomaticdb gdbm gif gnome gstreamer gtk gtk2 gtkhtml guile
imlib innodb jpeg libg++ libgda libwww mad mikmod mmx motif mozilla mpeg mysql
nas ncurses network nptl oggvorbis opengl pam pdflib perl png python quicktime
readline rtc samba sdl slang spell sse ssl tcltk tcpd tiff truetype unicode x86
xml2 xmms xv xvid zlib linguas_en"
Comment 1 John Nilsson 2004-09-12 11:12:25 UTC
Created attachment 39452 [details, diff]
eutils.eclass patch

The problem seems to be that the "for" construct in eutils.eclass parses
ACCEPT_LICENSES as a single string. This patch makes it work on my system.
Comment 2 SpanKY gentoo-dev 2004-09-12 12:03:31 UTC
the problem is that if ACCEPT_LICENSE has * in it, things will get screwed up ...
Comment 3 John Nilsson 2004-09-12 12:15:49 UTC
Is it really smart to have support for "*" in such a feature? I wouldn't agree to anything I havn't read atleast.
Comment 4 SpanKY gentoo-dev 2004-09-12 12:27:55 UTC
that may be true for you but some of us dont want to have to build a list of all the current licenses and then have to update it later on as new licenses are added

portage exists to make life easier, not be a huge pita just because you didnt read some pita license
Comment 5 John Nilsson 2004-09-12 12:30:35 UTC
ACCEPT_LICENSE="ALL" then?
Comment 6 SpanKY gentoo-dev 2004-09-12 12:44:13 UTC
although that may be one solution, * is used as a standard everywhere else so if we can develop a solution that includes that, great

if not, ALL seems like an ok workaround
Comment 7 John Nilsson 2004-09-12 14:30:54 UTC
Created attachment 39464 [details, diff]
eutils.eclass patch with support for * in ACCEPT_LICENSE

This patch supports * it is a rather ugly hack though.
Comment 8 Chris Gianelloni (RETIRED) gentoo-dev 2004-09-17 14:19:18 UTC
Assigning to games@ since this is our baby
Comment 9 Chris Gianelloni (RETIRED) gentoo-dev 2004-09-17 14:21:30 UTC
ACCEPT_LICENSE, when being parsed by check_license, should now support multiple licenses.  Checked and verified locally on my machine with America's Army, UT2004, and Enemy Territory.
Comment 10 John Nilsson 2004-09-18 16:04:38 UTC
Has this been checked by a lawyer? Have you really accepted a licens if you put a * or any in such a configuration?
Any other legal stuff to think about?
Comment 11 John Nilsson 2004-09-18 18:01:08 UTC
Created attachment 39884 [details, diff]
eutils.eclass patch

Still doesn't work with ACCEPT_LICENSE="*", this patch fixes it.
Comment 12 John Nilsson 2004-09-18 18:01:45 UTC
Reopened the bug... se above
Comment 13 John Nilsson 2004-09-19 04:12:43 UTC
the other patch I submitted (attachment (id=39464))... ugly as it is. does support ACCEPT_LICENSE="RTCW-* ut200*"... is that better?
Comment 14 Chris Gianelloni (RETIRED) gentoo-dev 2004-09-20 11:28:43 UTC
I didn't add the * patches for a reason.  I was mostly trying to fix the problem with ACCEPT_LICENSE only working with one license.  The rest can wait until proper support is in portage, as it isn't something I want to tackle.  The * was added originally by vapier.

As for a lawyer's interpretation, I quite frankly, don't care whether it is legal or not, as the interpretation of the law and the licenses would vary from country to country.  Adding a * requires the user's acknowledgement that they are accepting all licenses.  I think it would hold up in court in the USA, but again, not my call, nor do I really care, especially since we are only doing license checking on a few games at the moment and not the entire portage tree.
Comment 15 John Nilsson 2004-09-21 02:38:36 UTC
Portage support or not, it is still bad to have that expanding construct in there. You can remove * support for all I care, but please apply my second patch so that it atleast doesnt expand. (I think it depends on bash >= 2 though.)

I reopen this again, mark as wontfix if you want to keep the bug.
Comment 16 Chris Gianelloni (RETIRED) gentoo-dev 2004-09-21 05:30:33 UTC
I cannot rely on a construct from a package which is not stable for stable packages.  Until bash >2 is stable, there's no way I am going to touch this.  If one of the other games devs wants it, they can grab it, but I don't see the need at this time, as there are tons of much more important things I can be spending my time on in relation to Gentoo, like the upcoming 2004.3 release.
Comment 17 John Nilsson 2004-09-21 10:11:34 UTC
Ok, I won't reopen it this time =). But just for the record, bash-2.05b-r9 has been stable for a while now...

I'm getting rather tierd of finding bugs noone cares about. Anything I should look into thats high on the agenda?
Comment 18 Chris Gianelloni (RETIRED) gentoo-dev 2004-09-21 10:34:59 UTC
I'm sorry... when you said bash >2 you made me think bash 3+ which was why I was saying it wasn't in stable.
Comment 19 Chris Gianelloni (RETIRED) gentoo-dev 2004-09-21 10:36:10 UTC
I applied the patch.... let's hope it works... *grin*