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 4EF3558973 for ; Wed, 10 Feb 2016 00:12:15 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 3F8CD21C317; Wed, 10 Feb 2016 00:12:07 +0000 (UTC) Received: from plane.gmane.org (plane.gmane.org [80.91.229.3]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 2A66121C088 for ; Wed, 10 Feb 2016 00:12:06 +0000 (UTC) Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1aTINv-0004iZ-QJ for gentoo-dev@lists.gentoo.org; Wed, 10 Feb 2016 01:11:56 +0100 Received: from ip98-167-165-199.ph.ph.cox.net ([98.167.165.199]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 10 Feb 2016 01:11:55 +0100 Received: from 1i5t5.duncan by ip98-167-165-199.ph.ph.cox.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 10 Feb 2016 01:11:55 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: gentoo-dev@lists.gentoo.org From: Duncan <1i5t5.duncan@cox.net> Subject: [gentoo-dev] Re: Changing order of default virtual/udev provider Date: Wed, 10 Feb 2016 00:11:51 +0000 (UTC) Message-ID: References: <56B85B06.7020500@gentoo.org> <56B936DB.1010407@gentoo.org> <56B939C4.20804@gentoo.org> <56B9E454.1010609@gentoo.org> <56B9FB52.3040100@gentoo.org> 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 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: ip98-167-165-199.ph.ph.cox.net User-Agent: Pan/0.140 (Chocolate Salty Balls; GIT a52b404) X-Archives-Salt: f441957a-ee50-4643-acf0-798f7163477c X-Archives-Hash: 34b03efa350cc56524842ac4eb05dba2 Daniel Campbell posted on Tue, 09 Feb 2016 06:44:34 -0800 as excerpted: > If anything, a developer will have more control over how their daemon > is handled in the rc script. They would have to read systemd's C code > or its plethora of unit options to set it up 'just right' to achieve > the same. FWIW, that's an unfortunately common misconception. It's just as easy to setup a shell script to do the work in systemd as it is in rc-based systems. After all, at a high level it's simply another executable, and at an equally high level, setting up executables to run automatically at system start or other major system status change event is what init systems, regardless of the specifics, /do/. And in fact, that's pretty much what I've done here for a variety of custom services, using native systemd options and functionality where it makes sense, scripting my own where I haven't found shipped functionality or services that do exactly what I want. And I don't claim to be a C coder so I've certainly not had to read that to do it. While I've used systemd unit options where they make sense because they're generally well documented and do what it says on the tin, if I'd considered rescripting that functionality easier than reading the friendly documentation, I certainly could have done so. Meanwhile, arguably, "more control over how their daemon is handled" is incorrect as well, when with systemd it's trivial to setup cgroup control over anything cgroups control, and there's tools like nspawn if needed, that allow _way_ more control than chroot and the like, with similar levels of pre-configuration necessary. But that's beside the point of the original thread. I disagree with Rich here, because while (like him) I'm a systemd convert myself, I'm strongly in support of keeping it optional, and on profiles where systemd isn't the default, it simply makes no sense to me to default to a device manager that strongly discourages that sort of usage and has said that future breakage is a matter of when, not if, when there's a similarly functional and currently drop-in-replacement device manager that explicitly supports the use-case in question. If it applied to systemd profiles, the question of an appropriate default and its resolution would arguably be far different, but the fact of the matter is it doesn't, we're talking about non-systemd profiles exclusively, and their default openrc use-case is strongly discouraged by udev's systemd upstream, so it simply makes sense to choose defaults where the upstreams aren't rabid enemies. My major remaining concern is, as I've already said, documentation. If that can be resolved, the case is clear enough, and even if not, it's simply a judgment call on which negative is less bad, lack of documentation, or an upstream that's actively opposing our use-case and has clearly stated that breakage is a matter of when, not if. -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman