Permalink
Browse files

- Fixed invalid disksize archlinux i686

- Added 2second sleep to all ubuntu based to avoid dhcp timing problem
- Corrected the setup.exe -> cygwin-setup.exe for the windows2008R2
  • Loading branch information...
jedi4ever committed Jun 6, 2011
1 parent 7f8bc52 commit 3cef710f07eb86303e05f1803ce92f64825fa0f5
View
@@ -3,6 +3,8 @@ gems/*
iso/*
tmp/*
definitions/*
+Vagrantfile
+cookbooks/*
boxes/*
pkg/*
*.box
View
@@ -8,7 +8,6 @@ PATH
popen4 (~> 0.1.2)
progressbar
rspec (~> 2.5.0)
- simon (~> 0.1.1)
thor (~> 0.14.6)
vagrant (~> 0.7.0)
@@ -44,7 +43,6 @@ GEM
Platform (>= 0.4.0)
open4 (>= 0.4.0)
progressbar (0.9.0)
- rinject (0.1.2)
rspec (2.5.0)
rspec-core (~> 2.5.0)
rspec-expectations (~> 2.5.0)
@@ -53,14 +51,8 @@ GEM
rspec-expectations (2.5.0)
diff-lcs (~> 1.1.2)
rspec-mocks (2.5.0)
- simon (0.1.1)
- progressbar
- rinject (>= 0.1.1)
- transmission (>= 0.1)
- trollop (>= 1.15)
term-ansicolor (1.0.5)
thor (0.14.6)
- transmission (0.1.0)
trollop (1.16.2)
vagrant (0.7.5)
archive-tar-minitar (= 0.5.2)
@@ -2,6 +2,7 @@
#https://wiki.archlinux.org/index.php/Install_from_Existing_Linux
+#ARCH=x86_64
ARCH=i686
mkdir /tmp/archlinux
cd /tmp/archlinux
@@ -42,8 +43,8 @@ sfdisk --force /dev/sda <<EOF
# partition table of /dev/sda
unit: sectors
-/dev/sda1 : start= 2048, size= 18874368, Id=83
-/dev/sda2 : start= 18876416, size= 2095104, Id=82
+/dev/sda1 : start= 2048, size= 16777216, Id=83
+/dev/sda2 : start= 16779264, size= 3987456, Id=82
/dev/sda3 : start= 0, size= 0, Id= 0
/dev/sda4 : start= 0, size= 0, Id= 0
EOF
@@ -0,0 +1,23 @@
+Veewee::Session.declare({
+ :cpu_count => '1', :memory_size=> '384',
+ :disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off',
+ :os_type_id => 'Ubuntu_64',
+ :iso_file => "ubuntu-10.04.x-server-amd64-netboot.iso",
+ :iso_src => "http://archive.ubuntu.com/ubuntu/dists/lucid/main/installer-amd64/current/images/netboot/mini.iso",
+ :iso_md5 => "d260ca4ad6d0c81bf5cf38a63fa63b5b",
+ :iso_download_timeout => "1000",
+ :boot_wait => "10", :boot_cmd_sequence => [
+ 'linux noapic preseed/url=http://%IP%:%PORT%/preseed.cfg ',
+ 'debian-installer=en_US auto locale=en_US kbd-chooser/method=us ',
+ 'hostname=%NAME% ',
+ 'fb=false debconf/frontend=noninteractive ',
+ 'console-setup/ask_detect=false console-setup/modelcode=pc105 console-setup/layoutcode=us ',
+ 'initrd=initrd.gz -- <Enter>'
+ ],
+ :kickstart_port => "7122", :kickstart_timeout => "10000", :kickstart_file => "preseed.cfg",
+ :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
+ :ssh_host_port => "7222", :ssh_guest_port => "22",
+ :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
+ :shutdown_cmd => "shutdown -P now",
+ :postinstall_files => [ "postinstall.sh"], :postinstall_timeout => "10000"
+})
@@ -0,0 +1,87 @@
+# postinstall.sh created from Mitchell's official lucid32/64 baseboxes
+
+# Apt-install various things necessary for Ruby, guest additions,
+# etc., and remove optional things to trim down the machine.
+apt-get -y update
+apt-get -y upgrade
+apt-get -y install linux-headers-$(uname -r) build-essential
+apt-get -y install zlib1g-dev libssl-dev libreadline5-dev
+apt-get clean
+
+# Setup sudo to allow no-password sudo for "admin"
+cp /etc/sudoers /etc/sudoers.orig
+sed -i -e '/Defaults\s\+env_reset/a Defaults\texempt_group=admin' /etc/sudoers
+sed -i -e 's/%admin ALL=(ALL) ALL/%admin ALL=NOPASSWD:ALL/g' /etc/sudoers
+
+# Install NFS client
+apt-get -y install nfs-common
+
+# Install Ruby from source in /opt so that users of Vagrant
+# can install their own Rubies using packages or however.
+# We must install the 1.8.x series since Puppet doesn't support
+# Ruby 1.9 yet.
+wget http://ftp.ruby-lang.org/pub/ruby/ruby-1.8.7-p334.tar.gz
+tar xvzf ruby-1.8.7-p334.tar.gz
+cd ruby-1.8.7-p334
+./configure --prefix=/opt/ruby
+make
+make install
+cd ..
+rm -rf ruby-1.8.7-p334*
+
+# Install RubyGems 1.7.2
+wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
+tar xzf rubygems-1.7.2.tgz
+cd rubygems-1.7.2
+/opt/ruby/bin/ruby setup.rb
+cd ..
+rm -rf rubygems-1.7.2*
+
+# Installing chef & Puppet
+/opt/ruby/bin/gem install chef --no-ri --no-rdoc
+/opt/ruby/bin/gem install puppet --no-ri --no-rdoc
+
+# Add /opt/ruby/bin to the global path as the last resort so
+# Ruby, RubyGems, and Chef/Puppet are visible
+echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/vagrantruby.sh
+
+# Installing vagrant keys
+mkdir /home/vagrant/.ssh
+chmod 700 /home/vagrant/.ssh
+cd /home/vagrant/.ssh
+wget --no-check-certificate 'http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' -O authorized_keys
+chown -R vagrant /home/vagrant/.ssh
+
+# Installing the virtualbox guest additions
+VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
+cd /tmp
+wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
+mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
+sh /mnt/VBoxLinuxAdditions.run
+umount /mnt
+
+rm VBoxGuestAdditions_$VBOX_VERSION.iso
+
+# Remove items used for building, since they aren't needed anymore
+apt-get -y remove linux-headers-$(uname -r) build-essential
+apt-get -y autoremove
+
+# Zero out the free space to save space in the final image:
+dd if=/dev/zero of=/EMPTY bs=1M
+rm -f /EMPTY
+
+# Removing leftover leases and persistent rules
+echo "cleaning up dhcp leases"
+rm /var/lib/dhcp3/*
+
+# Make sure Udev doesn't block our network
+# http://6.ptmc.org/?p=164
+echo "cleaning up udev rules"
+rm /etc/udev/rules.d/70-persistent-net.rules
+mkdir /etc/udev/rules.d/70-persistent-net.rules
+rm -rf /dev/.udev/
+rm /lib/udev/rules.d/75-persistent-net-generator.rules
+
+echo "Adding a 2 sec delay to the interface up, to make the dhclient happy"
+echo "pre-up sleep 2" >> /etc/network/interfaces
+exit
@@ -0,0 +1,89 @@
+## Options to set on the command line
+d-i debian-installer/locale string en_US
+d-i console-setup/ask_detect boolean false
+d-i console-setup/layout string Belgium
+
+#d-i netcfg/get_hostname string dummy
+d-i netcfg/get_hostname string unassigned-hostname
+d-i netcfg/get_domain string unassigned-domain
+
+# Continue without a default route
+# Not working , specify a dummy in the DHCP
+#d-i netcfg/no_default_route boolean
+
+d-i time/zone string Europe/Brussels
+d-i clock-setup/utc-auto boolean true
+d-i clock-setup/utc boolean true
+
+d-i kbd-chooser/method select Belgian
+
+d-i netcfg/wireless_wep string
+
+d-i base-installer/kernel/override-image string linux-server
+#d-i base-installer/kernel/override-image string linux-image-2.6.32-21-generic
+
+# Choices: Dialog, Readline, Gnome, Kde, Editor, Noninteractive
+d-i debconf debconf/frontend select Noninteractive
+
+d-i pkgsel/install-language-support boolean false
+tasksel tasksel/first multiselect standard, ubuntu-server
+
+#d-i partman-auto/method string regular
+d-i partman-auto/method string lvm
+#d-i partman-auto/purge_lvm_from_device boolean true
+
+d-i partman-lvm/confirm boolean true
+d-i partman-lvm/device_remove_lvm boolean true
+d-i partman-auto/choose_recipe select atomic
+
+d-i partman/confirm_write_new_label boolean true
+d-i partman/confirm_nooverwrite boolean true
+d-i partman/choose_partition select finish
+d-i partman/confirm boolean true
+
+#http://ubuntu-virginia.ubuntuforums.org/showthread.php?p=9626883
+#Message: "write the changes to disk and configure lvm preseed"
+#http://serverfault.com/questions/189328/ubuntu-kickstart-installation-using-lvm-waits-for-input
+#preseed partman-lvm/confirm_nooverwrite boolean true
+
+# Write the changes to disks and configure LVM?
+d-i partman-lvm/confirm boolean true
+d-i partman-lvm/confirm_nooverwrite boolean true
+d-i partman-auto-lvm/guided_size string max
+
+## Default user, we can get away with a recipe to change this
+d-i passwd/user-fullname string vagrant
+d-i passwd/username string vagrant
+d-i passwd/user-password password vagrant
+d-i passwd/user-password-again password vagrant
+d-i user-setup/encrypt-home boolean false
+d-i user-setup/allow-password-weak boolean true
+
+## minimum is puppet and ssh and ntp
+# Individual additional packages to install
+d-i pkgsel/include string openssh-server ntp
+
+# Whether to upgrade packages after debootstrap.
+# Allowed values: none, safe-upgrade, full-upgrade
+d-i pkgsel/upgrade select full-upgrade
+
+d-i grub-installer/only_debian boolean true
+d-i grub-installer/with_other_os boolean true
+d-i finish-install/reboot_in_progress note
+
+#For the update
+d-i pkgsel/update-policy select none
+
+# debconf-get-selections --install
+#Use mirror
+#d-i apt-setup/use_mirror boolean true
+#d-i mirror/country string manual
+d-i mirror/country string US
+
+d-i mirror/protocol string http
+d-i mirror/country string manual
+d-i mirror/http/hostname string us.archive.ubuntu.com
+d-i mirror/http/directory string /ubuntu
+d-i mirror/suite select lucid
+d-i mirror/http/proxy string
+#d-i debian-installer/allow_unauthenticated string true
@@ -70,4 +70,18 @@ apt-get -y autoremove
dd if=/dev/zero of=/EMPTY bs=1M
rm -f /EMPTY
-exit
+# Removing leftover leases and persistent rules
+echo "cleaning up dhcp leases"
+rm /var/lib/dhcp3/*
+
+# Make sure Udev doesn't block our network
+# http://6.ptmc.org/?p=164
+echo "cleaning up udev rules"
+rm /etc/udev/rules.d/70-persistent-net.rules
+mkdir /etc/udev/rules.d/70-persistent-net.rules
+rm -rf /dev/.udev/
+rm /lib/udev/rules.d/75-persistent-net-generator.rules
+
+echo "Adding a 2 sec delay to the interface up, to make the dhclient happy"
+echo "pre-up sleep 2" >> /etc/network/interfaces
+exit
@@ -0,0 +1,23 @@
+Veewee::Session.declare({
+ :cpu_count => '1', :memory_size=> '384',
+ :disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off',
+ :os_type_id => 'Ubuntu',
+ :iso_file => "ubuntu-10.04.x-server-i386-netboot.iso",
+ :iso_src => "http://archive.ubuntu.com/ubuntu/dists/lucid/main/installer-i386/current/images/netboot/mini.iso",
+ :iso_md5 => "d260ca4ad6d0c81bf5cf38a63fa63b5b",
+ :iso_download_timeout => "1000",
+ :boot_wait => "10", :boot_cmd_sequence => [
+ 'linux noapic preseed/url=http://%IP%:%PORT%/preseed.cfg ',
+ 'debian-installer=en_US auto locale=en_US kbd-chooser/method=us ',
+ 'hostname=%NAME% ',
+ 'fb=false debconf/frontend=noninteractive ',
+ 'console-setup/ask_detect=false console-setup/modelcode=pc105 console-setup/layoutcode=us ',
+ 'initrd=initrd.gz -- <Enter>'
+ ],
+ :kickstart_port => "7122", :kickstart_timeout => "10000", :kickstart_file => "preseed.cfg",
+ :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
+ :ssh_host_port => "7222", :ssh_guest_port => "22",
+ :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
+ :shutdown_cmd => "shutdown -P now",
+ :postinstall_files => [ "postinstall.sh"], :postinstall_timeout => "10000"
+})
@@ -0,0 +1,87 @@
+# postinstall.sh created from Mitchell's official lucid32/64 baseboxes
+
+# Apt-install various things necessary for Ruby, guest additions,
+# etc., and remove optional things to trim down the machine.
+apt-get -y update
+apt-get -y upgrade
+apt-get -y install linux-headers-$(uname -r) build-essential
+apt-get -y install zlib1g-dev libssl-dev libreadline5-dev
+apt-get clean
+
+# Setup sudo to allow no-password sudo for "admin"
+cp /etc/sudoers /etc/sudoers.orig
+sed -i -e '/Defaults\s\+env_reset/a Defaults\texempt_group=admin' /etc/sudoers
+sed -i -e 's/%admin ALL=(ALL) ALL/%admin ALL=NOPASSWD:ALL/g' /etc/sudoers
+
+# Install NFS client
+apt-get -y install nfs-common
+
+# Install Ruby from source in /opt so that users of Vagrant
+# can install their own Rubies using packages or however.
+# We must install the 1.8.x series since Puppet doesn't support
+# Ruby 1.9 yet.
+wget http://ftp.ruby-lang.org/pub/ruby/ruby-1.8.7-p334.tar.gz
+tar xvzf ruby-1.8.7-p334.tar.gz
+cd ruby-1.8.7-p334
+./configure --prefix=/opt/ruby
+make
+make install
+cd ..
+rm -rf ruby-1.8.7-p334*
+
+# Install RubyGems 1.7.2
+wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
+tar xzf rubygems-1.7.2.tgz
+cd rubygems-1.7.2
+/opt/ruby/bin/ruby setup.rb
+cd ..
+rm -rf rubygems-1.7.2*
+
+# Installing chef & Puppet
+/opt/ruby/bin/gem install chef --no-ri --no-rdoc
+/opt/ruby/bin/gem install puppet --no-ri --no-rdoc
+
+# Add /opt/ruby/bin to the global path as the last resort so
+# Ruby, RubyGems, and Chef/Puppet are visible
+echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/vagrantruby.sh
+
+# Installing vagrant keys
+mkdir /home/vagrant/.ssh
+chmod 700 /home/vagrant/.ssh
+cd /home/vagrant/.ssh
+wget --no-check-certificate 'http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' -O authorized_keys
+chown -R vagrant /home/vagrant/.ssh
+
+# Installing the virtualbox guest additions
+VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
+cd /tmp
+wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
+mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
+sh /mnt/VBoxLinuxAdditions.run
+umount /mnt
+
+rm VBoxGuestAdditions_$VBOX_VERSION.iso
+
+# Remove items used for building, since they aren't needed anymore
+apt-get -y remove linux-headers-$(uname -r) build-essential
+apt-get -y autoremove
+
+# Zero out the free space to save space in the final image:
+dd if=/dev/zero of=/EMPTY bs=1M
+rm -f /EMPTY
+
+# Removing leftover leases and persistent rules
+echo "cleaning up dhcp leases"
+rm /var/lib/dhcp3/*
+
+# Make sure Udev doesn't block our network
+# http://6.ptmc.org/?p=164
+echo "cleaning up udev rules"
+rm /etc/udev/rules.d/70-persistent-net.rules
+mkdir /etc/udev/rules.d/70-persistent-net.rules
+rm -rf /dev/.udev/
+rm /lib/udev/rules.d/75-persistent-net-generator.rules
+
+echo "Adding a 2 sec delay to the interface up, to make the dhclient happy"
+echo "pre-up sleep 2" >> /etc/network/interfaces
+exit
Oops, something went wrong.

0 comments on commit 3cef710

Please sign in to comment.