anchor.diff:    # Contains the ruby version heuristics
     rubyVersion = import ./ruby-version.nix { inherit lib; };
   
  -  generic = { version, sha256 }: let
  +  generic = { version, revision, sha256 }: let
       ver = version;
       tag = ver.gitTag;
       atLeast30 = lib.versionAtLeast ver.majMin "3.0";
  
positive.code: 
    ruby_3_1 = generic {
      version = rubyVersion "3" "1" "1" "";
      sha256 = {
        src = "sha256-/m5Hgt6XRDl43bqLpL440iKqJNw+PwKmqOdwHA7rYZ0=";
        git = "sha256-76t/tGyK5nz7nvcRdHJTjjckU+Kv+/kbTMiNWJ93jU8=";
  
negative.code:           rm -rf $sourceRoot/{lib,test}/rubygems*
            cp -r ${rubygems}/lib/rubygems* $sourceRoot/lib
            cp -r ${rubygems}/test/rubygems $sourceRoot/test
          '' + opString buildFromGit ''
            cat <<EOF > $sourceRoot/revision.h
            #define RUBY_REVISION "${lib.substring 0 8 revision}"
            #define RUBY_FULL_REVISION "${revision}"
            EOF
          '';
  
          postPatch = ''
  