sdl-libs.dsl overwrites base system file.
Topic: sdl-libs.dsl overwrites base system file.
started by: Jason W
Posted by Jason W on Feb. 13 2008,03:26I was in the process of removing the empty menu entry in sdl-libs.dsl that was interfering with the MyDSL menu when I saw the extension included the symbolic link /usr/lib/libSDL-1.2.so.0 that is also in the base DSL system origonally pointing to /usr/lib/libSDL-1.2.so.0.0.4 (DSL version 4.2.5). In the extension it points to /usr/lib/libSDL-1.2.so.0.7.2, and when the extension is loaded it kills XMMS mpeg video playback. The Frozen-Bubble and Supertux extensions have newer SDL libraries in them and the same symlink pointing to the new SDL library but they do not interfere with XMMS playback. But evidently any SDL-containing .dsl and .unc extensions are going to overwrite this symlink and potentially cause problems. sdl-libs.dsl passed the declobber script test, though.
I cannot find any extensions so far that are dependent upon sdl-libs.dsl except for madbomber (correct me if I am wrong), and I will rework it in the near future. I was unable to compile madbomber originally with the sdl-libs.dsl extension even thought it contains the development files, and used the latest SDL version from source instead. But it ran with the existing sdl-libs.dsl so I didn't include SDL or make another extension for it.
Perhaps there is a way to make a .dsl SDL extension that does not replace that symbolic link, or maybe it is not that big of a deal. For now what I will do is make a .uci or .tar.gz of SDL libs and use that for the madbomber extension. I have not seen plinej around lately, but I would be happy for his input before making another sdl-libs extension since he is the origional author. Or anyone else's input as well.
Posted by mikshaw on Feb. 13 2008,09:14That sounds like a reasonable idea. I'm opposed to the use of any extension that overwrites original DSL files (with a few exceptions, such as gnu-utils). That is one of the great things about the UCI package: plug and unplug, with little chance of damage.
An alternative to overwriting existing files would be to install into /usr/local instead of /usr, although I personally prefer your idea of /opt