RFC: postinstall fontconfig cache changes

2024-05-05 Thread Brian Inglis via Cygwin-apps

Hi folks,

Since Yaakov added the fontconfig cache postinstall script, it has been 
selecting only fonts created by 'Microsoft Corp' and (recently?) matching 
'*.ttf' (lower case only) for whatever reasons?


I have been running my own attached local fontconfig cache postinstall script, 
with some tweaks, such as putting my symlinks into font directory 'windows' 
instead of fontconfig package's 'microsoft', using `cygpath -UW` so the symlinks 
to Windows/Fonts created survive changes I made to cygdrive over the years, 
adding .ttf fonts not created by 'Microsoft Corp' including those only 
'Microsoft supplied', original Windows .TTF (uppercase) fonts installed with the 
system, .ttc font collections which are supported by recent fontconfig, and .otf 
OpenType fonts provided with newer font packages, as Pango and Harfbuzz do not 
appear to support some recent TrueType hinting changes.


I also have to clean up the cache directory, as it sometimes got to *many* 1000s 
of cache files, taking up GB, a known but unsolved? (may now be fixed) issue 
with "broken" [see NEWS] font cache handling, whereas after resetting it has 
only dozens of cache files taking a dozen MB, created in ~10s for ~3600 fonts, 
from Windows, packages, and local downloads and installs.


I would like to request consideration for adding all Windows fonts of supported 
types of any case to the cache every startup.


--
Take care. Thanks, Brian Inglis  Calgary, Alberta, Canada

La perfection est atteinte   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry#!/bin/dash
# zp_l_fontconfig_cache.dash - update Windows non-MS Corp ttf, TTF, ttc, and 
otf font links and rebuild font cache

winfontsdir=/usr/share/fonts/windows
cache=/var/cache/fontconfig
mscorp='Microsoft Corp'
win="$(cygpath -UW)/Fonts"  # ln to /proc/cygdrive in case mount changes 
later

/bin/mkdir -p $winfontsdir

# remove any broken links (-L -type l together)
/usr/bin/find -L $winfontsdir -type l -delete

# find Windows .TTF, .otf, .ttc and non-MS Corp .ttf fonts and link between 
fonts dirs
# Notes:
# system 
# DUBAI-*, MTEXTRA, others are 'Microsoft supplied font';
# all *.TTF are 'Microsoft Corp'; some are also 'Microsoft supplied font';
# .../Fonts may have Deleted subdirectory;
# grep -L returns names of files with no pattern matches;
# fontconfig handles ttc TrueType collections and otf OpenType fonts
/usr/bin/find "$win" -maxdepth 1 -type f\
   \(  -name '*.ttf' -exec /bin/grep -FaL "$mscorp" '{}' + \)   \
-o \(  -name '*.TTF' -print \)  \
-o \( -iname '*.ttc' -print \)  \
-o \( -iname '*.otf' -print \)  | \
while read f
do
[ -e "$winfontsdir/${f##*/}" ] || /bin/ln -st $winfontsdir/ "$f"
done

/usr/bin/mkfontscale$winfontsdir
/usr/bin/mkfontdir  $winfontsdir

# get cache file suffix currently -le64.cache-9 from latest fontconfig dll
dll=$(/bin/ls -rv /bin/cygfontconfig-*.dll | /usr/bin/head -n1)
suf=$(/bin/grep -Eao '[[:graph:]]*\.cache-[[:graph:]]+' $dll)

# cleanup cache every install - can become 100k+ files using GBs
/bin/rm -f $cache/*$suf
/usr/bin/find $cache -iname "*$suf" -delete

# reset and cache system dirs
/usr/libexec/fc-cache-1 -rs || :

# ensure TAG later for cleanup cron job
/usr/bin/touch -c $cache/CACHEDIR.TAG



RE: [ITP] perl-Parse-Yapp-1.21

2024-05-05 Thread Ziemowit Laski via Cygwin-apps
Achim,

I stumbled upon this dependency while building smbclient (which _is_ useful on 
Windows, BTW).

Methinks you should package this if you believe that other people might find it 
useful.  Also, I really can't foresee any maintenance burdens moving forward.

Please tell me if/how to proceed.  Thanks,

--Zem

> -Original Message-
> From: ASSI 
> Sent: Saturday, May 4 2024 8:55
> To: cygwin-apps@cygwin.com
> Subject: Re: [ITP] perl-Parse-Yapp-1.21
> 
> Ziemowit Laski via Cygwin-apps writes:
> > This is a straightforward port, akin to other Perl packages.
> 
> The question is: what do you need it for and why should it get packaged
> in Cygwin?
> 
> […]
> > I can be the maintainer-at-large for this if you'd like.
> 
> I'd rather not have separate maintenance of random Perl packages, so if
> it gets accepted into Cygwin I would suggest to assign it to me.
> 
> 
> Regards,
> Achim.
> --
> +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+
> 
> SD adaptation for Waldorf rackAttack V1.04R1:
> http://Synth.Stromeko.net/Downloads.html#WaldorfSDada



lynx 2.9.1 available

2024-05-05 Thread Brian Inglis via Cygwin-apps
Package lynx seems to have moved on from lynx.browser.org which is outdated at 
2.8.8, to lynx.invisible-island.net where 2.9.1 is the latest stable release 
following on from 2.9.0:


https://lynx.invisible-island.net/index.html

https://lynx.invisible-island.net/lynx.html

https://lynx.invisible-island.net/release/index.html

https://invisible-island.net/archives/lynx/tarballs/\
lynx2.9.1.tar.bz2{,.asc}

https://github.com/ThomasDickey/lynx-snapshots/tags

--
Take care. Thanks, Brian Inglis  Calgary, Alberta, Canada

La perfection est atteinte   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry