summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortorben2015-11-26 17:30:04 +0100
committertorben2015-11-26 17:30:04 +0100
commitdd16eef2610e7e83e80252d723785b40a5d8af90 (patch)
tree175d997f9da64a8ab480d6f2d849bf9620fb4a6c
parentMerge branch 'master' of git.openslx.org:openslx-ng/systemd-init (diff)
downloadsystemd-init-dd16eef2610e7e83e80252d723785b40a5d8af90.tar.gz
systemd-init-dd16eef2610e7e83e80252d723785b40a5d8af90.tar.xz
systemd-init-dd16eef2610e7e83e80252d723785b40a5d8af90.zip
Ubuntu fixes.
-rwxr-xr-xbuilder/build-initramfs.sh14
m---------builder/dnbd3-rootfs/binaries/dnbd30
-rwxr-xr-xbuilder/dnbd3-rootfs/binaries/nbd/Makefile8
-rwxr-xr-xbuilder/dnbd3-rootfs/module-setup.sh13
-rw-r--r--dev-tools/virtualBoxTFTPRoot/pxelinux.cfg/default2
5 files changed, 30 insertions, 7 deletions
diff --git a/builder/build-initramfs.sh b/builder/build-initramfs.sh
index acc3ed85..136f9299 100755
--- a/builder/build-initramfs.sh
+++ b/builder/build-initramfs.sh
@@ -67,7 +67,10 @@ build_initramfs_verbose='no'
build_initramfs_debug='no'
build_initramfs_create_system_image='no'
build_initramfs_dependencies=(bash cpio git test shift echo mktemp cat rm sed \
- gzip curl tar grep make)
+ gzip curl tar grep make gcc cmake)
+# TODO Check for:
+# /usr/lib/x86_64-linux-gnu/libz.so
+# for dnbd3
# endregion
@@ -202,6 +205,12 @@ function build_initramfs_create_qcow2_system() {
# region controller
+# TODO link dracut module if present in same folder or download if not present
+# already.
+# TODO write clean procedure (also clean dracut module).
+# TODO check for existing kernel headers:
+ # ubuntu: sudo apt-get install linux-headers-$(uname -r)
+
utils.dependency_check "${build_initramfs_dependencies[*]}"
if ! build_initramfs_parse_command_line "$@"; then
build_initramfs_print_help_message "$0"
@@ -218,7 +227,8 @@ if [[ ! -L "$build_initramfs__dracut_modules_target" || "$(readlink \
"$build_initramfs__dracut_modules_target")" != \
"$build_initramfs__dracut_modules_source" ]]
then
- logging.info 'Link dnbd3 plugin into dracut modules folder.'
+ logging.info \
+ "Link dnbd3 plugin into dracut modules folder ($build_initramfs__dracut_modules_source -> $build_initramfs__dracut_modules_target)."
ln --symbolic "$build_initramfs__dracut_modules_source" \
"$build_initramfs__dracut_modules_target"
# NOTE: If you copy we would have to recompile each binaries every time:
diff --git a/builder/dnbd3-rootfs/binaries/dnbd3 b/builder/dnbd3-rootfs/binaries/dnbd3
-Subproject c3c050851dc866f2311d33a262ed81af8c57ce2
+Subproject 7e0668d1e4f78a0c7ff8689b197e2c104ce569e
diff --git a/builder/dnbd3-rootfs/binaries/nbd/Makefile b/builder/dnbd3-rootfs/binaries/nbd/Makefile
index 4dd501c3..2bd08b8e 100755
--- a/builder/dnbd3-rootfs/binaries/nbd/Makefile
+++ b/builder/dnbd3-rootfs/binaries/nbd/Makefile
@@ -3,13 +3,13 @@ obj-m += nbd.o
all: build
build: update
- make --directory /lib/modules/$(shell uname -r)/build M=$(PWD) modules
+ make --directory /lib/modules/$(shell uname --kernel-release)/build M=$(PWD) modules
install:
- make --directory /lib/modules/$(shell uname -r)/build M=$(PWD) modules_install
+ make --directory /lib/modules/$(shell uname --kernel-release)/build M=$(PWD) modules_install
clean:
- make --directory /lib/modules/$(shell uname -r)/build M=$(PWD) clean
+ make --directory /lib/modules/$(shell uname --kernel-release)/build M=$(PWD) clean
update:
- curl --location --remote-name "https://raw.githubusercontent.com/torvalds/linux/v$(uname --kernel-release | cut --delimiter='.' --fields=1-2)/drivers/block/nbd.c"
+ curl --location --remote-name "https://raw.githubusercontent.com/torvalds/linux/v$(shell uname --kernel-release | cut --delimiter='.' --fields=1-2)/drivers/block/nbd.c"
diff --git a/builder/dnbd3-rootfs/module-setup.sh b/builder/dnbd3-rootfs/module-setup.sh
index b730b516..1a38b016 100755
--- a/builder/dnbd3-rootfs/module-setup.sh
+++ b/builder/dnbd3-rootfs/module-setup.sh
@@ -15,6 +15,19 @@ check() {
utils_compile_systemd_preserve_process_marker \
"$moddir/binaries/systemd-preserve-process-marker/"
fi
+
+ # NOTE: This are workarounds for:
+ # - distributions where "systemd-udevd" doesn't lives in "/usr/lib" but in
+ # "/lib".
+ if [[ ! -f "${systemdutildir}/systemd-udevd" ]] && [[ -f /lib/systemd/systemd-udevd ]]; then
+ mkdir --parents "${initdir}${systemdutildir}"
+ ln --symbolic --force /lib/systemd/systemd-udevd \
+ "${initdir}${systemdutildir}/systemd-udevd"
+ fi
+ # - "/usr/bin/sh" isn't available.
+ if [[ ! -f /usr/bin/sh ]] && [[ -f /bin/sh ]]; then
+ ln --symbolic --force /bin/sh /usr/bin/sh
+ fi
return 0
}
diff --git a/dev-tools/virtualBoxTFTPRoot/pxelinux.cfg/default b/dev-tools/virtualBoxTFTPRoot/pxelinux.cfg/default
index efe9d298..ee38ed10 100644
--- a/dev-tools/virtualBoxTFTPRoot/pxelinux.cfg/default
+++ b/dev-tools/virtualBoxTFTPRoot/pxelinux.cfg/default
@@ -6,7 +6,7 @@ PROMPT 0
MENU TITLE My PXE Boot Menu
LABEL arch
-MENU LABEL ^arch network boot
+MENU LABEL ^test network boot
KERNEL /vmlinuz-linux
APPEND initrd=/initramfs-test.img root=PARTLABEL=system rw rootflags=subvol=root loglevel=2 acpi_osi="!Windows 2012" rd.info rd.break ip=10.0.2.15::10.0.2.2:255.255.255.0 vconsole.font=latarcyrheb-sun16 vconsole.keymap=de-latin1-nodeadkeys rd.locale.LANG=de_DE.UTF-8 slxsrv=10.0.2.2:80,10.0.2.2:8080,10.0.2.2:8008,10.0.2.2:8090,10.0.2.2:8280,10.0.2.2:8888 slxbase=archLinux/ vga=current