Mailinglist Archive: opensuse-factory (269 mails)

< Previous Next >
Re: [opensuse-factory] Lock grades for zypper

On 9/20/19 5:00 PM, H.Merijn Brand wrote:
Short question: are there different kinds of locks available for zypper?

I have solved some of these without locks.

Here are some of the reasons I see for adding locks with zypper al.

1. I do not want software installed on my system:

I personally hate stuff like emacs and zeitgeist, and find
installing it is a waste of diskspace, so I blocked them

2. I do not want an installed version to be upgraded/updated

I have locked svn to version 1.8.17, as newer versions do not work
well with the svn-to-git conversion tools I use(d). As I do not have
any active repository in svn and just use it to import old svn
repo's and then convert them to git, I have locked svn at that

3. I do not want some software to be removed

I still use opera-12 (next to opera-developer), so every update
scheme would (and should) remove opera-12 and replace it with
something more modern. Every sane user should want that, but I have
specific purposes for this browser so I locked it

4. I don't want manually added rpm's to be replaced with rep rpm's

Being forced to work with Oracle, I have a specific set of versioned
oracle software that is possibly also available on public (system)
repositories. Due to dependencies (probably to be compliant to
customer demands) I want to keep these and no other version of it

5. Stuff I build from source

Being involved with (many) open source projects, I have blocked git
from installing from the repositories, as I build every version from
the sources myself. Having it overwritten by updates from zypper
would seriously harm my testing procedures

I install all such software into /opt ie /opt/git then have /opt/git/bin ahead of /usr/bin in my path.

6. Stuff that would conflict with stuff I build from source

Say I build and maintain "fooble" (which might not be publicly
available), I might need to block the bimble34 packages that
installs any part of fooble and invalidates it

Again because i'm building my software in /opt I avoid such conflicts.

7. Old versions of software needed for off-repo rpm's

There are packages that (rightfully) would be deleted using zypper
dup, but that are needed for older software that is still needed on
that machine and is built from source. Zypper dup would e.g.
uninstall libfooble-1 as none of the packages requires it and
libfooble-4 is now current. I want to keep libfooble-1 and
libfooble-1-devel available to be able to build my old stuff

Again here building that version in /opt means I can have the later version for the rest of my system so that doesn't break other things.

So, there are different reasons for locking and IMHO there should be
different levels of it

a. Lock to prevent installation
b. Lock to update/upgrade
c. Lock to downgrade
d. Lock to prevent removal
e. Lock to prevent removal but upgrade/downgrade is allowed
f. Lock to prevent installation/removal from repo's but make zypper
aware that it is installed anyway and ignore further dependencies
on this product (like the above git example)

On my laptop I now have 59 locks, and on my workstations 51 and 41



Simon Lees (Simotek)

Emergency Update Team
SUSE Linux Adelaide Australia, UTC+10:30
GPG Fingerprint: 5B87 DB9D 88DC F606 E489 CEC5 0922 C246 02F0 014B
To unsubscribe, e-mail: opensuse-factory+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-factory+owner@xxxxxxxxxxxx

< Previous Next >