On 11/04/2009, at 12:11 AM, [email protected] wrote:

> Thank you for the answers...
>
> It seems that the problem comes from the PKGBUILD etoile itself. It
> don't execute the ./setup script at the end of the install.
>
> I'm contacting the "owner" of the PKGBUILD to have more information.
>
> I'll tell more when i'll know more ;)

I made the etoile-svn PKGBUILD. I didn't really know about ./setup.sh  
at the time, I just went along with the standard compile/install  
procedure and it seemed to work. I looked at ./setup.sh and ./ 
setdown.sh, and I can't use them in the PKGBUILD. They assume that you  
are installing it manually. There is no way to specify an alternate  
installation directory (via $PREFIX or $DESTDIR), which is necessary  
in order to create a proper package. If there's an alternative I'd be  
happy to implement it.

At this point it seems I would have to replicate some of the ./ 
setup.sh script (copying files) in the PKGBUILD. Writing the defaults  
is per-user, so it can't actually be done during the packaging  
process. I could put it in the install scriptlet, but this would only  
set the environment for the user installing it (probably root). Fonts  
also seem to be downloaded, which ideally would be in a separate  
package. I would have to look into how this is packaged on other  
distributions.

For people not familiar with the packaging process in Archlinux, it's  
a two-step process. The first step is creating the package. This  
involves setting some metadata and "installing" the package into a  
specific directory. This directory is scanned by a script, and is  
basically archived into the package. The second stage is the actual  
installation. This basically extracts the archive into / and writes  
metadata to the package database. It also runs an install scriptlet  
(if present), which is a bash script containing functions. These  
functions are run before and after the installation, upgrade and  
removal of the package. For example, setting up the database for  
CoreObject would be done in post_install(), and the database would  
possibly be removed in post_remove()).

I haven't looked at the scripts in detail, so I'm not exactly sure  
what they do. I understand why the defaults are configured in the  
scripts, but why can't the files be linked/copied in the install  
target of the Makefile?

_______________________________________________
Etoile-discuss mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-discuss

Répondre à