Difference between revisions of "Building binary packages"

From GeopsyWiki
Jump to navigation Jump to search
Line 26: Line 26:
  
 
https://help.ubuntu.com/6.10/ubuntu/packagingguide/C/basic-scratch.html
 
https://help.ubuntu.com/6.10/ubuntu/packagingguide/C/basic-scratch.html
 +
 +
Quick steps:
 +
 +
  cp sesarray-src-2.1.0-snapshot-20081205.tar.gz sesarray_2.1.0.20081205.orig.tar.gz
 +
  tar xvfpz sesarray_2.1.0.20081205.orig.tar.gz
 +
 
 +
 +
Edit ''debian'' directory
 +
 +
* changelog
 +
* control
 +
* copyright
 +
* rules
 +
 +
For each new version, changelog and control must be updated.
 +
 +
To generate .dsc files (as normal user)
 +
 +
  cd sesarray-src-2.1.0-snapshot-20081205
 +
  dpkg-buildpackage -S -rfakeroot
 +
 +
To generate the final .deb package (as root)
 +
 +
  pbuilder build ../*.dsc
 +
 +
or (for debug)
 +
 +
  # Initialization of the build platform
 +
  cd /var/cache/pbuilder/build
 +
  mkdir experimental
 +
  cd experimental
 +
  tar xfpz ../../base.tgz
 +
  # For all tries....
 +
  pbuilder build --no-targz --buildplace /var/cache/pbuilder/build/experimental --preserve-buildplace ../*.dsc
 +
 +
 +
Copy this file to pool/main on repository
  
 
== Ubuntu repository ==
 
== Ubuntu repository ==

Revision as of 08:19, 6 December 2008

pbuilder setup

These comments are made on a gentoo distribution and they are based on https://help.ubuntu.com/ubuntu/packagingguide/C/gs-pbuilder.html.

Install fakeroot package

 emerge -av fakeroot

Before running pbuilder, you must fix /etc/hostname temporarily (difference between gentoo and debian environments).

 echo "sirac.geopsy.org" > /etc/hostname

Don't forget to remove that file at the end. You may encounter problems on next startup of you gentoo box. Check that hostname -f works properly. If not, check /etc/host of gentoo tree.

pbuilder does not run out of the box. Apparently, arch is not properly set and it must be forced with --debootstrapopts.

 pbuilder create --debug --distribution hardy --debootstrapopts --arch=amd64 --mirror "ftp://ftp.proxad.net/mirrors/ftp.ubuntu.com/ubuntu" --othermirror "deb http://archive.ubuntu.com/ubuntu hardy universe multiverse" --debootstrapopts --include=gpgv

Every time you touch /etc/apt/sources.list, don't forget to run apt-get update'.

To modify the build environment:

 pbuilder execute --save-after-exec your_script

Package building

https://help.ubuntu.com/6.10/ubuntu/packagingguide/C/basic-scratch.html

Quick steps:

 cp sesarray-src-2.1.0-snapshot-20081205.tar.gz sesarray_2.1.0.20081205.orig.tar.gz
 tar xvfpz sesarray_2.1.0.20081205.orig.tar.gz
 

Edit debian directory

* changelog
* control
* copyright
* rules

For each new version, changelog and control must be updated.

To generate .dsc files (as normal user)

 cd sesarray-src-2.1.0-snapshot-20081205
 dpkg-buildpackage -S -rfakeroot

To generate the final .deb package (as root)

 pbuilder build ../*.dsc

or (for debug)

 # Initialization of the build platform
 cd /var/cache/pbuilder/build
 mkdir experimental
 cd experimental
 tar xfpz ../../base.tgz
 # For all tries....
 pbuilder build --no-targz --buildplace /var/cache/pbuilder/build/experimental --preserve-buildplace ../*.dsc


Copy this file to pool/main on repository

Ubuntu repository

http://nerdica.com/?p=43

apt-ftparchive is not installed with emerge, it is in /usr/local/apt and you must set paths before

export LD_LIBRARY_PATH=/usr/local/apt:$LD_LIBRARY_PATH
export PATH=/usr/local/apt:$PATH
cd softwares/packages/ubuntu
apt-ftparchive generate ../apt-ftparchive.conf
apt-ftparchive -c=../apt-release.conf release dists/hardy > dists/hardy/Release