Package Details: wasmer 1.0.2-3

Git Clone URL: https://aur.archlinux.org/wasmer.git (read-only, click to copy)
Package Base: wasmer
Description: Universal Binaries Powered by WebAssembly
Upstream URL: https://github.com/wasmerio/wasmer
Licenses: MIT
Submitter: Svenstaro
Maintainer: Svenstaro (JCaesar)
Last Packager: JCaesar
Votes: 2
Popularity: 0.70
First Submitted: 2019-03-02 00:29
Last Updated: 2021-02-19 14:51

Latest Comments

JCaesar commented on 2021-02-19 14:52

Took me some time to get extra-x86_64-build to work. I hope I caught all of it.

Svenstaro commented on 2021-02-17 23:43

The package you pushed doesn't work if built properly in a container. Try it yourself using extra-x86_64-build. Should be easy to fix, however.

Svenstaro commented on 2021-02-16 17:24

Added you. Feel free to make your own suggested changes.

Svenstaro commented on 2021-02-16 17:23

You don't really need to hang out in any channels if you don't want though it certainly helps. I'll just add you as co-maintainer here and then we can maintain the package together. You can generally just do what you want as long as you keep it reasonable.

JCaesar commented on 2021-02-16 12:24

Oh, I should have really turned on notifications last time I came here.

I did figure out what was going wrong later: when passing feature flags to cargo build --all, the features are only enabled on the top-level crate, not on workspace crates.

That led to problems like

$ wasmer run something.wasm
error: failed to run `something.wasm` (no compilers enabled)
│   1: module instantiation failed (engine: jit, compiler: headless)
╰─> 2: Compilation error: The JITEngine is operating in headless mode, so it can only execute already compiled Modules.

(i.e. you can only execute precompiled modules, but not use this wasmer to (pre-)compile modules.)

There should be a way to pass feature flags to sub-crates when --all-building, but I wasn't able to figure out how. I'd suggest to steal the invocation from the included Makefile anyway: https://github.com/jcaesar/aur-wasmer/blob/f1c844aae749feb3ef466c549a85b09fae18caba/PKGBUILD#L21

Other things in that file:

  • Version bump to 1.0.2
  • Install the .a file, which is required by wasmer create-exe. There's two problems with that though: It won't find the file unless you set WASMER_DIR=/usr (I think I'll do a PR to wasmer itself on that, it should respect $PREFIX at build time...), and I'm not able to run the created executables. (I'll consult the wasmer slack on that later.)
  • Generate a pc file. Not sure whether I should, just because I can.

Also, what would be expected of a co-maintainer? Turn on notifications here (I did)? Hang out in some IRC/Matrix channels? I'm rather inexperienced with AUR.

Svenstaro commented on 2021-01-14 14:15

Would you like to co-maintain this with me? You appear to have some actual experience with this while I'm really just an interested observer.

JCaesar commented on 2021-01-14 09:36

Is it just me, or is the built binary rather useless without any compilers enabled? Maybe it would be best to just use the make distribution provided by upstream?

(I ended up rolling with

build() {
  cd "$pkgname-$pkgver"
  cargo build --release --manifest-path lib/cli/Cargo.toml --features "cranelift llvm singlepass" --bin wasmer
}
package() {
 cd "$pkgname-$pkgver"
  install -Dm755 target/release/wasmer "$pkgdir"/usr/bin/wasmer
  install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}

but that's probably also far from ideal.)

hvksmr1996 commented on 2021-01-06 03:04

Regarding wasmer 1.0.0, in addition to wasmer and wapm, it also provides C/C++ libraries (static and shared) and shell completions.

You may read wasmer-bin's PKGBUILD for reference.

CuriousTommy commented on 2020-03-04 03:42

Would you be able to edit the arch variable and include aarch64 in there? I was able to build this on my Pinebook Pro (after editing the arch variable).