This document is a work-in-progress to describe the workflow through the various
parts of genkernel so that we can split the code into modular chunks. If you
-are interested in helping with genkernel development, contact Chris Gianelloni
-at wolf31o2@wolf31o2.org for access.
+are interested in helping with genkernel development, please get in touch at
+<genkernel@gentoo.org>.
Phases:
- source global scripts
-
+Testing things:
+ $ cd genkernel
+ $ sudo GK_SHARE="$PWD" ./genkernel initramfs --no-install --no-postclear --loglevel=2
+
Rolling a release:
- Bump the version in the main genkernel file.
-- echangelog commit the bump
-- git tag -a -m "Tag release v${PV}" v${PV}
-- git push ${REMOTE} master --tags
+- git commit -s -a -m "Bump version to ${PV}"
- make dist
+- git tag -s -a -m "Tag release v${PV}" v${PV}
+- git push ${REMOTE} master --tags
- upload genkernel-${PV}.tar.bz2 to the hosting:
scp genkernel-${PV}.tar.bz2 ${USER}@dev.gentoo.org:/space/distfiles-local/
+- copy to portage's DISTDIR so you can bump the ebuild
+ before the tarball hits distfile mirrors
+ - cp genkernel-${PV}.tar.bz2 /usr/portage/distfiles/
+- Bump the ebuild
+- Propagate ebuild changes to the live ebuild
+ diff genkernel-${OLD_PV}.ebuild genkernel-${NEW_PV}.ebuild | patch genkernel-9999.ebuild
- check open bugs with keyword "InSVN" or "InVCS" for closability
+ and close these bugs with a comment like "Fixed in ${PV}, just released. Closing."
+- Send a mail with subject "genkernel ${PV} released" to both
+ <gentoo-genkernel@lists.gentoo.org> and <genkernel@gentoo.org>.
+ Use
+
+ PREV_TAG=$(git tag -l | tail -n 2 | head -n 1)
+ git diff ${PREV_TAG}..v${PV} ChangeLog | /bin/grep '^+\($\| \)' | sed 's|^+ *||' | xsel
+
+ to generate the mail body.