list revision 1.7
11.1Slukem#
21.7She#	$NetBSD: list,v 1.7 2004/10/19 17:45:53 he Exp $
31.1Slukem#
41.1Slukem# ramdisk/list - packing list for the ramdisk.
51.1Slukem#
61.1Slukem# The ramdisk root has to stay small enough so the kernel
71.1Slukem# can be loaded in less than one megabyte of ram, including
81.1Slukem# uninitialized data (bss).  Otherwise it will not work on
91.1Slukem# the Sun2/50.  This is not too hard, because the ONLY
101.1Slukem# tools needed in this root are those that one might use
111.1Slukem# to initialize the disk label and copy a miniroot image
121.1Slukem# into the swap partition.  Everything else is done after
131.1Slukem# the machine is rebooted from the miniroot.
141.1Slukem#
151.1Slukem# Note that the "ln" directives below are not really about
161.1Slukem# filesystem links, but rather the ability of the resulting
171.1Slukem# crunched binary to select the right program when argv[0]
181.1Slukem# matches the names on right of the "ln prog" directive.
191.1Slukem# For example, the shell can be run with argv[0]="-sh"
201.1Slukem# (login shell convention) but no such file will exist.
211.1Slukem# Similarly, one may want to run "init" as "oinit"...
221.1Slukem#
231.1Slukem# Notes about what is included (or not) and why:
241.1Slukem#
251.1Slukem# Include mknod incase I forgot some device nodes...
261.1Slukem# Support copying miniroot from NFS, TFTP, or CDROM.
271.5Slukem# Need mount_ffs to remount the ramdisk.
281.1Slukem#
291.1Slukem# Might use cat to look at files (it's small anyway).
301.1Slukem# Need for copying miniroot from tape: dd, mt
311.1Slukem# Keep to allow minor fixes: ln, mkdir, mv
321.1Slukem# Small and handy: cat, echo, pwd, sync
331.1Slukem#
341.1Slukem# Note: ssh has no "if", so "test" is useless.  Also,
351.1Slukem# left out: cp, chmod, rm.  The ramdisk does not really
361.1Slukem# need them, and they pull in fts_* from libc.
371.1Slukem#
381.1Slukem# Might use these to get the miniroot: rsh, tftp
391.1Slukem#
401.1Slukem# Assume gunzip can run elsewhere, i.e.:
411.1Slukem#   rsh gzcat sun2.miniroot.gz
421.1Slukem# No need to extract archives either...
431.1Slukem#
441.1Slukem
451.1SlukemSRCDIRS	bin sbin usr.bin distrib/utils
461.1Slukem
471.1Slukem# From /usr/src/distrib/utils:
481.1SlukemPROG		bin/dd
491.7ShePROG		bin/tls		bin/ls
501.1SlukemPROG		bin/rsh
511.1SlukemPROG		bin/ssh		bin/sh bin/-sh
521.1Slukem# PROG		bin/tftp
531.5SlukemPROG		sbin/edlabel
541.5SlukemPROG		sbin/ifconfig
551.5SlukemPROG		sbin/init
561.5SlukemPROG		sbin/route
571.1Slukem
581.1Slukem# From /usr/src/sbin:
591.1SlukemPROG		sbin/mknod
601.1SlukemPROG		sbin/mount
611.3SlukemPROG		sbin/mount_cd9660
621.3SlukemPROG		sbin/mount_ffs
631.3SlukemPROG		sbin/mount_nfs
641.5SlukemPROG		sbin/reboot	sbin/halt
651.1SlukemPROG		sbin/umount
661.1Slukem
671.1Slukem# From /usr/src/bin:
681.1SlukemPROG		bin/cat
691.1Slukem# PROG		bin/chmod
701.1Slukem# PROG		bin/cp
711.1SlukemPROG		bin/echo
721.1SlukemPROG		bin/ln
731.1SlukemPROG		bin/mkdir
741.1SlukemPROG		bin/mt
751.1SlukemPROG		bin/mv
761.1SlukemPROG		bin/pwd
771.5SlukemPROG		bin/rcmd
781.1Slukem# PROG		bin/rm
791.1SlukemPROG		bin/sync
801.1SlukemPROG		bin/zcat
811.1Slukem
821.1SlukemLIBS libhack.o -lrmt -lutil -lz
831.1Slukem
841.1Slukem# These are built with special flags to save a little space.
851.5SlukemSPECIAL	ifconfig	srcdir	distrib/utils/x_ifconfig
861.7SheSPECIAL	tls		srcdir	distrib/utils/tls
871.5SlukemSPECIAL	route		srcdir	distrib/utils/x_route
881.5SlukemSPECIAL	ssh		srcdir	distrib/utils/ssh
891.5SlukemSPECIAL	umount		srcdir	distrib/utils/x_umount
901.1Slukem
911.1Slukem# various files that we need in /etc for the install
921.2SlukemCOPY	${CURDIR}/disktab	etc/disktab
931.2SlukemCOPY	${CURDIR}/fstab		etc/fstab
941.2SlukemCOPY	${CURDIR}/passwd	etc/passwd
951.2SlukemCOPY	${CURDIR}/protocols	etc/protocols
961.2SlukemCOPY	${CURDIR}/services	etc/services
971.2SlukemCOPY	${CURDIR}/sshrc		.sshrc
981.2SlukemCOPY	${CURDIR}/welcome	.welcome
991.1Slukem
1001.4SlukemCOPY	${NETBSDSRCDIR}/etc/netconfig	etc/netconfig
1011.1Slukem
1021.1Slukem# Fake /usr
1031.5SlukemSYMLINK	.	usr
1041.1Slukem
1051.1Slukem# Shell lacks pipe support, so use this.
1061.1SlukemCMD	mkfifo dev/pipe
107