source: debian-alt/doc/launchpad.txt @ e03c25e

Last change on this file since e03c25e was e03c25e, checked in by zzz <zzz@…>, 4 years ago

debian files update

  • Property mode set to 100644
File size: 6.3 KB
Line 
1Instructions to upload to launchpad PPA
2
3You must have a GPG key already uploaded to the
4usual public key servers, where launchpad can find it.
5
6Prep
7----
8
9- Make a launchpad account
10- Log into launchpad
11- Get your GPG fingerprint (gpg -K --fingerprint)
12- Add your GPG fingerprint at the form on
13  https://launchpad.net/~/+editpgpkeys
14- Wait for the encrypted email response
15- Decrypt and click the confirmation link in the email
16- Click confirm on the page
17- Make a PPA, lets call it 'test'
18- OPTIONAL: Go to i2p.packages PPA and copy over existing I2P to your PPA:
19  (select "copy existing binaries")
20    trusty, vivid, wily, xenial, yakkety, zesty
21    not precise (only if building for precise which you probably aren't)
22    not utopic (obsolete, disabled by launchpad)
23- Go to i2p.packages PPA and copy over service-wrapper-java to your PPA.
24  This is required for the build.
25  (select "copy existing binaries")
26    trusty
27    not precise (only if building for precise which you probably aren't)
28    not vivid, wily, xenial, yakkety, zesty (more recent versions 3.5.25-2 or 3.5.26-3 are in official launchpad)
29    not utopic (obsolete, disabled by launchpad)
30
31- you need the following packages
32  sudo apt-get install devscripts dput dh_systemd
33
34- check out clean copy of release:
35  mtn co -d i2p.mtn -b i2p.i2p i2p.i2p.foobar -r t:i2p-0.9.xx
36
37Generate files to upload
38------------------------
39
40- export TZ=UTC
41- cd i2p.i2p.foobar
42- copy debian-alt/(series)/changelog to debian/
43- edit debian/changelog to add the release at the top
44  * version MUST be 0.9.XX-1ubuntu1
45    next version for fixes would be 0.9.XX-2ubunutu1
46  * series MUST be trusty (or precise)
47  * name and email MUST EXACTLY match what's in your GPG keyring
48    or the signing will fail.
49    (or add -kkeyid argument to debuild, which you must do
50     if you want to sign with a subkey)
51    run gpg -K to list your private keys
52- ant debian-release-tarball (ant precise-release-tarball for precise)
53  this will make a directory ../i2p-0.9.XX-0-xxxxxxxx/
54  and a tarball ../i2p_0.9.XX.orig.tar.bz2
55- cp debian/changelog ../i2p-0.9.XX-0-xxxxxxxx/debian/
56- cp debian-alt/(series)/(other files besides changelog) to ../i2p-0.9.XX-0-xxxxxxxx/debian/
57- cd ../i2p-0.9.XX-0-xxxxxxxx/
58- Note: If building for precise and you are on yakkety or higher without Java 7,
59  make a symlink so debuild will work: cd /var/lib/jvm; sudo ln -s java-8-openjdk-amd64/ java-7-openjdk-amd64
60- Build the *1ubuntu1* files:
61  If you have NOT done a successful dput for this release yet:
62    debuild -S -sa -kkeyid
63  otherwise, if just fixing up the control files, patches, etc:
64    debuild -S -sd -kkeyid
65  (note: no space allowed in -kkeyid)
66- If patches fail, you must fix them up, either manually or with quilt
67  (quilt instructions go here)
68
69- You will now have the following files in ..:
70  i2p_0.9.XX-1ubuntu1.debian.tar.xz
71  i2p_0.9.XX-1ubuntu1.dsc
72  i2p_0.9.XX-1ubuntu1_source.changes
73  i2p_0.9.XX-1ubuntu1_source.build
74- And from the copy above:
75  i2p_0.9.XX.orig.tar.bz2
76
77Upload to launchpad
78-------------------
79
80- cd ..
81- Upload to launchpad:
82  dput ppa:your-lp-id/your-ppa-name i2p_0.9.XX-1ubuntu1_source.changes
83
84This will upload the following files:
85  i2p_0.9.XX-1ubuntu1.dsc            (the GPG signature)
86  i2p_0.9.XX-1ubuntu1.debian.tar.xz  (basically the debian/ directory tarball)
87  i2p_0.9.XX-1ubuntu1_source.changes (the changelog text file)
88  i2p_0.9.XX.orig.tar.bz2            (the source tarball)
89
90Note: If you didn't add your GPG fingerprint to your launchpad account
91way up there above in step 2 or so, the upload will work,
92but you will get no email back, and it will never build or show up on
93the pending-build page.
94
95Wait for it to build and be published.
96Could be minutes to hours.
97
98The amd64 build produces one deb:
99   libjbigi-jni (amd64)
100The i386 build produces three debs:
101   i2p-doc (arch-independent), i2p-router (arch-independent), and libjbigi-jni (i386)
102So the build isn't done until both arch builds are complete.
103Don't
104
105
106If it works, copy trusty the series you are running (e.g. yakkety) in your PPA
107so that you can test.
108  (select "copy existing binaries")
109  Wait a few minutes for that to happen
110
111Test
112----
113
114Add your PPA following the instructions at http://i2p-projekt.i2p/en/download/debian:
115     sudo apt-add-repository ppa:your-lp-id/your-ppa-name
116     sudo apt-get update
117     sudo apt-get install i2p
118     mv ~/.i2p ~/.i2p-save
119     i2prouter start
120     (test...)
121     stop router
122     sudo dpkg-reconfigure i2p
123     (reconfigure as a service)
124     (i2p should start as a service. test...)
125
126
127Release
128-------
129
130Then copy trusty from your PPA to the i2p-maintainers PPA.
131Then in the i2p-maintainers PPA, copy trusty to vivid, xenial, yakkety, zesty
132Did a new series open up since the last time you did this? Copy to the new one also.
133  (select "copy existing binaries")
134  Copy trusty first and wait for it to be published in i2p-maintainers or the others will fail.
135For precise, build and copy it separately.
136
137
138Creating milestone, release, and uploading files
139----------------------------------------------
140
141You must first create a milestone, then create a release
142and attach it to the milestone.
143
144(Enable referer sending in your browser if necessary)
145
146Go to https://launchpad.net/i2p/trunk
147Down at bottom, click 'create milestone'
148    Name: 0.9.xx (NOT i2p 0.9.xx)
149    Code name: empty
150    Date targeted: Actual release date
151    Tags: empty
152    Summary: empty
153Click 'create milestone'
154Now you are back on https://launchpad.net/i2p/trunk
155At your milestone, 'release now'
156    Date released: Actual release date
157    Release notes: empty
158    Changelog: empty
159Click 'create release'
160Now you on the page for that milestone
161Click 'add download file'
162For each of the four files
163    i2psource_0.9.xx.tar.bz2
164      Description: I2P 0.9.xx Source Code
165      Sig: i2psource_0.9.xx.tar.bz2.sig
166      File Content Type: Code Release Tarball
167    i2pinstall_0.9.xx_windows.exe
168      Description: I2P 0.9.xx Installer for Windows
169      Sig: i2pinstall_0.9.xx_windows.exe.sig
170      File Content Type: Installer File
171    i2pinstall_0.9.xx.jar
172      Description: I2P 0.9.xx Installer (Linux / OSX / FreeBSD / Solaris)
173      Sig: i2pinstall_0.9.xx.jar.sig
174      File Content Type: Installer File
175    i2pupdate_0.9.xx.zip
176      Description: I2P 0.9.xx Update
177      Sig: i2pupdate_0.9.xx.zip.sig
178      File Content Type: Installer File
Note: See TracBrowser for help on using the repository browser.