svn commit: r47619 - head/en_US.ISO8859-1/htdocs/news/status
Benjamin Kaduk
bjk at FreeBSD.org
Sun Oct 18 21:35:20 UTC 2015
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 @@
</help>
</project>
+ <project cat="proj">
+ <title>The nosh Project</title>
+ <contact>
+ <person>
+ <name>
+ <given>Jonathan</given>
+ <common>de Boyne Pollard</common>
+ </name>
+ <email>J.deBoynePollard-newsgroups at NTLWorld.COM</email>
+ </person>
+ </contact>
+
+ <links>
+ <url href="http://homepage.ntlworld.com./jonathan.deboynepollard/Softwares/nosh.html">Introduction
+ and blurb</url>
+ <url href="http://homepage.ntlworld.com./jonathan.deboynepollard/Softwares/nosh/freebsd-binary-packages.html">&os;
+ binary packages</url>
+ <url href="http://homepage.ntlworld.com./jonathan.deboynepollard/Softwares/nosh/timorous-admin-installation-how-to.html">Installation
+ How-To</url>
+ <url href="http://homepage.ntlworld.com./jonathan.deboynepollard/Softwares/nosh/roadmap.html">Roadmap</url>
+ <url href="http://homepage.ntlworld.com./jonathan.deboynepollard/Softwares/nosh/commands.html">Commands</url>
+ <url href="http://homepage.ntlworld.com./jonathan.deboynepollard/Softwares/nosh/guide/index.html">A
+ slightly outdated nosh Guide</url>
+ </links>
+
+ <body>
+ <p>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
+ <tt>init</tt> and the NetBSD <tt>rc.d</tt> 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
+ <tt>/etc/fstab</tt>, <tt>/etc/rc.conf{,.local}</tt>,
+ <tt>/etc/ttys</tt>, 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.</p>
+
+ <p>The past few months have seen a growth in the import
+ mechanism, with full import of <tt>/etc/fstab</tt> and
+ <tt>/etc/ttys</tt> available in version 1.18 in July, and importing
+ PC-BSD Warden and &os; 9 jails, and full import of <tt>gbde</tt> and
+ <tt>geli</tt> mount/unmount mechanisms in version 1.21 in October.
+ It has also gained the ability to automatically re-generate
+ <tt>host.conf</tt> and <tt>sysctl.conf</tt> whenever their source
+ files change.</p>
+
+ <p>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.</p>
+
+ <p>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 <tt>rc.d</tt> 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.
+ </p>
+ </body>
+
+ <help>
+ <task>
+ <p>There are still a few rc scripts left that should be easy
+ to convert, such as <tt>/etc/rc.d/gptboot</tt> and
+ <tt>/etc/rc.d/growfs</tt> as oneshot services,
+ <tt>/etc/rc.d/routing</tt>, and <tt>/etc/rc.d/kldxref</tt>.</p>
+ </task>
+
+ <task>
+ <p>&os;'s <tt>/etc/rc.d/bluetooth</tt> is over 360 lines long.
+ In 2011, Iain Hibbert wrote a "simpler" <tt>bluetooth</tt> for
+ NetBSD. This can perhaps be used as a simpler basis for a nosh
+ translation.</p>
+ </task>
+
+ <task>
+ <p>Add kernel support for passing a <tt>-b</tt> 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 <tt>-b</tt> 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.)</p>
+ </task>
+
+ <task>
+ <p>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.</p>
+ </task>
+
+ <task>
+ <p>Identify when the configuration import system needs to be
+ triggered, such as when <tt>bsdconfig</tt> alters configuration
+ files, and create the necessary hooks to import external
+ configuration changes into nosh.</p>
+ </task>
+
+ <task>
+ <p>Investigate how &os;/PC-BSD could be improved by taking
+ advantage of some available nosh package mechanisms.</p>
+ </task>
+ </help>
+ </project>
+
</report>
More information about the svn-doc-head
mailing list