Hi,

I’m in the weird spot again, where I want to update my Tumbleweed system and am lost in a dependency hell. It more or less occurs once in a while when updates drop and the prompt asks if I want to install stuff from vendor “obs://build.opensuse.org/home:wolfi323” replacing the obsolete stuff from the official openSUSE vendor.

As soon as I read wolfi323, I get fucking Vietnam flashbacks, because it means I will have to decide for ~100 services if I keep the current obsolote version or install the one from wolfi323. Either way, it’s gonna fuck up a myriad of dependencies.

All that hassle just to do the same shit all over again because at some point, the official opensuse repos catch up with newer versions.

I could probably wait for the official updates, but it’s uncertain, when they are going to drop and I’ll just pile up thousands of updates in the meantime.

How do the Tumbleweed Folks among us deal with this?

  • deliriousn0mad
    link
    fedilink
    arrow-up
    22
    ·
    9 months ago

    How do the Tumbleweed Folks among us deal with this?

    We generally don’t add many third party repos and we set repository priorities. If I understand this correctly, you are currently using official openSUSE packages and your upgrade is prompting you to upgrade them by changing vendor to this home:wolfi repo. If you want to keep the original packages, you just need to set priorities: in YaST 's “Software Repositories” page for instance, you can select a repo and see what its priority is (99 is the lowest priority, 1 is the highest). You could for instance put the official repos at 95 priority and the wolfi repo at 99. This way, packages will remain set on the official repos even if there are new versions on the other repo.

    However, if you have packages that you want to get from the wolfi repo but are also in the official repos, with this method you will be asked to change those packages to the official repos, the inverse situation compared to your issue. You can tell the system to keep those packages from your chosen repo, I do it by choosing a version on the YaST Software page.

    • xtapa@discuss.tchncs.deOP
      link
      fedilink
      arrow-up
      4
      ·
      9 months ago

      Oh I didn’t know about the priority system. That might help. I guess I’ll try to figure out, if I need the wolfi repo in the first place and remove it if possible and in addition add OpenSUSE as a vendor of higher prio to avoid similar issues in the future.

    • xtapa@discuss.tchncs.deOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      9 months ago

      You’re absolute right with the random repos. Yet, when I started a year ago, I was pretty new to the whole linux thing and allowed myself some experimenting.

      • woelkchen@lemmy.world
        link
        fedilink
        arrow-up
        13
        ·
        9 months ago

        I put the failure on openSUSE’s and their complete lack of communication around this. The base distribution is so good but OBS repo management can taint that.

  • Kuunha@lemmy.eco.br
    link
    fedilink
    arrow-up
    12
    ·
    edit-2
    9 months ago

    Configuring the priority of the repository.
    In OpenSuse, the priority of a repository is a value between 1 and 200, with 1 being the highest priority and 200 the lowest priority. If a package is available in more than one repository, then the repository with the highest priority takes precedence. Default is 99.

    This is how I do via terminal:

    List enabled repositories in priority order:
    zypper lr -PE

    In my case, the repo I want to change is:
    4 | home_paul4us | home:paul4us | Yes | (r ) Yes | No | 99
    (First column is the ID and last is PRIORITY)

    Lower the 3rd party repo priority (set PRIORITY of the repository with ID 4 the value of 100):
    sudo zypper mr -p 100 4

    You will see the message:
    Repository 'home_paul4us' priority has been set to 100.

    Bonus
    If you want to list what is installed from this repo (id 4):
    zypper se -i -r 4

  • GunnarGrop@lemmy.ml
    link
    fedilink
    arrow-up
    5
    ·
    9 months ago

    I set lower priorites (higher number) for all repos from OBS and such. The only repo that has a higher priority is Packman. You can see your priorities with “zypper lr -p”, and set priorities with " zypper mr -p 100 <repo-id>".

  • Björn Tantau@swg-empire.de
    link
    fedilink
    arrow-up
    3
    ·
    9 months ago

    Use the --allow-vendor-change flag (I think that’s it, I can’t look it up at the moment) and it will happily switch between vendors without bugging you.

    Or just remove the repo, but I guess you need it for other stuff.

    • xtapa@discuss.tchncs.deOP
      link
      fedilink
      arrow-up
      1
      ·
      9 months ago

      Tbh, I don’t know if I needed it and added it myself, or if it was an oob Repo. I’ll try to use the flag though. Thanks!

  • dino@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    3
    ·
    9 months ago

    The suggestions made here are already spot on and I can just support the suggestion to use the least amount of extra repos as possible. Packman is the only one I’d consider, also check your repos regularly and see if you can make sense which is what, otherwise get rid of the ones where you have no clue why you had them in the first place (obviously check first which packages they install).

    • xtapa@discuss.tchncs.deOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      9 months ago

      Yeah I’m really happy about some really good answers to my problem. This is my first non-experimental long used Linux system and when I started a year ago, I was experimenting with some stuff and added some repos that were recommended in some videos and blogs. And now I feel the pain of not keeping the count low :D Learning through pain is a real thing here.

  • Strit@lemmy.linuxuserspace.show
    link
    fedilink
    arrow-up
    2
    ·
    9 months ago

    I assume you have added the repo because it fixed some issues at some point. Is the repo still needed to fix those or could you remove the repo and just update using normal distro packages?

    DISCLAIMER: I don’t use OpenSUSE or any of the variants. I assume that the obs stuff is kind of like how the AUR is for Arch, or PPA’s are for Ubuntu. If it’s something difference, please disregard my comment.

    • xtapa@discuss.tchncs.deOP
      link
      fedilink
      arrow-up
      2
      ·
      9 months ago

      I don’t know why the repo was added anymore. I’ll try a flag that was suggested in another response, or otherwise will try to remove the repo so it does not bother me anymore.

    • Ephera@lemmy.ml
      link
      fedilink
      arrow-up
      2
      ·
      9 months ago

      Your comment happens to be fine, but yeah, the way repos work is quite a bit more sophisticated on openSUSE than on most other distros.

      Basically, it’s not a matter of package updates getting installed from whichever repo has the highest version, but rather you can choose where to install a package from and then it will only update from there.
      As a whole, this means you can have many repos on your system which provide the same package, but of course, it still makes it easier to manage, if you have fewer repos.

  • Grangle1@lemm.ee
    link
    fedilink
    arrow-up
    1
    ·
    9 months ago

    I used Tumbleweed for about half a year 1-2 years ago. Version/dependency hell primarily between the main distro repos and Packman (the repo most multimedia drivers are installed from) was my main issue with it. You could expect either the main distros or Packman to break something between the two about once a month and prevent updates for a few days while the other side caught up. Got annoying, but those things can happen pretty easily on a rolling release.