image_optim_pack 0.5.0-x86-openbsd

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +8 -0
  3. data/.rubocop.yml +79 -0
  4. data/.travis.yml +35 -0
  5. data/CHANGELOG.markdown +210 -0
  6. data/Gemfile +7 -0
  7. data/LICENSE.txt +27 -0
  8. data/Makefile +393 -0
  9. data/README.markdown +93 -0
  10. data/Vagrantfile +60 -0
  11. data/acknowledgements/7z.txt +56 -0
  12. data/acknowledgements/advancecomp.txt +674 -0
  13. data/acknowledgements/bmp2png.txt +8 -0
  14. data/acknowledgements/cexcept.txt +8 -0
  15. data/acknowledgements/gifread.txt +14 -0
  16. data/acknowledgements/gifsicle.txt +343 -0
  17. data/acknowledgements/iqa.txt +30 -0
  18. data/acknowledgements/jhead.txt +12 -0
  19. data/acknowledgements/jpeg-archive.txt +20 -0
  20. data/acknowledgements/jpegoptim.txt +339 -0
  21. data/acknowledgements/libjpeg-turbo.txt +27 -0
  22. data/acknowledgements/libjpeg-x86-simd.txt +17 -0
  23. data/acknowledgements/libjpeg.txt +64 -0
  24. data/acknowledgements/libpng.txt +90 -0
  25. data/acknowledgements/mozjpeg.txt +7 -0
  26. data/acknowledgements/optipng-authors.txt +26 -0
  27. data/acknowledgements/optipng.txt +21 -0
  28. data/acknowledgements/pngcrush.txt +35 -0
  29. data/acknowledgements/pngquant.txt +56 -0
  30. data/acknowledgements/smallfry.txt +13 -0
  31. data/acknowledgements/zlib.txt +34 -0
  32. data/acknowledgements/zopfli-contributors.txt +6 -0
  33. data/acknowledgements/zopfli.txt +201 -0
  34. data/boxes/.gitignore +3 -0
  35. data/boxes/.rubocop.yml +13 -0
  36. data/boxes/Gemfile +11 -0
  37. data/boxes/Rakefile +144 -0
  38. data/boxes/definitions/freebsd-amd64/definition.rb +38 -0
  39. data/boxes/definitions/freebsd-amd64/install.sh +66 -0
  40. data/boxes/definitions/freebsd-i386/definition.rb +38 -0
  41. data/boxes/definitions/freebsd-i386/install.sh +66 -0
  42. data/boxes/definitions/freebsd-postinstall.sh +38 -0
  43. data/boxes/definitions/openbsd-amd64/definition.rb +71 -0
  44. data/boxes/definitions/openbsd-i386/definition.rb +71 -0
  45. data/boxes/definitions/openbsd-postinstall.sh +29 -0
  46. data/image_optim_pack-darwin-x86.gemspec +3 -0
  47. data/image_optim_pack-darwin-x86_64.gemspec +3 -0
  48. data/image_optim_pack-freebsd-amd64.gemspec +3 -0
  49. data/image_optim_pack-freebsd-x86.gemspec +3 -0
  50. data/image_optim_pack-linux-x86.gemspec +3 -0
  51. data/image_optim_pack-linux-x86_64.gemspec +3 -0
  52. data/image_optim_pack-openbsd-x86.gemspec +3 -0
  53. data/image_optim_pack-openbsd-x86_64.gemspec +3 -0
  54. data/image_optim_pack.gemspec +41 -0
  55. data/lib/image_optim/pack.rb +117 -0
  56. data/lib/image_optim_pack.rb +1 -0
  57. data/script/livecheck +116 -0
  58. data/script/run +71 -0
  59. data/script/update_versions +22 -0
  60. data/spec/image_optim/pack_spec.rb +114 -0
  61. data/spec/image_optim_spec.rb +39 -0
  62. data/spec/spec_helper.rb +8 -0
  63. data/vendor/openbsd-i386/advpng +0 -0
  64. data/vendor/openbsd-i386/gifsicle +0 -0
  65. data/vendor/openbsd-i386/jhead +0 -0
  66. data/vendor/openbsd-i386/jpeg-recompress +0 -0
  67. data/vendor/openbsd-i386/jpegoptim +0 -0
  68. data/vendor/openbsd-i386/jpegtran +0 -0
  69. data/vendor/openbsd-i386/libjpeg.so +0 -0
  70. data/vendor/openbsd-i386/libpng.so +0 -0
  71. data/vendor/openbsd-i386/libz.so +0 -0
  72. data/vendor/openbsd-i386/optipng +0 -0
  73. data/vendor/openbsd-i386/pngcrush +0 -0
  74. data/vendor/openbsd-i386/pngquant +0 -0
  75. metadata +182 -0
data/boxes/.gitignore ADDED
@@ -0,0 +1,3 @@
1
+ /*.box
2
+ /.env
3
+ /iso/
@@ -0,0 +1,13 @@
1
+ inherit_from: ../.rubocop.yml
2
+
3
+ Lint/UnneededSplatExpansion:
4
+ Enabled: false
5
+
6
+ Metrics/LineLength:
7
+ Enabled: false
8
+
9
+ Security/Eval:
10
+ Exclude: [Rakefile]
11
+
12
+ Style/BracesAroundHashParameters:
13
+ Enabled: false
data/boxes/Gemfile ADDED
@@ -0,0 +1,11 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem 'rake'
4
+
5
+ gem 'veewee', '= 0.4.5.1'
6
+ gem 'dotenv', '~> 2.0'
7
+ gem 'atlas', '~> 1.3'
8
+ gem 'progress', '~> 3.1'
9
+
10
+ gem 'net-scp'
11
+ gem 'progressbar', '~> 0.21.0'
data/boxes/Rakefile ADDED
@@ -0,0 +1,144 @@
1
+ require 'atlas'
2
+ require 'dotenv/tasks'
3
+ require 'pathname'
4
+ require 'progress'
5
+
6
+ # Show progress when file is read by excon used by atlas
7
+ class BodyProgress # :nodoc:
8
+ def initialize(path, &block)
9
+ fail ArgumentError, 'block required' unless block
10
+ @io = File.open(path)
11
+ Progress.start(path, File.size(path)) do
12
+ yield self
13
+ end
14
+ end
15
+
16
+ def size
17
+ @io.size
18
+ end
19
+
20
+ def read(length)
21
+ data = @io.read(length)
22
+ Progress.step data.length if data
23
+ data
24
+ end
25
+ end
26
+
27
+ class Box # :nodoc:
28
+ attr_reader :definition_path, :definition_dir, :name, :path
29
+
30
+ def initialize(definition_path)
31
+ @definition_path = Pathname(definition_path)
32
+ @definition_dir = @definition_path.dirname
33
+ @name = @definition_dir.basename.to_s
34
+ @path = Pathname("#{@name}.box")
35
+ end
36
+
37
+ def dependencies
38
+ postinstall_file_paths = Array(definition[:postinstall_files]).map do |path|
39
+ definition_dir + path
40
+ end
41
+ [definition_path] + postinstall_file_paths
42
+ end
43
+
44
+ def build
45
+ sh(*%W[veewee vbox build --auto --checksum --force --nogui #{name}])
46
+ sh(*%w[sleep 30])
47
+ sh(*%W[veewee vbox export --force #{name}])
48
+ sh(*%W[veewee vbox destroy #{name}])
49
+ end
50
+
51
+ def add
52
+ assert_box_created
53
+
54
+ sh(*%W[vagrant box add --force --name boxes/#{path} #{path}])
55
+ end
56
+
57
+ def upload(version)
58
+ assert_box_created
59
+
60
+ box = Atlas::Box.create({
61
+ :username => 'image_optim_pack',
62
+ :name => name,
63
+ :short_description => "minimal #{name} (bash, wget) from #{definition[:iso_file]}",
64
+ })
65
+
66
+ version = box.create_version(:version => version)
67
+
68
+ provider = version.create_provider(:name => 'virtualbox')
69
+
70
+ BodyProgress.new(path) do |f|
71
+ provider.upload(f)
72
+ end
73
+
74
+ version.release
75
+ end
76
+
77
+ private
78
+
79
+ def definition
80
+ @definition ||= begin
81
+ eval definition_path.read.sub('Veewee::Session.declare', '{}.merge')
82
+ end
83
+ end
84
+
85
+ def assert_box_created
86
+ abort "#{path} doesn't exist" unless path.size?
87
+ end
88
+
89
+ def sh(*args)
90
+ abort unless system(*args)
91
+ end
92
+ end
93
+
94
+ task :atlas => :dotenv do
95
+ token = ENV['ATLAS_TOKEN'].to_s
96
+ fail 'ATLAS_TOKEN missing' if token.empty?
97
+ Atlas.configure do |config|
98
+ config.access_token = token
99
+ end
100
+ end
101
+
102
+ desc 'build all boxes'
103
+ task :build
104
+
105
+ desc 'add all boxes to vagrant'
106
+ task :add
107
+
108
+ desc 'upload all boxes to atlas'
109
+ task :upload
110
+
111
+ version = Time.now.strftime('%Y%m%d.0.0')
112
+ Dir['definitions/*/definition.rb'].each do |definition_path|
113
+ box = Box.new(definition_path)
114
+
115
+ desc "build #{box.path}"
116
+ file box.path => box.dependencies do
117
+ box.build
118
+ end
119
+ task :build => box.path
120
+
121
+ namespace :add do
122
+ desc "add #{box.path}"
123
+ task box.name => box.path do
124
+ box.add
125
+ end
126
+ end
127
+ task :add => "add:#{box.name}"
128
+
129
+ namespace :upload do
130
+ desc "upload #{box.path}"
131
+ task box.name => [:atlas, box.path] do
132
+ box.upload(version)
133
+ end
134
+ end
135
+ task :upload => "upload:#{box.name}"
136
+ end
137
+
138
+ desc 'remove *.box and iso dir'
139
+ task :clean do
140
+ sh 'rm *.box || true'
141
+ sh 'rm -r iso || true'
142
+ end
143
+
144
+ task :default => :build
@@ -0,0 +1,38 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1',
3
+ :memory_size => '512',
4
+ :disk_size => '8192',
5
+ :disk_format => 'VDI',
6
+ :hostiocache => 'off',
7
+ :os_type_id => 'FreeBSD_64',
8
+ :iso_file => 'FreeBSD-10.3-RELEASE-amd64-disc1.iso',
9
+ :iso_src => 'http://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/10.3/FreeBSD-10.3-RELEASE-amd64-disc1.iso',
10
+ :iso_sha256 => 'fef068cf6dea26923ab84b62ba9f21461ca0bdec90a0741c8ffb0e1ca29e410d',
11
+ :iso_download_timeout => '1000',
12
+ :boot_wait => '10',
13
+ :boot_cmd_sequence => [
14
+ '<Esc>',
15
+ 'boot -s',
16
+ '<Enter>',
17
+ '<Wait>' * 10,
18
+ '/bin/sh<Enter>',
19
+ 'mdmfs -s 100m md1 /tmp<Enter>',
20
+ 'dhclient -l /tmp/dhclient.lease.em0 em0<Enter>',
21
+ '<Wait>' * 10,
22
+ 'fetch -o /tmp/install.sh http://%IP%:%PORT%/install.sh && chmod +x /tmp/install.sh && /tmp/install.sh %NAME%<Enter>',
23
+ ],
24
+ :kickstart_port => '7122',
25
+ :kickstart_timeout => '300',
26
+ :kickstart_file => 'install.sh',
27
+ :ssh_login_timeout => '10000',
28
+ :ssh_user => 'root',
29
+ :ssh_password => 'vagrant',
30
+ :ssh_key => '',
31
+ :ssh_host_port => '7222',
32
+ :ssh_guest_port => '22',
33
+ :sudo_cmd => "sh '%f'",
34
+ :shutdown_cmd => 'shutdown -p now',
35
+ :postinstall_files => %w[../freebsd-postinstall.sh],
36
+ :postinstall_timeout => '10000',
37
+ :skip_iso_transfer => true,
38
+ })
@@ -0,0 +1,66 @@
1
+ #!/bin/sh -x
2
+
3
+ # Credit: http://www.aisecure.net/2011/05/01/root-on-zfs-freebsd-current/
4
+
5
+ NAME=$1
6
+
7
+ # create disks
8
+ gpart create -s gpt ada0
9
+ gpart add -t freebsd-boot -l boot -b 40 -s 512K ada0
10
+ gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada0
11
+ gpart add -t freebsd-ufs -l root -b 1M -s 2G ada0
12
+ gpart add -t freebsd-swap -l swap -s 512M ada0
13
+ gpart add -t freebsd-ufs -l var -s 1G ada0
14
+ gpart add -t freebsd-ufs -l tmp -s 512M ada0
15
+ gpart add -t freebsd-ufs -l usr -a 1M ada0
16
+
17
+ # create filesystems
18
+ newfs -U /dev/gpt/root
19
+ newfs -U /dev/gpt/var
20
+ newfs -U /dev/gpt/tmp
21
+ newfs -U /dev/gpt/usr
22
+
23
+ # mount the filesystems
24
+ mount /dev/gpt/root /mnt
25
+ mkdir /mnt/var && mount /dev/gpt/var /mnt/var
26
+ mkdir /mnt/tmp && mount /dev/gpt/tmp /mnt/tmp
27
+ mkdir /mnt/usr && mount /dev/gpt/usr /mnt/usr
28
+
29
+ # correct permissions
30
+ chmod 1777 /mnt/tmp
31
+ mkdir /mnt/var/tmp && chmod 1777 /mnt/var/tmp
32
+ cd /mnt && mkdir usr/home && ln -s usr/home home
33
+
34
+ # Install the OS
35
+ cd /usr/freebsd-dist
36
+ cat base.txz | tar --unlink -xpJf - -C /mnt
37
+ cat lib32.txz | tar --unlink -xpJf - -C /mnt
38
+ cat kernel.txz | tar --unlink -xpJf - -C /mnt
39
+ cat src.txz | tar --unlink -xpJf - -C /mnt
40
+
41
+ # Enable required services
42
+ cat >> /mnt/etc/rc.conf << EOT
43
+ hostname="${NAME}"
44
+ ifconfig_em0="dhcp"
45
+ sshd_enable="YES"
46
+ EOT
47
+
48
+ # Enable swap
49
+ cat >> /mnt/etc/fstab << EOT
50
+ /dev/gpt/swap none swap sw 0 0
51
+ /dev/gpt/root / ufs rw 1 1
52
+ /dev/gpt/var /var ufs rw 1 1
53
+ /dev/gpt/tmp /tmp ufs rw 1 1
54
+ /dev/gpt/usr /usr ufs rw 1 1
55
+ EOT
56
+
57
+ # Install a few requirements
58
+ touch /mnt/etc/resolv.conf
59
+ echo 'PermitRootLogin yes' >> /mnt/etc/ssh/sshd_config
60
+
61
+ # Set up user accounts
62
+ mkdir /mnt/usr/home/vagrant && chown 1001:1001 /mnt/home/vagrant
63
+ echo "vagrant" | pw -V /mnt/etc useradd vagrant -h 0 -s csh -G wheel -d /home/vagrant -c "Vagrant User"
64
+ echo "vagrant" | pw -V /mnt/etc usermod root -h 0
65
+
66
+ reboot
@@ -0,0 +1,38 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1',
3
+ :memory_size => '512',
4
+ :disk_size => '8192',
5
+ :disk_format => 'VDI',
6
+ :hostiocache => 'off',
7
+ :os_type_id => 'FreeBSD',
8
+ :iso_file => 'FreeBSD-10.3-RELEASE-i386-disc1.iso',
9
+ :iso_src => 'http://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/10.3/FreeBSD-10.3-RELEASE-i386-disc1.iso',
10
+ :iso_sha256 => '8329ee2ca4779892edbb001c303670d74642e4353e97d02f4521895023cacd5d',
11
+ :iso_download_timeout => '1000',
12
+ :boot_wait => '10',
13
+ :boot_cmd_sequence => [
14
+ '<Esc>',
15
+ 'boot -s',
16
+ '<Enter>',
17
+ '<Wait>' * 10,
18
+ '/bin/sh<Enter>',
19
+ 'mdmfs -s 100m md1 /tmp<Enter>',
20
+ 'dhclient -l /tmp/dhclient.lease.em0 em0<Enter>',
21
+ '<Wait>' * 10,
22
+ 'fetch -o /tmp/install.sh http://%IP%:%PORT%/install.sh && chmod +x /tmp/install.sh && /tmp/install.sh %NAME%<Enter>',
23
+ ],
24
+ :kickstart_port => '7122',
25
+ :kickstart_timeout => '300',
26
+ :kickstart_file => 'install.sh',
27
+ :ssh_login_timeout => '10000',
28
+ :ssh_user => 'root',
29
+ :ssh_password => 'vagrant',
30
+ :ssh_key => '',
31
+ :ssh_host_port => '7222',
32
+ :ssh_guest_port => '22',
33
+ :sudo_cmd => "sh '%f'",
34
+ :shutdown_cmd => 'shutdown -p now',
35
+ :postinstall_files => %w[../freebsd-postinstall.sh],
36
+ :postinstall_timeout => '10000',
37
+ :skip_iso_transfer => true,
38
+ })
@@ -0,0 +1,66 @@
1
+ #!/bin/sh -x
2
+
3
+ # Credit: http://www.aisecure.net/2011/05/01/root-on-zfs-freebsd-current/
4
+
5
+ NAME=$1
6
+
7
+ # create disks
8
+ gpart create -s gpt ada0
9
+ gpart add -t freebsd-boot -l boot -b 40 -s 512K ada0
10
+ gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada0
11
+ gpart add -t freebsd-ufs -l root -b 1M -s 2G ada0
12
+ gpart add -t freebsd-swap -l swap -s 512M ada0
13
+ gpart add -t freebsd-ufs -l var -s 1G ada0
14
+ gpart add -t freebsd-ufs -l tmp -s 512M ada0
15
+ gpart add -t freebsd-ufs -l usr -a 1M ada0
16
+
17
+ # create filesystems
18
+ newfs -U /dev/gpt/root
19
+ newfs -U /dev/gpt/var
20
+ newfs -U /dev/gpt/tmp
21
+ newfs -U /dev/gpt/usr
22
+
23
+ # mount the filesystems
24
+ mount /dev/gpt/root /mnt
25
+ mkdir /mnt/var && mount /dev/gpt/var /mnt/var
26
+ mkdir /mnt/tmp && mount /dev/gpt/tmp /mnt/tmp
27
+ mkdir /mnt/usr && mount /dev/gpt/usr /mnt/usr
28
+
29
+ # correct permissions
30
+ chmod 1777 /mnt/tmp
31
+ mkdir /mnt/var/tmp && chmod 1777 /mnt/var/tmp
32
+ cd /mnt && mkdir usr/home && ln -s usr/home home
33
+
34
+ # Install the OS
35
+ cd /usr/freebsd-dist
36
+ cat base.txz | tar --unlink -xpJf - -C /mnt
37
+ cat lib32.txz | tar --unlink -xpJf - -C /mnt
38
+ cat kernel.txz | tar --unlink -xpJf - -C /mnt
39
+ cat src.txz | tar --unlink -xpJf - -C /mnt
40
+
41
+ # Enable required services
42
+ cat >> /mnt/etc/rc.conf << EOT
43
+ hostname="${NAME}"
44
+ ifconfig_em0="dhcp"
45
+ sshd_enable="YES"
46
+ EOT
47
+
48
+ # Enable swap
49
+ cat >> /mnt/etc/fstab << EOT
50
+ /dev/gpt/swap none swap sw 0 0
51
+ /dev/gpt/root / ufs rw 1 1
52
+ /dev/gpt/var /var ufs rw 1 1
53
+ /dev/gpt/tmp /tmp ufs rw 1 1
54
+ /dev/gpt/usr /usr ufs rw 1 1
55
+ EOT
56
+
57
+ # Install a few requirements
58
+ touch /mnt/etc/resolv.conf
59
+ echo 'PermitRootLogin yes' >> /mnt/etc/ssh/sshd_config
60
+
61
+ # Set up user accounts
62
+ mkdir /mnt/usr/home/vagrant && chown 1001:1001 /mnt/home/vagrant
63
+ echo "vagrant" | pw -V /mnt/etc useradd vagrant -h 0 -s csh -G wheel -d /home/vagrant -c "Vagrant User"
64
+ echo "vagrant" | pw -V /mnt/etc usermod root -h 0
65
+
66
+ reboot
@@ -0,0 +1,38 @@
1
+ set -ex
2
+
3
+ ntpdate -v -b in.pool.ntp.org
4
+ date > /etc/vagrant_box_build_time
5
+
6
+ ASSUME_ALWAYS_YES=yes pkg info
7
+ pkg install -y sudo bash-static wget
8
+
9
+ # setup the vagrant key
10
+ mkdir -p /home/vagrant/.ssh
11
+ chmod 700 /home/vagrant/.ssh
12
+ wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O /home/vagrant/.ssh/authorized_keys
13
+ chmod 600 /home/vagrant/.ssh/authorized_keys
14
+ chown -R vagrant /home/vagrant/.ssh
15
+
16
+ # passwordless sudo
17
+ echo "vagrant ALL=(ALL) NOPASSWD: ALL" >> /usr/local/etc/sudoers
18
+
19
+ # undo customizations
20
+ sed -i '' -e '/^REFUSE /d' /etc/portsnap.conf
21
+ sed -i '' -e '/^PermitRootLogin /d' /etc/ssh/sshd_config
22
+
23
+ # set vagrant shell to bash
24
+ pw usermod vagrant -s /usr/local/bin/bash
25
+
26
+ # cleanup
27
+ sudo pkg clean -y
28
+ rm -rf \
29
+ /var/db/freebsd-update/* \
30
+ /var/cache/pkg/* \
31
+ /etc/ssh/ssh_host_key* \
32
+ /usr/src \
33
+ /var/log/* \
34
+ /var/tmp/* \
35
+ /tmp/*
36
+ dd if=/dev/zero of=filler bs=1M || rm filler
37
+
38
+ shutdown -p now
@@ -0,0 +1,71 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1',
3
+ :memory_size => '512',
4
+ :disk_size => '8192',
5
+ :disk_format => 'VDI',
6
+ :hostiocache => 'off',
7
+ :os_type_id => 'OpenBSD_64',
8
+ :iso_file => 'OpenBSD-5.5-amd64.iso',
9
+ :iso_src => 'https://www.mirrorservice.org/pub/OpenBSD/5.5/amd64/install55.iso',
10
+ :iso_sha256 => 'cc465ce3f8397883e91c6e1a8a98b1b3507a338984bbfe8978050c5f8fdcaf3f',
11
+ :iso_download_timeout => '1000',
12
+ :boot_wait => '50',
13
+ :boot_cmd_sequence => [
14
+ 'I<Enter>', # I - install
15
+ 'us<Enter>', # set the keyboard
16
+ 'OpenBSD55-x64<Enter>', # set the hostname
17
+ '<Enter>', # Which nic to config ? [em0]
18
+ '<Enter>', # do you want dhcp ? [dhcp]
19
+ '<Wait>' * 5,
20
+ 'none<Enter>', # IPV6 for em0 ? [none]
21
+ 'done<Enter>', # Which other nic do you wish to configure [done]
22
+ 'vagrant<Enter>', # Pw for root account
23
+ 'vagrant<Enter>',
24
+ 'yes<Enter>', # Start sshd by default ? [yes]
25
+ 'no<Enter>', # Start ntpd by default ? [yes]
26
+ 'no<Enter>', # Do you want the X window system [yes]
27
+ 'vagrant<Enter>', # Setup a user ?
28
+ 'vagrant<Enter>', # Full username
29
+ 'vagrant<Enter>', # Pw for this user
30
+ 'vagrant<Enter>',
31
+ 'no<Enter>', # Do you want to disable sshd for root ? [yes]
32
+ 'GB<Enter>', # What timezone are you in ?
33
+ '<Enter>', # Available disks [sd0]
34
+ '<Enter>', # Use DUIDs rather than device names in fstab ? [yes]
35
+ 'W<Enter>', # Use (W)whole disk or (E)edit MBR ? [whole]
36
+ 'A<Enter>', # Use (A)auto layout ... ? [a]
37
+ '<Wait>' * 70,
38
+ 'cd<Enter>', # location of the sets [cd]
39
+ '<Enter>', # Available cd-roms : cd0
40
+ '<Enter>', # Pathname to sets ? [5.5/amd64]
41
+ '-game55.tgz<Enter>', # Remove games and X
42
+ '-xbase55.tgz<Enter>',
43
+ '-xetc55.tgz<Enter>',
44
+ '-xshare55.tgz<Enter>',
45
+ '-xfont55.tgz<Enter>',
46
+ '-xserv55.tgz<Enter>',
47
+ 'done<Enter>',
48
+ '<Wait>',
49
+ 'yes<Enter>', # CD does not contain SHA256.sig (5.5) Continue without verification?
50
+ 'done<Enter>', # Done installing ?
51
+ '<Wait>' * 6,
52
+ 'yes<Enter><Wait>', # Time appears wrong. Set to ...? [yes]
53
+ '<Wait>' * 6,
54
+ 'reboot<Enter>',
55
+ '<Wait>' * 6,
56
+ ],
57
+ :kickstart_port => '7122',
58
+ :kickstart_timeout => '300',
59
+ :kickstart_file => '',
60
+ :ssh_login_timeout => '10000',
61
+ :ssh_user => 'root',
62
+ :ssh_password => 'vagrant',
63
+ :ssh_key => '',
64
+ :ssh_host_port => '7222',
65
+ :ssh_guest_port => '22',
66
+ :sudo_cmd => "sh '%f'",
67
+ :shutdown_cmd => '/sbin/halt -p',
68
+ :postinstall_files => %w[../openbsd-postinstall.sh],
69
+ :postinstall_timeout => '10000',
70
+ :skip_iso_transfer => true,
71
+ })