diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml index acb0a73..4e58050 100644 --- a/.github/workflows/builds.yml +++ b/.github/workflows/builds.yml @@ -49,7 +49,7 @@ jobs: # Linux Containers projects DISTROBUILDER_TAG: "distrobuilder-3.2" INCUS_TAG: "v6.21.0" - INCUS_UI_CANONICAL_TAG: "incus-0.19.2" + INCUS_UI_CANONICAL_TAG: "incus-0.19.3" LXCFS_TAG: "v6.0.5" LXC_TAG: "v6.0.5" @@ -57,10 +57,10 @@ jobs: COWSQL_TAG: "v1.15.9" CRIU_TAG: "v4.2" EDK2_TAG: "edk2-stable202511" - GOLANG_TAG: "go1.25.6" + GOLANG_TAG: "go1.26.0" LEGO_TAG: "v4.31.0" LIBTPMS_TAG: "v0.10.2" - LIBURING_TAG: "liburing-2.13" + LIBURING_TAG: "liburing-2.14" MINIO_MC_TAG: "RELEASE.2025-08-13T08-35-41Z" MINIO_TAG: "RELEASE.2025-10-15T17-29-55Z" NASM_TAG: "nasm-2.16.03" @@ -313,6 +313,50 @@ jobs: git cherry-pick c829eba4b7eec64d3d4f8fdc3d20433b40bb5c8c # doc: Update config git cherry-pick 945a885af9d3f88c905ad5c5b7af9f1232b69433 # incusd/instance/qmp: Prevent setting link up at initialization git cherry-pick ee2fc45f2d9300e58d9fb5b378a7f2531034cceb # incusd/instance/qemu: Properly initialize connected status + git cherry-pick 9a7eaf1333fbb902b29a328c02ff54c49e4aa03f # incusd/storage/zfs: Set IncusOS storage usage property + git cherry-pick 0de3f4ed7144299457d1f37589fff90b39d42b16 # Fix typo: Supported cConditions to Supported Conditions + git cherry-pick 5e19938aae0d0790e645d5d97309360342cff6c7 # shared/util: Fix SingleQuote to actually quote + git cherry-pick 4e5af56d1205563f53481d27e3ce0f1eb45e573e # cmd/incus: Fix get-client-certificate ignoring per-remote certs + git cherry-pick 336e9c14a31bb63d49b02ba6085d67c425ea3f83 # incusd/storage/lvm: Move IncusOS check to pool creation + git cherry-pick 4fcdbbc47937a4d5ba08ca7dbf045deabfd47ce6 # incus-migrate: Allow running as non-root + git cherry-pick 7f5bef42bef75c3fe361aa2af69a37a2c52e1c14 # incus-migrate: Add URL imports + git cherry-pick 8d709107af9e4b44e6848fae4c8e2ff0955e7445 # doc: Ignore broken links on Alpine gitlab + git cherry-pick 6da39979ec860ddd42b2d89711dd78c7bec6e286 # doc: Ignore broken links on docbook website + git cherry-pick 2eae0da145a9ff676f24a792b29e862baa086778 # github: Deal with new Github images + git cherry-pick 9bbd1361a80b420ab864b9dcf2d9b8931faed393 # tests: Fix SR-IOV attached key test + git cherry-pick cbeffb008344906e9b17989d1bfde70a110c2f1b # incusd/device/nic_physical: Allow migration of managed devices + git cherry-pick 36ad2cbcbc70c9f7c445b4588a997f731ef0f0b2 # shared/cliconfig: Don't pass scheme to OCI creds helper + git cherry-pick 06f30e185f805b9efe59e0599191b34e72423caa # incusd/cluster: Allow restoring a cluster without its instances + git cherry-pick 5493daf9587ad45bccfcb0d26ec5e1d8c43c577e # internal/instance; Correct doc for boot.autostart.priority + git cherry-pick 80a5519509214172615c713a9b84df5381299ae4 # doc: Update config + git cherry-pick b2a41e7b9f0883dff992c4d91193648f977c266e # incusd/cluster: Restrict join token to database servers + git cherry-pick b234ba988cff3ee1b94347c224a2c37fb2dc1e74 # incusd/storage/lvm: Prevent use of lvmcluster with loop files + git cherry-pick bb6e2b09ebbeb61c84354c1515b3de8f92edc295 # incusd/operations: Prevent concurrent access to metadata + git cherry-pick 5c9b30069d1ddb91ebcb5a0f1f14940e531e6067 # incusd/storage: Add support for renaming qcow2 volumes + git cherry-pick 336ec10ad1038c8efc8fad7f755cadda502b1e02 # incusd/storage/drivers: Load NBD module for lvmcluster + git cherry-pick e2e098d6f2ae95538b2da212f193fd098b361331 # incusd/instance/drivers: Pass information about whether migration is live + git cherry-pick 1dde134919cb77115e04e2767aa0009f0558160c # incusd/storage: Add support for qcow2 volume migration + git cherry-pick b3b3d1c27cad8a16b8307b6c384ec0854b82943b # incusd/storage: Add snapshot mount paths parameter to the task function + git cherry-pick c8938372104e34f5b2c2bc438d05765793d1a251 # incusd/device/nic_riov: Retry MAC setting logic + git cherry-pick 290594583613db81f9b789e044cab2bbcc5dc98c # doc/howto/instances: Mention keeping agent drive attached + git cherry-pick da03a4bf41b5ea10921b1889b9c547d7a8926802 # incusd/instances/agent-loader: Silence semanage + git cherry-pick 659a645a743c07c479d23b74e7dd42dfd2db26df # incusd/cluster: Also transfer public key on join + git cherry-pick ebd805b9f29d8715a3b0975c6a57fa00d56fb37d # doc/cloud-init: Fix bad link + git cherry-pick 71588565dbd30a79dab6b511c381e4c5732c4ce0 # incusd: Search OVS switch external_interfaces + git cherry-pick 337985bfd83f5908894160fc321ccf8d1b7087c0 # doc/backup: Fix MarkdownLint warnings + git cherry-pick df76956b950424d43a5bdd95bf9a96a195a7bbda # incusd/storage_volumes_snapshot: Treat pongo templates as unique + git cherry-pick cc9b34b188af8e45cc874a2707ccd8bd4cb8bf95 # incusd/instance/drivers: Propagate error when adding qcow2 backing block device + git cherry-pick dd0740be1678b1f128726e4eeca1e6652c6eb203 # incusd/instance/qemu: gofumpt + git cherry-pick 4410362bfa7adbd5e5dd9e8c0191f1d32188db08 # incusd/device/disk: Add IsSpecialDisk + git cherry-pick 5980894f36a28af14507475816fe4bfa2ada007b # incusd/instance/lxc: Skip metrics on special disks + git cherry-pick a5e48412a31e3fe9eb54c91f5f0313352c49ea40 # incusd/storage: Prevent moving shared storage volumes + git cherry-pick 3496d3eb36fe0c96722535dc7de5eb31bdf2f797 # doc: Update incus-migrate documentation + git cherry-pick 83edce68d51e89428417a2536f3ae92af01350f3 # incusd: Validate that instance can be migrated + git cherry-pick 87d4380fd85ef6dd1201f8b69fef59ba5327654d # incusd/instance/drivers: Add writable argument to NBDBlockExportAdd + git cherry-pick 76fb4423ee9a217d0f680d184f18dd2fa131a197 # incusd/instance/drivers/qmp: Add NBDUnixServerStart + git cherry-pick 356889a52e3aa72bf8a8b21613b4b49d06f6c7ec # incusd/instance: Add ExportQcow2Disk + git cherry-pick d28d49e020e179ca69dd92cab5ffda774014c6fb # incusd/storage: Support live migration of qcow2 volumes + git cherry-pick 2ca7d816411f37304684543d1f2b4f64655dfd26 # doc: Add information about lvmcluster limitation go build -o "/opt/incus/bin/fuidshift" github.com/lxc/incus/v6/cmd/fuidshift go build -o "/opt/incus/bin/incus" github.com/lxc/incus/v6/cmd/incus @@ -651,7 +695,6 @@ jobs: rm /opt/incus/bin/qemu-bridge-helper rm /opt/incus/bin/qemu-edid rm /opt/incus/bin/qemu-io - rm /opt/incus/bin/qemu-nbd rm /opt/incus/bin/qemu-pr-helper rm /opt/incus/bin/qemu-storage-daemon rm /opt/incus/bin/swtpm_* @@ -695,11 +738,9 @@ jobs: ln -s /opt/incus/share/completions/fish pkg/usr/share/fish/vendor_completions.d/incus.fish ln -s /opt/incus/share/completions/zsh pkg/usr/share/zsh/vendor-completions/_incus - ln -s /opt/incus/bin/lxd-to-incus pkg/usr/bin/lxd-to-incus - ln -s /opt/incus/bin/fuidshift pkg/usr/bin/fuidshift - ln -s /opt/incus/bin/incus-migrate pkg/usr/bin/incus-migrate ln -s /opt/incus/bin/incus-simplestreams pkg/usr/bin/incus-simplestreams + ln -s /opt/incus/bin/incus-benchmark pkg/usr/bin/incus-benchmark mkdir -p pkg/var/lib/incus chmod 711 pkg/var/lib/incus diff --git a/bin/incus-migrate b/bin/incus-migrate new file mode 100755 index 0000000..6c81102 --- /dev/null +++ b/bin/incus-migrate @@ -0,0 +1,4 @@ +#!/bin/sh +export PATH=/opt/incus/bin/:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin +export LD_LIBRARY_PATH=/opt/incus/lib/ +exec incus-migrate "$@" diff --git a/bin/lxd-to-incus b/bin/lxd-to-incus new file mode 100755 index 0000000..bf64919 --- /dev/null +++ b/bin/lxd-to-incus @@ -0,0 +1,4 @@ +#!/bin/sh +export PATH=/opt/incus/bin/:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin +export LD_LIBRARY_PATH=/opt/incus/lib/ +exec lxd-to-incus "$@" diff --git a/debian/control b/debian/control index 2bd0b30..2ef0328 100644 --- a/debian/control +++ b/debian/control @@ -139,6 +139,7 @@ Description: Incus - Extra tools - incus-migrate - incus-simplestreams - lxc-to-incus + - lxd-to-incus . This build of Incus is provided for free by Zabbly. Zabbly can be contacted for commercial support and development on Incus. diff --git a/debian/incus-extra.install b/debian/incus-extra.install index 53aa83c..828b71b 100644 --- a/debian/incus-extra.install +++ b/debian/incus-extra.install @@ -1,10 +1,14 @@ usr/bin/distrobuilder usr/bin/fuidshift +usr/bin/incus-benchmark usr/bin/incus-migrate usr/bin/incus-simplestreams usr/bin/lxc-to-incus +usr/bin/lxd-to-incus opt/incus/bin/distrobuilder opt/incus/bin/fuidshift +opt/incus/bin/incus-benchmark opt/incus/bin/incus-migrate opt/incus/bin/incus-simplestreams opt/incus/bin/lxc-to-incus +opt/incus/bin/lxd-to-incus diff --git a/debian/incus.install b/debian/incus.install index de244a5..d9ddd05 100644 --- a/debian/incus.install +++ b/debian/incus.install @@ -1,5 +1,6 @@ opt/incus/agent opt/incus/bin/qemu-img +opt/incus/bin/qemu-nbd opt/incus/bin/qemu-system-* opt/incus/bin/virtiofsd opt/incus/share/qemu diff --git a/debian/rules b/debian/rules index 6ca7b0d..8d4ca1a 100755 --- a/debian/rules +++ b/debian/rules @@ -17,6 +17,7 @@ override_dh_install: rm -R debian/incus-base/opt/incus/share/qemu rm -R debian/incus-base/opt/incus/agent rm debian/incus-base/opt/incus/bin/qemu-img + rm debian/incus-base/opt/incus/bin/qemu-nbd rm debian/incus-base/opt/incus/bin/qemu-system-* rm debian/incus-base/opt/incus/bin/virtiofsd @@ -33,14 +34,18 @@ override_dh_install: # Handle incus-extra rm debian/incus-base/usr/bin/distrobuilder rm debian/incus-base/usr/bin/fuidshift + rm debian/incus-base/usr/bin/incus-benchmark rm debian/incus-base/usr/bin/incus-migrate rm debian/incus-base/usr/bin/incus-simplestreams rm debian/incus-base/usr/bin/lxc-to-incus + rm debian/incus-base/usr/bin/lxd-to-incus rm debian/incus-base/opt/incus/bin/distrobuilder rm debian/incus-base/opt/incus/bin/fuidshift + rm debian/incus-base/opt/incus/bin/incus-benchmark rm debian/incus-base/opt/incus/bin/incus-migrate rm debian/incus-base/opt/incus/bin/incus-simplestreams rm debian/incus-base/opt/incus/bin/lxc-to-incus + rm debian/incus-base/opt/incus/bin/lxd-to-incus # Handle incus-ui-canonical mkdir -p debian/incus-ui-canonical/opt/incus/