2. Components of the NsCDE

2.1. Components overview

NsCDE is a wrapper and a bunch of configurations, scripts and apps around FVWM. FVWM is in my opinion a model of free choice for people who like to have things set up by their own wishes and who are aware what real freedom of choice is. A stunning contrast to policies forced on Linux users in the last decade from the mainstream desktop players.

NsCDE is by default rooted in /usr/local/libexec/nscde.

It is not using your existing $HOME/.fvwm but sets $FVWM_USERDIR to $HOME/.NsCDE, and uses /usr/local/etc/nscde as a sources of configuration.

Configuration model is a bit complex, but very flexible: configuration options are grouped in logical order. Configuration files are names NsCDE-<group>.conf. For example, NsCDE-Functions.conf for FVWM functions. Each configuration file can have two exclusive sources, and one additional. For example, if user doesn't have $FVWM_USERDIR/NsCDE-Functions.conf, then /usr/local/etc/nscde/NsCDE-Functions.conf is read as default. Additionally, if $FVWM_USERDIR/NsCDE-Functions.local exists, it will be read in addition to conf file, from wherever it was read. This is intended as a primary mechanism for customization: If user doesn't need to override and change a lot of "system" configuration, but just add it's own in addition to existing, local file is place for such customization (of course, most parts of the existing FVWM configuration can be overridden or destroyed and recreated even in local files.

One notable addon to this system of configuration is the way FVWM Styles are read. In addition to reading $FVWM_USERDIR/NsCDE-Style.local "early" configuration in $FVWM_USERDIR/NsCDE-Style.override will be read from /usr/local/etc/nscde/NsCDE-Style.conf just after applying general core style for all applications (*) but before reading custom application styles and prior to reading $FVWM_USERDIR/NsCDE-Style.local. This mechanism is intended for changing and overriding core style options which are not customizable by the Window Style Manager. Putting core Style options after NsCDE applications in the /usr/local/etc/nscde/NsCDE-Style.conf are processed can nullify overrides for that particular applications, this is why this mechanism is provided. This file is not created in $FVWM_USERDIR by setup procedure or Style Managers, but it will be read if created manually.