Code Monkey home page Code Monkey logo

quarry's Introduction

Rubygems binary packages repository a.k.a Quarry

Quarry is a tool that manages a rubygems binary repository for Arch Linux. The binary packages repository is hosted at http://pkgbuild.com/~anatolik/quarry; currently only 64 bit is supported. If you want to use the quarry repository, add the following lines to /etc/pacman.conf:

[quarry]
Server = http://pkgbuild.com/~anatolik/quarry/x86_64/

Unlike packages from the AUR, using the binary repository is better because:

  • installing packages from binary repo is much easier and faster.
  • quarry packs the minimal set of files needed for a user. E.g. rubygems with native extensions contain 3 (three!) copies of the same *.so files, rubygems install a lot of garbage such as test file, readmes, etc..
  • quarry handles dependencies correctly.
  • a new version appears in the Arch repo soon after it is published in rubygems, we are talking about hours latency here.

Quarry tool internals

Source code is hosted at github https://github.com/anatol/quarry and released under the GPL3 license.

Quarry manages gems listed in the whitelist_packages file, plus all dependencies of these packages. If you want to see your package in the binary repo add it to https://github.com/anatol/quarry/blob/master/whitelist_packages

Converting a gem into a binary Arch package is simple and straightforward for most gems. Some rubygems need additional configuration. This specific information is stored in config.pkg/$PACKAGE.yaml config files. These are YAML files with the following fields:

  • depends - array of additional dependencies. Quarry extracts ruby dependencies from the gem specification file, but if you want to add native dependencies you should list them here.
  • makedepends - array of additional makedepends.
  • optdepends - a map of optional dependencies. It has the same structure as PKGBUILD optdepends field - (dependency, description).
  • include - by default Quarry copies only bin and lib gem directories. If you want to copy other files/directories then add them here.
  • exclude - exclude the list of directories from the final package. Is useful to exclude default directories such as lib. e.g. some gems do not contain directory lib despite Rubygem says otherwise. exclude property helps Quarry to avoid copying (and failing) such unexistent directories.
  • rename - a map of pairs that rename files in /usr/bin/. Most rubygems files are kept in rubygems specific folders under /usr/lib/ruby/gems. But some rubygems create files under /usr/bin and such files can conflict with popular packages. To avoid this we added a mechanism to prevent conflict by renaming files in /usr/bin. This config option is a map of 'from_name: to_name' renames.
  • gem_install_args - additional arguments used during the gem install step. It can be useful to pass parameters like --use-system-libraries

If the slot version has no config then it checks config for a less specific slot. E.g. if there was a slot version rails-3.2.6 then it would check configs for rails-3.2.6, rails-3.2, rails-3, rails until it finds an existing file.

If a gem requires patching then you can add a $PACKAGE.patch file and it will be applied automatically before installing the gem.

File rebuild_packages contains a list of gems to force rebuild with new pkgrel. It might be useful if e.g. configuration for the gem has changed.

quarry's People

Contributors

anatol avatar gagalago avatar eli-schwartz avatar noraj avatar zetten avatar zerophase avatar jjk-jacky avatar shanewstone avatar nightsense avatar tohojo avatar rabidlogic avatar thomas-huegel avatar ribbons avatar carstene1ns avatar ankitrgadiya avatar euclio avatar wieschie avatar garwil avatar guillaumededrie avatar jxir avatar coderobe avatar kugel- avatar woodruffw avatar daurnimator avatar javaaddict avatar

Stargazers

 avatar  avatar Attila Györffy avatar Robert Pannick avatar Gabriel Del avatar Jeff Carpenter avatar Nogweii avatar woatungau avatar Benno Bielmeier avatar Arjun Vikram avatar  avatar Georgiy Odisharia avatar  avatar Hiroshi Hatake avatar Jon Austin avatar  avatar Pierre Chapuis avatar Andrew Louden avatar Jeremy Laviole avatar Aakarshit Uppal avatar Matt Schreiber avatar Shengyu Zhang avatar Alex Branham avatar Jo-Herman Haugholt avatar  avatar Karina J. Kwiatek avatar  avatar Benedikt avatar janluk avatar Chinggis Tenger avatar  avatar Ashhar Hasan avatar Sebastian Schlatow avatar Quint Guvernator avatar Daniel M. Capella avatar Tommaso Sardelli avatar Hacktivate avatar  avatar  avatar Julien Nicoulaud avatar Emily Marigold Klassen avatar Jaroslav Lichtblau avatar Anatoly Chernov avatar Remy Adriaanse avatar  avatar Chris Concannon avatar  avatar Valerie Enfys avatar Paweł W avatar  avatar  avatar  avatar Nishant Rodrigues avatar

Watchers

 avatar Sebastian Schlatow avatar James Cloos avatar  avatar  avatar Jaroslav Lichtblau avatar  avatar  avatar

quarry's Issues

Show dependencies of gems

It would be nice to have a command to show some kind of dependency graph to see which gems will be added to the repository when a gem is whitelisted.
Also, this could be used to find the "offender" that needs some rather old slot version of a gem.

pactree comes to mind, but that only works after the addition to the database:

ruby-guard
|-ruby
|-ruby-formatador
| `-ruby
|-ruby-listen
| |-ruby
| |-ruby-rb-fsevent
| | `-ruby
| `-ruby-rb-inotify
|   |-ruby
|   `-ruby-ffi
|     `-ruby
|-ruby-lumberjack
| `-ruby
|-ruby-nenv
| `-ruby
|-ruby-notiffany
| |-ruby
| |-ruby-nenv
| `-ruby-shellany
|   `-ruby
|-ruby-pry
| |-ruby
| |-ruby-coderay
| | `-ruby
| |-ruby-method_source
| | `-ruby
| `-ruby-slop-3
|   `-ruby
|-ruby-shellany
`-ruby-thor
  `-ruby

It should be possible to implement this using the rubygems api, as there is already a command to display them (gem dependency):

Gem guard-2.13.0
  formatador (>= 0.2.4)
  listen (<= 4.0, >= 2.7)
  lumberjack (~> 1.0)
  nenv (~> 0.1)
  notiffany (~> 0.0)
  pry (>= 0.9.12)
  shellany (~> 0.0)
  thor (>= 0.18.1)

However, this can not easily filter out slot versions.

ruby-unicode-display_width has missing file

ruby-unicode-display_width is used by rubocop and when I launch it I have this error:

/usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/lib/unicode/display_width/index.rb:6:in `binread': No such file or directory @ rb_sysopen - /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/data/display_width.marshal.gz

This file is missing in the package:

pacman -Ql ruby-unicode-display_width
ruby-unicode-display_width /usr/
ruby-unicode-display_width /usr/lib/
ruby-unicode-display_width /usr/lib/ruby/
ruby-unicode-display_width /usr/lib/ruby/gems/
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/lib/
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/lib/unicode/
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/lib/unicode/display_width.rb
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/lib/unicode/display_width/
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/lib/unicode/display_width/constants.rb
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/lib/unicode/display_width/index.rb
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/lib/unicode/display_width/no_string_ext.rb
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/gems/unicode-display_width-1.3.2/lib/unicode/display_width/string_ext.rb
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/specifications/
ruby-unicode-display_width /usr/lib/ruby/gems/2.5.0/specifications/unicode-display_width-1.3.2.gemspec
ruby-unicode-display_width /usr/share/
ruby-unicode-display_width /usr/share/licenses/
ruby-unicode-display_width /usr/share/licenses/ruby-unicode-display_width/
ruby-unicode-display_width /usr/share/licenses/ruby-unicode-display_width/MIT-LICENSE.txt

I don't understand how I can try to add this file before proposing a pull request. Can you help me?

github repository: https://github.com/janlelis/unicode-display_width
gem: https://rubygems.org/gems/unicode-display_width

ruby-unicorn version mismatch between Arch community and quarry

In the community repo ruby-unicorn is at version 1.0, and on here it's version 5.2.0. Looking further into the Arch package that version of ruby-unicorn seems to be a different project related to qemu. Maybe, ruby-unicorn in quarry should have a different name, so as not to conflict with the Arch package?

Compass doesn't work

Running compass (package ruby-compass) results in an error

$ compass
/usr/lib/ruby/gems/2.2.0/gems/compass-core-1.0.3/lib/compass/core/version.rb:10:in `read': No such file or directory @ rb_sysopen - /usr/lib/ruby/gems/2.2.0/gems/compass-core-1.0.3/VERSION (Errno::ENOENT)
    from /usr/lib/ruby/gems/2.2.0/gems/compass-core-1.0.3/lib/compass/core/version.rb:10:in `<module:Core>'
    from /usr/lib/ruby/gems/2.2.0/gems/compass-core-1.0.3/lib/compass/core/version.rb:4:in `<module:Compass>'
    from /usr/lib/ruby/gems/2.2.0/gems/compass-core-1.0.3/lib/compass/core/version.rb:3:in `<top (required)>'
    from /usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /usr/lib/ruby/gems/2.2.0/gems/compass-core-1.0.3/lib/compass/core.rb:1:in `<top (required)>'
    from /usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /usr/lib/ruby/gems/2.2.0/gems/compass-1.0.3/lib/compass.rb:14:in `block in <top (required)>'
    from /usr/lib/ruby/gems/2.2.0/gems/compass-1.0.3/lib/compass.rb:13:in `each'
    from /usr/lib/ruby/gems/2.2.0/gems/compass-1.0.3/lib/compass.rb:13:in `<top (required)>'
    from /usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /usr/lib/ruby/gems/2.2.0/gems/compass-1.0.3/bin/compass:20:in `block in <top (required)>'
    from /usr/lib/ruby/gems/2.2.0/gems/compass-1.0.3/bin/compass:8:in `fallback_load_path'
    from /usr/lib/ruby/gems/2.2.0/gems/compass-1.0.3/bin/compass:19:in `<top (required)>'
    from /usr/bin/compass:23:in `load'
    from /usr/bin/compass:23:in `<main>'

Installing it via 'gem install compass' works fine

jquery-rails can't find jquery.

jquery-rails needs the vendor/assets/javascripts path to find jquery as intended. I can always just soft link the folder used by jquery on the aur, but rails includes each major version of jquery with the gem. If you're fine with including the vendor folder I'll just submit a pull request.

I'm guessing it would be

include:
  - vendor/assets/javascripts/*

Cannot find rake for project

I'm having issues getting the correct rake for my project with these lines in the Rakefile:

#!/usr/bin/env rake

require 'rspec/core/rake_task'

RSpec::Core::RakeTask.new(:spec)

task default: :spec

I believe it's caused by rake not having 'exe/rake`

The error message I receive is:

Error:[rake --tasks] /usr/bin/rake:22:in `load': cannot load such file -- /usr/lib/ruby/gems/2.3.0/specifications/exe/rake (LoadError)
	from /usr/bin/rake:22:in `<main>'

usr/bin/rake line 22 has:

load Gem.bin_path('rake', 'rake', version)

Here's the reset of the rake gem files that aren't included incase any other files or directories should be added for rake.

.
├── appveyor.yml
├── bin
│   ├── console
│   └── setup
├── CONTRIBUTING.rdoc
├── doc
│   ├── command_line_usage.rdoc
│   ├── example
│   │   ├── a.c
│   │   ├── b.c
│   │   ├── main.c
│   │   ├── Rakefile1
│   │   └── Rakefile2
│   ├── glossary.rdoc
│   ├── jamis.rb
│   ├── proto_rake.rdoc
│   ├── rake.1
│   ├── rakefile.rdoc
│   └── rational.rdoc
├── exe
│   └── rake
├── Gemfile
├── Rakefile
├── rake.gemspec
└── README.rdoc

Gollum can't open libicuuc.so.58

It seems, gollum is compiled against the wrong version of libicuuc.so - current is libicuuc.so.59:

Jul 31 19:59:25 nlopc43 gollum[13796]: /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require': libicuuc.so.58: cannot open shared object file: No such file or directory - /usr/lib/ruby/gems/2.4.0/gems/charlock_holmes-0.7.3/lib/charlock_holmes/charlock
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/gems/2.4.0/gems/charlock_holmes-0.7.3/lib/charlock_holmes.rb:1:in `<top (required)>'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/gems/2.4.0/gems/gitlab-grit-2.8.1/lib/grit.rb:79:in `<top (required)>'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter/git_layer_grit.rb:3:in `<top (required)>'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter.rb:1:in `<top (required)>'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-lib-4.2.7/lib/gollum-lib.rb:13:in `<top (required)>'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-4.1.1/lib/gollum/app.rb:4:in `<top (required)>'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-4.1.1/bin/gollum:242:in `<top (required)>'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/bin/gollum:22:in `load'
Jul 31 19:59:25 nlopc43 gollum[13796]:         from /usr/bin/gollum:22:in `<main>'

... or is it charlock-holmes?

Could you please recompile?
Cheers, deep42thought

pacman -Syu gave conflicts today

Apparently, the default ruby package in Arch provides with some files that are also present in some packages here:

error: failed to commit transaction (conflicting files)
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/hoe/minitest.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/assertions.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/autorun.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/benchmark.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/expectations.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/hell.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/mock.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/parallel.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/pride.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/pride_plugin.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/spec.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/test.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/gems/minitest-5.8.3/lib/minitest/unit.rb exists in filesystem
ruby-minitest: /usr/lib/ruby/gems/2.3.0/specifications/minitest-5.8.3.gemspec exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/alt_system.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/application.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/backtrace.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/clean.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/cloneable.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/contrib/compositepublisher.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/contrib/ftptools.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/contrib/publisher.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/contrib/rubyforgepublisher.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/contrib/sshpublisher.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/contrib/sys.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/cpu_counter.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/default_loader.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/dsl_definition.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/early_time.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/ext/core.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/ext/module.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/ext/pathname.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/ext/string.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/ext/time.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/file_creation_task.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/file_list.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/file_task.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/file_utils.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/file_utils_ext.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/gempackagetask.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/invocation_chain.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/invocation_exception_mixin.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/late_time.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/linked_list.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/loaders/makefile.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/multi_task.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/name_space.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/packagetask.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/pathmap.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/phony.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/private_reader.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/promise.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/pseudo_status.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/rake_module.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/rake_test_loader.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/rdoctask.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/ruby182_test_unit_fix.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/rule_recursion_overflow_error.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/runtest.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/scope.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/task.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/task_argument_error.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/task_arguments.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/task_manager.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/tasklib.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/testtask.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/thread_history_display.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/thread_pool.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/trace_output.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/version.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/gems/rake-10.4.2/lib/rake/win32.rb exists in filesystem
ruby-rake: /usr/lib/ruby/gems/2.3.0/specifications/rake-10.4.2.gemspec exists in filesystem
ruby-net-telnet: /usr/lib/ruby/gems/2.3.0/gems/net-telnet-0.1.1/lib/net-telnet.rb exists in filesystem
ruby-net-telnet: /usr/lib/ruby/gems/2.3.0/gems/net-telnet-0.1.1/lib/net/telnet.rb exists in filesystem
ruby-net-telnet: /usr/lib/ruby/gems/2.3.0/gems/net-telnet-0.1.1/lib/net/telnet/version.rb exists in filesystem
ruby-net-telnet: /usr/lib/ruby/gems/2.3.0/specifications/net-telnet-0.1.1.gemspec exists in filesystem

I ran pacman -Syu --ignore ruby-net-telnet,ruby-rake,ruby-minitest to overcome this for now.

ruby-asciidoctor-pdf: Couldn't find the font: Helvetica.afm

I am using Manjaro. I added

[quarry]
Server = https://pkgbuild.com/~anatolik/quarry/x86_64/

to /etc/pacman.conf

and installed ruby-asciidoctor-pdf and ruby-pygments.rb, but when I run

asciidoctor-pdf -a icons=font -a source-highlighter=pygments -a pdf-page-size=letter foo.adoc

I get the following error:

Couldn't find the font: Helvetica.afm in any of:
.
/usr/lib/afm
/usr/local/lib/afm
/usr/openwin/lib/fonts/afm
/usr/lib/ruby/gems/2.5.0/gems/prawn-2.2.2/data/fonts
  Use --trace for backtrace

Is there a missing dependency or files not being included in the ruby-prawn package that should? The ruby-prawn package does not appear to even install a /usr/lib/ruby/gems/2.5.0/gems/prawn-2.2.2/data directory.

gemojione misses config/index.json

The update from ruby-gollum-4.0.1-2 to ruby-gollum-4.1.0-1 breaks gollum which then fails to start with the error:

/usr/lib/ruby/gems/2.4.0/gems/gemojione-2.6.1/lib/gemojione/index.rb:5:in `read': No such file or directory @ rb_sysopen - /usr/lib/ruby/gems/2.4.0/gems/gemojione-2.6.1/config/index.json (Errno::ENOENT)

I guess, it's ruby-gemojione-2's fault, not to provide this file - but I may be wrong, because I don't know anything about ruby.

Cheers,
deep-42-thought

gtk3 dependency missing

I forgot to add gtk3 and gobject-introspection for native dependencies of the gtk3 gem (the bindings are based gobject-introspection but native gtk3 doesn't itself depend on that).

I didn't open a PR because I can't find gtk3 gem in the whitelist in git master.

See #52

ruby-gollum does not run w/o ruby-rdoc, but it's not a dependency

I got the following error in my log, when trying to start gollum:

Feb 08 08:50:37 nlopc43 systemd[1]: Started Gollum Wiki Server.
Feb 08 08:50:37 nlopc43 gollum[4786]: /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require': cannot load such file -- rdoc/markup/to_html (LoadError)
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/gems/2.5.0/gems/github-markup-1.7.0/lib/github/markup/rdoc.rb:3:in `<top (required)>'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/gems/2.5.0/gems/github-markup-1.7.0/lib/github/markups.rb:2:in `<module:Markup>'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/gems/2.5.0/gems/github-markup-1.7.0/lib/github/markup.rb:103:in `instance_eval'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/gems/2.5.0/gems/github-markup-1.7.0/lib/github/markup.rb:103:in `<module:Markup>'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/gems/2.5.0/gems/github-markup-1.7.0/lib/github/markup.rb:24:in `<module:GitHub>'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/gems/2.5.0/gems/github-markup-1.7.0/lib/github/markup.rb:10:in `<top (required)>'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-4.1.2/lib/gollum.rb:8:in `<top (required)>'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-4.1.2/bin/gollum:7:in `<top (required)>'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/bin/gollum:23:in `load'
Feb 08 08:50:37 nlopc43 gollum[4786]:         from /usr/bin/gollum:23:in `<main>'
Feb 08 08:50:37 nlopc43 systemd[1]: gollum.service: Main process exited, code=exited, status=1/FAILURE
Feb 08 08:50:37 nlopc43 systemd[1]: gollum.service: Failed with result 'exit-code'.

installing ruby-rdoc solved the issue for me. Maybe it should be added as a dependency somewhere?

Standard library gems

Often the standard library gems get updated between different Ruby releases, but not all of these gems are present in Quarry. The following gems are missing:

bigdecimal io-console power_assert psych test-unit

The ones that are present for reference:

json minitest rake rdoc

Maybe there could be a metapackage or group to install all of these at once, e.g. ruby-stdlib

ruby thor 0.19.4 causes issues with rails.

Rails needs thor version 0.19.1. Something about the updates to thor overwrites the default Rails expects in some configuration strings. Would it be possible to add 0.19.1 till Rails, or thor fixes the issue?

Source

something needs rebuild against new libicuuc.so.62

Aug 14 06:43:15 jeti100 systemd[1]: Started Gollum Wiki Server.
Aug 14 06:43:16 jeti100 gollum[1428]: /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require': libicuuc.so.61: cannot open shared object file: No such file or directory - /usr/lib/ruby/gems/2.5.0/gems/charlock_holmes-0.7.6/lib/charlock_holmes/charlock_holmes.so (LoadError)
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/gems/2.5.0/gems/charlock_holmes-0.7.6/lib/charlock_holmes.rb:1:in `<top (required)>'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/gems/2.5.0/gems/gitlab-grit-2.8.2/lib/grit.rb:79:in `<top (required)>'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter/git_layer_grit.rb:3:in `<top (required)>'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter.rb:1:in `<top (required)>'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-lib-4.2.7/lib/gollum-lib.rb:13:in `<top (required)>'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-4.1.2/lib/gollum/app.rb:4:in `<top (required)>'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-4.1.2/bin/gollum:242:in `<top (required)>'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/bin/gollum:23:in `load'
Aug 14 06:43:16 jeti100 gollum[1428]:         from /usr/bin/gollum:23:in `<main>'
Aug 14 06:43:16 jeti100 systemd[1]: gollum-wiki-server.service: Main process exited, code=exited, status=1/FAILURE
Aug 14 06:43:16 jeti100 systemd[1]: gollum-wiki-server.service: Failed with result 'exit-code'.

I'm not sure if this is ruby-gollum's or rubygem's fault. Please excuse if this has nothing to do with quarry.

Regards,
deep-42-thought

provide rsync for mirroring

Is it possible to provide access via rsync for mirroring the repository?
If not, is it possible to create a lastupdate file?

Some packages refuse to (re)build without rake

At least, gdk3 will not do so when bootstrapping quarry.

Building native extensions. This could take a while...
ERROR:  Error installing gdk3-3.2.1.gem:
	ERROR: Failed to build gem native extension.

    current directory: /build/ruby-gdk3/pkg/ruby-gdk3/usr/lib/ruby/gems/2.5.0/gems/gdk3-3.2.1/dependency-check
rake RUBYARCHDIR=/build/ruby-gdk3/pkg/ruby-gdk3/usr/lib/ruby/gems/2.5.0/extensions/x86_64-linux/2.5.0/gdk3-3.2.1 RUBYLIBDIR=/build/ruby-gdk3/pkg/ruby-gdk3/usr/lib/ruby/gems/2.5.0/extensions/x86_64-linux/2.5.0/gdk3-3.2.1
sh: rake: command not found

rake failed, exit code 127

Gem files will remain installed in /build/ruby-gdk3/pkg/ruby-gdk3/usr/lib/ruby/gems/2.5.0/gems/gdk3-3.2.1 for inspection.
Results logged to /build/ruby-gdk3/pkg/ruby-gdk3/usr/lib/ruby/gems/2.5.0/extensions/x86_64-linux/2.5.0/gdk3-3.2.1/gem_make.out

This might not be the only package that no longer cleanly builds after https://lists.archlinux.org/pipermail/arch-dev-public/2018-January/029120.html

...

EDIT: It helps if you don't delete the existing config.pkg/*.yaml :D
Anyway, vte3 has the same issue, let's see what else crops up.

dry-validation: include config directory

Running hanami new test, which requires dry-validation, I obtain this error:

/usr/lib/ruby/gems/2.4.0/gems/dry-validation-0.11.1/lib/dry/validation/messages/abstract.rb:13:in `realpath': No such file or directory @ realpath_rec - /usr/lib/ruby/gems/2.4.0/gems/dry-validation-0.11.1/config (Errno::ENOENT)

The content of line 13 in abstract.rb is this one:
DEFAULT_PATH = Pathname(__dir__).join('../../../../config/errors.yml').realpath.freeze

RubyMine can't find Rails system gem.

I have to go ahead and install Rails for the current user in order for RubyMine to find the gem for autocompletion. All Rails has is the documentation file, but without it RubyMine doesn't believe it is installed. Is it possible to include the README.md file for Rails?

libv8 fails to rebuild

==> Starting package()...
Building native extensions. This could take a while...
ERROR:  Error installing libv8-6.3.292.48.1.gem:
	ERROR: Failed to build gem native extension.

    current directory: /build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/ext/libv8
/usr/bin/ruby -r ./siteconf20180227-650-1v7hfd.rb extconf.rb
creating Makefile
which: no python in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
Traceback (most recent call last):
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/gclient.py", line 2679, in <module>
    sys.exit(main(sys.argv[1:]))
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/gclient.py", line 2665, in main
    return dispatcher.execute(OptionParser(), argv)
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/subcommand.py", line 252, in execute
    return command(parser, args[1:])
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/gclient.py", line 2420, in CMDsync
    ret = client.RunOnDeps('update', args)
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/gclient.py", line 1510, in RunOnDeps
    self.RunHooksRecursively(self._options, pm)
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/gclient.py", line 1033, in RunHooksRecursively
    hook.run(self.root.root_dir)
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/gclient.py", line 200, in run
    not gclient_eval.EvaluateCondition(self._condition, self._variables)):
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/gclient_eval.py", line 319, in EvaluateCondition
    return _convert(main_node)
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/gclient_eval.py", line 279, in _convert
    left = _convert(node.values[0])
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/gclient_eval.py", line 286, in _convert
    'invalid "and" operand %r (inside %r)' % (right, condition))
ValueError: invalid "and" operand 'checkout_arm' (inside '(checkout_linux and checkout_arm) and not build_for_node')
Running: gclient root
Running: gclient config --spec 'solutions = [
  {
    "url": "https://chromium.googlesource.com/v8/v8.git",
    "managed": False,
    "name": "v8",
    "deps_file": "DEPS",
    "custom_deps": {},
  },
]
'
Running: gclient sync --with_branch_heads
Traceback (most recent call last):
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/fetch.py", line 301, in <module>
    sys.exit(main())
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/fetch.py", line 296, in main
    return run(options, spec, root)
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/fetch.py", line 290, in run
    return checkout.init()
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/fetch.py", line 133, in init
    self.run_gclient(*sync_cmd)
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/fetch.py", line 78, in run_gclient
    return self.run(cmd_prefix + cmd, **kwargs)
  File "/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/vendor/depot_tools/fetch.py", line 68, in run
    return subprocess.check_output(cmd, **kwargs)
  File "/usr/lib/python2.7/subprocess.py", line 219, in check_output
    raise CalledProcessError(retcode, cmd, output=output)
subprocess.CalledProcessError: Command '('gclient', 'sync', '--with_branch_heads')' returned non-zero exit status 1
/build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/ext/libv8/builder.rb:117:in `block in setup_build_deps!': unable to fetch v8 source (RuntimeError)
	from /build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/ext/libv8/builder.rb:115:in `chdir'
	from /build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/ext/libv8/builder.rb:115:in `setup_build_deps!'
	from /build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/ext/libv8/builder.rb:71:in `build_libv8!'
	from /build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1/ext/libv8/location.rb:24:in `install!'
	from extconf.rb:7:in `<main>'

extconf failed, exit code 1

Gem files will remain installed in /build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/gems/libv8-6.3.292.48.1 for inspection.
Results logged to /build/ruby-libv8/pkg/ruby-libv8/usr/lib/ruby/gems/2.5.0/extensions/x86_64-linux/2.5.0/libv8-6.3.292.48.1/gem_make.out
==> ERROR: A failure occurred in package().

ruby-heroku fails to run

This looks like a packaging error, but I'm not entirely sure how to fix it:

$ heroku run rails s --app my-test-app
heroku-cli: Installing Toolbelt v4... !    Heroku client internal error.
 !    Search for help at: https://help.heroku.com
 !    Or report a bug at: https://github.com/heroku/heroku/issues/new

    Error:       No such file or directory @ rb_sysopen - /usr/lib/ruby/gems/2.3.0/gems/heroku-3.42.44/data/cacert.pem (Errno::ENOENT)
    Command:     heroku run rails s --app shipnow-staging-notifications
    Version:     heroku-gem/3.42.44 (x86_64-linux) ruby/2.3.0
    Error ID:    3d56ded197ba4fd1ab2beedc5f74b38d


    More information in /home/hugo/.heroku/error.log

$ cat /home/hugo/.heroku/error.log
Heroku client internal error.
No such file or directory @ rb_sysopen - /usr/lib/ruby/gems/2.3.0/gems/heroku-3.42.44/data/cacert.pem
/usr/lib/ruby/2.3.0/fileutils.rb:1392:in `initialize'
/usr/lib/ruby/2.3.0/fileutils.rb:1392:in `open'
/usr/lib/ruby/2.3.0/fileutils.rb:1392:in `copy_file'
/usr/lib/ruby/2.3.0/fileutils.rb:486:in `copy_file'
/usr/lib/ruby/2.3.0/fileutils.rb:403:in `block in cp'
/usr/lib/ruby/2.3.0/fileutils.rb:1571:in `block in fu_each_src_dest'
/usr/lib/ruby/2.3.0/fileutils.rb:1587:in `fu_each_src_dest0'
/usr/lib/ruby/2.3.0/fileutils.rb:1569:in `fu_each_src_dest'
/usr/lib/ruby/2.3.0/fileutils.rb:402:in `cp'
/usr/lib/ruby/gems/2.3.0/gems/heroku-3.42.44/lib/heroku/jsplugin.rb:160:in `copy_ca_cert'
/usr/lib/ruby/gems/2.3.0/gems/heroku-3.42.44/lib/heroku/jsplugin.rb:134:in `setup'
/usr/lib/ruby/gems/2.3.0/gems/heroku-3.42.44/lib/heroku/cli.rb:27:in `start'
/usr/lib/ruby/gems/2.3.0/gems/heroku-3.42.44/bin/heroku:24:in `<top (required)>'
/usr/bin/heroku:23:in `load'
/usr/bin/heroku:23:in `<main>'

rebuild for icu-61 needed

currently, e.g. gollum fails to start with:

Apr 07 08:23:47 jeti100 systemd[1]: Started Gollum Wiki Server.
Apr 07 08:23:47 jeti100 gollum[1302]: /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require': libicuuc.so.60: cannot open shared object file: No such file or directory - /usr/lib/ruby/gems/2.5.0/gems/charlock_holmes-0.7.6/lib/charlock_holmes/charlock_holmes.so (LoadError)
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/gems/2.5.0/gems/charlock_holmes-0.7.6/lib/charlock_holmes.rb:1:in `<top (required)>'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/gems/2.5.0/gems/gitlab-grit-2.8.2/lib/grit.rb:79:in `<top (required)>'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter/git_layer_grit.rb:3:in `<top (required)>'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter.rb:1:in `<top (required)>'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-lib-4.2.7/lib/gollum-lib.rb:13:in `<top (required)>'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-4.1.2/lib/gollum/app.rb:4:in `<top (required)>'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-4.1.2/bin/gollum:242:in `<top (required)>'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/bin/gollum:23:in `load'
Apr 07 08:23:47 jeti100 gollum[1302]:         from /usr/bin/gollum:23:in `<main>'
Apr 07 08:23:47 jeti100 systemd[1]: gollum-wiki-server.service: Main process exited, code=exited, status=1/FAILURE
Apr 07 08:23:47 jeti100 systemd[1]: gollum-wiki-server.service: Failed with result 'exit-code'.

I'm not sure, what exactly needs the rebuild, but I think, scrubbing through the packages with "objdump -x $pkg | grep NEEDED | grep libicuuc.so.60" might bring up more packages anyway.

Issue upgrading ruby-mini_portile2.

I'm pretty sure this is related to a conflict between quarry and the Arch repos; since, the arch package for ruby-mini_portile2 has not been upgraded in almost a year. Arch repo has version 2.3.0-3, and the version attempted to be installed is ruby-mini_portile2-2.3-2.3.0-1. This is almost definitely related to a change in nokogiri.

Error messages:

error: failed to commit transaction (conflicting files) ruby-mini_portile2-2.3: /usr/lib/ruby/gems/2.5.0/gems/mini_portile2-2.3.0/lib/mini_portile2.rb exists in filesystem (owned by ruby-mini_portile2) ruby-mini_portile2-2.3: /usr/lib/ruby/gems/2.5.0/gems/mini_portile2-2.3.0/lib/mini_portile2/mini_portile.rb exists in filesystem (owned by ruby-mini_portile2) ruby-mini_portile2-2.3: /usr/lib/ruby/gems/2.5.0/gems/mini_portile2-2.3.0/lib/mini_portile2/mini_portile_cmake.rb exists in filesystem (owned by ruby-mini_portile2) ruby-mini_portile2-2.3: /usr/lib/ruby/gems/2.5.0/gems/mini_portile2-2.3.0/lib/mini_portile2/version.rb exists in filesystem (owned by ruby-mini_portile2) ruby-mini_portile2-2.3: /usr/lib/ruby/gems/2.5.0/specifications/mini_portile2-2.3.0.gemspec exists in filesystem (owned by ruby-mini_portile2)

Add t

Hi @anatol ,

Thanks for the repo!
I'm not sure if this is the place to ask, but could you add https://github.com/sferik/t to the quarry repo?

Also, if you need a mirror for the repo, ask away, I have a server doing nothing that could help.

track external dependencies

Tracking of external dependencies, of which a specific version is required would help avoiding breakage in case the external dependency is updated. This would prevent issues like #79, #96 or #99
I suggest adding depends=("icu=$version") to the PKGBUILD.

regards,
deep-42-thought

gollum (?) needs a rebuild due to icu update

Nov 27 11:42:54 jeti100 systemd[1]: Started Gollum Wiki Server.
Nov 27 11:42:54 jeti100 gollum[40843]: /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require': libicuuc.so.59: cannot open shared object file: No suc
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/gems/2.4.0/gems/charlock_holmes-0.7.5/lib/charlock_holmes.rb:1:in `<top (required)>'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/gems/2.4.0/gems/gitlab-grit-2.8.2/lib/grit.rb:79:in `<top (required)>'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter/git_layer_grit.rb:3:in `<top (required)>'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter.rb:1:in `<top (required)>'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-lib-4.2.7/lib/gollum-lib.rb:13:in `<top (required)>'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-4.1.2/lib/gollum/app.rb:4:in `<top (required)>'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/lib/ruby/gems/2.4.0/gems/gollum-4.1.2/bin/gollum:242:in `<top (required)>'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/bin/gollum:22:in `load'
Nov 27 11:42:54 jeti100 gollum[40843]:         from /usr/bin/gollum:22:in `<main>'
Nov 27 11:42:54 jeti100 systemd[1]: gollum-wiki-server.service: Main process exited, code=exited, status=1/FAILURE
Nov 27 11:42:54 jeti100 systemd[1]: gollum-wiki-server.service: Failed with result 'exit-code'.

ruby-mail pulls older version

When pulling the latest version of rails the previous versions mail gem keeps getting pulled down. I tried uninstalling rails, and just pulling ruby-mail-2.6.4, and keep getting version 2.6.3. Is this a bug or do I need to enter another command on top of pacman -S ruby-mail to get the latest version?

duplicates of upstream ruby-packages

Hi,

I just noticed, that there is ruby-rdoc in extra and in quarry. I wonder:
a) if this is necessary and
b) which version of both I should install - currently I have listed quarry last, because I don't like the idea of overwriting official packages by packages from foreign, unofficial repositories, but I guess that's wrong then.

cheers, deep-42-thought

Disable gems autoimnstall for ruby-rails

ruby-rails tries to install gems with 'gem install' first time it runs 'rails new'. It messes up with quarry installed gems.

Either disable this feature or use 'sudo pacman -S ruby-XXX' to install those packages.

github-linguist conflicts with qtchooser

Hi, I submitted a pull request the other day to get github-linguist added to quarry (thanks for the merge). However, upon trying to install the binary it seems that the default name of the executable conflicts with /usr/bin/linguist provided by qtchooser. Is there a way to change the name of the binary provided by github-linguist to a name that doesn't conflict (perhaps ruby-linguist, or github-linguist)?

Port Quarry to work with official Arch repositories

Quarry project reaches 4 year soon. For all this time it shown great result in keeping ruby repository up-to-date. Current stats is: repository contains 1096 gems with update rate ~40-50 packages per week. Quarry works really well and requires little time for maintenance.

It would be really great to get quarry to maintain packages in [community] Arch repository as well. It will help to save maintainers time. It also could help to bring a lot more popular ruby packages to [community]: jekyll, vagrant, rails, ...

ruby-asciidoctor-pdf: Icon font not found for set: fa (Prawn::Errors::UnknownFont)

Thanks for quickly resolving the issue where the font Helvetica.afm could not be found. Now I'm running into another issue with some of my AsciiDoc files. When I run

asciidoctor-pdf -a icons=font -a source-highlighter=pygments -a pdf-page-size=letter foo.adoc

I get the following error

Icon font not found for set: fa
  Use --trace for backtrace

It seems related to this discussion. It appears the solution is to downgrade prawn.

Could quarry be distributed as a gem?

So it can be installed from the repository by pacman -S ruby-quarry. (Unfortunately, the name "quarry" is already taken, so other name would probably be required to push it to Rubygems.)

It would also make it easier to get started with the project for those rubyists who are not so familiar with Arch.

I beg your pardon if it is out of scope of the project, but I wonder if I could use it to set up a local repository? I am looking for something which would allow to fetch all dependencies first, inspect them, and then deploy without relying on external resources(like https://rubygems.org or http://pkgbuild.com/~anatolik/quarry/x86_64/); something similar is described here.

wikitext

Hi,

Could it be possible to add the "wikitext" gem (https://rubygems.org/gems/wikitext) ?

It's a native extension, so it need root rights to be build. An installation with pacman could be better than installing the gem system-wide.

charlock holmes needs recompilation against icu 63

Nov 14 06:26:06 jeti100 gollum[1378]: /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require': libicuuc.so.62: cannot open shared object file: No such file or directory - /usr/lib/ruby/gems/2.5.0/gems/charlock_holmes-0.7.6/lib/charlock_holmes/charlock_holmes.so (LoadError)
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/gems/2.5.0/gems/charlock_holmes-0.7.6/lib/charlock_holmes.rb:1:in `<top (required)>'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/gems/2.5.0/gems/gitlab-grit-2.8.2/lib/grit.rb:79:in `<top (required)>'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter/git_layer_grit.rb:3:in `<top (required)>'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-grit_adapter-1.0.1/lib/grit_adapter.rb:1:in `<top (required)>'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-lib-4.2.10/lib/gollum-lib.rb:13:in `<top (required)>'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-4.1.4/lib/gollum/app.rb:4:in `<top (required)>'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/lib/ruby/gems/2.5.0/gems/gollum-4.1.4/bin/gollum:242:in `<top (required)>'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/bin/gollum:23:in `load'
Nov 14 06:26:06 jeti100 gollum[1378]:         from /usr/bin/gollum:23:in `<main>'
Nov 14 06:26:06 jeti100 systemd[1]: gollum-wiki-server.service: Main process exited, code=exited, status=1/FAILURE
Nov 14 06:26:06 jeti100 systemd[1]: gollum-wiki-server.service: Failed with result 'exit-code'.

... maybe there is some way to detect this automatically before it fails (or just add a versioned dependency to charlock-holmes?)

regards,
deep-42-thought

Octopress package incomplete

Sorry to bother you with octopress again, however, the package provided is missing some of the files needed to make the package fully functional.

The package generated by quarry has a bin and lib directory in $pkgdir/lib/ruby/gems/2.3.0/gems/octopress-3.0.11. However, when installing via gem, it also comes with a few more files and directories in that directory, most notably the scaffold directory without which octopress cannot init a new blog.

Unfortunately, I have no clue why this is happening (the pkgbuild in quarry.rb seems OK).

Segmentation fault in rspec

After installing puppetlabs_spec_helper (thanks for the quick merge by the way!) I tried to execute some of the rspec tests on my modules and hit a nasty error.

Firstly, the ruby-rspec-core package in Quarry does not include the /path/to/rspec-core/exe/rspec executable, but instead it is installed to /usr/bin/rspec. This is presumably part of the neat space-saving features of Quarry, but trying to execute rake spec throws this error:

/usr/bin/ruby -I/usr/lib/ruby/gems/2.1.0/gems/rspec-support-3.1.0/lib:/usr/lib/ruby/gems/2.1.0/gems/rspec-core-3.1.3/lib /usr/lib/ruby/gems/2.1.0/gems/rspec-core-3.1.3/exe/rspec --pattern spec/\{classes,defines,unit,functions,hosts,integration\}/\*\*/\*_spec.rb --color
/usr/bin/ruby: No such file or directory -- /usr/lib/ruby/gems/2.1.0/gems/rspec-core-3.1.3/exe/rspec (LoadError)

Symlinking the /usr/bin/rspec executable to the expected location solves this problem (can this symlink be automatically packaged?), but then it seems that it hits a segmentation fault. The full massive stacktrace can be found in this gist: https://gist.github.com/Zetten/6c183e110ac8f884415b

The rspec from a manually-installed rspec-core gem on this machine works normally. The difference is fairly pronounced:

Quarry:

#!/usr/bin/ruby
#
# This file was generated by RubyGems.
#
# The application 'rspec-core' is installed as part of a gem, and
# this file is here to facilitate running it.
#

require 'rubygems'

version = ">= 0"

if ARGV.first
  str = ARGV.first
  str = str.dup.force_encoding("BINARY") if str.respond_to? :force_encoding
  if str =~ /\A_(.*)_\z/ and Gem::Version.correct?($1) then
    version = $1
    ARGV.shift
  end
end

gem 'rspec-core', version
load Gem.bin_path('rspec-core', 'rspec', version)

Self-installed:

#!/usr/bin/env ruby

require 'rspec/core'
RSpec::Core::Runner.invoke

I haven't yet dug into the Quarry source to see what could be causing this, but someone might be able to figure it out from this.

gir_ffi and gir_ffi-gtk

These are pure-ruby alternatives to ruby-gnome2 which is already available in quarry. Can these be added, please?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.