added 60 ports

This commit is contained in:
2022-02-05 15:39:19 -05:00
parent 88c4996e65
commit 516c20d78a
277 changed files with 52093 additions and 0 deletions

68
mblaze/.footprint Normal file
View File

@@ -0,0 +1,68 @@
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/bin/
-rwxr-xr-x root/root usr/bin/maddr
-rwxr-xr-x root/root usr/bin/magrep
lrwxrwxrwx root/root usr/bin/mbnc -> mcom
-rwxr-xr-x root/root usr/bin/mcolor
-rwxr-xr-x root/root usr/bin/mcom
-rwxr-xr-x root/root usr/bin/mdate
lrwxrwxrwx root/root usr/bin/mdelete -> mdeliver
-rwxr-xr-x root/root usr/bin/mdeliver
-rwxr-xr-x root/root usr/bin/mdirs
-rwxr-xr-x root/root usr/bin/mexport
-rwxr-xr-x root/root usr/bin/mflag
-rwxr-xr-x root/root usr/bin/mflow
lrwxrwxrwx root/root usr/bin/mfwd -> mcom
-rwxr-xr-x root/root usr/bin/mgenmid
-rwxr-xr-x root/root usr/bin/mhdr
-rwxr-xr-x root/root usr/bin/minc
-rwxr-xr-x root/root usr/bin/mless
-rwxr-xr-x root/root usr/bin/mlist
-rwxr-xr-x root/root usr/bin/mmime
-rwxr-xr-x root/root usr/bin/mmkdir
-rwxr-xr-x root/root usr/bin/mpick
-rwxr-xr-x root/root usr/bin/mquote
lrwxrwxrwx root/root usr/bin/mrefile -> mdeliver
lrwxrwxrwx root/root usr/bin/mrep -> mcom
-rwxr-xr-x root/root usr/bin/mscan
-rwxr-xr-x root/root usr/bin/msed
-rwxr-xr-x root/root usr/bin/mseq
-rwxr-xr-x root/root usr/bin/mshow
-rwxr-xr-x root/root usr/bin/msort
-rwxr-xr-x root/root usr/bin/mthread
-rwxr-xr-x root/root usr/bin/museragent
drwxr-xr-x root/root usr/share/
drwxr-xr-x root/root usr/share/man/
drwxr-xr-x root/root usr/share/man/man1/
-rw-r--r-- root/root usr/share/man/man1/maddr.1.gz
-rw-r--r-- root/root usr/share/man/man1/magrep.1.gz
-rw-r--r-- root/root usr/share/man/man1/mbnc.1.gz
-rw-r--r-- root/root usr/share/man/man1/mcom.1.gz
-rw-r--r-- root/root usr/share/man/man1/mdelete.1.gz
-rw-r--r-- root/root usr/share/man/man1/mdeliver.1.gz
-rw-r--r-- root/root usr/share/man/man1/mdirs.1.gz
-rw-r--r-- root/root usr/share/man/man1/mexport.1.gz
-rw-r--r-- root/root usr/share/man/man1/mflag.1.gz
-rw-r--r-- root/root usr/share/man/man1/mflow.1.gz
-rw-r--r-- root/root usr/share/man/man1/mfwd.1.gz
-rw-r--r-- root/root usr/share/man/man1/mgenmid.1.gz
-rw-r--r-- root/root usr/share/man/man1/mhdr.1.gz
-rw-r--r-- root/root usr/share/man/man1/minc.1.gz
-rw-r--r-- root/root usr/share/man/man1/mless.1.gz
-rw-r--r-- root/root usr/share/man/man1/mlist.1.gz
-rw-r--r-- root/root usr/share/man/man1/mmime.1.gz
-rw-r--r-- root/root usr/share/man/man1/mmkdir.1.gz
-rw-r--r-- root/root usr/share/man/man1/mpick.1.gz
-rw-r--r-- root/root usr/share/man/man1/mrefile.1.gz
-rw-r--r-- root/root usr/share/man/man1/mrep.1.gz
-rw-r--r-- root/root usr/share/man/man1/mscan.1.gz
-rw-r--r-- root/root usr/share/man/man1/msed.1.gz
-rw-r--r-- root/root usr/share/man/man1/mseq.1.gz
-rw-r--r-- root/root usr/share/man/man1/mshow.1.gz
-rw-r--r-- root/root usr/share/man/man1/msort.1.gz
-rw-r--r-- root/root usr/share/man/man1/mthread.1.gz
drwxr-xr-x root/root usr/share/man/man5/
-rw-r--r-- root/root usr/share/man/man5/mblaze-profile.5.gz
drwxr-xr-x root/root usr/share/man/man7/
-rw-r--r-- root/root usr/share/man/man7/mblaze.7.gz
-rw-r--r-- root/root usr/share/man/man7/mmsg.7.gz

7
mblaze/.md5sum Normal file
View File

@@ -0,0 +1,7 @@
0cde925c01cff5ac0c84aa72f9079cbc mailshow
ec4ad26d1d06f572b11db3fb45a89cf9 mblaze-delete.patch
86fa507b708696ddd8fdad046922de63 mblaze-fofl.patch
d5f9fa7a0a9b9254214811b024a1a580 mblaze-v1.1.tar.gz
c1eca91654e731640d6771edc361d437 mdelete.1
6f2f7e16c73c3de34b56db01efb2421f replyfrom.patch
ea33598a97f821c57f7f5dd89f640ade reuse-sent.patch

11
mblaze/.signature Normal file
View File

@@ -0,0 +1,11 @@
untrusted comment: verify with /etc/ports/jmq.pub
RWTTPlFarK9CxKbgJY54+XdgP4VSkiRm9d9KOWFFZB1l8b+Aw8KMgcnEBiVxF2LjR0vvF9pbMmh0+lceBPVKyuN+enak0p3LuQ0=
SHA256 (Pkgfile) = 5581e0ec639d08b3f03fc758662bd1836dd2eafd8caad0ff042c11e3cdc6371b
SHA256 (.footprint) = 6fc746ca88bb316e98fd2525578806717913e4d9da14730deb9b20e4d6bb93ca
SHA256 (mblaze-v1.1.tar.gz) = edd8cb86f667543e703dee58263b81c7e47744339d23ebbb6a43e75059ba93b1
SHA256 (replyfrom.patch) = 33b425ce02ee8651fdea79dd31de60116eaf0fc74c3093db71f5dc80f54cd163
SHA256 (reuse-sent.patch) = 355c8f0cafd5d68fa91a60b4f7cc6b974f5d1bf96b5e091256989cee51f5be94
SHA256 (mblaze-delete.patch) = bd13dc6ee7447388ffbf28c52889d6b59a0409313b9865af6fdcebe240f3ea9c
SHA256 (mblaze-fofl.patch) = 0d492cba2fd4fde895021491c06a468b5352436e87b87734477005f1a01ce363
SHA256 (mdelete.1) = 3cf71d8227dbefe66273d5caf4096a271b10c81f81775b42d707ab93aa8a36c3
SHA256 (mailshow) = 2d3b51f11007e41cbeb3a30afac9a68b76817cd2130a57f80fda5b870145c53d

44
mblaze/Pkgfile Normal file
View File

@@ -0,0 +1,44 @@
# Description: suite of command-line tools for working with maildirs
# URL: https://github.com/leahneukirchen/mblaze/
# Maintainer: John McQuah, jmcquah at disroot dot org
# Packager: Leah Neukirchen, leah at vuxu dot org
# Depends on:
name=mblaze
version=1.1
release=14
source=("https://github.com/leahneukirchen/mblaze/archive/v$version/$name-v$version.tar.gz"
replyfrom.patch reuse-sent.patch mblaze-delete.patch mblaze-fofl.patch mdelete.1 mailshow)
build() {
cd $name-$version
patch -p1 < $SRC/replyfrom.patch
patch -p1 < $SRC/reuse-sent.patch
# Next patch adds support for easily deleting messages from disk, adopting the syntax
# of mrefile (except for the destination folder, of course). Comment out if you're
# wary of accidental data loss.
#
patch -p1 < $SRC/mblaze-delete.patch
cp $SRC/mdelete.1 man
#
# Next patch eliminates quoted-printable encoding in favor of 7bit, format=flowed,
# if it looks like English is the primary language of composition.
#
[ "${LANG:0:3}" = "en_" ] && patch -p1 < $SRC/mblaze-fofl.patch
make all
make DESTDIR=$PKG PREFIX="/usr" install
BUILDDATE=$(date +'%Y-%m-%d')
cat > $PKG/usr/bin/museragent << EOF
#!/bin/sh
printf "User-Agent: $name/$version-$release ($BUILDDATE)\n"
EOF
chmod 755 $PKG/usr/bin/museragent
# Now add a plugin for quickly viewing individual files under a maildir in nnn
if [ -d /usr/share/nnn/plugins ]; then
mkdir -p $PKG/usr/share/nnn/plugins
install -m 0755 $SRC/mailshow $PKG/usr/share/nnn/plugins
fi
}

22
mblaze/README Normal file
View File

@@ -0,0 +1,22 @@
If you use the patched mmime to generate format=flowed emails, the
following code added to ~/.vimrc will give you a quick visual check that
the trailing whitespace is in the right place. Adjust the last two
autocommands if you configured a different maildir for drafts of outgoing
messages.
function! FixIndented()
" remove spaces at end of indented lines
silent! %s/^\s.*\zs \+$//
endfunction
function! TextFlowed()
setl tw=72
setl fo+=w
setl nojs
setl nosmartindent
setl list
set listchars=trail:•
endfunction
autocmd BufRead,BufNewFile */sent/cur/* call TextFlowed()
autocmd BufRead,BufWritePre */sent/cur/* call FixIndented()

12
mblaze/mailshow Normal file
View File

@@ -0,0 +1,12 @@
#!/bin/sh
# Description: Show contents of a Maildir message in pager
#
# Dependencies: mblaze
#
# Shell: POSIX compliant
# Author: John McQuah
if [ -f "$1" ]; then
mshow -n -A 'text/html' ./"$1" | less
fi

View File

@@ -0,0 +1,79 @@
--- mblaze-1.1/GNUmakefile 2021-01-14 10:45:22.000000000 -0500
+++ mblaze-1.1f/GNUmakefile 2021-05-31 19:11:33.146804008 -0400
@@ -15,7 +15,7 @@
endif
DESTDIR=
-PREFIX=/usr/local
+PREFIX=/usr
BINDIR=$(PREFIX)/bin
MANDIR=$(PREFIX)/share/man
@@ -62,6 +62,7 @@
ln -sf mcom $(DESTDIR)$(BINDIR)/mfwd
ln -sf mcom $(DESTDIR)$(BINDIR)/mrep
ln -sf mdeliver $(DESTDIR)$(BINDIR)/mrefile
+ ln -sf mdeliver $(DESTDIR)$(BINDIR)/mdelete
install -m0644 man/*.1 $(DESTDIR)$(MANDIR)/man1
install -m0644 man/*.5 $(DESTDIR)$(MANDIR)/man5
install -m0644 man/*.7 $(DESTDIR)$(MANDIR)/man7
--- mblaze-1.1/mdeliver.c 2021-01-14 10:45:22.000000000 -0500
+++ mblaze-1.1f/mdeliver.c 2021-05-31 19:01:02.500148004 -0400
@@ -287,6 +287,22 @@
unlink(file);
}
+void
+mdelete(char *file)
+ {
+ while (*file == ' ' || *file == '\t')
+ file++;
+
+ if (!kflag) {
+ unlink(file);
+ if (vflag)
+ fprintf(stderr, "Messages deleted.\n");
+ }
+
+ if (kflag)
+ fprintf(stderr, "Deletion command overridden.\n");
+ }
+
int
main(int argc, char *argv[])
{
@@ -323,6 +339,32 @@
return 0;
}
+ if (strchr(argv[0], 't')) {
+ // mdelete(1)
+
+ int c;
+ while ((c = getopt(argc, argv, "kv")) != -1)
+ switch (c) {
+ case 'k': kflag = 1; break;
+ case 'v': vflag = 1; break;
+ default:
+usage3:
+ fprintf(stderr,
+ "Usage: mdelete [-kv] [msgs]... \n");
+ exit(1);
+ }
+
+ if (argc == optind - 1)
+ goto usage3;
+
+ if (argc == optind && isatty(0))
+ goto usage3;
+ else
+ blaze822_loop(argc - optind, argv + optind, mdelete);
+
+ return 0;
+ }
+
int c;
while ((c = getopt(argc, argv, "cMvX:")) != -1)
switch (c) {

101
mblaze/mblaze-fofl.patch Normal file
View File

@@ -0,0 +1,101 @@
--- mblaze-1.1/mmime.c 2021-01-14 10:45:22.000000000 -0500
+++ mblaze-1.1f/mmime.c 2021-06-12 20:35:09.994308179 -0400
@@ -134,6 +134,68 @@
return linelen;
}
+size_t
+gen_flowd(uint8_t *s, off_t size, size_t maxlinelen, size_t linelen)
+{
+ off_t i;
+ int header = linelen > 0;
+
+ for (i = 0; i < size; i++) {
+ // inspect utf8 sequence to not wrap in between multibyte
+ int mb;
+ if ((s[i] & 0x80) == 0) mb = 3;
+ else if ((s[i] & 0xc0) == 0x80) mb = 3;
+ else if ((s[i] & 0xe0) == 0xc0) mb = 6;
+ else if ((s[i] & 0xf0) == 0xe0) mb = 9;
+ else if ((s[i] & 0xf8) == 0xf0) mb = 12;
+ else mb = 3;
+
+ if (linelen >= maxlinelen-mb-!!header) {
+ linelen = 0;
+ if (header) {
+ printf("\n");
+ } else {
+ puts(" ");
+ }
+ }
+
+ if ((s[i] > 126) ||
+ (linelen == 0 &&
+ (strncmp((char *)s, "From ", 5) == 0 ||
+ (s[i] == '.' && i+1 < size &&
+ (s[i+1] == '\n' || s[i+1] == '\r'))))) {
+ putc_unlocked(s[i], stdout);
+ linelen ++;
+ } else if (header &&
+ (s[i] == '\n' || s[i] == '\t' || s[i] == '_')) {
+ putc_unlocked(s[i], stdout);
+ linelen ++;
+ } else if (header && s[i] == ' ') {
+ putc_unlocked('_', stdout);
+ linelen++;
+ } else if (s[i] < 33 && s[i] != '\n') {
+ if ((s[i] == ' ' || s[i] == '\t') &&
+ i+1 < size &&
+ (s[i+1] != '\n' && s[i+1] != '\r')) {
+ putc_unlocked(s[i], stdout);
+ linelen++;
+ } else {
+ putc_unlocked(s[i], stdout);
+ linelen++;
+ }
+ } else if (s[i] == '\n') {
+ putc_unlocked('\n', stdout);
+ linelen = 0;
+ } else {
+ putc_unlocked(s[i], stdout);
+ linelen++;
+ }
+ }
+ if (linelen > 0 && !header)
+ puts("\n");
+ return linelen;
+}
+
static const char *
basenam(const char *s)
{
@@ -401,8 +463,8 @@
inheader = 0;
printf("MIME-Version: 1.0\n");
if (rflag) {
- printf("Content-Type: text/plain; charset=UTF-8\n");
- printf("Content-Transfer-Encoding: quoted-printable\n\n");
+ printf("Content-Type: text/plain; charset=US-ASCII; format=flowed\n");
+ printf("Content-Transfer-Encoding: 7bit\n\n");
} else {
printf("Content-Type: %s; boundary=\"%s\"\n", tflag, sep);
@@ -435,14 +497,14 @@
if (!rflag && !intext) {
printf("\n--%s\n", sep);
- printf("Content-Type: text/plain; charset=UTF-8\n");
+ printf("Content-Type: text/plain; charset=US-ASCII; format=flowed\n");
printf("Content-Disposition: inline\n");
- printf("Content-Transfer-Encoding: quoted-printable\n\n");
+ printf("Content-Transfer-Encoding: 7bit\n\n");
intext = 1;
}
- gen_qp((uint8_t *)line, strlen(line), 78, 0);
+ gen_flowd((uint8_t *)line, strlen(line), 78, 0);
}
if (!rflag && !inheader)
printf("\n--%s--\n", sep);
printf 'Bcc: \n'

48
mblaze/mdelete.1 Normal file
View File

@@ -0,0 +1,48 @@
.Dd April 19, 2021
.Dt MDELETE 1
.Os
.Sh NAME
.Nm mdelete
.Nd delete messages from maildir folders
.Sh SYNOPSIS
.Nm
.Op Fl k
.Op Fl v
.Op Ar msgs\ ...
.Sh DESCRIPTION
.Nm
deletes the
.Ar msgs
given on the command line
.Pq or the standard input.
.Po
See
.Xr mmsg 7
for the message argument syntax.
.Pc
.Pp
The options are as follows:
.Bl -tag -width Ds
.It Fl k
keep the messages,
i.e., dry-run with no action taken.
.It Fl v
Print a confirmation message after deletion.
.El
.Sh EXIT STATUS
.Ex -std
.Sh SEE ALSO
.Xr mdeliver 1
.Sh AUTHORS
.An Leah Neukirchen Aq Mt leah@vuxu.org
.An John McQuah Aq Mt jmcquah@disroot.org
.Sh LICENSE
.Nm
is in the public domain.
.Pp
To the extent possible under law,
the creator of this work
has waived all copyright and related or
neighboring rights to this work.
.Pp
.Lk http://creativecommons.org/publicdomain/zero/1.0/

30
mblaze/replyfrom.patch Normal file
View File

@@ -0,0 +1,30 @@
--- mblaze-1.1/mcom 2021-01-14 15:45:22.000000000 -0000
+++ mblaze-1.1f/mcom 2021-08-22 00:08:04.418851752 -0000
@@ -12,13 +12,13 @@ commajoin() {
notmine() {
mine="$(maddr -a -h local-mailbox:alternate-mailboxes: "$MBLAZE/profile")"
- grep -Fv -e "$mine"
+ grep -Fvi -e "$mine"
}
replyfrom() {
addrs="$(maddr -a -h reply-from: "$MBLAZE/profile")"
[ -z "$addrs" ] && addrs="$(maddr -a -h alternate-mailboxes: "$MBLAZE/profile")"
- grep -F -e "$addrs"
+ grep -Fi -e "$addrs"
}
ouniq() {
@@ -358,8 +370,8 @@ fi
[ -z "$to" ] && to=$(mhdr -d -h from "$1")
printf 'To: %s\n' "$to"
printf 'Cc: %s\n' \
- "$(mhdr -d -A -h to:cc: "$1" |
- notmine |grep -Fv -e "$to" |
+ "$(maddr -a -h to:cc: "$1" |
+ notmine |grep -Fvi -e "$to" |
ouniq |commajoin)"
printf 'Bcc: \n'
printf '%s\n' "$hdrs" | awk '{ print }' |

21
mblaze/reuse-sent.patch Normal file
View File

@@ -0,0 +1,21 @@
--- mblaze-1.1/mcom 2021-01-14 15:45:22.000000000 -0000
+++ mblaze-1.1f/mcom 2021-08-22 00:08:04.418851752 -0000
@@ -133,6 +133,18 @@ case "$0" in
"$draft" 1>&2
exit 1
fi
+ outbox=$(mhdr -h outbox "$MBLAZE/profile" | sed "s:^~/:$HOME/:")
+ if [ -n "$(dirname "$draft" | grep "$outbox/cur")" ]; then
+ newdraft=$(true | mdeliver -v -c -XD "$outbox")
+ if [ -z "$newdraft" ]; then
+ printf '%s\n' "$0: failed to load draft for editing." 1>&2
+ exit 1
+ fi
+ sed "s/^\(Message-Id: \).*/\1$(mgenmid 2>/dev/null)/" $draft \
+ > $newdraft
+ sed -i "s/^\(Date: \).*/\1$(mdate)/" $newdraft
+ draft=$newdraft
+ fi
echo "using draft $draft"
shift
fi