Dependencies

Information about MCSH package dependencies

What does MCSH require?

Making simplifications makes for simpler code. This section lists some of the critical requirements of this package. Some of these requirements may be eased in time, when more development resources are available and such tasks become a priority. 

Operating System

MCSH presently only runs on Linux, but it runs perfectly well inside of a virtual machine on any host.

We welcome patches to support other versions and variants or Linux as well as support for alternative host and target operating systems. In turn, we offer continuous integration and community maintenance of the code. 

Linux

MCSH was written on and for Ubuntu 16.04 LTS. The scripts will run on it, manage it, virtualize it, and deploy it to create your own custom cloud. At some point, we may add support for other Ubuntu LTS versions and similar Linux variants.

BSD

We hope to add support for managing BSD systems around the same time that we add support for other Linux variants. 

Mac

We presently lack hardware for development and testing, but we have sufficient experience to believe that MCSH will run on Mac computers with relatively little more effort than a Linux variant. Likewise, we believe MCSH can be adapted to manage, virtualize, and deploy Mac systems, but that will require more effort.

Mac support requires considerably more effort than Linux variants, but significantly less than adding support for Windows. 

Windows

We presently lack the hardware, licenses, and tools to implement support for deployments that require Windows.

System Services

Ubuntu offers a multitude of implementations for deploying a given network service, and MCSH will eventually support the best of them. For now, scripts and support are provided for the implementations deployed at Mandolin Creek Village. 

This table provides the current list of supported system components, along with the versions that were most recently used for testing:

Component Description Technology Version
Host private virtual server Ubuntu Server LTS 16.04.x
DNS domain name services ISC Bind 9.x
DHCP dynamic host addressing ISC DHCP  
SSL trusted security certificates  LetsEncrypt (certbot)  
SMTP email delivery Postfix  
IMAP user access to email Dovecot  
Webmail web interface to email Roundtable  
Lists mailing lists GNU Mailman 1.x
FTP file transfer vsftpd 3.x
Web web services Apache 2.x
SSO single sign on (SSO) Kerberos  
LDAP directory services OpenLDAP  
CMS content management system Plone 5.x
VCS version control system Git 2.x
Issues issue tracking system Trac 1.2


MCSH currently does not support component implementations or package versions than those listed in this table; however, we would welcome patches that add the necessary flexibility and modularity required to provide more alternatives. You can also hire us to develop the support that your business needs.