[INFO] cloning repository https://github.com/emk/redoubtful
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/emk/redoubtful" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femk%2Fredoubtful", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femk%2Fredoubtful'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d08362d9574bf660e33ab64556afeaafd71ef647
[INFO] testing emk/redoubtful against 1.98.0-beta.1 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femk%2Fredoubtful" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/emk/redoubtful
[INFO] finished tweaking git repo https://github.com/emk/redoubtful
[INFO] tweaked toml for git repo https://github.com/emk/redoubtful written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/emk/redoubtful on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/emk/redoubtful already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d
[INFO] running `Command { std: "docker" "start" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling cc v1.2.61
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling aws-lc-rs v1.16.3
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling typenum v1.20.0
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling alloc-stdlib v0.2.2
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling webpki-roots v1.0.7
[INFO] [stderr]    Compiling oid-registry v0.8.1
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling pest v2.8.6
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling brotli-decompressor v5.0.0
[INFO] [stderr]    Compiling utf-8 v0.7.6
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling gimli v0.32.3
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling compression-core v0.4.32
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling owo-colors v4.3.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling rustc-demangle v0.1.27
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling brotli v8.0.2
[INFO] [stderr]    Compiling pem v3.0.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling aws-lc-sys v0.40.0
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling pest_meta v2.8.6
[INFO] [stderr]    Compiling async-lock v3.4.2
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling rusticata-macros v4.1.0
[INFO] [stderr]    Compiling yasna v0.5.2
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling is_ci v1.2.0
[INFO] [stderr]    Compiling num-modular v0.6.1
[INFO] [stderr]    Compiling unicode-linebreak v0.1.5
[INFO] [stderr]    Compiling tagptr v0.2.0
[INFO] [stderr]    Compiling supports-color v3.0.2
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling textwrap v0.16.2
[INFO] [stderr]    Compiling terminal_size v0.4.4
[INFO] [stderr]    Compiling addr2line v0.25.1
[INFO] [stderr]    Compiling num-order v1.2.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling supports-hyperlinks v3.2.0
[INFO] [stderr]    Compiling supports-unicode v3.0.0
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling capctl v0.2.4
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling xdg v3.0.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling pest_generator v2.8.6
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling asn1-rs-derive v0.6.0
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling miette-derive v7.6.0
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling tokio v1.52.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling backtrace-ext v0.2.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling asn1-rs v0.7.1
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling miette v7.6.0
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling compression-codecs v0.4.38
[INFO] [stderr]    Compiling der-parser v10.0.0
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling derive_builder v0.20.2
[INFO] [stderr]    Compiling x509-parser v0.18.1
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling handlebars v6.4.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling moka v0.12.15
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling async-compression v0.4.42
[INFO] [stderr]    Compiling tokio-graceful v0.2.2
[INFO] [stderr]    Compiling rcgen v0.14.7
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling tungstenite v0.28.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling tokio-tungstenite v0.28.0
[INFO] [stderr]    Compiling hyper-tungstenite v0.19.0
[INFO] [stderr]    Compiling hudsucker v0.24.0
[INFO] [stderr]    Compiling redoubtful v0.0.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 49s
[INFO] running `Command { std: "docker" "inspect" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling predicates-core v1.0.10
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling assert_cmd v2.2.1
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling predicates-tree v1.0.13
[INFO] [stderr]    Compiling terminal_size v0.4.4
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling miette v7.6.0
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling predicates v3.1.4
[INFO] [stderr]    Compiling hudsucker v0.24.0
[INFO] [stderr]    Compiling redoubtful v0.0.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 31.13s
[INFO] running `Command { std: "docker" "inspect" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.49s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/redoubtful-98898730c1250385)
[INFO] [stdout] 
[INFO] [stdout] running 167 tests
[INFO] [stdout] test check::tests::print_report_pass_only ... ok
[INFO] [stdout] test check::tests::build_userns_remediation_includes_path_and_commands ... ok
[INFO] [stdout] test config::config_file::tests::env_passthrough_omits_value ... ok
[INFO] [stdout] test config::config_file::tests::forward_short_form_defaults_sandbox_port ... ok
[INFO] [stdout] test config::config_file::tests::load_or_init_does_not_overwrite_existing_file ... ok
[INFO] [stdout] test config::config_file::tests::env_literal_includes_value ... ok
[INFO] [stdout] test config::config_file::tests::embedded_default_config_parses_cleanly ... ok
[INFO] [stdout] test check::tests::any_failed_distinguishes_skip_from_fail ... ok
[INFO] [stdout] test config::config_file::tests::deny_unknown_fields_catches_top_level_typo_through_flatten ... ok
[INFO] [stdout] test config::config_file::tests::malformed_toml_renders_with_span ... ok
[INFO] [stdout] test config::config_file::tests::load_or_init_propagates_parse_errors ... ok
[INFO] [stdout] test config::config_file::tests::load_or_init_writes_default_when_missing ... ok
[INFO] [stdout] test config::config_file::tests::empty_file_parses_to_no_profiles ... ok
[INFO] [stdout] test config::config_file::tests::mount_full_form_round_trips ... ok
[INFO] [stdout] test config::config_file::tests::load_or_init_parses_present_file ... ok
[INFO] [stdout] test check::tests::profile_template_substitutes_path ... ok
[INFO] [stdout] test check::tests::print_report_failure_includes_remediation_verbatim ... ok
[INFO] [stdout] test config::config_file::tests::empty_profile_table_round_trips ... ok
[INFO] [stdout] test config::config_file::tests::path_add_round_trips ... ok
[INFO] [stdout] test config::config_file::tests::mount_with_host_only_defaults_sandbox_and_access ... ok
[INFO] [stdout] test config::config_file::tests::resolve_unknown_profile_errors ... ok
[INFO] [stdout] test config::config_file::tests::resolve_empty_request_is_empty_order ... ok
[INFO] [stdout] test config::config_file::tests::mount_spec_in_toml_captures_real_span_for_host ... ok
[INFO] [stdout] test config::config_file::tests::resolve_repeated_via_diamond_errors ... ok
[INFO] [stdout] test config::config_file::tests::resolve_walks_uses_depth_first_deps_before_self ... ok
[INFO] [stdout] test config::config_file::tests::unknown_top_level_field_renders_with_span_at_field ... ok
[INFO] [stdout] test config::config_file::tests::resolve_repeated_via_cli_errors ... ok
[INFO] [stdout] test config::config_file::tests::type_error_renders_with_span ... ok
[INFO] [stdout] test config::env_var::tests::env_var_decl_passthrough_when_no_equals ... ok
[INFO] [stdout] test config::config_file::tests::uses_field_round_trips ... ok
[INFO] [stdout] test config::env_var::tests::env_var_decl_resolve_passthrough_unset_yields_none ... ok
[INFO] [stdout] test config::config_file::tests::unknown_profile_field_renders_with_span_at_field ... ok
[INFO] [stdout] test config::config_file::tests::mount_unknown_field_reports_span ... ok
[INFO] [stdout] test config::env_var::tests::env_var_decl_literal_empty_value ... ok
[INFO] [stdout] test config::env_var::tests::env_var_decl_literal_parses ... ok
[INFO] [stdout] test config::env_var::tests::env_var_decl_value_with_embedded_equals ... ok
[INFO] [stdout] test config::env_var::tests::env_var_serialize_value_renders_lossy_for_non_utf8 ... ok
[INFO] [stdout] test config::env_var::tests::env_var_decl_resolve_literal_yields_os_string_value ... ok
[INFO] [stdout] test config::env_vars::tests::base_config_prepends_path_additions_in_reverse_to_canonical ... ok
[INFO] [stdout] test config::env_var::tests::env_var_decl_validate_rejects_empty_name ... ok
[INFO] [stdout] test config::config_file::tests::resolve_unknown_uses_dep_errors ... ok
[INFO] [stdout] test config::env_vars::tests::base_config_emits_home_from_host_env ... ok
[INFO] [stdout] test config::env_vars::tests::base_config_respects_path_override ... ok
[INFO] [stdout] test config::env_vars::tests::env_var_decls_resolve_then_finalize_user_var_overrides_baseline ... ok
[INFO] [stdout] test config::env_vars::tests::env_vars_merge_right_biased_layers_two_resolved_decls ... ok
[INFO] [stdout] test config::env_vars::tests::env_vars_set_appends_then_upserts ... ok
[INFO] [stdout] test config::env_vars::tests::env_var_decls_path_add_with_non_utf8_lands_in_path_byte_for_byte ... ok
[INFO] [stdout] test config::env_vars::tests::base_config_uses_canonical_path_when_path_unset ... ok
[INFO] [stdout] test config::env_vars::tests::base_config_prepends_path_additions_in_reverse_to_override ... ok
[INFO] [stdout] test config::env_vars::tests::expand_path_list_tilde_against_non_utf8_home_preserves_bytes ... ok
[INFO] [stdout] test config::env_vars::tests::env_vars_set_accepts_str_string_and_os_string ... ok
[INFO] [stdout] test config::env_vars::tests::expand_path_list_preserves_non_utf8_segment ... ok
[INFO] [stdout] test config::config_file::tests::resolve_single_profile_with_no_uses ... ok
[INFO] [stdout] test config::config_file::tests::whitespace_only_file_parses_to_no_profiles ... ok
[INFO] [stdout] test config::env_vars::tests::finalize_clears_path_and_path_add ... ok
[INFO] [stdout] test config::env_vars::tests::normalize_config_paths_propagates_invalid_path_add_entry ... ok
[INFO] [stdout] test config::forward::tests::forward_decl_accepts_single_port ... ok
[INFO] [stdout] test config::forward::tests::forward_decl_rejects_multiple_colons ... ok
[INFO] [stdout] test config::forward::tests::forward_decl_rejects_out_of_range ... ok
[INFO] [stdout] test config::forward::tests::forward_decl_accepts_host_colon_sandbox ... ok
[INFO] [stdout] test config::forwards::tests::base_config_returns_empty ... ok
[INFO] [stdout] test config::forward::tests::forward_decl_resolve_yields_forward ... ok
[INFO] [stdout] test config::forwards::tests::forwards_merge_right_biased_concatenates ... ok
[INFO] [stdout] test config::forwards::tests::format_for_pasta_uses_short_form_when_ports_match ... ok
[INFO] [stdout] test config::mount::tests::cli_constructed_mount_decl_uses_zero_span ... ok
[INFO] [stdout] test config::forwards::tests::forwards_empty_formats_to_empty_string ... ok
[INFO] [stdout] test config::mount::tests::cwd_access_from_readonly_resolves_all_three_states ... ok
[INFO] [stdout] test config::mount::tests::mount_decl_accepts_explicit_rw_and_ro_suffix ... ok
[INFO] [stdout] test config::forwards::tests::forward_decls_resolve_then_finalize_emits_user_forwards ... ok
[INFO] [stdout] test config::mount::tests::mount_decl_rejects_invalid_access_token ... ok
[INFO] [stdout] test config::forward::tests::forward_decl_validate_rejects_zero_port ... ok
[INFO] [stdout] test config::mount::tests::mount_decl_rejects_relative_paths ... ok
[INFO] [stdout] test config::mount::tests::mount_decl_rejects_too_many_colons ... ok
[INFO] [stdout] test config::mount::tests::mount_decl_accepts_host_colon_sandbox ... ok
[INFO] [stdout] test config::env_vars::tests::normalize_config_paths_expands_path_add_entries ... ok
[INFO] [stdout] test config::mount::tests::normalize_config_paths_expands_host_and_sandbox ... ok
[INFO] [stdout] test config::mount::tests::mount_decl_resolve_yields_mount ... ok
[INFO] [stdout] test config::mount::tests::normalize_config_paths_propagates_invalid_host ... ok
[INFO] [stdout] test config::env_vars::tests::normalize_config_paths_expands_path_segments ... ok
[INFO] [stdout] test config::mounts::tests::base_config_exposes_etc_read_only ... ok
[INFO] [stdout] test config::env_vars::tests::normalize_config_paths_leaves_env_values_untouched ... ok
[INFO] [stdout] test config::mounts::tests::base_config_defaults_cwd_to_rw_when_readonly_unset ... ok
[INFO] [stdout] test config::mounts::tests::base_config_honors_readonly_extra ... ok
[INFO] [stdout] test config::mounts::tests::base_config_emits_home_tmpfs_from_host_env ... ok
[INFO] [stdout] test config::mount::tests::mount_decl_accepts_single_path ... ok
[INFO] [stdout] test config::mounts::tests::finalize_clears_readonly_and_keeps_user_mounts_after_baseline ... ok
[INFO] [stdout] test config::mounts::tests::base_config_includes_system_mounts_in_order ... ok
[INFO] [stdout] test config::mounts::tests::clear_extra_fields_zeros_readonly ... ok
[INFO] [stdout] test config::mounts::tests::json_serialize_hides_readonly_extra ... ok
[INFO] [stdout] test config::mounts::tests::decl_resolve_yields_mount_per_decl ... ok
[INFO] [stdout] test check::tests::missing_binary_names_the_binary ... ok
[INFO] [stdout] test config::mounts::tests::jsonl_serialization_emits_expected_shapes ... ok
[INFO] [stdout] test config::profile::tests::profile_decl_resolve_yields_profile_with_each_subdomain ... ok
[INFO] [stdout] test config::profile::tests::profile_finalize_base_config_includes_subdomain_baselines ... ok
[INFO] [stdout] test config::mounts::tests::merge_right_biased_appends_user_mounts_after_base ... ok
[INFO] [stdout] test config::proxies::tests::is_proxy_server_needed_public_web_allow_returns_true ... ok
[INFO] [stdout] test config::profile::tests::profile_finalize_clear_extra_fields_clears_each_subdomain ... ok
[INFO] [stdout] test config::mounts::tests::merge_right_biased_readonly_is_right_or_left ... ok
[INFO] [stdout] test config::proxies::tests::proxies_base_config_defaults_public_web_allow ... ok
[INFO] [stdout] test config::proxies::tests::proxies_get_existing_host ... ok
[INFO] [stdout] test config::proxies::tests::is_proxy_server_needed_public_web_deny_all_deny_returns_false ... ok
[INFO] [stdout] test config::mounts::tests::normalize_config_paths_iterates_each_decl ... ok
[INFO] [stdout] test config::mounts::tests::decl_resolve_propagates_readonly ... ok
[INFO] [stdout] test config::proxies::tests::proxies_get_is_case_insensitive ... ok
[INFO] [stdout] test config::proxies::tests::proxies_get_missing_host ... ok
[INFO] [stdout] test config::proxies::tests::proxies_merge_right_biased_concatenates_different_hosts ... ok
[INFO] [stdout] test config::profile::tests::profile_finalize_merge_right_biased_delegates_to_each_subdomain ... ok
[INFO] [stdout] test config::proxies::tests::is_proxy_server_needed_public_web_deny_with_allowed_proxy_returns_true ... ok
[INFO] [stdout] test config::proxies::tests::is_proxy_server_needed_public_web_deny_no_proxies_returns_false ... ok
[INFO] [stdout] test config::proxies::tests::proxy_decls_default_is_empty ... ok
[INFO] [stdout] test config::profile::tests::profile_decl_resolve_then_finalize_layers_baseline_under_user ... ok
[INFO] [stdout] test config::proxies::tests::proxy_decls_resolve_yields_proxies ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_full ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_host_port ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_host_action ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_normalizes_host_case ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_rejects_bad_action ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_action_case_insensitive ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_host_only ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_rejects_bad_port ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_resolve_no_templates ... ok
[INFO] [stdout] test config::profile::tests::embedded_default_config_normalizes_paths_against_a_fake_home ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_resolve_renders_auth_basic ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_resolve_renders_auth_bearer ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_resolve_missing_secret_errors ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_resolve_renders_header_templates ... ok
[INFO] [stdout] test config::proxy::tests::secret_serialize_redacts ... ok
[INFO] [stdout] test config::tests::expand_tilde_handles_supported_forms ... ok
[INFO] [stdout] test config::tests::expand_tilde_preserves_non_utf8_absolute_path ... ok
[INFO] [stdout] test config::tests::expand_tilde_error_preserves_non_utf8_bytes ... ok
[INFO] [stdout] test config::proxy::tests::secret_debug_redacts ... ok
[INFO] [stdout] test config::tests::expand_tilde_preserves_non_utf8_under_home ... ok
[INFO] [stdout] test hostname::tests::deserialize_rejects_empty ... ok
[INFO] [stdout] test config::tests::expand_tilde_rejects_unhandled_patterns ... ok
[INFO] [stdout] test hostname::tests::deserialize_normalizes ... ok
[INFO] [stdout] test hostname::tests::display_shows_normalized ... ok
[INFO] [stdout] test hostname::tests::new_rejects_empty ... ok
[INFO] [stdout] test hostname::tests::fromstr_delegates_to_new ... ok
[INFO] [stdout] test hostname::tests::new_already_lowercase ... ok
[INFO] [stdout] test hostname::tests::ord_is_case_insensitive ... ok
[INFO] [stdout] test hostname::tests::new_lowercases ... ok
[INFO] [stdout] test hostname::tests::serialize_roundtrip ... ok
[INFO] [stdout] test sandbox::bwrap::tests::argv_emits_clearenv_before_setenvs ... ok
[INFO] [stdout] test sandbox::bwrap::tests::argv_starts_with_unshare_all_share_net ... ok
[INFO] [stdout] test sandbox::bwrap::tests::argv_includes_die_with_parent_and_new_session ... ok
[INFO] [stdout] test sandbox::bwrap::tests::argv_emits_setenv_per_entry_in_order ... ok
[INFO] [stdout] test sandbox::pasta::tests::argv_uses_t_capital_list_when_forwards_present ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_rejects_empty_host ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_rejects_multiple_colons ... ok
[INFO] [stdout] test config::proxy::tests::proxy_decl_fromstr_rejects_multiple_equals ... ok
[INFO] [stdout] test sandbox::pasta::tests::argv_includes_proxy_port_as_a_forward ... ok
[INFO] [stdout] test sandbox::pasta::tests::argv_uses_t_capital_none_when_no_forwards ... ok
[INFO] [stdout] test sandbox::bwrap::tests::argv_translates_default_mounts ... ok
[INFO] [stdout] test sandbox::bwrap::tests::command_and_args_appear_after_double_dash ... ok
[INFO] [stdout] test sandbox::proxy::tests::proxy_env_vars_populates_all_eight_names_with_matching_url ... ok
[INFO] [stdout] test sandbox::proxy::tests::should_deny_unknown_when_public_deny ... ok
[INFO] [stdout] test sandbox::pasta::tests::argv_disables_namespace_to_host_forwarding ... ok
[INFO] [stdout] test sandbox::pasta::tests::child_argv_appears_after_double_dash ... ok
[INFO] [stdout] test sandbox::proxy::tests::should_allow_explicit_allow ... ok
[INFO] [stdout] test sandbox::pasta::tests::argv_includes_required_network_flags ... ok
[INFO] [stdout] test sandbox::proxy::tests::should_allow_unknown_when_public_allow ... ok
[INFO] [stdout] test sandbox::proxy::tests::should_deny_explicit_deny ... ok
[INFO] [stdout] test config::proxies::tests::proxies_merge_right_biased_deduplicates_by_host ... ok
[INFO] [stdout] test config::proxy::tests::secret_display_redacts ... ok
[INFO] [stdout] test sandbox::proxy::tests::start_proxy_binds_a_port_and_shuts_down_cleanly ... ok
[INFO] [stderr]      Running tests/cli.rs (/opt/rustwide/target/debug/deps/cli-44a9340e58fb45b2)
[INFO] [stdout] test sandbox::proxy::tests::should_deny_when_public_web_none ... ok
[INFO] [stdout] test config::config_file::tests::resolve_self_cycle_is_repeated_error ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 167 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 52 tests
[INFO] [stdout] test proxy_flag_rejects_invalid_syntax ... ok
[INFO] [stdout] test help_flag_prints_usage ... ok
[INFO] [stdout] test cwd_readonly_blocks_writes_with_flag ... ok
[INFO] [stdout] test check_with_bwrap_missing_fails_and_skips_userns ... ok
[INFO] [stdout] test mount_exposes_host_path_readonly ... FAILED
[INFO] [stdout] test host_loopback_is_unreachable_from_sandbox ... FAILED
[INFO] [stdout] test run_default_path_is_canonical ... FAILED
[INFO] [stdout] test proxy_public_web_deny_flag_is_accepted ... FAILED
[INFO] [stdout] test check_on_healthy_host_passes ... FAILED
[INFO] [stdout] test proxy_flag_accepts_compact_syntax ... FAILED
[INFO] [stdout] test first_run_writes_default_config ... FAILED
[INFO] [stdout] test run_cli_env_overrides_profile_env ... FAILED
[INFO] [stdout] test forward_makes_host_port_reachable_from_sandbox ... FAILED
[INFO] [stdout] test run_e_empty_value_is_literal_empty_string ... FAILED
[INFO] [stdout] test mount_rw_allows_writes_to_host_path ... FAILED
[INFO] [stdout] test run_e_literal_overrides_baseline_path ... FAILED
[INFO] [stdout] test run_e_literal_sets_value ... FAILED
[INFO] [stdout] test run_clears_host_credentials ... FAILED
[INFO] [stdout] test proxy_env_var_is_set_in_sandbox ... FAILED
[INFO] [stdout] test run_e_passthrough_drops_when_host_var_unset ... FAILED
[INFO] [stdout] test run_emits_preflight_report_to_stderr_on_failure ... ok
[INFO] [stdout] test run_executes_the_given_command ... FAILED
[INFO] [stdout] test run_profile_env_passthrough_resolves_against_host ... FAILED
[INFO] [stdout] test run_profile_diamond_via_uses_errors ... FAILED
[INFO] [stdout] test run_path_override_replaces_baseline_path ... FAILED
[INFO] [stdout] test run_path_add_prepends_to_path_override ... FAILED
[INFO] [stdout] test run_e_passthrough_forwards_when_host_var_set ... FAILED
[INFO] [stdout] test run_path_add_prepends_to_canonical ... FAILED
[INFO] [stdout] test run_profile_bad_path_errors_with_friendly_message ... FAILED
[INFO] [stdout] test run_no_profile_silently_ignores_missing_config ... FAILED
[INFO] [stdout] test run_profile_unknown_errors_with_path ... FAILED
[INFO] [stdout] test run_profile_path_add_prepends_to_path ... FAILED
[INFO] [stdout] test run_preserves_non_utf8_argv_bytes ... FAILED
[INFO] [stdout] test run_path_add_repeatable_prepends_in_reverse_order ... FAILED
[INFO] [stdout] test run_profile_env_literal_lands_in_sandbox ... FAILED
[INFO] [stdout] test run_keeps_cwd_visible ... FAILED
[INFO] [stdout] test run_profile_repeated_errors ... FAILED
[INFO] [stdout] test run_propagates_child_exit_code ... FAILED
[INFO] [stdout] test run_term_passthrough_forwards_value ... FAILED
[INFO] [stdout] test run_reports_missing_command ... FAILED
[INFO] [stdout] test run_with_broken_config_surfaces_error_even_without_profile_arg ... FAILED
[INFO] [stdout] test version_flag_prints_package_version ... ok
[INFO] [stdout] test run_silent_on_preflight_success ... FAILED
[INFO] [stdout] test second_run_does_not_re_emit_first_run_notice ... FAILED
[INFO] [stdout] test show_profile_emits_profile_mounts ... ok
[INFO] [stdout] test show_json_includes_cli_mounts ... ok
[INFO] [stdout] test run_reports_missing_mount_host ... FAILED
[INFO] [stdout] test show_json_omits_unset_passthroughs ... ok
[INFO] [stdout] test show_json_includes_forwards ... ok
[INFO] [stdout] test show_json_includes_env ... ok
[INFO] [stdout] test show_json_is_parseable ... ok
[INFO] [stdout] test run_hides_unexpected_paths_in_home ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- mount_exposes_host_path_readonly stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'mount_exposes_host_path_readonly' (4242) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "-m" "/tmp/.tmp4NXXCD/marker:/work/marker" "cat" "/work/marker"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3bd77e - cli[3c6b09c7ae00347e]::mount_exposes_host_path_readonly
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:548:10
[INFO] [stdout]   25:     0x64ff8d3b8057 - cli[3c6b09c7ae00347e]::mount_exposes_host_path_readonly::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:533:38
[INFO] [stdout]   26:     0x64ff8d3efa06 - <cli[3c6b09c7ae00347e]::mount_exposes_host_path_readonly::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- host_loopback_is_unreachable_from_sandbox stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'host_loopback_is_unreachable_from_sandbox' (4241) panicked at tests/cli.rs:459:5:
[INFO] [stdout] inner bash didn't run to completion; pasta or bwrap setup may be broken.
[INFO] [stdout] stdout: 
[INFO] [stdout] stderr: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3c26d6 - cli[3c6b09c7ae00347e]::host_loopback_is_unreachable_from_sandbox
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:459:5
[INFO] [stdout]   20:     0x64ff8d3b8447 - cli[3c6b09c7ae00347e]::host_loopback_is_unreachable_from_sandbox::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:437:47
[INFO] [stdout]   21:     0x64ff8d3eff46 - <cli[3c6b09c7ae00347e]::host_loopback_is_unreachable_from_sandbox::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_default_path_is_canonical stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_default_path_is_canonical' (4250) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "printenv" "PATH"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3bbbb8 - cli[3c6b09c7ae00347e]::run_default_path_is_canonical
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:767:10
[INFO] [stdout]   25:     0x64ff8d3b7ed7 - cli[3c6b09c7ae00347e]::run_default_path_is_canonical::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:763:35
[INFO] [stdout]   26:     0x64ff8d3ef806 - <cli[3c6b09c7ae00347e]::run_default_path_is_canonical::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- proxy_public_web_deny_flag_is_accepted stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'proxy_public_web_deny_flag_is_accepted' (4247) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "--public-web=deny" "/bin/true"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c19c7 - cli[3c6b09c7ae00347e]::proxy_public_web_deny_flag_is_accepted
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1234:10
[INFO] [stdout]   25:     0x64ff8d3b8387 - cli[3c6b09c7ae00347e]::proxy_public_web_deny_flag_is_accepted::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1230:44
[INFO] [stdout]   26:     0x64ff8d3efe46 - <cli[3c6b09c7ae00347e]::proxy_public_web_deny_flag_is_accepted::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- check_on_healthy_host_passes stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'check_on_healthy_host_passes' (4235) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`NO_COLOR="1" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "check"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3bb96d - cli[3c6b09c7ae00347e]::check_on_healthy_host_passes
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:212:10
[INFO] [stdout]   25:     0x64ff8d3b7ea7 - cli[3c6b09c7ae00347e]::check_on_healthy_host_passes::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:204:34
[INFO] [stdout]   26:     0x64ff8d3ef7c6 - <cli[3c6b09c7ae00347e]::check_on_healthy_host_passes::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- proxy_flag_accepts_compact_syntax stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'proxy_flag_accepts_compact_syntax' (4245) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "--proxy=example.net:80=deny" "/bin/true"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3bdc77 - cli[3c6b09c7ae00347e]::proxy_flag_accepts_compact_syntax
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1245:10
[INFO] [stdout]   25:     0x64ff8d3b8087 - cli[3c6b09c7ae00347e]::proxy_flag_accepts_compact_syntax::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1240:39
[INFO] [stdout]   26:     0x64ff8d3efa46 - <cli[3c6b09c7ae00347e]::proxy_flag_accepts_compact_syntax::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- first_run_writes_default_config stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'first_run_writes_default_config' (4238) panicked at tests/cli.rs:1177:5:
[INFO] [stdout] first run failed: Output { status: ExitStatus(unix_wait_status(256)), stdout: "", stderr: "✅ bwrap on $PATH (bubblewrap 0.9.0)\n\n❌ `pasta` not found on $PATH\n\nInstall the `passt` package, e.g.:\n\nsudo apt install passt\n\n❌ bwrap could not create a user namespace\n\nUbuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:\n\nsudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'\n# AppArmor profile for redoubtful.\n#\n# Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,\n# flatpak,...}: a labeling-only profile attached to a specific binary\n# path. `flags=(unconfined)` means AppArmor doesn't enforce most rules\n# — the profile exists only to grant `userns,` to the named binary so\n# the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows\n# it to create a user namespace.\n#\n# This is not an ideal policy, but it's simple. And anything more\n# complex might not grant a ton of extra security on Ubuntu 24.04\n# without more work, thanks to how many other things already have a\n# similar profile.\n\nabi <abi/4.0>,\ninclude <tunables/global>\n\nprofile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {\n  userns,\n  include if exists <local/redoubtful>\n}\nEOF\nsudo apparmor_parser -r /etc/apparmor.d/redoubtful\n\nSee docs/APPARMOR_USERNS.md for more and less secure alternatives.\n\n2 checks failed.\n" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3bcb5a - cli[3c6b09c7ae00347e]::first_run_writes_default_config
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1177:5
[INFO] [stdout]   20:     0x64ff8d3b7fc7 - cli[3c6b09c7ae00347e]::first_run_writes_default_config::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1163:37
[INFO] [stdout]   21:     0x64ff8d3ef946 - <cli[3c6b09c7ae00347e]::first_run_writes_default_config::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_cli_env_overrides_profile_env stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_cli_env_overrides_profile_env' (4249) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmpIdv9dZ" "/opt/rustwide/target/debug/redoubtful" "run" "-u" "lit" "-e" "FOO=from-cli" "printenv" "FOO"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3be164 - cli[3c6b09c7ae00347e]::run_cli_env_overrides_profile_env
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1101:10
[INFO] [stdout]   25:     0x64ff8d3b80e7 - cli[3c6b09c7ae00347e]::run_cli_env_overrides_profile_env::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1091:39
[INFO] [stdout]   26:     0x64ff8d3efac6 - <cli[3c6b09c7ae00347e]::run_cli_env_overrides_profile_env::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- forward_makes_host_port_reachable_from_sandbox stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'forward_makes_host_port_reachable_from_sandbox' (4239) panicked at tests/cli.rs:523:5:
[INFO] [stdout] forwarded port did not deliver sentinel into sandbox.
[INFO] [stdout] stdout: 
[INFO] [stdout] stderr: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3c3a8a - cli[3c6b09c7ae00347e]::forward_makes_host_port_reachable_from_sandbox
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:523:5
[INFO] [stdout]   20:     0x64ff8d3b8537 - cli[3c6b09c7ae00347e]::forward_makes_host_port_reachable_from_sandbox::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:506:52
[INFO] [stdout]   21:     0x64ff8d3f0086 - <cli[3c6b09c7ae00347e]::forward_makes_host_port_reachable_from_sandbox::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_e_empty_value_is_literal_empty_string stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_e_empty_value_is_literal_empty_string' (4321) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "-e" "FOO=" "sh" "-c" "echo \"[$FOO]\""`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c2979 - cli[3c6b09c7ae00347e]::run_e_empty_value_is_literal_empty_string
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:723:10
[INFO] [stdout]   25:     0x64ff8d3b8477 - cli[3c6b09c7ae00347e]::run_e_empty_value_is_literal_empty_string::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:716:47
[INFO] [stdout]   26:     0x64ff8d3eff86 - <cli[3c6b09c7ae00347e]::run_e_empty_value_is_literal_empty_string::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- mount_rw_allows_writes_to_host_path stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'mount_rw_allows_writes_to_host_path' (4243) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "-m" "/tmp/.tmpgCem0N/marker:/work/marker:rw" "bash" "-c" "echo from-sandbox > /work/marker"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c0405 - cli[3c6b09c7ae00347e]::mount_rw_allows_writes_to_host_path
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:591:10
[INFO] [stdout]   25:     0x64ff8d3b8207 - cli[3c6b09c7ae00347e]::mount_rw_allows_writes_to_host_path::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:570:41
[INFO] [stdout]   26:     0x64ff8d3efc46 - <cli[3c6b09c7ae00347e]::mount_rw_allows_writes_to_host_path::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_e_literal_overrides_baseline_path stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_e_literal_overrides_baseline_path' (4333) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "-e" "PATH=/only/this" "/usr/bin/printenv" "PATH"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c157e - cli[3c6b09c7ae00347e]::run_e_literal_overrides_baseline_path
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:879:10
[INFO] [stdout]   25:     0x64ff8d3b8327 - cli[3c6b09c7ae00347e]::run_e_literal_overrides_baseline_path::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:871:43
[INFO] [stdout]   26:     0x64ff8d3efdc6 - <cli[3c6b09c7ae00347e]::run_e_literal_overrides_baseline_path::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_e_literal_sets_value stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_e_literal_sets_value' (4346) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "-e" "FOO=bar" "printenv" "FOO"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3ba86e - cli[3c6b09c7ae00347e]::run_e_literal_sets_value
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:711:10
[INFO] [stdout]   25:     0x64ff8d3b7db7 - cli[3c6b09c7ae00347e]::run_e_literal_sets_value::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:707:30
[INFO] [stdout]   26:     0x64ff8d3ef686 - <cli[3c6b09c7ae00347e]::run_e_literal_sets_value::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_clears_host_credentials stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_clears_host_credentials' (4248) panicked at tests/cli.rs:695:5:
[INFO] [stdout] inner shell didn't complete; stdout: "", stderr: "✅ bwrap on $PATH (bubblewrap 0.9.0)\n\n❌ `pasta` not found on $PATH\n\nInstall the `passt` package, e.g.:\n\nsudo apt install passt\n\n❌ bwrap could not create a user namespace\n\nUbuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:\n\nsudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'\n# AppArmor profile for redoubtful.\n#\n# Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,\n# flatpak,...}: a labeling-only profile attached to a specific binary\n# path. `flags=(unconfined)` means AppArmor doesn't enforce most rules\n# — the profile exists only to grant `userns,` to the named binary so\n# the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows\n# it to create a user namespace.\n#\n# This is not an ideal policy, but it's simple. And anything more\n# complex might not grant a ton of extra security on Ubuntu 24.04\n# without more work, thanks to how many other things already have a\n# similar profile.\n\nabi <abi/4.0>,\ninclude <tunables/global>\n\nprofile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {\n  userns,\n  include if exists <local/redoubtful>\n}\nEOF\nsudo apparmor_parser -r /etc/apparmor.d/redoubtful\n\nSee docs/APPARMOR_USERNS.md for more and less secure alternatives.\n\n2 checks failed.\n"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3bac95 - cli[3c6b09c7ae00347e]::run_clears_host_credentials
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:695:5
[INFO] [stdout]   20:     0x64ff8d3b7de7 - cli[3c6b09c7ae00347e]::run_clears_host_credentials::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:688:33
[INFO] [stdout]   21:     0x64ff8d3ef6c6 - <cli[3c6b09c7ae00347e]::run_clears_host_credentials::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- proxy_env_var_is_set_in_sandbox stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'proxy_env_var_is_set_in_sandbox' (4244) panicked at tests/cli.rs:492:13:
[INFO] [stdout] HTTPS_PROXY not in expected form. stdout: ""
[INFO] [stdout] stderr: "✅ bwrap on $PATH (bubblewrap 0.9.0)\n\n❌ `pasta` not found on $PATH\n\nInstall the `passt` package, e.g.:\n\nsudo apt install passt\n\n❌ bwrap could not create a user namespace\n\nUbuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:\n\nsudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'\n# AppArmor profile for redoubtful.\n#\n# Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,\n# flatpak,...}: a labeling-only profile attached to a specific binary\n# path. `flags=(unconfined)` means AppArmor doesn't enforce most rules\n# — the profile exists only to grant `userns,` to the named binary so\n# the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows\n# it to create a user namespace.\n#\n# This is not an ideal policy, but it's simple. And anything more\n# complex might not grant a ton of extra security on Ubuntu 24.04\n# without more work, thanks to how many other things already have a\n# similar profile.\n\nabi <abi/4.0>,\ninclude <tunables/global>\n\nprofile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {\n  userns,\n  include if exists <local/redoubtful>\n}\nEOF\nsudo apparmor_parser -r /etc/apparmor.d/redoubtful\n\nSee docs/APPARMOR_USERNS.md for more and less secure alternatives.\n\n2 checks failed.\n"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3b89e8 - cli[3c6b09c7ae00347e]::proxy_env_var_is_set_in_sandbox::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:492:13
[INFO] [stdout]   20:     0x64ff8d3f73e3 - <core[6883ba1bc0fe4ed1]::option::Option<&str>>::unwrap_or_else::<cli[3c6b09c7ae00347e]::proxy_env_var_is_set_in_sandbox::{closure#0}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/option.rs:1065:21
[INFO] [stdout]   21:     0x64ff8d3bcfb1 - cli[3c6b09c7ae00347e]::proxy_env_var_is_set_in_sandbox
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:491:48
[INFO] [stdout]   22:     0x64ff8d3b7ff7 - cli[3c6b09c7ae00347e]::proxy_env_var_is_set_in_sandbox::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:482:37
[INFO] [stdout]   23:     0x64ff8d3ef986 - <cli[3c6b09c7ae00347e]::proxy_env_var_is_set_in_sandbox::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   29:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   43:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   44:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   45:     0x761324e43a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_e_passthrough_drops_when_host_var_unset stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_e_passthrough_drops_when_host_var_unset' (4359) panicked at tests/cli.rs:755:5:
[INFO] [stdout] assertion `left == right` failed: stdout should be exactly 'done\n'; got ""
[INFO] [stdout]   left: ""
[INFO] [stdout]  right: "done\n"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d587743 - core[6883ba1bc0fe4ed1]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:434:23
[INFO] [stdout]   20:     0x64ff8d3d5be7 - core[6883ba1bc0fe4ed1]::panicking::assert_failed::<&str, &str>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x64ff8d3c2d1c - cli[3c6b09c7ae00347e]::run_e_passthrough_drops_when_host_var_unset
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:755:5
[INFO] [stdout]   22:     0x64ff8d3b84a7 - cli[3c6b09c7ae00347e]::run_e_passthrough_drops_when_host_var_unset::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:738:49
[INFO] [stdout]   23:     0x64ff8d3effc6 - <cli[3c6b09c7ae00347e]::run_e_passthrough_drops_when_host_var_unset::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   29:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   43:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   44:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   45:     0x761324e43a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_executes_the_given_command stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_executes_the_given_command' (4372) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "echo" "hello from redoubtful"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3bc388 - cli[3c6b09c7ae00347e]::run_executes_the_given_command
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:299:10
[INFO] [stdout]   25:     0x64ff8d3b7f37 - cli[3c6b09c7ae00347e]::run_executes_the_given_command::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:295:36
[INFO] [stdout]   26:     0x64ff8d3ef886 - <cli[3c6b09c7ae00347e]::run_executes_the_given_command::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_profile_env_passthrough_resolves_against_host stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_profile_env_passthrough_resolves_against_host' (4412) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" MY_VAR="yes-from-host" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmpY0WLkO" "/opt/rustwide/target/debug/redoubtful" "run" "-u" "passthru" "printenv" "MY_VAR"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c4e06 - cli[3c6b09c7ae00347e]::run_profile_env_passthrough_resolves_against_host
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1073:10
[INFO] [stdout]   25:     0x64ff8d3b8657 - cli[3c6b09c7ae00347e]::run_profile_env_passthrough_resolves_against_host::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1063:55
[INFO] [stdout]   26:     0x64ff8d3f0206 - <cli[3c6b09c7ae00347e]::run_profile_env_passthrough_resolves_against_host::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_profile_diamond_via_uses_errors stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_profile_diamond_via_uses_errors' (4407) panicked at tests/cli.rs:1020:5:
[INFO] [stdout] stderr should flag the diamond: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3c08df - cli[3c6b09c7ae00347e]::run_profile_diamond_via_uses_errors
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1020:5
[INFO] [stdout]   20:     0x64ff8d3b8237 - cli[3c6b09c7ae00347e]::run_profile_diamond_via_uses_errors::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1004:41
[INFO] [stdout]   21:     0x64ff8d3efc86 - <cli[3c6b09c7ae00347e]::run_profile_diamond_via_uses_errors::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_path_override_replaces_baseline_path stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_path_override_replaces_baseline_path' (4389) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "--path" "/custom:/another" "/usr/bin/printenv" "PATH"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c1d4e - cli[3c6b09c7ae00347e]::run_path_override_replaces_baseline_path
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:788:10
[INFO] [stdout]   25:     0x64ff8d3b83e7 - cli[3c6b09c7ae00347e]::run_path_override_replaces_baseline_path::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:774:46
[INFO] [stdout]   26:     0x64ff8d3efec6 - <cli[3c6b09c7ae00347e]::run_path_override_replaces_baseline_path::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_path_add_prepends_to_path_override stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_path_add_prepends_to_path_override' (4385) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "--path" "/only/this" "-P" "/extra" "/usr/bin/printenv" "PATH"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c1b64 - cli[3c6b09c7ae00347e]::run_path_add_prepends_to_path_override
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:856:10
[INFO] [stdout]   25:     0x64ff8d3b83b7 - cli[3c6b09c7ae00347e]::run_path_add_prepends_to_path_override::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:842:44
[INFO] [stdout]   26:     0x64ff8d3efe86 - <cli[3c6b09c7ae00347e]::run_path_add_prepends_to_path_override::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_e_passthrough_forwards_when_host_var_set stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_e_passthrough_forwards_when_host_var_set' (4369) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" MY_VAR="yes-from-host" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "-e" "MY_VAR" "printenv" "MY_VAR"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c2e8f - cli[3c6b09c7ae00347e]::run_e_passthrough_forwards_when_host_var_set
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:733:10
[INFO] [stdout]   25:     0x64ff8d3b84d7 - cli[3c6b09c7ae00347e]::run_e_passthrough_forwards_when_host_var_set::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:728:50
[INFO] [stdout]   26:     0x64ff8d3f0006 - <cli[3c6b09c7ae00347e]::run_e_passthrough_forwards_when_host_var_set::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_path_add_prepends_to_canonical stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_path_add_prepends_to_canonical' (4383) panicked at tests/cli.rs:803:5:
[INFO] [stdout] run failed: Output { status: ExitStatus(unix_wait_status(256)), stdout: "", stderr: "✅ bwrap on $PATH (bubblewrap 0.9.0)\n\n❌ `pasta` not found on $PATH\n\nInstall the `passt` package, e.g.:\n\nsudo apt install passt\n\n❌ bwrap could not create a user namespace\n\nUbuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:\n\nsudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'\n# AppArmor profile for redoubtful.\n#\n# Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,\n# flatpak,...}: a labeling-only profile attached to a specific binary\n# path. `flags=(unconfined)` means AppArmor doesn't enforce most rules\n# — the profile exists only to grant `userns,` to the named binary so\n# the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows\n# it to create a user namespace.\n#\n# This is not an ideal policy, but it's simple. And anything more\n# complex might not grant a ton of extra security on Ubuntu 24.04\n# without more work, thanks to how many other things already have a\n# similar profile.\n\nabi <abi/4.0>,\ninclude <tunables/global>\n\nprofile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {\n  userns,\n  include if exists <local/redoubtful>\n}\nEOF\nsudo apparmor_parser -r /etc/apparmor.d/redoubtful\n\nSee docs/APPARMOR_USERNS.md for more and less secure alternatives.\n\n2 checks failed.\n" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3bf783 - cli[3c6b09c7ae00347e]::run_path_add_prepends_to_canonical
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:803:5
[INFO] [stdout]   20:     0x64ff8d3b81a7 - cli[3c6b09c7ae00347e]::run_path_add_prepends_to_canonical::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:793:40
[INFO] [stdout]   21:     0x64ff8d3efbc6 - <cli[3c6b09c7ae00347e]::run_path_add_prepends_to_canonical::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_profile_bad_path_errors_with_friendly_message stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_profile_bad_path_errors_with_friendly_message' (4406) panicked at tests/cli.rs:1117:5:
[INFO] [stdout] stderr should explain: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3c4c2f - cli[3c6b09c7ae00347e]::run_profile_bad_path_errors_with_friendly_message
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1117:5
[INFO] [stdout]   20:     0x64ff8d3b8627 - cli[3c6b09c7ae00347e]::run_profile_bad_path_errors_with_friendly_message::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1106:55
[INFO] [stdout]   21:     0x64ff8d3f01c6 - <cli[3c6b09c7ae00347e]::run_profile_bad_path_errors_with_friendly_message::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_no_profile_silently_ignores_missing_config stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_no_profile_silently_ignores_missing_config' (4381) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmpgZyr5e" "/opt/rustwide/target/debug/redoubtful" "run" "echo" "hello"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c3cce - cli[3c6b09c7ae00347e]::run_no_profile_silently_ignores_missing_config
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1133:10
[INFO] [stdout]   25:     0x64ff8d3b8567 - cli[3c6b09c7ae00347e]::run_no_profile_silently_ignores_missing_config::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1124:52
[INFO] [stdout]   26:     0x64ff8d3f00c6 - <cli[3c6b09c7ae00347e]::run_no_profile_silently_ignores_missing_config::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_profile_unknown_errors_with_path stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_profile_unknown_errors_with_path' (4460) panicked at tests/cli.rs:976:5:
[INFO] [stdout] stderr should name the unknown profile: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3c135f - cli[3c6b09c7ae00347e]::run_profile_unknown_errors_with_path
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:976:5
[INFO] [stdout]   20:     0x64ff8d3b82f7 - cli[3c6b09c7ae00347e]::run_profile_unknown_errors_with_path::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:969:42
[INFO] [stdout]   21:     0x64ff8d3efd86 - <cli[3c6b09c7ae00347e]::run_profile_unknown_errors_with_path::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_profile_path_add_prepends_to_path stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_profile_path_add_prepends_to_path' (4419) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmpronj6R" "/opt/rustwide/target/debug/redoubtful" "run" "-u" "bin" "printenv" "PATH"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c1794 - cli[3c6b09c7ae00347e]::run_profile_path_add_prepends_to_path
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1058:10
[INFO] [stdout]   25:     0x64ff8d3b8357 - cli[3c6b09c7ae00347e]::run_profile_path_add_prepends_to_path::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1050:43
[INFO] [stdout]   26:     0x64ff8d3efe06 - <cli[3c6b09c7ae00347e]::run_profile_path_add_prepends_to_path::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_preserves_non_utf8_argv_bytes stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_preserves_non_utf8_argv_bytes' (4405) panicked at tests/cli.rs:327:5:
[INFO] [stdout] run failed: Output { status: ExitStatus(unix_wait_status(256)), stdout: "", stderr: "✅ bwrap on $PATH (bubblewrap 0.9.0)\n\n❌ `pasta` not found on $PATH\n\nInstall the `passt` package, e.g.:\n\nsudo apt install passt\n\n❌ bwrap could not create a user namespace\n\nUbuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:\n\nsudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'\n# AppArmor profile for redoubtful.\n#\n# Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,\n# flatpak,...}: a labeling-only profile attached to a specific binary\n# path. `flags=(unconfined)` means AppArmor doesn't enforce most rules\n# — the profile exists only to grant `userns,` to the named binary so\n# the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows\n# it to create a user namespace.\n#\n# This is not an ideal policy, but it's simple. And anything more\n# complex might not grant a ton of extra security on Ubuntu 24.04\n# without more work, thanks to how many other things already have a\n# similar profile.\n\nabi <abi/4.0>,\ninclude <tunables/global>\n\nprofile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {\n  userns,\n  include if exists <local/redoubtful>\n}\nEOF\nsudo apparmor_parser -r /etc/apparmor.d/redoubtful\n\nSee docs/APPARMOR_USERNS.md for more and less secure alternatives.\n\n2 checks failed.\n" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3be478 - cli[3c6b09c7ae00347e]::run_preserves_non_utf8_argv_bytes
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:327:5
[INFO] [stdout]   20:     0x64ff8d3b8117 - cli[3c6b09c7ae00347e]::run_preserves_non_utf8_argv_bytes::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:309:39
[INFO] [stdout]   21:     0x64ff8d3efb06 - <cli[3c6b09c7ae00347e]::run_preserves_non_utf8_argv_bytes::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_path_add_repeatable_prepends_in_reverse_order stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_path_add_repeatable_prepends_in_reverse_order' (4386) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "-P" "/first/bin" "-P" "/second/bin" "printenv" "PATH"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c488d - cli[3c6b09c7ae00347e]::run_path_add_repeatable_prepends_in_reverse_order
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:835:10
[INFO] [stdout]   25:     0x64ff8d3b85f7 - cli[3c6b09c7ae00347e]::run_path_add_repeatable_prepends_in_reverse_order::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:825:55
[INFO] [stdout]   26:     0x64ff8d3f0186 - <cli[3c6b09c7ae00347e]::run_path_add_repeatable_prepends_in_reverse_order::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_profile_env_literal_lands_in_sandbox stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_profile_env_literal_lands_in_sandbox' (4408) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" XDG_CONFIG_HOME="/tmp/.tmpQfJggm" "/opt/rustwide/target/debug/redoubtful" "run" "-u" "lit" "printenv" "FOO"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c1f5e - cli[3c6b09c7ae00347e]::run_profile_env_literal_lands_in_sandbox
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1086:10
[INFO] [stdout]   25:     0x64ff8d3b8417 - cli[3c6b09c7ae00347e]::run_profile_env_literal_lands_in_sandbox::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1078:46
[INFO] [stdout]   26:     0x64ff8d3eff06 - <cli[3c6b09c7ae00347e]::run_profile_env_literal_lands_in_sandbox::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_keeps_cwd_visible stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_keeps_cwd_visible' (4378) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`cd "/tmp/.tmpV1wmzN" && XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "cat" "marker"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3b9af1 - cli[3c6b09c7ae00347e]::run_keeps_cwd_visible
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:417:10
[INFO] [stdout]   25:     0x64ff8d3b7957 - cli[3c6b09c7ae00347e]::run_keeps_cwd_visible::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:408:27
[INFO] [stdout]   26:     0x64ff8d3ef586 - <cli[3c6b09c7ae00347e]::run_keeps_cwd_visible::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_profile_repeated_errors stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_profile_repeated_errors' (4441) panicked at tests/cli.rs:997:5:
[INFO] [stdout] stderr should flag the repeated profile: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3bb094 - cli[3c6b09c7ae00347e]::run_profile_repeated_errors
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:997:5
[INFO] [stdout]   20:     0x64ff8d3b7e17 - cli[3c6b09c7ae00347e]::run_profile_repeated_errors::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:989:33
[INFO] [stdout]   21:     0x64ff8d3ef706 - <cli[3c6b09c7ae00347e]::run_profile_repeated_errors::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_propagates_child_exit_code stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_propagates_child_exit_code' (4475) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected return code, failed var == 42
[INFO] [stdout] └── var: 1
[INFO] [stdout] 
[INFO] [stdout] command=`XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "sh" "-c" "exit 42"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d3dc88e - <assert_cmd[79367cf4184b6d]::assert::Assert>::code::<i32, assert_cmd[79367cf4184b6d]::assert::EqCodePredicate>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:269:29
[INFO] [stdout]   24:     0x64ff8d3bc543 - cli[3c6b09c7ae00347e]::run_propagates_child_exit_code
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:305:57
[INFO] [stdout]   25:     0x64ff8d3b7f67 - cli[3c6b09c7ae00347e]::run_propagates_child_exit_code::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:304:36
[INFO] [stdout]   26:     0x64ff8d3ef8c6 - <cli[3c6b09c7ae00347e]::run_propagates_child_exit_code::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_term_passthrough_forwards_value stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_term_passthrough_forwards_value' (4502) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected failure.
[INFO] [stdout] code=1
[INFO] [stdout] stderr=``````
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] ```
[INFO] [stdout] command=`env -i HOME="/root" PATH="/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" TERM="xterm-256color" XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "printenv" "TERM"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d4f3340 - <assert_cmd[79367cf4184b6d]::assert::Assert>::success
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:161:28
[INFO] [stdout]   24:     0x64ff8d3c0a60 - cli[3c6b09c7ae00347e]::run_term_passthrough_forwards_value
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:866:10
[INFO] [stdout]   25:     0x64ff8d3b8267 - cli[3c6b09c7ae00347e]::run_term_passthrough_forwards_value::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:861:41
[INFO] [stdout]   26:     0x64ff8d3efcc6 - <cli[3c6b09c7ae00347e]::run_term_passthrough_forwards_value::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_reports_missing_command stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_reports_missing_command' (4494) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected stderr, failed var.contains(redoubtful-no-such-binary-xyz)
[INFO] [stdout] ├── var: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] │   
[INFO] [stdout] │   ❌ `pasta` not found on $PATH
[INFO] [stdout] │   
[INFO] [stdout] │   Install the `passt` package, e.g.:
[INFO] [stdout] │   
[INFO] [stdout] │   sudo apt install passt
[INFO] [stdout] │   
[INFO] [stdout] │   ❌ bwrap could not create a user namespace
[INFO] [stdout] │   
[INFO] [stdout] │   Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] │   
[INFO] [stdout] │   sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout] │   # AppArmor profile for redoubtful.
[INFO] [stdout] │   #
[INFO] [stdout] │   # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] │   # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] │   # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout] │   # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] │   # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] │   # it to create a user namespace.
[INFO] [stdout] │   #
[INFO] [stdout] │   # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout] │   # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] │   # without more work, thanks to how many other things already have a
[INFO] [stdout] │   # similar profile.
[INFO] [stdout] │   
[INFO] [stdout] │   abi <abi/4.0>,
[INFO] [stdout] │   include <tunables/global>
[INFO] [stdout] │   
[INFO] [stdout] │   profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout] │     userns,
[INFO] [stdout] │     include if exists <local/redoubtful>
[INFO] [stdout] │   }
[INFO] [stdout] │   EOF
[INFO] [stdout] │   sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] │   
[INFO] [stdout] │   See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] │   
[INFO] [stdout] │   2 checks failed.
[INFO] [stdout] └── var as str: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout]     
[INFO] [stdout]     ❌ `pasta` not found on $PATH
[INFO] [stdout]     
[INFO] [stdout]     Install the `passt` package, e.g.:
[INFO] [stdout]     
[INFO] [stdout]     sudo apt install passt
[INFO] [stdout]     
[INFO] [stdout]     ❌ bwrap could not create a user namespace
[INFO] [stdout]     
[INFO] [stdout]     Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout]     
[INFO] [stdout]     sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout]     # AppArmor profile for redoubtful.
[INFO] [stdout]     #
[INFO] [stdout]     # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout]     # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout]     # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout]     # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout]     # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout]     # it to create a user namespace.
[INFO] [stdout]     #
[INFO] [stdout]     # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout]     # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout]     # without more work, thanks to how many other things already have a
[INFO] [stdout]     # similar profile.
[INFO] [stdout]     
[INFO] [stdout]     abi <abi/4.0>,
[INFO] [stdout]     include <tunables/global>
[INFO] [stdout]     
[INFO] [stdout]     profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]       userns,
[INFO] [stdout]       include if exists <local/redoubtful>
[INFO] [stdout]     }
[INFO] [stdout]     EOF
[INFO] [stdout]     sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout]     
[INFO] [stdout]     See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout]     
[INFO] [stdout]     2 checks failed.
[INFO] [stdout] 
[INFO] [stdout] command=`XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "redoubtful-no-such-binary-xyz"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d3dc9a4 - <assert_cmd[79367cf4184b6d]::assert::Assert>::stderr::<predicates[dfcdb80313cdfe4c]::str::basics::ContainsPredicate, assert_cmd[79367cf4184b6d]::assert::StrOutputPredicate<predicates[dfcdb80313cdfe4c]::str::basics::ContainsPredicate>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:463:31
[INFO] [stdout]   24:     0x64ff8d3bb23d - cli[3c6b09c7ae00347e]::run_reports_missing_command
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:343:10
[INFO] [stdout]   25:     0x64ff8d3b7e47 - cli[3c6b09c7ae00347e]::run_reports_missing_command::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:335:33
[INFO] [stdout]   26:     0x64ff8d3ef746 - <cli[3c6b09c7ae00347e]::run_reports_missing_command::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_with_broken_config_surfaces_error_even_without_profile_arg stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_with_broken_config_surfaces_error_even_without_profile_arg' (4503) panicked at tests/cli.rs:1156:5:
[INFO] [stdout] stderr should call out invalid TOML: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3c53d7 - cli[3c6b09c7ae00347e]::run_with_broken_config_surfaces_error_even_without_profile_arg
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1156:5
[INFO] [stdout]   20:     0x64ff8d3b8687 - cli[3c6b09c7ae00347e]::run_with_broken_config_surfaces_error_even_without_profile_arg::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1138:68
[INFO] [stdout]   21:     0x64ff8d3f0246 - <cli[3c6b09c7ae00347e]::run_with_broken_config_surfaces_error_even_without_profile_arg::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_silent_on_preflight_success stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_silent_on_preflight_success' (4500) panicked at tests/cli.rs:244:5:
[INFO] [stdout] run failed: Output { status: ExitStatus(unix_wait_status(256)), stdout: "", stderr: "✅ bwrap on $PATH (bubblewrap 0.9.0)\n\n❌ `pasta` not found on $PATH\n\nInstall the `passt` package, e.g.:\n\nsudo apt install passt\n\n❌ bwrap could not create a user namespace\n\nUbuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:\n\nsudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'\n# AppArmor profile for redoubtful.\n#\n# Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,\n# flatpak,...}: a labeling-only profile attached to a specific binary\n# path. `flags=(unconfined)` means AppArmor doesn't enforce most rules\n# — the profile exists only to grant `userns,` to the named binary so\n# the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows\n# it to create a user namespace.\n#\n# This is not an ideal policy, but it's simple. And anything more\n# complex might not grant a ton of extra security on Ubuntu 24.04\n# without more work, thanks to how many other things already have a\n# similar profile.\n\nabi <abi/4.0>,\ninclude <tunables/global>\n\nprofile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {\n  userns,\n  include if exists <local/redoubtful>\n}\nEOF\nsudo apparmor_parser -r /etc/apparmor.d/redoubtful\n\nSee docs/APPARMOR_USERNS.md for more and less secure alternatives.\n\n2 checks failed.\n" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3bd288 - cli[3c6b09c7ae00347e]::run_silent_on_preflight_success
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:244:5
[INFO] [stdout]   20:     0x64ff8d3b8027 - cli[3c6b09c7ae00347e]::run_silent_on_preflight_success::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:239:37
[INFO] [stdout]   21:     0x64ff8d3ef9c6 - <cli[3c6b09c7ae00347e]::run_silent_on_preflight_success::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stderr] error: test failed, to rerun pass `--test cli`
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- second_run_does_not_re_emit_first_run_notice stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'second_run_does_not_re_emit_first_run_notice' (4504) panicked at tests/cli.rs:1212:5:
[INFO] [stdout] second run failed: Output { status: ExitStatus(unix_wait_status(256)), stdout: "", stderr: "✅ bwrap on $PATH (bubblewrap 0.9.0)\n\n❌ `pasta` not found on $PATH\n\nInstall the `passt` package, e.g.:\n\nsudo apt install passt\n\n❌ bwrap could not create a user namespace\n\nUbuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:\n\nsudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'\n# AppArmor profile for redoubtful.\n#\n# Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,\n# flatpak,...}: a labeling-only profile attached to a specific binary\n# path. `flags=(unconfined)` means AppArmor doesn't enforce most rules\n# — the profile exists only to grant `userns,` to the named binary so\n# the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows\n# it to create a user namespace.\n#\n# This is not an ideal policy, but it's simple. And anything more\n# complex might not grant a ton of extra security on Ubuntu 24.04\n# without more work, thanks to how many other things already have a\n# similar profile.\n\nabi <abi/4.0>,\ninclude <tunables/global>\n\nprofile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {\n  userns,\n  include if exists <local/redoubtful>\n}\nEOF\nsudo apparmor_parser -r /etc/apparmor.d/redoubtful\n\nSee docs/APPARMOR_USERNS.md for more and less secure alternatives.\n\n2 checks failed.\n" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3c32e2 - cli[3c6b09c7ae00347e]::second_run_does_not_re_emit_first_run_notice
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1212:5
[INFO] [stdout]   20:     0x64ff8d3b8507 - cli[3c6b09c7ae00347e]::second_run_does_not_re_emit_first_run_notice::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:1188:50
[INFO] [stdout]   21:     0x64ff8d3f0046 - <cli[3c6b09c7ae00347e]::second_run_does_not_re_emit_first_run_notice::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_reports_missing_mount_host stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_reports_missing_mount_host' (4495) panicked at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5:
[INFO] [stdout] Unexpected stderr, failed var.contains(/no/such/path/redoubtful-test)
[INFO] [stdout] ├── var: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] │   
[INFO] [stdout] │   ❌ `pasta` not found on $PATH
[INFO] [stdout] │   
[INFO] [stdout] │   Install the `passt` package, e.g.:
[INFO] [stdout] │   
[INFO] [stdout] │   sudo apt install passt
[INFO] [stdout] │   
[INFO] [stdout] │   ❌ bwrap could not create a user namespace
[INFO] [stdout] │   
[INFO] [stdout] │   Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] │   
[INFO] [stdout] │   sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout] │   # AppArmor profile for redoubtful.
[INFO] [stdout] │   #
[INFO] [stdout] │   # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] │   # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] │   # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout] │   # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] │   # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] │   # it to create a user namespace.
[INFO] [stdout] │   #
[INFO] [stdout] │   # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout] │   # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] │   # without more work, thanks to how many other things already have a
[INFO] [stdout] │   # similar profile.
[INFO] [stdout] │   
[INFO] [stdout] │   abi <abi/4.0>,
[INFO] [stdout] │   include <tunables/global>
[INFO] [stdout] │   
[INFO] [stdout] │   profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout] │     userns,
[INFO] [stdout] │     include if exists <local/redoubtful>
[INFO] [stdout] │   }
[INFO] [stdout] │   EOF
[INFO] [stdout] │   sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] │   
[INFO] [stdout] │   See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] │   
[INFO] [stdout] │   2 checks failed.
[INFO] [stdout] └── var as str: ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout]     
[INFO] [stdout]     ❌ `pasta` not found on $PATH
[INFO] [stdout]     
[INFO] [stdout]     Install the `passt` package, e.g.:
[INFO] [stdout]     
[INFO] [stdout]     sudo apt install passt
[INFO] [stdout]     
[INFO] [stdout]     ❌ bwrap could not create a user namespace
[INFO] [stdout]     
[INFO] [stdout]     Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout]     
[INFO] [stdout]     sudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'
[INFO] [stdout]     # AppArmor profile for redoubtful.
[INFO] [stdout]     #
[INFO] [stdout]     # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout]     # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout]     # path. `flags=(unconfined)` means AppArmor doesn't enforce most rules
[INFO] [stdout]     # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout]     # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout]     # it to create a user namespace.
[INFO] [stdout]     #
[INFO] [stdout]     # This is not an ideal policy, but it's simple. And anything more
[INFO] [stdout]     # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout]     # without more work, thanks to how many other things already have a
[INFO] [stdout]     # similar profile.
[INFO] [stdout]     
[INFO] [stdout]     abi <abi/4.0>,
[INFO] [stdout]     include <tunables/global>
[INFO] [stdout]     
[INFO] [stdout]     profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]       userns,
[INFO] [stdout]       include if exists <local/redoubtful>
[INFO] [stdout]     }
[INFO] [stdout]     EOF
[INFO] [stdout]     sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout]     
[INFO] [stdout]     See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout]     
[INFO] [stdout]     2 checks failed.
[INFO] [stdout] 
[INFO] [stdout] command=`XDG_CONFIG_HOME="/tmp/.tmp1dVf1o" "/opt/rustwide/target/debug/redoubtful" "run" "-m" "/no/such/path/redoubtful-test" "true"`
[INFO] [stdout] code=1
[INFO] [stdout] stdout=""
[INFO] [stdout] stderr=```
[INFO] [stdout] ✅ bwrap on $PATH (bubblewrap 0.9.0)
[INFO] [stdout] 
[INFO] [stdout] ❌ `pasta` not found on $PATH
[INFO] [stdout] 
[INFO] [stdout] Install the `passt` package, e.g.:
[INFO] [stdout] 
[INFO] [stdout] sudo apt install passt
[INFO] [stdout] 
[INFO] [stdout] ❌ bwrap could not create a user namespace
[INFO] [stdout] 
[INFO] [stdout] Ubuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:
[INFO] [stdout] 
[INFO] [stdout] sudo tee /etc/apparmor.d/redoubtful >/dev/null <<\'EOF\'
[INFO] [stdout] # AppArmor profile for redoubtful.
[INFO] [stdout] #
[INFO] [stdout] # Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,
[INFO] [stdout] # flatpak,...}: a labeling-only profile attached to a specific binary
[INFO] [stdout] # path. `flags=(unconfined)` means AppArmor doesn\'t enforce most rules
[INFO] [stdout] # — the profile exists only to grant `userns,` to the named binary so
[INFO] [stdout] # the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows
[INFO] [stdout] # it to create a user namespace.
[INFO] [stdout] #
[INFO] [stdout] # This is not an ideal policy, but it\'s simple. And anything more
[INFO] [stdout] # complex might not grant a ton of extra security on Ubuntu 24.04
[INFO] [stdout] # without more work, thanks to how many other things already have a
[INFO] [stdout] # similar profile.
[INFO] [stdout] 
[INFO] [stdout] abi <abi/4.0>,
[INFO] [stdout] include <tunables/global>
[INFO] [stdout] 
[INFO] [stdout] profile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {
[INFO] [stdout]   userns,
[INFO] [stdout]   include if exists <local/redoubtful>
[INFO] [stdout] }
[INFO] [stdout] EOF
[INFO] [stdout] sudo apparmor_parser -r /etc/apparmor.d/redoubtful
[INFO] [stdout] 
[INFO] [stdout] See docs/APPARMOR_USERNS.md for more and less secure alternatives.
[INFO] [stdout] 
[INFO] [stdout] 2 checks failed.
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d4ddb38 - core[6883ba1bc0fe4ed1]::panicking::panic_display::<assert_cmd[79367cf4184b6d]::assert::AssertError>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x64ff8d4f1797 - <assert_cmd[79367cf4184b6d]::assert::AssertError>::panic::<assert_cmd[79367cf4184b6d]::assert::Assert>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:1036:9
[INFO] [stdout]   21:     0x64ff8d4e1cb7 - <<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(assert_cmd[79367cf4184b6d]::assert::AssertError,)>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d4efefb - <core[6883ba1bc0fe4ed1]::result::Result<assert_cmd[79367cf4184b6d]::assert::Assert, assert_cmd[79367cf4184b6d]::assert::AssertError>>::unwrap_or_else::<<assert_cmd[79367cf4184b6d]::assert::AssertError>::panic<assert_cmd[79367cf4184b6d]::assert::Assert>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:1620:23
[INFO] [stdout]   23:     0x64ff8d3dc9a4 - <assert_cmd[79367cf4184b6d]::assert::Assert>::stderr::<predicates[dfcdb80313cdfe4c]::str::basics::ContainsPredicate, assert_cmd[79367cf4184b6d]::assert::StrOutputPredicate<predicates[dfcdb80313cdfe4c]::str::basics::ContainsPredicate>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/assert_cmd-2.2.1/src/assert.rs:463:31
[INFO] [stdout]   24:     0x64ff8d3bc6f3 - cli[3c6b09c7ae00347e]::run_reports_missing_mount_host
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:622:10
[INFO] [stdout]   25:     0x64ff8d3b7f97 - cli[3c6b09c7ae00347e]::run_reports_missing_mount_host::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:617:36
[INFO] [stdout]   26:     0x64ff8d3ef906 - <cli[3c6b09c7ae00347e]::run_reports_missing_mount_host::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   48:     0x761324e43a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- run_hides_unexpected_paths_in_home stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'run_hides_unexpected_paths_in_home' (4373) panicked at tests/cli.rs:391:5:
[INFO] [stdout] ls failed: Output { status: ExitStatus(unix_wait_status(256)), stdout: "", stderr: "✅ bwrap on $PATH (bubblewrap 0.9.0)\n\n❌ `pasta` not found on $PATH\n\nInstall the `passt` package, e.g.:\n\nsudo apt install passt\n\n❌ bwrap could not create a user namespace\n\nUbuntu 24.04+ blocks unprivileged user namespaces by default. Install an AppArmor profile to allow redoubtful to create them:\n\nsudo tee /etc/apparmor.d/redoubtful >/dev/null <<'EOF'\n# AppArmor profile for redoubtful.\n#\n# Same shape Ubuntu ships for /etc/apparmor.d/{firefox,chrome,vscode,\n# flatpak,...}: a labeling-only profile attached to a specific binary\n# path. `flags=(unconfined)` means AppArmor doesn't enforce most rules\n# — the profile exists only to grant `userns,` to the named binary so\n# the kernel sysctl `apparmor_restrict_unprivileged_userns=1` allows\n# it to create a user namespace.\n#\n# This is not an ideal policy, but it's simple. And anything more\n# complex might not grant a ton of extra security on Ubuntu 24.04\n# without more work, thanks to how many other things already have a\n# similar profile.\n\nabi <abi/4.0>,\ninclude <tunables/global>\n\nprofile redoubtful /opt/rustwide/target/debug/redoubtful flags=(unconfined) {\n  userns,\n  include if exists <local/redoubtful>\n}\nEOF\nsudo apparmor_parser -r /etc/apparmor.d/redoubtful\n\nSee docs/APPARMOR_USERNS.md for more and less secure alternatives.\n\n2 checks failed.\n" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x64ff8d56f111 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x64ff8d56f111 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x64ff8d56f111 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x64ff8d586faa - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x64ff8d586faa - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x64ff8d57555c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x64ff8d57555c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x64ff8d54a406 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64ff8d54a406 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x64ff8d565ec9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x64ff8d41b0d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x64ff8d41b0d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x64ff8d5661f2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x64ff8d5661f2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x64ff8d54a4b2 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x64ff8d541ab9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64ff8d54b29d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x64ff8d58782c - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x64ff8d3bf1ea - cli[3c6b09c7ae00347e]::run_hides_unexpected_paths_in_home
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:391:5
[INFO] [stdout]   20:     0x64ff8d3b8177 - cli[3c6b09c7ae00347e]::run_hides_unexpected_paths_in_home::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/cli.rs:359:40
[INFO] [stdout]   21:     0x64ff8d3efb86 - <cli[3c6b09c7ae00347e]::run_hides_unexpected_paths_in_home::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x64ff8d40e40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x64ff8d40e40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   24:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   25:     0x64ff8d41ba55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x64ff8d41ba55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x64ff8d41ba55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   30:     0x64ff8d41ba55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   31:     0x64ff8d416504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   32:     0x64ff8d416504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x64ff8d41eba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x64ff8d41eba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x64ff8d41eba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x64ff8d41eba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x64ff8d41eba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x64ff8d56de7f - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   41:     0x64ff8d56de7f - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x761324db6aa4 - <unknown>
[INFO] [stdout]   43:     0x761324e43a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     check_on_healthy_host_passes
[INFO] [stdout]     first_run_writes_default_config
[INFO] [stdout]     forward_makes_host_port_reachable_from_sandbox
[INFO] [stdout]     host_loopback_is_unreachable_from_sandbox
[INFO] [stdout]     mount_exposes_host_path_readonly
[INFO] [stdout]     mount_rw_allows_writes_to_host_path
[INFO] [stdout]     proxy_env_var_is_set_in_sandbox
[INFO] [stdout]     proxy_flag_accepts_compact_syntax
[INFO] [stdout]     proxy_public_web_deny_flag_is_accepted
[INFO] [stdout]     run_clears_host_credentials
[INFO] [stdout]     run_cli_env_overrides_profile_env
[INFO] [stdout]     run_default_path_is_canonical
[INFO] [stdout]     run_e_empty_value_is_literal_empty_string
[INFO] [stdout]     run_e_literal_overrides_baseline_path
[INFO] [stdout]     run_e_literal_sets_value
[INFO] [stdout]     run_e_passthrough_drops_when_host_var_unset
[INFO] [stdout]     run_e_passthrough_forwards_when_host_var_set
[INFO] [stdout]     run_executes_the_given_command
[INFO] [stdout]     run_hides_unexpected_paths_in_home
[INFO] [stdout]     run_keeps_cwd_visible
[INFO] [stdout]     run_no_profile_silently_ignores_missing_config
[INFO] [stdout]     run_path_add_prepends_to_canonical
[INFO] [stdout]     run_path_add_prepends_to_path_override
[INFO] [stdout]     run_path_add_repeatable_prepends_in_reverse_order
[INFO] [stdout]     run_path_override_replaces_baseline_path
[INFO] [stdout]     run_preserves_non_utf8_argv_bytes
[INFO] [stdout]     run_profile_bad_path_errors_with_friendly_message
[INFO] [stdout]     run_profile_diamond_via_uses_errors
[INFO] [stdout]     run_profile_env_literal_lands_in_sandbox
[INFO] [stdout]     run_profile_env_passthrough_resolves_against_host
[INFO] [stdout]     run_profile_path_add_prepends_to_path
[INFO] [stdout]     run_profile_repeated_errors
[INFO] [stdout]     run_profile_unknown_errors_with_path
[INFO] [stdout]     run_propagates_child_exit_code
[INFO] [stdout]     run_reports_missing_command
[INFO] [stdout]     run_reports_missing_mount_host
[INFO] [stdout]     run_silent_on_preflight_success
[INFO] [stdout]     run_term_passthrough_forwards_value
[INFO] [stdout]     run_with_broken_config_surfaces_error_even_without_profile_arg
[INFO] [stdout]     second_run_does_not_re_emit_first_run_notice
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 12 passed; 40 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.40s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d", kill_on_drop: false }`
[INFO] [stdout] 1910708da8e170fa8d18ef0aa27e37f1e6740d68507ca7682a0d6f16c4a1744d
