11. Installation Dependencies
Prev |  | Next

## 11. Installation Dependencies

For NsCDE to work, essential software is FVWM Window Manager. Almost all is based on it. Since NsCDE is heavy user of `infostore` internal variables and other new features of FVWM, development has been done on FVWM versions 2.6.7 and 2.6.8. At this time, this are recommended, if not mandatory versions of FVWM for NsCDE. Other dependencies, that is, software used by NsCDE is:

- Original Korn Shell 93 or newer. All shell script routines inside configuration, helper scripts and FvwmScript helpers are written with ksh. It is known for sure that pdksh cannot be drop in replacement, and in tests on Arch Linux with mksh it became clear that mksh cannot replace Korn Shell. Korn Shell is available and it is free.

- Xorg utils (Fedora/CentOS RPM xorg-x11-utils) - xdpyinfo, xprop ...

- Util xdotool - used by FVWM2 which is not patched with WindowName patch for the FvwmButtons. Not used by FVWM3.

- ImageMagick - convert(1), display(1), resize(1) ... really needed.

- Xscreensaver - optional, but Screen Style Manager functionality will not work without it. Something needs to be installed for locking the screen.

- cpp - C preprocessor for xrdb functionality - for X resources integration. Used by xrdb(1).

- xorg-x11-server-utils (CentOS, Fedora name) - xrdb, xset, xrefresh mandatory for startup, some style managers and menus.

- python-yaml - needed for python part of the color theme management and for Gtk+Qt integration.

- PyQt4 or PyQt5 (or possibly python-qt4, python-qt5 ...) This is unfortunate dependency which is further dependent on Qt libraries. NsCDE tries to have as less as possible dependencies, specially indirect (dependencies of dependent dependencies of dependencies ...). Gtk/Qt integration is borrowed from CDEtheme Motif/CDE theme project and adapted for use with FVWM (instead of heavy Xfce dependency) or standalone engine. In part of the `Theme.py` code, some png pixmaps are cut and colored with functions from this API. With present job and lack of time, there was no time to do this without PyQt4 or PyQt5 for the first public release.

- Gtk2, Gtk3, Qt4, Qt5, qtconfig-qt4, qt5ct, qt6ct, qt5-qtstyleplugins (optional) There is a great chance this libraries and some useful programs using them are already installed on user's system. If Gtk and Qt integration is activated in Color Style Manager, there is no point not to have it installed.

  Notice about Qt4 and Qt5: qt4-config (or qt-config) and qt5ct: Although colors will be applied, for font setting to take effect, qtconfig-qt4 (or qtconfig) must be run, something changed back and forth, and then applied/saved - no matter that you will see fonts of your choice already selected. This can be considered a bug. Same goes for Qt5 sometimes, and sometimes it just works (later fixes?). Qt6 seems to be ok.

  Notice about Qt5 and Qt6: `QT_QPA_PLATFORMTHEME` environment variable must be set, and be set to `qt5ct` value in order to run qt5ct configurator. This variable is set by default from the `$FVWM_USERDIR/NsCDE.conf`. Qt6 qt6ct will work with value beeing either `qt5ct` or `qt6ct`. Seems that the same goes for Qt5 on newer systems with Qt6 installed.

  If Qt5 Kvantum engine is desired for use with Color Style Manager, qt5-style-kvantum must be installed and available, otherwise trying to use Qt5 integration based on Kvantum engine will not work. From NsCDE 2.3 upwards, Qt5 Kvantum engine is the default for Qt5.

  Qt6 requires Kvantum engine (for Qt6). Otherwise, Color Style Manager will produce non-working `$HOME/.copnfig/qt6ct/qt6ct.conf`, and look of the Qt6 applications will default.

- Recommended fonts for as close as possible CDE look are DejaVu Serif for variable, and DejaVu Sans Mono for monospaced fonts. Check should be made if this fonts are installed on the system. For Solaris CDE look, Lucida Sans and monospaced Lucida Sans Typewriter should be installed, selected and used instead. (optional)

- Stalonetray for "tray" facility (optional)

- Dunst for notification daemon (optional)

- Picom as an stand alone X compositor (optional)

- xterm

- python3

- python36-pyxdg or python3-pyxdg

- libstroke (FVWM2)

Prev |  | Next
10.2. User Tree Layout | Home | 12. Installation