summaryrefslogtreecommitdiff
path: root/rvs/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'rvs/plugins')
-rw-r--r--rvs/plugins/filedata/commit.sh32
-rw-r--r--rvs/plugins/filedata/get.sh21
-rw-r--r--rvs/plugins/filedata/main.mk.in (renamed from rvs/plugins/repo/main.mk.in)49
-rw-r--r--rvs/plugins/filedata/plugin.conf.in4
-rw-r--r--rvs/plugins/files/commit.d.sh34
-rw-r--r--rvs/plugins/files/commit.f.sh31
-rw-r--r--rvs/plugins/files/commit.sh41
-rw-r--r--rvs/plugins/files/get.d.sh45
-rw-r--r--rvs/plugins/files/get.f.sh27
-rw-r--r--rvs/plugins/files/get.sh34
-rw-r--r--rvs/plugins/files/main.mk.in78
-rw-r--r--rvs/plugins/files/plugin.conf.in (renamed from rvs/plugins/repo/plugin.conf)4
-rw-r--r--rvs/plugins/files/stdio.sh66
-rw-r--r--rvs/plugins/repo/commit.d.sh36
-rw-r--r--rvs/plugins/repo/commit.f.sh33
-rw-r--r--rvs/plugins/repo/commit.sh55
-rw-r--r--rvs/plugins/repo/get.d.sh47
-rw-r--r--rvs/plugins/repo/get.f.sh29
-rw-r--r--rvs/plugins/repo/get.sh36
-rw-r--r--rvs/plugins/repo/stdio.sh68
-rw-r--r--rvs/plugins/users/commit.sh36
-rw-r--r--rvs/plugins/users/init.sh36
-rw-r--r--rvs/plugins/users/login.sh36
-rw-r--r--rvs/plugins/users/logout.sh36
-rw-r--r--rvs/plugins/users/main.mk.in45
-rw-r--r--rvs/plugins/users/mkuser.sh4
-rw-r--r--rvs/plugins/users/plugin.conf7
-rw-r--r--rvs/plugins/users/plugin.conf.in7
-rw-r--r--rvs/plugins/users/rmuser.sh36
-rw-r--r--rvs/plugins/users/stdio.sh38
30 files changed, 579 insertions, 472 deletions
diff --git a/rvs/plugins/filedata/commit.sh b/rvs/plugins/filedata/commit.sh
new file mode 100644
index 0000000..0f3b8d1
--- /dev/null
+++ b/rvs/plugins/filedata/commit.sh
@@ -0,0 +1,32 @@
+#!/bin/sh
+name='rvs filedata commit'
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+hash="`cat /dev/stdin`"
+file="$1"
+
+temp=`mktemp`
+echo "Hash: $hash" > "$temp"
+stat "$file" >> "$temp"
+
+meta=`sha1sum $temp | sed "s/ .*$//"`
+if [ ! -f "$REPO/@ID@/$hash" ]; then
+ install -m 644 -o $USER -g $USER -T "$temp" "$REPO/@ID@/$meta"
+fi
+echo "$meta"
+
diff --git a/rvs/plugins/filedata/get.sh b/rvs/plugins/filedata/get.sh
new file mode 100644
index 0000000..52dbe26
--- /dev/null
+++ b/rvs/plugins/filedata/get.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+name='rvs filedata get'
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+echo "yeah, this hasn't been coded yet, sorry!"
+
diff --git a/rvs/plugins/repo/main.mk.in b/rvs/plugins/filedata/main.mk.in
index 1ed4da6..1a04b33 100644
--- a/rvs/plugins/repo/main.mk.in
+++ b/rvs/plugins/filedata/main.mk.in
@@ -1,25 +1,24 @@
#!/usr/bin/make -f
-name=repo
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-export rvs ?= @name@
+name=filedata
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+rvs = @name@
+id = $(name)-$(ver)
# phony targets ####################################################
all : $(name)
@@ -68,6 +67,12 @@ $(myoutdir)/% : $(mysrcdir)/%.sh $(myoutdir)
-e 's/$bID@/$(subst /,\/,$(id))/g' \
$@
-$(libexecdir)/$(rvs) $(myoutdir) :
+plugin.conf : plugin.conf.in
+ $(SED) \
+ -e 's/$bname@/$(subst /,\/,$(name))/g' \
+ -e 's/$bver@/$(subst /,\/,$(ver))/g' \
+ $< > $@
+
+$(DESTDIR)$(libexecdir)/$(rvs) $(myoutdir) :
$(MKDIR) $@
diff --git a/rvs/plugins/filedata/plugin.conf.in b/rvs/plugins/filedata/plugin.conf.in
new file mode 100644
index 0000000..d7c834c
--- /dev/null
+++ b/rvs/plugins/filedata/plugin.conf.in
@@ -0,0 +1,4 @@
+# rvs @name@ plugins.conf
+# ver=@ver@
+commit:repo-0.9/commit
+get
diff --git a/rvs/plugins/files/commit.d.sh b/rvs/plugins/files/commit.d.sh
new file mode 100644
index 0000000..2b3f022
--- /dev/null
+++ b/rvs/plugins/files/commit.d.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+name='rvs files commit.d'
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+source "$libexecdir/@ID@/stdio"
+
+# commit.d DIRNAME
+dir="$1"
+tmp=`mktemp`
+
+cd "$dir"
+for file in *; do
+ hash=`"$RVS" commit "$file"`
+ echo "$file:$hash" >> "$tmp"
+done
+
+"$RVS" commit.f "$tmp"
+rm "$tmp"
+
diff --git a/rvs/plugins/files/commit.f.sh b/rvs/plugins/files/commit.f.sh
new file mode 100644
index 0000000..bbcbbe4
--- /dev/null
+++ b/rvs/plugins/files/commit.f.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+name='rvs files commit.f'
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+#source "$libexecdir/@ID@/stdio"
+
+# commit.f FILENAME
+file="$1"
+
+#hash=`md5sum $file | sed "s/ .*$//"`
+hash=`sha1sum $file | sed "s/ .*$//"`
+if [ ! -f "$REPO/@ID@/$hash" ]; then
+ install -m 644 -o $USER -g $USER -T "$file" "$REPO/@ID@/$hash"
+fi
+echo "$hash"
+
diff --git a/rvs/plugins/files/commit.sh b/rvs/plugins/files/commit.sh
new file mode 100644
index 0000000..32d3042
--- /dev/null
+++ b/rvs/plugins/files/commit.sh
@@ -0,0 +1,41 @@
+#!/bin/sh
+name='rvs files commit'
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+source "$libexecdir/@ID@/stdio"
+
+# commit FILE
+file=${1-.}
+
+if [ ! -e $file ]; then error "file \`$file' does not exist";
+# START file type list
+elif [ -L $file ]; then type='l'; # symbolic link
+elif [ -b $file ]; then type='b'; # block (buffered) special
+elif [ -c $file ]; then type='c'; # character (unbuffered) special
+elif [ -d $file ]; then type='d'; # directory
+elif [ -p $file ]; then type='p'; # named pipe (FIFO)
+elif [ -f $file ]; then type='f'; # regular file
+elif [ -s $file ]; then type='s'; # socket
+#elif [ -D $file ]; then type='D'; # door (Solaris only)
+# END file type list
+else error "could not identify file type of \`$file'"
+fi
+
+out "+$type `pwd`/$file"
+"$RVS" commit.$type "$file"
+
diff --git a/rvs/plugins/files/get.d.sh b/rvs/plugins/files/get.d.sh
new file mode 100644
index 0000000..46e1eeb
--- /dev/null
+++ b/rvs/plugins/files/get.d.sh
@@ -0,0 +1,45 @@
+#!/bin/sh
+name='rvs files get.d'
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+#source "$libexecdir/@ID@/stdio"
+
+# get.d ID DIRNAME
+id="$1"
+dir="$2"
+
+tmp=`mktemp`
+"$RVS" get.f "$id" "$tmp"
+
+#install -d "$dir"
+mkdir -p "$dir"
+
+cd "$dir"
+rm -rf ./*
+while read line; do
+ # GNU bash optimized version
+ #hash=${line/#*:/}
+ #name=${line/%:${hash}/}
+ # POSIX version
+ hash=`echo "$line" | sed 's/^.*://'`
+ name=`echo "$line" | sed "s/:$hash$//"`
+ "$RVS" get "$hash" "$name"
+done < "$tmp"
+
+rm "$tmp"
+
diff --git a/rvs/plugins/files/get.f.sh b/rvs/plugins/files/get.f.sh
new file mode 100644
index 0000000..e6b79d5
--- /dev/null
+++ b/rvs/plugins/files/get.f.sh
@@ -0,0 +1,27 @@
+#!/bin/sh
+name='rvs files get.f'
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+#source "$libexecdir/@ID@/stdio"
+
+# get.f ID FILENAME
+id="$1"
+file="$2"
+
+install -T "$REPO/@ID@/$id" "$file"
+
diff --git a/rvs/plugins/files/get.sh b/rvs/plugins/files/get.sh
new file mode 100644
index 0000000..4d0d48f
--- /dev/null
+++ b/rvs/plugins/files/get.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+name='rvs files get'
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+source "$libexecdir/@ID@/stdio"
+
+# get ID [FILE]
+id="$1"
+tmp=`mktemp`
+"$RVS" get.f "$id" "$tmp"
+type="`sed -n 's/^type://p' "$tmp"`"
+file="${2-`sed -n 's/^name://p' "$tmp"`}"
+hash="`sed -n 's/^hash://p' "$tmp"`"
+
+out "-$type `pwd`/$file"
+"$RVS" get.$type "$hash" "$file"
+
+rm "$tmp"
+
diff --git a/rvs/plugins/files/main.mk.in b/rvs/plugins/files/main.mk.in
new file mode 100644
index 0000000..1a04b33
--- /dev/null
+++ b/rvs/plugins/files/main.mk.in
@@ -0,0 +1,78 @@
+#!/usr/bin/make -f
+name=filedata
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+rvs = @name@
+id = $(name)-$(ver)
+
+# phony targets ####################################################
+all : $(name)
+.PHONY : $(name) install uninstall clean distclean dist
+.SUFFIXES :
+
+# build ############################################################
+mysrcdir = $(srcdir)/plugins/$(name)
+myoutdir = out
+
+srcFiles = $(filter-out %/Makefile.in,$(shell find $(mysrcdir)/ -type f))
+
+shSrcFiles = $(filter %.sh,$(srcFiles))
+shOutFiles = $(patsubst $(mysrcdir)/%,$(myoutdir)/%,$(basename $(shSrcFiles)))
+
+$(name) : $(myoutdir) $(shOutFiles) $(myoutdir)/plugin.conf
+
+$(myoutdir)/plugin.conf : $(mysrcdir)/plugin.conf
+ $(INSTALL_DATA) $< $@
+
+# (un)install ######################################################
+
+install : all
+ $(RVS) install $(name)-$(ver) $(myoutdir)
+
+uninstall :
+ $(RVS) uninstall $(name)
+
+# clean ############################################################
+
+clean :
+
+distclean : clean
+ $(RM) Makefile
+ $(RM) -r out
+
+# implicit rules ###################################################
+
+b := @
+# build shell scripts
+$(myoutdir)/% : $(mysrcdir)/%.sh $(myoutdir)
+ $(INSTALL_PROGRAM) $< $@
+ $(SED) -i \
+ -e 's/$bSHELL@/$(subst /,\/,$(SHELL))/g' \
+ -e 's/$blibexecdir@/$(subst /,\/,$(libexecdir))/g' \
+ -e 's/$bID@/$(subst /,\/,$(id))/g' \
+ $@
+
+plugin.conf : plugin.conf.in
+ $(SED) \
+ -e 's/$bname@/$(subst /,\/,$(name))/g' \
+ -e 's/$bver@/$(subst /,\/,$(ver))/g' \
+ $< > $@
+
+$(DESTDIR)$(libexecdir)/$(rvs) $(myoutdir) :
+ $(MKDIR) $@
+
diff --git a/rvs/plugins/repo/plugin.conf b/rvs/plugins/files/plugin.conf.in
index 6028a0f..2359dd5 100644
--- a/rvs/plugins/repo/plugin.conf
+++ b/rvs/plugins/files/plugin.conf.in
@@ -1,5 +1,5 @@
-# rvs repo plugins.conf
-# ver=0.8r61
+# rvs @name@ plugins.conf
+# ver=@ver@
commit
commit.d
commit.f
diff --git a/rvs/plugins/files/stdio.sh b/rvs/plugins/files/stdio.sh
new file mode 100644
index 0000000..9062683
--- /dev/null
+++ b/rvs/plugins/files/stdio.sh
@@ -0,0 +1,66 @@
+#!/bin/sh
+#name='rvs files stdio'
+#ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
+
+verbose() {
+ if [ "$volume" == '-v' ]; then
+ echo $@ >> /dev/stderr
+ fi
+}
+
+out() {
+ if [ "$volume" != '-q' ]; then
+ echo $@ >> /dev/stderr
+ fi
+}
+
+warn () {
+ echo "$name: $1" >> /dev/stderr
+}
+
+fatal () {
+ warn "$1"
+ exit 1
+}
+
+error() {
+ warn "$1"
+ cat << __error__ >> /dev/stderr
+Usage: $name $usage
+
+Try \`$name --help\' for more options.
+__error__
+ exit 1
+}
+
+version() {
+ echo "$name $ver"
+ if [ "$volume" != '-q' ]; then
+ cat << __disclaimer__
+$name is copyright (C) 2009 Luke Shumaker
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+Originally written by Luke Shumaker <LukeShu@sbcglobal.net>.
+__disclaimer__
+ fi
+ exit 0
+}
+
diff --git a/rvs/plugins/repo/commit.d.sh b/rvs/plugins/repo/commit.d.sh
deleted file mode 100644
index 9545b08..0000000
--- a/rvs/plugins/repo/commit.d.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-#!@SHELL@
-name='rvs repo commit.d'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-source "$libexecdir/@ID@/stdio"
-
-# commit.d DIRNAME
-dir="$1"
-tmp=`mktemp`
-
-cd "$dir"
-for file in *; do
- hash=`"$RVS" commit "$file"`
- echo "$file:$hash" >> "$tmp"
-done
-
-"$RVS" commit.f "$tmp"
-rm "$tmp"
-
diff --git a/rvs/plugins/repo/commit.f.sh b/rvs/plugins/repo/commit.f.sh
deleted file mode 100644
index 851c023..0000000
--- a/rvs/plugins/repo/commit.f.sh
+++ /dev/null
@@ -1,33 +0,0 @@
-#!@SHELL@
-name='rvs repo commit.f'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-#source "$libexecdir/@ID@/stdio"
-
-# commit.f FILENAME
-file="$1"
-
-#hash=`md5sum $file | sed "s/ .*$//"`
-hash=`sha1sum $file | sed "s/ .*$//"`
-if [ ! -f "$REPO/@ID@/$hash" ]; then
- install -m 644 -o $USER -g $USER -T "$file" "$REPO/@ID@/$hash"
-fi
-echo "$hash"
-
diff --git a/rvs/plugins/repo/commit.sh b/rvs/plugins/repo/commit.sh
deleted file mode 100644
index 0baa931..0000000
--- a/rvs/plugins/repo/commit.sh
+++ /dev/null
@@ -1,55 +0,0 @@
-#!@SHELL@
-name='rvs repo commit'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-source "$libexecdir/@ID@/stdio"
-
-# commit FILE
-file=${1-.}
-
-if [ ! -e $file ]; then error "file \`$file' does not exist";
-# START file type list
-elif [ -L $file ]; then type='l'; # symbolic link
-elif [ -b $file ]; then type='b'; # block (buffered) special
-elif [ -c $file ]; then type='c'; # character (unbuffered) special
-elif [ -d $file ]; then type='d'; # directory
-elif [ -p $file ]; then type='p'; # named pipe (FIFO)
-elif [ -f $file ]; then type='f'; # regular file
-elif [ -s $file ]; then type='s'; # socket
-#elif [ -D $file ]; then type='D'; # door (Solaris only)
-# END file type list
-else error "could not identify file type of \`$file'"
-fi
-
-out "+$type `pwd`/$file"
-ret=`"$RVS" commit.$type "$file"`
-
-tmp=`mktemp`
-cat << __EOF__ > "$tmp"
-name:$file
-hash:$ret
-type:$type
-author:$user
-owner:$owner
-license:$license
-__EOF__
-
-"$RVS" commit.f "$tmp"
-rm "$tmp"
-
diff --git a/rvs/plugins/repo/get.d.sh b/rvs/plugins/repo/get.d.sh
deleted file mode 100644
index 4f95a57..0000000
--- a/rvs/plugins/repo/get.d.sh
+++ /dev/null
@@ -1,47 +0,0 @@
-#!@SHELL@
-name='rvs repo get.d'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-#source "$libexecdir/@ID@/stdio"
-
-# get.d ID DIRNAME
-id="$1"
-dir="$2"
-
-tmp=`mktemp`
-"$RVS" get.f "$id" "$tmp"
-
-#install -d "$dir"
-mkdir -p "$dir"
-
-cd "$dir"
-rm -rf ./*
-while read line; do
- # GNU bash optimized version
- #hash=${line/#*:/}
- #name=${line/%:${hash}/}
- # POSIX version
- hash=`echo "$line" | sed 's/^.*://'`
- name=`echo "$line" | sed "s/:$hash$//"`
- "$RVS" get "$hash" "$name"
-done < "$tmp"
-
-rm "$tmp"
-
diff --git a/rvs/plugins/repo/get.f.sh b/rvs/plugins/repo/get.f.sh
deleted file mode 100644
index bb43099..0000000
--- a/rvs/plugins/repo/get.f.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!@SHELL@
-name='rvs repo get.f'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-#source "$libexecdir/@ID@/stdio"
-
-# get.f ID FILENAME
-id="$1"
-file="$2"
-
-install -T "$REPO/@ID@/$id" "$file"
-
diff --git a/rvs/plugins/repo/get.sh b/rvs/plugins/repo/get.sh
deleted file mode 100644
index a047e87..0000000
--- a/rvs/plugins/repo/get.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-#!@SHELL@
-name='rvs repo get'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-source "$libexecdir/@ID@/stdio"
-
-# get ID [FILE]
-id="$1"
-tmp=`mktemp`
-"$RVS" get.f "$id" "$tmp"
-type="`sed -n 's/^type://p' "$tmp"`"
-file="${2-`sed -n 's/^name://p' "$tmp"`}"
-hash="`sed -n 's/^hash://p' "$tmp"`"
-
-out "-$type `pwd`/$file"
-"$RVS" get.$type "$hash" "$file"
-
-rm "$tmp"
-
diff --git a/rvs/plugins/repo/stdio.sh b/rvs/plugins/repo/stdio.sh
deleted file mode 100644
index d4fed0e..0000000
--- a/rvs/plugins/repo/stdio.sh
+++ /dev/null
@@ -1,68 +0,0 @@
-#!@SHELL@
-#name='rvs repo stdio'
-#ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-verbose() {
- if [ "$volume" == '-v' ]; then
- echo $@ >> /dev/stderr
- fi
-}
-
-out() {
- if [ "$volume" != '-q' ]; then
- echo $@ >> /dev/stderr
- fi
-}
-
-warn () {
- echo "$name: $1" >> /dev/stderr
-}
-
-fatal () {
- warn "$1"
- exit 1
-}
-
-error() {
- warn "$1"
- cat << __error__ >> /dev/stderr
-Usage: $name $usage
-
-Try \`$name --help\' for more options.
-__error__
- exit 1
-}
-
-version() {
- echo "$name $ver"
- if [ "$volume" != '-q' ]; then
- cat << __disclaimer__
-$name is copyright (C) 2009 Luke Shumaker
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-Originally written by Luke Shumaker <LukeShu@sbcglobal.net>.
-__disclaimer__
- fi
- exit 0
-}
-
diff --git a/rvs/plugins/users/commit.sh b/rvs/plugins/users/commit.sh
index cb2488d..1fa2e52 100644
--- a/rvs/plugins/users/commit.sh
+++ b/rvs/plugins/users/commit.sh
@@ -1,23 +1,21 @@
-#!@SHELL@
+#!/bin/sh
name='rvs users commit'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
source "$libexecdir/@ID@/stdio"
diff --git a/rvs/plugins/users/init.sh b/rvs/plugins/users/init.sh
index 41f7d77..142f54c 100644
--- a/rvs/plugins/users/init.sh
+++ b/rvs/plugins/users/init.sh
@@ -1,23 +1,21 @@
-#!@SHELL@
+#!/bin/sh
name='rvs users init'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
#source "$libexecdir/@ID@/stdio"
diff --git a/rvs/plugins/users/login.sh b/rvs/plugins/users/login.sh
index 340c7db..40a5830 100644
--- a/rvs/plugins/users/login.sh
+++ b/rvs/plugins/users/login.sh
@@ -1,23 +1,21 @@
-#!@SHELL@
+#!/bin/sh
name='rvs users login'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
source "$libexecdir/@ID@/stdio"
diff --git a/rvs/plugins/users/logout.sh b/rvs/plugins/users/logout.sh
index 43011a1..260846e 100644
--- a/rvs/plugins/users/logout.sh
+++ b/rvs/plugins/users/logout.sh
@@ -1,23 +1,21 @@
-#!@SHELL@
+#!/bin/sh
name='rvs users logout'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
source "$libexecdir/@ID@/stdio"
diff --git a/rvs/plugins/users/main.mk.in b/rvs/plugins/users/main.mk.in
index 71cc305..1a04b33 100644
--- a/rvs/plugins/users/main.mk.in
+++ b/rvs/plugins/users/main.mk.in
@@ -1,25 +1,24 @@
#!/usr/bin/make -f
-name=users
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+name=filedata
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
rvs = @name@
+id = $(name)-$(ver)
# phony targets ####################################################
all : $(name)
@@ -68,6 +67,12 @@ $(myoutdir)/% : $(mysrcdir)/%.sh $(myoutdir)
-e 's/$bID@/$(subst /,\/,$(id))/g' \
$@
-$(libexecdir)/$(rvs) $(myoutdir) :
+plugin.conf : plugin.conf.in
+ $(SED) \
+ -e 's/$bname@/$(subst /,\/,$(name))/g' \
+ -e 's/$bver@/$(subst /,\/,$(ver))/g' \
+ $< > $@
+
+$(DESTDIR)$(libexecdir)/$(rvs) $(myoutdir) :
$(MKDIR) $@
diff --git a/rvs/plugins/users/mkuser.sh b/rvs/plugins/users/mkuser.sh
index 68c16b2..6f72ea9 100644
--- a/rvs/plugins/users/mkuser.sh
+++ b/rvs/plugins/users/mkuser.sh
@@ -1,6 +1,6 @@
-#!@SHELL@
+#!/bin/sh
name='rvs users mkuser'
-ver=0.8r61
+ver=0.9
# Copyright (C) 2009 Luke Shumaker
#
# This file is part of rvs.
diff --git a/rvs/plugins/users/plugin.conf b/rvs/plugins/users/plugin.conf
deleted file mode 100644
index 1224b23..0000000
--- a/rvs/plugins/users/plugin.conf
+++ /dev/null
@@ -1,7 +0,0 @@
-# rvs users plugins.conf
-# ver=0.8r61
-commit:repo-0.8r61/commit
-login
-logout
-mkuser
-rmuser
diff --git a/rvs/plugins/users/plugin.conf.in b/rvs/plugins/users/plugin.conf.in
new file mode 100644
index 0000000..9b1b35c
--- /dev/null
+++ b/rvs/plugins/users/plugin.conf.in
@@ -0,0 +1,7 @@
+# rvs @name@ plugins.conf
+# ver=@ver@
+commit:repo-0.9/commit
+login
+logout
+mkuser
+rmuser
diff --git a/rvs/plugins/users/rmuser.sh b/rvs/plugins/users/rmuser.sh
index a9f566f..604f359 100644
--- a/rvs/plugins/users/rmuser.sh
+++ b/rvs/plugins/users/rmuser.sh
@@ -1,23 +1,21 @@
-#!@SHELL@
+#!/bin/sh
name='rvs users rmuser'
-ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
source "$libexecdir/@ID@/stdio"
diff --git a/rvs/plugins/users/stdio.sh b/rvs/plugins/users/stdio.sh
index a8bd155..edf7c01 100644
--- a/rvs/plugins/users/stdio.sh
+++ b/rvs/plugins/users/stdio.sh
@@ -1,23 +1,21 @@
-#!@SHELL@
+#!/bin/sh
#name='rvs users stdio'
-#ver=0.8r61
-# Copyright (C) 2009 Luke Shumaker
-#
-# This file is part of rvs.
-#
-# rvs is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
-#
-# rvs is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with rvs; see the file COPYING.
-# If not, write to the Free Software Foundation,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#ver=0.9
+# Copyright (C) 2009 Luke Shumaker
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING.
+# If not, see <http://www.gnu.org/licenses>.
verbose() {
if [ "$volume" == '-v' ]; then
@@ -27,7 +25,7 @@ verbose() {
out() {
if [ "$volume" != '-q' ]; then
- echo $@ >> /dev/stderr
+ echo $@
fi
}