summaryrefslogtreecommitdiff
path: root/rvs/plugins/filename
diff options
context:
space:
mode:
Diffstat (limited to 'rvs/plugins/filename')
-rw-r--r--rvs/plugins/filename/bin/commit.sh36
-rw-r--r--rvs/plugins/filename/bin/get.sh32
-rw-r--r--rvs/plugins/filename/bin/init.sh21
-rw-r--r--rvs/plugins/filename/info.mk.in3
4 files changed, 92 insertions, 0 deletions
diff --git a/rvs/plugins/filename/bin/commit.sh b/rvs/plugins/filename/bin/commit.sh
new file mode 100644
index 0000000..f4fd0f0
--- /dev/null
+++ b/rvs/plugins/filename/bin/commit.sh
@@ -0,0 +1,36 @@
+#!/bin/sh
+name='rvs filename 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>.
+
+file="${1-.}"
+string="`cat "$TMPDIR/commit/filecontent"`"
+type=`echo $string | sed 's/:.*$//'`
+hash=`echo $string | sed 's/^.://'`
+
+temp=`mktemp`
+echo "#rvs-filename-0.9" > "$temp"
+echo "name:$file" >> "$temp"
+echo "type:$type" >> "$temp"
+echo "hash:$hash" >> "$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/filename/bin/get.sh b/rvs/plugins/filename/bin/get.sh
new file mode 100644
index 0000000..bc08063
--- /dev/null
+++ b/rvs/plugins/filename/bin/get.sh
@@ -0,0 +1,32 @@
+#!/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>.
+
+# get ID
+usage="usage: $RVS get ID [FILENAME]"
+id="${1?"$usage"}"
+
+file="$REPO/@ID@/$id"
+
+ type="`sed -n 's/^type://p' "$file"`"
+name="${2-`sed -n 's/^name://p' "$file"`}"
+ hash="`sed -n 's/^hash://p' "$file"`"
+
+"$RVS" get.$type "$hash" "$name"
+rm "$tmp"
+
diff --git a/rvs/plugins/filename/bin/init.sh b/rvs/plugins/filename/bin/init.sh
new file mode 100644
index 0000000..71a2aa8
--- /dev/null
+++ b/rvs/plugins/filename/bin/init.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+name='rvs generic init'
+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>.
+
+mkdir -p "$REPO/@ID@"
+
diff --git a/rvs/plugins/filename/info.mk.in b/rvs/plugins/filename/info.mk.in
new file mode 100644
index 0000000..3cd3a0d
--- /dev/null
+++ b/rvs/plugins/filename/info.mk.in
@@ -0,0 +1,3 @@
+name = filename
+ver = 0.9
+priority = 1