Difference between revisions of "CcHost"

From Creative Commons
Jump to: navigation, search
(Installation Steps: replaced with more detailed explanation from install.txt)
(update source repo link)
 
(181 intermediate revisions by 40 users not shown)
Line 1: Line 1:
{{incomplete}}
+
[[Category:ccHost]]
'''ccHost''' is an open source ([http://creativecommons.org/licenses/GPL/2.0/ GPL] licensed) project that provides web-based infrastructure to support collaboration, sharing, and storage of multi-media using the Creative Commons licenses and metadata. It is used by [http://ccmixter.org ccMixter] and [[#Usage Examples|other sites]].
+
[[Category:Developer]]
 +
[[Category:Software]]
 +
[[Category:Technology]]
 +
[[Category:ccMixter]]
 +
{{Project}}
 +
{{lowercase}}
  
== Information  ==
+
'''ccHost''' is Creative Commons' open source ([http://creativecommons.org/licenses/GPL/2.0/ GPL] licensed) [http://en.wikipedia.org/wiki/Content_management_system content management system] project that powers [http://ccmixter.org ccMixter] and is the winner of the [http://creativecommons.org/weblog/entry/6026 Linux Journal LinuxWorldExpo Product Excellence Award] for '''Best Open Source Solution.''' Read more about ccHost [[#Zeitgeist|here]].
  
=== Short Description ===
+
= Download =
  
"Web-based System Supporting Remixing and Collaboration on Media"
+
Sign up for [http://sourceforge.net/export/rss2_projfiles.php?group_id=80503 our RSS release feed] to make sure you don't miss important bug fixes and feature updates.
  
=== Goal ===
+
=== Current Stable Release ===
 +
Latest stable build of [https://sourceforge.net/projects/cctools/files/ccHost/ ccHost 5.1] is available in ZIP archive format.
  
The goal of this project is to spread media content that is licensed under
+
=== Source Repository ===
Creative Commons throughout the web in much the same way that weblogs spread
 
CC licensed text. ccHost is web-based infrastructure that may be used to host
 
and allow for commenting, remixing, and distribution globally. The more
 
installations of ccHost and its variations, the more content there will be
 
available for enjoyment and artistic re-use in a sane and legal setting. ccHost
 
is what is used for the infamous Creative Commons CC Mixter project which
 
supports legal media sharing and remixing. For more information, contact Jon
 
Phillips at jon@creativecommons.org.
 
  
=== [[ccHost FAQ|Frequently Asked Questions]] (FAQ) ===
+
https://github.com/cc-archive/cchost
  
=== Releases and Downloads ===
+
For much more developer info, see [[Cchost/Developers]].
  
'''Current Version is 2.0.1'''
+
= Documentation =
  
==== ccHost files on Source Forge ====
+
[[cchost/Documentation|ccHost 5 Documentation]]
  
* http://sourceforge.net/project/showfiles.php?group_id=80503&package_id=156675
+
=Communication=
  
==== [[CcHost Press Releases|Press Releases]] ====
 
  
==== Experimental Thrice-Daily Builds ====
+
=== People ===
 
+
* [[User:fourstones|Victor Stone]]
Currently, cchost packages are being made three-times a day and are available here: http://mirrors.creativecommons.org/cchost/packages/
+
* [[User:Jon Phillips|Jon Phillips]]
 
+
=== Contacting  ===
''Download, install and use these packages at your own risk.''
+
The mailing list is the best way to get our attention. That and other methods are listed below:
 
 
Only 30 days worth of builds are saved currently.
 
 
 
=== SVN (Source Code Repository) ===
 
 
 
* [http://sourceforge.net/svn/?group_id=80503 HOWTO use this project's Subversion (SVN)] - use module 'cchost'
 
* [http://svn.sourceforge.net/viewcvs.cgi/cctools/cchost/trunk/ Browsable Anonymous SVN]
 
* [http://wiki.creativecommons.org/Source_Repository_Information Help with cctools SVN setup]
 
 
 
==== HOWTO Tag a Release ====
 
 
 
Really, each major release needs to be tagged, but this 2.0.1 is the first SVN release, and we did it pots CVS -> SVN migration. In the future, this is the proper way to tag and branch.
 
 
 
<pre>
 
svn copy https://svn.sourceforge.net/svnroot/cctools/cchost/trunk \
 
https://svn.sourceforge.net/svnroot/cctools/cchost/tags/2_0_1 \
 
-m "Tagging 2.0.1 bugfix release"
 
</pre>
 
 
 
[http://svnbook.red-bean.com/nightly/en/svn.branchmerge.using.html Here is more about SVN merging/branching].
 
 
 
=== Packaging ===
 
 
 
==== Sign Package ====
 
 
 
You should do this for all packages (RPM, tar.gz, zip, tar.bz2, etc)
 
<pre>
 
gpg --detach-sign --armor cchost-VERSION.tar.gz
 
</pre>
 
 
 
==== Verify Package ====
 
<pre>
 
gpg --verify cchost-VERSION.tar.gz.asc
 
</pre>
 
 
 
=== Communication ===
 
 
 
* Chat: #cc on irc.freenode.net
 
* Wiki: This page (http://wiki.creativecommons.org/wiki/CcHost)
 
 
* Mailing List: https://lists.sourceforge.net/mailman/listinfo/cctools-cchost
 
* Mailing List: https://lists.sourceforge.net/mailman/listinfo/cctools-cchost
 
** [http://sourceforge.net/mailarchive/forum.php?forum=cctools-cchost Archive]
 
** [http://sourceforge.net/mailarchive/forum.php?forum=cctools-cchost Archive]
 +
* Chat: #cc on irc.freenode.net
 +
* Wiki: This page (http://wiki.creativecommons.org/CcHost)
 +
* [[Cchost/Developers#Bugs_and_Feature_Requests|Bugs and feature requests]]
  
=== Bugs, Patches and Feature Requests ===
+
= Zeitgeist =
 
+
=== Goal ===
''Make sure to use the 'ccHost' category when filing bugs. Also, please use a real email so that we can followup on any bugs posted. Be descriptive when posting and commenting on bugs (every bit counts).''
+
The goal of this project is to spread media content that is licensed under Creative Commons throughout the web in much the same way that weblogs spread CC licensed text.
 +
=== Short Description ===
 +
"Web-based System Supporting Remixing and Collaboration on Media"
 +
=== Slightly Longer Description ===  
 +
'''ccHost''' is an open source ([http://creativecommons.org/licenses/GPL/2.0/ GPL] licensed) project that provides web-based infrastructure to support collaboration, sharing, and storage of multi-media using the Creative Commons licenses and metadata. It is the codebase used by [http://ccmixter.org ccMixter] and [[#Usage Examples|other sites]].
  
* [https://sourceforge.net/tracker/?atid=559966&group_id=80503&func=browse Report Bugs]
+
Besides its focus on sharing content, ccHost differentiates itself from other multi-media hosting programs by emphasizing the '''reuse''' (a.k.a. remixing) of content between artists[http://courtreportingagency.com ,] not only between artists on any given installation of ccHost, but between all installations across the web and any web site that implements the Creative Commons [http://ccmixter.org/media/viewfile/pool_api_doc.xml Sample Pool API], including non-ccHost sites such as the [http://freesound.iua.upf.edu/ freesound project].
* [https://sourceforge.net/tracker/?group_id=80503&atid=559969 Request Features]
 
* [[HOWTO Patch|Submit Patches]]
 
  
=== Support ===
+
=== Usage Examples ===
  
==== Browsers ====
+
* [http://ccmixter.org ccMixter] - Primary usage of ccHost is the Creative Commons remix site, ccMixter.
 +
* [http://fourstones.net fourstones.net] Victor's personal website
 +
* [http://www.enciclopediacecilia.org/remix/ Remix Cecilia] at the Enciclopedia Cecilia project (Spanish).
 +
* [http://audio.ibeat.org/ iBeat] Moderated Sample Archive
  
* Tested on: Firefox 1.0+ Mac/PC/Linux, IE 6+ PC, Safari Mac
+
----
* Javascript, XHTML 1.0+, CSS 2
 
  
== Usage Examples ==
+
= Appendix A: Compatibility =
  
*[http://ccmixter.org ccMixter] - Primary usage of ccHost is the Creative Commons remix site, ccMixter.
+
=== Browsers ===
*[http://www.opensourcecinema.com/cchost Open Source Cinema]
 
*[http://www.matrix-rayne.com Matrix Rayne Online]
 
*[http://remix.machinehasnoagenda.com/ remix.linux]
 
*[http://www.ccmixter.co.za/ ccmixter South Africa]
 
*[http://fourstones.net fourstones.net] Victor's personal website
 
*[http://www.openclipart.org/cchost/ Open Clip Art Library ccHost in testing]
 
*[http://www.esolpc.com/teacherhost/ TeacherHost] - for Instructors to share instructional materials.
 
* '''Please add your installation here.'''
 
  
== Installation ==
+
Recently tested on: Firefox 2/3 Mac/PC/Linux, IE 7 PC, Safari Mac (IE8 requires "compatibility" mode - see [[Cchost/guide/Troubleshooting#IE8_Layout_Issues|here]] for workaround)
  
=== General Requirements ===
+
Cookies must be enabled.
  
=== Common Wed Hosting Services ===
+
Most skins (the ones people will want to use) require Javascript enabled.
  
Common web hosting services like [http://www.dreamhost.com/ Dreamhost] and [http://www.websitesource.com WebsiteSource] provide an administration interface from which to setup a mysql database. Hosting services also provide some FTP or SFTP mechanism to upload the cchost installation files as well. 99% of all services provide support for PHP as well. If you have questions about support in this area, check the requirements below and with your hosting service.
+
=== Servers ===
  
=== Windows ===
+
Primary development is done on Ubuntu 8.04 (hardy heron) using Apache, mySQL, and PHP. The actual dev setup is described in detail [[Cchost/Developers/Victor's_Dev_Setup|here]].
  
==== XAMPP ====
+
==== Linux ====
It is recommended to download [http://www.apachefriends.org/en/xampp.html XAMPP] for Windows, which provides an easy install of Apache web server, MySQL database server, and PHP and perl programming languages. This is the easiest way to get up and running, as this system replicates the standard Open Source (and Linux) setup of a time-tested server, [http://www.apache.org/ Apache], along with the required MySQL database and PHP programming language, all necessary to use ccHost.
+
ccHost on Apache (2.0.49 up to at least apache-2.0.55-r1) on Linux,  
  
Follow the instructions for installation of XAMPP to know where to put the uncompressed ccHost package to properly work with your local setup.
+
One should be able to easily install mySQL, PHP, and Apache (if they are not already available) through their distributions packaging system. See the dev setup above.
  
 
==== Windows IIS Server ====
 
==== Windows IIS Server ====
  
Windows users with their installation disks may install optionally the Windows IIS Web Server. This option has been tested. However, there might still be issues with it, and if so, please file a bug.
+
{{Infobox|ccHost has not been seen running or tested on Windows for a long time - several versions ago.}}
  
=== Linux ===
+
Windows users with their installation disks may install optionally the Windows IIS Web Server. This option has been tested. However, there might still be issues with it, and if so, [http://sourceforge.net/tracker2/?func=browse&group_id=80503&atid=559966 please file a bug].
  
Primary development is done on up-to-date Linux development systems using apache, mysql, and php. One should be able to easily install mysql, php, and apache (if they are not already available) through their distributions packaging system.
+
Even if you using Apache on Windows you may need to have IIS installed if you plan to use mail contact functions.
  
== Step-by-step instructions ==
+
==== Windows Apache ====
====Simple or hosted Environment====
+
There are many good tutorials for setting up a Windows/Apache/MySQL/PHP site ([http://google.com/search?q=installing+WAMP Google search]) and all three subsystems now come with Windows installers making the job of installing relatively straightforward.
If you are using a shared server or other hosted site (like Dreamcast, etc.) then your hosting service probably provided you with a web interface for creating a database, doing file uploads and setting permissions for files and directories.
 
#Create a new database for ccHost BEFORE running this installation.
 
#Unzip the ccHost ZIP archive on your local system and copy the files to your server retaining the the directory structure.
 
#Browse to http://where_you_installed/ccadmin and follow all the instructions from then on.  
 
  
====Advanced====
+
====== XAMPP ======
If you have basic knowledge of using FTP and you are comfortable at a UNIX/Linux command line you can use these steps to install:
+
Windows installations without Apache, mySQL and PHP already installed should consider using [http://www.apachefriends.org/en/xampp.html XAMPP] for Windows, which provides an easy install of Apache web server, MySQL database server, and PHP and perl programming languages. This is an easy way to get up and running, with the underlying technology necessary to use ccHost.
  
#Unzip the ccHost ZIP or tar.bz2 archive on your local system and copy the files (retaining the directory structure) to your web-server directory. Change the group and permissions of the files so they may be written by the web server (e.g., in the following lines, the web-server account is "apache").
+
Follow the instructions for installation of XAMPP to know where to put the uncompressed ccHost package to properly work with your local setup.
#*For example:
 
#*#cp -a cchost-1.0.3 /var/www/localhost/htdocs/cchost
 
#*#chgrp -R apache /var/www/localhost/htdocs/cchost
 
#*#chmod g+w /var/www/localhost/htdocs/cchost/
 
#*#chmod -R g+w /var/www/localhost/htdocs/cchost/cclib/phptal/phptal_cache/
 
#Install the GetID3 (1.7.3) library from here: http://www.getid3.org/#download .  Unpack the package, and then copy the GetID3 directory to the location it will be accessed.  For example:
 
##tar xzf getid3.tar.gz
 
##cp -a getid3/getid3 /var/www/localhost/htdocs/cchost/
 
#Create a new database for ccHost (e.g., named "cchost") and create an administrative user to access it (e.g., "cchostadmin").  For example:
 
##mysql -p -u root
 
##mysql> CREATE DATABASE cchost;
 
##mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE ON cchost.* TO 'cchostadmin'@'localhost' IDENTIFIED BY 'YOUR_PASSWORD_HERE';
 
##*Make sure to change 'YOUR_PASSWORD_HERE' (and maybe 'cchostadmin') to something unique to your site.
 
##*Many systems provide phpMyAdmin to take care of these tasks.
 
##Create directory /var/log/cchost or other location to store log files.  Must be writable by the web-server account (e.g., "apache").  For example:
 
###mkdir /var/log/cchost
 
###chown apache:apache /var/log/cchost
 
##Browse to <nowiki>http://where_you_installed_cchost/ccadmin</nowiki>
 
##*Everything else you need to know will be on the screen from that point on, including suggested php.ini and .htaccess settings, access permissions requirements, etc.
 
 
 
Take Note: On the last screen of the installation process you'll be prompted to read about specific issues regarding file permissions. '''DO NOT SKIP THIS STEP!'''
 
===Upgrade existing ccHost installations===
 
#Log in as administrator
 
#Copy this installation over your current installation.
 
#Browse to: <nowiki>http://where_you_installed/?update=1</nowiki>
 
 
 
Note to 1.x ccHost installations: phpBB2 is no longer used for reviews. There is a script for importing existing phpBB2 format reviews into the new native reviewing system. Contact fourstones@users.sourceforge.net for details.
 
 
 
=== Requirements ===
 
 
 
* PHP 4 (PHP 5 works if you sync to latest code)
 
* MySQL 4 (MySQL 5 works if you sync to latest code)
 
* GetID3
 
**Install the GetID3 (1.7.3) library from here: http://www.getid3.org/#download before you install ccHost. (It's a simple download-unpack operation.)
 
* Cookies enabled in one's browser.
 
* '''Platforms''': This system has been tested on Apache 1 and 2 Windows and Linux.  It also works with IIS on Windows.  If you receive an error about DOCUMENT_ROOT, ignore it.  IIS doesn't use DOCUMENT_ROOT, and ccHost doesn't seem to mind.  If you have tested ccHost on System X or any other platform, please register as a ccDeveloper and update this page!  Thanks. =)
 
** Apache 2.0.49 up to at least apache-2.0.55-r1 works with cchost 2.0.1
 
* '''Optional''': Here is the block of code in the Apache virtual host for setting the rewrite rules to get pretty urls:
 
 
 
<pre>
 
<VirtualHost *:80>
 
ServerName ccmixter.localhost
 
ServerPath /ccmixter
 
#DocumentRoot /var/www/localhost/htdocs/cchost
 
DocumentRoot /home/rejon/Documents/freelance/creativecommons/src/ccmixter
 
 
 
<Directory "/home/rejon/Documents/freelance/creativecommons/src/ccmixter">
 
RewriteEngine On
 
RewriteBase /
 
RewriteCond %{REQUEST_FILENAME} !-d
 
RewriteCond %{REQUEST_FILENAME} !-f
 
RewriteRule ^(.*)$ /index.php?ccm=/$1 [L,QSA]
 
</Directory>
 
</VirtualHost>
 
</pre>
 
 
 
==== MySQL commands for Setting up DB ====
 
 
 
* install root mysql user:
 
** mysqladmin -u root password 'PASSWORD_HERE'
 
* once logged into mysql:
 
** create database cchost;
 
* to create a new user once inside mysql with access to a table cchost:
 
** grant all on cchost.* to jsmith@localhost identified by 'Secret15';
 
 
 
==== Notes ====
 
 
 
* Installing the CCHost software involves downloading the source files from [http://sourceforge.net/project/showfiles.php?group_id=80503&package_id=156675 sourceforge], and running a simple installation script.  Permissions will need to be set on several folders, namely cclib/phptal/phptal_cache.
 
* The text for the front page can be changed by editing ccfiles/home.xml.  The other menu functions and so on are generally modified using the admin functions of the site.
 
 
 
== Development ==
 
 
 
=== Documentation ===
 
 
 
* [http://mirrors.creativecommons.org/cchost/docs/ PHPDOC Documentation of PHP Code]
 
* '''Victor's Developers Guide''' Coming Soon!
 
  
=== Discussion ===
+
==== Mac OS X ====
  
* [[ccHost Localization]] - steps for i18n internationalization/localization
+
''NOTE: This setup is similar to Linux.''
  
=== [[ccHost Roadmap|Roadmap]] ===
+
Verified:
=== [[ccHost Release Procedure|Release Procedure]] ===
 
=== [[ccHost Community Building|Community Building]] ===
 
=== [[ccHost Testing|Testing and Debugging]] ===
 
=== [[ccHost Sample Pools|Sample Pools]] ===
 
  
== People ==
+
* OS X 10.4.6
 
+
* default OS X MySQL build, 4.0.26
* [[User:Victor Stone|Victor Stone]]
+
* GetID3 1.7.7
* [[User:Jon Phillips|Jon Phillips]]
+
* default Apache/PHP
 
 
 
 
== [[ccHost History|History]] ==
 
 
 
 
 
== Research ==
 
 
 
* Possible solution for forms and other enhancements - http://www.gamingheadlines.co.uk/wod/formstyle/
 
 
 
[[Category:CcHost]]
 
[[Category:Developer]]
 
[[Category:opensource]]
 
[[Category:Technology]]
 
  
<!-- test -->
+
[http://wiki.creativecommons.org/Creative_commons_non_profit_organization About Creative Commons]

Latest revision as of 03:17, 30 September 2014


ccHost is Creative Commons' open source (GPL licensed) content management system project that powers ccMixter and is the winner of the Linux Journal LinuxWorldExpo Product Excellence Award for Best Open Source Solution. Read more about ccHost here.

Download

Sign up for our RSS release feed to make sure you don't miss important bug fixes and feature updates.

Current Stable Release

Latest stable build of ccHost 5.1 is available in ZIP archive format.

Source Repository

https://github.com/cc-archive/cchost

For much more developer info, see Cchost/Developers.

Documentation

ccHost 5 Documentation

Communication

People

Contacting

The mailing list is the best way to get our attention. That and other methods are listed below:

Zeitgeist

Goal

The goal of this project is to spread media content that is licensed under Creative Commons throughout the web in much the same way that weblogs spread CC licensed text.

Short Description

"Web-based System Supporting Remixing and Collaboration on Media"

Slightly Longer Description

ccHost is an open source (GPL licensed) project that provides web-based infrastructure to support collaboration, sharing, and storage of multi-media using the Creative Commons licenses and metadata. It is the codebase used by ccMixter and other sites.

Besides its focus on sharing content, ccHost differentiates itself from other multi-media hosting programs by emphasizing the reuse (a.k.a. remixing) of content between artists, not only between artists on any given installation of ccHost, but between all installations across the web and any web site that implements the Creative Commons Sample Pool API, including non-ccHost sites such as the freesound project.

Usage Examples

  • ccMixter - Primary usage of ccHost is the Creative Commons remix site, ccMixter.
  • fourstones.net Victor's personal website
  • Remix Cecilia at the Enciclopedia Cecilia project (Spanish).
  • iBeat Moderated Sample Archive

Appendix A: Compatibility

Browsers

Recently tested on: Firefox 2/3 Mac/PC/Linux, IE 7 PC, Safari Mac (IE8 requires "compatibility" mode - see here for workaround)

Cookies must be enabled.

Most skins (the ones people will want to use) require Javascript enabled.

Servers

Primary development is done on Ubuntu 8.04 (hardy heron) using Apache, mySQL, and PHP. The actual dev setup is described in detail here.

Linux

ccHost on Apache (2.0.49 up to at least apache-2.0.55-r1) on Linux,

One should be able to easily install mySQL, PHP, and Apache (if they are not already available) through their distributions packaging system. See the dev setup above.

Windows IIS Server

ccHost has not been seen running or tested on Windows for a long time - several versions ago.

Windows users with their installation disks may install optionally the Windows IIS Web Server. This option has been tested. However, there might still be issues with it, and if so, please file a bug.

Even if you using Apache on Windows you may need to have IIS installed if you plan to use mail contact functions.

Windows Apache

There are many good tutorials for setting up a Windows/Apache/MySQL/PHP site (Google search) and all three subsystems now come with Windows installers making the job of installing relatively straightforward.

XAMPP

Windows installations without Apache, mySQL and PHP already installed should consider using XAMPP for Windows, which provides an easy install of Apache web server, MySQL database server, and PHP and perl programming languages. This is an easy way to get up and running, with the underlying technology necessary to use ccHost.

Follow the instructions for installation of XAMPP to know where to put the uncompressed ccHost package to properly work with your local setup.

Mac OS X

NOTE: This setup is similar to Linux.

Verified:

  • OS X 10.4.6
  • default OS X MySQL build, 4.0.26
  • GetID3 1.7.7
  • default Apache/PHP

About Creative Commons