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