Incus Web UI not found on Alpine Linux despite incus-ui-canonical and INCUS_UI path set

Hi everyone,

I’m having trouble getting the Incus web UI to work on my Alpine Linux setup. The incus daemon itself seems to be running fine, and the API is accessible, but the web UI is reported as not installed.

System Details:

  • OS: Alpine Linux (using apk and rc-service)
  • Incus Version: 6.0.4
  • Incus UI Package: incus-ui-canonical (0.14.6-r0) (reinstalled via apk fix incus-ui-canonical)

What Works:

  • The Incus API is responsive. I’ve set incus config set core.https_address “192.168.0.x:443” (using my server’s IP).
  • curl https://192.168.0.x:443 -k returns: {“type”:“sync”,“status”:“Success”,“status_code”:200,“operation”:“”,“error_code”:0,“error”:“”,“metadata”:[“/1.0”]}
  • The incusd service starts correctly via rc-service incusd start.

The Problem: Despite the above, when I run incus webui, I consistently get: Error: The server doesn’t have a web UI installed

Accessing https://192.168.0.x:443/ui/ or other common UI paths in a browser also doesn’t load the UI.

Troubleshooting Steps Taken:

  1. Ensured incus-ui-canonical is installed.
  2. Set core.https_address and confirmed the API is listening.
  3. Restarted incusd multiple times after changes.
  4. Checked the Incus configuration file for Alpine: /etc/conf.d/incusd. This file contains the line: INCUS_UI=/usr/share/incus-ui/.
  5. Verified that the directory /usr/share/incus-ui/ exists and contains UI assets (like index.html, assets/ etc.).

apk info -L incus-ui-canonical shows files are installed there:
incus-ui-canonical-0.14.6-r0 contains:
usr/share/incus-ui/index.html
usr/share/incus-ui/assets/AutoExpandingTextArea-DtSs6mgh.js
usr/share/incus-ui/assets/BackLink-BFCE71Sp.js
usr/share/incus-ui/assets/BaseLayout-DZ0dbCAL.js
usr/share/incus-ui/assets/CancelOperationBtn-aScOssHT.js
usr/share/incus-ui/assets/CertificateAdd-DdFmCYVV.js
usr/share/incus-ui/assets/CertificateGenerate-Dz_r28Xo.js
usr/share/incus-ui/assets/ClusterGroupForm-D0o-Htuw.js
usr/share/incus-ui/assets/ClusterList-COCz0W8S.js
usr/share/incus-ui/assets/ClusterMemberSelector-2pwjPlIw.js
usr/share/incus-ui/assets/ConfigFieldDescription-PdSBxa-E.js
usr/share/incus-ui/assets/CreateClusterGroup-X73L1SKO.js
usr/share/incus-ui/assets/CreateInstance-B8tF47Kt.js
usr/share/incus-ui/assets/CreateInstanceFromImageBtn-D9hfubpw.js
usr/share/incus-ui/assets/CreateNetwork-DLslVEae.js
usr/share/incus-ui/assets/CreateNetworkAcl-CdA256iT.js
usr/share/incus-ui/assets/CreateNetworkAclRule-DBFOk-We.js
usr/share/incus-ui/assets/CreateNetworkForward-WTLmVcys.js
usr/share/incus-ui/assets/CreateProfile-m28wv8vG.js
usr/share/incus-ui/assets/CreateProject-XW8l6EZl.js
usr/share/incus-ui/assets/CreateStoragePool-BOl0j8Ek.js
usr/share/incus-ui/assets/CreateStorageVolume-t494rRAT.js
usr/share/incus-ui/assets/CustomIsoList-CvkXdJSn.js
usr/share/incus-ui/assets/DeleteStoragePoolBtn-U3uNE7aV.js
usr/share/incus-ui/assets/DeleteStorageVolumeBtn-CgtVfVaF.js
usr/share/incus-ui/assets/DiskSizeSelector-DLVCkuvd.js
usr/share/incus-ui/assets/EditClusterGroup-Dt6_FEj2.js
usr/share/incus-ui/assets/EditNetworkForward-CsIB4dyA.js
usr/share/incus-ui/assets/ExpandableList-DHijbZKL.js
usr/share/incus-ui/assets/FormFooterLayout-CuU-kGjK.js
usr/share/incus-ui/assets/FormMenuItem-B-2aF0bb.js
usr/share/incus-ui/assets/FormMenuItem-qJs8Ougx.css
usr/share/incus-ui/assets/GroupOrIdentityChangesTable-CuBtOxjY.js
usr/share/incus-ui/assets/GroupSelectionActions-DVJheN4i.js
usr/share/incus-ui/assets/HelpLink-B3XkufrK.js
usr/share/incus-ui/assets/ImageList-BycANsQL.js
usr/share/incus-ui/assets/InstanceDetail-AP3OlSZx.js
usr/share/incus-ui/assets/InstanceDetail-DSXBckUd.css
usr/share/incus-ui/assets/InstanceList-DMSNRoi4.js
usr/share/incus-ui/assets/ItemName-D1f-vGpQ.js
usr/share/incus-ui/assets/Login-BvSWqVyJ.js
usr/share/incus-ui/assets/ModifiedStatusAction-gLdk8ZF2.js
usr/share/incus-ui/assets/NetworkAclDetail-b9m1rtrF.js
usr/share/incus-ui/assets/NetworkAclForm-DmE7AuUw.js
usr/share/incus-ui/assets/NetworkAclList-B0zMC923.js
usr/share/incus-ui/assets/NetworkDetail-Ch2egW9b.js
usr/share/incus-ui/assets/NetworkForm-Csgxjn-9.js
usr/share/incus-ui/assets/NetworkForwardForm-Co_Bu7yW.js
usr/share/incus-ui/assets/NetworkList-BQ9zrV1L.js
usr/share/incus-ui/assets/NetworkListTable-BW7vKh65.js
usr/share/incus-ui/assets/NetworkMap-DqYJcHvy.js
usr/share/incus-ui/assets/NotificationRow-xxjehJ4r.js
usr/share/incus-ui/assets/OperationList-V6rCBk9R.js
usr/share/incus-ui/assets/PageHeader-Cd5BXnZN.js
usr/share/incus-ui/assets/PermissionGroups-DA6mDSFc.js
usr/share/incus-ui/assets/PermissionIdentities-kUPGTF6g.js
usr/share/incus-ui/assets/PermissionIdpGroups-BJfY0wJI.js
usr/share/incus-ui/assets/ProfileDetail-cvWDo8qG.js
usr/share/incus-ui/assets/ProfileDetailsForm-Bx3hAML4.js
usr/share/incus-ui/assets/ProfileInstances-Y6SQF-Cg.js
usr/share/incus-ui/assets/ProfileList-qe_L54eC.js
usr/share/incus-ui/assets/ProgressBar-BocwRx6g.js
usr/share/incus-ui/assets/ProjectConfiguration-DH2XTv9Y.js
usr/share/incus-ui/assets/ProjectForm-uiuE3UZk.js
usr/share/incus-ui/assets/ProtectedRoute-CFJ4SCFP.js
usr/share/incus-ui/assets/ProxyDeviceForm-6du8G-46.js
usr/share/incus-ui/assets/RenameHeader-DkGppZEy.js
usr/share/incus-ui/assets/ResourceIcon-86GgumPw.js
usr/share/incus-ui/assets/ResourceLabel-klENYVEz.js
usr/share/incus-ui/assets/ResourceLink-BTm6xiTi.js
usr/share/incus-ui/assets/ScrollableContainer-C40WlKkU.js
usr/share/incus-ui/assets/ScrollableTable-Pld7CwH9.js
usr/share/incus-ui/assets/SelectableMainTable-DZZ4Uh4h.js
usr/share/incus-ui/assets/SelectedTableNotification-Qud-p7NZ.js
usr/share/incus-ui/assets/Settings-CL50uuPw.js
usr/share/incus-ui/assets/SidePanel-OwG_zO5W.js
usr/share/incus-ui/assets/SnapshotForm-jJ-8TQWh.js
usr/share/incus-ui/assets/StoragePoolDetail-DaRzd6yI.js
usr/share/incus-ui/assets/StoragePoolSelectTable-BqBiNtpU.js
usr/share/incus-ui/assets/StoragePoolSelector-DYszAQ–.js
usr/share/incus-ui/assets/StoragePoolSize-DJZgUfCE.js
usr/share/incus-ui/assets/StoragePools-UUeo2Lsf.js
usr/share/incus-ui/assets/StorageUsedBy-CK2s5onm.js
usr/share/incus-ui/assets/StorageVolumeDetail-zqax6c0r.js
usr/share/incus-ui/assets/StorageVolumeForm-BfdDj4x7.js
usr/share/incus-ui/assets/StorageVolumes-BslYtSpP.js
usr/share/incus-ui/assets/StorageVolumesFilter-BKyk3NCB.js
usr/share/incus-ui/assets/TabLinks-7jcnLhf2.js
usr/share/incus-ui/assets/UploadCustomIso-C5m4CXwN.js
usr/share/incus-ui/assets/UsedByItem-BZo8_h5S.js
usr/share/incus-ui/assets/VolumeAddSnapshotBtn-BwEg1skc.js
usr/share/incus-ui/assets/WarningList-CYriiWm_.js
usr/share/incus-ui/assets/YamlNotification-B6nzlSje.js
usr/share/incus-ui/assets/YamlSwitch-DQDXFilO.js
usr/share/incus-ui/assets/certificate-BBIk9Y5a.js
usr/share/incus-ui/assets/clusterGroups-BBvcNvdt.js
usr/share/incus-ui/assets/formFields-BDRvqvBI.js
usr/share/incus-ui/assets/images-BxCO3Ibp.js
usr/share/incus-ui/assets/images-Rj2mAqsA.js
usr/share/incus-ui/assets/index-CFxEQZH6.css
usr/share/incus-ui/assets/index-OqWUVYWk.js
usr/share/incus-ui/assets/index.esm-BKGmqQwy.js
usr/share/incus-ui/assets/instanceDelete-B18DdObD.js
usr/share/incus-ui/assets/instanceOptions-BVjIWe7l.js
usr/share/incus-ui/assets/instances-BgX7wtmC.js
usr/share/incus-ui/assets/instances-CsC6Yw04.js
usr/share/incus-ui/assets/loadCustomVolumes-DlO0f06T.js
usr/share/incus-ui/assets/loadIsoVolumes-CqodvNvg.js
usr/share/incus-ui/assets/network-forwards-CdQP4t_Y.js
usr/share/incus-ui/assets/networkForm-CTnJlLu7.js
usr/share/incus-ui/assets/networks-Vwlq20fA.js
usr/share/incus-ui/assets/operations-Bh89JbNy.js
usr/share/incus-ui/assets/searchAndFilter-BEZtSWxl.js
usr/share/incus-ui/assets/snapshots-CrstmIz9.js
usr/share/incus-ui/assets/useClusterMembers–BGINepG.js
usr/share/incus-ui/assets/useSmallScreen-BPhRJUbc.js
usr/share/incus-ui/assets/useSortTableData-6Sa4QgGW.js
usr/share/incus-ui/assets/icon/contextual-menu.svg
usr/share/incus-ui/assets/img/app-logo.png
usr/share/incus-ui/assets/img/favicon-32x32.png
usr/share/incus-ui/assets/img/incus-logo.svg
usr/share/incus-ui/assets/img/microCloud-logo.svg
usr/share/incus-ui/assets/img/screenshot.png
usr/share/incus-ui/assets/js/manifest.js
usr/share/incus-ui/monaco-editor/min/vs/loader.js
usr/share/incus-ui/monaco-editor/min/vs/base/browser/ui/codicons/codicon/codicon.ttf
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.de.js
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.es.js
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.fr.js
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.it.js
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.ja.js
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.js
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.ko.js
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.ru.js
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.zh-cn.js
usr/share/incus-ui/monaco-editor/min/vs/base/common/worker/simpleWorker.nls.zh-tw.js
usr/share/incus-ui/monaco-editor/min/vs/base/worker/workerMain.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/abap/abap.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/apex/apex.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/azcli/azcli.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/bat/bat.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/bicep/bicep.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/cameligo/cameligo.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/clojure/clojure.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/coffee/coffee.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/cpp/cpp.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/csharp/csharp.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/csp/csp.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/css/css.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/cypher/cypher.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/dart/dart.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/dockerfile/dockerfile.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/ecl/ecl.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/elixir/elixir.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/flow9/flow9.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/freemarker2/freemarker2.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/fsharp/fsharp.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/go/go.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/graphql/graphql.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/handlebars/handlebars.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/hcl/hcl.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/html/html.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/ini/ini.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/java/java.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/javascript/javascript.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/julia/julia.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/kotlin/kotlin.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/less/less.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/lexon/lexon.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/liquid/liquid.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/lua/lua.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/m3/m3.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/markdown/markdown.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/mdx/mdx.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/mips/mips.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/msdax/msdax.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/mysql/mysql.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/objective-c/objective-c.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/pascal/pascal.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/pascaligo/pascaligo.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/perl/perl.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/pgsql/pgsql.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/php/php.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/pla/pla.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/postiats/postiats.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/powerquery/powerquery.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/powershell/powershell.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/protobuf/protobuf.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/pug/pug.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/python/python.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/qsharp/qsharp.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/r/r.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/razor/razor.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/redis/redis.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/redshift/redshift.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/restructuredtext/restructuredtext.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/ruby/ruby.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/rust/rust.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/sb/sb.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/scala/scala.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/scheme/scheme.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/scss/scss.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/shell/shell.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/solidity/solidity.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/sophia/sophia.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/sparql/sparql.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/sql/sql.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/st/st.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/swift/swift.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/systemverilog/systemverilog.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/tcl/tcl.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/twig/twig.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/typescript/typescript.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/typespec/typespec.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/vb/vb.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/wgsl/wgsl.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/xml/xml.js
usr/share/incus-ui/monaco-editor/min/vs/basic-languages/yaml/yaml.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.css
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.de.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.es.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.fr.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.it.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.ja.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.ko.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.ru.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.zh-cn.js
usr/share/incus-ui/monaco-editor/min/vs/editor/editor.main.nls.zh-tw.js
usr/share/incus-ui/monaco-editor/min/vs/language/css/cssMode.js
usr/share/incus-ui/monaco-editor/min/vs/language/css/cssWorker.js
usr/share/incus-ui/monaco-editor/min/vs/language/html/htmlMode.js
usr/share/incus-ui/monaco-editor/min/vs/language/html/htmlWorker.js
usr/share/incus-ui/monaco-editor/min/vs/language/json/jsonMode.js
usr/share/incus-ui/monaco-editor/min/vs/language/json/jsonWorker.js
usr/share/incus-ui/monaco-editor/min/vs/language/typescript/tsMode.js
usr/share/incus-ui/monaco-editor/min/vs/language/typescript/tsWorker.js

ls -l /usr/share/incus-ui/ output:
total 4
drwxr-xr-x 1 root root 6136 May 29 20:12 assets
-rw-r–r-- 1 root root 665 Feb 3 22:57 index.html
drwxr-xr-x 1 root root 6 May 25 17:44 monaco-editor

Checked permissions for /usr/share/incus-ui/ (they seem to be default root:root with world-readable access).
drwxr-xr-x 1 root root 58 May 29 20:12 /usr/share/incus-ui

  1. The incusd daemon is started with INCUSD_OPTIONS=" --group incus".

Current Situation & Logs: Even with the INCUS_UI variable pointing to /usr/share/incus-ui/, the daemon doesn’t seem to recognize that the UI is installed.

Question: Has anyone encountered this on Alpine Linux or a similar setup? Why would Incus report the UI as not installed when the incus-ui-canonical package is present and the INCUS_UI path in the service configuration seems correct?

Are there any other configurations I might be missing, or specific checks Incus performs to detect the UI that might be failing here? Could this be a permissions issue with the incus group, or an issue with the Alpine package itself?

Any insights or further troubleshooting steps would be greatly appreciated!

Thanks,

Welcome!

I could not find the incus-ui-canonical package. How do you install it?

alpine:~# apk search incus
distrobuilder-incus-3.1-r5
incus-6.0.4-r3
incus-agent-6.0.4-r3
incus-agent-openrc-6.0.4-r3
incus-bash-completion-6.0.4-r3
incus-client-6.0.4-r3
incus-conversion-6.0.4-r3
incus-feature-6.12.0-r1
incus-feature-agent-6.12.0-r1
incus-feature-agent-openrc-6.12.0-r1
incus-feature-bash-completion-6.12.0-r1
incus-feature-client-6.12.0-r1
incus-feature-conversion-6.12.0-r1
incus-feature-oci-6.12.0-r1
incus-feature-openrc-6.12.0-r1
incus-feature-user-6.12.0-r1
incus-feature-user-openrc-6.12.0-r1
incus-feature-utils-6.12.0-r1
incus-feature-vm-6.12.0-r1
incus-openrc-6.0.4-r3
incus-user-6.0.4-r3
incus-user-openrc-6.0.4-r3
incus-utils-6.0.4-r3
incus-vm-6.0.4-r3
tiny-cloud-incus-3.1.1-r0
alpine:~# 

I’m running Incus on Alpine and to get the UI working (after installing via apk add incus-ui-canonical@testing), I found I needed to append this to /etc/conf.d/incusd:

INCUS_UI="/usr/share/incus-ui"

and restart Incus (rc-service incusd restart).

Incus then recognized the UI immediately.

Credit to this post for helping me realize it was an environment variable issue.

1 Like

It’s in the testing repository.

1 Like

Hi Everyone!

Thank you for the suggestions. The issue was resolved by ensuring the INCUS_UI environment variable is made available to the incusd daemon process. This was done by editing the /etc/init.d/incusd OpenRC init script and adding export INCUS_UI.

2 Likes