From 1a2f09211dd3d2a484cf64d7c6364bb4e7f2bcda Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 31 Oct 2010 02:50:38 +0200 Subject: [PATCH 1/9] Move pip requirement files into own dir --- MANIFEST.in | 3 ++- requirements-docs.txt => requirements/docs.txt | 0 .../external_mixers.rst | 0 requirements-lastfm.txt => requirements/lastfm.txt | 0 requirements-tests.txt => requirements/tests.txt | 0 5 files changed, 2 insertions(+), 1 deletion(-) rename requirements-docs.txt => requirements/docs.txt (100%) rename requirements-external-mixers.txt => requirements/external_mixers.rst (100%) rename requirements-lastfm.txt => requirements/lastfm.txt (100%) rename requirements-tests.txt => requirements/tests.txt (100%) diff --git a/MANIFEST.in b/MANIFEST.in index 33d7dc71..f629bcc7 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,6 +1,7 @@ -include LICENSE pylintrc *.rst *.txt data/mopidy.desktop +include LICENSE pylintrc *.rst data/mopidy.desktop include mopidy/backends/libspotify/spotify_appkey.key recursive-include docs * prune docs/_build +recursive-include requirements * recursive-include tests *.py recursive-include tests/data * diff --git a/requirements-docs.txt b/requirements/docs.txt similarity index 100% rename from requirements-docs.txt rename to requirements/docs.txt diff --git a/requirements-external-mixers.txt b/requirements/external_mixers.rst similarity index 100% rename from requirements-external-mixers.txt rename to requirements/external_mixers.rst diff --git a/requirements-lastfm.txt b/requirements/lastfm.txt similarity index 100% rename from requirements-lastfm.txt rename to requirements/lastfm.txt diff --git a/requirements-tests.txt b/requirements/tests.txt similarity index 100% rename from requirements-tests.txt rename to requirements/tests.txt From 5dc35eaad41330b4a6117138816ca55cd5188897 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 31 Oct 2010 02:50:53 +0200 Subject: [PATCH 2/9] Fix broken symlinks --- tests/data/scanner/advanced/subdir1/subsubdir/song8.mp3 | 2 +- tests/data/scanner/advanced/subdir1/subsubdir/song9.mp3 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/data/scanner/advanced/subdir1/subsubdir/song8.mp3 b/tests/data/scanner/advanced/subdir1/subsubdir/song8.mp3 index 45812ac5..e84bdc24 120000 --- a/tests/data/scanner/advanced/subdir1/subsubdir/song8.mp3 +++ b/tests/data/scanner/advanced/subdir1/subsubdir/song8.mp3 @@ -1 +1 @@ -../../sample.mp3 \ No newline at end of file +../../../sample.mp3 \ No newline at end of file diff --git a/tests/data/scanner/advanced/subdir1/subsubdir/song9.mp3 b/tests/data/scanner/advanced/subdir1/subsubdir/song9.mp3 index 45812ac5..e84bdc24 120000 --- a/tests/data/scanner/advanced/subdir1/subsubdir/song9.mp3 +++ b/tests/data/scanner/advanced/subdir1/subsubdir/song9.mp3 @@ -1 +1 @@ -../../sample.mp3 \ No newline at end of file +../../../sample.mp3 \ No newline at end of file From d7dc91f2103def3e77cab0a243749b14e24e1f6e Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 31 Oct 2010 02:51:58 +0200 Subject: [PATCH 3/9] Fix wrong file extension --- requirements/{external_mixers.rst => external_mixers.txt} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename requirements/{external_mixers.rst => external_mixers.txt} (100%) diff --git a/requirements/external_mixers.rst b/requirements/external_mixers.txt similarity index 100% rename from requirements/external_mixers.rst rename to requirements/external_mixers.txt From f50b2b15b1d7c9319bd1d0843a81d3e8e589e587 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 31 Oct 2010 02:57:04 +0200 Subject: [PATCH 4/9] Add README to requirements/ dir --- requirements/README.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 requirements/README.rst diff --git a/requirements/README.rst b/requirements/README.rst new file mode 100644 index 00000000..cc061a7b --- /dev/null +++ b/requirements/README.rst @@ -0,0 +1,11 @@ +********************* +pip requirement files +********************* + +The files found here are `requirement files +`_ that may be used with `pip +`_. + +To install the dependencies found in one of these files, simply run e.g.:: + + pip install -r requirements/tests.txt From 1437ba63ded573d6ddbeeaf468fe76c5ec7e8f7a Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 31 Oct 2010 02:16:40 +0100 Subject: [PATCH 5/9] docs: Split API and implementation docs --- docs/api/{backends/index.rst => backends.rst} | 4 +- .../{frontends/index.rst => frontends.rst} | 4 +- docs/api/index.rst | 6 +- docs/api/mixers.rst | 65 +++---------------- docs/api/outputs.rst | 10 +-- docs/index.rst | 1 + docs/{api => modules}/backends/dummy.rst | 0 docs/{api => modules}/backends/libspotify.rst | 0 docs/{api => modules}/backends/local.rst | 0 docs/{api => modules}/frontends/lastfm.rst | 0 docs/{api => modules}/frontends/mpd.rst | 0 docs/modules/index.rst | 8 +++ docs/modules/mixers/alsa.rst | 9 +++ docs/modules/mixers/denon.rst | 9 +++ docs/modules/mixers/dummy.rst | 9 +++ docs/modules/mixers/gstreamer_software.rst | 9 +++ docs/modules/mixers/nad.rst | 9 +++ docs/modules/mixers/osa.rst | 9 +++ docs/modules/outputs/gstreamer.rst | 9 +++ 19 files changed, 90 insertions(+), 71 deletions(-) rename docs/api/{backends/index.rst => backends.rst} (97%) rename docs/api/{frontends/index.rst => frontends.rst} (94%) rename docs/{api => modules}/backends/dummy.rst (100%) rename docs/{api => modules}/backends/libspotify.rst (100%) rename docs/{api => modules}/backends/local.rst (100%) rename docs/{api => modules}/frontends/lastfm.rst (100%) rename docs/{api => modules}/frontends/mpd.rst (100%) create mode 100644 docs/modules/index.rst create mode 100644 docs/modules/mixers/alsa.rst create mode 100644 docs/modules/mixers/denon.rst create mode 100644 docs/modules/mixers/dummy.rst create mode 100644 docs/modules/mixers/gstreamer_software.rst create mode 100644 docs/modules/mixers/nad.rst create mode 100644 docs/modules/mixers/osa.rst create mode 100644 docs/modules/outputs/gstreamer.rst diff --git a/docs/api/backends/index.rst b/docs/api/backends.rst similarity index 97% rename from docs/api/backends/index.rst rename to docs/api/backends.rst index 100f6f0d..c8a72b4d 100644 --- a/docs/api/backends/index.rst +++ b/docs/api/backends.rst @@ -82,8 +82,8 @@ Manages the music library, e.g. searching for tracks to be added to a playlist. :undoc-members: -Backends -======== +Backend implementations +======================= * :mod:`mopidy.backends.dummy` * :mod:`mopidy.backends.libspotify` diff --git a/docs/api/frontends/index.rst b/docs/api/frontends.rst similarity index 94% rename from docs/api/frontends/index.rst rename to docs/api/frontends.rst index b01bac3d..2f20c72a 100644 --- a/docs/api/frontends/index.rst +++ b/docs/api/frontends.rst @@ -27,8 +27,8 @@ Frontend API :members: -Frontends -========= +Frontend implementations +======================== * :mod:`mopidy.frontends.lastfm` * :mod:`mopidy.frontends.mpd` diff --git a/docs/api/index.rst b/docs/api/index.rst index 86f4e06e..87ec9bb3 100644 --- a/docs/api/index.rst +++ b/docs/api/index.rst @@ -1,6 +1,6 @@ -***************** -API documentation -***************** +************* +API reference +************* .. toctree:: :glob: diff --git a/docs/api/mixers.rst b/docs/api/mixers.rst index edaea306..1d9937ac 100644 --- a/docs/api/mixers.rst +++ b/docs/api/mixers.rst @@ -37,61 +37,12 @@ methods as described below. :undoc-members: -:mod:`mopidy.mixers.alsa` -- ALSA mixer for Linux -================================================= +Mixer implementations +===================== -.. inheritance-diagram:: mopidy.mixers.alsa - -.. automodule:: mopidy.mixers.alsa - :synopsis: ALSA mixer for Linux - :members: - - -:mod:`mopidy.mixers.denon` -- Hardware mixer for Denon amplifiers -================================================================= - -.. inheritance-diagram:: mopidy.mixers.denon - -.. automodule:: mopidy.mixers.denon - :synopsis: Hardware mixer for Denon amplifiers - :members: - - -:mod:`mopidy.mixers.dummy` -- Dummy mixer for testing -===================================================== - -.. inheritance-diagram:: mopidy.mixers.dummy - -.. automodule:: mopidy.mixers.dummy - :synopsis: Dummy mixer for testing - :members: - - -:mod:`mopidy.mixers.gstreamer_software` -- Software mixer for all platforms -=========================================================================== - -.. inheritance-diagram:: mopidy.mixers.gstreamer_software - -.. automodule:: mopidy.mixers.gstreamer_software - :synopsis: Software mixer for all platforms - :members: - - -:mod:`mopidy.mixers.osa` -- Osa mixer for OS X -============================================== - -.. inheritance-diagram:: mopidy.mixers.osa - -.. automodule:: mopidy.mixers.osa - :synopsis: Osa mixer for OS X - :members: - - -:mod:`mopidy.mixers.nad` -- Hardware mixer for NAD amplifiers -============================================================= - -.. inheritance-diagram:: mopidy.mixers.nad - -.. automodule:: mopidy.mixers.nad - :synopsis: Hardware mixer for NAD amplifiers - :members: +* :mod:`mopidy.mixers.alsa` +* :mod:`mopidy.mixers.denon` +* :mod:`mopidy.mixers.dummy` +* :mod:`mopidy.mixers.gstreamer_software` +* :mod:`mopidy.mixers.osa` +* :mod:`mopidy.mixers.nad` diff --git a/docs/api/outputs.rst b/docs/api/outputs.rst index 8f4e33c0..d8c2932e 100644 --- a/docs/api/outputs.rst +++ b/docs/api/outputs.rst @@ -12,11 +12,7 @@ A stable output API is not available yet, as we've only implemented a single output module. -:mod:`mopidy.outputs.gstreamer` -- GStreamer output for all platforms -===================================================================== +Output implementations +====================== -.. inheritance-diagram:: mopidy.outputs.gstreamer - -.. automodule:: mopidy.outputs.gstreamer - :synopsis: GStreamer output for all platforms - :members: +* :mod:`mopidy.outputs.gstreamer` diff --git a/docs/index.rst b/docs/index.rst index f53373dc..09029a4f 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -21,6 +21,7 @@ Reference documentation :maxdepth: 3 api/index + modules/index Development documentation ========================= diff --git a/docs/api/backends/dummy.rst b/docs/modules/backends/dummy.rst similarity index 100% rename from docs/api/backends/dummy.rst rename to docs/modules/backends/dummy.rst diff --git a/docs/api/backends/libspotify.rst b/docs/modules/backends/libspotify.rst similarity index 100% rename from docs/api/backends/libspotify.rst rename to docs/modules/backends/libspotify.rst diff --git a/docs/api/backends/local.rst b/docs/modules/backends/local.rst similarity index 100% rename from docs/api/backends/local.rst rename to docs/modules/backends/local.rst diff --git a/docs/api/frontends/lastfm.rst b/docs/modules/frontends/lastfm.rst similarity index 100% rename from docs/api/frontends/lastfm.rst rename to docs/modules/frontends/lastfm.rst diff --git a/docs/api/frontends/mpd.rst b/docs/modules/frontends/mpd.rst similarity index 100% rename from docs/api/frontends/mpd.rst rename to docs/modules/frontends/mpd.rst diff --git a/docs/modules/index.rst b/docs/modules/index.rst new file mode 100644 index 00000000..44da0028 --- /dev/null +++ b/docs/modules/index.rst @@ -0,0 +1,8 @@ +**************** +Module reference +**************** + +.. toctree:: + :glob: + + ** diff --git a/docs/modules/mixers/alsa.rst b/docs/modules/mixers/alsa.rst new file mode 100644 index 00000000..05f429eb --- /dev/null +++ b/docs/modules/mixers/alsa.rst @@ -0,0 +1,9 @@ +************************************************* +:mod:`mopidy.mixers.alsa` -- ALSA mixer for Linux +************************************************* + +.. inheritance-diagram:: mopidy.mixers.alsa + +.. automodule:: mopidy.mixers.alsa + :synopsis: ALSA mixer for Linux + :members: diff --git a/docs/modules/mixers/denon.rst b/docs/modules/mixers/denon.rst new file mode 100644 index 00000000..ac944ccc --- /dev/null +++ b/docs/modules/mixers/denon.rst @@ -0,0 +1,9 @@ +***************************************************************** +:mod:`mopidy.mixers.denon` -- Hardware mixer for Denon amplifiers +***************************************************************** + +.. inheritance-diagram:: mopidy.mixers.denon + +.. automodule:: mopidy.mixers.denon + :synopsis: Hardware mixer for Denon amplifiers + :members: diff --git a/docs/modules/mixers/dummy.rst b/docs/modules/mixers/dummy.rst new file mode 100644 index 00000000..6665f949 --- /dev/null +++ b/docs/modules/mixers/dummy.rst @@ -0,0 +1,9 @@ +***************************************************** +:mod:`mopidy.mixers.dummy` -- Dummy mixer for testing +***************************************************** + +.. inheritance-diagram:: mopidy.mixers.dummy + +.. automodule:: mopidy.mixers.dummy + :synopsis: Dummy mixer for testing + :members: diff --git a/docs/modules/mixers/gstreamer_software.rst b/docs/modules/mixers/gstreamer_software.rst new file mode 100644 index 00000000..ef8cc310 --- /dev/null +++ b/docs/modules/mixers/gstreamer_software.rst @@ -0,0 +1,9 @@ +*************************************************************************** +:mod:`mopidy.mixers.gstreamer_software` -- Software mixer for all platforms +*************************************************************************** + +.. inheritance-diagram:: mopidy.mixers.gstreamer_software + +.. automodule:: mopidy.mixers.gstreamer_software + :synopsis: Software mixer for all platforms + :members: diff --git a/docs/modules/mixers/nad.rst b/docs/modules/mixers/nad.rst new file mode 100644 index 00000000..d441b3fd --- /dev/null +++ b/docs/modules/mixers/nad.rst @@ -0,0 +1,9 @@ +************************************************************* +:mod:`mopidy.mixers.nad` -- Hardware mixer for NAD amplifiers +************************************************************* + +.. inheritance-diagram:: mopidy.mixers.nad + +.. automodule:: mopidy.mixers.nad + :synopsis: Hardware mixer for NAD amplifiers + :members: diff --git a/docs/modules/mixers/osa.rst b/docs/modules/mixers/osa.rst new file mode 100644 index 00000000..14bf9a49 --- /dev/null +++ b/docs/modules/mixers/osa.rst @@ -0,0 +1,9 @@ +********************************************** +:mod:`mopidy.mixers.osa` -- Osa mixer for OS X +********************************************** + +.. inheritance-diagram:: mopidy.mixers.osa + +.. automodule:: mopidy.mixers.osa + :synopsis: Osa mixer for OS X + :members: diff --git a/docs/modules/outputs/gstreamer.rst b/docs/modules/outputs/gstreamer.rst new file mode 100644 index 00000000..69c77dad --- /dev/null +++ b/docs/modules/outputs/gstreamer.rst @@ -0,0 +1,9 @@ +********************************************************************* +:mod:`mopidy.outputs.gstreamer` -- GStreamer output for all platforms +********************************************************************* + +.. inheritance-diagram:: mopidy.outputs.gstreamer + +.. automodule:: mopidy.outputs.gstreamer + :synopsis: GStreamer output for all platforms + :members: From 69fbe82b56820b179862762ee3eb4b0caf46766a Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 31 Oct 2010 02:28:56 +0100 Subject: [PATCH 6/9] Update Sphinx Makefile with new targets --- docs/Makefile | 130 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 78 insertions(+), 52 deletions(-) diff --git a/docs/Makefile b/docs/Makefile index 4ad8691e..6a3272f4 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -4,101 +4,127 @@ # You can set these variables from the command line. SPHINXOPTS = SPHINXBUILD = sphinx-build -PAPER = +PAPER = +BUILDDIR = _build # Internal variables. PAPEROPT_a4 = -D latex_paper_size=a4 PAPEROPT_letter = -D latex_paper_size=letter -ALLSPHINXOPTS = -d _build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . -.PHONY: help clean html dirhtml pickle json htmlhelp qthelp latex changes linkcheck doctest +.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest help: @echo "Please use \`make ' where is one of" - @echo " html to make standalone HTML files" - @echo " dirhtml to make HTML files named index.html in directories" - @echo " pickle to make pickle files" - @echo " json to make JSON files" - @echo " htmlhelp to make HTML files and a HTML help project" - @echo " qthelp to make HTML files and a qthelp project" - @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" - @echo " changes to make an overview of all changed/added/deprecated items" - @echo " linkcheck to check all external links for integrity" - @echo " doctest to run all doctests embedded in the documentation (if enabled)" + @echo " html to make standalone HTML files" + @echo " dirhtml to make HTML files named index.html in directories" + @echo " singlehtml to make a single large HTML file" + @echo " pickle to make pickle files" + @echo " json to make JSON files" + @echo " htmlhelp to make HTML files and a HTML help project" + @echo " qthelp to make HTML files and a qthelp project" + @echo " devhelp to make HTML files and a Devhelp project" + @echo " epub to make an epub" + @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" + @echo " latexpdf to make LaTeX files and run them through pdflatex" + @echo " text to make text files" + @echo " man to make manual pages" + @echo " changes to make an overview of all changed/added/deprecated items" + @echo " linkcheck to check all external links for integrity" + @echo " doctest to run all doctests embedded in the documentation (if enabled)" clean: - -rm -rf _build/* + -rm -rf $(BUILDDIR)/* html: - $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) _build/html + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html @echo - @echo "Build finished. The HTML pages are in _build/html." + @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." dirhtml: - $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) _build/dirhtml + $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml @echo - @echo "Build finished. The HTML pages are in _build/dirhtml." + @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." + +singlehtml: + $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml + @echo + @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." pickle: - $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) _build/pickle + $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle @echo @echo "Build finished; now you can process the pickle files." json: - $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) _build/json + $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json @echo @echo "Build finished; now you can process the JSON files." htmlhelp: - $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) _build/htmlhelp + $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp @echo @echo "Build finished; now you can run HTML Help Workshop with the" \ - ".hhp project file in _build/htmlhelp." + ".hhp project file in $(BUILDDIR)/htmlhelp." qthelp: - $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) _build/qthelp + $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp @echo @echo "Build finished; now you can run "qcollectiongenerator" with the" \ - ".qhcp project file in _build/qthelp, like this:" - @echo "# qcollectiongenerator _build/qthelp/Mopidy.qhcp" + ".qhcp project file in $(BUILDDIR)/qthelp, like this:" + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/Mopidy.qhcp" @echo "To view the help file:" - @echo "# assistant -collectionFile _build/qthelp/Mopidy.qhc" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Mopidy.qhc" + +devhelp: + $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp + @echo + @echo "Build finished." + @echo "To view the help file:" + @echo "# mkdir -p $$HOME/.local/share/devhelp/Mopidy" + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Mopidy" + @echo "# devhelp" + +epub: + $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub + @echo + @echo "Build finished. The epub file is in $(BUILDDIR)/epub." latex: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) _build/latex + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo - @echo "Build finished; the LaTeX files are in _build/latex." - @echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \ - "run these through (pdf)latex." + @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." + @echo "Run \`make' in that directory to run these through (pdf)latex" \ + "(use \`make latexpdf' here to do that automatically)." + +latexpdf: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through pdflatex..." + make -C $(BUILDDIR)/latex all-pdf + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +text: + $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text + @echo + @echo "Build finished. The text files are in $(BUILDDIR)/text." + +man: + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man + @echo + @echo "Build finished. The manual pages are in $(BUILDDIR)/man." changes: - $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) _build/changes + $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes @echo - @echo "The overview file is in _build/changes." + @echo "The overview file is in $(BUILDDIR)/changes." linkcheck: - $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) _build/linkcheck + $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck @echo @echo "Link check complete; look for any errors in the above output " \ - "or in _build/linkcheck/output.txt." + "or in $(BUILDDIR)/linkcheck/output.txt." doctest: - $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) _build/doctest + $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest @echo "Testing of doctests in the sources finished, look at the " \ - "results in _build/doctest/output.txt." - -public: clean dirhtml - rm -rf /tmp/mopidy-html && cp -r _build/dirhtml /tmp/mopidy-html - git stash save - cd .. && \ - git checkout gh-pages && \ - git pull && \ - rm -r * && \ - cp -r /tmp/mopidy-html/* . && \ - mv _sources sources && \ - (find . -type f | xargs sed -i -e 's/_sources/sources/g') && \ - mv _static static && \ - (find . -type f | xargs sed -i -e 's/_static/static/g') && \ - if [ -d _images ]; then mv _images images; fi && \ - (find . -type f | xargs sed -i -e 's/_images/images/g') && \ - git add * + "results in $(BUILDDIR)/doctest/output.txt." From a34532171e48cc3c4537f55ddaea61da7757ff43 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 31 Oct 2010 03:17:29 +0100 Subject: [PATCH 7/9] docs: Update roadmap --- docs/development/roadmap.rst | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/docs/development/roadmap.rst b/docs/development/roadmap.rst index 645cbd30..c88ecdf0 100644 --- a/docs/development/roadmap.rst +++ b/docs/development/roadmap.rst @@ -14,11 +14,13 @@ release. Possible targets for the next version ===================================== -- Reintroduce support for OS X. See :issue:`14` for details. -- Support for using multiple Mopidy backends simultaneously. Should make it - possible to have both Spotify tracks and local tracks in the same playlist. +- Reintroduce support for OS X. See :issue:`25` for details. +- **[WIP: feature/multi-backend]** Support for using multiple Mopidy backends + simultaneously. Should make it possible to have both Spotify tracks and local + tracks in the same playlist. - MPD frontend: + - **[WIP: feature/mpd-password]** Password authentication. - ``idle`` support. - Spotify backend: @@ -30,10 +32,10 @@ Possible targets for the next version - Local backend: - Better library support. - - A script for creating a tag cache. + - **[DONE: v0.3]** A script for creating a tag cache. - An alternative to tag cache for caching metadata, i.e. Sqlite. -- **[DONE]** Last.fm scrobbling. +- **[DONE: v0.2]** Last.fm scrobbling. Stuff we want to do, but not right now, and maybe never @@ -52,7 +54,8 @@ Stuff we want to do, but not right now, and maybe never - Compatability: - - Run frontend tests against a real MPD server to ensure we are in sync. + - **[WIP: feature/blackbox-testing]** Run frontend tests against a real MPD + server to ensure we are in sync. - Backends: @@ -64,7 +67,7 @@ Stuff we want to do, but not right now, and maybe never - Publish the server's presence to the network using `Zeroconf `_/Avahi. - - D-Bus/`MPRIS `_ + - **[WIP: feature/mpris-frontend]** D-Bus/`MPRIS `_ - REST/JSON web service with a jQuery client as example application. Maybe based upon `Tornado `_ and `jQuery Mobile `_. From 5442fc246356323792e6effa53e505e1568e579b Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 31 Oct 2010 14:22:53 +0100 Subject: [PATCH 8/9] Add Debian packaging support --- debian/TODO | 14 +++++++++++++ debian/changelog | 5 +++++ debian/compat | 1 + debian/control | 22 +++++++++++++++++++++ debian/copyright | 38 ++++++++++++++++++++++++++++++++++++ debian/docs | 2 ++ debian/menu | 2 ++ debian/pyversions | 1 + debian/rules | 27 +++++++++++++++++++++++++ debian/source/format | 1 + debian/watch | 2 ++ docs/development/roadmap.rst | 8 ++++---- 12 files changed, 119 insertions(+), 4 deletions(-) create mode 100644 debian/TODO create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/docs create mode 100644 debian/menu create mode 100644 debian/pyversions create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 debian/watch diff --git a/debian/TODO b/debian/TODO new file mode 100644 index 00000000..51bab1ce --- /dev/null +++ b/debian/TODO @@ -0,0 +1,14 @@ +To do for Mopidy's Debian packaging +=================================== + +- Install data/mopidy.desktop into /usr/share/applications/ +- Add manpages for all commands. Build the manpages with Sphinx +- Make init script run Mopidy as a daemon +- Make init script run Mopidy with it's own user +- Add support for reading settings from /etc/mopidy/settings.py +- Log to /var/log +- Cache files in /var/cache +- Package pyspotify and add it to Recommends +- Package pylast and add it to Recommends +- Create GPG key for signing the package +- Host the packages at PPA or apt.mopidy.com diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 00000000..a04f2e78 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +mopidy (0.2.0-1) unstable; urgency=low + + * Initial release + + -- Stein Magnus Jodal Sun, 31 Oct 2010 13:07:04 +0100 diff --git a/debian/compat b/debian/compat new file mode 100644 index 00000000..7f8f011e --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +7 diff --git a/debian/control b/debian/control new file mode 100644 index 00000000..c2755717 --- /dev/null +++ b/debian/control @@ -0,0 +1,22 @@ +Source: mopidy +Section: sound +Priority: optional +Maintainer: Stein Magnus Jodal +Build-Depends: debhelper (>= 7.0.50~), python-support, python (>= 2.6), + python-sphinx (>= 1.0), python-pygraphviz +Standards-Version: 3.9.1 +Homepage: http://www.mopidy.com/ +Vcs-Git: git://github.com/jodal/mopidy.git +Vcs-Browser: http://github.com/jodal/mopidy + +Package: mopidy +Architecture: all +Depends: ${misc:Depends}, ${python:Depends}, python-gst0.10 +Recommends: gstreamer0.10-plugins-good, gstreamer0.10-plugins-ugly +Suggests: python-alsaaudio (>= 0.2), python-serial +Description: music server with MPD client support + Mopidy is a music server which can play music from Spotify or from your + local hard drive. To search for music in Spotify’s vast archive, manage + playlists, and play music, you can use most MPD clients. MPD clients are + available for most platforms, including Windows, Mac OS X, Linux, and + iPhone and Android phones. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 00000000..c29416d6 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,38 @@ +This work was packaged for Debian by: + + Stein Magnus Jodal on Sun, 31 Oct 2010 09:50:28 +0100 + +It was downloaded from: + + http://pypi.python.org/packages/source/M/Mopidy/Mopidy-0.2.0.tar.gz + +Upstream Author(s): + + Stein Magnus Jodal + +Copyright: + + Copyright 2009-2010 Stein Magnus Jodal and contributors + +License: + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. See the License for the specific language governing + permissions and limitations under the License. + +On Debian systems, the complete text of the Apache version 2.0 license +can be found in "/usr/share/common-licenses/Apache-2.0". + +The Debian packaging is: + + Copyright 2010 Stein Magnus Jodal + +and is licensed under the Apache License, Version 2.0, see above. diff --git a/debian/docs b/debian/docs new file mode 100644 index 00000000..a4b46448 --- /dev/null +++ b/debian/docs @@ -0,0 +1,2 @@ +README.rst +docs/_build/html/ diff --git a/debian/menu b/debian/menu new file mode 100644 index 00000000..6376a81e --- /dev/null +++ b/debian/menu @@ -0,0 +1,2 @@ +?package(mopidy):needs="text" section="Applications/Sound"\ + title="Mopidy" command="/usr/bin/mopidy" diff --git a/debian/pyversions b/debian/pyversions new file mode 100644 index 00000000..0c043f18 --- /dev/null +++ b/debian/pyversions @@ -0,0 +1 @@ +2.6- diff --git a/debian/rules b/debian/rules new file mode 100755 index 00000000..926a81b1 --- /dev/null +++ b/debian/rules @@ -0,0 +1,27 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +%: + dh $@ + +override_dh_clean: + make -C docs/ clean + dh_clean + +override_dh_installchangelogs: + dh_installchangelogs docs/changes.rst + +override_dh_installdocs: + make -C docs/ clean html + dh_installdocs + +.PHONY: override_dh_clean override_dh_installchangelogs \ + override_dh_installdocs override_dh_installinit diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 00000000..163aaf8d --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/watch b/debian/watch new file mode 100644 index 00000000..3d4d3a41 --- /dev/null +++ b/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://pypi.python.org/packages/source/M/Mopidy/Mopidy-(.*)\.tar\.gz diff --git a/docs/development/roadmap.rst b/docs/development/roadmap.rst index c88ecdf0..2b0cf2ba 100644 --- a/docs/development/roadmap.rst +++ b/docs/development/roadmap.rst @@ -47,10 +47,10 @@ Stuff we want to do, but not right now, and maybe never recipies for all our dependencies and Mopidy itself to make OS X installation a breeze. See `Homebrew's issue #1612 `_. - - Create `Debian packages `_ of all - our dependencies and Mopidy itself (hosted in our own Debian repo until we - get stuff into the various distros) to make Debian/Ubuntu installation a - breeze. + - **[WIP]** Create `Debian packages + `_ of all our dependencies and + Mopidy itself (hosted in our own Debian repo until we get stuff into the + various distros) to make Debian/Ubuntu installation a breeze. - Compatability: From 15ccb16e5d2ff4dcaa70d41d1721de4b38d4e1fa Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 31 Oct 2010 14:23:52 +0100 Subject: [PATCH 9/9] Fix typo --- debian/TODO | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/TODO b/debian/TODO index 51bab1ce..4551dc55 100644 --- a/debian/TODO +++ b/debian/TODO @@ -4,7 +4,7 @@ To do for Mopidy's Debian packaging - Install data/mopidy.desktop into /usr/share/applications/ - Add manpages for all commands. Build the manpages with Sphinx - Make init script run Mopidy as a daemon -- Make init script run Mopidy with it's own user +- Make init script run Mopidy with its own user - Add support for reading settings from /etc/mopidy/settings.py - Log to /var/log - Cache files in /var/cache