list revision 1.12
11.1Slukem# 21.12Srin# $NetBSD: list,v 1.12 2020/10/04 23:50:59 rin 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.12Srin# PROG sbin/mount_cd9660 621.3SlukemPROG sbin/mount_ffs 631.12Srin# PROG 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.8SdyoungLIBS libhack.o -lrmt -lutil -lz -lprop 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.11SabsSPECIAL edlabel srcdir distrib/utils/edlabel 911.1Slukem 921.1Slukem# various files that we need in /etc for the install 931.9SabsCOPY ${CURDIR}/fstab etc/fstab 941.9SabsCOPY ${CURDIR}/passwd etc/passwd 951.9SabsCOPY ${CURDIR}/protocols etc/protocols 961.9SabsCOPY ${DISTRIBDIR}/common/services etc/services 971.9SabsCOPY ${CURDIR}/sshrc .sshrc 981.9SabsCOPY ${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