[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

intent to build site-kpkg (was: batchbuild several kernels ...)



Hi!

I intend to build a package to build several kernels from one source-tree
as I described in a previouse post.

hmm at least I'll write this script.

Because I need to become maintainer and update to hamm it'll take a while to
package. But maybe Manoj includes it in future kernel-package relases (I
assume this will also take a while).

I decided to make it a separate Package and do not wait till such a script
is added to kernel-oackage because:
 only few people need it
 I suppose it'll be fun writing it 
 its a nice start to become maintainer :-) 


I'd appreciate any comments / objections about such a package and the
following details. More precisely: It's the reason I'm writing this message.

- several configs per machine "<hostname>[_<cfg>]"
  "_" isn't allowed anyways so it's used as separator (since this is
  possibly used for FLAVOUR which becomes part of the upstream version)
  by default only the most recent <cfg> for <hostname> is processed 

- <hostname> must not contain anything else than [-+.a-zA-Z0-9]
  it needn't be a hostname - it is what for I'll use it

- <cfg>, <src> must conist of the chars as <hostname>
  only if they are limited to [0-9], all features are present
  <src> represents the applied patches (local patchlevel)
  <cfg> is intended as counter for modified configs

- "<hostname>.<src>.<cfg>" mustn't exceed XXX chars
  which value must XXX be to avoid probs with kerneld, klogd, ...
  
- <src> is stored in in a file "_src" in the same dir as all kernel configs.
  it is automatically maintained by the script

- cmd-line switch to 
  - move configs to a subdir <kernel-release>-<src>
  - and copy each machines most recent cfg to <hostname>[_1] ; _1 is only
    appended when there was an _<cfg> appended
  when source-tree is changed

- cmd-line switch to limit batchbuild to certain <hostname>s

- utilization of an /etc/site-kpkg.conf

- location of <hostname> configs configurable
  I think of /var/lib/kernel/config (or /etc/kernel/config/???)

- config option wether allowed to set FLAVOUR:
	yes - when Makefile is patched otherwise ask to die
	ask - default
	no
  is there a way to hand over FLAVOUR=blah to the make building the
  kernel or do I have to patch the toplevel Makefile each time.

- sets images FLAVOUR to "<hostname>.<src>.<cfg>"
	if <src> is empty, 0 is assumed
	if <cfg> is empty, the trailing dot is omitted
  and sources FLAVOUR "<something>.<src>"
	<something> should be configurable (eg."local" or `hostname -d`)
	if <something> is empty, then the dot is also omitted
  this way all images/sources are listed in dselect - they don't
  conflict

- should offer an own changelog (var/lib/kernel/changelog) to keep
  track of applied patches / add of new machines / modification of
  configs. It shouldn't reside in debian/changelog because a) Manoj 
  says it's purged b) older dpkgs break if it's upstream version is
  the same as in the control-file. Since the control-file contains 
  FLAVOUR and the changelog isn't modified to match FLAVOUR. that's bad

- by default `pwd` is checked if it is part of a kernel-source, but
  there should be an option to set this to a fixed location 
  (eg /usr/src/kernel-source-3.0.33)

- configurable location to move .deb to 
  (default: $(kernel-source)/..)



# because such packages will never be uploaded to the distribution, 
# and I expect problems adding this, I doubt this will be added:

- maybe build a .changes file

- this way each kernel-image*-deb's control-file  points to an invalid
  Source: for this package. 



# and as reminder for me:
- non-configurable locations should be implemented as vars/#defines 


right now I tend to code this in perl.



Regards
 Rainer

---
KeyID=58341901 fingerprint=A5 57 04 B3 69 88 A1 FB  78 1D B5 64 E0 BF 72 EB


--
To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org


Reply to: