Differences between revisions 12 and 13
Revision 12 as of 2015-08-31 00:16:14
Size: 4784
Editor: ?AlfGaida
Comment:
Revision 13 as of 2015-08-31 07:09:46
Size: 5731
Editor: AndrewLee
Comment:
Deletions are marked like this. Additions are marked like this.
Line 122: Line 122:
==== How to create a snapshot upstream version ==== ==== How to create a upstream (snapshot) tarball ====
Line 124: Line 124:
Clone the upstream repo and checkout the branch/tag you whish. Create a archive tarball: Clone the upstream git repo and checkout the branch/tag you whish. Create a archive tarball:
Line 126: Line 126:
git clone [-b $branch ] git://github.com/lxde/program.git program_version+yyyymmdd
find program_version+yyyymmdd -name .git* | xargs rm -r
tar cfvz program_version+yyyymmdd.orig.tar.gz program_version+yyyymmdd
git clone [-b $branch ] git://github.com/lxde/program.git program
}}}
Check git tag for latest release, check git log for yyyymmdd for the latest commit.
Drop entire contents of the git branch and rename the folder to program-version+yyyymmdd.
{{{
mv program program-version+yyyymmdd
find program-version+yyyymmdd -name .git* | xargs rm -r
tar cfvJ program_version+yyyymmdd.orig.tar.xz program_version+yyyymmdd
Line 133: Line 138:
Checkout upstream and delete all files and directories. Import the tarball: Replace upstream branch with new tarball:
Line 138: Line 143:
tar xf ../program_version[+yyyymmdd].orig.tar.gz --strip-components 1 tar xf ../program_version[+yyyymmdd].orig.tar.xz --strip-components 1
}}}
Better use ls command to make sure everything correct before use following command.
{{{
Line 141: Line 149:
}}}
Merge upstream changes into debian branch.
}}}
Line 142: Line 153:
git cherry-pick -n upstream
git commit -a -m "Merging upstream version '''version[+yyyymmdd]'''."
Line 143: Line 156:
git-push --all ; git push --tag
Line 145: Line 159:
'''Note''': As we use all git commit log to generate entries in debian/changelog. Please always use '''uppercase''' for first letter of commit message. And Please always use fullstop in the end of commit message.
Line 146: Line 162:
TBD
Line 148: Line 163:
Once you have everything done. Ping DDs on #debian-lxqt for review.
For release a new package:
{{{
pristine-tar checkout package_version.orig.tar.gz
git-debian-changelog [last uploaded hash]]
pdebuild
...
dput
git-debian-release
git-push --all ; git push --tag
}}}

LXQt Packaging Team

About the LXQt packaging team

The Debian LXQt packaging team maintains LXQt software in Debian. This includes the LXQt components, libraries and some 3rd party qt applications.

These LXQt components, libraries and some 3rd party qt applications are maintained inside of pkg-lxqt project.

Get in touch

Team Package Overview

Get involved

How to contribute

We always welcome people to help us out. If you want to, please follow the following guidelines.

  • Contact us first.
  • Join our alioth pkg-lxqt project.

  • Wait until we approve your account so that you would have write access to our git repo.

Using git and git-stuff

We use git together with git-stuff to manage the git repositories for each package. You may install them:

 apt-get install git git-stuff

packaging workflow

Use debuild/pdebuild as building tool. Use git or git-staff as manage tool. See file:///usr/share/doc/git-stuff/ for more details.

This Git repository contains the following branches:

  • master
    • This branch contains this README file and is otherwise not used.
  • debian
    • This branch tracks the Debian unstable distribution and contains the current state of last released version of the component.
  • pristine-tar
  • upstream
    • This branch contains the upstream releases.

How to add new package into team git repo

If you have a new package wants to add to team git repo: Please ask one of project admins to create a empty repository for it on Alioth first. If you have sufficient rights, please create the repo first:

# on git.debian.org
 $ cd /git/pkg-lxqt
 $ /home/groups/pkg-lxqt/scripts/setup-repository package ['package description']
 $ cp /home/groups/pkg-lxqt/scripts/post-receive package.git/hooks
 $ cd package.git
 $ git remote add --mirror github git git@github.com:debian-lxqt/pacakge.git

Create a corresponding repo on http://github.com/debian-lxqt too. After creation please add a Webhook for IRC notifications:

 Server: irc.oftc.net
 Port: 6667
 Room: #debian-lxqt
 Nick: github
 Message without join: marked
 Active: marked

You are now done with the preparation of the git hosting.

If you don't have a local repository for the package, clone the empty one:

 $ git clone user@git.debian.org:/git/pkg-lxqt/program.git
  • Unpack upstream sources into the git repository.
  • Import upstream into git

 $ git-upstream-add '''version'''
  • Import pristine-tar delta

 $ git-upstream-tar ../program_version.orig.tar.gz
  • Create and switch to debian branch. Add your debian/*.

 $ git checkout -b debian
 $ tar vfxJ ../program_version-revision.debian.tar.xz
 $ git-debian-add
  • Push to server

 $ git push --all
 $ git push --tags

If you have a repository prepared, add the alioth repo and push branches and tags:

 $ git remote add origin user@git.debian.org:/git/pkg-lxqt/package.git
 $ git push --all
 $ git push --tags
 $ # setup the master pull and check it
 $ git branch --set-upstream-to=origin/master master
 $ git pull --all --tags --verbose

Done.

How to create a upstream (snapshot) tarball

Clone the upstream git repo and checkout the branch/tag you whish. Create a archive tarball:

git clone [-b $branch ] git://github.com/lxde/program.git program

Check git tag for latest release, check git log for yyyymmdd for the latest commit. Drop entire contents of the git branch and rename the folder to program-version+yyyymmdd.

mv program program-version+yyyymmdd
find program-version+yyyymmdd -name .git* | xargs rm -r
tar cfvJ program_version+yyyymmdd.orig.tar.xz program_version+yyyymmdd

How to update a package in our git to newer/snapshot upstream version

Replace upstream branch with new tarball:

cd program
git checkout upstream
find . | grep -v .git | xargs rm -r
tar xf ../program_version[+yyyymmdd].orig.tar.xz --strip-components 1

Better use ls command to make sure everything correct before use following command.

git-upstream-add '''version[+yyyymmdd]'''
git-upstream-tar ../program_version[+yyyymmdd].orig.tar.gz

Merge upstream changes into debian branch. }}} git checkout debian git cherry-pick -n upstream git commit -a -m "Merging upstream version version[+yyyymmdd]." ... git-push --all ; git push --tag }}}

Note: As we use all git commit log to generate entries in debian/changelog. Please always use uppercase for first letter of commit message. And Please always use fullstop in the end of commit message.

Request for sponsor upload

Once you have everything done. Ping DDs on #debian-lxqt for review. For release a new package:

pristine-tar checkout package_version.orig.tar.gz
git-debian-changelog [last uploaded hash]]
pdebuild
...
dput
git-debian-release
git-push --all ; git push --tag


CategoryTeams