diff --git a/.travis.yml b/.travis.yml index f8eb9d97f..0702b2db5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,7 @@ env: - LIBRETIME_LOG_DIR=/tmp/log/libretime install: - composer install +- pip install --user mkdocs before_script: - psql -c 'CREATE DATABASE libretime;' -U postgres - psql -c "CREATE USER libretime WITH PASSWORD 'libretime';" -U postgres @@ -18,4 +19,16 @@ before_script: - psql -c 'ALTER USER libretime CREATEDB;' -U postgres - mkdir -p /tmp/log/libretime script: -- cd airtime_mvc/tests && ../../vendor/bin/phpunit +- pushd airtime_mvc/tests && ../../vendor/bin/phpunit && popd +- mkdocs build --clean -q > /dev/null +deploy: + provider: pages + skip_cleanup: true + local_dir: build/docs + github_token: $GITHUB_TOKEN # Set in travis-ci.org dashboard + target_branch: master + project_name: LibreTime/LibreTime.github.io + fqdn: libretime.org + name: R. LibreTime DocBot + on: + branch: master diff --git a/docs/_css/term.css b/docs/_css/term.css new file mode 100644 index 000000000..3510c5ff7 --- /dev/null +++ b/docs/_css/term.css @@ -0,0 +1,14 @@ +pre.codehilite > code, +div.codehilite > pre { + color: #808080; + padding: 1em; + border-radius: 3px; + font-size: 110%; + font-weight: bold; + overflow: auto; +} + +pre.codehilite > code.language-console > span, +div.codehilite > pre > span[style*="color: #AA22FF"] { + color: #808080 !important; +} diff --git a/docs/documentation.md b/docs/documentation.md new file mode 100644 index 000000000..a588dfdd2 --- /dev/null +++ b/docs/documentation.md @@ -0,0 +1,28 @@ +Documentation +============= + +The LibreTime documentation site is generated with [mkdocs](http://www.mkdocs.org/). To get started contributing to this project, fork it on Github. Then install mkdocs and clone this repo locally: + + :::bash + sudo brew install python # For OSX users + sudo aptitude install python-pip # For Debian/Ubuntu users + sudo pip install mkdocs + git clone https://github.com/libretime/libretime + cd libretime + git remote add sandbox https://github.com//libretime # URL for your fork + mkdocs build --clean + mkdocs serve + +Your local LibreTime docs site should now be available for browsing: [http://localhost:8888/](http://localhost:8888/). + +When you find a typo, an error, unclear or missing explanations or instructions, open a new terminal and start editing. Your changes should be reflected automatically on the local server. Find the page you’d like to edit; everything is in the docs/ directory. Make your changes, commit and push them, and start a pull request: + + :::bash + git checkout -b fix_typo + vi docs/index.md # Add/edit/remove whatever you see fit. Be bold! + mkdocs build --clean; mkdocs serve # Go check your changes. We’ll wait... + git diff # Make sure there aren’t any unintended changes. + git commit -am”Fixed typo.” # Useful commit message are a good habit. + git push sandbox fix_typo + +Visit your fork on Github and start a PR. diff --git a/docs/features.md b/docs/features.md new file mode 100644 index 000000000..3df32286b --- /dev/null +++ b/docs/features.md @@ -0,0 +1,9 @@ +Features +======== + +TBD + +Screenshots +----------- + +TBD diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 000000000..6dfb154c2 --- /dev/null +++ b/docs/index.md @@ -0,0 +1,25 @@ +Welcome to LibreTime +==================== + +LibreTime makes it easy to run your own online radio station. Check out some [features](features.md) and [screenshots](features.md#screenshots), then [install it](install.md) and start broadcasting! + +LibreTime is Free/Libre and Open Source Software (FLOSS). Among other things, this means that you have the freedom to: + +* Run it royalty-free for as long as you like. +* Read and alter the code that makes it work (or hire someone to do this for you!) +* Contribute documentation, bug-fixes, etc. so that everyone in the community benefits. + +LibreTime is a fork of AirTime due to stalled development of the FLOSS version. For background on this, see this [open letter to the Airtime community](https://gist.github.com/hairmare/8c03b69c9accc90cfe31fd7e77c3b07d). + + +Getting Started +--------------- + +The easiest way to check out LibreTime for yourself is to run a local instance in a virtual machine. Assuming you already have Git, Vagrant and Virtualbox installed, just run: + + :::bash + git clone https://github.com/libretime/libretime.git + cd libretime + vagrant up + +Of course, this setup isn't appropriate for production use. For that, check out our [installation instructions](install.md). diff --git a/docs/install.md b/docs/install.md new file mode 100644 index 000000000..385237ff5 --- /dev/null +++ b/docs/install.md @@ -0,0 +1,9 @@ +Installing LibreTime +==================== + +LibreTime should generally be installed on a dedicated host. By default, its installer will install and configure all its dependencies. At the moment, the installer works best on Ubuntu Trusty. + + :::bash + ./install + +Plans are in the works for ```.deb``` and ```.rpm``` packages, as well as Docker and AWS images. diff --git a/docs/scripts/install.sh b/docs/scripts/install.sh new file mode 100755 index 000000000..d7fb756f3 --- /dev/null +++ b/docs/scripts/install.sh @@ -0,0 +1,10 @@ +#! /bin/sh + +echo "Updating Apt." +apt-get update > /dev/null +echo "Ensuring Pip is installed." +DEBIAN_FRONTEND=noninteractive apt-get install -y -qq python-pip > /dev/null +echo "Updating Pip." +pip install pip -q -q --upgrade > /dev/null +echo "Ensuring Mkdocs is installed." +pip install -q mkdocs > /dev/null diff --git a/docs/scripts/serve.sh b/docs/scripts/serve.sh new file mode 100755 index 000000000..2596ef316 --- /dev/null +++ b/docs/scripts/serve.sh @@ -0,0 +1,10 @@ +#! /bin/sh + +cd /vagrant +echo "Stopping any running Mkdocs servers." +pkill mkdocs +echo "Building Mkdocs documentation." +mkdocs build --clean -q > /dev/null +echo "Launching Mkdocs server." +mkdocs serve > /dev/null 2>&1 & +echo "Visit http://localhost:8888 to see the LibreTime documentation." diff --git a/docs/TESTING.md b/docs/testing.md similarity index 100% rename from docs/TESTING.md rename to docs/testing.md diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 000000000..e90ca073f --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,20 @@ +site_name: LibreTime +theme: readthedocs + +dev_addr: '0.0.0.0:8888' +site_dir: '/tmp/aegir_docs/_site' +markdown_extensions: +- codehilite: + noclasses: True + pygments_style: emacs + +extra_css: + - '_css/term.css' + +pages: + - 'Home': index.md + - 'Features': features.md + - 'Install': install.md + - 'Development': + - 'Testing': testing.md + - 'Documentation': documentation.md