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

Producing ARM port CDs

Hello people,

I'm new to this list so please excuse me asking dumb questions.

I'm currently producing Debian-CDs for the ARM port. However I need to put
various extras on to a) add some ARM-specific packages that aren't yet in the
main distribution (for assorted political, technical and practical reasons).
and b) add some Risc-PC and Aleph-one specific stuff (boot images and tools,
docs, readmes).

I have spent a while getting to understand debian-cd and the debian archive
layout and rsync mirroing etc. I don't claim to be an expert but I think I
grok enough to make it all work. I'd just like to say 'well done' for those
who've produced debian-cd. It seems to do a pretty good job of making a
horribly complicated thing quite manageable and yet flexible.

I can produce CDs that work, but I have some issues with debian-CD and some
queries, I hope you can help me with.

I am using debian-cd v2.2.2 on a i386 box.
My stuff is laid out like this:
/cdimages  (big fat drive)
         /mirror/debian/...   (debian archive mirror - potato main arm/all only)
         /arm/riscpc (stuff specific to riscpc distro)
                     /bootfloppies     (bootdisks)
                     /debian/dists/... (local packages)
                     /stuff            (aleph one extras)
         /tmp  (place where all the build links go)    ($TDIR)

So, to the actual problems:

1) The README about generating images says under 'if you want to install
additional files'
make bin-extras CD=1 ROOSRC=<from basedir> DIR=<what to copy>

This doesn't actually work. It has to have CD=CD1. This seems inconsistent
with the rest of the scripts and thus the make file should probably be
changed (unless I am missing some reason it is done this way).

eg like this:

--- Makefile.orig	Thu Jul 13 13:12:05 2000
+++ Makefile	Fri Nov  3 15:56:07 2000
@@ -539,15 +539,15 @@
 	  echo "Give me more parameters (DIR, CD and ROOTSRC are required)."; \
 	  false; \
-	@echo "Adding dirs '$(DIR)' from '$(ROOTSRC)' to '$(BDIR)/$(CD)'" ...
-	@$(addfiles) $(BDIR)/$(CD) $(ROOTSRC) $(DIR)
+	@echo "Adding dirs '$(DIR)' from '$(ROOTSRC)' to '$(BDIR)/CD$(CD)'" ...
+	@$(addfiles) $(BDIR)/CD$(CD) $(ROOTSRC) $(DIR)
 	@if [ -z "$(DIR)" -o -z "$(CD)" -o -z "$(ROOTSRC)" ]; then \
 	  echo "Give me more parameters (DIR, CD and ROOTSRC are required)."; \
 	  false; \
-	@echo "Adding dirs '$(DIR)' from '$(ROOTSRC)' to '$(SDIR)/$(CD)'" ...
-	@$(addfiles) $(SDIR)/$(CD) $(ROOTSRC) $(DIR)
+	@echo "Adding dirs '$(DIR)' from '$(ROOTSRC)' to '$(SDIR)/CD$(CD)'" ...
+	@$(addfiles) $(SDIR)/CD$(CD) $(ROOTSRC) $(DIR)


2) Having local dirs outside the main mirror hierarchy doesn't seem to work.
I set LOCAL=1 and LOCADEBS=/cdimages/arm/riscpc/debian
but these packages are ignored unless I put them in
I don't want to do this because I will probably have different local
overrides for different target ARM machines, and I just want to change
$LOCALDEBS and $BOOTDISKS to get the apropriate stuff built onto the CDs.

am I doing something wrong or is this feature known to be broken?

Also is there a doc I should read which describes the dependencies of the
various files in the archive? eg which files (like packages and overrides and
contents) are generated from where and what they should match up with. My
life is made slightly complicated because my net pipe is too skinny to keep a
full uptodate archive so I am working from CD snapshots which means I have to
generate my own consistent packages files using dpkg-scanpackages. This seems
to work fine and passes 'make mirrorcheck' but I have quite a few null
'release' files and the like which may not be strictly correct. I'd like to
understand how it all works to be sure I'm getting it right (until I can do
daily rsyncs and then this all becomes someone else's problem).


Aleph One Ltd, Bottisham, CAMBRIDGE, CB5 9BA, UK  Tel (00 44) 1223 811679
work: http://www.aleph1.co.uk/     play: http://www.chaos.org.uk/~wookey/

Reply to: