Okay, for anyone who tried four times don’t give up! The fifth time worked for me. I successfully installed the bundle, but can’t get past that point. Every time I click on Install, it takes me back to the hApp Store.
@dhtnetwork, I believe all those issues are mainly caused by this prototype’s missing UX design
The red EOF error in the install window is something that happens if there is an issue with the download. This is super simple code that won’t retry if there is a connection issue. Just reopening the details of that bundle is exactly how to combat this now. We might want to make this a bit more sophisticated if this happens a lot - but the real fix will be to use our real hApp store and get those files out of the DHT.
After successful install of a bundle, it doesn’t show you anything. But the fact your screenshot shows Already installed means you’re good. You should find the hApps in the menu called hApps within Holoscape’s main menu you get when clicking on the system tray.
I can’t see an error in your Log error screenshot. Holoscape will display this dialog after 60 seconds if the boot process isn’t finished by then. Did you maybe not respond to the passphrase dialog within 60 seconds? Or maybe you have accidentally closed the dialog. That would explain this as well.
But, yes: We need a proper UX revamp - the current state was me just quickly building MVP views. I’ve met with @ccxxoo yesterday, she is game to bring in her UX skills
In the mean time, I think we should create a screen-cast showing a quick walkthrough…
Hi @simwilso and @mikeg if you run into any issues with Holoscape and sim2h, feel free to report it there. Nico is observing the Holoscape thread so he can help troubleshoot any issues that arise.
Let us know your experience using Holoscape and sim2h.
I’m on mac 10.14.4 and was able to install holoscape v0.0.3-alpha and install identity manager and peer chat and access these hApps successfully.
Then when I tried to install HoloFuel hApp from a bundle file, it seemed to not install smoothly, so I restarted Holoscape and now I get stuck with error:
@ThomasMiller, the conductor can’t start because of this:
Starting interfaces…
thread ‘main’ panicked at ‘called Result::unwrap() on an Err value: “Io Error: Address already in use (os error 48)”’, src/libcore/result.rs:1051:5
So one of the interfaces is configured to use an address (port) which is already in use. Could you post your conductor-config.toml from your config directory? On macOS you find it at ~/Library/Application Support/Holoscape-default. You can also have Holoscape open a finder there with Settings-default -> Reveal config directory.
Also, if you delete or rename that directory you will get a fresh installation.
If you have used a previous version that might have rendered your conductor config broken by assigning the same port to two different interfaces which would explain the error you’re experiencing.
Yes, that is the same bug that I thought was fixed in 0.0.3. Are you actually using that latest release, or are you running 0.0.2?
And yes, that only happens with bundles with two or more UIs. Holoscape is looking for the next free port and doesn’t (didn’t?) wait for the last assigned port to actually get used - hence the double assign.
Regarding your questions:
That hash is not used so far and won’t be checked by Holoscape - you can leave it blank.
The only assumption is that there is an index.html file at the root of the archive.
There is no tutorial out yet. If you want to start writing one I’d be more than happy to help you with any questions that come up. That said, I would suggest to start easy since some pieces are still WIP (like the UI hash). We might need to iterate and don’t want you to have to rewrite a lot if we change something.
What I currently see as an important next step is to get hc run to interpret these bundle files and automatically create a development conductor from it. That should render bundle files a central artifact for hApp projects. Once that’s there, a tutorial describing the whole workflow would make a lot of sense!
I’ve gone ahead and created this tutorial that walks people through bundling the hApp created in the offical Hello Holo tutorial: https://hackmd.io/vbCUE9CoSNC1-62ak5hYYg
However, when I upload the bundle file it crashes… There were no errors so I shot this quick video to show what happens: http://somup.com/cqXDqKfbFB
Looks great, @ThomasMiller. Thanks for writing this up!
Sorry for the late reply, and also sorry for the missing error output in Holoscape. There is one error in your bundle file: the instance_id under [[UIs.instance_references]] has to reference an ID of an instance within the bundle file. You got __gui there which is no instance ID but the ID of the UI. It should read:
[[UI.instance_references]]
ui_handle = "test-instance" #or whatever the hard-coded string in the UI code is
instance_id = "__cctuts" #ID of an instance described within this file.
That whole block is a sub-item of the UI definition with the ID __gui anways.
Hm, Holoscape runs hc hash -p <file> to calculate the hash of the file it got through the bundle. We recently made a change to hc that changes the default behavior to not include meta fields into the package (which caused problems). This definitely changes the hash of the file - but once it’s packaged it should be fine. So I’m not sure why you get different hashes, but one thing to try would be making sure it is the same version of hc that is used for packaging as well as the version that is used inside Holoscape.
I guess you are using the release binary of Holoscape which was packaged with holochain and hc v0.0.36-alpha1. You could either download the hc binary of that version here, or you clone the Holoscape repository and put your holochain and hc binaries (from https://holochain.love ?) into that directory and run Holoscape in development mode with npm start as described here.
I intend to have Holoscape v0.0.4 at least show which versions of holochain and hc are bundled with it - maybe even having an update button that downloads newer releases.
After having installed one app successfully (I started with the Peer Chat), this prompt showed underneath all app pages, regardless of whether I had installed it or not.
After an app has finished installing, everything is cleared out except the app’s listing. This confused me several times, as I was wondering if something had gone wrong. Some sort of confirmation prompt here would be nice. (I’m guessing this is where the prompt mentioned in (3) is supposed to show up!)
All apps except Basic Chat installed and ran without issues
Yes, @ThomasMiller and @erlend_sh, there was a bug in hc's hash calculation which was mistakenly changing the DNA if no properties were given (just hc hash, no hc hash --property x=1). This got fixed recently in v0.0.40-alpha1.
This new version should fix your problem @ThomasMiller - that is, your workflow should be fine and not show a hash mismatch anymore if you use all the newest builds.
That fix is exactly what broke the installation of Basic Chat which had the old/wrong DNA hash in its bundle. That got fixed now as well - thanks for pointing this out @erlend_sh! Please try again, it should work now. And if it does, we can chat over there