You are not logged in.

#1 2005-02-01 01:00:33

bardo
Member
Registered: 2004-12-06
Posts: 96

Necessary modprobe before building

Hi all!
I'm trying to build Beast, a sound composer/synth. I have no problems with the building process, except it needs OSS devices to build. So, someone will have SND_PCM_OSS statically compiled, maybe others (like me) have a module, someone won't have the support at all! ALSA support is a separate add-on which has to be compiled later.
So, what am I supposed to do? Put a disclaimer in the PKGBUILD? Check if uid==0, then add something that checks the module's existence, and if yes try to load it?

Question #2 (I think it's a FAQ, but I don't want to mess things too much, so I prefer to ask again): installation tries to overwrite three files in /usr/share/mime, XMLnamespaces, globs and magic. Should I let it do it? I think not. But maybe it adds necessary info to run the program... I don't know.

Thanks for your answers, I looked in every doc file I could find and all over the program's site, but I couldn't find anything useful...[/code]


dreaming in digital / living in realtime / thinking in binary / talking in ip / welcome to our world

Offline

#2 2005-02-01 12:01:38

Pajaro
Member
Registered: 2004-04-21
Posts: 884

Re: Necessary modprobe before building

OSS: compile the program using snd_pcm_oss module and then in the the post install function make it say that you need oss to run the program. With the base kernel everybody has the snd_pcm_oss module.

MIME: the files that conflict are owned by the package shared-mime-info (run: pacman -Qo /path/to/file to know this), so you should remove this files from the package and add a dependency in your package to shared-mime-info.

Then compare the files. If the files your package wants to install have some info that isn't in shared-mime-info package files then open a bug report.

Offline

#3 2005-02-01 16:13:37

JGC
Developer
Registered: 2003-12-03
Posts: 1,664

Re: Necessary modprobe before building

First of all, we don't build as root usually (XFree86 is another thing though). We use fakeroot to compile packages. With fakeroot, you can't install things on the system and can't load driver modules.

I don't know if OSS support is really a requirement to build BEAST, but you could make a note in the top of the PKGBUILD, it's very usual to notice those things in top of the PKGBUILD with some comments. The PKGBUILD is one of the first places to look at if something doesn't work.

About the MIME stuff: you have to check if the ./configure option has an option to disable mime updates, or disable database updates. It depends on the package. In the postinstall and postremove, you need to run update-mime-database to make sure MIME types are correct after installation or removal.

Offline

#4 2005-02-01 17:06:14

bardo
Member
Registered: 2004-12-06
Posts: 96

Re: Necessary modprobe before building

Pajaro: maybe my explaination wasn't very good... what I meant is that you *can* install the package, you can't *build* it  if you don't have that module/support. If you use ALSA, you can just install Bse-ALSA (another package I'm building, which depends on Beast).

About the MIME files, they're different. XMLnamespaces is just a line (and Beast's version is empty, so I could just ignore it).
Looking at magic and globs, they should be appended to the originals, I think. Or should the ahred-mime-info package include those information anyway?


JGC: the problem is just this, we shouldn't build as root, but we must if we want it to compile fine everywhere. Fakeroot is usually good, but it's fake smile
I'm sure OSS is a requirement 'cause you can't have ALSA at compile-time, and the only useful ./configure option is --prefix. When I didn't have the module loaded, the build failed saying I didn't have any sound device for which to build. I just had to load the module, and all went fine.

As I just said, no options about MIME, read what I wrote to Pajaro.


dreaming in digital / living in realtime / thinking in binary / talking in ip / welcome to our world

Offline

Board footer

Powered by FluxBB