gitextract_j4pbtguo/ ├── .envrc ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ └── bug_report.md │ ├── dependabot.yml │ └── workflows/ │ ├── static-docs.yml │ ├── tests-nix-linux.yml │ ├── tests-nix-macos.yml │ └── update-flake-lock.yml ├── .gitignore ├── CHANGELOG.md ├── CLAUDE.md ├── CONTRIBUTING.md ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── RELEASE.md ├── cargo.sh ├── crate2nix/ │ ├── Cargo.json │ ├── Cargo.nix │ ├── Cargo.toml │ ├── crate-hashes.json │ ├── default-json.nix │ ├── default.nix │ ├── deny.toml │ ├── flake-module.nix │ ├── mk-crate2nix.nix │ ├── rustfmt.toml │ ├── src/ │ │ ├── command.rs │ │ ├── config.rs │ │ ├── json_output.rs │ │ ├── lib.rs │ │ ├── lock.rs │ │ ├── main.rs │ │ ├── metadata.rs │ │ ├── nix_build.rs │ │ ├── prefetch.rs │ │ ├── render.rs │ │ ├── resolve.rs │ │ ├── sources.rs │ │ ├── test.rs │ │ └── util.rs │ ├── templates/ │ │ ├── Cargo-workspace.toml.tera │ │ ├── Cargo.nix.tera │ │ ├── crate2nix-sources.nix.tera │ │ └── nix/ │ │ └── crate2nix/ │ │ ├── default.nix │ │ └── tests/ │ │ ├── default.nix │ │ ├── dependencyDerivations.nix │ │ ├── dependencyFeatures.nix │ │ ├── enableFeatures.nix │ │ ├── expandFeatures.nix │ │ ├── packageFeatures.nix │ │ ├── run.nix │ │ └── tests.nix │ └── tests/ │ └── self_build_up_to_date.rs ├── crate2nix.sh ├── default.nix ├── docs/ │ ├── .gitignore │ ├── .vscode/ │ │ ├── extensions.json │ │ └── launch.json │ ├── README.md │ ├── astro.config.mjs │ ├── flake-module.nix │ ├── package.json │ ├── src/ │ │ ├── content/ │ │ │ ├── config.ts │ │ │ └── docs/ │ │ │ ├── 10_getting_started/ │ │ │ │ ├── 10_flake_template_new.md │ │ │ │ ├── 20_installing_crate2nix.md │ │ │ │ └── 30_running_crate2nix_without_install.md │ │ │ ├── 20_generating/ │ │ │ │ ├── 10_generating.md │ │ │ │ └── 20_auto_generating.mdx │ │ │ ├── 30_building/ │ │ │ │ ├── 10_building_binaries.md │ │ │ │ ├── 20_choosing_features.md │ │ │ │ ├── 30_crateOverrides.md │ │ │ │ └── 40_tests.md │ │ │ ├── 35_toolchains/ │ │ │ │ ├── 10_custom_toolchains.md │ │ │ │ └── 20_using_a_rust_overlay.md │ │ │ ├── 40_external_sources/ │ │ │ │ ├── 10_building_fetched_sources.md │ │ │ │ └── 20_generating_for_fetched_sources.md │ │ │ ├── 50_contributing/ │ │ │ │ ├── 00_intro.md │ │ │ │ ├── 05_code.md │ │ │ │ ├── 10_docs.md │ │ │ │ └── 90_release.md │ │ │ ├── 70_design/ │ │ │ │ ├── 10_structure_and_phases.md │ │ │ │ ├── 50_tools_nix.mdx │ │ │ │ └── 90_inspiration.md │ │ │ ├── 90_reference/ │ │ │ │ ├── 10_runtime_dependencies.md │ │ │ │ ├── 20_known_restrictions.md │ │ │ │ └── 90_CHANGELOG.md │ │ │ └── index.mdx │ │ └── env.d.ts │ └── tsconfig.json ├── flake.nix ├── lib/ │ └── build-from-json.nix ├── nix/ │ ├── devshell/ │ │ └── flake-module.nix │ ├── flakeInput.nix │ ├── nix-test-runner/ │ │ ├── README.md │ │ ├── default.nix │ │ ├── package.nix │ │ └── runTest.nix │ ├── nixpkgs.nix │ ├── perSystem-tools/ │ │ └── flake-module.nix │ └── pre-commit/ │ └── flake-module.nix ├── nix-test.sh ├── nixpkgs-fmt.sh ├── out-of-tree-sources.md ├── regenerate_cargo_nix.sh ├── run_tests.sh ├── sample_projects/ │ ├── aliased-dependencies/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ ├── hello/ │ │ │ ├── Cargo.toml │ │ │ └── src/ │ │ │ └── lib.rs │ │ └── src/ │ │ └── main.rs │ ├── bin/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ └── src/ │ │ └── main.rs │ ├── bin_required_features/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── bin/ │ │ │ └── bin_not_to_be_compiled.rs │ │ └── main.rs │ ├── bin_with_default_features/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ ├── override-root-features.nix │ │ └── src/ │ │ └── main.rs │ ├── bin_with_dep_features/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── bin_with_git_branch_dep/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ └── src/ │ │ └── main.rs │ ├── bin_with_git_submodule_dep/ │ │ ├── Cargo.nix │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ ├── default-with-customBuildRustCrate.nix │ │ ├── default-with-customBuildRustCrateForPkgs.nix │ │ ├── default.nix │ │ └── src/ │ │ └── main.rs │ ├── bin_with_lib_dep/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ └── src/ │ │ └── main.rs │ ├── bin_with_lib_git_dep/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ └── src/ │ │ └── main.rs │ ├── bin_with_rerenamed_lib_dep/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ └── src/ │ │ └── main.rs │ ├── cdylib/ │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ └── lib.rs │ │ └── test.nix │ ├── cfg-test/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ ├── snowflake.txt │ │ ├── src/ │ │ │ ├── lib.rs │ │ │ └── main.rs │ │ ├── test.nix │ │ └── tests/ │ │ └── echo_foo_test.rs │ ├── codegen/ │ │ ├── Cargo.nix │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── crate-hashes.json │ │ └── src/ │ │ └── main.rs │ ├── conditional_features/ │ │ ├── Cargo.toml │ │ ├── optional/ │ │ │ ├── Cargo.toml │ │ │ └── src/ │ │ │ └── lib.rs │ │ └── src/ │ │ └── main.rs │ ├── cross_compile_build_dependencies/ │ │ ├── Cargo.toml │ │ ├── alice/ │ │ │ ├── Cargo.toml │ │ │ ├── bob/ │ │ │ │ ├── Cargo.toml │ │ │ │ └── src/ │ │ │ │ └── lib.rs │ │ │ └── src/ │ │ │ └── lib.rs │ │ ├── default.nix │ │ └── src/ │ │ └── main.rs │ ├── dependency_issue_65/ │ │ ├── Cargo.toml │ │ ├── default.nix │ │ └── src/ │ │ └── main.rs │ ├── empty_cross/ │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── default.nix │ │ └── src/ │ │ └── lib.rs │ ├── future_util_multi_version/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── futures_compat/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── integration_test/ │ │ ├── Cargo.json │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ └── main.rs │ │ ├── test-json.nix │ │ ├── test.nix │ │ └── tests/ │ │ ├── hello │ │ └── integration_test.rs │ ├── lib/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── lib.rs │ ├── lib_and_bin/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ └── src/ │ │ ├── lib.rs │ │ └── main.rs │ ├── multiple_bin/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── bin1.rs │ │ ├── bin2.rs │ │ └── main.rs │ ├── nix_workspaces/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ └── nix/ │ │ └── sources.nix │ ├── numtest/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ └── src/ │ │ └── main.rs │ ├── numtest_new_cargo_lock/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── renamed_build_deps/ │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src/ │ │ └── main.rs │ ├── renamed_dev_deps/ │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ └── lib.rs │ │ ├── test.nix │ │ └── tests.rs │ ├── renaming/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── simple_dep/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── sub_dir_crates/ │ │ ├── Cargo.nix │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ └── src/ │ │ └── main.rs │ ├── test_flag_passing/ │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ ├── lib.rs │ │ │ └── main.rs │ │ └── test.nix │ ├── with_problematic_crates/ │ │ ├── Cargo.toml │ │ ├── crate-hashes.json │ │ ├── default.nix │ │ └── src/ │ │ └── main.rs │ └── workspace_with_nondefault_lib/ │ ├── Cargo.toml │ └── crates/ │ ├── main/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ └── somelib/ │ ├── Cargo.toml │ └── src/ │ └── somelib.rs ├── sample_workspace/ │ ├── Cargo.toml │ ├── bin/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── bin_with_cond_lib_dep/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── bin_with_default_features/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── bin_with_lib_dep/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── crate-hashes.json │ ├── lib/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── lib.rs │ ├── lib_and_bin/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── lib.rs │ │ └── main.rs │ └── with_tera/ │ ├── Cargo.toml │ └── src/ │ └── main.rs ├── shell.nix ├── templates/ │ └── flake-binary/ │ ├── .envrc │ ├── .gitignore │ ├── Cargo.toml │ ├── flake.nix │ ├── nix/ │ │ ├── devshell/ │ │ │ └── flake-module.nix │ │ └── rust-overlay/ │ │ └── flake-module.nix │ ├── rust-toolchain.toml │ └── src/ │ └── main.rs ├── tests.nix └── tools.nix