bill-auger d71ac11279 squashme2 %!s(int64=7) %!d(string=hai) anos
..
PKGBUILD d71ac11279 squashme2 %!s(int64=7) %!d(string=hai) anos
README.md d71ac11279 squashme2 %!s(int64=7) %!d(string=hai) anos
_service 14e2329802 squashme %!s(int64=7) %!d(string=hai) anos
debian.changelog 14e2329802 squashme %!s(int64=7) %!d(string=hai) anos
debian.compat 14e2329802 squashme %!s(int64=7) %!d(string=hai) anos
debian.control 14e2329802 squashme %!s(int64=7) %!d(string=hai) anos
debian.copyright 14e2329802 squashme %!s(int64=7) %!d(string=hai) anos
debian.rules 14e2329802 squashme %!s(int64=7) %!d(string=hai) anos
loopidity.dsc d71ac11279 squashme2 %!s(int64=7) %!d(string=hai) anos
loopidity.spec d71ac11279 squashme2 %!s(int64=7) %!d(string=hai) anos

README.md

the files contained in this directory are used by the OpenSUSE Build Service to build/package binary releases and are otherwise not interesting

ensure that the custom git hooks are installed locally:

git config --local include.path ../build/hooks/gitconfig

when merging into master, the current manual procedure is as follows:

  • create a new 'packaging' branch to enable the post-commit hooks then trigger them => $ git branch -D packaging && git checkout -b packaging && git commit --amend
  • in build/packaging/debian.changelog
    => add new entry with list of significant commits
  • copy all files in the build/packaging/ directory into the local osc directory

if build or install steps have changed:

  • in loopidity.spec
    => update '%build' recipe, and/or '%post' install hooks
  • in debian.rules
    => update 'build-stamp:' and 'install:' recipes
  • in PKGBUILD
    => update 'build()' and 'package()' recipes
    => $ gpg --detach-sign PKGBUILD

if output files have changed:

  • in loopidity.spec
    => update package '%files'

if dependencies have changed:

  • in loopidity.spec
    => update 'BuildRequires' and/or 'Requires'
  • in loopidity.dsc
    => update 'Build-Depends'
  • in debian.control
    => update 'Build-Depends' and/or 'Depends'
  • in PKGBUILD
    => update 'makedepends' and/or 'depends'
    => $ gpg --detach-sign PKGBUILD

packaging:

  • git push --tags
  • upload PKGBUILD.sig and TARBALL.sig to new github "release"
  • delete PKGBUILD.sig, TARBALL.sig, and TARBALL
  • osc local build - e.g.
    => $ osc build openSUSE_Tumbleweed i586 ./loopidity.spec
    => $ osc build Debian_8.0 x86_64 ./loopidity.dsc
  • tweak any of the preceding steps as necessary until everything rocks sweetly
  • verfy signature of downloaded github "release" tarball
  • osc commit to the OBS build server for production build

commit packaging files to git:

  • copy any modified files back into build/packaging/ directory
  • explicitly check-in git-ignored files carrying post-commit checksums - e.g. => $ git add --force build/packaging/
  • update documentation as necessary, git commit everything, then merge into master => $ git add -A && git commit -m 'update packaging files' => $ git checkout master && git merge packaging