nixpkgs/pkgs/development/ruby-modules/bundler/default.nix

41 lines
1.2 KiB
Nix

{ lib, buildRubyGem, ruby, writeScript, testers, bundler }:
buildRubyGem rec {
inherit ruby;
name = "${gemName}-${version}";
gemName = "bundler";
version = "2.5.7";
source.sha256 = "sha256-Df4EofDsE828V59yTND3+hdDfbB7iaQfWZfiC/SoNA4=";
dontPatchShebangs = true;
postFixup = ''
sed -i -e "s/activate_bin_path/bin_path/g" $out/bin/bundle
'';
passthru = {
updateScript = writeScript "gem-update-script" ''
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl common-updater-scripts jq
set -eu -o pipefail
latest_version=$(curl -s https://rubygems.org/api/v1/gems/${gemName}.json | jq --raw-output .version)
update-source-version ${gemName} "$latest_version"
'';
tests.version = testers.testVersion {
package = bundler;
command = "bundler -v";
version = version;
};
};
meta = with lib; {
description = "Manage your Ruby application's gem dependencies";
homepage = "https://bundler.io";
changelog = "https://github.com/rubygems/rubygems/blob/bundler-v${version}/bundler/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ anthonyroussel ];
mainProgram = "bundler";
};
}