Commit graph

193 commits

Author SHA1 Message Date
Alyssa Ross 26053cae74
bundlerEnv: always include default gems
"default" isn't really a group, it's more the absence of one. With
Bundler, this means that a gem should be installed unconditionally,
regardless of which groups are specified. It doesn't really make sense
to allow these gems to be omitted from a bundlerEnv.
2018-12-11 21:26:09 +00:00
Alyssa Ross 83a2d993d4
bundlerEnv: include all groups by default
This wasn't really an issue until the latest minor release of Bundix
(2.4), because prior to then Bundix didn't emit group attributes, and so
this functionality of bundlerEnv wasn't really used. However, it is now
apparent that a better default for bundlerEnv would be to include all
gem groups by default, not just the default group. This matches the
behavior of Bundler, and makes more sense, because the default group
alone isn't necessarily useful for anything -- consider a Rails app with
production, development, and test groups. It has the additional benefit
of being backwards compatible with how this would have worked before the
Bundix update.
2018-12-11 21:26:08 +00:00
Alyssa Ross 67b1265fb3
bundlerEnv: ensure dependencies always included
Suppose I have a Gemfile like this:

    source "https://rubygems.org"
    gem "actioncable"
    gem "websocket-driver", group: :test

The gemset.nix generated by Bundix 2.4.1 will set ActionCable's groups
to [ "default" ], and websocket-driver's to [ "test" ]. This means that
the generated bundlerEnv wouldn't include websocket-driver unless the
test group was included, even though it's required by the default group.

This is arguably a bug in Bundix (websocket-driver's groups should
probably be [ "default" "test" ] or just [ "default" ]), but there's no
reason bundlerEnv should omit dependencies even given such an input --
it won't necessarily come from Bundix, and it would be good for
bundlerEnv to do the right thing.

To fix this, filterGemset is now a recursive function, that adds
dependencies of gems in the group to the filtered gemset until it
stabilises on the gems that match the required groups, and all of their
recursive dependencies.
2018-12-11 21:26:07 +00:00
Frederik Rietdijk e0950ae9ad Merge master into staging-next 2018-12-08 12:40:13 +01:00
zimbatm 4a8d0927e1
bundix: 2.4.0 -> 2.4.1 (#51660)
fixes #51656
2018-12-07 17:49:33 +01:00
Frederik Rietdijk a510aa2672 Merge master into staging-next 2018-12-03 12:18:43 +01:00
Jan Tojnar a51a99c690
gobject-introspection: rename package
camelCase package name was a huge inconsistency in GNOME package set.
2018-12-02 12:42:29 +01:00
worldofpeace 8776ceafc3 solargraph: 0.28.2 -> 0.29.1 2018-12-02 02:48:01 -05:00
midchildan 6fa5ea6e6b
gem-config: Add missing dependencies for gio and gtk2 2018-11-30 21:35:25 +01:00
Frederik Rietdijk 9db2421d1f Merge master into staging-next 2018-11-29 08:12:56 +01:00
Nick Novitski f2c07cd63e xcpretty: init at 0.3.0 (#48494) 2018-11-28 12:21:37 +01:00
zimbatm 798a2a6c97
bundix: 2.3.1 -> 2.4.0 (#51146) 2018-11-27 23:36:30 +01:00
Vladimír Čunát a5de78b7d7
Merge branch 'master' into staging-next 2018-11-26 10:28:00 +01:00
Judson Lester 2d5bd339da Bugfix: gemsets didn't handle paths correctly (#51002) 2018-11-25 13:38:38 +01:00
Frederik Rietdijk 0d0d7dcd06 Merge staging-next into staging 2018-11-18 10:41:34 +01:00
Alyssa Ross b4bdaa0f18
bundler: 1.16.4 -> 1.17.1 2018-11-15 17:41:20 +00:00
Frederik Rietdijk 1d3bff25db Merge staging-next into staging 2018-11-11 14:28:08 +01:00
Jörg Thalheim 2f97911566
Merge pull request #49817 from alyssais/rack_cve
rack: 1.6.* -> 1.6.11, 2.0.* -> 2.0.6 (CVE-2018-16470, CVE-2018-16471)
2018-11-09 19:30:43 +00:00
Jörg Thalheim d45590b839
metasploit-framework: fix build
> /nix/store/r2vsi140pys7jnzyk0qz1fj9aji6sq40-ruby2.5.3-rb-readline-0.5.5/lib/ruby/gems/2.5.0/gems/rb-readline-0.5.5/lib/rbreadline.rb:1097:in `<module:RbReadline>': HOME environment variable (or HOMEDRIVE and HOMEPATH) must be set and point to a directory (RuntimeError)
2018-11-09 18:03:18 +00:00
Marwan Aljubeh 8bfe8c45a7 gem-config: add iconv (#49910) 2018-11-08 17:46:29 +01:00
Patrick Hilhorst b0e9fc131c
treewide: Fix packages using name where they should use pname 2018-11-06 00:06:17 +01:00
Alyssa Ross 69dcb1a2c0 bundlerApp: take buildInputs (#45435)
It would be reasonable to have a Ruby program that depends on some other
program being in the PATH. In this case, the obvious thing to do would
be something like this:

    bundlerApp {
      # ...
      buildInputs = [ makeWrapper ];
      postBuild = ''
        wrapProgram "$out/bin/foo" \
          --prefix PATH : ${lib.makeBinPath [ dep ]}
      '';
    }

However, this doesn't work, because even though it just forwards most of
its arguments to `runCommand`, `bundlerApp` won't take a `buildInputs`
parameter. It doesn't even specify its own `buildInputs`, which means
that the `scripts` parameter to `bundlerApp` (which depends on
`makeWrapper`) is completely broken, and, as far as I can tell, has been
since its inception. I've added a `makeWrapper` build input if the
scripts parameter is present to fix this.

I've added a `buildInputs` option to `bundlerApp`. It's also passed
through to bundled-common because `postBuild` scripts are run there as
well. This actually means that in this example we'd end up going through
two layers of wrappers (one from `bundlerApp` and one from
bundled-common), but that has always been the case and isn't likely to
break anything. That oddity does suggest that it might be prudent to
not forward `postBuild` to bundled-common (or to at least use a
different option) though...

FWIW, as far as I can tell no package in nixpkgs uses either the
`scripts` or `postBuild` options to `bundlerApp`.
2018-10-29 22:39:51 +01:00
Michael Fellinger 34e1fa4a50 buildRubyGem: Provide manpages for Ruby gems (#49334) 2018-10-29 01:48:05 +01:00
Alyssa Ross c0ad5bc839
gem-config: capybara-webkit: qt48 -> qt59
> WARNING: The next major version of capybara-webkit will require at
> least version 5.0 of Qt. You're using version 4.8.7.

I went to 5.9 instead of 5.11 because 5.11 doesn't currently build on
Darwin, whereas 5.9 can build on both Darwin and Linux, and is still
well within the >=5.0 requirement.
2018-10-23 16:14:21 +01:00
Maximilian Güntner 5b1e005bb6 gem-config: set libmagic for magic 2018-10-23 17:11:17 +02:00
Alyssa Ross 7026831c7a
bundler: 1.16.3 -> 1.16.6 2018-10-17 16:20:03 +01:00
Alyssa Ross da3529718d gem-config: add sassc (#48212) 2018-10-11 21:04:29 +02:00
worldofpeace f368e55ba1 solargraph: 0.28.1 -> 0.28.2 (#47944) 2018-10-06 15:34:37 +02:00
worldofpeace 843d056bc5 solargraph: 0.27.1 -> 0.28.1 (#47242) 2018-09-23 22:31:54 +02:00
worldofpeace 4d3c3e258b solargraph: 0.25.1 -> 0.27.1 2018-09-16 04:56:35 -04:00
John Ericson 2c2f1e37d4 reewide: Purge all uses stdenv.system and top-level system
It is deprecated and will be removed after 18.09.
2018-08-30 17:20:32 -04:00
worldofpeace cf54311d6f solargraph: 0.23.6 -> 0.25.1 2018-08-26 22:47:32 -04:00
Orivej Desh 65663f883c msgpack: rename from libmsgpack
The project does not use the name "libmsgpack". It variously uses "msgpack" and
"msgpack-c", and "msgpackc" for the name of the library.
2018-08-18 23:19:54 +00:00
Jörg Thalheim 8c044897dc
Merge pull request #44098 from alyssais/capybara-webkit
gem-config: fix capybara-webkit on Darwin
2018-08-16 15:31:37 +02:00
Alyssa Ross 3116e6e6b9 gem-config: add curses (#45068) 2018-08-15 14:32:50 +01:00
worldofpeace 62d0b676dd solargraph: 0.23.3 -> 0.23.6 (#44480) 2018-08-05 16:23:31 +02:00
Alyssa Ross 011c6411f3
bundler: 1.16.2 -> 1.16.3 2018-08-03 15:59:38 +01:00
Alyssa Ross 1f47fe8442 gem-config: add libxml2-ruby (#44099) 2018-07-26 18:51:17 +01:00
Alyssa Ross cfbe0ef315 gem-config: add zookeeper (#44100) 2018-07-26 18:50:42 +01:00
Alyssa Ross 14e5e8a15a
gem-config: fix capybara-webkit on Darwin 2018-07-25 17:28:24 +01:00
Jörg Thalheim 218298b30f
Merge branch 'master' into unused5 2018-07-21 15:41:22 +01:00
volth cd6e2c9642 undo: try for zero rebuild on ofborg 2018-07-21 02:48:05 +00:00
volth 52f53c69ce pkgs/*: remove unreferenced function arguments 2018-07-21 02:48:04 +00:00
volth dda95bae35 [bot] treewide: remove unused 'args@' in lambdas 2018-07-20 19:54:05 +00:00
volth 87f5930c3f [bot]: remove unreferenced code 2018-07-20 18:48:37 +00:00
worldofpeace 45be130608 solargraph: 0.22.0 -> 0.23.3 2018-07-09 05:12:57 -04:00
Alyssa Ross 925fe68e87
bundler: 1.16.1 -> 1.16.2 2018-07-02 11:19:11 +00:00
Judson Lester b97b0300f6 Adding config for the tiny_tds gem (#42406) 2018-06-27 11:56:18 +01:00
Michael Fellinger 8ba598fe56 gem-config: add fog-dnsimple, redis-rack, ffi-rzmq-core, mini_magick (#42055) 2018-06-15 12:27:31 +01:00
worldofpeace 7468501411 solargraph: 0.21.1 -> 0.22.0 (#41743) 2018-06-09 12:52:40 +01:00