[ostree] Add support for mkinitcpio
- From: Colin Walters <walters src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [ostree] Add support for mkinitcpio
- Date: Thu, 24 Oct 2013 18:38:20 +0000 (UTC)
commit ccb10d592ded5b665a11ceca0e61cab1dd6e5013
Author: Daniel Narvaez <dwnarvaez gmail com>
Date: Tue Oct 22 22:04:32 2013 +0200
Add support for mkinitcpio
https://bugzilla.gnome.org/show_bug.cgi?id=710682
Makefile-dracut.am => Makefile-boot.am | 29 +++++++++++++++-------
Makefile-switchroot.am | 2 +-
Makefile.am | 2 +-
configure.ac | 15 +++++++++--
src/{ => boot}/dracut/module-setup.sh | 2 +-
src/{ => boot}/dracut/ostree.conf | 0
src/boot/mkinitcpio/ostree | 10 +++++++
src/boot/mkinitcpio/ostree-mkinitcpio.conf | 1 +
src/{dracut => boot}/ostree-prepare-root.service | 0
src/{dracut => boot}/ostree-remount.service | 0
10 files changed, 46 insertions(+), 15 deletions(-)
---
diff --git a/Makefile-dracut.am b/Makefile-boot.am
similarity index 61%
rename from Makefile-dracut.am
rename to Makefile-boot.am
index d9e0dd4..49b3c03 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 3dacb87..ef837ce 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 578f265..131a458 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 7cfa64b..073b7a3 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
similarity index 92%
rename from src/dracut/module-setup.sh
rename to src/boot/dracut/module-setup.sh
index b2af772..a976991 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
similarity index 100%
rename from src/dracut/ostree.conf
rename to src/boot/dracut/ostree.conf
diff --git a/src/boot/mkinitcpio/ostree b/src/boot/mkinitcpio/ostree
new file mode 100644
index 0000000..4674837
--- /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 0000000..75d26eb
--- /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
similarity index 100%
rename from src/dracut/ostree-prepare-root.service
rename to src/boot/ostree-prepare-root.service
diff --git a/src/dracut/ostree-remount.service b/src/boot/ostree-remount.service
similarity index 100%
rename from src/dracut/ostree-remount.service
rename to src/boot/ostree-remount.service
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]