textproc/agcre: Add new package which uses the libagcre library to provide
an egrep-style program for searching.
This is agcre, the egrep-alike which uses the libagcre regular expression
library (see pkgsrc/devel/libagcre) to search for regular expressions
in files or in data streams.
In general, the emphasis is on using a modern, predictable, VM-style,
well-featured regexp library, in C, with an MIT license. In
particular, most Perl regexp features are supported, as are back
references, and UTF-8, and wide characters (wchar_t).
I wouldn't expect anyone to use this as their main regex engine a la egrep
but this may prove food for thought:
% time agcre '(a?){9999}aaaaaaaaaaaaaaaaaaaaaaaaaaaaa' dist/tests/2.in
aaaaaaaaaaaaaaaaaaaaaaaaaaaaa
0.063u 0.000s 0:00.06 100.0% 0+0k 0+0io 0pf+0w
% time egrep '(a?){9999}aaaaaaaaaaaaaaaaaaaaaaaaaaaaa' dist/tests/2.in
[2 lines not shown]
Import dkim-rotate-1.1 as mail/dkim-rotate.
dkim-rotate is a tool that rotates DKIM keys and publishes them in
order to invalidate them so that they do not become an incentive for
authenticating leaked private email over time.
The dkim-rotate program is just a Perl script that can be invoked
from a cron job to update an MTA's DKIM configuration and a
corresponding zone file. The documentation is built with pandoc,
which is a much heavier build dependency, so I've split it into three
packages:
- dkim-rotate-base having the main program and an example config,
- dkim-rotate-doc having the man pages and other documentation, and
- a meta-package dkim-rotate depending on both of those.
devel/libagcre: Add libagcre, a regular expression library, version 20261013
to the packages collection.
The library is libagcre, which implements regular expression compilation
and execution. It uses the Pike Virtual Machine approach:
+ standard POSIX features where sane
+ some/most Perl escapes
+ lazy matching via '?'
+ non-capture parentheses (?:...)
+ in-expression case-insensitive directives are supported (?i)...(?-i)
+ all case-insensitivity is actioned at expression exec time - compile
with case-sensitive matching, execute with case-insensitive
+ utf-8 is supported both for expressions and for input text when
matching
+ unicode escapes (in the Java format of \uABCD) are supported
+ wide character support is also provided. Expressions can be compiled
in utf-8, and searched using wchar_t arrays. When matching, start and
end offsets are given relative to the input format: utf-8 is a byte
[6 lines not shown]
amiga: booters: Fix boot failure with recent binutils
elf2bb(1) and booters assume that .rodata.str1.1 section precedes .bss,
which is not guaranteed by recent binutils. We put the section just
behind .rodata as done by older binutils.
No release branches are affected.
g-golf: Fix PLIST for official distfile
(Probably due to gmake wildcard usage, make dist, for me, produces a
different set of files if done from an objdir build.)
lilypond-git: Remove as vastly older than pkgsrc lilypond
Not substantively updated since 2015. Anyone wanting a
lilypond-snapshot to track dev branch pre release would use
print/lilypond as a starting point, not this.