Coder Social home page Coder Social logo

Comments (8)

mattwparas avatar mattwparas commented on May 29, 2024 1

You're right - I did miss the edit! Can you try this:

git clone https://github.com/mattwparas/steel.git &&
cd steel &&
mkdir -p .steel/cogs && mkdir -p .steel/native && # Creates this directory too 
export STEEL_HOME="$(pwd)/.steel" &&
cargo build &&
cargo install --path crates/cargo-steel-lib &&
pushd cogs &&
cargo run -- install.scm &&
popd &&
cargo test --all

I had thought that I would create that additional directory automatically; but it seems like I don't!

from steel.

mattwparas avatar mattwparas commented on May 29, 2024 1

Okay so I'm realizing there might be more that needs to be done. In order to install dylibs we'll need the dylib installer which is installed separately as a cargo extension (eventually it doesn't need to be) - that is located under crates/cargo-steel-lib. Can you first try to install that with cargo install --path crates/cargo-steel-lib and then run the installer?

Apologies that this is all undocumented; this one slipped past me I think. There could be other things that I'm missing as well but that would be the first step to try debugging this

from steel.

cgahr avatar cgahr commented on May 29, 2024 1

Don't worry, as much is expected! So far, I enjoy steel very much. Looking forward to build helix plugins with it!

I'll keep you posted.

EDIT: I got is working! I think the issue stems from ~/.cargo/bin not being in my path. Hence, installing cargo-steel-lib went fine but it couldn't be found afterward. So in the end, this problem only exists for nix and on systems where ~/.cargo/bin is not on the path.

If it is okay for you, I'll create a PR updating flake.nix so that everything just works and close this issue then.

from steel.

mattwparas avatar mattwparas commented on May 29, 2024

Sorry I'm just seeing this! I don't develop on nix - but I'm guessing something with the flake.nix file isn't including the libs directory

from steel.

cgahr avatar cgahr commented on May 29, 2024

You probably missed my last edit :)
I could reproduce this issue on a non nixos too!

from steel.

cgahr avatar cgahr commented on May 29, 2024

This seems to give me the same error as before:

Package is not currently installed.
=> Installing:  '#hash((package-name . slack/websocket) (dependencies . ('#hash((#:path . "../libs/steel-websockets") (#:name . steel-websockets)) '#hash((#:name . steel-webrequests) (#:path . "../libs/steel-webrequests")))) (version . "0.1.0") (path . "/home/cgahr/coding/steel/tmp/steel/cogs/slack")) 
=> Copied package over to:  /home/cgahr/coding/steel/tmp/steel/.steel/cogs/slack/websocket 
=> Installing:  '#hash((dependencies . ()) (version . "0.1.0") (dylibs . ('#hash((#:name . "steel-websockets") (#:workspace-root . "../..") (#:subdir . "libs/steel-websockets")))) (path . "../libs/steel-websockets") (package-name . steel-websockets)) 
=> Copied package over to:  /home/cgahr/coding/steel/tmp/steel/.steel/cogs/steel-websockets 
Attempting to install:  '#hash((#:name . "steel-websockets") (#:workspace-root . "../..") (#:subdir . "libs/steel-websockets")) 
Running dylib build in:  ../libs/steel-websockets/../../libs/steel-websockets 
error[E03]: TypeMismatch
   ┌─ install.scm:11:1
   │
11 │ 
   │   Struct getter expected Ok, found Gc(UserDefinedStruct { fields: [Error: Io: No such file or directory (os error 2)], type_descriptor: StructTypeDescriptor(1) }), (Err Error: Io: No such file or directory (os error 2))

from steel.

mattwparas avatar mattwparas commented on May 29, 2024

That sounds great! Thank you for investigating, I really appreciate it.

In the future I will most likely remove the need for cargo-steel-lib at all in the installation process and expose all of that behavior in steel itself to make things simpler, one less thing to need installed

from steel.

Borwe avatar Borwe commented on May 29, 2024

Okay so I'm realizing there might be more that needs to be done. In order to install dylibs we'll need the dylib installer which is installed separately as a cargo extension (eventually it doesn't need to be) - that is located under crates/cargo-steel-lib. Can you first try to install that with cargo install --path crates/cargo-steel-lib and then run the installer?

Apologies that this is all undocumented; this one slipped past me I think. There could be other things that I'm missing as well but that would be the first step to try debugging this

Thanks, had similar problem, but not using nix, just plain ubuntu, this fixed it.

from steel.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.