~gbmor/clinte

clinte/Makefile -rw-r--r-- 885 bytes
moved makefile install target to shellscript

Testing for OS before decided what group to assign to binary and
files. If Linux, both groups are 'root'. If OpenBSD, the groups
are 'bin' and 'wheel'. I don't have a FreeBSD or NetBSD system
handy right now to check those.
man page for clinte

Amended Makefile to install said man page.
Explicitly installing files -o root -g root.
added removal of notify script to uninstall target
moved hashing to shellscript to check for posts

removes dependency on sha2 crate and allows users
to choose their own hashing algorithm easily.

now copies clinte.json to $HOME/.clinte.json once
the posts are viewed. a shellscript can be used to
compare the hash of the global clinte.json to the
hash of the copy. an example script is supplied.

on `make install` the example script is installed
to /etc/profile.d/, where it will be run for users
on login.
install target: check for clinte.json before copying

removed upgrade target since it's now redundant
removed tag checkout when building
make test is now single-threaded
extensive rewrite to use json for storage:

sqlite3 requires the directory where the database resides to be
writeable by the user. This presents a problem on multiuser UNIX systems
where they may want to limit areas where users have write access.

This rewrite totally scraps the sqlite3 database in favor of a pretty
simple json file consisting of an array of posts. flock(2) locking is
used to synchronize access to the file and make sure two clients aren't
trying to write to it at once. The locking is fairly granular right now,
but later I may change it to using a single lock for the duration of
execution since race conditions are *possible*, if unlikely for the
purposes of clinte's intended use.
updated makefile to use printf instead of echo
leave db intact on uninstall
tests in makefile, cleaned db test