The nosh Debian binary packages

nosh pages:

Pre-built binary packages for nosh are available for x86/64 Debian Linux version 7 (or compatible).

You can download the packages from here or configure your machine to use the package repository.

You can view a list of the packages in the repository via GOPHER or via FTP in EPLF.

Doco

This is the nosh Guide, in HTML. Open it when installed with

xdg-open /usr/local/share/doc/nosh/index.html
or your favourite HTML viewing tool.

Toolsets

These install the toolsets under /usr/local. However, to avert a problem that otherwise makes systems unbootable, they also install a handful of binaries in /bin: /bin/nosh, /bin/exec, /bin/cyclog, /bin/system-manager, and /bin/system-control.

Service bundles

This is a suite of service bundles. It comprises:

Important notes:

In an ideal world, the world would ship nosh bundles with its softwares itself, of course. ☺

Data files

Debian unfortunately packages up /etc/crontab with cron, so it is impossible to install alongside cron substitutes. These provide /etc/crontab as a standalone item that can be installed alongside cron substitutes. The -no-anacron flavour of the table takes over the daily, weekly, and monthly tasks that anacron otherwise schedules.

-run packages

The "-run" family of packages require the service bundle collection. They employ services in it; which are not started or enabled unless the packages are installed; and which are stopped, disabled, and unloaded from the service manager when the packages are uninstalled.

Rather, they contain preset information in /etc/system-control/presets and /usr/local/etc/system-control/presets, and install/deinstall scripts that operate on the relevant services. Installing a "-run" package presets and resets the relevant services. Deinstalling a "-run" package disables and stops the relevant services, and unloads them from the service manager.

You can tweak the behaviours with your own local preset information either in /etc/systemd/system-preset or in /etc/system-control/presets.

Running a fully nosh-managed system with system-manager as process #1

This pre-packages the steps for running a fully nosh-managed system. It points /sbin/init to /sbin/system-manager. It also runs the configuration conversion mechanism in /etc/system-control/convert.

Note that the default system is fairly minimal. You'll have to install other -run packages to get things like old-style GNU libc syslog() service and terminal login services. In particular, note that you must choose what plug and play device manager (udev, busybox mdev, and so forth) to run.

Running Debian base services

Important note: You will need one of these for a working system.

These packages start the several Debian Desktop and Debian Server standard services.

The set of Debian Server services is a strict subset of the Debian Desktop ones, and includes virecover and Debian cron. The set of Debian Desktop services extends that with the likes of CUPS, anacron, and Sun RPC. For D-BUS and other Freedesktop.org services, however, one must install other "-run" packages.

Plug and play device managers

These packages run one of four plug and play managers.

Virtual terminal services

The old-style kernel virtual terminal system auto-starts a ttylogin-starter service. This monitors the currently active kernel virtual terminal, and auto-starts a ttylogin@ttyN service on each kernel virtual terminal as it is switched to.

The new-style application-mode virtual terminal auto-starts a console-fb-realizer@head0 service; the "realizer" service that realizes the multiplex VTs via the (head #0) framebuffer and input event devices. This connects to the user-mode virtual terminal that is supplied by console-multiplexor@head0; which in turn multiplexes the user-mode virtual terminals generated by the terminal-emulator@vc0, terminal-emulator@vc1, and terminal-emulator@vc2 services; whose emulated virtual terminals in their turn are employed by the ttylogin@vc0-tty, ttylogin@vc1-tty, and ttylogin@vc2-tty services. The realizer service tells the kernel to disable its built-in terminal emulator program for the duration.

These systems conflict. The head #0 framebuffer and input event device are used by the kernel's virtual terminal emulator. One cannot (without a massive mess of overlapped output and input going to two separate places) realize application-mode virtual terminals onto head #0 whilst simultaneously realizing kernel virtual terminals on the same hardware. So you must only install one of these packages at any one time. The Debian packages are marked so that the package manager will not let you install more than one simultaneously.

Freedesktop.org system bus services

This package auto-starts the Freedesktop.org system bus services.

Freedesktop.org "kit" services

This package auto-starts the various Freedesktop.org "kit" services.

Avoid Desktop Bus bus activation.

VirtualBox Guest Additions

This package auto-starts the various services that form the VirtualBox Guest Additions: the VBoxService dæmon and the four "vbox" kernel modules.

kernel log service

This package runs the klogd service, providing logging service to the kernel.

local syslog() service

This package runs the local-syslog-read service, providing old-style logging service to programs that still use /dev/log.

bcron

This package auto-starts the services for Bruce Guenter's bcron.

Running nosh service management under OpenRC

This installs various init.d scripts for running allowing one to use the nosh service management under OpenRC (the rc system used on Gentoo, TrueOS, et al.).

It also disables the nosh sysinit standard target, on the basis that rc handles what that target otherwise handles on a nosh-system-managed system. Thus, installing this package will break a nosh-system-managed system.

Running nosh service management under systemd

This installs various path, socket, and service unit files for systemd under /usr/local/lib/systemd/service/, allowing one to use the nosh service management under systemd as the system manager.

service-manager.socket and service-manager.service
Run a nosh service-manager dæmon listening on the conventional socket as the nosh system-manager would have.
system-control-normal.service
Invoke system-control start normal.target as the nosh system-manager would have.
service-manager-svscan.path and service-manager-svscan.service
Run a daemontools-style service scanner monitoring /service/.

It also disables the nosh sysinit standard target, on the basis that systemd handles what that target otherwise handles on a nosh-system-managed system. Thus, installing this package will break a nosh-system-managed system.

As is the Debian convention installing the package will automatically enable and start all of these systemd units, and removing it will automatically stop and disable them. To set your local preferences in this regard, you can use systemd preset information.


© Copyright 2014,2015,2018 Jonathan de Boyne Pollard. "Moral" rights asserted.
Permission is hereby granted to copy and to distribute this WWW page in its original, unmodified form as long as its last modification datestamp information is preserved.