crunch.conf revision 102344
175899Sjoe#
275899Sjoe# $FreeBSD: head/release/picobsd/bridge/crunch.conf 102344 2002-08-24 03:33:31Z luigi $
375899Sjoe#
475899Sjoe# configuration file for "bridge" floppy.
575899Sjoe# Depending on your needs, almost surely you will need to
675899Sjoe# modify your configuration to add/remove/change programs used in
775899Sjoe# the floppy image. Remember that some programs also require
875899Sjoe# matching kernel options to enable device drivers etc.
975899Sjoe#
1075899Sjoe# Next to most of the programs i have tried to indicate the approximate
1175899Sjoe# space consumed, but beware that these values change from release
1275899Sjoe# to release, and might depend on the presence of other programs which
1375899Sjoe# share the same libraries.
1475899Sjoe#
1575899Sjoe# NOTE: the string "/usr/src" will be automatically replaced with the
1675899Sjoe# correct value set in 'build' script - you should change it there
1775899Sjoe
1875899Sjoe# Default build options. Basically tell the Makefiles which understand
1975899Sjoe# that to use the most compact possible version of the code.
2075899Sjoe#
2175899Sjoebuildopts -DNOPAM -DRELEASE_CRUNCH -DNONETGRAPH -DNOIPSEC -DNOINET6
2275899Sjoe
2375899Sjoe# directories where to look for sources of various binaries.
24102344Sluigi# @__CWD__@ is a magic keyword in the picobsd's (Makefile.conf)
25102344Sluigi# which is replaced with the picobsd directory.
26102344Sluigisrcdirs @__CWD__@/src
27102344Sluigi
2884312Sluigi# Some programs are especially written for PicoBSD and reside here
2984312Sluigi# Make this first in the list so we can override standard programs
3084312Sluigi# with the picobsd-specific ones.
3184312Sluigisrcdirs /usr/src/release/picobsd/tinyware
32102344Sluigi
33102344Sluigi#
34102344Sluigi# standard locations
35102344Sluigi#
3675899Sjoesrcdirs /usr/src/bin
3775899Sjoesrcdirs /usr/src/sbin/i386
3875899Sjoesrcdirs /usr/src/sbin
3975899Sjoesrcdirs /usr/src/usr.bin
4075899Sjoesrcdirs /usr/src/gnu/usr.bin
4175899Sjoesrcdirs /usr/src/usr.sbin
4275899Sjoesrcdirs /usr/src/libexec
4375899Sjoe#
4475899Sjoe# And there are others (mostly ports) which reside in their specific
4575899Sjoe# directories. For them, we use the "special" commands to tell
4675899Sjoe# crunchgen where to look for sources, objects, which Makefile
4775899Sjoe# variables contain the list of sources and objects, and so on.
4875899Sjoe
4975899Sjoe# init is almost always necessary.
5075899Sjoeprogs init # 4KB.
5175899Sjoe# fsck is almost always necessary, unless you have everything on the
5275899Sjoe# image and use 'tar' or something similar to read/write raw blocks
5375899Sjoe# from the floppy.
5475899Sjoeprogs fsck # 24KB.
5575899Sjoe# ifconfig is needed if you want to configure interfaces...
5675899Sjoeprogs ifconfig # 4KB.
5775899Sjoe#
5875899Sjoe# You will also need a shell and a bunch of utilities.
5975899Sjoe# The standard shell is not that large, but you need many
6075899Sjoe# external programs. In fact most of them do not take much space
6175899Sjoe# as they merely issue a system call, and print the result; the
6275899Sjoe# libraries are already needed anyways, so they end up using almost
6375899Sjoe# no additional memory.
6475899Sjoe# There are a few exceptions such as 'less', which in 4.x is
6575899Sjoe# rather large.
6675899Sjoeprogs sh # 36KB.
6775899Sjoeln sh -sh
6875899Sjoeprogs echo # 0KB.
6975899Sjoeprogs pwd
7075899Sjoeprogs mkdir rmdir
7175899Sjoeprogs chmod chown
7275899Sjoeprogs mv ln # 0KB.
7375899Sjoeprogs mount
7475899Sjoeprogs minigzip # 0KB.
7575899Sjoeln minigzip gzip
7675899Sjoeprogs cp # 0KB.
7775899Sjoeprogs rm
7875899Sjoeprogs ls
7975899Sjoeprogs kill
8075899Sjoeprogs df # 0KB.
8175899Sjoeprogs ps # 4KB.
8275899Sjoeprogs ns # 4KB.
8375899Sjoeln ns netstat
8475899Sjoeprogs vm # 0KB.
8575899Sjoeprogs cat # 0KB.
8675899Sjoeprogs test # 0KB.
8775899Sjoeln test [
8875899Sjoeprogs hostname # 0KB.
8975899Sjoeprogs login # 4KB.
9075899Sjoeprogs getty # 4KB.
9175899Sjoeprogs stty # 4KB.
9275899Sjoeprogs w # 0KB.
9375899Sjoeprogs msg # 0KB.
9475899Sjoeln msg dmesg
9575899Sjoeprogs reboot # 0KB.
9675899Sjoe#progs less # 36KB
9775899Sjoe#ln less more
9883086Sluigi#progs more # 12KB
9990661Sluigispecial more srcdir /usr/ports/misc/44bsd-more/work
10075899Sjoe
10175899Sjoeprogs sysctl
10275899Sjoeprogs swapon # 0KB.
10375899Sjoeprogs pwd_mkdb # 0KB.
10475899Sjoeprogs dev_mkdb # 0KB.
10575899Sjoeprogs umount
10675899Sjoeprogs mount_std
10775899Sjoeprogs du # 0KB.
10875899Sjoeprogs tail # 0KB.
10975899Sjoeprogs tee # 0KB.
11075899Sjoeprogs passwd # 0KB.
11175899Sjoe
11275899Sjoeprogs route # 8KB
11377579Sru# progs mount_msdosfs
11475899Sjoe# progs comcontrol
11575899Sjoe#
11675899Sjoe# If you want to run natd, remember the alias library
11775899Sjoe#progs natd # 20KB
11875899Sjoe#libs -lalias	# natd
11975899Sjoe#
12075899Sjoe# ppp is rather large. Note that as of Jan.01, RELEASE_CRUNCH
12175899Sjoe# makes ppp not use libalias, so you cannot have aliasing.
12275899Sjoe#progs ppp # 112KB
12375899Sjoe
12475899Sjoe# You need an editor. ee is relatively small, though there are
12575899Sjoe# smaller ones. vi is much larger.
12675899Sjoe# The editor also usually need a curses library.
12775899Sjoeprogs ee # 32KB.
12875899Sjoelibs -lncurses
12975899Sjoe# progs vi # ??
13075899Sjoe# libs -lcurses # for vi
13175899Sjoe
13278544Sluigi#progs tcpdump # 100KB.
13375899Sjoespecial tcpdump srcdir /usr/src/usr.sbin/tcpdump/tcpdump
13475899Sjoe
13575899Sjoeprogs arp # 0KB.
13675899Sjoe
13775899Sjoeprogs disklabel # 4KB.
13875899Sjoeprogs fdisk # 4KB.
13975899Sjoeprogs vnconfig # 0KB.
14075899Sjoe
14191938Sluigi#progs grep # 16KB.
14275899Sjoeprogs date # 4KB.
14383086Sluigi#progs mount_nfs # 0KB.
14475899Sjoeln mount_nfs nfs
14575899Sjoeprogs ping # 4KB.
14675899Sjoe#progs routed # 32KB.
14775899Sjoeprogs ipfw # 12KB.
14875899Sjoeprogs traceroute # 0KB.
14975899Sjoe# progs mount_cd9660 # 4KB.
15075899Sjoe# ln mount_cd9660 cd9660
15175899Sjoe# progs newfs # 12KB.
15275899Sjoe#ln newfs mount_mfs
15375899Sjoeln chown chgrp
15477579Sru# ln mount_msdosfs msdos
15575899Sjoeln mount_std procfs
15675899Sjoeln mount_std mount_procfs
15775899Sjoe
15875899Sjoe# If you need to access the box remotely, and maybe copy files
15975899Sjoe# from/to it, you can use telnet, rsh or ssh.
16075899Sjoe# inetd is only needed for telnet and rshd
16190661Sluigi#progs inetd # 12KB.
16290661Sluigi#progs telnet # 20KB.
16390661Sluigi#progs telnetd # 12KB.
16475899Sjoe#progs ftp # 28KB.
16575899Sjoe#progs tar # 32KB.
16675899Sjoe
16775899Sjoe# Check the ssh license! If you want to use this,
16875899Sjoe# go to /usr/ports/security/ssh-picobsd, do a make extract configure
169102344Sluigi# You also need to install /usr/ports/math/libgmp-freebsd
17090661Sluigiprogs sshd	# includes ssh and scp
17175899Sjoespecial sshd objvar SSHD_OBJS
17275899Sjoespecial sshd srcdir /usr/ports/picobsd/ssh-picobsd/work/ssh-1.2.27
17375899Sjoespecial sshd objdir /usr/ports/picobsd/ssh-picobsd/work/ssh-1.2.27
17484171Sluigiln sshd ssh
17584171Sluigiln sshd ssh1
17684171Sluigiln sshd scp
17775899Sjoe
17875899Sjoe### ee uses ncurses instead of curses
179102344Sluigilibs -ledit -lutil -lmd -lcrypt -lmp -lm -lkvm
180102344Sluigilibs /usr/local/lib/libgmp.a
18175899Sjoelibs -lmytinfo -lipx -lz -lpcap -lwrap
18295047Srulibs -ltermcap -lgnuregex # -lcurses
183