From owner-svn-doc-head@freebsd.org Sun Oct 18 21:35:20 2015 Return-Path: Delivered-To: svn-doc-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0755EA18CDA; Sun, 18 Oct 2015 21:35:20 +0000 (UTC) (envelope-from bjk@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D5BB3CEB; Sun, 18 Oct 2015 21:35:19 +0000 (UTC) (envelope-from bjk@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t9ILZILK017158; Sun, 18 Oct 2015 21:35:18 GMT (envelope-from bjk@FreeBSD.org) Received: (from bjk@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t9ILZIjJ017157; Sun, 18 Oct 2015 21:35:18 GMT (envelope-from bjk@FreeBSD.org) Message-Id: <201510182135.t9ILZIjJ017157@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bjk set sender to bjk@FreeBSD.org using -f From: Benjamin Kaduk Date: Sun, 18 Oct 2015 21:35:18 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r47619 - head/en_US.ISO8859-1/htdocs/news/status X-SVN-Group: doc-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the doc tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 18 Oct 2015 21:35:20 -0000 Author: bjk Date: Sun Oct 18 21:35:18 2015 New Revision: 47619 URL: https://svnweb.freebsd.org/changeset/doc/47619 Log: Add nosh project report from Jonathan de Boyne Pollard With some editing by me for style consistency with the rest of the report. Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2015-07-2015-09.xml Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2015-07-2015-09.xml ============================================================================== --- head/en_US.ISO8859-1/htdocs/news/status/report-2015-07-2015-09.xml Sun Oct 18 21:24:46 2015 (r47618) +++ head/en_US.ISO8859-1/htdocs/news/status/report-2015-07-2015-09.xml Sun Oct 18 21:35:18 2015 (r47619) @@ -2996,4 +2996,125 @@ + + The nosh Project + + + + Jonathan + de Boyne Pollard + + J.deBoynePollard-newsgroups@NTLWorld.COM + + + + + Introduction + and blurb + &os; + binary packages + Installation + How-To + Roadmap + Commands + A + slightly outdated nosh Guide + + + +

The nosh project is a suite of system-level utilities for + initializing, running, and shutting down BSD systems, and for + managing daemons, terminals, and logging. It supersedes BSD + init and the NetBSD rc.d system, drawing + inspiration from Solaris SMF for named milestones, + daemontools-encore for service control/status mechanisms, UCSPI, + and IBM AIX for separated service and system management. It + comprises a range of compatibility mechanisms, including shims for + familiar commands from other systems, and an automatic import + mechanism that takes existing configuration data from + /etc/fstab, /etc/rc.conf{,.local}, + /etc/ttys, and elsewhere, applying them to its native + service definitions and creating additional native services. It + is portable (including to Linux) and composable, it provides a + migration path from the world of systemd Linux, it does not + require new kernel APIs. It provides clean service environments, + orderings and dependencies between services, parallelized startup + and shutdown (including fsck), strictly size-capped and + autorotated logging, the service manager as a + "subreaper", and uses kevent(2) for event-driven + parallelism.

+ +

The past few months have seen a growth in the import + mechanism, with full import of /etc/fstab and + /etc/ttys available in version 1.18 in July, and importing + PC-BSD Warden and &os; 9 jails, and full import of gbde and + geli mount/unmount mechanisms in version 1.21 in October. + It has also gained the ability to automatically re-generate + host.conf and sysctl.conf whenever their source + files change.

+ +

Other developments in the past few months include fully + independent shutdown support, no longer relying upon an externally + provided shutdown command from another toolset, and a full suite of + binary packages. As of version 1.20, it became possible to + have a fully-nosh-managed system, on both &os; and Linux, using just + precompiled binary packages.

+ +

The biggest task remaining is one that was set a while ago: + the creation of enough native service bundles and ancillary + utilities to entirely supplant the rc.d system. A + lot of this has been achieved, with the original target list of + 157 items now down to just 39 remaining. These are the tricky + ones, of course, where help is most needed. +

+ + + + +

There are still a few rc scripts left that should be easy + to convert, such as /etc/rc.d/gptboot and + /etc/rc.d/growfs as oneshot services, + /etc/rc.d/routing, and /etc/rc.d/kldxref.

+
+ + +

&os;'s /etc/rc.d/bluetooth is over 360 lines long. + In 2011, Iain Hibbert wrote a "simpler" bluetooth for + NetBSD. This can perhaps be used as a simpler basis for a nosh + translation.

+
+ + +

Add kernel support for passing a -b option to + pid 1, and support for a boot_bare variable in the loader, to + allow "emergency" (where even no shell dotfiles are + loaded) and "rescue" mode bootstraps, akin to Linux. + (History: The -b mechanism and idea date back to + version 2.57d of Miquel van Smoorenburg's System 5 init clone, + dated 1995-12-03, and was already known as "emergency boot" by + 1997.)

+
+ + +

Add support to &os;'s fsck(8) for outputting + machine-readable progress reports to a designated file descriptor, + so that nosh can provide progress bars for multiple fscks running + in parallel. nosh already provides this functionality on Linux, + where fsck(8) does provide machine-readable output.

+
+ + +

Identify when the configuration import system needs to be + triggered, such as when bsdconfig alters configuration + files, and create the necessary hooks to import external + configuration changes into nosh.

+
+ + +

Investigate how &os;/PC-BSD could be improved by taking + advantage of some available nosh package mechanisms.

+
+
+
+