On Saturday, January 27th, 2024 at 11:25 AM, Marco Atzeri via Cygwin-apps <cygwin-apps@cygwin.com> wrote:
> On 26/01/2024 23:04, Ihor via Cygwin-apps wrote: > > > Hi! > > > > While I was trying to test how fine my package is installed and works, I > > relied on instructions at https://www.cygwin.com/package-server.html. > > Specifically on "Creating an overlay Cygwin package server" section, as it > > looked like the fastest way to test everything for me. But it was a bit > > complicated to follow all instructions correctly from the first attempt as > > some things there depend on environment setup and there where > > cross-references inside the guide. So, I've written alternative > > straightforward instruction for "Overlay method": > > > > ------- > > - Install packages: calm, php > > > > - `cd` to directory where you want to build overlay server > > > > - Run: > > mkdir -p ./cygwin/{x86_64,x86,noarch}/release > > > > - Copy your built package folder (e.g: pigz-2.8-1.x86_64\dist\pigz) to > > ./cygwin/x86_64/release folder > > > > - Run: > > mksetupini --arch x86_64 --disable-check > > missing-required-package,missing-depended-package > > --inifile=./cygwin/x86_64/setup.ini --releasearea=./cygwin > > cat ./cygwin/x86_64/setup.ini | bzip2 > ./cygwin/x86_64/setup.bz2 > > cat ./cygwin/x86_64/setup.ini | xz -6e > ./cygwin/x86_64/setup.xz > > (Make sure ./cygwin/x86_64/setup.ini contains information about your > > package) > > > > - Start http server in current dir: > > php -S 0.0.0.0:1234 > > > Hi Ihor, > this is superflous. > You can install from local "fake" download > > I am using a shortcut to run setup from the local cache directory where > both the main Mirror and my own tree is located Hi Marco! Thanks! Seems I understand your point, but not completely sure. Looks like suggested approach doesn't cover case with dependencies. Regular newcomer likely will not have *complete* repository/cache offline, so only previously installed packages will be available + own just built one in specified directory. So if own package has dependencies on some other packages from repo and we want to verify that everything is (our package + deps) correctly installed on clean PC or VM, then installation will fail without other needed packages in cache. If so (if I actually understood this correctly), then maybe we can describe both scenarios or just add a note that it's needed to prepare cache of dependencies before target package installation. But this will make instruction more "branchy" and complicated again (more words and cases to handle manually). So, looks like my variant covers more cases and is still quiet straightforward. And we can add (now or later) to bottom part some kind of "optional advanced hints" how to rely only on local things, what and how could be automated, etc. What do you think regarding this? > C:\Download\cygwin_cache\setup-x86_64.exe -X -O -s > https://mirrors.kernel.org/sourceware/cygwin/ -s > http://matzeri.altervista.org -R C:\cygwin64 -n -L --local-package-dir > C:\download\cygwin_cache > > > - Run normal cygwin installer (with -X flag), select there TWO mirrors: > > - http://127.0.0.1:1234/cygwin > > - Another your favorite mirror > > > > - Install your package and try how it works > > > > ------- > > It's also attached to this Email. > > > > Maybe there is sense to replace content of "Creating an overlay Cygwin > > package server" section by this manual? Am I writing this Email to correct > > mailing list? > > > we always appreciate any improvement to the documentation > > > Best regards, > > Ihor > > > Regards > Marco Best regards, Ihor