Bug#1064852: incus: missing depends on iproute2
On Tue, 2024-03-05 at 14:19 +0100, Helmut Grohne wrote: > debvm-create --include=incus > # This should have created a file named rootfs.ext4. > debvm-run Thanks for sharing that! > Rather than adding debvm on top of your testing, I think adding > autopkgtests with isolation-machine should get you more automatic > coverage. Possibly such tests need to be explicitly allowed by debci > folks and currently are only available on amd64. Yes, it would be nice to get better autopkgtest coverage for incus, lxc, and lxcfs. I'll add it to my todo list for these packages. :) Mathias signature.asc Description: This is a digitally signed message part
Bug#1064852: incus: missing depends on iproute2
On Tue, Mar 05, 2024 at 12:00:15PM +, Mathias Gibbens wrote: > to add iproute2. I would be interested to know more about what > environment Incus is being used in that doesn't have the `ip` command > available. debvm-create --include=incus # This should have created a file named rootfs.ext4. debvm-run > My normal testing setup for Incus is a fresh, minimal expert install > of sid via the netinst iso. During the install of the VM, I only > install the base system and deselect the "standard system utilities" > group. I do use DHCP, which looks like that might be responsible for > pulling in iproute2 for me. If there's a way to create an even more > minimal install, I'd be happy to incorporate that into my testing > routine. Turns out your minimal expert install is not so minimal. debvm tends to give you a smaller but still functional installation. I think adding --variant=important to debvm-create roughly gets you the minimal expert installation, but creating the machine takes slightly longer and uses more disk space of course. Rather than adding debvm on top of your testing, I think adding autopkgtests with isolation-machine should get you more automatic coverage. Possibly such tests need to be explicitly allowed by debci folks and currently are only available on amd64. Helmut
Processed: Re: Bug#1064852: incus: missing depends on iproute2
Processing control commands: > tags -1 + pending Bug #1064852 [incus] incus: missing depends on iproute2 Added tag(s) pending. -- 1064852: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1064852 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems
Bug#1064852: incus: missing depends on iproute2
Control: tags -1 + pending It's easy enough to add iproute2 as a dependency, so I've done so. Incus already has quite a number of dependencies, and I'd like to keep that list as small as possible, which is why I was initially reluctant to add iproute2. I would be interested to know more about what environment Incus is being used in that doesn't have the `ip` command available. My normal testing setup for Incus is a fresh, minimal expert install of sid via the netinst iso. During the install of the VM, I only install the base system and deselect the "standard system utilities" group. I do use DHCP, which looks like that might be responsible for pulling in iproute2 for me. If there's a way to create an even more minimal install, I'd be happy to incorporate that into my testing routine. Mathias signature.asc Description: This is a digitally signed message part
Bug#1064852: incus: missing depends on iproute2
On Tue, Feb 27, 2024 at 01:33:08AM +, Mathias Gibbens wrote: > iproute2 is Priority: important, which according to Policy §2.5 means > that it is generally expected to be present on a Debian system. Do you > have a specific use case where for some reason you don't have iproute2 > installed? Would you mind reassessing your view in light of Policy 3.5 (https://www.debian.org/doc/debian-policy/ch-binary.html#dependencies)? I think it's quite straightforward and unambiguous. Section 2.5 has traditionally not been what controls decisions about when dependencies ought to be specified, and this particular case is one that I'm surprised to find being controversial. The fine distinction between "Priority: required" and "Essential: yes" has sometimes confused people in the past and has needed some discussion, but it's always been my experience that if one package needs another "Priority: important" package for proper functioning then it's been quite uncontroversial that the first package must declare a dependency. Thanks, -- Colin Watson (he/him) [cjwat...@debian.org]
Bug#1064852: incus: missing depends on iproute2
Control: tags -1 + moreinfo Hi Mathias, On Tue, Feb 27, 2024 at 01:33:08AM +, Mathias Gibbens wrote: > iproute2 is Priority: important, which according to Policy §2.5 means > that it is generally expected to be present on a Debian system. Do you > have a specific use case where for some reason you don't have iproute2 > installed? While that means iproute2 is installed by default, it still does not mean you can rely on its presence. It is "Essential: yes" that allows you to skip emitting the dependency. Users are entitled to remove important packages and often do so. > I'm initially reluctant to explicitly list iproute2 as a dependency > for Incus unless there's some very compelling reason. I think that it is the failure mode that compells me this to be serious. When iproute2 is missing all the incus commands hang and you spend a long time digging why this thing doesn't work at all. If incus were telling me (on the cli) that iproute2 is missing and offering ways of working without, I'd see things differently. Conversely, what is the maintenance cost of having this dependency? Helmut
Bug#1064852: incus: missing depends on iproute2
Control: tags -1 + moreinfo Hi Helmut, iproute2 is Priority: important, which according to Policy §2.5 means that it is generally expected to be present on a Debian system. Do you have a specific use case where for some reason you don't have iproute2 installed? I'm initially reluctant to explicitly list iproute2 as a dependency for Incus unless there's some very compelling reason. Mathias signature.asc Description: This is a digitally signed message part
Bug#1064852: incus: missing depends on iproute2
Package: incus Version: 0.6-1 Severity: serious Justification: missing dependency After installing incus any "incus *" command (even incus info) just hangs with no indication what's wrong. journalctl -u incus eventually reveals: Feb 26 16:47:45 testvm incusd[685]: Error: exec: "ip": executable file not found in $PATH After installing iproute2, incus starts and incus commands start working. Helmut