devel/ruby-gems strange ?

KIRIYAMA Kazuhiko kiri at truefc.org
Mon Nov 23 06:10:10 UTC 2020


Hi all,

devel/ruby-gems can't install because of rack of stuffs:

------------------------------------------------------------------------------

RubyGems installed the following executables:
        /var/ports/work/usr/ports/devel/ruby-gems/work/stage/usr/local/bin/gem30

/bin/ln -sf gem30 /var/ports/work/usr/ports/devel/ruby-gems/work/stage/usr/local/bin/gem
cd /var/ports/work/usr/ports/devel/ruby-gems/work/stage/usr/local/ && /usr/bin/find -ds lib/ruby/gems/3.0/doc/rubygems-3.0.8/ ! -type d >> /var/ports/work/usr/ports/devel/ruby-gems/work/.PLIST.mktmp
find: lib/ruby/gems/3.0/doc/rubygems-3.0.8/: No such file or directory
*** Error code 1

Stop.
make[3]: stopped in /var/ports/msrvkxb/devel/ruby-gems
*** Error code 1

Stop.
make[2]: stopped in /var/ports/msrvkxb/textproc/rubygem-asciidoctor
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/devel/git
*** Error code 1

Stop.

So remove those from pkg-plist and post-install-DOCS-on
disenabled:

diff -ruN /usr/ports/devel/ruby-gems/Makefile ruby-gems/Makefile
--- /usr/ports/devel/ruby-gems/Makefile	2020-11-16 17:03:31.471756000 +0900
+++ ruby-gems/Makefile	2020-11-19 10:01:53.966094000 +0900
@@ -36,19 +36,8 @@
 RUBY_SETUP_OPTIONS=	--destdir=${STAGEDIR} --no-regenerate-binstubs
 RUBY_VER_SHORT=		${RUBY_VER:S/.//}
 
-GEMS_DIR=		${GEMS_VER_DIR}/gems
-DOC_DIR=		${GEMS_VER_DIR}/doc
-CACHE_DIR=		${GEMS_VER_DIR}/cache
-SPEC_DIR=		${GEMS_VER_DIR}/specifications
-EXT_DIR=		${GEMS_VER_DIR}/extensions
-
 PLIST_SUB=	DISTNAME="${DISTNAME}" \
-		RUBY_VER_SHORT="${RUBY_VER_SHORT}" \
-		GEMS_DIR="${GEMS_DIR}" \
-		DOC_DIR="${DOC_DIR}" \
-		CACHE_DIR="${CACHE_DIR}" \
-		SPEC_DIR="${SPEC_DIR}" \
-		EXT_DIR="${EXT_DIR}"
+		RUBY_VER_SHORT="${RUBY_VER_SHORT}"
 
 OPTIONS_DEFINE=	DOCS
 
@@ -63,6 +52,8 @@
 # Find all RDOC and RI files
 #
 post-install-DOCS-on:
-	cd ${STAGEDIR}${PREFIX}/ && ${FIND} -ds ${GEMS_DOC_DIR}/ ! -type d >> ${TMPPLIST}
+	if [ -d ${STAGEDIR}${PREFIX}/${GEMS_DOC_DIR} ]; then \
+		cd ${STAGEDIR}${PREFIX}/ && ${FIND} -ds ${GEMS_DOC_DIR}/ ! -type d >> ${TMPPLIST}; \
+	fi
 
 .include <bsd.port.mk>
diff -ruN /usr/ports/devel/ruby-gems/pkg-plist ruby-gems/pkg-plist
--- /usr/ports/devel/ruby-gems/pkg-plist	2020-11-16 17:03:31.470232000 +0900
+++ ruby-gems/pkg-plist	2020-11-19 10:01:53.965136000 +0900
@@ -187,9 +187,3 @@
 %%RUBY_SITELIBDIR%%/rubygems/version.rb
 %%RUBY_SITELIBDIR%%/rubygems/version_option.rb
 %%RUBY_SITELIBDIR%%/ubygems.rb
- at dir lib/ruby/gems/%%RUBY_VER%%/build_info
- at dir %%EXT_DIR%%
- at dir %%CACHE_DIR%%
- at dir %%GEMS_DIR%%
- at dir %%SPEC_DIR%%
- at dir %%DOC_DIR%%

Then restart package-recursive, gem could not run at
textproc/rubygem-asciidoctor with the error:

------------------------------------------------------------------------------

RubyGems installed the following executables:
        /var/ports/work/var/ports/msrvkxb/devel/ruby-gems/work/stage/usr/local/bin/gem30

/bin/ln -sf gem30 /var/ports/work/var/ports/msrvkxb/devel/ruby-gems/work/stage/usr/local/bin/gem
if [ -d /var/ports/work/var/ports/msrvkxb/devel/ruby-gems/work/stage/usr/local/lib/ruby/gems/3.0/doc/rubygems-3.0.8 ]; then  cd /var/ports/work/var/ports/msrvkxb/devel/ruby-gems/work/stage/usr/local/ && /usr/bin/find -ds lib/ruby/gems/3.0/doc/rubygems-3.0.8/ ! -type d >> /var/ports/work/var/ports/msrvkxb/devel/ruby-gems/work/.PLIST.mktmp;  fi
====> Compressing man pages (compress-man)
===>  Installing for ruby30-gems-3.0.8
===>  Checking if ruby30-gems is already installed
===>   Registering installation for ruby30-gems-3.0.8 as automatic
Installing ruby30-gems-3.0.8...
===>   rubygem-asciidoctor-2.0.10 depends on file: /usr/local/bin/gem30 - found
===>   Returning to build of rubygem-asciidoctor-2.0.10
ERROR:  While executing gem ... (Gem::Package::FormatError)
    package is corrupt, exception while verifying: wrong number of arguments (given 2, expected 1) (ArgumentError) in /var/ports/distfiles/rubygem/asciidoctor-2.0.10.gem
*** Error code 1

Stop.
make[2]: stopped in /var/ports/msrvkxb/textproc/rubygem-asciidoctor
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/devel/git
*** Error code 1

Stop.


Is this ruby-gems corrupted ?

Regards.
---
Kazuhiko Kiriyama <kiri at truefc.org>


More information about the freebsd-ports mailing list