This commit adds the desktop files that flatpak expects for a proper
desktop integration according to the FreeDesktop specs.
Signed-off-by: David Cassany <dcassany@suse.com>
Using a different version requires rebuilding the application anyway; so
instead of downloading it at runtime, just package it in the application.
Signed-off-by: Mark Yen <mark.yen@suse.com>
This converts setupmac.js into a generic download-resources.mjs and make it
work on Windows. This also drop the follow-redirects dependency in favour
of using node-fetch (which we already need in the app). Additionally,
reduce the callback nesting we have in the same script.
There doesn't seem to be significant reason to convert the script to async
(considering that this is run as a one-off).
Additionally, make all this get called as a postinstall hook, so that it
happens automatically upon `npm install`, and the user no longer needs to
worry about it.
Signed-off-by: Mark Yen <mark.yen@suse.com>
We no longer use nuxtron, since we needed the raw webpack configs to
ensure we quit the dev server when we quit the application.
Signed-off-by: Mark Yen <mark.yen@suse.com>
Copy the eslint config from the dashboard, and then append our overrides
at the bottom of the file. This makes it easier to copy files from the
dashboard.
Signed-off-by: Mark Yen <mark.yen@suse.com>
Nuxtron's build script doesn't allow us to add command line arguments to
electron-builder, which causes a problem as electron-builder will by
default attempt to publish when run under GitHub Actions. To work
around this, write a custom script to do the equivalent of `nuxtron
build`.
Up to this point RD has used hyperkit provided by docker or installed
via homebrew. This has worked for development but does not work going
forward. We cannot assume that either hyperkit is installed or that
the path the built app has includes hyperkit.
The change adds hyperkit via two steps:
1. hyperkit is downloaded and placed in the resources/darwin directory
alongside of minikube. It does this by checking out the source at
a specific version and building it. This is needed because hyperkit
is not available as a download.
2. The path to hyperkit is added at the start of the path when minikube
processes are spawned. The start of the path is used so that RD
provided hyperkit is used instead of a different version that may
be available on the system.
Signed-off-by: Matt Farina <matt@mattfarina.com>
This includes:
- a custom binary so we control the version
- a home location of its own so as to not conflict with minikube
if installed on the system
Signed-off-by: Matt Farina <matt@mattfarina.com>
This is a proof of concept for wrapping the "engine" (minikube or
something else) in electron as a UI. This is the base building
block for the desktop.
Signed-off-by: Matt Farina <matt@mattfarina.com>