I want to use only '@FREE' license soft. The app-emulation/wine is licensed under 'LGPL', but it requires 'app-emulation/emul-linux-x86-medialibs' as dependence, which is 'MPEG-4' licensed. localhost # emerge -pv wine These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ~] app-emulation/emul-linux-x86-baselibs-20131008-r3 USE="development" ABI_X86="-32" 0 kB [ebuild N ~] app-emulation/emul-linux-x86-db-20131008 USE="development" 0 kB [ebuild N ~] app-emulation/emul-linux-x86-opengl-20131008 USE="development" ABI_X86="-32" 0 kB [ebuild N ~] app-emulation/emul-linux-x86-xlibs-20131008 USE="(development) opengl" ABI_X86="-32" 0 kB [ebuild N ~] app-emulation/emul-linux-x86-gtklibs-20131008-r1 USE="development" ABI_X86="-32" 0 kB [ebuild N ~] app-emulation/emul-linux-x86-medialibs-20131008-r1 USE="development" ABI_X86="-32" 0 kB [ebuild N ~] app-emulation/emul-linux-x86-soundlibs-20131008-r1 USE="alsa development" ABI_X86="-32" 0 kB [ebuild N ~] app-emulation/emul-linux-x86-gstplugins-20131008 USE="development" 0 kB [ebuild N ~] app-emulation/wine-1.7.0 USE="X alsa cups dos fontconfig gecko gstreamer jpeg lcms ldap mono mp3 ncurses nls opengl perl png prelink run-exes ssl threads truetype udisks xcomposite xinerama xml -capi -custom-cflags -gphoto2 -gsm -odbc -openal -opencl -osmesa -oss -pulseaudio -samba -scanner (-selinux) {-test} -v4l" ABI_X86="32 64 (-x32)" LINGUAS="en_US ru uk -ar -bg -ca -cs -da -de -el -en -eo -es -fa -fi -fr -he -hi -hr -hu -it -ja -ko -lt -ml -nb_NO -nl -or -pa -pl -pt_BR -pt_PT -rm -ro -sk -sl -sr_RS@cyrillic -sr_RS@latin -sv -te -th -tr -wa -zh_CN -zh_TW" 20,768 kB Total: 9 packages (9 new), Size of downloads: 20,768 kB The following license changes are necessary to proceed: (see "package.license" in the portage(5) man page for more details) # required by app-emulation/emul-linux-x86-soundlibs-20131008-r1 # required by app-emulation/emul-linux-x86-gstplugins-20131008 # required by app-emulation/wine-1.7.0[abi_x86_32,gstreamer] # required by wine (argument) >=app-emulation/emul-linux-x86-medialibs-20131008-r1 MPEG-4 localhost # So, what's the sense of LGPL'ed app-emulation/wine, while it requires non-free package for installation (on amd64 arch)?
wine on x86 and on amd64 without ABI_X86=32 does not require emul-linux-x86-* packages, and is not affected by their redistribution terms. wine's dependency on emul-linux-x86-medialibs is also optional on amd64 with ABI_X86=32. If you disable the use flags (gphoto2 openal gstreamer alsa gsm mp3 scanner v4l pulseaudio), wine-1.7.0 should install without requiring the package. The emul-linux-x86-* packages are currently being phased out in favour of natively built multilib, controlled with the ABI_X86 use expand. The work on this is ongoing, and not all of wine's dependencies are available with native multilib yet, so wine currently does depend on the emul-linux-x86-* packages. With ABI_X86=32 set, emul-linux-x86-medialibs-20131008-r1 does not declare itself as falling under the MPEG-4 license, but for compatibility reasons it depends on media-libs/faac which does. As the libraries wine uses are available with native multilib, more of the optional features should be available without requiring emul-linux-x86-medialibs. Currently, from the list mentioned above, the (openal alsa gsm mp3 v4l) use flags can be enabled with native multilib.
(In reply to eroen from comment #1) > As the libraries wine uses are available with native multilib, more of the > optional features should be available without requiring > emul-linux-x86-medialibs. Currently, from the list mentioned above, the > (openal alsa gsm mp3 v4l) use flags can be enabled with native multilib. No, with alsa and mp3 it doesn't. However, USE="-alsa -gstreamer -mp3 oss" is working. Sorry for false alarm.
And yet, I don't understand why I should disable alsa (LGPL project), gstreamer (LGPL-2+ project), ...etc USE flags in wine (LGPL project) to solve the license problem with it's binary (app-emulation/emul-linux-x86-medialibs) dependency... The only non-free code here is the 'aac' ('MPEG-4' license), but it [aac] is mentioned nowhere in ebuilds. I doubt very much that concretely 'aac' code affects the efficiency of the alsa, or gstreamer, or openal... for using them with wine. So the wine is not the issue. The app-emulation/emul-linux-x86-medialibs should be modified. There must be at least USE flag (aac?) that would enable media-libs/faac(?) support. Why there's no such USE?
(In reply to Andrey Aleksandrovich from comment #0) > So, what's the sense of LGPL'ed app-emulation/wine, while it requires > non-free package for installation (on amd64 arch)? Packages do not list the licenses of their dependencies. (In reply to Andrey Aleksandrovich from comment #3) > Why there's no such USE? Because it is a binary package. I suggest you to file a bug to ask for a multilib variant instead. Feel free to link the people there to this bug so they can better understand which particular multilib packages you need added to the Portage tree.
(In reply to Tom Wijsman (TomWij) from comment #4) > (In reply to Andrey Aleksandrovich from comment #3) > > Why there's no such USE? > > Because it is a binary package. > > I suggest you to file a bug to ask for a multilib variant instead. Feel free > to link the people there to this bug so they can better understand which > particular multilib packages you need added to the Portage tree. It's clearly simple. The app-emulation/emul-linux-x86-medialibs must be divided on two. For example, app-emulation/emul-linux-x86-medialibs - base code (@FREE license), which has 'mpeg4' USE flag. If USE='mpeg4' the additional dependency app-emulation/emul-linux-x86-mpeg4, which contains non-free code ('MPEG-4' license), is added.
It is binary; I suggest you to switch to the multilib variant, which is split.
(In reply to Tom Wijsman (TomWij) from comment #6) > It is binary; I suggest you to switch to the multilib variant, which is > split. What do you mean? Change whole system from x86_64 to x86?
(In reply to Andrey Aleksandrovich from comment #7) > (In reply to Tom Wijsman (TomWij) from comment #6) > > It is binary; I suggest you to switch to the multilib variant, which is > > split. > > What do you mean? Change whole system from x86_64 to x86? Rather to x86_64 + x86 (multilib); but besides that, x86 would be an option too.
(In reply to Tom Wijsman (TomWij) from comment #8) > (In reply to Andrey Aleksandrovich from comment #7) > > (In reply to Tom Wijsman (TomWij) from comment #6) > > > It is binary; I suggest you to switch to the multilib variant, which is > > > split. > > > > What do you mean? Change whole system from x86_64 to x86? > > Rather to x86_64 + x86 (multilib); but besides that, x86 would be an option > too. Oh, but I already have it (multilib), and it still requires 'MPEG-4' license with app-emulation/wine's USE="alsa". Or, as mentioned in comment 1: > With ABI_X86=32 set, emul-linux-x86-medialibs-20131008-r1 does not declare > itself as falling under the MPEG-4 license, but for compatibility reasons > it depends on media-libs/faac which does. So, this is the same.
(In reply to Andrey Aleksandrovich from comment #9) > (In reply to Tom Wijsman (TomWij) from comment #8) > > (In reply to Andrey Aleksandrovich from comment #7) > > > (In reply to Tom Wijsman (TomWij) from comment #6) > > > > It is binary; I suggest you to switch to the multilib variant, which is > > > > split. > > > > > > What do you mean? Change whole system from x86_64 to x86? > > > > Rather to x86_64 + x86 (multilib); but besides that, x86 would be an option > > too. > > Oh, but I already have it (multilib), and it still requires 'MPEG-4' license > with app-emulation/wine's USE="alsa". > Or, as mentioned in comment 1: > > With ABI_X86=32 set, emul-linux-x86-medialibs-20131008-r1 does not declare > > itself as falling under the MPEG-4 license, but for compatibility reasons > > it depends on media-libs/faac which does. > So, this is the same. It is different, emul-linux-x86-* only has x86; whereas I mentioned x86_64 + x86. See the table: https://wiki.gentoo.org/wiki/Multilib Thus I'm talking about the multilib versions of the ebuilds in the packages themselves, which use that ABI_X86 USE_EXPAND flag; not about emul-linux-x86-*.
Let me be more explicit to make it clear: app-emulation/wine does not need faac, it is not part of its NATIVE_DEPEND; if it doesn't need faac on amd64, it is not needed on x86 either as that would be odd. So, the only way for faac to come in is when the emul-linux-x86 approach pulls it in (app-emulation/wine sometimes doesn't explicitly list the alternative; furthermore, it still prefers emul-linux-x86 above the other approach); but that doesn't imply that app-emulation/wine actually needs it. The solution here is to use ABI_X86=32, which you have set; as well as to on top of that make sure that media-libs/faac can't be installed, you can use /etc/portage/package.provided for this purpose. Adding a specific version of media-libs/faac there will satisfy the dependency, but not actually install the package; you might be required to still accept the license on media-libs/faac alone, however knowing that it won't get installed that won't be a problem. And thus, by using the split multilib approach; you can filter by what you need.
I guess, I understood you. Look, that is 'emerge --pretend': http://bpaste.net/show/175495/ I have learned 'app-emulation/emul-linux-x86-medialibs' ebuild and find out that 'MPEG-4' license key depends on 'abi_x86_32'. But in my case (see link above) it's hard-masked for 'app-emulation/emul-linux-x86-medialibs' (it's in brackets). So, what's my actions?
Ah, as I run testing (~amd64) as opposed to stable (amd64) my experience here is different; looking further into this I find: /usr/portage/profiles/hardened/linux/amd64/package.use.stable.mask: # Michał Górny <mgorny@gentoo.org> (24 Sep 2013) # on behalf of gx86-multilib project <multilib@gentoo.org> # Mask abi_x86_32 on stable until emul-* packages are made # fully redundant and end-user experience in resolving # flag changes and blockages is generally smooth. # Please keep in sync with default/linux/amd64/13.0. ... app-emulation/emul-linux-x86-medialibs abi_x86_32 ... So, this is why your experience is different, they mask that USE flag on stable. To unmask it, You can create /etc/portage/profile/package.use.mask and add: app-emulation/emul-linux-x86-medialibs -abi_x86_32 You'll probably need to do the same for the rest of the split libraries needed. As I haven't tried this myself; that experience might be scary, so, good luck.
Ok, I did that, but now I have this http://bpaste.net/show/175738/