user/ruby3.0-bundler: new aport
This commit is contained in:
parent
404058c5b1
commit
ba44fb5073
2 changed files with 88 additions and 0 deletions
51
user/ruby3.0-bundler/APKBUILD
Normal file
51
user/ruby3.0-bundler/APKBUILD
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
|
||||||
|
pkgname=ruby3.0-bundler
|
||||||
|
_gemname=bundler
|
||||||
|
pkgver=2.3.26
|
||||||
|
pkgrel=0
|
||||||
|
pkgdesc="Manage an application's gem dependencies"
|
||||||
|
url="https://bundler.io/"
|
||||||
|
arch="noarch"
|
||||||
|
license="MIT"
|
||||||
|
depends="ruby3.0"
|
||||||
|
makedepends="ruby3.0-rake"
|
||||||
|
subpackages="$pkgname-doc"
|
||||||
|
source="https://github.com/rubygems/rubygems/archive/bundler-v$pkgver.tar.gz
|
||||||
|
manpages.patch
|
||||||
|
"
|
||||||
|
builddir="$srcdir/rubygems-bundler-v$pkgver/bundler"
|
||||||
|
options="!check" # tests require deps not available in main repo
|
||||||
|
|
||||||
|
build() {
|
||||||
|
rake build_metadata
|
||||||
|
gem build $_gemname.gemspec
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')"
|
||||||
|
|
||||||
|
gem install \
|
||||||
|
--local \
|
||||||
|
--install-dir "$gemdir" \
|
||||||
|
--bindir "$pkgdir/usr/bin" \
|
||||||
|
--ignore-dependencies \
|
||||||
|
--no-document \
|
||||||
|
--verbose \
|
||||||
|
$_gemname
|
||||||
|
|
||||||
|
local n; for n in 1 5; do
|
||||||
|
mkdir -p "$pkgdir"/usr/share/man/man$n
|
||||||
|
mv "$gemdir"/gems/$_gemname-$pkgver/lib/bundler/man/*.$n "$pkgdir"/usr/share/man/man$n/
|
||||||
|
done
|
||||||
|
|
||||||
|
rm -rf "$gemdir"/cache \
|
||||||
|
"$gemdir"/build_info \
|
||||||
|
"$gemdir"/doc \
|
||||||
|
"$gemdir"/gems/$_gemname-$pkgver/man \
|
||||||
|
"$gemdir"/gems/$_gemname-$pkgver/*.md
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
0a02d5130ecb8ca96e1850fc409a55d9f07481bbb8ec9b20554cdc6f3b3d3aada67717ab17dd30835615e4c228f39f895bd9b6f55bc22d4dbd88caef9cc105ba bundler-v2.3.26.tar.gz
|
||||||
|
77a36e61ed205aeea6114b1039dfbe29fcaf916eeae3f91785aa53b3ac534e004aa257e218534d927f39e3673eebbfb3ef9ee17f04ed81f74117799b88e53cf4 manpages.patch
|
||||||
|
"
|
37
user/ruby3.0-bundler/manpages.patch
Normal file
37
user/ruby3.0-bundler/manpages.patch
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
From: Jakub Jirutka <jakub@jirutka.cz>
|
||||||
|
Date: Fri, 26 Mar 2021 23:17:29 +0100
|
||||||
|
Subject: [PATCH] Fix --help when man pages are moved out
|
||||||
|
|
||||||
|
* Allow to move man pages from the gem's directory to the standard
|
||||||
|
system location (/usr/share/man) without breaking `bundler --help`.
|
||||||
|
* Fallback to the bundled ronn pages when the man command is available,
|
||||||
|
but the bundler man pages are not (i.e. ruby-bundler-doc is not
|
||||||
|
installed).
|
||||||
|
* Execute man with '-c' option to print the man page to the terminal
|
||||||
|
instead of using pager.
|
||||||
|
|
||||||
|
--- a/lib/bundler/cli.rb
|
||||||
|
+++ b/lib/bundler/cli.rb
|
||||||
|
@@ -118,16 +118,17 @@
|
||||||
|
end
|
||||||
|
|
||||||
|
man_path = File.expand_path("man", __dir__)
|
||||||
|
- man_pages = Hash[Dir.glob(File.join(man_path, "**", "*")).grep(/.*\.\d*\Z/).collect do |f|
|
||||||
|
- [File.basename(f, ".*"), f]
|
||||||
|
+ man_pages = Hash[Dir.glob(File.join(man_path, "**", "*")).grep(/.*\.\d*\.ronn\Z/).collect do |f|
|
||||||
|
+ man_name = File.basename(f, ".ronn")
|
||||||
|
+ [File.basename(man_name, ".*"), man_name]
|
||||||
|
end]
|
||||||
|
|
||||||
|
if man_pages.include?(command)
|
||||||
|
man_page = man_pages[command]
|
||||||
|
- if Bundler.which("man") && man_path !~ %r{^file:/.+!/META-INF/jruby.home/.+}
|
||||||
|
- Kernel.exec "man #{man_page}"
|
||||||
|
+ if Bundler.which("man") && Kernel.system("man -w #{command} >/dev/null 2>&1") && man_path !~ %r{^file:/.+!/META-INF/jruby.home/.+}
|
||||||
|
+ Kernel.exec "man -c #{command}"
|
||||||
|
else
|
||||||
|
- puts File.read("#{man_path}/#{File.basename(man_page)}.ronn")
|
||||||
|
+ puts File.read("#{man_path}/#{man_page}.ronn")
|
||||||
|
end
|
||||||
|
elsif command_path = Bundler.which("bundler-#{cli}")
|
||||||
|
Kernel.exec(command_path, "--help")
|
Loading…
Reference in a new issue