tinycm annotate tinycm @ rev 83
Add forum plugin (old code, needs work, for testing)
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Sat Feb 11 17:34:44 2017 +0100 (2017-02-11) |
parents | 4e8dfb19f2a7 |
children | 95673a3de4e4 |
rev | line source |
---|---|
pankso@67 | 1 #!/bin/sh |
pankso@67 | 2 # |
pankso@67 | 3 # TinyCM Command line tool. Dont use libtaz since TinyCM can run on any |
pankso@67 | 4 # Linux/BSD distribution providing a web server with CGI SHell support |
pankso@67 | 5 # such as LightTPD. |
pankso@67 | 6 # |
pankso@83 | 7 # Copyright (C) 2014-2017 SliTaz GNU/Linux - BSD License |
pankso@67 | 8 # |
pankso@67 | 9 |
pankso@67 | 10 list="tinycm.list" |
pankso@67 | 11 path="${2%/}" |
pankso@67 | 12 hgurl="http://hg.slitaz.org/tinycm" |
pankso@67 | 13 dlurl="$hgurl/archive/tip.tar.bz2" |
pankso@67 | 14 |
pankso@67 | 15 # |
pankso@67 | 16 # Functions |
pankso@67 | 17 # |
pankso@67 | 18 |
pankso@67 | 19 boldify() { |
pankso@67 | 20 echo -e "\\033[1m$@\\033[0m" |
pankso@67 | 21 } |
pankso@67 | 22 |
pankso@67 | 23 error() { |
pankso@67 | 24 echo -e "\\033[1;31m$@\\033[0;39m" |
pankso@67 | 25 } |
pankso@67 | 26 |
pankso@67 | 27 usage() { |
pankso@67 | 28 cat << EOT |
pankso@67 | 29 |
pankso@67 | 30 $(boldify "Usage:") $(basename $0) [command] [path|list] |
pankso@67 | 31 |
pankso@67 | 32 $(boldify "Commands:") |
pankso@67 | 33 inst Install TinyCM and set permissions |
paul@71 | 34 up Update one or a list of TinyCM installations |
pankso@67 | 35 |
pankso@67 | 36 EOT |
pankso@67 | 37 } |
pankso@67 | 38 |
pankso@67 | 39 check_source() { |
pankso@67 | 40 if [ ! -f "Makefile" ] || [ ! -f "index.cgi" ]; then |
pankso@67 | 41 error "No source found" && exit 1 |
pankso@67 | 42 fi |
pankso@67 | 43 } |
pankso@67 | 44 |
pankso@67 | 45 check_path() { |
pankso@67 | 46 if [ ! "$path" ]; then |
pankso@67 | 47 error "Missing path argument" && exit 1 |
pankso@67 | 48 fi |
pankso@67 | 49 } |
pankso@67 | 50 |
pankso@67 | 51 check_tiny() { |
pankso@67 | 52 if [ ! -f "$path/index.cgi" ] || [ ! -d "$path/lib" ]; then |
pankso@67 | 53 error "Missing TinyCM in: $path" |
pankso@67 | 54 continue |
pankso@67 | 55 fi |
pankso@67 | 56 } |
pankso@67 | 57 |
pankso@67 | 58 # |
pankso@67 | 59 # Commands |
pankso@67 | 60 # |
pankso@67 | 61 |
pankso@67 | 62 case "$1" in |
pankso@67 | 63 inst) |
pankso@67 | 64 check_source |
pankso@67 | 65 check_path |
pankso@67 | 66 echo "" |
pankso@67 | 67 boldify "Installing TinyCM..." |
pankso@67 | 68 echo "Path:"; echo "$path" |
pankso@67 | 69 mkdir -p $path |
pankso@67 | 70 for file in index.cgi style.css images lib plugins |
pankso@67 | 71 do |
pankso@83 | 72 echo "* Installing: $file" |
pankso@67 | 73 cp -a $file $path |
pankso@67 | 74 done |
pankso@67 | 75 if [ $(id) == 0 ]; then |
pankso@67 | 76 echo root |
pankso@67 | 77 else |
pankso@67 | 78 echo user |
pankso@67 | 79 fi |
pankso@67 | 80 echo "" ;; |
pankso@67 | 81 up) |
pankso@67 | 82 check_source |
pankso@67 | 83 if [ ! "$path" ] && [ ! -f "$list" ]; then |
pankso@67 | 84 error "Missing path argument or paths list: $list" |
pankso@67 | 85 exit 1 |
pankso@67 | 86 fi |
pankso@67 | 87 echo "" |
paul@71 | 88 boldify $(echo "Updating TinyCM installs...") |
pankso@67 | 89 |
pankso@75 | 90 # File liste of args |
pankso@75 | 91 if [ -f "$path" ]; then |
pankso@75 | 92 paths="$(cat ${list})" |
pankso@75 | 93 else |
pankso@67 | 94 paths="$path" |
pankso@67 | 95 fi |
pankso@67 | 96 |
pankso@67 | 97 for path in ${paths} |
pankso@67 | 98 do |
pankso@67 | 99 check_tiny |
pankso@67 | 100 echo "Updating: $path" |
pankso@67 | 101 cp -a index.cgi $path |
pankso@67 | 102 cp -a lib/functions.js $path/lib |
pankso@67 | 103 cp -a lib/jseditor.html $path/lib |
pankso@67 | 104 for plug in $(ls plugins) |
pankso@67 | 105 do |
pankso@67 | 106 if [ -d "$path/plugins/$plug" ]; then |
pankso@77 | 107 echo "* Updating plugin: $plug" |
pankso@67 | 108 cp -a plugins/$plug $path/plugins |
pankso@67 | 109 fi |
pankso@67 | 110 done |
pankso@67 | 111 done && echo "" ;; |
pankso@67 | 112 *) |
pankso@67 | 113 usage ;; |
pankso@67 | 114 esac |
pankso@67 | 115 |
pankso@67 | 116 exit 0 |