summaryrefslogtreecommitdiff
path: root/elements/deploy-tools
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2017-11-10 11:25:31 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2017-12-06 14:45:25 +0000
commit6c27a98c6a5207a29bffaeeb486479a2c24cd26c (patch)
treeb6955b8dec6fde8cd5837b8487dc66a0325ed23b /elements/deploy-tools
parent58d9422afe0191276109e2ecaeaec721d8816a88 (diff)
downloaddefinitions-6c27a98c6a5207a29bffaeeb486479a2c24cd26c.tar.gz
Add minimal-system-image-x86_64
This element produces a disk image that boots in QEMU. It has a kernel, BusyBox, and little else; but should be suitable as a basis for more grand endeavours. This disk image we produce is 53MB. I spent a while trying to get this as small as possible and this is as far as I got: * The boot partition seems to have a minimum size just over 32MB; lower than that and SYSLINUX fails to write the boot sector. The combined size of the initramfs and kernel is about 32MB, so I imagine that's what limits us. * The main partition is limited in size only by the amount of binaries that we put there. * We have a useless 40KB swap partition, which the x86image plugin insists on creating for us. Again 40KB is the minimum size that `mkswap` will allow. It's possible to override or modify the x86image plugin to avoid swap altogether but I'm not sure of the best way to proceed. There are a few dependency cleanups in the bsp-generic stack; previously we'd build the whole 'foundation' stack which took ages and wasn't needed at all.
Diffstat (limited to 'elements/deploy-tools')
-rw-r--r--elements/deploy-tools/mtools.bst11
-rw-r--r--elements/deploy-tools/parted.bst19
2 files changed, 30 insertions, 0 deletions
diff --git a/elements/deploy-tools/mtools.bst b/elements/deploy-tools/mtools.bst
new file mode 100644
index 00000000..354a1cfa
--- /dev/null
+++ b/elements/deploy-tools/mtools.bst
@@ -0,0 +1,11 @@
+kind: autotools
+depends:
+- gnu-toolchain.bst
+sources:
+- kind: git
+ url: upstream:mtools
+ track: mtools-4.0.18
+ ref: af0c3edb9706e470b45a9c8dd6debcc9e2d543c2
+config:
+ configure-commands:
+ - ./configure --prefix="%{prefix}"
diff --git a/elements/deploy-tools/parted.bst b/elements/deploy-tools/parted.bst
new file mode 100644
index 00000000..e1024f90
--- /dev/null
+++ b/elements/deploy-tools/parted.bst
@@ -0,0 +1,19 @@
+kind: autotools
+depends:
+- core.bst
+sources:
+- kind: git
+ url: upstream:parted
+ track: baserock/v3.2
+ ref: 387e96e6eac59d84e9a688422b4b321ae9beaa20
+ submodules:
+ gnulib:
+ url: upstream:gnulib
+config:
+ configure-commands:
+ - sed -i -e '/^buildreq="/,/^"/{/rsync/d}' bootstrap.conf
+ - sed -i -e '/^buildreq="/,/^"/{/perl/d}' bootstrap.conf
+ - ./bootstrap --skip-po --no-git --gnulib-srcdir=gnulib
+ - ./configure --prefix="%{prefix}" --disable-device-mapper
+ build-commands:
+ - make WERROR_CFLAGS=""