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.