Print this page
Kayak for ISO.
Starting with this commit, "gmake install-usb" will build the entire Kayak
world, both for PXE boot and for USB/ISO installers as well.
The CDDL license text and copyrights for OmniTI-original code are now
updated, too.
Additionally, there are files now present to allow pxeboot (Loader's PXE
booter) instead of pxegrub (GRUB's PXE booter).
Some portions Reviewed by: Lauri Tirkkonen <lotheac@iki.fi>
@@ -1,30 +1,19 @@
#
-# CDDL HEADER START
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
+
#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
+# Copyright 2017 OmniTI Computer Consulting, Inc. All rights reserved.
#
-# CDDL HEADER END
-#
-#
-# Copyright 2012 OmniTI Computer Consulting, Inc. All rights reserved.
-# Use is subject to license terms.
-#
VERSION?=$(shell awk '$$1 == "OmniOS" { print $$3 }' /etc/release)
BUILDSEND=rpool/kayak_image
@@ -33,16 +22,19 @@
all:
INSTALLS=anon.dtrace.conf anon.system build_image.sh build_zfs_send.sh \
data/access.log data/boot data/etc data/filelist.ramdisk data/kernel \
data/known_extras data/mdb data/platform disk_help.sh install_help.sh \
- install_image.sh Makefile net_help.sh README.md \
+ install_image.sh takeover-console.c Makefile net_help.sh README.md \
sample/000000000000.sample sample/menu.lst.000000000000
TFTP_FILES=$(DESTDIR)/tftpboot/boot/platform/i86pc/kernel/amd64/unix \
$(DESTDIR)/tftpboot/kayak/miniroot.gz \
+ $(DESTDIR)/tftpboot/kayak/miniroot.gz.hash \
$(DESTDIR)/tftpboot/boot/grub/menu.lst \
+ $(DESTDIR)/tftpboot/pxeboot $(DESTDIR)/tftpboot/boot/loader.conf.local \
+ $(DESTDIR)/tftpboot/boot/forth $(DESTDIR)/tftpboot/boot/defaults \
$(DESTDIR)/tftpboot/pxegrub
WEB_FILES=$(DESTDIR)/var/kayak/kayak/$(VERSION).zfs.bz2
IMG_FILES=corner.png tail_bg_v1.png OmniOS_logo_medium.png tail_bg_v2.png
@@ -59,19 +51,34 @@
./build_zfs_send.sh -d $(BUILDSEND) $(VERSION)
$(DESTDIR)/tftpboot/pxegrub: /boot/grub/pxegrub
cp -p $< $@
+$(DESTDIR)/tftpboot/pxeboot: /boot/pxeboot
+ cp -p $< $@
+
+$(DESTDIR)/tftpboot/boot/loader.conf.local: loader.conf.local
+ cp -p $< $@
+
+$(DESTDIR)/tftpboot/boot/forth: /boot/forth
+ cp -rp $< $@
+
+$(DESTDIR)/tftpboot/boot/defaults: /boot/defaults
+ cp -rp $< $@
+
$(DESTDIR)/tftpboot/boot/grub/menu.lst: sample/menu.lst.000000000000
sed -e 's/@VERSION@/$(VERSION)/' $< > $@
$(DESTDIR)/tftpboot/boot/platform/i86pc/kernel/amd64/unix: /platform/i86pc/kernel/amd64/unix
cp -p $< $@
$(DESTDIR)/tftpboot/kayak/miniroot.gz: $(BUILDSEND_MP)/miniroot.gz
cp -p $< $@
+$(DESTDIR)/tftpboot/kayak/miniroot.gz.hash: $(BUILDSEND_MP)/miniroot.gz
+ digest -a sha1 $< > $@
+
build_image.sh:
VERSION=$(VERSION) ./build_image.sh
build_zfs_send.sh:
VERSION=$(VERSION) ./build_zfs_image.sh
@@ -114,5 +121,14 @@
cp http/kayak.xml $(DESTDIR)/var/svc/manifest/network/kayak.xml
install-tftp: tftp-dirs $(TFTP_FILES)
install-web: server-dirs $(WEB_FILES)
+
+takeover-console: takeover-console.c
+ gcc -o takeover-console takeover-console.c
+
+install-iso: takeover-console install-tftp install-web
+ BUILDSEND_MP=$(BUILDSEND_MP) VERSION=$(VERSION) ./build_iso.sh
+
+install-usb: install-iso
+ ./usbgen.sh $(BUILDSEND_MP)/$(VERSION).iso $(BUILDSEND_MP)/$(VERSION).usb-dd /tmp