From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 1BD091381F3 for ; Wed, 1 May 2013 10:04:52 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id CB39BE08A8; Wed, 1 May 2013 10:04:43 +0000 (UTC) Received: from mail-we0-f181.google.com (mail-we0-f181.google.com [74.125.82.181]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id C002DE0891 for ; Wed, 1 May 2013 10:04:42 +0000 (UTC) Received: by mail-we0-f181.google.com with SMTP id s8so301197wey.40 for ; Wed, 01 May 2013 03:04:41 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:sender:from:date:x-google-sender-auth :message-id:subject:to:content-type:x-gm-message-state; bh=FNj7DtlticZlcIapAHnjunwtcsBbMqDxRwWle8ia+Mc=; b=UQwbeciNSjgqg2UxeRXgPEf/32vglPuUy1IFpwYG7ebZr2wJaKP+KkpUT45VFUcE2C RcDjZJLkXJWj4TSakjI2ofBDmo0yGDPL4lZ8JNOTzQ5VuGa9Zvmblts8+0xCQeYvFqEg L5UpNkSgGOuose+4app5uLGYa1jvx2BjTeCBdZYrdn8w27ekQI9hbyb9bAz2N525/+ow GiJPLxHSixViYxxiO7LkkQv0euBexaOHJQu9xoZb8WvsoYA7CPmg89V0w5GLVbQyP9mB K6NkCGZqSh2D2eItlINWGv9cf1/FksomgT5liy+BF5gNOxP6d5Ay4Gs+M4Pw7mG+qdUS Walw== X-Received: by 10.180.182.110 with SMTP id ed14mr29142519wic.6.1367402681214; Wed, 01 May 2013 03:04:41 -0700 (PDT) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Sender: lxnay@sabayonlinux.org Received: by 10.194.138.210 with HTTP; Wed, 1 May 2013 03:04:00 -0700 (PDT) From: Fabio Erculiani Date: Wed, 1 May 2013 12:04:00 +0200 X-Google-Sender-Auth: zsgfc3bRigB4xu7bymQDRnqVkbA Message-ID: Subject: [gentoo-dev] Making systemd more accessible to "normal" users To: gentoo-dev@lists.gentoo.org Content-Type: text/plain; charset=UTF-8 X-Gm-Message-State: ALoCoQnK8gHXrmWNgAgaSVNBH3MgrI2RMB+tHCLW1j21CZeRosP4KWkzHaagP9SlR2mXkjlaPgvL X-Archives-Salt: e1046b81-feb7-4b2e-871c-0c4cff8e51bd X-Archives-Hash: 37ffadec7875f4e13d8c3f60ec341b30 PLEASE DO NOT START A FLAME WAR AND READ ON FIRST. THIS IS NOT A POST AGAINST OPENRC. With the release of Sabayon 13.04 [1] and thanks to the efforts I put into the systemd-love overlay [2], systemd has become much more accessible and easy to migrate to/from openrc. Both are able to happily coexist and logind/consolekit detection is now done at runtime. It is sad to say that the "territoriality" in base-system (and toolchain) is not allowing any kind of progress [3] [4]. This is nothing new, by the way. There are several components that need patching in order to work as expected with systemd: - polkit needs a patch that enables runtime detection of logind/consolekit - pambase needs to drop USE=systemd and always enable the optional module pam_systemd.so - genkernel needs to migrate to *udev (or as I did, provide a --udev genkernel option), mdev is unable to properly activate LVM volumes and LVM is actually working by miracle with openrc. Alternatively, we should migrate to dracut. - networkmanager need not to install/remove files depending on USE=systemd but rather detect systemd at runtime, which is a 3 lines script. - openrc-settingsd needs to support eselect-settingsd, which makes possible to switch the settingsd implementation at runtime, between openrc and systemd. This also removes the silly conflict between openrc-settingsd and systemd friends. - genkernel should at least support plymouth (work in progress my side) - other ~490 systemd units are missing at this time and writing them could also be a great GSoC project (don't look at me, I'm busy enough). All this would come with no cost for the current openrc state (actually, my initramfs speed improvements patches in genkernel.git also benefit openrc). If Gentoo is about choice, we should give our users the right to choose between the init system they like the most. It looks like there is some consensus on the effort of making systemd more accessible, while there are problems with submitting bugs about new systemd units of the sort that maintainers just_dont_answer(tm). In this case, I am just giving 3 weeks grace period for maintainers to answer and then I usually go ahead adding units (I'm in systemd@ after all). The only remaining problem is about eselect-sysvinit, for this reason, I am probably going to create a new separate pkg called _sysvinit-next_, that contains all the fun stuff many developers were not allowed to commit (besides my needs, there is also the need of splitting sysvinit due to the issues reported in [4]). I am sure that a masked alternative sysvinit ebuild won't hurt anybody and will make Gentoo a bit more fun to use. The final outcome will hopefully be: - easier to migrate from/to systemd, at runtime, with NO recompilation at all (just enable USE=systemd and switch the device manager from *udev to systemd -- unless somebody wants to drop the udev part from systemd, if at all possible) - we give the users the right to choose without driving them nuts with weird emerge-fu. - we make possible to support new init systems in future, and even specific init wrappers (bootchart anyone?) - we prepare the path towards a painless migration from consolekit (deprecated for long time now) to logind (we probably need to fork it off the systemd pkg -- upstream projects are _dropping_ consolekit support right now!) - we put back some fun into Gentoo If you want to see a working implementation of my systemd-love efforts, just go download [1] and see things working yourself. [1] http://www.sabayon.org/release/press-release-sabayon-1304 [2] https://github.com/Sabayon/systemd-love [3] For instance: https://bugs.gentoo.org/show_bug.cgi?id=465236 [4] "useless crap": https://bugs.gentoo.org/show_bug.cgi?id=399615 Cheers, -- Fabio Erculiani