clients
clients copied to clipboard
Bug: RPM package conflict with other electron apps
Steps To Reproduce
First, install insomnia-2022.5.1-1.x86_64
as this is a known conflict. Note this bug is related to Electron and is not specific to Insomnia. It's just an example app that I have confirmed causes the conflict.
- https://github.com/Kong/insomnia/releases/download/core%402022.5.1/Insomnia.Core-2022.5.1.rpm
- https://github.com/bitwarden/clients/releases/download/desktop-v2022.9.0/Bitwarden-2022.9.0-x86_64.rpm
sudo dnf install ./Insomnia.Core-2022.5.1.rpm
sudo dnf install ./Bitwarden-2022.9.0-x86_64.rpm
Expected Result
Bitwarden should install/upgrade without an issue.
Actual Result
======================================================================================================================================================================================
Package Architecture Version Repository Size
======================================================================================================================================================================================
Upgrading:
bitwarden x86_64 2022.9.0-1 @commandline 62 M
Transaction Summary
======================================================================================================================================================================================
Upgrade 1 Package
Total size: 62 M
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Error: Transaction test error:
file /usr/lib/.build-id/a2/562c52725bb7caa27cd0de814ec368b8c45e7f from install of bitwarden-2022.9.0-1.x86_64 conflicts with file from package insomnia-2022.5.1-1.x86_64
Screenshots or Videos
No response
Additional Context
This is the same issue as https://github.com/ferdium/ferdium-app/issues/416. The issue author @UriMtzF did a wonderful job on research:
To prevent this from conflicting with other Electron based apps, it's necessary to omit all the symlinks, to achieve this, Electron-builder uses fpm to have an easier way to build linux apps.
The solution is to tell Electron-builder to have some flags on fpm while building the rpm to prevent creating those symlinks.
According to Electron-builder documentation and fpm documentation this option is --rpm-rpmbuild-define "_build_id_links none", this should be changed on the electron-builder.yml file at the root of the project
Please refer to the following links to find the proper way to do this:
- Documentation of electron build and the "fpm" option
- The fpm usage
- The macros on rpm, specifically those flags used on fpm
- A stackoverflow question on avoiding the creation of symlink
Some sources:
- https://github.com/Zettlr/Zettlr/issues/1321
- https://github.com/electron-userland/electron-builder/issues/5227
- https://github.com/jordansissel/fpm/issues/1503
- A thread from RHEL talking about conflicting files on rpm's
Operating System
Linux
Operating System Version
Fedora 36 (this bug probably affects any rpm-based Linux distribution)
Installation method
Direct Download (from bitwarden.com)
Build Version
I'm on 2022.8.1 but the bug is when installing Bitwarden-2022.9.0-x86_64.rpm
@curtisbelt, thanks for reporting this! I have reproduced this on my end, and will update the status of this in our internal tracking system.
Facing the exact same issue when installing Insomnia after Bitwarden
Looks like Slack is a conflict now as well.
Tried installing the latest bitwarden-2023.1.1-1.x86_64
.
Error: Transaction test error:
file /usr/lib/.build-id/0d/9fad3f21b1e381cc66b5efcae8f3910ae0edc1 from install of bitwarden-2023.1.1-1.x86_64 conflicts with file from package slack-4.29.149-0.1.el8.x86_64
file /usr/lib/.build-id/76/9d0269491ca2313fcd15d63059bac67bd8b1b3 from install of bitwarden-2023.1.1-1.x86_64 conflicts with file from package slack-4.29.149-0.1.el8.x86_64
file /usr/lib/.build-id/c2/dcac7cb6a727685d10d4161a0d14988f12a0fa from install of bitwarden-2023.1.1-1.x86_64 conflicts with file from package slack-4.29.149-0.1.el8.x86_64
file /usr/lib/.build-id/cb/dc9db5fec0e6129bddcb0c282be98be4c6966e from install of bitwarden-2023.1.1-1.x86_64 conflicts with file from package slack-4.29.149-0.1.el8.x86_64
In the meantime, I work around this by manually downloading the rpm file and install via rpm
directly, with --force
flag:
sudo rpm -iU --force ./Bitwarden-2023.1.1-x86_64.rpm
I have the same issue on my end with Slack.
Same issue with: Bitwarden-2023.2.0-x86_64.rpm
Error: Transaction test error: file /usr/lib/.build-id/0d/9fad3f21b1e381cc66b5efcae8f3910ae0edc1 from install of bitwarden-2023.2.0-1.x86_64 conflicts with file from package slack-4.29.149-0.1.el8.x86_64 file /usr/lib/.build-id/76/9d0269491ca2313fcd15d63059bac67bd8b1b3 from install of bitwarden-2023.2.0-1.x86_64 conflicts with file from package slack-4.29.149-0.1.el8.x86_64 file /usr/lib/.build-id/c2/dcac7cb6a727685d10d4161a0d14988f12a0fa from install of bitwarden-2023.2.0-1.x86_64 conflicts with file from package slack-4.29.149-0.1.el8.x86_64 file /usr/lib/.build-id/cb/dc9db5fec0e6129bddcb0c282be98be4c6966e from install of bitwarden-2023.2.0-1.x86_64 conflicts with file from package slack-4.29.149-0.1.el8.x86_6