On Tue, 29 Jul 2025, Jon Turney via Cygwin wrote:

> Unfortunately, setup doesn't know how to process standalone packages.
>
> Your options are described at:
>
> https://cygwin.com/packaging-contributors-guide.html#installing
>
>
> Yes, this all terrible :( . Someone should make it work better...
>

What's interesting about this is that packages are just plain old tarballs
with out-of-band metadata in hint files.  This makes it more difficult to
handle standalone packages (and also easier, just untar it in `/`)

What I have done in is:

  mkdir -p pkgs/x86_64/release
...
  cp -R llvm-*.x86_64/dist/* ../pkgs/x86_64/release
  cd ../pkgs
  mksetupini --arch x86_64 --inifile=x86_64/setup.ini --releasearea=. 
--disable-check=missing-required-package,missing-depended-package,missing-build-depended-package,missing-curr
  bzip2 <x86_64/setup.ini >x86_64/setup.bz2
  xz -6e <x86_64/setup.ini >x86_64/setup.xz

...

In a later job (after restoring the pkgs directory from an artifact)
  - id: cygwin
    uses: cygwin/cygwin-install-action@master
    with:
      site: >-
        http://mirrors.kernel.org/sourceware/cygwin/
        file://${{ github.workspace }}/pkgs
      check-sig: false
      packages: |
        ...


This translates to adding a file:// url to setup after a full http mirror
via -s options, and passing the -X option to setup since I didn't set up
signing.

Hope this helps

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to