Re: Small /etc/src.conf

From: Sean Bruno <seanbru_at_yahoo-inc.com>
Date: Sat, 23 Oct 2010 15:35:22 -0700
On Sat, 2010-10-23 at 14:21 -0700, Rob Farmer wrote:
> On Sat, Oct 23, 2010 at 13:40, Sean Bruno <seanbru_at_yahoo-inc.com> wrote:
> > Anyone have a src.conf + make.conf that I can steal to build a small
> > installation of BSD?  I've been trying to shrink the installation so I
> > can cram an ISO of BSD across the network into a remote installation
> > thing in an HP box.
> 
> Have you checked this:
> http://phk.freebsd.dk/misc/build_options/
> 
> I'm not sure exactly what you're looking for, but in my experience (I
> care more about build time than size though, and still want a fairly
> functional system) these are the most important variables to set:
> 
> NO_MODULES (stick everything in the kernel - tons of stuff is built
> twice, like ufs support)
> WITHOUT_PROFILE
> WITHOUT_LIB32
> WITHOUT_CLANG
> WITHOUT_KERBEROS
> WITHOUT_CDDL
> 
> Some of the options involving src/share like WITHOUT_LOCALES seem to
> kill a lot of files too.
> 
> Everything else either just skips a couple files (of course, that can
> add up) or starts to cut into basic functionality (like no man pages),
> IMHO.
> 

Thanks for the clue, I've come up with some stuff now that got me down
to ~100MB, but I think I can go smaller.
src.conf:
WITHOUT_AMD=true
WITHOUT_APM=true
WITHOUT_BIND=true
WITHOUT_BSNMP=true
WITHOUT_BSD_CPIO=true
WITHOUT_BZIP2=true
WITHOUT_BLUETOOTH=tree
WITHOUT_CDDL=true
WITHOUT_CLANG=true
WITHOUT_CPP=true
WITHOUT_CRYPT=true
WITHOUT_CTM=true
WITHOUT_CVS=true
WITHOUT_CXX=true
WITHOUT_DICT=true
WITHOUT_EXAMPLES=true
WITHOUT_FREEBSD_UPDATE=true
WITHOUT_GAMES=true
WITHOUT_GDB=true
WITHOUT_GNU=true
WITHOUT_GPIB=true
WITHOUT_GROFF=true
WITHOUT_GCOV=true
WITHOUT_HTML=true
WITHOUT_INET6=true
WITHOUT_INFO=true
#WITHOUT_INSTALLLIB=true
WITHOUT_IPFILTER=true
WITHOUT_IPFW=true
WITHOUT_IPX=true
WITHOUT_IPX_SUPPORT=true
WITHOUT_JAIL=true
WITHOUT_LIB32=true
WITHOUT_LOCATE=true
WITHOUT_LPR=true
WITHOUT_MAIL=true
WITHOUT_MAN=true
WITHOUT_NCP=true
WITHOUT_NDIS=true
WITHOUT_NETGRAPH=true
WITHOUT_NIS=true
WITHOUT_NLS=true
WITHOUT_NLS_CATALOGS=true
WITHOUT_NS_CACHING=true
WITHOUT_NTP=true
WITHOUT_OBJC=true
WITHOUT_PAM=true
WITHOUT_PF=true
WITHOUT_PORTSNAP=true
WITHOUT_PPP=true
WITHOUT_PROFILE=true
WITHOUT_QUOTAS=true
WITHOUT_RCMDS=true
WITHOUT_RCS=true
WITHOUT_RESCUE=true
WITHOUT_ROUTED=true
WITHOUT_SHAREDOCS=true
WITHOUT_SYSINSTALL=true
WITHOUT_TCSH=true
WITHOUT_TELNET=true
WITHOUT_TOOLCHAIN=true
WITHOUT_WIRELESS=true

make.conf:
NO_MODULES=true
NO_SHARE=true

Then I removed a lot of USB, Wireless, SCSI, RAID and Ethernet adapters
from the kernel config.  I also yanked the COMPAT options for now.

Sean

p.s. In order to get NO_CRYPT to work, I had to munge
lib/libfetch/common.c

Index: /mnt/nfs/fbsd/head/lib/libfetch/common.c
===================================================================
--- /mnt/nfs/fbsd/head/lib/libfetch/common.c	(revision 214249)
+++ /mnt/nfs/fbsd/head/lib/libfetch/common.c	(working copy)
_at__at_ -321,9 +321,9 _at__at_
 int
 fetch_ssl(conn_t *conn, int verbose)
 {
+#ifdef WITH_SSL
 	int ret, ssl_err;
 
-#ifdef WITH_SSL
 	/* Init the SSL library and context */
 	if (!SSL_library_init()){
 		fprintf(stderr, "SSL library init failed\n");
Received on Sat Oct 23 2010 - 20:35:37 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:08 UTC