Skip to content

Commit

Permalink
Merge branch 'master' of git://github.com/jedi4ever/veewee
Browse files Browse the repository at this point in the history
Conflicts:
	templates/freebsd-9.1-RELEASE-amd64/postinstall.csh
	templates/freebsd-9.1-RELEASE-amd64/postinstall.sh
	templates/freebsd-9.2-RELEASE-amd64/postinstall.csh
  • Loading branch information
ngiger committed Aug 17, 2014
2 parents a922dc5 + 43c3045 commit bbd5bc5
Show file tree
Hide file tree
Showing 3 changed files with 94 additions and 136 deletions.
136 changes: 0 additions & 136 deletions templates/freebsd-9.1-RELEASE-amd64/postinstall.csh

This file was deleted.

28 changes: 28 additions & 0 deletions templates/freebsd-9.2-RELEASE-amd64/definition.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
Veewee::Definition.declare({
:cpu_count => '1', :memory_size=> '512',
:disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off',
:os_type_id => 'FreeBSD_64',
:iso_file => "FreeBSD-9.2-RELEASE-amd64-disc1.iso",
:iso_src => "ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/ISO-IMAGES/9.2/FreeBSD-9.2-RELEASE-amd64-disc1.iso",
:iso_md5 => "cde180e3c5e3e370c97598a4feccb5b4",
:iso_download_timeout => "1000",
:boot_wait => "10", :boot_cmd_sequence => [
'<Esc>',
'boot -s',
'<Enter>',
'<Wait><Wait><Wait><Wait><Wait><Wait><Wait><Wait><Wait><Wait>',
'/bin/sh<Enter>',
'mdmfs -s 100m md1 /tmp<Enter>',
'dhclient -l /tmp/dhclient.lease.em0 em0<Enter>',
'<Wait><Wait><Wait>',
'echo "Sleeping for 10 seconds, then running install script."<Enter>',
'sleep 10 ; fetch -o /tmp/install.sh http://%IP%:%PORT%/install.sh && chmod +x /tmp/install.sh && /tmp/install.sh %NAME%<Enter>'
],
:kickstart_port => "7122", :kickstart_timeout => "10000", :kickstart_file => "install.sh",
:ssh_login_timeout => "10000", :ssh_user => "root", :ssh_password => "vagrant", :ssh_key => "",
:ssh_host_port => "7222", :ssh_guest_port => "22",
:sudo_cmd => "sh '%f'",
:shutdown_cmd => "shutdown -p now",
:postinstall_files => [ "postinstall.csh"], :postinstall_timeout => "10000"
})
#'setkmap=us dodhcp=em0 dhcphostname=%NAME% ar_source=http://%IP%:%PORT%/ autoruns=0 rootpass=vagrant',
66 changes: 66 additions & 0 deletions templates/freebsd-9.2-RELEASE-amd64/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
#!/bin/sh -x

# Credit: http://www.aisecure.net/2011/05/01/root-on-zfs-freebsd-current/

NAME=$1

# create disks
gpart create -s gpt ada0
gpart add -t freebsd-boot -l boot -b 40 -s 512K ada0
gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada0
gpart add -t freebsd-ufs -l root -b 1M -s 2G ada0
gpart add -t freebsd-swap -l swap -s 512M ada0
gpart add -t freebsd-ufs -l var -s 1G ada0
gpart add -t freebsd-ufs -l tmp -s 512M ada0
gpart add -t freebsd-ufs -l usr -a 1M ada0

# create filesystems
newfs -U /dev/gpt/root
newfs -U /dev/gpt/var
newfs -U /dev/gpt/tmp
newfs -U /dev/gpt/usr

# mount the filesystems
mount /dev/gpt/root /mnt
mkdir /mnt/var && mount /dev/gpt/var /mnt/var
mkdir /mnt/tmp && mount /dev/gpt/tmp /mnt/tmp
mkdir /mnt/usr && mount /dev/gpt/usr /mnt/usr

# correct permissions
chmod 1777 /mnt/tmp
mkdir /mnt/var/tmp && chmod 1777 /mnt/var/tmp
cd /mnt && mkdir usr/home && ln -s usr/home home

# Install the OS
cd /usr/freebsd-dist
cat base.txz | tar --unlink -xpJf - -C /mnt
cat lib32.txz | tar --unlink -xpJf - -C /mnt
cat kernel.txz | tar --unlink -xpJf - -C /mnt
cat src.txz | tar --unlink -xpJf - -C /mnt

# Enable required services
cat >> /mnt/etc/rc.conf << EOT
hostname="${NAME}"
ifconfig_em0="dhcp"
sshd_enable="YES"
EOT

# Enable swap
cat >> /mnt/etc/fstab << EOT
/dev/gpt/swap none swap sw 0 0
/dev/gpt/root / ufs rw 1 1
/dev/gpt/var /var ufs rw 1 1
/dev/gpt/tmp /tmp ufs rw 1 1
/dev/gpt/usr /usr ufs rw 1 1
EOT

# Install a few requirements
touch /mnt/etc/resolv.conf
echo 'PermitRootLogin yes' >> /mnt/etc/ssh/sshd_config

# Set up user accounts
mkdir /mnt/usr/home/vagrant && chown 1001:1001 /mnt/home/vagrant
echo "vagrant" | pw -V /mnt/etc useradd vagrant -h 0 -s csh -G wheel -d /home/vagrant -c "Vagrant User"
echo "vagrant" | pw -V /mnt/etc usermod root -h 0

reboot

0 comments on commit bbd5bc5

Please sign in to comment.