All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ross Burton <ross.burton@intel.com>
To: openembedded-core@lists.openembedded.org
Cc: openembedded-devel@lists.openembedded.org
Subject: [PATCH 00/22] hybrid systemd/sysvinit, and systemd fixes
Date: Fri, 22 Mar 2013 17:38:20 +0000	[thread overview]
Message-ID: <cover.1363973088.git.ross.burton@intel.com> (raw)

Hi,

This series changes the package groups and distro feature setup to allow
simultaneous use of sysvinit and systemd, with a number of fixes that were
discovered on the way.

As before there are sysvinit and systemd DISTRO_FEATURES.  These are not
mutually exclusive, and sysvinit is backfilled for compatibility.

Common Scenarios
===

"I want sysvinit, just like before"

Do nothing, sysvinit is backfilled and the image is effectively identical as it
was before this series.

"I just want systemd"

Add systemd to DISTRO_FEATURES, and sysvinit to
DISTRO_FEATURES_BACKFILL_CONSIDERED.  You'll only get the sysvinit scripts where
required: when a package doesn't have systemd support.

"I want my main image to boot using systemd, but a rescue image to use sysvinit"

This is less elegant, but can probably be improved later.  Add systemd to
DISTRO_FEATURES and sysvinit will be backfilled for you (feel free to add it
explicitly for clarity).  Then set VIRTUAL-RUNTIME_init_manager to "systemd" and
any images using package-group-core-boot will boot using systemd.  For your
rescue/minimal images I expect you're not using package-group-core-boot anyway,
so pull sysvinit+initscripts into those images however you wish.


Future Plans
===

Mainly, finish integrating the bulk of meta-systemd into oe-core!

There's potential for reducing the footprint of the hwdb by building/patching
udevadm on the host to generate the hwdb.bin file at image construction time,
and then removing the source files leaving just the binary cache.  As it is,
udev-hwdb is a recommendation so if your system doesn't actually need it, you
can blacklist it.

Cheers,
Ross

The following changes since commit 6211a2bdd32f7b2c8de7a5d75353c0522c8d4230:

  scripts/qemu-testlib: Add more debugging information (2013-03-21 17:05:15 +0000)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib ross/systemd

for you to fetch changes up to 0e1da1e227c8e52087f7a52f8501a81cd28e76c7:

  systemd: recommend systemd-compat-units (2013-03-22 17:24:21 +0000)

----------------------------------------------------------------
Andreas Oberritter (1):
      Revert "base-files: add fstab for systemd based systems"

Radu Moisan (1):
      busybox: enable systemd integration for syslogd

Ross Burton (20):
      busybox: add strictatime support to mount
      systemd: make xz support (compressed journal) optional, defaulting to on.
      systemd: merge udev-systemd into udev
      core-image-minimal-initramfs: don't install busybox-syslog
      systemd: don't depend on the PCI/USB databases
      systemd: split out the hwdb data
      default-providers: change udev selection logic
      update-rcd.bbclass: handle both sysvinit and systemd features being present
      util-linux: split uuidd into it's own package, and enable for systemd
      update-rcd: drop depends to recommends, check for update-rcd in scripts
      systemd: check for systemctl first, and don't force systemd to be installed.
      systemd: add udev init script for hybrid sysvinit/systemd usage
      update-rc.d/systemd: change communication variable name
      default-distrovars: don't add INITMAN to DISTRO_FEATURES and DISTRO_FEATURES_BACKFILL
      bitbake.conf: explicitly backfill sysvinit, not DISTRO_FEATURES_INITMAN
      local.conf.sample.extended: remove obsolete DISTRO_FEATURES_INITMAN reference
      default-distrovars: remove obsolete DISTRO_FEATURES_INITMAN reference
      packagegroup-core-boot: revert to specifying sysvinit as default init manager
      systemd-compat-units: disable dbus-1
      systemd: recommend systemd-compat-units

 meta-yocto/conf/local.conf.sample.extended         |    4 -
 meta/classes/systemd.bbclass                       |   38 ++++----
 meta/classes/update-rc.d.bbclass                   |   22 +++--
 meta/conf/bitbake.conf                             |    2 +-
 meta/conf/distro/include/default-distrovars.inc    |    3 +-
 meta/conf/distro/include/default-providers.inc     |    2 +-
 .../base-files/base-files/fstab.systemd            |    9 --
 meta/recipes-core/base-files/base-files_3.0.14.bb  |    7 +-
 .../busybox/busybox-1.20.2/strict-atime.patch      |   49 ++++++++++
 meta/recipes-core/busybox/busybox.inc              |   18 +++-
 meta/recipes-core/busybox/busybox_1.20.2.bb        |    5 +-
 .../busybox/files/busybox-klogd.service.in         |    8 ++
 .../busybox/files/busybox-syslog.service.in        |   13 +++
 .../images/core-image-minimal-initramfs.bb         |    2 +
 .../packagegroups/packagegroup-core-boot.bb        |    6 +-
 meta/recipes-core/systemd/systemd-compat-units.bb  |    1 +
 meta/recipes-core/systemd/systemd/init             |  101 ++++++++++++++++++++
 meta/recipes-core/systemd/systemd_197.bb           |   49 +++++++---
 meta/recipes-core/util-linux/util-linux.inc        |   11 ++-
 19 files changed, 280 insertions(+), 70 deletions(-)
 delete mode 100644 meta/recipes-core/base-files/base-files/fstab.systemd
 create mode 100644 meta/recipes-core/busybox/busybox-1.20.2/strict-atime.patch
 create mode 100644 meta/recipes-core/busybox/files/busybox-klogd.service.in
 create mode 100644 meta/recipes-core/busybox/files/busybox-syslog.service.in
 create mode 100644 meta/recipes-core/systemd/systemd/init

Andreas Oberritter (1):
  Revert "base-files: add fstab for systemd based systems"

Radu Moisan (1):
  busybox: enable systemd integration for syslogd

Ross Burton (20):
  busybox: add strictatime support to mount
  systemd: make xz support (compressed journal) optional, defaulting to
    on.
  systemd: merge udev-systemd into udev
  core-image-minimal-initramfs: don't install busybox-syslog
  systemd: don't depend on the PCI/USB databases
  systemd: split out the hwdb data
  default-providers: change udev selection logic
  update-rcd.bbclass: handle both sysvinit and systemd features being
    present
  util-linux: split uuidd into it's own package, and enable for systemd
  update-rcd: drop depends to recommends, check for update-rcd in
    scripts
  systemd: check for systemctl first, and don't force systemd to be
    installed.
  systemd: add udev init script for hybrid sysvinit/systemd usage
  update-rc.d/systemd: change communication variable name
  default-distrovars: don't add INITMAN to DISTRO_FEATURES and
    DISTRO_FEATURES_BACKFILL
  bitbake.conf: explicitly backfill sysvinit, not
    DISTRO_FEATURES_INITMAN
  local.conf.sample.extended: remove obsolete DISTRO_FEATURES_INITMAN
    reference
  default-distrovars: remove obsolete DISTRO_FEATURES_INITMAN reference
  packagegroup-core-boot: revert to specifying sysvinit as default init
    manager
  systemd-compat-units: disable dbus-1
  systemd: recommend systemd-compat-units

 meta-yocto/conf/local.conf.sample.extended         |    4 -
 meta/classes/systemd.bbclass                       |   38 ++++----
 meta/classes/update-rc.d.bbclass                   |   22 +++--
 meta/conf/bitbake.conf                             |    2 +-
 meta/conf/distro/include/default-distrovars.inc    |    3 +-
 meta/conf/distro/include/default-providers.inc     |    2 +-
 .../base-files/base-files/fstab.systemd            |    9 --
 meta/recipes-core/base-files/base-files_3.0.14.bb  |    7 +-
 .../busybox/busybox-1.20.2/strict-atime.patch      |   49 ++++++++++
 meta/recipes-core/busybox/busybox.inc              |   18 +++-
 meta/recipes-core/busybox/busybox_1.20.2.bb        |    5 +-
 .../busybox/files/busybox-klogd.service.in         |    8 ++
 .../busybox/files/busybox-syslog.service.in        |   13 +++
 .../images/core-image-minimal-initramfs.bb         |    2 +
 .../packagegroups/packagegroup-core-boot.bb        |    6 +-
 meta/recipes-core/systemd/systemd-compat-units.bb  |    1 +
 meta/recipes-core/systemd/systemd/init             |  101 ++++++++++++++++++++
 meta/recipes-core/systemd/systemd_197.bb           |   49 +++++++---
 meta/recipes-core/util-linux/util-linux.inc        |   11 ++-
 19 files changed, 280 insertions(+), 70 deletions(-)
 delete mode 100644 meta/recipes-core/base-files/base-files/fstab.systemd
 create mode 100644 meta/recipes-core/busybox/busybox-1.20.2/strict-atime.patch
 create mode 100644 meta/recipes-core/busybox/files/busybox-klogd.service.in
 create mode 100644 meta/recipes-core/busybox/files/busybox-syslog.service.in
 create mode 100644 meta/recipes-core/systemd/systemd/init

-- 
1.7.10.4




             reply	other threads:[~2013-03-22 17:58 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-22 17:38 Ross Burton [this message]
2013-03-22 17:38 ` [PATCH 01/22] busybox: enable systemd integration for syslogd Ross Burton
2013-03-25 12:47   ` Andreas Müller
2013-03-25 12:53     ` Burton, Ross
2013-03-25 12:58       ` Andreas Müller
2013-03-22 17:38 ` [PATCH 02/22] busybox: add strictatime support to mount Ross Burton
2013-03-22 17:38 ` [PATCH 03/22] systemd: make xz support (compressed journal) optional, defaulting to on Ross Burton
2013-03-22 17:38 ` [PATCH 04/22] systemd: merge udev-systemd into udev Ross Burton
2013-03-22 17:38 ` [PATCH 05/22] core-image-minimal-initramfs: don't install busybox-syslog Ross Burton
2013-03-22 17:38 ` [PATCH 06/22] systemd: don't depend on the PCI/USB databases Ross Burton
2013-03-22 17:38 ` [PATCH 07/22] systemd: split out the hwdb data Ross Burton
2013-03-22 17:38 ` [PATCH 08/22] default-providers: change udev selection logic Ross Burton
2013-03-22 17:38 ` [PATCH 09/22] update-rcd.bbclass: handle both sysvinit and systemd features being present Ross Burton
2013-03-22 19:04   ` Martin Jansa
2013-03-22 19:04     ` [OE-core] " Martin Jansa
2013-03-22 19:11     ` Burton, Ross
2013-03-22 19:11       ` [OE-core] " Burton, Ross
2013-03-22 17:38 ` [PATCH 10/22] util-linux: split uuidd into it's own package, and enable for systemd Ross Burton
2013-03-22 17:38 ` [PATCH 11/22] update-rcd: drop depends to recommends, check for update-rcd in scripts Ross Burton
2013-03-22 17:38 ` [PATCH 12/22] systemd: check for systemctl first, and don't force systemd to be installed Ross Burton
2013-03-22 17:38 ` [PATCH 13/22] systemd: add udev init script for hybrid sysvinit/systemd usage Ross Burton
2013-03-22 17:38 ` [PATCH 14/22] update-rc.d/systemd: change communication variable name Ross Burton
2013-03-22 17:38 ` [PATCH 15/22] default-distrovars: don't add INITMAN to DISTRO_FEATURES and DISTRO_FEATURES_BACKFILL Ross Burton
2013-03-22 17:38 ` [PATCH 16/22] bitbake.conf: explicitly backfill sysvinit, not DISTRO_FEATURES_INITMAN Ross Burton
2013-03-22 17:38 ` [PATCH 17/22] local.conf.sample.extended: remove obsolete DISTRO_FEATURES_INITMAN reference Ross Burton
2013-03-22 17:38 ` [PATCH 18/22] default-distrovars: " Ross Burton
2013-03-22 17:38 ` [PATCH 19/22] packagegroup-core-boot: revert to specifying sysvinit as default init manager Ross Burton
2013-03-23  4:30   ` Saul Wold
2013-03-22 17:38 ` [PATCH 20/22] Revert "base-files: add fstab for systemd based systems" Ross Burton
2013-03-22 17:38 ` [PATCH 21/22] systemd-compat-units: disable dbus-1 Ross Burton
2013-03-22 17:38 ` [PATCH 22/22] systemd: recommend systemd-compat-units Ross Burton
2013-03-22 22:00 ` [oe] [PATCH 00/22] hybrid systemd/sysvinit, and systemd fixes Martin Jansa
2013-03-22 22:00   ` Martin Jansa
2013-03-25 12:39   ` [oe] " Burton, Ross
2013-03-25 12:39     ` Burton, Ross

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1363973088.git.ross.burton@intel.com \
    --to=ross.burton@intel.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=openembedded-devel@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.