I have been looking at a PR for KiCad to switch to protobuf3 instead of protobuf [1]
I just noticed that I cannot simultaneously install protobuf and protobuf3 in my rawhide VM. I get:
- file /usr/lib64/libprotobuf.so.30.0.6 from install of protobuf-3.19.6-20.fc44.x86_64 conflicts with file from package protobuf3-3.19.6-7.fc45.x86_64
I tripped over this when I rebuilt KiCad to use protobuf3, but then also tried to install the kicad-nightly that I build in Copr which still links with plain protobuf.
That would appear to mean that every package (including those in Copr or compiled elsewhere) would all have to switch to protobuf3, or none of them could. Or am I missing something obvious?
Steve
[1] https://src.fedoraproject.org/rpms/kicad/pull-request/10
On Fri, May 15, 2026 at 6:21 PM Steven A. Falco stevenfalco@gmail.com wrote:
I have been looking at a PR for KiCad to switch to protobuf3 instead of protobuf [1]
I just noticed that I cannot simultaneously install protobuf and protobuf3 in my rawhide VM. I get:
- file /usr/lib64/libprotobuf.so.30.0.6 from install of protobuf-3.19.6-20.fc44.x86_64 conflicts with file from package protobuf3-3.19.6-7.fc45.x86_64
I tripped over this when I rebuilt KiCad to use protobuf3, but then also tried to install the kicad-nightly that I build in Copr which still links with plain protobuf.
That would appear to mean that every package (including those in Copr or compiled elsewhere) would all have to switch to protobuf3, or none of them could. Or am I missing something obvious?
Yes, this is kind of expected, though this conflict will eventually go away once protobuf is upgraded to the latest version.
On 5/15/26 3:21 PM, Steven A. Falco wrote:
I have been looking at a PR for KiCad to switch to protobuf3 instead of protobuf [1]
I just noticed that I cannot simultaneously install protobuf and protobuf3 in my rawhide VM. I get:
- file /usr/lib64/libprotobuf.so.30.0.6 from install of protobuf-3.19.6-20.fc44.x86_64 conflicts with file from package protobuf3-3.19.6-7.fc45.x86_64
I tripped over this when I rebuilt KiCad to use protobuf3, but then also tried to install the kicad-nightly that I build in Copr which still links with plain protobuf.
That would appear to mean that every package (including those in Copr or compiled elsewhere) would all have to switch to protobuf3, or none of them could. Or am I missing something obvious?
Do you even need the "Requires: protobuf3"? You already have the library requirement from "protobuf3-devel", so that would use whichever package provides it.
On 5/15/26 06:34 PM, Samuel Sieb wrote:
On 5/15/26 3:21 PM, Steven A. Falco wrote:
I have been looking at a PR for KiCad to switch to protobuf3 instead of protobuf [1]
I just noticed that I cannot simultaneously install protobuf and protobuf3 in my rawhide VM. I get:
- file /usr/lib64/libprotobuf.so.30.0.6 from install of protobuf-3.19.6-20.fc44.x86_64 conflicts with file from package protobuf3-3.19.6-7.fc45.x86_64
I tripped over this when I rebuilt KiCad to use protobuf3, but then also tried to install the kicad-nightly that I build in Copr which still links with plain protobuf.
That would appear to mean that every package (including those in Copr or compiled elsewhere) would all have to switch to protobuf3, or none of them could. Or am I missing something obvious?
Do you even need the "Requires: protobuf3"? You already have the library requirement from "protobuf3-devel", so that would use whichever package provides it.
Maybe not. But shouldn't protobuf3 somehow obsolete the older protobuf? Or at least use a different library name like /usr/lib64/libprotobuf3?
This level of detail is a bit beyond my comfort zone, but it seems like a problem.
On 5/15/26 3:45 PM, Steven A. Falco wrote:
On 5/15/26 06:34 PM, Samuel Sieb wrote:
On 5/15/26 3:21 PM, Steven A. Falco wrote:
I have been looking at a PR for KiCad to switch to protobuf3 instead of protobuf [1]
I just noticed that I cannot simultaneously install protobuf and protobuf3 in my rawhide VM. I get:
- file /usr/lib64/libprotobuf.so.30.0.6 from install of protobuf-3.19.6-20.fc44.x86_64 conflicts with file from package protobuf3-3.19.6-7.fc45.x86_64
I tripped over this when I rebuilt KiCad to use protobuf3, but then also tried to install the kicad-nightly that I build in Copr which still links with plain protobuf.
That would appear to mean that every package (including those in Copr or compiled elsewhere) would all have to switch to protobuf3, or none of them could. Or am I missing something obvious?
Do you even need the "Requires: protobuf3"? You already have the library requirement from "protobuf3-devel", so that would use whichever package provides it.
Maybe not. But shouldn't protobuf3 somehow obsolete the older protobuf? Or at least use a different library name like /usr/lib64/ libprotobuf3?
That wouldn't help and would make a mess. The new protobuf and protobuf3 will be parallel installable. You're trying to install packages from different releases which contain the same files.
Every package that can't work with the new protobuf version will need to be changed to use "protobuf3-devel" in rawhide. That's why major version updates like this require coordination.
On 16. 05. 26 0:53, Samuel Sieb wrote:
You're trying to install packages from different releases which contain the same files.
Actually both protobuf3 and protobuf version 3 are from the same release. I believe this is an intermediate state of things, but nevertheless, there was no need to push protobuf3 to rawhide *before* protobuf was updated to 4+. It just created a slight mess.
Here is a PR to *at least* add explicit RPM Conflicts:
https://src.fedoraproject.org/rpms/protobuf3/pull-request/2
On Sat, 2026-05-16 at 01:00 +0200, Miro Hrončok wrote:
On 16. 05. 26 0:53, Samuel Sieb wrote:
You're trying to install packages from different releases which contain the same files.
Actually both protobuf3 and protobuf version 3 are from the same release. I believe this is an intermediate state of things, but nevertheless, there was no need to push protobuf3 to rawhide *before* protobuf was updated to 4+. It just created a slight mess.
Here is a PR to *at least* add explicit RPM Conflicts:
This broke FEX in the latest Rawhide: https://koji.fedoraproject.org/koji/taskinfo?taskID=145499081
DEBUG util.py:461: Running transaction DEBUG util.py:461: Transaction failed: Rpm transaction failed. DEBUG util.py:461: Warning: skipped OpenPGP checks for 765 packages from repository: b9a5d2c81d344e05a3951519fd9f44db DEBUG util.py:461: - file /usr/lib64/libprotobuf.so.30.0.6 conflicts between attempted installs of protobuf3-3.19.6-58.fc45.x86_64 and protobuf-3.19.6-20.fc44.x86_64
On Sat, May 16, 2026 at 8:01 AM Adam Williamson adamwill@fedoraproject.org wrote:
On Sat, 2026-05-16 at 01:00 +0200, Miro Hrončok wrote:
On 16. 05. 26 0:53, Samuel Sieb wrote:
You're trying to install packages from different releases which contain the same files.
Actually both protobuf3 and protobuf version 3 are from the same release. I believe this is an intermediate state of things, but nevertheless, there was no need to push protobuf3 to rawhide *before* protobuf was updated to 4+. It just created a slight mess.
Here is a PR to *at least* add explicit RPM Conflicts:
This broke FEX in the latest Rawhide: https://koji.fedoraproject.org/koji/taskinfo?taskID=145499081
DEBUG util.py:461: Running transaction DEBUG util.py:461: Transaction failed: Rpm transaction failed. DEBUG util.py:461: Warning: skipped OpenPGP checks for 765 packages from repository: b9a5d2c81d344e05a3951519fd9f44db DEBUG util.py:461: - file /usr/lib64/libprotobuf.so.30.0.6 conflicts between attempted installs of protobuf3-3.19.6-58.fc45.x86_64 and protobuf-3.19.6-20.fc44.x86_64
This looks like an implcit file conflict, i.e. not caused by the explicit Conflicts added in the PR above (and potentially even fixed by it)?
Fabio