image_optim_pack 0.5.0-x86-openbsd
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +8 -0
- data/.rubocop.yml +79 -0
- data/.travis.yml +35 -0
- data/CHANGELOG.markdown +210 -0
- data/Gemfile +7 -0
- data/LICENSE.txt +27 -0
- data/Makefile +393 -0
- data/README.markdown +93 -0
- data/Vagrantfile +60 -0
- data/acknowledgements/7z.txt +56 -0
- data/acknowledgements/advancecomp.txt +674 -0
- data/acknowledgements/bmp2png.txt +8 -0
- data/acknowledgements/cexcept.txt +8 -0
- data/acknowledgements/gifread.txt +14 -0
- data/acknowledgements/gifsicle.txt +343 -0
- data/acknowledgements/iqa.txt +30 -0
- data/acknowledgements/jhead.txt +12 -0
- data/acknowledgements/jpeg-archive.txt +20 -0
- data/acknowledgements/jpegoptim.txt +339 -0
- data/acknowledgements/libjpeg-turbo.txt +27 -0
- data/acknowledgements/libjpeg-x86-simd.txt +17 -0
- data/acknowledgements/libjpeg.txt +64 -0
- data/acknowledgements/libpng.txt +90 -0
- data/acknowledgements/mozjpeg.txt +7 -0
- data/acknowledgements/optipng-authors.txt +26 -0
- data/acknowledgements/optipng.txt +21 -0
- data/acknowledgements/pngcrush.txt +35 -0
- data/acknowledgements/pngquant.txt +56 -0
- data/acknowledgements/smallfry.txt +13 -0
- data/acknowledgements/zlib.txt +34 -0
- data/acknowledgements/zopfli-contributors.txt +6 -0
- data/acknowledgements/zopfli.txt +201 -0
- data/boxes/.gitignore +3 -0
- data/boxes/.rubocop.yml +13 -0
- data/boxes/Gemfile +11 -0
- data/boxes/Rakefile +144 -0
- data/boxes/definitions/freebsd-amd64/definition.rb +38 -0
- data/boxes/definitions/freebsd-amd64/install.sh +66 -0
- data/boxes/definitions/freebsd-i386/definition.rb +38 -0
- data/boxes/definitions/freebsd-i386/install.sh +66 -0
- data/boxes/definitions/freebsd-postinstall.sh +38 -0
- data/boxes/definitions/openbsd-amd64/definition.rb +71 -0
- data/boxes/definitions/openbsd-i386/definition.rb +71 -0
- data/boxes/definitions/openbsd-postinstall.sh +29 -0
- data/image_optim_pack-darwin-x86.gemspec +3 -0
- data/image_optim_pack-darwin-x86_64.gemspec +3 -0
- data/image_optim_pack-freebsd-amd64.gemspec +3 -0
- data/image_optim_pack-freebsd-x86.gemspec +3 -0
- data/image_optim_pack-linux-x86.gemspec +3 -0
- data/image_optim_pack-linux-x86_64.gemspec +3 -0
- data/image_optim_pack-openbsd-x86.gemspec +3 -0
- data/image_optim_pack-openbsd-x86_64.gemspec +3 -0
- data/image_optim_pack.gemspec +41 -0
- data/lib/image_optim/pack.rb +117 -0
- data/lib/image_optim_pack.rb +1 -0
- data/script/livecheck +116 -0
- data/script/run +71 -0
- data/script/update_versions +22 -0
- data/spec/image_optim/pack_spec.rb +114 -0
- data/spec/image_optim_spec.rb +39 -0
- data/spec/spec_helper.rb +8 -0
- data/vendor/openbsd-i386/advpng +0 -0
- data/vendor/openbsd-i386/gifsicle +0 -0
- data/vendor/openbsd-i386/jhead +0 -0
- data/vendor/openbsd-i386/jpeg-recompress +0 -0
- data/vendor/openbsd-i386/jpegoptim +0 -0
- data/vendor/openbsd-i386/jpegtran +0 -0
- data/vendor/openbsd-i386/libjpeg.so +0 -0
- data/vendor/openbsd-i386/libpng.so +0 -0
- data/vendor/openbsd-i386/libz.so +0 -0
- data/vendor/openbsd-i386/optipng +0 -0
- data/vendor/openbsd-i386/pngcrush +0 -0
- data/vendor/openbsd-i386/pngquant +0 -0
- metadata +182 -0
data/boxes/.gitignore
ADDED
data/boxes/.rubocop.yml
ADDED
data/boxes/Gemfile
ADDED
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
|
+
})
|