summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2009-08-03 18:15:21 -0400
committerLuke Shumaker <lukeshu@sbcglobal.net>2015-06-26 00:30:13 -0600
commitaa5141e77203fd084d809f27d55192a988723803 (patch)
treef7963df003b7007d3768ac9f8ff6aa4ba5018cf4
parent8a3cca551e412d3bd5cfddc6aa73c4f97edb483f (diff)
flesh out plugin: users
-rw-r--r--HACKING63
-rw-r--r--Makefile.bak42
-rw-r--r--plugins/users/init.sh3
3 files changed, 21 insertions, 87 deletions
diff --git a/HACKING b/HACKING
index 7963220..3b8b891 100644
--- a/HACKING
+++ b/HACKING
@@ -17,7 +17,7 @@
build basics
One of the coolest things about rvs (imo) is how modular and
- customizable it is. If you wish to create a fork of rvs, it would
+ customizable it is. If you wish to create a fork of rvs, it wls ould
be a good idea to give it a different name. This can be done
without even changing a single source file! Simply run configure
with `--name=NAME' option (variables that have `rvs' in the name
@@ -28,10 +28,11 @@
name='rvs'
The name of the program. Note that unlike most
variables, you should NOT call this in Makefiles
- (`$(name)'), but use $(rvs) instead.
+ (`$(name)'), but use `$(rvs)' instead.
RVS='$(bindir)/$(rvs)'
Where the exectuable will be. `$(rvs)' is the same as
- `$(name)' (see above)
+ `$(name)' (see above). In this document it is
+ sometimes reffered to as the `wrapper'.
SHELL='/bin/sh'
The shell that will be used by make, and the shell
that scripts will run in. (Perhaps we should make
@@ -104,54 +105,28 @@
and ONLY the final files to be used by that plugin.
========this is outdated but I don't really want to keep editing it ==
-
- There are two main parts to rvs, the wrapper, and the core. The
- wrapper is a small executable, located in the PATH, and is the one
- called when you type `rvs'. The core is a set of many small
- executables that do all the real work.
build system
- (be sure to read the `configuration' section of `README' first)
The build system rvs uses is rather simple.
`./configure' does two things:
- * create a preprocessor (`tmp/var.sed')
- * run `Makefile.orig' through the preprocessor to generate a
- propper `Makefile'
- Then, the Makefile runs each file in `source/' through the
- preprocessor, and writes the resulting files to `out/'.
-
- preprocessor
+ * create a sed script (`var.sed')
+ * run every incance of `$(srcdir)/Makefile.in' through
+ `var.sed' to generate a propper `Makefile'
- The preprocessor contains all configuration variables. When it
- processes a file every instance of `$$VAR_NAME$$' is replaced by
- that variable's value. Note that this replacement only happens for
+ `var.sed' contains all configuration variables. When it processes
+ a file every instance of `@VAR_NAME@' is replaced by that
+ variable's value. This makes `configure' act much like a GNU
+ package `congfigure'. Note that this replacement only happens for
defined variables.
- configuration Variables
-
- Again the configuration variables and their default values are:
- VER '0.6.3'
- SHELL '/usr/bin/env bash'
- prefix "$HOME"
- bindir 'bin'
- libdir '/etc/rvs/'
-
- The wrapper is installed at `$$prefix$$/$$bindir$$/rvs'
- The core is installed at `$$libdir$$/'
- The source for the wrapper is in `source/rvs'
- The source for the core is in `source/rvs-core/'
-
- $$SHELL$$ is the shell all shell scripts that are part of rvs are
- run in. As of rvs 0.6.3 all executables are shell scripts.
-
- Most of these can easily be changed _after_ compilation also:
- VER line 4 of the wrapper
- SHELL line 1 of each shell script
- prefix simply move the wrapper
- bindir simply move the wrapper
- libdir move the core, then update the line `RVSDIR=...' in
- the wrapper
+ Most of these can easily be changed _after_ `compilation' also:
+ VER line 4 of the wrapper
+ SHELL line 1 of each shell script
+ prefix simply move the wrapper
+ bindir simply move the wrapper
+ libexecdir move the directory, then update the line
+ `RVSDIR=...' in the wrapper
I have designed this system to be extremely modular. As you may
have figured out, each bit on functionality is in it's own
@@ -177,7 +152,7 @@
As you probably noticed (if you've looked at the blueprints or
source files), only directories and regular files have been
- implemented as of rvs 0.6.3.
+ implemented as of rvs 0.7.0.
After `rvs commit' has done this, it creates a meta-file for that
commit. The meta file contains author, copyright owner, licence
diff --git a/Makefile.bak b/Makefile.bak
deleted file mode 100644
index 979af8a..0000000
--- a/Makefile.bak
+++ /dev/null
@@ -1,42 +0,0 @@
-# rvs Makefile
-#
-# 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>.
-
-# Make Dependencies #################################################
-RM = rm -f
-WWW = links2 -width 70 -dump
-INSTALL = install
-
-# Variables ########################################################
-SHELL = $$SHELL$$
-prefix = $$prefix$$
-bindir = $$bindir$$
-libdir = $$libdir$$
-
-# Targets ##########################################################
-files
-build:
-# $(WWW) README.xhtml > README.txt
-
-.SUFFIXES:
-
-install : wrapper core
- $(INSTALL) -m 755 -T out/rvs $(prefix)/$(bindir)/rvs
- $(INSTALL) -m 755 -d out/rvs-core $(libdir)/core
-
-out/% : source/% var.sed
- ./var.sed <$< > $@
-
-var.sed: makesed Variables
- ./makesed <Variables > var.sed
- chmod 755 var.sed
-
-clean:
- $(RM) var.sed
- $(RM) -r out
diff --git a/plugins/users/init.sh b/plugins/users/init.sh
index 12b2f08..6d703ec 100644
--- a/plugins/users/init.sh
+++ b/plugins/users/init.sh
@@ -9,7 +9,8 @@ ver='0.7.0'
#
# Originally written by Luke Shumaker <lukeshu@sbcglobal.net>.
-cat << __EOF__ > "$REPO/Public Domain"
+mkdir -p "$REPO"/{users,repo}
+cat << __EOF__ > "$REPO/users/Public Domain"
author:anonymous
owner:Public Domain
license: