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