On Sat, 08 Feb 2025, ASSI via Cygwin wrote:

> Dr Bean via Cygwin writes:
> > ASSI, what about adding to the long list of packages you maintain 
> > another one, App::cpanminus, providing the commandline tool, 'cpanm', a 
> > popular alternative to the venerable CPAN, and the installer of choice 
> > of perl app developers?

> Last I looked (which has been several years ago) it had some problems
> that I don't really remember the details of anymore and that probably
> have been fixed in the meantime or fixed themselves by Cygwin having
> more up-to-date Perl versions.  The problems with the CPAN meta DB
> mirrors are likely solved as well, especially since the fallback is
> MetaCPAN these days.  However I've switched to using the MetaCPAN API
> directly for almost anything and that solved all CPAN slowness I've
> experienced before that prompted my use of cpanm to work around it.

That's useful, describing the work you did with cpanm.

> > https://metacpan.org/pod/App::cpanminus
> > https://github.com/miyagawa/cpanminus

> > I am motivated to ask this by the efforts of the developer of 
> > App::perlbrew, a/the perl environment manager to extend support for 
> > cygwin, 

> > https://metacpan.org/pod/App::perlbrew
> > https://github.com/gugod/App-perlbrew/pull/838#issuecomment-2631585142

> As a sidenote, you were not using the current Perl for whatever reason.

Oops, I have perl 5, version 36, subversion 3 (v5.36.3), with 'Keep'
in the Full view Select Packages screen.

I didn't see it in the Pending view, so thought I had the current perl.
I must have downgraded at some point. Probably because of a CPAN module
incompatibility?

> > which would be helped if there were a cpanm package.
> 
> Well, cpanm is a standalone script with bundled dependencies, so it's an
> anathema to system packaging as it will skip any adaptations for Cygwin
> that the system packages might have but not the fatpacked ones.  Also it
> uses local::lib, which comes with added configuration complexity that
> can only be handled properly by whoever uses it, again not something I
> want to get in the midst of.

I didn't think about the problems packaging it that any maintainer who
takes it on in the future would face.

Perl on cygwin is a trouble-free experience using the system packages.
I try not to install from CPAN, preferring a system package if it is 
available. I don't use cpanm, perlbrew or local::lib myself. When 
installing CPAN modules from the metacpan.org site, I do it with 
old-school cpan.

> So, to summarize: App::cpanminus builds out of the box and passes its
> own tests, but just like local::lib I don't want to distribute it as a
> system package and /usr/local/ is left for whoever is in charge of that
> system, not Cygwin upstream.

I think that that's the right decision, a responsible one on your part.

In view of my own old-school system-package-only conservatism, I'm not 
convinced I'm the right person to package cpanm either.

But if we can't get Soren to package it, I guess I should think about 
doing it.

> Here's the cygport file to produce a
> system package if you want to play with that:
> 
> --8<---------------cut here---------------start------------->8---
> # -*- mode: sh; sh-shell: bash -*-
> BUILD_REQUIRES+=" libcrypt-devel" # perl.h
> NAME="perl-App-cpanminus"
> VERSION="1.7048"
> RELEASE="1"
> CPAN_AUTHOR="MIYAGAWA"
> HOMEPAGE="https://metacpan.org/release/MIYAGAWA/App-cpanminus-1.7048";
> LICENSE="Artistic-1.0-Perl OR GPL-1.0-or-later"
> DESCRIPTION="Perl distribution App-cpanminus, providing Perl modules:
> App::cpanminus.
> 
> Get, unpack, build and install modules from CPAN."
> 
> [ "${CYGPORT_RPM_DIR:-no}" == "no" ] && [ -s "${PN}.src.patch" ] && 
> PATCH_URI+=" ${PN}.src.patch"
> ARCH=noarch
> DIFF_EXCLUDES="MYMETA.*"
> 
> export PERL_NO_VENDOR_DEPS=1
> inherit perl
> --8<---------------cut here---------------end--------------->8---

Thanks for the cygport file. That will help Soren or me get started.
But we will probably need help uploading to the cygwin package repos.


-- 
Greg "Dr Bean" Matheson         Intention and action, night and
http://drbean.sdf.org           day. Action and intention,
drb...@freeshell.org            long day's journey into night.
                                
> 
> 
> Regards,
> Achim.
> -- 
> +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+
> 
> Factory and User Sound Singles for Waldorf Blofeld:
> http://Synth.Stromeko.net/Downloads.html#WaldorfSounds
> 
> -- 
> 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

-- 
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