RetroShare/build_scripts/Debian+Ubuntu
2018-05-11 17:02:58 +02:00
..
debian fixed rules file again 2018-05-11 17:02:58 +02:00
debian.gxs renamed packaging scripts, removed binary package scripts 2015-01-10 12:52:27 +00:00
changelog updated ubuntu changelog 2018-05-03 15:22:03 +02:00
clean.sh switched version to 0.6.4 2018-02-19 21:49:06 +01:00
control.artful removed vivid in defautl ubuntu distr list 2017-10-14 18:14:34 +02:00
control.bionic added packaging for ubuntu bionic 2018-05-03 13:47:42 +02:00
control.jessie fixed various problems with 06 suppression in package control files 2017-07-20 22:11:35 +02:00
control.precise fixed various problems with 06 suppression in package control files 2017-07-20 22:11:35 +02:00
control.squeeze_bubba3 fixed various problems with 06 suppression in package control files 2017-07-20 22:11:35 +02:00
control.stretch added info for building/packaging on debian stretch 2017-08-10 10:36:30 +02:00
control.trusty_retrotor added control file for xenial 2018-01-01 22:57:31 +01:00
control.ubuntu_lucid fixed various problems with 06 suppression in package control files 2017-07-20 22:11:35 +02:00
control.xenial fixed various problems with 06 suppression in package control files 2017-07-20 22:11:35 +02:00
control.xenial_retrotor added control file for xenial 2018-01-01 22:57:31 +01:00
control.yakkety fixed various problems with 06 suppression in package control files 2017-07-20 22:11:35 +02:00
control.zesty fixed various problems with 06 suppression in package control files 2017-07-20 22:11:35 +02:00
convert_dos_files_to_unix.sh updated dos->unix convertion script 2015-12-31 17:37:05 -05:00
debian_release_howto.txt fixed email to match mentors login 2018-05-10 22:03:39 +02:00
full_packaging_pipeline.sh Rename retroshare06 to retroshare 2017-07-17 10:45:18 +02:00
gitlog.sh updated ubuntu changelog 2016-11-19 15:03:47 +01:00
how_to_build_for_stretch.txt added info for building/packaging on debian stretch 2017-08-10 10:36:30 +02:00
make_tgz.sh renamed packaging scripts, removed binary package scripts 2015-01-10 12:52:27 +00:00
make.sh renamed packaging scripts, removed binary package scripts 2015-01-10 12:52:27 +00:00
makeSourcePackage.sh fixed rules file again 2018-05-11 17:02:58 +02:00
ppa_upload.sh updated ppa_upload.sh to 0.6.4 2018-02-25 11:46:18 +01:00
README.txt Rename retroshare06 to retroshare 2017-07-17 10:45:18 +02:00
retroshare_ppastatistics.py renamed packaging scripts, removed binary package scripts 2015-01-10 12:52:27 +00:00
rules.retrotor fixed dependencies 2017-12-31 18:15:19 +01:00
rules.stretch Switching Debian Stretch builds to QT5. 2016-01-10 16:52:46 +01: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):

         retroshare_0.6.0-0.7829~wheezy.dsc
         retroshare_0.6.0-0.7829~wheezy_source.build
         retroshare_0.6.0-0.7829~wheezy_source.changes
         retroshare_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 retroshare_0.6.0~7856~wheezy.dsc

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