diff options
Diffstat (limited to 'debian')
4 files changed, 199 insertions, 22 deletions
diff --git a/debian/patches/0001-Add-an-install_bs3-command.patch b/debian/patches/0001-Add-an-install_bs3-command.patch new file mode 100644 index 0000000..2a12989 --- /dev/null +++ b/debian/patches/0001-Add-an-install_bs3-command.patch @@ -0,0 +1,180 @@ +From d5075664c8ed6ca24a4f020484d60b2e22040d11 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Chris=20=E2=80=9CKwpolska=E2=80=9D=20Warrick?= + <kwpolska@gmail.com> +Date: Thu, 23 Jan 2014 19:07:26 +0100 +Subject: [PATCH] Add an install_bs3 command for Debian. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Chris “Kwpolska” Warrick <kwpolska@gmail.com> +--- + nikola/conf.py.in | 2 + + nikola/plugins/command/init.py | 2 +- + nikola/plugins/command/install_bs3.plugin | 10 +++ + nikola/plugins/command/install_bs3.py | 110 ++++++++++++++++++++++++++++++ + 4 files changed, 123 insertions(+), 1 deletion(-) + create mode 100644 nikola/plugins/command/install_bs3.plugin + create mode 100644 nikola/plugins/command/install_bs3.py + +diff --git a/nikola/conf.py.in b/nikola/conf.py.in +index d487ed1..4834468 100644 +--- a/nikola/conf.py.in ++++ b/nikola/conf.py.in +@@ -285,6 +285,8 @@ COMPILERS = ${COMPILERS} + # the main (the newest) index page (index.html) + + # Name of the theme to use. ++# WARNING: With this Nikola package, the bootstrap3 theme must be installed ++# separately. In order to do this, use: nikola install_bs3 + THEME = "${THEME}" + + # Color scheme to be used for code blocks. If your theme provides +diff --git a/nikola/plugins/command/init.py b/nikola/plugins/command/init.py +index 96caad8..dc5ca2d 100644 +--- a/nikola/plugins/command/init.py ++++ b/nikola/plugins/command/init.py +@@ -64,7 +64,7 @@ class CommandInit(Command): + 'BLOG_EMAIL': "joe@demo.site", + 'BLOG_DESCRIPTION': "This is a demo site for Nikola.", + 'DEFAULT_LANG': "en", +- 'THEME': 'bootstrap3', ++ 'THEME': 'bootstrap', + + 'POSTS': """( + ("posts/*.rst", "posts", "post.tmpl"), +diff --git a/nikola/plugins/command/install_bs3.plugin b/nikola/plugins/command/install_bs3.plugin +new file mode 100644 +index 0000000..1773a07 +--- /dev/null ++++ b/nikola/plugins/command/install_bs3.plugin +@@ -0,0 +1,10 @@ ++[Core] ++Name = install_bs3 ++Module = install_bs3 ++ ++[Documentation] ++Author = Roberto Alsina, Chris Warrick ++Version = 0.1 ++Website = http://getnikola.com ++Description = Install the bootstrap3 theme into the current site. ++ +diff --git a/nikola/plugins/command/install_bs3.py b/nikola/plugins/command/install_bs3.py +new file mode 100644 +index 0000000..4060aef +--- /dev/null ++++ b/nikola/plugins/command/install_bs3.py +@@ -0,0 +1,110 @@ ++# -*- coding: utf-8 -*- ++ ++# Copyright © 2012-2014 Roberto Alsina, Chris Warrick and others. ++ ++# Permission is hereby granted, free of charge, to any ++# person obtaining a copy of this software and associated ++# documentation files (the "Software"), to deal in the ++# Software without restriction, including without limitation ++# the rights to use, copy, modify, merge, publish, ++# distribute, sublicense, and/or sell copies of the ++# Software, and to permit persons to whom the Software is ++# furnished to do so, subject to the following conditions: ++# ++# The above copyright notice and this permission notice ++# shall be included in all copies or substantial portions of ++# the Software. ++# ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY ++# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE ++# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR ++# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS ++# OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR ++# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR ++# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ++# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ++ ++from __future__ import print_function ++import os ++import json ++import shutil ++from io import BytesIO ++ ++try: ++ import requests ++except ImportError: ++ requests = None # NOQA ++ ++from nikola.plugin_categories import Command ++from nikola import utils ++ ++LOGGER = utils.get_logger('install_theme', utils.STDERR_HANDLER) ++ ++ ++# Stolen from textwrap in Python 3.3.2. ++def indent(text, prefix, predicate=None): # NOQA ++ """Adds 'prefix' to the beginning of selected lines in 'text'. ++ ++ If 'predicate' is provided, 'prefix' will only be added to the lines ++ where 'predicate(line)' is True. If 'predicate' is not provided, ++ it will default to adding 'prefix' to all non-empty lines that do not ++ consist solely of whitespace characters. ++ """ ++ if predicate is None: ++ def predicate(line): ++ return line.strip() ++ ++ def prefixed_lines(): ++ for line in text.splitlines(True): ++ yield (prefix + line if predicate(line) else line) ++ return ''.join(prefixed_lines()) ++ ++ ++class CommandInstallThemeBS3(Command): ++ """Install a theme. Bootstrap 3, to be precise.""" ++ ++ name = "install_bs3" ++ doc_usage = "" ++ doc_purpose = "install bootstrap3 into the current site" ++ output_dir = 'themes' ++ cmd_options = [] ++ ++ def _execute(self, options, args): ++ """Install theme into current site.""" ++ if requests is None: ++ utils.req_missing(['requests'], 'install the bootstrap3 theme') ++ ++ url = 'http://themes.getnikola.com/bs3/v6.3.0/bs3.json' ++ name = 'bootstrap3' ++ ++ data = requests.get(url).text ++ data = json.loads(data) ++ installstatus = self.do_install(name, data) ++ if installstatus: ++ LOGGER.notice('Remember to set THEME="bootstrap3" in conf.py if you want to use it.') ++ ++ def do_install(self, name, data): ++ if name in data: ++ utils.makedirs(self.output_dir) ++ LOGGER.notice('Downloading: ' + data[name]) ++ zip_file = BytesIO() ++ zip_file.write(requests.get(data[name]).content) ++ LOGGER.notice('Extracting: {0} into themes'.format(name)) ++ utils.extract_all(zip_file) ++ dest_path = os.path.join('themes', name) ++ else: ++ try: ++ theme_path = utils.get_theme_path(name) ++ except: ++ LOGGER.error("Can't find theme " + name) ++ return False ++ ++ utils.makedirs(self.output_dir) ++ dest_path = os.path.join(self.output_dir, name) ++ if os.path.exists(dest_path): ++ LOGGER.error("{0} is already installed".format(name)) ++ return False ++ ++ LOGGER.notice('Copying {0} into themes'.format(theme_path)) ++ shutil.copytree(theme_path, dest_path) ++ return True +-- +1.8.5.3 + diff --git a/debian/patches/0001-Making-bootstrap-as-default-theme-not-bootstrap3.patch b/debian/patches/0001-Making-bootstrap-as-default-theme-not-bootstrap3.patch deleted file mode 100644 index 38f381e..0000000 --- a/debian/patches/0001-Making-bootstrap-as-default-theme-not-bootstrap3.patch +++ /dev/null @@ -1,21 +0,0 @@ -From: Agustin Henze <tin@sluc.org.ar> -Date: Mon, 18 Nov 2013 19:05:59 -0300 -Subject: Making bootstrap as default theme, not bootstrap3 - ---- - nikola/plugins/command/init.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/nikola/plugins/command/init.py b/nikola/plugins/command/init.py -index 1873ec4..59a27e0 100644 ---- a/nikola/plugins/command/init.py -+++ b/nikola/plugins/command/init.py -@@ -64,7 +64,7 @@ class CommandInit(Command): - 'BLOG_EMAIL': "joe@demo.site", - 'BLOG_DESCRIPTION': "This is a demo site for Nikola.", - 'DEFAULT_LANG': "en", -- 'THEME': 'bootstrap3', -+ 'THEME': 'bootstrap', - - 'POSTS': """( - ("posts/*.rst", "posts", "post.tmpl"), diff --git a/debian/patches/0002-Remove-jquery-version-of-bundles.patch b/debian/patches/0002-Remove-jquery-version-of-bundles.patch new file mode 100644 index 0000000..d018df9 --- /dev/null +++ b/debian/patches/0002-Remove-jquery-version-of-bundles.patch @@ -0,0 +1,18 @@ +From: Agustin Henze <tin@sluc.org.ar> +Date: Thu, 21 Nov 2013 08:33:15 -0300 +Subject: Remove jquery version of bundles + +--- + nikola/data/themes/bootstrap/bundles | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/nikola/data/themes/bootstrap/bundles b/nikola/data/themes/bootstrap/bundles +index 14124a3..089b036 100644 +--- a/nikola/data/themes/bootstrap/bundles ++++ b/nikola/data/themes/bootstrap/bundles +@@ -1,4 +1,4 @@ + assets/css/all-nocdn.css=bootstrap.css,bootstrap-responsive.css,rst.css,code.css,colorbox.css,theme.css,custom.css + assets/css/all.css=rst.css,code.css,colorbox.css,theme.css,custom.css +-assets/js/all-nocdn.js=jquery-1.10.2.min.js,bootstrap.min.js,jquery.colorbox-min.js ++assets/js/all-nocdn.js=jquery.min.js,bootstrap.min.js,jquery.colorbox-min.js + assets/js/all.js=jquery.colorbox-min.js diff --git a/debian/patches/series b/debian/patches/series index fe6bf15..d07eb8b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1,2 @@ -0001-Making-bootstrap-as-default-theme-not-bootstrap3.patch +0001-Add-an-install_bs3-command.patch 0002-Remove-jquery-version-of-bundles.patch |
