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
It looked like the hApp was installed but it wasn’t showing up in the hApp list in the tray icon. It could be a catalina problem but we will keep digging
Thanks for sharing this Wladoo, I too am on windows, and having followed the directions, I’m seeing an ubuntu desktop after running startxfce4, but there is no launcher bar, and when right clicking to open a terminal it has me select a terminal, but no windows will open.
Does this log tell you anything?
pnewell@Peter-Desktop:~$ startxfce4
/usr/bin/startxfce4: X server already running on display 172.20.0.1:0
gpg-agent[398]: WARNING: “–write-env-file” is an obsolete option - it has no effect
gpg-agent: a gpg-agent is already running - not starting a new one
(xfce4-session:387): xfce4-session-WARNING **: 10:22:24.335: gpg-agent returned no PID in the variables
(xfce4-session:387): xfce4-session-WARNING **: 10:22:24.336: xfsm_manager_load_session: Something wrong with /home/pnewell/.cache/sessions/xfce4-session-172.20.0.1:0, Does it exist? Permissions issue?
xfsettingsd-Message: 10:22:24.374: Skipping screen 0, it already has an xsettings manager…
(xfsettingsd:415): libupower-glib-WARNING **: 10:22:24.377: Couldn’t connect to proxy: Could not connect: No such file or directory
(xfwm4:401): xfwm4-WARNING **: 10:22:24.439: Error opening /dev/dri/card0: No such file or directory
env: ‘Thunar’: No such file or directory
env: ‘xfce4-panel’: No such file or directory
** (xfdesktop:409): WARNING **: 10:22:24.501: Failed to get system bus: Could not connect: No such file or directory
xfsettingsd: Another clipboard manager is already running.
Gtk-Message: 10:22:46.486: GtkDialog mapped without a transient parent. This is discouraged.
[error]No input, aborting
Gtk-Message: 10:22:56.870: GtkDialog mapped without a transient parent. This is discouraged.
I’ve mostly got it working following the instructions on this page.
I’m now able to launch holoscape and got to the page to set the networking, but after clicking next the whole window disappeared. From the console log it appears as though the conductor is running, but I’m not getting any holoscape UI. Subsequent runs no longer prompt with the networking screen and just close right away.
Now I see that it is running successfully and that the screen is expected when there aren’t other things installed. I’ve now successfully installed PeerChat!
I would suggest either a log message to console or another admin screen with something to happen when there aren’t apps installed.