On 11/03/2013 10:26 AM, Alan McKinnon wrote:
> On 02/11/2013 21:06, Alexander Kapshuk wrote:
>>>> The basic problem is a stable system with a bunch of unstable packages
>>>>>> installed.
>>>>>>
>>>>>> The requested vlc version is ~arch, which wants a ~arch version of
>>>>>> gnutls. This conflicts with other stable packages that want a stable
>>>>>> version of gnutls.
>>>>>>
>>>>>> Mixing and matching arch and ~arch like this often causes unsolveable
>>>>>> problems, especially with basic libs like gnutls used by lots of
>>>>>> packages. In this specific case, I doubt very much that the problem is
>>>>>> solveable. Either make the entire system ~arch or downgrade vlc to
>>>>>> stable. Mixing is not recommended, not that it won't work (it often
>>>>>> does), but because users so often run into these problems and devs
>>>>>> usually will not help fix it. The user is thus totally on tehir own with
>>>>>> this one.
>>>>>>
>>>>>>
>>>> Ah, I wasn't aware that it wasn't a supported thing. Good points; the
>>>> testing necessary to support mixed systems is more than any dev team
>>>> could handle realistically. I mix and match, but only for a select few
>>>> packages that simply don't have a stable version.
>>>>
>>>> Alex: In order to get ~arch vlc, you had to put vlc in your
>>>> package.accept_keywords file. Try removing that to go back to the stable
>>>> build and see if that corrects things. If not, then I agree with Alan
>>>> and you should probably make the big decision of stable or testing.
>>>>
>> Thanks very much for your responses to my original query.
>>
>> What I did do prior to getting your responses was try and resolve the
>> dependency conflict as shown below.
>>
>> (1). I added '=net-libs/gnutls-3.2.5 ~x86' and
>> '=media-video/ffmpeg-1.2.4 ~x86' to package.accept_keywords:
>> box0=; egrep 'gnutls|ffmpeg' /etc/portage/package.accept_keywords
>> =net-libs/gnutls-3.2.5 ~x86
>> =media-video/ffmpeg-1.2.4 ~x86
>> (2). I then updated 'media-video/ffmpeg' to version
>> 'media-video/ffmpeg-1.2.4', like so:
>> emerge --ask '>media-video/ffmpeg-1.0.7'
>> !!! existing preserved libs:
>>>>>>>> package: media-video/ffmpeg-1.2.4
>>  *  - /usr/lib/libavutil.so.51
>>  *  - /usr/lib/libavutil.so.51.73.101
>>  *      used by /usr/bin/mencoder (media-video/mplayer-1.1.1-r1)
>>  *      used by /usr/bin/mplayer (media-video/mplayer-1.1.1-r1)
>>  *      used by /usr/lib/vlc/plugins/codec/libavcodec_plugin.so
>> (media-video/vlc-2.0.9)
>>  *      used by /usr/lib/vlc/plugins/demux/libavformat_plugin.so
>> (media-video/vlc-2.0.9)
>> Use emerge @preserved-rebuild to rebuild packages using these libraries
>> (3). I then pulled in the other updates:
>> emerge --ask --update --deep --with-bdeps=y --newuse world
>> (4). Rebuilt the preserved libs as recorded in
>> /var/lib/portage/preserved_libs_registry
>> emerge --ask @preserved-rebuild
>>
>> So far, the whole system seems to be running OK.
>
> Yes, that is how it is done
>
>
>> It did occur to me afterwards, like Alan and Daniel suggested, that
>> mixing stable and unstable packages was not a good idea.
>
> The reason it's not a good idea usually is that you get these conflicts
> with dependencies. The software still runs and things still work but the
> user can cause themselves lots of extra hassle to make it work.
>
> Here, vlc depends on a gnutls version 3, which is a bit sad. I would
> hope the authors of vlc would support all current versions of gnutls.
>
> One option is to ask "does your media player really require TLS
> support?" Maybe it's just a nice feature and you can do without it, so
> add to package.use:
>
> media-video/vlc -gnutls
>
> It's something worth considering
>
>> I put vlc ~x86 in package.keywords as instructed here,
>> http://www.videolan.org/vlc/download-gentoo.html.
>> box0=; cat /etc/portage/package.keywords
>> media-video/vlc ~x86
>>
>> Turns out, it wasn't such a good idea after all.
>>
>> What would I have to do to downgrade vlc, gnutls and ffmpeg to the
>> stable versions of the packages?
>> I guess I'd have to remove their respective entries from
>> /etc/portage/package.(accept)_keywords.
>> box0=; cat /etc/portage/package.keywords
>> media-video/vlc ~x86
>> box0=; cat /etc/portage/package.accept_keywords
>> =net-im/skype-4.2.0.11-r1 ~x86
>> =sys-devel/gettext-0.18.3.1-r1 ~x86
>> =net-libs/gnutls-3.2.5 ~x86
>> =media-video/ffmpeg-1.2.4 ~x86
>>
>> How would I instruct emerge to do that properly?
> Just run "emerge -avuND world" and emerge will do all the necessary
> downgrades.
>
> Then run "emerge -a --depclean" to remove any slotted libs that might
> have been pulled in and are no longer needed (a simple emerge world does
> not deal with those)
>
> Or, you can try sidestep the issue and avoid gnutls completely as above.
>
> Yet another option is to request that gnutls be slotted so that you can
> have v2 and v3 at the same time and don't have to choose (openssl
> already works this way). You do this by opening a feature request bug at
> bugs.gentoo.org
>
Thanks very much for all your replies.

I did as suggested above. It all worked without any further ado.

Thanks to you all once again.


Reply via email to