DioxusLabs / dioxus

Fullstack GUI library for web, desktop, mobile, and more.

Home Page:https://dioxuslabs.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Help Request: dx bundle tries to create a directory with a too long path

Tobi34 opened this issue · comments

dx bundle creates directories recurviely. When I create a project in "dioxus-test",
this is the path that gets generated in the dioxus-test build directory:
dioxus-test/dist/bundle/deb/dioxus-test_0.1.0_amd64/data/usr/lib/
dioxus-test/dist/bundle/deb/dioxus-test_0.1.0_amd64/data/usr/lib/
dioxus-test/dist/bundle/deb/dioxus-test_0.1.0_amd64/data/usr/lib/
dioxus-test/dist/bundle/deb/dioxus-test_0.1.0_amd64/data/usr/lib/
dioxus-test/dist/bundle/deb/dioxus-test_0.1.0_amd64/data/usr/lib/ .. goes on recursively ..
The "bundle" directory seems to be missplaced.

Steps to reproduce:

  • go to empty build directory (dioxus-test)
  • run following commands
> dx init
Select Web
Select Vanilla
Select true (router)
> dx bundle

The output is:

build desktop done
Adding assets from dist to bundle
thread 'main' panicked at src/cli/bundle.rs:193:13:
Failed to bundle project: BundlerError(
    Error {
        context: "Failed to build data folders and files",
        source: BundlerError(
            Error {
                context: "Failed to copy resource files",
                source: IoError(
                    Os {
                        code: 36,
                        kind: InvalidFilename,
                        message: "File name too long",
                    },
                ),
            },
        ),
    },
)
stack backtrace:
   0: rust_begin_unwind
   1: core::panicking::panic_fmt
   2: dioxus_cli::cli::bundle::Bundle::bundle
   3: tokio::runtime::park::CachedParkThread::block_on
   4: dx::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Versions:
Os: Nixos 23.11 with latest dioxus packets from unstable.
 dx -V
dioxus 0.5.4
 rustc --version
rustc 1.78.0 (9b00956e5 2024-04-29)

dx serve and dx build work fine. They don't create the additional "bundle" directory.

My shell.nix file:

{ pkgs ? import <nixpkgs-unstable> {} }:
  pkgs.mkShell {
    nativeBuildInputs = with pkgs.buildPackages; [ pkg-config cmake clang dioxus-cli];
    buildInputs =   [
      pkgs.wasmi
      pkgs.wasm-bindgen-cli
      pkgs.openssl 
    ];
}

Why is the bundle directory created in this place ?

Closing this as a duplicate of #2239