RetroShare/build_scripts/Ubuntu_src
2015-01-10 12:47:58 +00:00
..
data updated logo sets for ubuntu 2014-12-12 22:08:13 +00:00
debian improved packaging scripts (patch by Heini) 2014-12-27 17:15:50 +00:00
debian.gxs fixed packaging with GXS 2013-06-25 22:02:38 +00:00
changelog updated ubuntu changelog 2014-12-17 17:50:49 +00:00
clean.sh updated packaging for ubuntu/debian for 0.6. Executables and resources will have dfferent names, so that packages for 0.5 and 0.6 can be installed simultaneously 2014-09-06 16:45:42 +00:00
control.squeeze_bubba3 fixed dependencies for bubba3 2013-09-08 13:51:26 +00:00
control.ubuntu_lucid fixed packaging for ubuntu lucid 2013-03-01 17:46:52 +00:00
full_packaging_pipeline.sh updated version number to 0.5.5 prior to release 2013-09-07 08:21:13 +00:00
make.sh updated package building scripts for ubuntu 2012-07-15 20:01:04 +00:00
make_tgz.sh Improved packaging scripts 2013-01-28 14:29:23 +00:00
makeSourcePackage.sh updated scripts and README file for debian packaging 2015-01-10 12:47:58 +00:00
ppa_upload.sh updated version number to 0.5.5 prior to release 2013-09-07 08:21:13 +00:00
README.txt updated scripts and README file for debian packaging 2015-01-10 12:47:58 +00:00
retroshare_ppastatistics.py added script to gather statistics from ppa repository 2011-04-30 12:00:22 +00:00

This directory contains the material for building a debian/ubuntu source package from 
the svn repository of RetroShare. The various files here are:

  BaseRetroShareDirs.tgz: basic directory structure. Does not contain any source file.
  makeSourcePackage.sh  : main script. Produces source binary debian package (.dsc+.tgz files)
                          from the base directory structure and the sources in the svn repository.
  clean.sh              : compiles the source package. Produce a binary pkg for a given ubuntu distribution
  make_tgz.sh           : rebuilds the basic directory structure if some config/debian files where modified
                          in the retroshare-0.5 directory

The pipeline is the following:

      [This directory]   =>    [Create a source package]   =>   [Compile the package for various ubuntu/debian and various arch]

How do I create a source package?
=================================

   Use the script!

      > ./makeSourcePackage.sh  [-h for options]

      The script gets the svn number, grabs the sources from the svn
      repository, removed .svn files from it, and calls debuild to create a
      source package. 

      You might:
         - specify a given svn revision (usually not needed)
         - specify a list of distribs to build for

      Example:

         > ./makeSourcePackage.sh -distribution "precise wheezy trusty"

      You should get as many source packages as wanted distributions. For each
      of them you get (example here for wheezy):

         retroshare06_0.6.0-0.7829~wheezy.dsc
         retroshare06_0.6.0-0.7829~wheezy_source.build
         retroshare06_0.6.0-0.7829~wheezy_source.changes
         retroshare06_0.6.0-0.7829~wheezy.tar.gz
         
How do I create a binary package?
=================================

*Initial steps*

   1 - You need to use/install pbuilder-dist:

      > sudo apt-get install ubuntu-dev-tools
   
   2 - To do once: Init the building environment for each distribution you need:

      > pbuilder-dist wheezy amd64 create

   Then, when needed, keep t up to date (this solved almost all compiling
   issues you might have:

      > pbuilder-dist wheezy amd64 update

   3 - For ubuntu distribs, add a ppa dependency for sqlcipher:

      * add this line to ~/.pbuilderrc: OTHERMIRROR="deb http://ppa.launchpad.net/guardianproject/ppa/ubuntu precise main"
      * add the ppa to the build environment:

         > pbuilder-dist precise login --save-after-login
         # apt-key adv --keyserver pgp.mit.edu --recv-keys  2234F563
         # exit
         > pbuilder-dist precise update --release-only         # the --release-only is really required!

*Package compilation*

      > pbuilder-dist wheezy build retroshare06_0.6.0~7856~wheezy.dsc

   The generated compiled binary packages (including all package plugins etc)
   will  be in ~/pbuilder/wheezy_result/