Date: Sunday, September 25, 2022 @ 19:06:46 Author: segaja Revision: 1309766
upgpkg: ruby-bundler 2.3.22-2: restructure stdlib to fit into ruby structure Modified: ruby-bundler/trunk/PKGBUILD ----------+ PKGBUILD | 73 +++++++++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 50 insertions(+), 23 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-09-25 19:06:30 UTC (rev 1309765) +++ PKGBUILD 2022-09-25 19:06:46 UTC (rev 1309766) @@ -1,4 +1,5 @@ # Maintainer: George Rawlinson <[email protected]> +# Maintainer: Andreas 'Segaja' Schleifer <segaja at archlinux dot org> # Contributor: Felix Yan <[email protected]> # Contributor: Jonne Haß <[email protected]> # Contributor: Hyacinthe Cartiaux <[email protected]> @@ -5,52 +6,78 @@ # Contributor: Anatol Pomozov <[email protected]> # Contributor: Alexsandr Pavlov <kidoz at mail dot ru> -pkgname=ruby-bundler -_gemname="${pkgname#ruby-}" +_gemname='bundler' +pkgname="ruby-${_gemname}" pkgver=2.3.22 -pkgrel=1 +pkgrel=2 pkgdesc="Manages an application's dependencies through its entire life, across many machines, systematically and repeatably" arch=('any') url='https://bundler.io' license=('MIT') -depends=('ruby' 'rubygems') -makedepends=('git' 'ruby-rdoc' 'ruby-rake') +depends=('ruby') +makedepends=('ruby-rake' 'ruby-rdoc') +#checkdepends=('git' 'ruby-parallel_tests' 'ruby-rspec') options=('!emptydirs') -_commit='44fb4c9ef5a8b4892132d302daf0d50ec08c06b0' -source=("$pkgname::git+https://github.com/rubygems/rubygems#commit=$_commit") -b2sums=('SKIP') +source=("https://github.com/rubygems/rubygems/archive/bundler-v${pkgver}/${pkgname}-${pkgver}.tar.gz") +sha256sums=('95f1732f00606243992541eba3dee863e71c2900e4ceaf4317d5ff1fcb03a0ed') -pkgver() { - cd "$pkgname" +prepare() { + cd "rubygems-${_gemname}-v${pkgver}/${_gemname}" - git describe --tags | sed -e 's/^bundler-v//' + # update gemspec/Gemfile to allow newer version of the dependencies + sed --in-place --regexp-extended 's|~>|>=|g' "${_gemname}.gemspec" } build() { - cd "$pkgname/bundler" + cd "rubygems-${_gemname}-v${pkgver}/${_gemname}" rake build } +# So far tests are not working reliably and hang often +#check() { +# cd "rubygems-${_gemname}-v${pkgver}/${_gemname}" +# +# rake spec:all +#} + package() { + cd "rubygems-${_gemname}-v${pkgver}/${_gemname}" + local _gemdir="$(gem env gemdir)" + local _platform="$(gem env platform | cut -d':' -f2)" + local _extension_api_version="$(ruby -e 'puts Gem.extension_api_version')" gem install \ --local \ + --verbose \ --ignore-dependencies \ --no-user-install \ - --install-dir "$pkgdir/$_gemdir" \ - --bindir "$pkgdir/usr/bin" \ - "$pkgname/$_gemname/pkg/$_gemname-$pkgver.gem" + --install-dir "${pkgdir}/${_gemdir}" \ + --bindir "${pkgdir}/usr/bin" \ + "pkg/${_gemname}-${pkgver}.gem" - # remove unreproducible/unnecessary files - rm -vrf "$pkgdir/$_gemdir/cache" + install --verbose --directory --mode=0755 \ + "${pkgdir}/usr/lib/ruby/${_extension_api_version}/${_platform}" \ + "${pkgdir}${_gemdir}/specifications/default" \ + "${pkgdir}/usr/share/man/man1" \ + "${pkgdir}/usr/share/man/man5" - # license - install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" "$pkgdir/$_gemdir/gems/$_gemname-$pkgver/LICENSE.md" + mv --verbose "${pkgdir}${_gemdir}/gems/${_gemname}-${pkgver}/lib/bundler/man"/*.1 "${pkgdir}/usr/share/man/man1" + mv --verbose "${pkgdir}${_gemdir}/gems/${_gemname}-${pkgver}/lib/bundler/man"/*.5 "${pkgdir}/usr/share/man/man5" + mv --verbose "${pkgdir}${_gemdir}/specifications/${_gemname}-${pkgver}.gemspec" "${pkgdir}${_gemdir}/specifications/default/${_gemname}-${pkgver}.gemspec" + mv --verbose "${pkgdir}${_gemdir}/gems/${_gemname}-${pkgver}/lib/${_gemname}.rb" "${pkgdir}/usr/lib/ruby/${_extension_api_version}/${_gemname}.rb" + mv --verbose "${pkgdir}${_gemdir}/gems/${_gemname}-${pkgver}/lib/${_gemname}" "${pkgdir}/usr/lib/ruby/${_extension_api_version}/${_gemname}" - # move man pages - install -vd "$pkgdir/usr/share/man/"{man1,man5} - mv -vt "$pkgdir/usr/share/man/man1" "$pkgdir/$_gemdir/gems/$_gemname-$pkgver/lib/bundler/man"/*.1 - mv -vt "$pkgdir/usr/share/man/man5" "$pkgdir/$_gemdir/gems/$_gemname-$pkgver/lib/bundler/man"/*.5 + # remove unrepreducible files + rm --force --recursive --verbose \ + "${pkgdir}${_gemdir}/cache/" \ + "${pkgdir}${_gemdir}/build_info/" \ + "${pkgdir}${_gemdir}/extensions/" \ + "${pkgdir}${_gemdir}/gems/${_gemname}-${pkgver}/"{.gitignore,Rakefile,*.*} \ + "${pkgdir}${_gemdir}/plugins/" \ + "${pkgdir}${_gemdir}/doc/${_gemname}-${pkgver}/ri/ext/" + + install --verbose -D --mode=0644 LICENSE.md --target-directory "${pkgdir}/usr/share/licenses/${pkgname}" + install --verbose -D --mode=0644 *.md --target-directory "${pkgdir}/usr/share/doc/${pkgname}" }
