Differences between revisions 1 and 10 (spanning 9 versions)
Revision 1 as of 2007-09-13 18:45:37
Size: 534
Editor: OndrejCertik
Comment:
Revision 10 as of 2010-06-13 08:05:43
Size: 1903
Editor: Éric Araujo
Comment: Typos and minor style fixes
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== Create a project == == Injecting a new package ==
Line 3: Line 3:
Substitute your alioth name for "certik-guest": === Using svn-inject ===
Line 5: Line 6:
svn mkdir svn+ssh://certik-guest@svn.debian.org/svn/python-apps/packages/mayavi2
svn mkdir svn+ssh://certik-guest@svn.debian.org/svn/python-apps/packages/mayavi2/trunk
svn co svn+ssh://certik-guest@svn.debian.org/svn/python-apps/packages/mayavi2/trunk mayavi2
cd mayavi2
ALIOTH_USER=foo-guest
DSC_FILE=bar_1.2-3.dsc
svn-inject -o ${DSC_FILE} svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/
}}}

=== Manually ===

{{{
ALIOTH_USER=foo-guest
PACKAGE_NAME=bar
svn mkdir svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/${PACKAGE_NAME}
svn mkdir svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/${PACKAGE_NAME}/trunk
svn co svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/${PACKAGE_NAME}/trunk ${PACKAGE_NAME}
cd ${PACKAGE_NAME}/
Line 12: Line 23:
mkdir debian #put other files in there mkdir debian # put other files in there
Line 17: Line 28:

== Building the package ==

{{{
svn co svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/${PACKAGE_NAME}/trunk ${PACKAGE_NAME}
cd ${PACKAGE_NAME}/
}}}
Get the orig tarball and put it to `../tarballs`. Then
{{{
svn-buildpackage -rfakeroot
}}}

Hint: put
{{{
alias svn-b='svn-buildpackage -rfakeroot --svn-ignore-new -uc -us'
}}}
into your `~/.bashrc` and use the `svn-b` command to build the package with local modification and without signing, to test that everything works, before a commit.

== How to get the tarball with upstream sources? ==

If the package uses a `watch` file:
{{{
uscan --force-download --rename
}}}
Some packages need to get the DFSG-free tarball:
{{{
debian/rules get-orig-tarball
}}}
see `debian/rules` for details, usually it will download the original upstream tar.gz from the web, unpack it, deletes non-free stuff and pack it again.

== More information on svn-buildpackage ==

See:
  * http://python-modules.alioth.debian.org/python-modules-policy.html
  * http://pkg-perl.alioth.debian.org/subversion.html
----
CategoryPackageManagement

Injecting a new package

Using svn-inject

ALIOTH_USER=foo-guest
DSC_FILE=bar_1.2-3.dsc
svn-inject -o ${DSC_FILE} svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/

Manually

ALIOTH_USER=foo-guest
PACKAGE_NAME=bar
svn mkdir svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/${PACKAGE_NAME}
svn mkdir svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/${PACKAGE_NAME}/trunk
svn co svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/${PACKAGE_NAME}/trunk ${PACKAGE_NAME}
cd ${PACKAGE_NAME}/

Put your debian directory here and all the other files

mkdir debian   # put other files in there
svn add debian
svn propset mergeWithUpstream 1 debian
svn ci

Building the package

svn co svn+ssh://${ALIOTH_USER}@svn.debian.org/svn/python-apps/packages/${PACKAGE_NAME}/trunk ${PACKAGE_NAME}
cd ${PACKAGE_NAME}/

Get the orig tarball and put it to ../tarballs. Then

svn-buildpackage -rfakeroot

Hint: put

alias svn-b='svn-buildpackage -rfakeroot --svn-ignore-new  -uc -us'

into your ~/.bashrc and use the svn-b command to build the package with local modification and without signing, to test that everything works, before a commit.

How to get the tarball with upstream sources?

If the package uses a watch file:

uscan --force-download --rename

Some packages need to get the DFSG-free tarball:

debian/rules get-orig-tarball

see debian/rules for details, usually it will download the original upstream tar.gz from the web, unpack it, deletes non-free stuff and pack it again.

More information on svn-buildpackage

See:


CategoryPackageManagement