my emscope
command-line tool (written in TS) will be delivered through npm
… the emscope
tool not only generates .jls
for presentation purposes, but also will launch the joulescope file viewer as a convenience…
in the past, i’ve bundled other third-party tools (compilers, loader, etc) as npm
packages in their own right… i want to do the same for the joulescope file viewer, so its installation will happen automatically as part of npm install @em-foundation/emscope
… this approach also allows me to use “enhanced” versions of the UI ahead of their eventual release…
based on some earlier posts about programmatically controlling the GUI, it looks like i need (for now) to clone the pyjoulescope_ui
repo anyway to get the very latest changes implemented by @mliberty …
what’s the “easiest” way to create host-specific folders containing the joulescope file viewer executable and its runtime??? if it helps, i’m only using the file viewing capability of the UI if this simplifies/shrinks the results; and the host-specific executable image will only be invoked indirectly via emscope
…
thoughts on how to proceed???
We distribute the Joulescope UI as an installable package that has been compiled using Nuitka (Windows) or PyInstaller (mac & Linux). We then have to sign it correctly for Windows and Mac. While you can certainly get your own keys and use our existing CI chain, I suspect you don’t want to take this on. Your alternatives are:
- Use our official releases. I can create a release with the existing changes this week, but not run our full test validation so that it will be labelled as “alpha”.
- Release as Python packages. You will also need to package all of the python dependencies and the dependencies’s dependencies. While we could potentially trim down this dependency list for just the viewer, the code is not architected to make that easy.
- Build and release yourself as described above.
using an official release tagged “alpha” is fine in general – as long as it is relatively easy for someone to download/install in the usual fashion…
one related issue: you have “installers” for windows and macos that ultimately place the joulescope app in well-known places which are easy for our own tool to find when launching the file viewer programmatically…
not so on linux, where there is no obvious place… clearly, we can simply direct our own linux users to install joulescope “here”, where we’ll define such as place…
at some level, our own (modest) tool partially depends on a joulescope file viewer installation… we just want to make it as low-friction as possible… instructions like: “download from here and install with default options” is reasonable…
Hi @biosbob - Our next official stable release will contain the improvements in UI 1.3.7 that we developed to support your use. Stable releases undergo a full test cycle, with our next planned release in the Sep/Oct timeframe. Until then, you can use releases tagged alpha or beta. Our UI download page has all present and past UI releases, including the brand new 1.3.7.
I have heard that Flatpak is the relatively new and easy way to make cross-distribution packages for Linux. We have not spent the time to create a flatpak for the Joulescope UI yet. I think that this also solves the installation location problem across different Linux distributions. You start a flatpak app like this:
flatpak run com.joulescope.ui
UI 1.3.7 works fine for my “viewer” use-case…. but for whatever reason, i could capture a waveform in real-time…. (the multi-meter worked, however)….
i filled an issue up on github….
Fixed by 1.3.8 (commit 57b1ab4)