I moved about a month ago and haven’t touched my pc a whole lot from before packing it away and finally getting around to unpacking it.

I’m running CachyOS and finally got around to unburying it, and after trying to run a system update I’m met with this:

sudo pacman -Syu
:: Synchronizing package databases...
 cachyos-v4 is up to date
 cachyos-core-v4 is up to date
 cachyos-extra-v4 is up to date
 cachyos is up to date
 core is up to date
 extra is up to date
 multilib is up to date
 DEB_Arch_Extra         10.1 KiB  12.5 KiB/s 00:01 [---------------------] 100%
:: Starting full system upgrade...
warning: gtk2: local (2.24.33-5.1) is newer than cachyos (2.24.33-5)
:: Replace lib32-vulkan-mesa-device-select with cachyos/lib32-vulkan-mesa-implicit-layers? [Y/n] y
warning: libpng12: local (1.2.59-2.1) is newer than cachyos (1.2.59-2)
:: Replace vi with extra/ex-vi-compat? [Y/n] y
resolving dependencies...
looking for conflicting packages...
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: vulkan-mesa-implicit-layers-1:25.3.5-2 and vulkan-mesa-device-select-1:25.2.7-2 are in conflict

I’m not super technologically inclined, not completely illiterate but no expert for sure. Usually I’d update my system regularly but with the move and otherwise being extremely busy lately I’m only getting around to it now. I tried looking it up first but I’m not sure if I just used the wrong search queries or what, but I couldn’t get a good answer anywhere, so I thought I’d try here.

Thanks in advance for any help. I really do appreciate it.

Update: I got it working again! Thanks for everyone who offered help, and especially thanks to Ooops@feddit.org. For anyone who may have the same issue in the future, all I needed to do was update the conflicting packages on their own before doing a full system upgrade and it worked.

  • thisendsnow@lemmy.zip
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    5 hours ago

    Remove these two packages: vulkan-mesa-device-select & lib32-vulkan-mesa-device-select, and then run pacman -Syu again.

    sudo pacman -Rdd vulkan-mesa-device-select lib32-vulkan-mesa-device-select
    
  • Ooops@feddit.org
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    7 hours ago

    Not using CachyOS but Arch… but after a long break from updates you should probably start by checking if your mirror is still up-to-date (doesn’t look like it when you local stuff is newer…).

    Again… not my OS but this seems to be the file you could use to manually replace the mirrorlist in your /etc/pacman.d/ directory.

    Edit: Also just to be sure… -Syyu will force a refresh of all databases (doubling the u would force “upgrading” even it’s an actual downgrade from your local version). You normally don’t do it because it puts extra load on the mirror, but in case of problems it won’t hurt.

    PS: For the future (and although partial upgrades are normally to be avoided)… after a long break in updating the key breaking points are mirrors, then keyfile (they can be so out of date that you can’t start the update; so do them separately first - If CachyOS keeps with its usually sane naming structure the package you should first update, just to be sure, will named cachyos-keyring, but no guarantees there…), then pacman itself…

    The latter is very rare but there have been a handful of major changes in pacman’s lifetime that broke down compatibility after a long time. Arch keeps a static pacman version available for these cases, so you can still do a proper update to fix it, but don’t know where CachyOS keeps it’s equivalent.

    2nd Edit for sake of completion: A quick searched seems to indicate that CachyOS does not have a separate static pacman. So if everything else fails and it’s an actual problem of pacman itself (and only then, so please don’t try that just now) https://pkgbuild.com/~morganamilo/pacman-static/x86_64/bin/pacman-static has the static standalone version of pacman. So you can download this file, make it executable and run it.

    • BurntWits@sh.itjust.worksOP
      link
      fedilink
      arrow-up
      1
      ·
      7 hours ago

      Thanks for all the info. I tried manually replacing the mirrorlist but I’m still getting the same warnings and errors. I also tried -Syyu but still no dice.

      What was this you were saying about keyfile? That doesn’t seem to be something I’m familiar with.

      • Ooops@feddit.org
        link
        fedilink
        arrow-up
        3
        ·
        edit-2
        7 hours ago

        That’s a totally separate error… It can happen that the keyring itself is so out of date that it blocks the update, and with it the upgrade to a newer keyring. For this reason it’s often safer after a long time to do pacman -Syu cachyos-keyring (pretending I guesse right and that’s the name of the package) first to avoid the whole update getting blocked by signature with an out-of-date-key. Yet that should not apply here.

        But Ignoring the warnings you get for now… This looks like vulkan-mesa-implicit-layers did not replace vulkan-mesa-device-select but now the 32bit library version lib32-vulkan-mesa-device is supposed to be replaced by cachyos/lib32-vulkan-mesa-implicit-layers, which would in turn need vulkan-mesa-implicit-layers as a dependency.

        What happens when you answer ‘no’ to that first question? Alternatively, is there anything keeping you from installing vulkan-mesa-implicit-layers (thus replacing vulkan-mesa-device-select)?

        • BurntWits@sh.itjust.worksOP
          link
          fedilink
          arrow-up
          1
          ·
          7 hours ago

          Answering “n” gives me the same error still. Same with if I say no for both questions. In fact, any combination will always result in the same error.

          Probably a dumb question but how would I go about installing vulcan-mesa-implicit-layers?

          • Ooops@feddit.org
            link
            fedilink
            arrow-up
            1
            ·
            edit-2
            2 hours ago

            pacman -S vulcan-mesa-implicit-layers

            Which will then probably tell you that it conflicts with vulkan-mesa-device-select and asks if you want to replace it. Which might either work or just get you another conflict because vulkan-mesa-device-select is required by some other package.

            Btw… pacman -Qi <package name> usually tells you anything you need to know about a package. In this context mainly why it was installed (as a requirement for which package) and which other packages are required as a dependency.

            So maybe you should take one step back first. Check why 'vulkan-mesa-device-select` was installed in the first place. If it’s not dependency of something else you can either remove it (or replace it) alongside its lib32 version.

            • BurntWits@sh.itjust.worksOP
              link
              fedilink
              arrow-up
              1
              ·
              24 minutes ago

              Which will then probably tell you that it conflicts with vulkan-mesa-device-select and asks if you want to replace it. Which might either work or just get you another conflict because vulkan-mesa-device-select is required by some other package.

              Yeah, basically. This was my result:

              sudo pacman -S vulkan-mesa-implicit-layers
              resolving dependencies...
              looking for conflicting packages...
              :: vulkan-mesa-implicit-layers-1:25.3.5-2 and vulkan-mesa-device-select-1:25.2.6-2 are in conflict. Remove vulkan-mesa-device-select? [y/N] y
              error: failed to prepare transaction (could not satisfy dependencies)
              :: removing vulkan-mesa-device-select breaks dependency 'vulkan-mesa-device-select' required by lib32-vulkan-mesa-device-select
              :: removing vulkan-mesa-device-select breaks dependency 'vulkan-mesa-device-select' required by vulkan-intel
              

              Btw… pacman -Qi <package name> usually tells you anything you need to know about a package. In this context mainly why it was installed (as a requirement for which package) and which other packages are required as a dependency.

              So maybe you should take one step back first. Check why 'vulkan-mesa-device-select` was installed in the first place.

              Okay so I tried that and got:

              pacman -Qi vulkan-mesa-device-select
              Installed From  : cachyos
              Name            : vulkan-mesa-device-select
              Version         : 1:25.2.6-2
              Description     : Mesa's Vulkan Device Select layer
              Architecture    : x86_64
              URL             : https://www.mesa3d.org/
              Licenses        : MIT AND BSD-3-Clause AND SGI-B-2.0
              Groups          : None
              Provides        : None
              Depends On      : glibc  libdrm  libxcb  wayland
              Optional Deps   : None
              Required By     : lib32-vulkan-mesa-device-select  vulkan-intel
              Optional For    : None
              Conflicts With  : None
              Replaces        : None
              Installed Size  : 104.43 KiB
              Packager        : CachyOS <admin@cachyos.org>
              Build Date      : Wed 29 Oct 2025 02:12:36 PM
              Install Date    : Fri 07 Nov 2025 07:55:30 PM
              Install Reason  : Installed as a dependency for another package
              Install Script  : No
              Validated By    : Signature
              

              Seems it’s necessary, so I tried sudo pacman -S vulkan-mesa-device-select and it gave me no trouble, so then I ran sudo pacman -Syu and after just under 10 minutes everything updated! Seems to work again. Thank you very much for the help, I really do appreciate it.

          • FauxLiving@lemmy.world
            link
            fedilink
            arrow-up
            1
            ·
            2 hours ago

            remove is -R

            so

            sudo pacman -R vulcan-mesa-implicit-layers
            

            You can force it to ignore dependencies (be careful doing this as it is bypassing an important safety check in the package manager), for example if you’re trying to remove a package that you’re going to replace with another one then you can ignore the dependency warning when you try to remove it.

            Use -Rdd to remove and ignore dependency checking.