Skip to main content
Topic: [SOLVED] python-pyqt6 6.4.0-1: /bin exists in filesystem (Read 724 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

[SOLVED] python-pyqt6 6.4.0-1: /bin exists in filesystem

Looks like python-pyqt6 just got an upgrade yesterday. However, when I try to install the new version I get:

Code: [Select]
(2/2) checking for file conflicts                   [--------------------------] 100%
error: failed to commit transaction (conflicting files)
python-pyqt6: /bin exists in filesystem (owned by filesystem)
Errors occurred, no packages were upgraded.

/bin of course is a symlink to /usr/bin, and is owned by filesystem. I think it's pretty important it not get overwritten. I recently had a problem when I tried to force through something that wanted to overwrite the /usr/lib64 symlink, so I'm not doing that again.

I wanted to look at the PKGBUILD but packages.artixlinux.org still shows the old version.

Problem with the new package, or something on my end, more likely?

Re: python-pyqt6 6.4.0-1: /bin exists in filesystem

Reply #1
Got the same problem. It seems like someone upstream has broken something, but I genuinely don't know if it's us or the PyQt project. I tried --overwrite and it ended up replacing the symlink with a directory, which definitely shouldn't happen and gave me a mini heart attack.

Here was my workaround
DO NOT DO WHAT USED TO BE HERE

Accidentally overwrote some very important files, including the initramfs. Looks like I’m in for a long day.

Re: python-pyqt6 6.4.0-1: /bin exists in filesystem

Reply #2
I don't know if this helps, but:

The previous Artix 6.3.1-2.1 package has only /usr in its base directory, with /bin inside that.  The Artix 6.4.0-1 package has /usr and /bin in its base directory.  By comparison, the Arch 6.4.0-1 package, which appears to have an identical PKGBUILD according to the Artix Gitea repo, has only /usr in its base directory and /bin inside that (i.e., like the prior Artix 6.3.1-2.1 package).  When I tried building it myself in a chroot, I also wound up with both /usr and /bin in the base directory of the resulting package.  So I deduce there's something wrong with the Artix build process.  I'm nowhere near clever enough to have any idea what, though.

Re: python-pyqt6 6.4.0-1: /bin exists in filesystem

Reply #3
Problem with the new package, or something on my end, more likely?
Weird one. Artix package is trying to install into /bin
Arch package installs correctly into /usr/bin.

The PKGBUILD's from
https://raw.githubusercontent.com/archlinux/svntogit-packages/packages/pyqt6/trunk/PKGBUILD
&
https://gitea.artixlinux.org/packagesP/pyqt6/raw/branch/master/x86_64/extra/PKGBUILD
are identical except for the maintainer line.

You can install the arch package (or wait for it to get fixed)
sudo pacman -S extra/python-pyqt6

You'll probaly have to delete the artix package from the cache first ? I did it anyway.

Re: python-pyqt6 6.4.0-1: /bin exists in filesystem

Reply #4
As an experiment, I tried adding --scripts-dir=/usr/bin \ back into the PKGBUILD, having noticed that it was previously added to the 6.3.1-2.1 release but deleted in the upgrade to 6.4.1-1.  Lo and behold, now everything is in the proper place, and the resulting package installs just fine.  So there clearly is something wonky with Artix's build system that isn't wrong with Arch's build system, and removing that line was something the maintainer shouldn't have done because it's necessary on Artix.  (Although, again, I haven't the vaguest idea why.)

 

Re: python-pyqt6 6.4.0-1: /bin exists in filesystem

Reply #5
Just a follow up, a new version of the PKGBUILD was released (pkgrel=1.1 vs. pkgrel=1) yesterday and that seems to have fixed the issue. I think the old version was too close to Arch's, and now if you click gripped's links, you can see that --scripts-dir=/usr/bin was added to Artix's and this has fixed the problem, as frankspace suggested it would, for me at least.

Thanks to everyone who responded.