Commit Graph

102 Commits

Author SHA1 Message Date
Poul-Henning Kamp
d789d8859f Add a small script that will examine all files which exist on /cfg and
if they are different in /etc, copy them to /cfg.

Submitted by:	mat
2008-04-21 06:22:27 +00:00
Simon L. B. Nielsen
c6eabb5ec1 - Add support for using swap backed md(4) devices for building the
disk image.  In some cases this can be a significant speed-up, if
  most of the image can be kept in RAM while being populated.

  On the 2GB image I'm currently working with, the build time,
  excluding buildworld/buildkernel, goes from ~17 minutes to ~6
  minutes.

  This is not enabled by default, as it might have the opposite effect
  on low-memory systems.

- During the generation of the image file be a bit more verbose in the
  log file so it is possible to see what's being done.

- Add a NANO_DISKIMGDIR variable which makes it possibly to place the
  final images somewhere other than ${MAKEOBJDIRPREFIX}.  The default
  value for NANO_DISKIMGDIR is $MAKEOBJDIRPREFIX.

Go for it:	phk
2008-01-12 22:58:06 +00:00
Simon L. B. Nielsen
2c50272da5 - Fix calculation of data slice size when NANO_DATASIZE=-1.
Due to a typo, setting NANO_DATASIZE=-1 resulted in the data slice
  being the same size as entire image instead of the size of the
  remaining space on the image.

- Fix detection of overcommit of the slices.

  This fix mainly result in a nicer error than when newfs etc. tries to
  write beyond the end of the disk image.

MFC after:	2 weeks
X-MFC after:	RELENG_7 is open again
2007-12-27 12:17:45 +00:00
Poul-Henning Kamp
8f82ec1165 Add option to not fill second code image, this makes the full disk
image compress much better.

Respect pkg_add's internal 200 package limitation.

Approved by:	re (bmah)
Spelling fixes by:	bmah
2007-08-26 14:57:08 +00:00
Poul-Henning Kamp
7cd3f6159b Add cust_pkg() which iteratively tries to install packages.
Move /usr/local/etc to /etc/local so that installed packages can be frobbed.

Use a more compatible 512MB card geometry.
2007-06-12 11:35:29 +00:00
Poul-Henning Kamp
d5d45e062f Default to R/O root filesystem 2007-06-05 11:17:45 +00:00
Poul-Henning Kamp
0dee40cc68 Fix the fstab on the second image, just like updatep2.sh does. 2007-06-05 10:21:15 +00:00
Adrian Chadd
cd4cf11a4d NanoBSD modifications:
* Break out the boot0 loader selection into a variable - NANO_BOOTLOADER -
  so people like me with VGA consoles can override the default (which is
  to use boot0sio)
* Put the boot0 configuration options in NANO_BOOT0CFG in case you want
  to override the defaults.
* Modify nanobsd.8 to reflect the changes and hint the console default is
  serial.

MFC after:	2 weeks
2007-04-20 07:21:09 +00:00
Nick Hibma
e79fb5add3 Shorten the KERNCONF filename to the basename in the install target as
well as in the build target, although it is not used in this target.
2006-11-27 12:16:03 +00:00
Benno Rice
262f6969de Add the Transcend 2GB card specs. 2006-11-16 08:04:29 +00:00
Nick Hibma
1a82ee2eb9 Only use the filename part of the kernel configuration file as an argument to
KERNCONF after the file has been copied to the sys/${ARCH}/conf directory. This
allows the use of one kernel config file for multiple images. E.g.:

	NANO_KERNEL=../../../../software/nanobsd/default/SOEKRIS

MFC: after 6.2
2006-11-02 20:43:20 +00:00
Simon L. B. Nielsen
22eb0575f2 Move the setup of "diskless" /etc magic files from install_etc() to a
separate function which is called right after install_etc().  This makes
it simpler to (ab)use nanobsd.sh as a framework to build more normal
FreeBSD images where a normal /etc is used, since setup_nanobsd_etc()
can just be redefined.

OK'ed in principle by:	phk
MFC after:		1 week
2006-08-15 21:59:33 +00:00
Thomas Quinot
42f470c0e5 'make distribution' must be run from src, not src/etc, so that the proper
set of /usr/share/mk/* is available. This is necessary to build a 7.x
NanoBSD image on a 6.x host.

Reviewed by:	phk
2006-07-28 14:37:38 +00:00
Simon L. B. Nielsen
b78ee6d0ff Add Memory Corp 512MB CF Flash.
MFC after:	3 days
2006-07-26 20:35:52 +00:00
Thomas Quinot
cf58ce8477 When creating the NanoBSD disk image, install boot blocks from the
newly-built world, in preference to those from the host system.

Reviewed by:	phk
2006-07-15 20:41:38 +00:00
Poul-Henning Kamp
aa00f90024 Create the diskless magic files in /etc during the install_etc() step
instead of setup_nanobsd(), because this gives customize tasks a chance
to fiddle the details.

Inspired & tested by:	Jordan Coleman <jordan@JordanColeman.com>
2006-07-13 14:06:09 +00:00
Ruslan Ermilov
327ecf6872 Fix an obvious bug.
Submitted by:	Alex Lyashkov <umka@sevcity.net>
2006-04-18 12:37:44 +00:00
Simon L. B. Nielsen
f4aac5a410 Use tr(1) to lowercase strings in a way which works with all locales.
Approved by:	cperciva (mentor)
2006-03-26 17:17:10 +00:00
Poul-Henning Kamp
f6b9c5c2a9 In addition to -b (suppress builds) add -k (suppress kernel build) and
-w (suppress world).
2006-03-09 14:43:07 +00:00
Poul-Henning Kamp
84dd7338d4 Add two new variables:
# Size of the /etc ramdisk in 512 bytes sectors
	NANO_RAM_ETCSIZE=10240

	# Size of the /tmp+/var ramdisk in 512 bytes sectors
	NANO_RAM_TMPVARSIZE=10240

And a last_orders() shell function which can be redefined to copy
finished images away, order peanuts or whatever else is appropriate
2006-01-17 08:33:53 +00:00
Poul-Henning Kamp
1152ba39fe Add missing ' and '
Submitted by: simon
2006-01-06 11:31:59 +00:00
Poul-Henning Kamp
c9dae3c0cc Make this more readable and add more devices.
Partially from:	mich@FreeBSD.org
2006-01-06 11:11:03 +00:00
Poul-Henning Kamp
a70cac1259 Add geometry of SiliconSystems 4GB CF card 2005-11-15 18:48:52 +00:00
Poul-Henning Kamp
8ec7a2f521 Fix a bug in disk geometry calculation.
Fix NANO_TOOLS usage in FlashDevice()
2005-09-29 16:06:59 +00:00
Poul-Henning Kamp
5dd35f9e69 This one goes as well. 2005-09-26 14:58:58 +00:00
Poul-Henning Kamp
bce8140d46 Remove the old Makefile based nanobsd build method, the new shell script
based is far better and the only one supported from now on.
2005-09-26 14:57:27 +00:00
Poul-Henning Kamp
006ffd3415 Correct filesystem mountpoint 2005-09-25 21:23:19 +00:00
Simon L. B. Nielsen
06578727e1 Make it possible to set the NANO_TOOLS variable to a directory outside
of $NANO_SRC, which can e.g. be used if the nanobsd scripts are not in
the source tree being built.

Improved by:	phk
Approved by:	phk
2005-09-24 12:26:59 +00:00
Philip Paeps
eb9323503c Fix typo. MAILWRAPER -> MAILWRAPPER.
Spotted by:	Andrea Campi <andrea+freebsd_cvs_all -at- webcom.it>
Pointy hat to:	philip
2005-09-21 12:32:06 +00:00
Poul-Henning Kamp
a9793e1d67 Update these scripts to be more userfriendly and usage safe. 2005-09-21 09:40:45 +00:00
Poul-Henning Kamp
26b9c7716a Add a convenience function to set NANO_MEDIASIZE, NANO_HEADS and NANO_SECTS
for commonly used flash devices by

	FlashDevice Sandisk 256MB

in the config file.
2005-09-20 09:07:18 +00:00
Poul-Henning Kamp
dbd5c1cfe5 Create an /etc/nanobsd.conf in the built image and put the disk drive name
there for scripts to use.

Create a noauto fstab entry for the configuration partition (/cfg).

Add NANO_TOOLS env-var to point to the nanobsd sources relative to
NANO_SRC.

Add -h argument which prints a usage.

Add -b argument which skips build steps and goes directly to install steps.

Complain about extraneous arguments, it's usually a forgotten '-c'

Add convenience function to register customization function.

Add some sample customization functions:
	cust_comconsole
	cust_allow_ssh_root

Rename setup_diskless() to setup_nanobsd(), it makes more sense.

Add various comments etc.
2005-09-20 08:38:59 +00:00
Poul-Henning Kamp
cf61a39e6c Dump the environment for reference.
Add a function to add customization commands.
2005-09-19 20:55:44 +00:00
Poul-Henning Kamp
c19b92e968 Create fstab before linking stuff into /conf 2005-09-19 15:41:08 +00:00
Poul-Henning Kamp
db2dc2cd01 Missing ')' 2005-09-19 12:12:07 +00:00
Simon L. B. Nielsen
9e982c116f Correct a comment to match the configuration parameter it describes.
MFC after:	3 days
2005-08-27 20:57:06 +00:00
Poul-Henning Kamp
f763f86b1d Increase flexibility in disk-layout 2005-08-16 05:49:17 +00:00
Poul-Henning Kamp
034d67974c Put more stuff in logfiles instead of stdout 2005-08-15 18:40:28 +00:00
Poul-Henning Kamp
a0f08bdf0c Cleanup and polishing. 2005-08-15 12:48:42 +00:00
Poul-Henning Kamp
27fa5ded62 After much experimentation, settle for the simplest model for customize
scripts.
2005-08-15 08:13:01 +00:00
Poul-Henning Kamp
202cd57290 Prune empty directories in /usr
Move argv parsing.
2005-08-13 08:06:18 +00:00
Poul-Henning Kamp
511dca89b7 polish various bits. 2005-08-02 20:09:45 +00:00
Poul-Henning Kamp
d9f9156b84 Ignore CVS directories 2005-08-02 20:09:24 +00:00
Poul-Henning Kamp
2a6de17fc9 Add the first snapshot at rewriting the nanobsd build to be a shellscript.
The overall idea is to get a single build script which will not need
editing, but instead overrides and changes happen by config files passed
as arguments.
2005-07-26 18:52:50 +00:00
Philip Paeps
fc2d060bf7 Add some more NO_FOO options. I'm not sure if they're correctly sorted in the
size-scheme.  Also add commented NO_BIND_FOO options for people who want named
but not all of the bloat it likes to include by default.

While here, make a comment about BOOT_COMCONSOLE_SPEED.
2005-07-25 09:15:12 +00:00
Philip Paeps
1d22933171 Add fstab entries for ALTROOTSLICE and CFGSLICE, allowing us to do away with
most of the hardcoding of device names in installed convenience scripts.

Provide a new script (root/updatep) to easily update the ALTROOTSLICE.  It
does the same as updatep1/updatep2 without hardcoded device names.  If noone
protests, I'd like to get rid of updatep1/updatep2 at some point.

As an extra bonus: turn on the error led while updating (on hardware with a
led).
2005-07-25 08:40:13 +00:00
Philip Paeps
205ede2568 Fix a minor buglet making the code match the comment. Fractional cylinders
confuse fdisk and break the NanoBSD build.

This is an MT5/6 candidate.

MFC after:	3 days
2005-07-14 12:20:02 +00:00
Poul-Henning Kamp
0f93d8245d Make the path to make.conf a parameter which can be overridden.
NB: you have to use absolute path!
2005-05-19 15:34:36 +00:00
Poul-Henning Kamp
af7b2a826c Save space by using -b 4096 -f 512 for newfs.
Retain -i 8192 to avoid wasting inodes.
2005-05-19 15:34:00 +00:00
Poul-Henning Kamp
3ed0460401 Run the "files" customization script 2005-05-19 15:24:23 +00:00