Blame


1 38232a0a 2023-05-07 op #!/bin/sh
2 38232a0a 2023-05-07 op #
3 38232a0a 2023-05-07 op # smarc was written by Omar Polo <op@openbsd.org> and is placed in the
4 38232a0a 2023-05-07 op # public domain. The author hereby disclaims copyright to this source
5 38232a0a 2023-05-07 op # code.
6 38232a0a 2023-05-07 op
7 38232a0a 2023-05-07 op progname="$(basename "$0")"
8 38232a0a 2023-05-07 op usage() {
9 38232a0a 2023-05-07 op u="usage: $progname [-c cachedir] [-j n]"
10 38232a0a 2023-05-07 op u="$u [-m maildir] [-o outdir] [-t tmpldir]"
11 38232a0a 2023-05-07 op echo "$u">&2
12 38232a0a 2023-05-07 op exit 1
13 38232a0a 2023-05-07 op }
14 38232a0a 2023-05-07 op
15 38232a0a 2023-05-07 op # changed at install-time
16 38232a0a 2023-05-07 op libexec=.
17 38232a0a 2023-05-07 op mblaze=.mblaze
18 38232a0a 2023-05-07 op tmpldir=templates/
19 38232a0a 2023-05-07 op
20 38232a0a 2023-05-07 op # fix perl include path for in-repo hacking
21 38232a0a 2023-05-07 op if [ "$libexec" = . ]; then
22 38232a0a 2023-05-07 op export PERL5LIB="$PWD${PERL5LIB:+:}$PERL5LIB"
23 38232a0a 2023-05-07 op fi
24 38232a0a 2023-05-07 op
25 38232a0a 2023-05-07 op cachedir=$HOME/.cache/smarc
26 38232a0a 2023-05-07 op mdir=$HOME/Mail/smarc
27 38232a0a 2023-05-07 op outdir=/var/www/smarc
28 38232a0a 2023-05-07 op
29 38232a0a 2023-05-07 op while getopts c:j:m:o:t: flag; do
30 38232a0a 2023-05-07 op case $flag in
31 38232a0a 2023-05-07 op c) cachedir="$OPTARG" ;;
32 38232a0a 2023-05-07 op j) MAKE_JOBS="$OPTARG" ;;
33 38232a0a 2023-05-07 op m) mdir="$OPTARG" ;;
34 38232a0a 2023-05-07 op o) outdir="$OPTARG" ;;
35 38232a0a 2023-05-07 op t) tmpldir="$OPTARG" ;;
36 38232a0a 2023-05-07 op ?) usage ;;
37 38232a0a 2023-05-07 op esac
38 38232a0a 2023-05-07 op done
39 38232a0a 2023-05-07 op
40 38232a0a 2023-05-07 op # set up the env
41 38232a0a 2023-05-07 op export CSUMDIR="$cachedir/threadsum"
42 38232a0a 2023-05-07 op export MAKE_JOBS="${MAKE_JOBS:-1}"
43 38232a0a 2023-05-07 op export MBLAZE="$mblaze"
44 38232a0a 2023-05-07 op export MBLAZE_PAGER=cat
45 38232a0a 2023-05-07 op export MDIR="$mdir"
46 38232a0a 2023-05-07 op export OUTDIR="${outdir:-/var/www/smarc}"
47 38232a0a 2023-05-07 op export TMPLDIR="$tmpldir"
48 92422b99 2023-05-07 op export TZ=UTC
49 38232a0a 2023-05-07 op
50 38232a0a 2023-05-07 op # make sure the directories are there
51 38232a0a 2023-05-07 op set -e
52 38232a0a 2023-05-07 op mkdir -p "$CSUMDIR"
53 38232a0a 2023-05-07 op mkdir -p "$OUTDIR/mail"
54 38232a0a 2023-05-07 op mkdir -p "$OUTDIR/parts"
55 38232a0a 2023-05-07 op mkdir -p "$OUTDIR/text"
56 38232a0a 2023-05-07 op mkdir -p "$OUTDIR/thread"
57 38232a0a 2023-05-07 op set +e
58 38232a0a 2023-05-07 op
59 38232a0a 2023-05-07 op export PATH="$libexec:$PATH"
60 38232a0a 2023-05-07 op
61 38232a0a 2023-05-07 op fmt='%i-%R %16D<%64f>%128S'
62 38232a0a 2023-05-07 op mlist "${MDIR}" | mthread -r | mscan -f "$fmt" | pe | mkindex