summaryrefslogtreecommitdiffstats
path: root/release
diff options
context:
space:
mode:
Diffstat (limited to 'release')
-rw-r--r--release/picobsd/bridge/PICOBSD13
-rw-r--r--release/picobsd/bridge/config2
-rw-r--r--release/picobsd/bridge/crunch.conf175
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
OpenPOWER on IntegriCloud