[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: compiled switches of existing packages



Russell Steicke wrote:

> inspect the file "debian/rules", which is generally an executable
> Makefile.  (It might be required to be a Makefile, but I'm not sure
> about that.) Look at the build or build-stamp targets.  Edit the flags
> there, if you like.  After that:
> 
>   dpkg-buildpackage -uc -us -rfakeroot

Note that in addition to running "apt-get build-dep foo", you'll also
need to install the "build-essential" and "fakeroot" packages first.

Before the dpkg-buildpackage step, you may also want to edit
debian/changelog to increment the version number.  Otherwise apt wants
to reinstall the remotely existing version with the same version number,
overwriting all your hard work.

In general you'll want to put the package on "hold" so that even further
updates in Debian/unstable don't overwrite your custom package.  The way
to do this depends upon your package manager; in aptitude, hit the "="
key over the package name.  Also, since "hold" isn't a function of the
base APT library, different package managers won't be aware of each
other's held packages, so be careful.

In this case, however, you'll have to keep aware of any security issues
that arise with the package, so that you can rebuild your custom package
from the newer fixed version.  If you have a lot of custom debs, you'll
probably want to set up a local repository with apt-ftparchive or
something like that; then you can use apt's "pinning" feature instead of
putting packages on hold.

regards,

-- 
Kevin B. McCarty <kmccarty@princeton.edu>   Physics Department
WWW: http://www.princeton.edu/~kmccarty/    Princeton University
GPG public key ID: 4F83C751                 Princeton, NJ 08544



Reply to: