summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile-boot.am (renamed from Makefile-dracut.am)29
-rw-r--r--Makefile-switchroot.am2
-rw-r--r--Makefile.am2
-rw-r--r--configure.ac15
-rwxr-xr-xsrc/boot/dracut/module-setup.sh (renamed from src/dracut/module-setup.sh)2
-rwxr-xr-xsrc/boot/dracut/ostree.conf (renamed from src/dracut/ostree.conf)0
-rw-r--r--src/boot/mkinitcpio/ostree10
-rw-r--r--src/boot/mkinitcpio/ostree-mkinitcpio.conf1
-rw-r--r--src/boot/ostree-prepare-root.service (renamed from src/dracut/ostree-prepare-root.service)0
-rw-r--r--src/boot/ostree-remount.service (renamed from src/dracut/ostree-remount.service)0
10 files changed, 46 insertions, 15 deletions
diff --git a/Makefile-dracut.am b/Makefile-boot.am
index d9e0dd4b..49b3c037 100644
--- a/Makefile-dracut.am
+++ b/Makefile-boot.am
@@ -20,18 +20,29 @@
if BUILDOPT_DRACUT
# Not using $(libdir) here is intentional, dracut modules go in prefix/lib
dracutmoddir = $(prefix)/lib/dracut/modules.d/98ostree
-dracutmod_SCRIPTS = src/dracut/module-setup.sh
-dracutmod_DATA = src/dracut/ostree-prepare-root.service
-
-systemdsystemunit_DATA = src/dracut/ostree-remount.service
+dracutmod_SCRIPTS = src/boot/dracut/module-setup.sh
dracutconfdir = $(sysconfdir)/dracut.conf.d
-dracutconf_DATA = src/dracut/ostree.conf
+dracutconf_DATA = src/boot/dracut/ostree.conf
+endif
+
+if BUILDOPT_MKINITCPIO
+mkinitcpioinstalldir = $(prefix)/lib/initcpio/install
+mkinitcpioinstall_SCRIPTS = src/boot/mkinitcpio/ostree
+
+mkinitcpioconfdir = $(sysconfdir)
+mkinitcpioconf_DATA = src/boot/mkinitcpio/ostree-mkinitcpio.conf
+endif
+
+if BUILDOPT_SYSTEMD
+systemdsystemunit_DATA = src/boot/ostree-prepare-root.service \
+ src/boot/ostree-remount.service
endif
-EXTRA_DIST += src/dracut/module-setup.sh \
- src/dracut/ostree-prepare-root.service \
- src/dracut/ostree-remount.service \
- src/dracut/ostree.conf \
+EXTRA_DIST += src/boot/dracut/module-setup.sh \
+ src/boot/dracut/ostree.conf \
+ src/boot/mkinitcpio/ostree \
+ src/boot/ostree-prepare-root.service \
+ src/boot/ostree-remount.service \
$(NULL)
diff --git a/Makefile-switchroot.am b/Makefile-switchroot.am
index 3dacb87a..ef837ced 100644
--- a/Makefile-switchroot.am
+++ b/Makefile-switchroot.am
@@ -15,7 +15,7 @@
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
-if BUILDOPT_DRACUT
+if BUILDOPT_SYSTEMD
sbin_PROGRAMS += ostree-prepare-root
sbin_PROGRAMS += ostree-remount
noinst_LTLIBRARIES += libswitchroot-mountutil.la
diff --git a/Makefile.am b/Makefile.am
index 578f2650..131a4583 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -108,7 +108,7 @@ include Makefile-libostree.am
include Makefile-ostree.am
include Makefile-switchroot.am
include Makefile-tests.am
-include Makefile-dracut.am
+include Makefile-boot.am
install-data-hook: $(INSTALL_DATA_HOOKS)
diff --git a/configure.ac b/configure.ac
index 7cfa64b9..073b7a36 100644
--- a/configure.ac
+++ b/configure.ac
@@ -143,7 +143,14 @@ AC_ARG_WITH(dracut,
[with_dracut=no])
AM_CONDITIONAL(BUILDOPT_DRACUT, test x$with_dracut = xyes)
-AS_IF([test "x$with_dracut" = "xyes"], [
+AC_ARG_WITH(mkinitcpio,
+ AS_HELP_STRING([--with-mkinitcpio],
+ [Install mkinitcpio module (default: no)]),,
+ [with_mkinitcpio=no])
+AM_CONDITIONAL(BUILDOPT_MKINITCPIO, test x$with_mkinitcpio = xyes)
+
+AS_IF([test "x$with_dracut" = "xyes" || test "x$with_mkinitcpio" = "xyes"], [
+ with_systemd=yes
AC_ARG_WITH([systemdsystemunitdir],
AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
[],
@@ -152,6 +159,7 @@ AS_IF([test "x$with_dracut" = "xyes"], [
AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
])
])
+AM_CONDITIONAL(BUILDOPT_SYSTEMD, test x$with_systemd = xyes)
dnl for tests
AS_IF([test "x$found_introspection" = xyes], [
@@ -184,8 +192,9 @@ echo "
gpgme (sign commits): $with_gpgme
documentation: $enable_gtk_doc
gjs-based tests: $have_gjs
- dracut: $with_dracut"
-AS_IF([test "x$with_dracut" = "xyes"], [
+ dracut: $with_dracut
+ mkinitcpio: $with_mkinitcpio"
+AS_IF([test "x$with_systemd" = "xyes"], [
echo " systemd unit dir: $with_systemdsystemunitdir"
])
echo ""
diff --git a/src/dracut/module-setup.sh b/src/boot/dracut/module-setup.sh
index b2af7726..a976991a 100755
--- a/src/dracut/module-setup.sh
+++ b/src/boot/dracut/module-setup.sh
@@ -33,7 +33,7 @@ depends() {
install() {
dracut_install ostree-prepare-root
- inst_simple "$moddir/ostree-prepare-root.service" "${systemdsystemunitdir}/ostree-prepare-root.service"
+ inst_simple "${systemdsystemunitdir}/ostree-prepare-root.service"
mkdir -p "${initdir}${systemdsystemconfdir}/initrd-switch-root.target.wants"
ln_r "${systemdsystemunitdir}/ostree-prepare-root.service" \
"${systemdsystemconfdir}/initrd-switch-root.target.wants/ostree-prepare-root.service"
diff --git a/src/dracut/ostree.conf b/src/boot/dracut/ostree.conf
index 612bb435..612bb435 100755
--- a/src/dracut/ostree.conf
+++ b/src/boot/dracut/ostree.conf
diff --git a/src/boot/mkinitcpio/ostree b/src/boot/mkinitcpio/ostree
new file mode 100644
index 00000000..46748370
--- /dev/null
+++ b/src/boot/mkinitcpio/ostree
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+build() {
+ add_binary /usr/sbin/ostree-prepare-root
+ add_binary /usr/sbin/ostree-remount
+
+ add_file /usr/lib/systemd/system/ostree-prepare-root.service
+ add_symlink /usr/lib/systemd/system/initrd-switch-root.target.wants/ostree-prepare-root.service \
+ /usr/lib/systemd/system/ostree-prepare-root.service
+}
diff --git a/src/boot/mkinitcpio/ostree-mkinitcpio.conf b/src/boot/mkinitcpio/ostree-mkinitcpio.conf
new file mode 100644
index 00000000..75d26eb7
--- /dev/null
+++ b/src/boot/mkinitcpio/ostree-mkinitcpio.conf
@@ -0,0 +1 @@
+HOOKS="base systemd ostree autodetect modconf block filesystems keyboard fsck"
diff --git a/src/dracut/ostree-prepare-root.service b/src/boot/ostree-prepare-root.service
index 230c856b..230c856b 100644
--- a/src/dracut/ostree-prepare-root.service
+++ b/src/boot/ostree-prepare-root.service
diff --git a/src/dracut/ostree-remount.service b/src/boot/ostree-remount.service
index 26b7d390..26b7d390 100644
--- a/src/dracut/ostree-remount.service
+++ b/src/boot/ostree-remount.service