Commits

tehfink committed 9a937f7

moved docs around to make them more like django's

  • Participants
  • Parent commits 04e911a

Comments (0)

Files changed (4)

Makefile

-# Makefile for Sphinx documentation
-#
-
-# You can set these variables from the command line.
-SPHINXOPTS    =
-SPHINXBUILD   = sphinx-build
-PAPER         =
-
-# Internal variables.
-PAPEROPT_a4     = -D latex_paper_size=a4
-PAPEROPT_letter = -D latex_paper_size=letter
-ALLSPHINXOPTS   = -d doc-build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) docs
-
-.PHONY: help clean html web htmlhelp latex changes linkcheck
-
-help:
-	@echo "Please use \`make <target>' where <target> is one of"
-	@echo "  html      to make standalone HTML files"
-	@echo "  web       to make files usable by Sphinx.web"
-	@echo "  htmlhelp  to make HTML files and a HTML help project"
-	@echo "  latex     to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
-	@echo "  changes   to make an overview over all changed/added/deprecated items"
-	@echo "  linkcheck to check all external links for integrity"
-	@echo
-	@echo "  read      to open html version in browser"
-
-clean:
-	-rm -rf doc-build/*
-
-html:
-	mkdir -p doc-build/html doc-build/doctrees
-	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) doc-build/html
-	@echo
-	@echo "Build finished. The HTML pages are in doc-build/html."
-
-read: html
-	open doc-build/html/index.html
-
-web:
-	mkdir -p doc-build/web doc-build/doctrees
-	$(SPHINXBUILD) -b web $(ALLSPHINXOPTS) doc-build/web
-	@echo
-	@echo "Build finished; now you can run"
-	@echo "  python -m sphinx.web doc-build/web"
-	@echo "to start the server."
-
-htmlhelp:
-	mkdir -p doc-build/htmlhelp doc-build/doctrees
-	$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) doc-build/htmlhelp
-	@echo
-	@echo "Build finished; now you can run HTML Help Workshop with the" \
-	      ".hhp project file in doc-build/htmlhelp."
-
-latex:
-	mkdir -p doc-build/latex doc-build/doctrees
-	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) doc-build/latex
-	@echo
-	@echo "Build finished; the LaTeX files are in doc-build/latex."
-	@echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
-	      "run these through (pdf)latex."
-
-changes:
-	mkdir -p doc-build/changes doc-build/doctrees
-	$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) doc-build/changes
-	@echo
-	@echo "The overview file is in doc-build/changes."
-
-linkcheck:
-	mkdir -p doc-build/linkcheck doc-build/doctrees
-	$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) doc-build/linkcheck
-	@echo
-	@echo "Link check complete; look for any errors in the above output " \
-	      "or in doc-build/linkcheck/output.txt."
+# Makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line.
+SPHINXOPTS    =
+SPHINXBUILD   = sphinx-build
+PAPER         =
+BUILDDIR      = _build
+
+# Internal variables.
+PAPEROPT_a4     = -D latex_paper_size=a4
+PAPEROPT_letter = -D latex_paper_size=letter
+ALLSPHINXOPTS   = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
+
+.PHONY: help clean html web htmlhelp latex changes linkcheck
+
+help:
+	@echo "Please use \`make <target>' where <target> is one of"
+	@echo "  html      to make standalone HTML files"
+	@echo "  web       to make files usable by Sphinx.web"
+	@echo "  htmlhelp  to make HTML files and a HTML help project"
+	@echo "  latex     to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
+	@echo "  changes   to make an overview over all changed/added/deprecated items"
+	@echo "  linkcheck to check all external links for integrity"
+	@echo
+	@echo "  read      to open html version in browser"
+
+clean:
+	-rm -rf $(BUILDDIR)/*
+
+html:
+	mkdir -p $(BUILDDIR)/html $(BUILDDIR)/doctrees
+	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
+	@echo
+	@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
+
+read: html
+	open $(BUILDDIR)/html/index.html
+
+web:
+	mkdir -p $(BUILDDIR)/web $(BUILDDIR)/doctrees
+	$(SPHINXBUILD) -b web $(ALLSPHINXOPTS) $(BUILDDIR)/web
+	@echo
+	@echo "Build finished; now you can run"
+	@echo "  python -m sphinx.web $(BUILDDIR)/web"
+	@echo "to start the server."
+
+htmlhelp:
+	mkdir -p $(BUILDDIR)/htmlhelp $(BUILDDIR)/doctrees
+	$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
+	@echo
+	@echo "Build finished; now you can run HTML Help Workshop with the" \
+	      ".hhp project file in $(BUILDDIR)/htmlhelp."
+
+latex:
+	mkdir -p $(BUILDDIR)/latex $(BUILDDIR)/doctrees
+	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
+	@echo
+	@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
+	@echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
+	      "run these through (pdf)latex."
+
+changes:
+	mkdir -p $(BUILDDIR)/changes $(BUILDDIR)/doctrees
+	$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
+	@echo
+	@echo "The overview file is in $(BUILDDIR)/changes."
+
+linkcheck:
+	mkdir -p $(BUILDDIR)/linkcheck $(BUILDDIR)/doctrees
+	$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
+	@echo
+	@echo "Link check complete; look for any errors in the above output " \
+	      "or in $(BUILDDIR)/linkcheck/output.txt."
 
 import sys, os
 
-sys.path.append(os.path.abspath(os.path.dirname(__file__) + '/../'))
+#import ipdb; ipdb.set_trace()
 
-import settings
+#hack byteflow & apps into the python path, in case we're not in a virtualenv
+sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
+sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '../byteflow/apps')))
+
+#why are some virtualenv apps and not others available for import here? django works, but not BeautifulSoup
+
+
+from byteflow import settings 
 from django.core.management import setup_environ
 setup_environ(settings)
 

docs/install_virtualenv.txt

+.. -*- mode: rst -*-
+.. _install:
+
+Installation Using Virtualenv & Pip
+===================================
+
+Byteflow Dependencies
+---------------------
+
+ * Python >=2.4
+
+Your Project's Dependencies
+---------------------------
+
+ * Either `MySQLdb <http://mysql-python.sourceforge.net/>`_ or `psycopg2 <http://pypi.python.org/pypi/psycopg2>`_ if you're using mysql or postgresql.
+ * `ElementTree <http://effbot.org/zone/element-index.htm>`_, if you are using python < 2.5
+ * `Python Imaging Library <http://www.pythonware.com/products/pil/>`_, if you need to use CAPTCHA (reCAPTCHA does not need it)
+ * `feedparser <http://www.feedparser.org/>`_, if you want to use friends list
+
+
+Setup
+-----
+This tutorial describes installing Byteflow as an app library inside a virtualenv, separate from your Django project. This makes version control, backup, development & deployment much easier.
+
+ * Install pip using your package manager of choice (apt-get, portmaster, easy_install, etc.)
+
+ * Install virtualenv using your package manager of choice (apt-get, portmaster, easy_install, etc.) or pip:
+
+    pip install virtualenv
+
+ * Create a new folder to house your virtualenv & Django blog project (this is to help you get started; your virtualenv & project don't require specific locations):
+
+    mkdir myblog_project && cd myblog_project
+
+ * Create a virtualenv:
+
+    virtualenv --no-site-packages myblog-virtualenv
+
+ * Create a requirements.txt for pip, and add packages to it as needed for your project. For example, here's mine:
+
+    -e hg+http://bitbucket.org/tehfink/byteflow#egg=byteflow
+    PIL
+    psycopg2
+
+ * Tell pip to use requirements.txt to install the required apps into your virtualenv: 
+
+    pip install -E myblog-virtualenv -r requirements.txt
+
+ * Activate your virtualenv:
+
+    source myblog-virtualenv/bin/activate
+
+ * Create your Django project:
+
+     django-admin.py startproject myblog
+
+ * Add this to the top of myblog/settings.py; this will suck in all the Byteflow defaults:
+
+    from byteflow.settings import *
+
+Then override them for your Django project like so:
+
+    THEME = 'mytheme'
+
+Make sure you remove the settings Django automatically generates for you, such as INSTALLED_APPS, MIDDLEWARE_CLASSES, TEMPLATE_LOADERS, etc., as these will overwrite the Byteflow defaults.
+
+If you want to install apps in addition to the Byteflow defaults, add them like so:
+
+    INSTALLED_APPS += (
+        'myapp',
+    )
+
+ * Add the following to the top of myblog/urls.py; this will suck in all the Byteflow defaults:
+    from byteflow.urls import *
+
+If you want to include urlpatterns in addition to the byteflow defaults, add them like so:
+
+    from django.conf.urls.defaults import patterns
+    urlpatterns += patterns(
+        ...
+    )
+
+ * Put your Byteflow theme in myblog/themes, as normal.
+
+ * Follow the standard Byteflow docs for available settings.