Bug#1042989: Consider switching packaging to Incus
Hey there! Just a couple of updates below. Free Ekanayaka writes: >> Of course! The more the merrier! LXD is currently team-maintained >> under the Go Team, although in practice I'm the only one performing >> uploads. I would envision a similar setup for the packaging of Incus, >> and would welcome your help with it. > > I'm already part of the Go packaging team, I'll start giving a look at > the repositories then, and perhaps start creating the Incus one. I've created the Salsa repository for the incus Debian source package: https://salsa.debian.org/go-team/packages/incus It's still very early on and it's not working yet (I've mostly rebranded the debian/ directory of the lxd Debian source package), but it's a start, so perhaps we might already have something kind of working by the time the first Incus release is out. Please feel free to mess around :) >> I haven't seen any RFP/ITPs for cowsql, go-cowsql, or the fork of >> raft; are you planning to work on getting those packaged for Debian? > > Yes, I can do that, I was mainly waiting to have this conversation to > have a plan about how to do it (see below as well). I've now filed an ITP for cowsql: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1052536 I'll need another one for the Go bindings. Depending on how we decide to ship cowsql/raft in Debian (either by overriding the existing canonical/raft package or not) I'll figure out what to do with it. Cheers, Free
Bug#1042989: Consider switching packaging to Incus
Hey Mathias, Mathias Gibbens writes: > Hi Free, > > On Fri, 2023-09-15 at 13:22 +0100, Free Ekanayaka wrote: >> Hello! >> >> as you probably know, the initial fork from: >> >> https://github.com/cyphar/incus/ >> >> has now been moved under the LXC project: >> >> https://github.com/lxc/incus, >> >> and has definitely gained traction since the initial announcement, >> getting support both from the community and from LXD developers that >> have now moved to incus (myself included). > > Yes, I've been keeping an eye on Incus' development and am glad to > see it's off to a good start! Indeed! >> I wanted to wait for the first official incus release before reaching >> out to Debian fellows, but since I noticed that you might be working >> on updating the LXD package I thought it be good to get in contact. > > I was also planning to wait for the first official release before > diving into packaging for Debian, as I know (at least at first) there > was a ton of churn in dependencies and the naming of binaries. But it's > never too early to start the conversation. :) Right, agreed. As far as the first release is concerned I think it's now approaching, and it should happen within the next few weeks. The re-naming of the binaries has been completed, but there are still a few sub-commands in those binaries that are being renamed. The dependencies should be pretty much the same as LXD 5.16, except for cowsql, and for a few dependencies that actually got dropped wrt LXD. So that part should be relatively straightforward if you have already done some work for LXD 5.16. The idea is to have Incus follow a release scheme similar to LXD, with LTS releases every 2 years or so, and "development" releases in between. The first LTS release would probably come out early next year. Stéphane Graber can provide more information here (or amend anything I said). > As I've thought over things more, I think the ideal path forward > would be to have both LXD and Incus available in Debian. That will give > users the most freedom to choose what they want to install on their > systems, and if down the road either of the projects winds down we can > help them migrate to the other project as needed. We were thinking more or less the same, but with a difference: what about uploading to Debian only the LTS updates of LXD for now (that means the 5.0.x releases) and start uploading the Incus development releases (once the first is out)? That would support current Debian LXD users, give folks a chance to try out Incus, and simplify a bit the packaging situation (see below for details). There is a lxd-to-incus tool in Incus that Debian users will be able to use to migrate their LXD deployments to Incus: assuming that you have both lxd and incus installed, typing "sudo lxd-to-incus" should just work and get everything migrated from lxd to incus. Once trixie gets released it would contain the latest LXD 5.0.x release (which upstream supports until June 2027), and the latest Incus LTS release. Bookworm users can upgrade to trixie and then migrate their deployments to Incus using the lxd-to-incus tool, if they wish to. Since the release of Trixie is still relatively far away, we could always revisit this approach and start uploading new development (or LTS) releases of LXD too. >> As Debian developer myself, incus maintainer and original author of >> dqlite/libraft (which have now been forked too into the new "cowsql" >> project https://github.com/cowsql, used by incus), I'd of course love >> to see Debian switching to incus and cowsql, and in that case I'd >> like to help out with packaging and maintainership. > > Of course! The more the merrier! LXD is currently team-maintained > under the Go Team, although in practice I'm the only one performing > uploads. I would envision a similar setup for the packaging of Incus, > and would welcome your help with it. I'm already part of the Go packaging team, I'll start giving a look at the repositories then, and perhaps start creating the Incus one. > I haven't seen any RFP/ITPs for cowsql, go-cowsql, or the fork of > raft; are you planning to work on getting those packaged for Debian? Yes, I can do that, I was mainly waiting to have this conversation to have a plan about how to do it (see below as well). > If not, eventually I'll get around to them. :) The only heartburn I have > is with the fork of raft -- from a quick inspection, it looks like the > package has the same name (both for the package and shared library) as > Canonical's version of raft which is already packaged. Would it be too > much work to change the name of the fork, so it would be trivial to > have co-installed versions of raft? So, first of all, I was reluctant to fork and I tried for quite some time to collaborate with Canonical on dqlite, but I felt that upper management was not interested in having a "community" (however small) around the project, with which to share plans and decisions in full
Bug#1042989: Consider switching packaging to Incus
Hi Free, On Fri, 2023-09-15 at 13:22 +0100, Free Ekanayaka wrote: > Hello! > > as you probably know, the initial fork from: > > https://github.com/cyphar/incus/ > > has now been moved under the LXC project: > > https://github.com/lxc/incus, > > and has definitely gained traction since the initial announcement, > getting support both from the community and from LXD developers that > have now moved to incus (myself included). Yes, I've been keeping an eye on Incus' development and am glad to see it's off to a good start! > I wanted to wait for the first official incus release before reaching > out to Debian fellows, but since I noticed that you might be working > on updating the LXD package I thought it be good to get in contact. I was also planning to wait for the first official release before diving into packaging for Debian, as I know (at least at first) there was a ton of churn in dependencies and the naming of binaries. But it's never too early to start the conversation. :) As I've thought over things more, I think the ideal path forward would be to have both LXD and Incus available in Debian. That will give users the most freedom to choose what they want to install on their systems, and if down the road either of the projects winds down we can help them migrate to the other project as needed. > As Debian developer myself, incus maintainer and original author of > dqlite/libraft (which have now been forked too into the new "cowsql" > project https://github.com/cowsql, used by incus), I'd of course love > to see Debian switching to incus and cowsql, and in that case I'd > like to help out with packaging and maintainership. Of course! The more the merrier! LXD is currently team-maintained under the Go Team, although in practice I'm the only one performing uploads. I would envision a similar setup for the packaging of Incus, and would welcome your help with it. I haven't seen any RFP/ITPs for cowsql, go-cowsql, or the fork of raft; are you planning to work on getting those packaged for Debian? If not, eventually I'll get around to them. :) The only heartburn I have is with the fork of raft -- from a quick inspection, it looks like the package has the same name (both for the package and shared library) as Canonical's version of raft which is already packaged. Would it be too much work to change the name of the fork, so it would be trivial to have co-installed versions of raft? > Within the incus team we have discussed possible Debian-specific > migration strategies and we'd have ideas about how to handle it, so > users experience the least possible disruption. I'd certainly like to see that. Debian is tracking the LTS releases, and it would be a good release goal for trixie to have a migration path from LXC -> Incus for users if they wish. > I'd like to know what are your feelings around these topics, and of > course I understand if you prefer to just sit on the sidelines for > now. Speaking strictly for myself, I'm planning to switch to Incus once it hits a "1.0 LTS" sort of release. As such, I'll have a vested interest in getting it into Debian. I'll be glad to collaborate with you or anyone else who would like to work on the Debian packaging. And for the foreseeable future I'll also keep LXD up to date with its LTS releases for those who choose to stay with it. Mathias signature.asc Description: This is a digitally signed message part
Bug#1042989: Consider switching packaging to Incus
Hello! as you probably know, the initial fork from: https://github.com/cyphar/incus/ has now been moved under the LXC project: https://github.com/lxc/incus, and has definitely gained traction since the initial announcement, getting support both from the community and from LXD developers that have now moved to incus (myself included). I wanted to wait for the first official incus release before reaching out to Debian fellows, but since I noticed that you might be working on updating the LXD package I thought it be good to get in contact. As Debian developer myself, incus maintainer and original author of dqlite/libraft (which have now been forked too into the new "cowsql" project https://github.com/cowsql, used by incus), I'd of course love to see Debian switching to incus and cowsql, and in that case I'd like to help out with packaging and maintainership. Within the incus team we have discussed possible Debian-specific migration strategies and we'd have ideas about how to handle it, so users experience the least possible disruption. I'd like to know what are your feelings around these topics, and of course I understand if you prefer to just sit on the sidelines for now. Cheers, Free
Bug#1042989: Consider switching packaging to Incus
Package: lxd Severity: important Recently a fork of LXD has been announced: https://github.com/cyphar/incus/. Depending on how that develops Debian might want to consider switching LXD's packaging to follow the fork. signature.asc Description: This is a digitally signed message part