summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorzml2015-06-13 22:40:40 -0700
committerzml2015-06-13 22:47:51 -0700
commit40f2264a55a84be1ad810d7c7532b1fb973dc51d (patch)
tree95e4691cd7de494ff5b23183e37670b91019bb0b
downloadaur-40f2264a55a84be1ad810d7c7532b1fb973dc51d.tar.gz
Initial commit of base16 package and supporting scripts
-rw-r--r--.SRCINFO23
-rw-r--r--.gitignore4
-rw-r--r--PKGBUILD55
-rwxr-xr-xbase16-list-schemes4
-rwxr-xr-xbase16-template-for67
-rw-r--r--base16.default5
6 files changed, 158 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..e9be745603c7
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,23 @@
+pkgbase = base16-git
+ pkgdesc = A series of color schemes
+ pkgver = r492.d2773ce
+ pkgrel = 1
+ url = http://chriskempson.github.io/base16
+ arch = any
+ license = MIT
+ makedepends = git
+ makedepends = ruby
+ provides = base16
+ conflicts = base16
+ options = !strip
+ source = base16::git+https://github.com/chriskempson/base16-builder.git
+ source = base16-template-for
+ source = base16-list-schemes
+ source = base16.default
+ sha256sums = SKIP
+ sha256sums = c1008db7487d261306db1cd20ba6258a1862b899fefaf7e6fd623ca58f31b4ad
+ sha256sums = ebfd99c08bb03ce3029d3b792ffbee63b861300ab1aafb07e0a80ca380df0607
+ sha256sums = 32c165ee997851934f5d254887c3e9b176ea088675edd492c5005d441c63a31c
+
+pkgname = base16-git
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..8ea4edc2b4dd
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*.tar.xz
+pkg/
+src/
+base16/
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..e5e8831dc37d
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,55 @@
+# Maintainer: zml <zml@aoeu.xyz>
+pkgname=base16-git # '-bzr', '-git', '-hg' or '-svn'
+pkgver=r492.d2773ce
+pkgrel=1
+pkgdesc="Base16 provides carefully chosen syntax highlighting and a default set of sixteen colors suitable for a wide range of applications. Base16 is both a color scheme and a template."
+arch=('any')
+url="http://chriskempson.github.io/base16"
+license=('MIT')
+makedepends=('git' 'ruby') # 'bzr', 'git', 'mercurial' or 'subversion'
+provides=("${pkgname%-git}")
+conflicts=("${pkgname%-git}")
+options=('!strip')
+source=('base16::git+https://github.com/chriskempson/base16-builder.git'
+ 'base16-template-for'
+ 'base16-list-schemes'
+ 'base16.default')
+sha256sums=('SKIP'
+ 'c1008db7487d261306db1cd20ba6258a1862b899fefaf7e6fd623ca58f31b4ad'
+ 'ebfd99c08bb03ce3029d3b792ffbee63b861300ab1aafb07e0a80ca380df0607'
+ '54d9c2b1043a6b408fa5ef22aad435eb0178f773f8d616aebf2795bd87bb11b6')
+
+pkgver() {
+ cd "$srcdir/${pkgname%-git}"
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
+}
+
+prepare() {
+ cd "$srcdir/${pkgname%-git}"
+ [ ! -e "./index" ] || rm index
+}
+
+build() {
+ cd "$srcdir/${pkgname%-git}"
+ ./base16
+
+ for i in schemes/*; do
+ echo "$(basename -s .yml $i)" >> index
+ done
+}
+
+package() {
+ cd "$srcdir/${pkgname%-git}"
+
+ # Utilities
+ install -m 644 -D ../base16.default $pkgdir/etc/default/base16
+ install -m 555 -D ../base16-template-for $pkgdir/usr/bin/base16-template-for
+ install -m 555 -D ../base16-list-schemes $pkgdir/usr/bin/base16-list-schemes
+ install -m 444 -D LICENSE.md $pkgdir/usr/share/licenses/${pkgname%-git}/LICENSE
+
+ # Color scheme and index
+ install -m 555 -D -d $pkgdir/usr/share/base16
+ install -m 444 index $pkgdir/usr/share/base16/index
+ cp -R output/* $pkgdir/usr/share/base16
+}
+
diff --git a/base16-list-schemes b/base16-list-schemes
new file mode 100755
index 000000000000..70eade422e4f
--- /dev/null
+++ b/base16-list-schemes
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+echo "Available base16 templates:"
+cat /usr/share/base16/index
diff --git a/base16-template-for b/base16-template-for
new file mode 100755
index 000000000000..5d2d2396c69f
--- /dev/null
+++ b/base16-template-for
@@ -0,0 +1,67 @@
+#!/bin/sh
+
+THEME='tomorrow'
+VARIANT='dark'
+
+CONFIG_LOCS="/etc/default/base16"
+. /etc/default/base16
+
+if [ -e "$HOME/.config/base16.conf" ]; then
+ . $HOME/.config/base16.conf
+ CONFIG_LOCS+=" $HOME/.config/base16.conf"
+fi
+
+if [ -n "$XDG_CONFIG_HOME" ] && [ -e "$XDG_CONFIG_HOME/base16.conf" ]; then
+ . $XDG_CONFIG_HOME/base16.conf
+ CONFIG_LOCS+="$XDG_CONFIG_HOME/base16.conf"
+fi
+
+BASEDIR="/usr/share/base16"
+
+# Perform validity checks on themes
+if [ -z $(cat $BASEDIR/index | grep $THEME) ]; then
+ echo "Theme $THEME does not exist! Check one of: $CONFIG_LOCS"
+ exit 2
+fi
+
+case "$VARIANT" in
+ light|dark)
+ ;;
+ *)
+ echo "Variant must be either light or dark! You provided $VARIANT"
+ exit 2
+ ;;
+esac
+
+
+# Now we get to the actual input
+if [ $# -lt 2 ]; then
+ echo "Not enough arguments! Usage: $0 <template> <extension>"
+ exit 1
+fi
+
+TEMPLATE=$1
+EXTENSION="$2"
+
+if [ ! -d "$BASEDIR/$TEMPLATE" ]; then
+ echo "Template $TEMPLATE is not valid. Valid templates are ${/opt/base16/*}"
+ exit 2
+fi
+
+FILE="$BASEDIR/$TEMPLATE/base16-${THEME}.${VARIANT}.${EXTENSION}"
+
+# Handle some formats where the editor controls variant, like vim. This might warrant extra handling in the future (for editor configs?)
+NOVARIANT_FILE="$BASEDIR/$TEMPLATE/base16-$THEME.$EXTENSION"
+
+if [ ! -e "$FILE" ]; then
+ if [ -e "$NOVARIANT_FILE" ]; then
+ echo $NOVARIANT_FILE
+ else
+ echo "File $FILE does not exist. Check theme, variant, and extension!"
+ exit 2
+ fi
+else
+ echo $FILE
+fi
+
+
diff --git a/base16.default b/base16.default
new file mode 100644
index 000000000000..9b5c9aa87fa2
--- /dev/null
+++ b/base16.default
@@ -0,0 +1,5 @@
+# The default theme to use for an application
+THEME="default"
+
+# The variant of the theme to use (light or dark)
+VARIANT="dark"