Woah... this turned into a long e-mail.
On Sat, Jan 11, 2014 at 7:20 AM, Karanbir Singh <email@example.com
On 01/11/2014 04:17 AM, Peter Baldwin wrote:
That's a basic overview of what we do. How does this help the CentOS /
RHEL community and how does ClearOS fit in with the variants proposal?
Some thoughts from a technical perspective:
It seems like a couple of puppet
manifests or chef / ansible ones, that implement a pre-setup
assumption-based ( which can be a good place to start from ) config
state on a machine.
Deep inside the ClearOS developer documents, there's a short walkthrough on
how to "convert" a CentOS system to a ClearOS system. In essence, it's a
walkthrough that shows what's needed to get a barebones ClearOS
web-management tool running on top of a CentOS system. As stated in the
doc, it's not recommended for a real world deployment and intended for
Below is a summary for those who don't have the time/interest to break out
a VM and perform a walkthrough:
1) A sandboxed Apache/PHP engine is packaged to avoid interfering with the
default OS Apache/PHP engine. Source RPMS required:
- webconfig-httpd (upstream "httpd', but tweaked to run out of
- webconfig-php (upstream "php", ditto)
2) A slightly modified CodeIgniter PHP framework is used by the
web-management interface. Source RPM:
3) A set of barebones "app" packages are required - these are the PHP
API/REST/web front-end RPMs. We can strip out the "must register" type of
workflow for a CentOS variant of course, but those are implementation
details. Source RPMs:
- app-suva-core / suva-client (needed for registering)
Not all the features listed on the on the following page would be available
in a CentOS variant since some require EPEL or ClearOS-maintained packages
(e.g. ClamAV, DansGuardian, Snort):http://www.clearcenter.com/marketplace/
So something like "OpenVPN" would require the "app-openvpn" RPM in addition
to the upstream openvpn package. Most, if not all, of the packages listed
in the above URL listed as "free as in beer" are also "free as in speech".
Is the code in a git repo somewhere ?
We have 3 types of packages.
1) Modified upstream and ClearOS-maintained packages
CentOS development veterans will recognize this :-) It's a CVS repository
used by plague build system:http://buildsys.clearfoundation.com/plague/success.psp
. Source code:
cvs -z3 -d:pserver:anonymous at cvs.clearfoundation.com:/var/clearos/cvs/repositories/clearos
Here's a list of upstream packages that we modify with reasons why we
modify (warning: doc is not 100% up-to-speed):http://www.clearfoundation.com/docs/developer/packaging/clearos_6.x/start
None of the upstream modifications would be required for a CentOS variant
but some apps would not be available without the modifications.
2) Internal code used a helpers for some ClearOS features
We have a dozen-ish packages that we have developed to support some apps.
Those are found on Github:https://github.com/clearos-packages
For example, the "csplugin-routewatch" watches for route modifications from
external packages (OpenVPN, IPsec, PPTP) and notifies the multi-WAN app
when something changes.
3) PHP API, REST, and web frontend
The "meat and potatoes" -- these are the PHP API/REST/web RPMs. These will
be migrated to Github in the next week or so (https://github.com/clearos),
but can be found on svn.clearfoundation.com/clearos right now (web frontend