diff options
-rw-r--r-- | release/picobsd/bridge/PICOBSD | 13 | ||||
-rw-r--r-- | release/picobsd/bridge/config | 2 | ||||
-rw-r--r-- | release/picobsd/bridge/crunch.conf | 175 |
3 files changed, 99 insertions, 91 deletions
diff --git a/release/picobsd/bridge/PICOBSD b/release/picobsd/bridge/PICOBSD index 9f36fdf..bb2158c 100644 --- a/release/picobsd/bridge/PICOBSD +++ b/release/picobsd/bridge/PICOBSD @@ -3,8 +3,8 @@ # # Line starting with #PicoBSD contains PicoBSD build parameters #marker def_sz init MFS_inodes floppy_inodes -#PicoBSD 3200 init 8192 32768 -options MD_ROOT_SIZE=3200 # same as def_sz +#PicoBSD 8000 init 8192 32768 +options MD_ROOT_SIZE=8000 # same as def_sz hints "PICOBSD.hints" @@ -45,6 +45,7 @@ options DUMMYNET device if_bridge options HZ=1000 +device random # used by ssh device pci # Floppy drives @@ -64,7 +65,6 @@ device atkbd device vga # VGA screen # syscons is the default console driver, resembling an SCO console - device sc # Serial (COM) ports @@ -88,14 +88,9 @@ device uart # The following Ethernet NICs are all PCI devices. # device miibus -#device de # DEC/Intel DC21x4x (``Tulip'') -#device lnc device fxp # Intel EtherExpress PRO/100B (82557, 82558) -#device xl # 3Com device rl # RealTek 8129/8139 device sis # National/SiS -#device vx # 3Com 3c590, 3c595 (``Vortex'') -#device wx # Intel Gigabit Ethernet Card (``Wiseman'') device dc # DEC/Intel 21143 and various workalikes device ed @@ -109,8 +104,6 @@ device md # Memory "disks" #device faith 1 # IPv6-to-IPv4 relaying (translation) device tap -#options DEVICE_POLLING - # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! device bpf # Berkeley packet filter diff --git a/release/picobsd/bridge/config b/release/picobsd/bridge/config index fe0693a..af409a1 100644 --- a/release/picobsd/bridge/config +++ b/release/picobsd/bridge/config @@ -3,4 +3,4 @@ # it should only contain variable definitions -- it is sourced # by the shell much like rc.conf* files -fd_size="2880" +fd_size="4096" diff --git a/release/picobsd/bridge/crunch.conf b/release/picobsd/bridge/crunch.conf index d0699fc..39c1b1f 100644 --- a/release/picobsd/bridge/crunch.conf +++ b/release/picobsd/bridge/crunch.conf @@ -1,39 +1,55 @@ # # $FreeBSD$ # -# configuration file for "bridge" floppy. -# Depending on your needs, almost surely you will need to -# modify your configuration to add/remove/change programs used in -# the floppy image. Remember that some programs also require -# matching kernel options to enable device drivers etc. +# Configuration file for "bridge" images.. # -# Next to most of the programs i have tried to indicate the approximate -# space consumed, but beware that these values change from release -# to release, and might depend on the presence of other programs which -# share the same libraries. +# Depending on your needs, you will almost surely need to +# add/remove/change programs according to your needs. +# Remember that some programs require matching kernel options to +# enable device drivers etc. # -# NOTE: the string "/usr/src" will be automatically replaced with the -# correct value set in 'build' script - you should change it there +# To figure out how much space is used by each program, do +# +# size build_dir-bridge/crunch/*lo +# +# Remember that programs require libraries, which add up to the +# total size. The final binary is build_dir-bridge/mfs.tree/stand/crunch +# and you can check which libraries it uses with +# +# ldd build_dir-bridge/mfs.tree/stand/crunch -# Default build options. Basically tell the Makefiles which understand -# that to use the most compact possible version of the code. +# crunchgen configuration to build the crunched binary, see "man crunchgen" +# We need to specify generic build options, the places where to look +# for sources, and the list of program and libraries we want to put +# in the crunched binary. # -buildopts -DNO_PAM -DRELEASE_CRUNCH -DPPP_NO_NETGRAPH -DTRACEROUTE_NO_IPSEC -DNO_INET6 +# NOTE: the string "/usr/src" below will be automatically replaced with +# the path set in the 'build' script. + +# Default build options. Basically tell the Makefiles +# that to use the most compact possible version of the code. + +buildopts -DNO_PAM -DRELEASE_CRUNCH -DPPP_NO_NETGRAPH +buildopts -DTRACEROUTE_NO_IPSEC -DNO_INET6 buildopts -DWITHOUT_IPX -# directories where to look for sources of various binaries. +# Directories where to look for sources of various binaries. # @__CWD__@ is a magic keyword in the picobsd's (Makefile.conf) -# which is replaced with the picobsd directory. +# which is replaced with the directory with the picobsd configuration +# corresponding to your image. This way you can have custom sources +# in that directory overriding system programs. + srcdirs @__CWD__@/src -# Some programs are especially written for PicoBSD and reside here -# Make this first in the list so we can override standard programs -# with the picobsd-specific ones. +# Some programs are especially written for PicoBSD and reside in +# release/picobsd/tinyware. +# Put this entry near the head of the list to override standard binaries. + srcdirs /usr/src/release/picobsd/tinyware -# -# standard locations -# +# Other standard locations for sources. +# If a program uses its own source directory, add + srcdirs /usr/src/bin srcdirs /usr/src/sbin/i386 srcdirs /usr/src/sbin @@ -41,51 +57,56 @@ srcdirs /usr/src/usr.bin srcdirs /usr/src/gnu/usr.bin srcdirs /usr/src/usr.sbin srcdirs /usr/src/libexec -# -# And there are others (mostly ports) which reside in their specific -# directories. For them, we use the "special" commands to tell -# crunchgen where to look for sources, objects, which Makefile -# variables contain the list of sources and objects, and so on. -# init is almost always necessary. +# For programs that reside in different places, the best option +# is to use the command "special XXX srcdir YYY" where XXX is the +# program name and YYY is the directory path. +# "special XXX ..." can be used to specify more options, see again +# the crunchgen manpage. + +#--- Basic configuraton +# init is always necessary (unless you have a replacement, oinit) progs init + # fsck is almost always necessary, unless you have everything on the # image and use 'tar' or something similar to read/write raw blocks # from the floppy. + progs fsck -# ifconfig is needed if you want to configure interfaces... + +# ifconfig is needed if you want to configure interfaces. progs ifconfig -# + # You will also need a shell and a bunch of utilities. # The standard shell is not that large, but you need many # external programs. In fact most of them do not take much space -# as they merely issue a system call, and print the result; the -# libraries are already needed anyways, so they end up using almost -# no additional memory. -# There are a few exceptions such as 'less', which in 4.x is -# rather large. +# as they merely issue a system call, and print the result. +# For a more compact version of shell and utilities, you could +# try busybox, however most system management commands in busybox +# will not work as they use linux-specific interfaces. + progs sh ln sh -sh + +# the small utilities progs echo -progs pwd -progs mkdir rmdir +progs pwd mkdir rmdir progs chmod chown -progs mv ln +ln chown chgrp +progs mv ln cp rm ls +progs cat tail tee +progs test +ln test [ + progs mount progs minigzip ln minigzip gzip -progs cp -progs rm -progs ls progs kill progs df progs ps -progs ns +progs ns # this is the ln ns netstat progs vm -progs cat -progs test -ln test [ progs hostname progs login progs getty @@ -94,28 +115,20 @@ progs w progs msg ln msg dmesg progs reboot -progs less -#ln less more -#progs more -special more srcdir /usr/ports/misc/44bsd-more/work progs sysctl progs swapon progs pwd_mkdb progs umount progs du -progs tail -progs tee progs passwd progs route -# progs mount_msdosfs -# progs comcontrol -# + # If you want to run natd, remember the alias library #progs natd -#libs -lalias # natd -# +#libs_so -lalias # natd + # ppp is rather large. Note that as of Jan.01, RELEASE_CRUNCH # makes ppp not use libalias, so you cannot have aliasing. #progs ppp @@ -124,42 +137,44 @@ progs route # smaller ones. vi is much larger. # The editor also usually need a curses library. progs ee -libs -lncurses -# progs vi -# libs -lcurses # for vi - -#progs tcpdump -special tcpdump srcdir /usr/src/usr.sbin/tcpdump/tcpdump progs arp -progs bsdlabel -progs fdisk -progs mdconfig +# these require libgeom +# progs bsdlabel fdisk mdconfig +progs kldload kldunload kldstat +progs kldxref #progs grep progs date -#progs mount_nfs -ln mount_nfs nfs progs ping #progs routed progs ipfw progs traceroute +progs mdmfs +ln mdmfs mount_mfs +# Various filesystem support -- remember to enable the kernel parts +# progs mount_msdosfs +progs mount_nfs # progs mount_cd9660 -# ln mount_cd9660 cd9660 -# progs newfs +ln mount_nfs nfs +ln mount_cd9660 cd9660 +#progs newfs #ln newfs mount_mfs -ln chown chgrp # ln mount_msdosfs msdos +# For a small ssh client/server use dropbear -libs -ll # used by sh -libs -lufs # used by mount -### ee uses ncurses instead of curses -libs -ledit -lutil -lmd -lcrypt -lmp -lm -lkvm -# libs -lmytinfo -libs -lz -lpcap -lwrap -libs -ltermcap -lgnuregex # -lcurses -libs -lgeom -libs -lsbuf -libs -lbsdxml # used by ifconfig +# Now the libraries +libs_so -lc # the C library +libs_so -ll # used by sh (really ?) +libs_so -lufs # used by mount +### ee uses ncurses but as a dependency +#libs_so -lncurses +libs_so -lm +libs_so -ledit -lutil +libs_so -lcrypt +libs_so -lkvm +libs_so -lz +libs_so -lbsdxml +libs_so -lsbuf |