[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Why is ggml not migrating?



Hi Adrian,

On 2025-12-08 19:57, Adrian Bunk wrote:
> On Mon, Dec 08, 2025 at 05:42:45PM +0000, Adam D. Barratt wrote:
>> On Mon, 2025-12-08 at 08:47 +0100, Christian Kastner wrote:
>> There are thus amd64 binary packages from the 0.9.4-5 source in
>> unstable built from two different uploads, one signed by you and one by
>> the buildd. That situation seems to be confusing britney (not
>> unreasonably).
> 
> I'd guess for the Deep Learning Team it's really confusing when binaries 
> must be uploaded, and when they must not be uploaded, since everything 
> CUDA is in non-free/contrib and cannot be autobuilt but non-CUDA 
> packages are in main and should be upoloaded source-only.
> 
>> A new source upload would resolve that issue, but I've not checked the
>> packaging in terms of what the expected outcome for the two packages
>> listed above is.
> 
> Christian, this looks wrong:
> 
> /srv/ftp-master.debian.org/buildinfo/2025/12/04/ggml_0.9.4-4_amd64.buildinfo: DEB_BUILD_PROFILES="pkg.ggml.cuda"
> /srv/ftp-master.debian.org/buildinfo/2025/12/04/ggml_0.9.4-4+hip~exp2_amd64.buildinfo: DEB_BUILD_PROFILES="pkg.ggml.cuda"
> /srv/ftp-master.debian.org/buildinfo/2025/12/04/ggml_0.9.4-5_amd64.buildinfo: DEB_BUILD_PROFILES="pkg.ggml.cuda"
> /srv/ftp-master.debian.org/buildinfo/2025/12/04/ggml_0.9.4-5+hip~exp1_amd64.buildinfo: DEB_BUILD_PROFILES="pkg.ggml.cuda"
> 
> Building with profiles is sometimes required for bootstrapping something 
> in the archive, but it shouldn't be part of regular uploads.

the short explanation is that ggml needs two uploads:
  (1) src:ggml for regular ggml and the DFSG-free backends
  (2) binary-only build for bin:libggml0-backend-cuda

There's a write-up on this [1] here. But the general idea is that
previously, to address (2), people usually maintained an entire separate
fork of the source (where upstream is even binary-identical), which is
cumbersome, less discoverable, and adds maintenance burden all around.

That's what I originally did for src:ggml, I had a src:ggml-cuda which
was a copy built just the one backend [2].

Since the CUDA stuff isn't auto-built anyway, and I need to build
locally, I didn't think it would matter whether I used a build profile
for that.

ftp-master was OK with this. I didn't think to ask the RT as I didn't
occur to me that this could be an issue.

I can change this back to the src:ggml-cuda fork if necessary, though
I'd ask for consideration, as this really is the cleaner way to maintain
this.

Best,
Christian

[1]: https://lists.debian.org/debian-ai/2025/11/msg00057.html
[2]: https://salsa.debian.org/deeplearning-team/ggml/-/blob/d4bb71ab18c89339de7354bedae66d980487dea8/debian/cudabuild.sh


Reply to: