[Pkg-javascript-devel] Bug#1067132: RFP: incus-ui-canonical -- Incus-UI-Canonical is a browser frontend for Incus (patched LXD-UI)
Osamu Aoki
osamu at debian.org
Tue Mar 19 08:29:06 GMT 2024
Package: wnpp
Severity: wishlist
X-Debbugs-Cc: 1036926 at bugs.debian.org, 1067041 at bugs.debian.org, pkg-javascript-devel at lists.alioth.debian.org
* Package name : incus-ui-canonical
Version : 0.6
Upstream Contact: Canonical, zabbly, osamu at debian.org (See below)
* URL : https://github.com/osamuaoki/incus-ui-canonical
* License : GPL-3
Programming Lang: HTML, JavaScript, TypeScript
Description : Incus-UI-Canonical is a browser frontend for Incus (patched LXD-UI)
incus-ui-canonical is a browser frontend for Incus. It enables easy and
accessible container and virtual machine management. Targets small and
large scale private clouds.
This enhances user experience of incus users.
This RFP needs help by a person familiar with Node.js, Typescript, etc.
Background:
Canonical's actions around relicensing LXD and Linuxcontainer.org's
reaction of starting Incus as the LXD alternative made Debian to move to
Incus for Trixie.
Canonical was shipping LXD's browser frontend LXD-UI as a snap package
but it never got packaged for Debian.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1036926
After the fork, incus upstream associated zabbly started to ship latest
incus deb package on his site while bundling patched LXD-UI with
rebranding etc. His packaging method was an interesting one focusing
on creating a binary package using github workflow, it was not
compatible with normal Debian packaging practices.
https://github.com/canonical/lxd-ui (Canonical LXD-UI)
https://github.com/zabbly/incus (zabbly's incus package builder)
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1067041
Updating Debian's incus package to include web frontend is not a
option. So current Debian incus package lacks web frontend since it
only relies on https://github.com/lxc/incus.
Basically, I created https://github.com/osamuaoki/incus-ui-canonical by
applying patches from zabbly on Canonical's LXD-UI (version 0.6) to
adopt zabbly's work into more Debian package friendly format.
Although the resulting web frontend is a static single html page with
lots of javascripts, building them requires lots of node codes which
hasn't been packaged for Debian yet. The build script currently used
in https://github.com/osamuaoki/incus-ui-canonical access external
repository, thus isn't ready for Debian. So consider this as a
baseline code which needs more work. Thus this RFP needs help by a
person familiar with Node.js, Typescript, etc.
According to zabbly, Incus UI (Equivalent of which, this package tries
to offer as a normal deb-package) is a single-page application written
in TypeScript and React and only replicates what you can do with the
incus CLI program (i.e. works through the REST API). This is the
reason behind why zabbly using LXD-UI based code and not other possible
UIs:
https://github.com/PenningLabs/lxconsole (PYTHON)
https://github.com/AdaptiveScale/lxdui (PYTHON)
https://github.com/turtle0x1/LxdMosaic (JS with SQL)
https://github.com/lxdware/lxd-dashboard (PHP)
Some interesting background can be found:
https://stgraber.org/2023/11/25/adding-a-web-ui-to-the-incus-demo-service/
https://discuss.linuxcontainers.org/t/web-ui-for-incus/18198
https://discuss.linuxcontainers.org/t/stateful-uis-and-questions-about-lxd-ui-history/18302
https://discuss.linuxcontainers.org/t/incus-web-ui-spacing/18928
https://discuss.linuxcontainers.org/t/lxconsole-as-web-ui/19212
Other distro related info:
https://github.com/KosmX/incus-ui-canonical-arch Arch Linux package
https://gist.github.com/vaxvhbe/ce679df15fc521c8aca1ff9ddf537201 RPM spec file?
Osamu
More information about the Pkg-javascript-devel
mailing list