inscapist / ruby-nix

Generates reproducible ruby/bundler app environment with Nix

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gemset isn't generated correctly for native deps

njaremko opened this issue · comments

If you have a gemfile with sqlite3 gem on an M1 mac, the gemset is incorrectly constructed with the source.platform being set to the native platform that built it, and the version having the native platform suffix added on. I had to manually to fix all the values for it to work.

nokogiri = {
    dependencies = ["racc"];
    groups = ["default" "development" "test"];
    nativeSources = [{
      platform = "x86_64-darwin";
      remotes = ["https://rubygems.org"];
      sha256 = "06z9g7cyfxggx2gpvfiw9dkad85p7npyb8kniikzj3hkp325yxc1";
      type = "gem";
    } {
      platform = "x86_64-linux";
      remotes = ["https://rubygems.org"];
      sha256 = "18zhmnanxm9w19lnl4rjvnjq6wry3760jk9pkfhd1nny0mkj9mai";
      type = "gem";
    }];
    platforms = [];
    source = {
      platform = "arm64-darwin";
      remotes = ["https://rubygems.org"];
      sha256 = "1ai4avxcafq6b5kj3wmfgvilj4qw0gz78lr7grzy11hkqm3zycml";
      type = "gem";
    };
    version = "1.13.10-arm64-darwin";
  };

to

nokogiri = {
    dependencies = ["racc"];
    groups = ["default" "development" "test"];
    nativeSources = [{
      platform = "x86_64-darwin";
      remotes = ["https://rubygems.org"];
      sha256 = "06z9g7cyfxggx2gpvfiw9dkad85p7npyb8kniikzj3hkp325yxc1";
      type = "gem";
    } {
      platform = "x86_64-linux";
      remotes = ["https://rubygems.org"];
      sha256 = "18zhmnanxm9w19lnl4rjvnjq6wry3760jk9pkfhd1nny0mkj9mai";
      type = "gem";
    }];
    platforms = [];
    source = {
      platform = "ruby";
      remotes = ["https://rubygems.org"];
      sha256 = "1ai4avxcafq6b5kj3wmfgvilj4qw0gz78lr7grzy11hkqm3zycml";
      type = "gem";
    };
    version = "1.13.10";
  };
commented

Thanks for noticing it, this will probably take me a bit longer to fix as I am not as familiar with bundix's ruby code.

commented

@njaremko please try again with the latest branch, it should fix your issue

# if you have a flake.nix
nix flake update

# install the latest bundix
nix profile install github:sagittaros/bundix

# regenerate gemset.nix
bundix