Package: wnpp Severity: wishlist X-Debbugs-Cc: 1036...@bugs.debian.org, 1067...@bugs.debian.org, pkg-javascript-de...@lists.alioth.debian.org
* Package name : incus-ui-canonical Version : 0.6 Upstream Contact: Canonical, zabbly, os...@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