Re: [gentoo-dev] [PATCH] cvs.eclass: Fix CVS_RSH for app-shells/mksh
> On Mon, 05 Jul 2021, Haelwenn (lanodan) Monnier wrote: > [2021-07-05 13:43:27+0200] Ulrich Mueller: >> Also, the eclass should set PROPERTIES+=" interactive" in the "ext" >> case, because IIUC it will interactively call SSH_ASKPASS. > Well sure but wouldn't it be better to not have SSH_ASKPASS? Sure, if it works without. signature.asc Description: PGP signature
Re: [gentoo-dev] [PATCH] cvs.eclass: Fix CVS_RSH for app-shells/mksh
[2021-07-05 13:43:27+0200] Ulrich Mueller: > > On Mon, 05 Jul 2021, Haelwenn (lanodan) Monnier wrote: > > > if [[ ${ECVS_AUTH} == "ext" ]] ; then > > - #default to ssh > > - [[ -z ${CVS_RSH} ]] && export CVS_RSH="ssh" > > - if [[ ${CVS_RSH} != "ssh" ]] ; then > > - die "Support for ext auth with clients other than ssh has not > > been implemented yet" > > - fi > > DEPEND+=" net-misc/openssh" > > fi > > Also, the eclass should set PROPERTIES+=" interactive" in the "ext" > case, because IIUC it will interactively call SSH_ASKPASS. Well sure but wouldn't it be better to not have SSH_ASKPASS?
Re: [gentoo-dev] [PATCH] cvs.eclass: Fix CVS_RSH for app-shells/mksh
> On Mon, 05 Jul 2021, Haelwenn (lanodan) Monnier wrote: > if [[ ${ECVS_AUTH} == "ext" ]] ; then > - #default to ssh > - [[ -z ${CVS_RSH} ]] && export CVS_RSH="ssh" > - if [[ ${CVS_RSH} != "ssh" ]] ; then > - die "Support for ext auth with clients other than ssh has not > been implemented yet" > - fi > DEPEND+=" net-misc/openssh" > fi Also, the eclass should set PROPERTIES+=" interactive" in the "ext" case, because IIUC it will interactively call SSH_ASKPASS. signature.asc Description: PGP signature
Re: [gentoo-dev] [PATCH] cvs.eclass: Fix CVS_RSH for app-shells/mksh
> On Mon, 05 Jul 2021, Haelwenn (lanodan) Monnier wrote: > -# @SUPPORTED_EAPIS: 4 5 6 7 > +# @SUPPORTED_EAPIS: 5 6 7 Support EAPI 8 while at it? AFAICS it's a trivial update. > case ${EAPI:-0} in Just ${EAPI} here. > - 4|5|6) ;; > + 5|6) ;; > 7) BDEPEND="${DEPEND}"; DEPEND="" ;; > *) die "${ECLASS}: EAPI ${EAPI:-0} is not supported" ;; > esac > @@ -483,6 +478,12 @@ cvs_src_unpack() { > > [[ -z ${ECVS_MODULE} ]] && die "ERROR: CVS module not set, cannot > continue." > > + #default to ssh > + [[ -z ${CVS_RSH} ]] && export CVS_RSH="ssh" > + if [[ ${CVS_RSH} != "ssh" ]] ; then > + die "Support for ext auth with clients other than ssh has not > been implemented yet" > + fi That's a strange logic (not your fault, it was like this before). So CVS_RSH is taken from the user's environment? Why would one do that? Also, if the user has (e.g.) CVS_RSH="/usr/bin/ssh" then the eclass will fail? Can we kill this with fire, please? :) Just use ssh always. Ulrich signature.asc Description: PGP signature
[gentoo-dev] [PATCH] cvs.eclass: Fix CVS_RSH for app-shells/mksh
For some reason CVS_RSH wouldn't be set into cvs_src_unpack, app-shells/mksh is also the only ebuild in ::gentoo one using it with ECVS_AUTH="ext" I also removed EAPI-4 support as it's banned in ::gentoo Signed-off-by: Haelwenn (lanodan) Monnier --- eclass/cvs.eclass | 15 --- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/eclass/cvs.eclass b/eclass/cvs.eclass index a8e5ee4cc9a0..877ec2798112 100644 --- a/eclass/cvs.eclass +++ b/eclass/cvs.eclass @@ -4,7 +4,7 @@ # @ECLASS: cvs.eclass # @MAINTAINER: # vap...@gentoo.org (and anyone who wants to help) -# @SUPPORTED_EAPIS: 4 5 6 7 +# @SUPPORTED_EAPIS: 5 6 7 # @BLURB: This eclass provides generic cvs fetching functions # @DESCRIPTION: # This eclass provides the generic cvs fetching functions. To use this from an @@ -182,16 +182,11 @@ PROPERTIES+=" live" DEPEND="dev-vcs/cvs" if [[ ${ECVS_AUTH} == "ext" ]] ; then - #default to ssh - [[ -z ${CVS_RSH} ]] && export CVS_RSH="ssh" - if [[ ${CVS_RSH} != "ssh" ]] ; then - die "Support for ext auth with clients other than ssh has not been implemented yet" - fi DEPEND+=" net-misc/openssh" fi case ${EAPI:-0} in - 4|5|6) ;; + 5|6) ;; 7) BDEPEND="${DEPEND}"; DEPEND="" ;; *) die "${ECLASS}: EAPI ${EAPI:-0} is not supported" ;; esac @@ -483,6 +478,12 @@ cvs_src_unpack() { [[ -z ${ECVS_MODULE} ]] && die "ERROR: CVS module not set, cannot continue." + #default to ssh + [[ -z ${CVS_RSH} ]] && export CVS_RSH="ssh" + if [[ ${CVS_RSH} != "ssh" ]] ; then + die "Support for ext auth with clients other than ssh has not been implemented yet" + fi + local ECVS_LOCALNAME=${ECVS_LOCALNAME:-${ECVS_MODULE}} local sanitized_pn=$(echo "${PN}" | LC_ALL=C sed -e 's:[^A-Za-z0-9_]:_:g') -- 2.31.1