On 2025-09-23 16:08, Thomas Wolff via Cygwin-apps wrote:
Am 20.09.2025 um 19:07 schrieb Thomas Wolff via Cygwin-apps:
Am 20.09.2025 um 00:37 schrieb Brian Inglis via Cygwin-apps:
On 2025-09-19 10:24, Thomas Wolff via Cygwin-apps wrote:
Am 18.09.2025 um 05:32 schrieb Brian Inglis via Cygwin-apps:
On 2025-09-16 15:42, Thomas Wolff via Cygwin-apps wrote:
questions for a new package:
* Is there a way to specify a git clone for download rather than a
download URI?
See:
https://cygwin.github.io/cygport/git_cygclass.html
for example:
GIT_URI=https://github.com/$NAME/$NAME
GIT_BRANCH=$NAME
GIT_TAG=v$VERSION
GIT_REV=
inherit git
* Is there a way to specify files (like the build script in this case)
to be included in the source package?
SRC_URI+=" https://..."
SRC_URI+=" filename"
The intent is for all packages to be built using cygport to support CI and
any policies and approaches desired, and automate a *LOT* of any grunt work
commonly required!
The desire is to eventually have validated deployments only via cygport,
scallywag, and calm, or successors.
Post the build script, or a link to the package definition, spec, ebuild,
etc. on other distros or sites, for advice, suggestions, and help porting
it to cygport.
Thanks for the SRC_URI+= hint. The GIT_URI, GIT_TAG hint did not work,
nothing was downloaded. Also it's a huge repository and I'd prefer shallow
clone (-- depth 1) and sparse checkout.
Actually, the SRC_URI trick fixes the package step but spoils the prep step:
/bin/cp: failed to access 'emojis-noto-v2.051-1.noarch': No such file or
directory
*** ERROR: cp -t emojis-noto-v2.051-1.noarch getnoto failed
Using git.cygclass also handles conversion to tar used as SRC_URI and fixing up
the SRC_DIR.
> Bundling a build script with the cygport does not seem to be supported. It
could
be injected as a patch perhaps.
As the two scripts are actually also part of mintty, I guess I'll add them as a
downloadable source.
After `inherit git`, you could add:
MINTTY=https://github.com/mintty/mintty/raw/refs/heads/master/tools/
SRC_URI+=" $MINTTY/getnoto "
or
MINTTY_TOOLS=https://github.com/mintty/mintty/raw/refs/heads/master/tools/
SRC_URI+=" $MINTTY_TOOLS/getnoto "
and so on, or local file:// equivalents, or use git submodules.
Cygport git cygclass defaults to --depth 1, and retries without if that fails
because shallow clones are not supported by the upstream, after issuing a
message to that effect.
I've uploaded a source package of my proposed package to http://towo.net/
cygwin/ emojis-noto-v2.048-1-src.tar.xz for consideration.
It is usual to attach the .cygport as text/plain so we don't have to download
and unpack the tar to be able to comment.
Did you notice the `inherit git` *AFTER* the definitions hint above?
No, thanks. However, that still does not give me sparse (partial) checkout.
It does use --depth 1: you could define your own git() { ... } function in your
.cygport(s) to add --sparse after "$@" if $@[1] == clone, although I don't
*KNOW* that git uses or supports GNU style flexible getopt?
It could also DTRT on checkout, submodule, and so on, if required.
Also it seems to stall after checkout:
git checkout tags/v2.051
Updating files: 100% (20100/20100), done.
HEAD is now at 8998f5dd Merge pull request #515 from googlefonts/e17
- then nothing; waited for 5 min.
It does take a while to tar ~0.5GB, and unpack and copy that into ~1.5GB
{origsrc,src,temp} of repo, which if installed and packaged could become ~2.5GB
workspace!
https://cygwin.github.io/cygport/git_cygclass.html#git.cygclass
Also `inherit font` gives you font cygclass functions to store fonts in the
appropriate places for use by *ALL* Cygwin apps newer than those supporting
only legacy Adobe types.
I assigned this package to the Fonts category but it's not really a font...
Then set it to "Shells Graphics" perhaps instead, as Cygwin seems to categorize
terminal emulators as "Shells".
https://cygwin.github.io/cygport/git_cygclass.html#git.cygclass
Note the existing package, whose cygport would need some tweaks to get up to
date since 2017:
https://cygwin.com/cgit/cygwin-packages/noto-emoji-fonts
My proposed package does not replace the other one; it does not provide the
font but the emoji graphics (.png files) as used by mintty.
You may then want to select only some resolution(s) of some glyph variations
(single codepoint only?) and convert to usable size and more compact format such
as webp using say ImageMagick `mogrify -path webp -format webp svg/*.svg` which
shrinks svg from 40MB to 16MB, png/512 from 100MB to 40MB, and similar.
--
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 à retrancher but when there is no more to cut
-- Antoine de Saint-Exupéry