#970331 kubernetes: Please expose kubernetes sources to dependant packages

#970331#5
Date:
2020-09-14 19:10:58 UTC
From:
To:
I'm looking at packaging github.com/cri-o/cri-o, and noticed that it vendors
kubernetes sources:

 - https://github.com/cri-o/cri-o/tree/master/vendor/k8s.io

Additionally, I note that the 'libpod' package contains a copy of some sources,
https://sources.debian.org/src/libpod/2.0.4+dfsg2-5/vendor/k8s.io/

I'd like to avoid copying source code and suggest to have the required source
code exposed in a kubernetes-dev package so that code duplication becomes
unnecessary.

Let me know what you think.

#970331#10
Date:
2026-09-23 19:12:55 UTC
From:
To:
Hi,


Meanwhile there is https://debian-kubernetes.org/


Regards
Geert Stappers

#970331#15
Date:
2026-10-14 20:51:02 UTC
From:
To:
Hi,

Thanks for the original request, and apologies for the long delay in
closing the loop here.

This can now be considered resolved. Rather than exposing the sources
from the monolithic src:kubernetes package via a single kubernetes-dev
package, upstream Kubernetes has put in place automation that
splits/mirrors the staged libraries under k8s.io/* into their own
individual git repositories.

Following that upstream structure, most k8s libraries are now packaged
individually in Debian as its own source package.

Dependent packages can now build-depend on these individual
golang-k8s-*-dev packages instead of vendoring copies of the Kubernetes
sources, which addresses the code-duplication concern that motivated
this report.

The following libraries are already available in unstable:

- golang-k8s-api-dev
- golang-k8s-apimachinery-dev
- golang-k8s-cli-runtime-dev
- golang-k8s-client-go-dev
- golang-k8s-cluster-bootstrap-dev
- golang-k8s-component-base-dev
- golang-k8s-component-helpers-dev
- golang-k8s-cri-api-dev
- golang-k8s-cri-client-dev
- golang-k8s-klog-dev
- golang-k8s-kms-dev
- golang-k8s-kube-openapi-dev
- golang-k8s-kube-proxy-dev
- golang-k8s-kubectl-dev
- golang-k8s-metrics-dev
- golang-k8s-mount-utils-dev
- golang-k8s-sigs-apiserver-network-proxy-dev
- golang-k8s-sigs-json-dev
- golang-k8s-sigs-knftables-dev
- golang-k8s-sigs-kustomize-api-dev
- golang-k8s-sigs-kustomize-cmd-config-dev
- golang-k8s-sigs-kustomize-dev
- golang-k8s-sigs-kustomize-kyaml-dev
- golang-k8s-sigs-randfill-dev
- golang-k8s-sigs-release-utils-dev
- golang-k8s-sigs-structured-merge-diff-dev
- golang-k8s-sigs-structured-merge-diff-v6-dev
- golang-k8s-sigs-yaml-dev
- golang-k8s-streaming-dev
- golang-k8s-system-validators-dev
- golang-k8s-utils-dev

If you find a Kubernetes library that is not yet packaged, please file
an RFP bug so it can be tracked and picked up for packaging. You are of
course also welcome to reach out to the Debian Kubernetes Packaging Team
<team+kubernetes@tracker.debian.org>.

Regards,
Arthur Diniz