From owner-freebsd-hackers@freebsd.org Wed Dec 19 16:01:36 2018 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E3B54133AADF for ; Wed, 19 Dec 2018 16:01:35 +0000 (UTC) (envelope-from araujobsdport@gmail.com) Received: from mail-lf1-x141.google.com (mail-lf1-x141.google.com [IPv6:2a00:1450:4864:20::141]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8CF4F87501; Wed, 19 Dec 2018 16:01:34 +0000 (UTC) (envelope-from araujobsdport@gmail.com) Received: by mail-lf1-x141.google.com with SMTP id b20so15404927lfa.12; Wed, 19 Dec 2018 08:01:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:reply-to:from:date:message-id :subject:to:cc; bh=nTtGw+qo81m+Or0fv3efs/VEmRRxULvSIRF47QasOEc=; b=Bh1Qc3dLKTNx1xoMj+nnj1bH1o9YLmvhEbcpjkZneMWi62sS51MwUknaShGgHBtyKg cyNzVvT2bq/x7IFe5lEb/HNTB95XGkrmRrcHbv6KbwYbMfOwYcoz0jWDmuSzRBcGDvrW JlyBRNqWCNOHoEafmEvRHedTAFQv503daHwc4mTQl8xYVI6mg0CvnZSFOtic+TaNYNT1 o1BDYzFhABjkKgBapk+ekcI3ej3hIn2ks/NXAn5ZNuNn5B4pe1zS1qAlUNij1mu4zL3C Cz4pS14zqbTu8sPtHA9qrZP2IR0qijVWOdYgEf/OhJL7Nj5BqrZ/BkKPw6GUAhDtrmsw lJBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:reply-to :from:date:message-id:subject:to:cc; bh=nTtGw+qo81m+Or0fv3efs/VEmRRxULvSIRF47QasOEc=; b=jNuvLOBvoul0PUmxnrCmLPj4R1gtZqU7wymj7/daj55O6F0ZWYQjF90drfSgat4PSe 7S8oYavKgTiyEHa8ovhEfNfar/x2ojE/nL5sOHssUDChRZgwZW4KnlIx3LiPCbdzVgbK jbRT2yYbZ/lwCvLPEWlb73d5YtlFtfILNPTLfyckFxh6Sx3ks+YnUnZlmkxWjAdAw+no gnEk9UyE8TwY0GCkVdIHhqt0ISQvkEO+aMMd3jKRbDeGjhUBC5bhaSlXHHzB2Qp222Mp ITxv0ogVHnll3aBZLZ+ZO2OpFLUTQ1XJOct2giG8NDlMVwW/vOq0ot4F84kYYGj87p3V XJQg== X-Gm-Message-State: AA+aEWZm87f2P+LpP73uBo7S0KFoxlHxHWHmEioxPpINr5jHbAbmP0J5 QuQw+DuKkY2ejvBC5C3XhgwaEKwo4bjom6tImfM= X-Google-Smtp-Source: AFSGD/Vw3H1PVMw7wn7aUyEW4/Y/FlPG7xeUyTCl5jwXrIdaRjv30U2VmfhiSDGCNdubcjl9syRcd7fBPca+pzTnt78= X-Received: by 2002:a19:2755:: with SMTP id n82mr12128644lfn.94.1545235293107; Wed, 19 Dec 2018 08:01:33 -0800 (PST) MIME-Version: 1.0 References: <397FBAFF-2575-4AE4-B2BC-2DFDA769040A@FreeBSD.org> <7BBA9943-7CA1-4349-9B48-1641BA11FCA3@FreeBSD.org> In-Reply-To: Reply-To: araujo@freebsd.org From: Marcelo Araujo Date: Thu, 20 Dec 2018 00:01:21 +0800 Message-ID: Subject: Re: OpenRC on FreeBSD To: Warner Losh Cc: Marcelo Araujo , Martin Wilke , "freebsd-hackers@freebsd.org" , Joe Maloney , ken@ixsystems.com, Kris Moore , Warren Block X-Rspamd-Queue-Id: 8CF4F87501 X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=Bh1Qc3dL; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of araujobsdport@gmail.com designates 2a00:1450:4864:20::141 as permitted sender) smtp.mailfrom=araujobsdport@gmail.com X-Spamd-Result: default: False [0.05 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; HAS_REPLYTO(0.00)[araujo@freebsd.org]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36]; FREEMAIL_FROM(0.00)[gmail.com]; URI_COUNT_ODD(1.00)[15]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; RCPT_COUNT_SEVEN(0.00)[8]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+,1:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.42)[-0.415,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[]; NEURAL_SPAM_SHORT(0.60)[0.605,0]; NEURAL_HAM_LONG(-0.25)[-0.253,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; REPLYTO_DOM_NEQ_FROM_DOM(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[1.4.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org : 127.0.5.0]; IP_SCORE(0.13)[ip: (3.70), ipnet: 2a00:1450::/32(-1.59), asn: 15169(-1.39), country: US(-0.08)]; RCVD_COUNT_TWO(0.00)[2] Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Dec 2018 16:01:36 -0000 Em qua, 19 de dez de 2018 =C3=A0s 23:58, Warner Losh escre= veu: > > > On Wed, Dec 19, 2018 at 8:48 AM Marcelo Araujo > wrote: > >> >> >> Em qua, 19 de dez de 2018 =C3=A0s 23:02, Warner Losh >> escreveu: >> >>> >>> >>> On Wed, Dec 19, 2018 at 7:57 AM Martin Wilke wrote: >>> >>>> Hi, >>>> >>>> The missing bit was actually the flag for switching the rc=E2=80=99s w= hich have >>>> been resolved. >>>> >>> >>> No. The missing bit is an articulated plan. While that minor sub-issue >>> may be resolved, I see no plan for integration into the tree. Unless th= e >>> plan is 'commit the review in one big push' which really isn't a viable >>> plan. There are problems with the review (it's too large to be successf= ul, >>> and has issues that need to be discussed in a less massively huge >>> environment). This isn't what the working group's conclusion would be t= he >>> next steps. The FCP I provided feedback on died. It was a good start on= a >>> plan, but was just dropped with my feedback completely ignored. >>> >> >> Hi Warner, >> >> I have asked miwi@ to keep that huge patch on the review because of the >> lack of coordination and discussion between different groups and also >> because there is not a clear plan how to bring OpenRC into FreeBSD. So i= n >> that way people could try the patch easily without chasing different ope= n >> reviews, and to be honest, without further discussion regarding to how t= he >> transition would happens between rcd and OpenRC, there is nothing much t= o >> review there. >> >> IMHO, if we want to move forward with OpenRC on FreeBSD we would need a >> broad discussion, because it will impacts not only the base system but a= lso >> ports, and also docs needs to get involved because we eventually would n= eed >> to update our documentation. We have people that wants OpenRC also in ot= her >> hands we have people that wants to keep things as it is. >> >> NOTE: I have updated the review with the same content of this email just >> to make it registered there. >> >> I agree for review purpose small chunks are better, however I don't see >> yet a plan for all this migration between rcd and OpenRC. >> > > Reviews aren't patch delivery devices. They are to review the code > present. You can't do that with the super-monster review that's there. If > you want to have one patch file, that's great! You can always link each > review to that patch file or have a dummy master review to do that. Revie= ws > this large in the past have failed to reach consensus and frustrated the > authors. I'd kinda like to avoid that outcome here because I really want = to > see forward progress here. Maybe once we've hashed out the plan on > integration, we can move to breaking up the patch into manageable pieces. > Agree with that, as soon as there is a plan on integration, breaking up the patch will be easier for review! But without a plan, as I said, there is nothing to review to be honest. :( > > So what's my next step for saying that the verbatim copy of devd.conf int= o > devd-openrc.conf is not going to work, that problem needs to be solved > properly without such copying. Eg, moving the openrc dependency out of > devd.conf and into pccard-ether or its replacement to hide this detail. = I > don't know if this is emblematic of a poor design, or just a sloppy > short-cut. > > Warner > > >> Best, >> >> >>> >>> Warner >>> >>> >>>> - Martin >>>> >>>> On 19 Dec 2018, at 10:51 PM, Warner Losh wrote: >>>> >>>> >>>> >>>> On Wed, Dec 19, 2018 at 7:39 AM Martin Wilke wrote: >>>> >>>>> Hi >>>>> >>>>> I'd like to reopen the discussion for OpenRC on FreeBSD. Basically >>>>> this is the second attempt to get it into FreeBSD. >>>>> >>>>> I've opened a review here with a working patch for CURRENT, >>>>> https://reviews.freebsd.org/D18578 >>>>> >>>>> >>>>> To recap the discussion >>>>> * First attempt of RFC in March of 2018: >>>>> https://lists.freebsd.org/pipermail/freebsd-hackers/2018-March/052358= .html >>>>> * Working group at BSDCan: >>>>> https://wiki.freebsd.org/DevSummit/201806/OpenRC >>>>> >>>>> Here some key points: >>>>> >>>>> OpenRC provides additional features for service management without >>>>> requiring kernel changes or replacing pid 1, unlike launchd and other >>>>> solutions. All rc.d scripts have been converted with a few changes, >>>>> typically changing the shebang and making sure the start function is = named >>>>> start(). Most service scripts are simplified, usually needing only na= me, >>>>> command, and, if required, depends statements. >>>>> >>>>> History: >>>>> OpenRC started out as an init system by Roy Marples, developed for th= e >>>>> Gentoo Alt (FreeBSD) kernel branch. It was more widely adopted into G= entoo >>>>> as baselayout v2, and was then split off as a separate BSD-licensed >>>>> project. It is under active development, portable, and remains BSD li= censed >>>>> today. >>>>> >>>>> OpenRC and RC: >>>>> Both can coexist and be chosen with a setting in /boot/loader.conf. >>>>> >>>>> OpenRC Features: >>>>> >>>>> Service supervision and service monitoring: any service can be >>>>> supervised. Supervised services that crash are automatically restarte= d. The >>>>> rc-status command shows how many times a service has restarted. >>>>> >>>>> Device hotplug support and event-driven service management: the >>>>> hotplug feature allows devd to take actions when devices are connecte= d. For >>>>> example, a USB wifi adapter can create additional network services wh= en >>>>> attached. The net-online service can, for example, detect when a netw= ork >>>>> connection is restored, and restart ntp. >>>>> >>>>> Network profiles: using stacked runlevels, different profiles can be >>>>> established for different networking settings. For instance, differen= t >>>>> profiles can be used for wired or wireless networking, or for differi= ng >>>>> wireless networks, as well as dependency caching and parallel startup= speed >>>>> up booting. >>>>> >>>>> Interactive mode: >>>>> The boot process can be run interactively for more effective debuggin= g. >>>>> >>>>> OpenRC uses the term =E2=80=9Crunlevels=E2=80=9D to refer to the cont= ext in which a >>>>> script is running. There are only three at present: >>>>> sysinit (the OpenRC system is starting), boot (start base services >>>>> when the computer is booting), and default (normal execution). >>>>> >>>>> OpenRC, by default, provides a =E2=80=9Ccolorized=E2=80=9D text boot,= using ANSI color >>>>> sequences. This can be disabled. >>>>> >>>>> Ports: >>>>> As of July 2017, iXsystems has created OpenRC versions of port servic= e >>>>> scripts for the entire ports tree. These scripts coexist with the rc.= d >>>>> versions. >>>>> >>>>> License: >>>>> OpenRC is a BSD licensed RC init system written in C. From a user >>>>> perspective, it is very similar to the FreeBSD rc.d init system, maki= ng it >>>>> easy to use and learn. >>>>> >>>>> Tested: OpenRC has been used as the init system for TrueOS since >>>>> October 2016. >>>>> >>>>> Ken Moore has an OpenRC vs RC.d comparison which can be found here: >>>>> http://www.wonkity.com/~wblock/openrc/OpenRC_rc.d.pdf < >>>>> http://www.wonkity.com/~wblock/openrc/OpenRC_rc.d.pdf> >>>>> I look forward to discuss the features and capabilities of OpenRC. >>>>> >>>> >>>> This is cool technology. >>>> >>>> However, what was missing last time was a written plan that could be >>>> critiqued for fit with the project's needs. The result of the working = group >>>> was that this was to be produced, and we'd iterate through it to ease = the >>>> landing of openrc in the tree. I think there's wide agreement this is = cool, >>>> and that we'd like tot have both it and rc.d in the tree for a transit= ion >>>> period. Absent a plan, though, it's not really possible to say 'go do = it' >>>> or 'that's insane'. >>>> >>>> So maybe start there? >>>> >>>> Warner >>>> >>>> >>>> >> >> -- >> >> -- >> Marcelo Araujo (__)araujo@FreeBSD.org \\\'',)http://www.F= reeBSD.org \/ \ ^ >> Power To Server. .\. /_) >> >> --=20 --=20 Marcelo Araujo (__)araujo@FreeBSD.org \\\'',)http://www.FreeBSD.org \/ \ ^ Power To Server. .\. /_)