genkernel: Add --kconfig to set specific kernel config options
[genkernel.git] / HACKING
1 # $Id$
2
3 This document is a work-in-progress to describe the workflow through the various
4 parts of genkernel so that we can split the code into modular chunks.  If you
5 are interested in helping with genkernel development, please get in touch at
6 <genkernel@gentoo.org>.
7
8 Phases:
9
10 - read configs
11 - source global scripts
12
13
14 Testing things:
15   $ cd genkernel
16   $ sudo GK_SHARE="$PWD" ./genkernel initramfs --no-install --no-postclear --loglevel=2
17
18 Rolling a release:
19 - Bump the version in the main genkernel file.
20 - git commit -s -a -m "Bump version to ${PV}"
21 - make dist
22 - git tag -s -a -m "Tag release v${PV}" v${PV}
23 - git push ${REMOTE} master --tags
24 - upload genkernel-${PV}.tar.bz2 to the hosting:
25     scp genkernel-${PV}.tar.bz2 ${USER}@dev.gentoo.org:/space/distfiles-local/
26 - copy to portage's DISTDIR so you can bump the ebuild
27   before the tarball hits distfile mirrors
28   - cp genkernel-${PV}.tar.bz2 /usr/portage/distfiles/
29 - Bump the ebuild
30 - Propagate ebuild changes to the live ebuild
31     diff genkernel-${OLD_PV}.ebuild genkernel-${NEW_PV}.ebuild | patch genkernel-9999.ebuild
32 - check open bugs with keyword "InSVN" or "InVCS" for closability
33   and close these bugs with a comment like "Fixed in ${PV}, just released.  Closing."
34 - Send a mail with subject "genkernel ${PV} released" to both
35   <gentoo-genkernel@lists.gentoo.org> and <genkernel@gentoo.org>.
36   Use
37
38     PREV_TAG=$(git tag -l | tail -n 2 | head -n 1)
39     git diff ${PREV_TAG}..v${PV} ChangeLog | /bin/grep '^+\($\|  \)' | sed 's|^+ *||' | xsel
40
41   to generate the mail body.