Re: libbpf distro packaging
- To: Jiri Olsa <jolsa@redhat.com>
- Cc: Julia Kartseva <hex@fb.com>, "labbott@redhat.com" <labbott@redhat.com>, "acme@kernel.org" <acme@kernel.org>, "debian-kernel@lists.debian.org" <debian-kernel@lists.debian.org>, "netdev@vger.kernel.org" <netdev@vger.kernel.org>, Andrii Nakryiko <andriin@fb.com>, Andrey Ignatov <rdna@fb.com>, Alexei Starovoitov <ast@fb.com>, Yonghong Song <yhs@fb.com>, "jolsa@kernel.org" <jolsa@kernel.org>
- Subject: Re: libbpf distro packaging
- From: Andrii Nakryiko <andrii.nakryiko@gmail.com>
- Date: Tue, 13 Aug 2019 11:23:59 -0700
- Message-id: <[🔎] CAEf4BzbG29eAL7gUV+Vyrrft4u4Ss8ZBC6RMixJL_CYOTQ+F2w@mail.gmail.com>
- In-reply-to: <[🔎] 20190813122420.GB9349@krava>
- References: <[🔎] 3FBEC3F8-5C3C-40F9-AF6E-C355D8F62722@fb.com> <[🔎] 20190813122420.GB9349@krava>
On Tue, Aug 13, 2019 at 5:26 AM Jiri Olsa <jolsa@redhat.com> wrote:
>
> On Mon, Aug 12, 2019 at 07:04:12PM +0000, Julia Kartseva wrote:
> > I would like to bring up libbpf publishing discussion started at [1].
> > The present state of things is that libbpf is built from kernel tree, e.g. [2]
> > For Debian and [3] for Fedora whereas the better way would be having a
> > package built from github mirror. The advantages of the latter:
> > - Consistent, ABI matching versioning across distros
> > - The mirror has integration tests
> > - No need in kernel tree to build a package
> > - Changes can be merged directly to github w/o waiting them to be merged
> > through bpf-next -> net-next -> main
> > There is a PR introducing a libbpf.spec which can be used as a starting point: [4]
> > Any comments regarding the spec itself can be posted there.
> > In the future it may be used as a source of truth.
> > Please consider switching libbpf packaging to the github mirror instead
> > of the kernel tree.
> > Thanks
> >
> > [1] https://lists.iovisor.org/g/iovisor-dev/message/1521
> > [2] https://packages.debian.org/sid/libbpf4.19
> > [3] http://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/l/libbpf-5.3.0-0.rc2.git0.1.fc31.x86_64.html
> > [4] https://github.com/libbpf/libbpf/pull/64
>
> hi,
> Fedora has libbpf as kernel-tools subpackage, so I think
> we'd need to create new package and deprecate the current
>
> but I like the ABI stability by using github .. how's actually
> the sync (in both directions) with kernel sources going on?
Sync is always in one direction, from kernel sources into Github repo.
Right now it's triggered by a human (usually me), but we are using a
script that automates entire process (see
https://github.com/libbpf/libbpf/blob/master/scripts/sync-kernel.sh).
It cherry-pick relevant commits from kernel, transforms them to match
Github's file layout and re-applies those changes to Github repo.
There is never a sync from Github back to kernel, but Github repo
contains some extra stuff that's not in kernel. E.g., the script I
mentioned, plus Github's Makefile is different, because it can't rely
on kernel's kbuild setup.
>
> thanks,
> jirka
Reply to: