On 20/09/2019 16.50, Mykola Krachkovsky wrote:
пʼятниця, 20 вересня 2019 р. 10:30:10 EEST H.Merijn Brand написано:
Short question: are there different kinds of locks available for zypper?
Here are some of the reasons I see for adding locks with zypper al.
1. I do not want software installed on my system:
Regular `zypper al x` while x is uninstalled. I'm keeping gnome-keyring uninstalled this way.
2. I do not want an installed version to be upgraded/updated
Again, regular lock. It wouldn't be changed.
3. I do not want some software to be removed
If this software isn't updated from anywhere... then regular lock would help.
4. I don't want manually added rpm's to be replaced with rep rpm's
Create local repository as was mentioned.
5. Stuff I build from source
Just install them into /usr/local prefix, it's standard, already in the $PATH before /usr/bin and its purpose for software from non-repo sources, like building from source files.
I thought that /usr/local is for installation without rpm.
6. Stuff that would conflict with stuff I build from source
If they still conflict in different prefixes, just uninstall and lock. Did I miss something?
7. Old versions of software needed for off-repo rpm's
Again, regular lock, as this stuff wouldn't updated, would it?
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 Regular lock
e. Lock to prevent removal but upgrade/downgrade is allowed Example? Why it's proposed for removal while it's in repositories?
Maybe because it is superseded by something else.
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) Usually I make package in home subrepository in OBS for this stuff, it's not that hard if you are already building them from sources. Local & home (sub)repositories allows you to keep zypper aware of software you've installed, calculate dependencies and also you can manage repository priorities.
I install things without rpm. Some I compile myself.
On my laptop I now have 59 locks, and on my workstations 51 and 41
Opinions?
Too many locks. I prefer to manage repositories and keep fewer locks (one for gnome-keyring, I've mentioned). But it's personal taste I think.
I have 14. Telcontar:~ # zypper ll # | Name | Type | Repository ---+---------------------------+---------+----------- 1 | PackageKit | package | (any) 2 | PackageKit-browser-plugin | package | (any) 3 | PackageKit-gtk3-module | package | (any) 4 | apper | package | (any) I do not want pk. 5 | calibre | package | (any) I install without rpm, directly from upstream. 6 | cdrkit-cdrtools-compat | package | (any) Distro wanted to install it, instead of proper cdrtools. 7 | pk-update-icon | package | (any) 8 | plymouth | package | (any) I do not want them. 9 | rekall | package | (any) 10 | rekall-examples | package | (any) 11 | rekall-mysql | package | (any) No longer in distro, to prevent removal. 12 | smapi | package | (any) Mine, obsolete. Prevent removal. 13 | tracker-miner-thunderbird | package | (any) Broken, do not want it. 14 | wodim | package | (any) Do not want it. Telcontar:~ # You see, under the same name (lock) some prevent removal, some prevent installation. It is confusing. -- Cheers / Saludos, Carlos E. R. (from 15.0 x86_64 at Telcontar)