repository names

(openSUSE 13.2 GNOME)

Problem appears relate to blank spaces in repository names.

Are symlinks involved, how best to rename the repository ?


Checking for file conflicts: ................................................................................................................................................................................[done]
( 1/24) Installing: libgsturidownloader-1_0-0-1.4.5-78.1 ...................................................................................................................................................[error]
Installation of libgsturidownloader-1_0-0-1.4.5-78.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libgsturidownloader-1_0-0-1.4.5-78.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): r
Installation of libgsturidownloader-1_0-0-1.4.5-78.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libgsturidownloader-1_0-0-1.4.5-78.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
( 2/24) Installing: libmjpegutils-2_0-0-2.0.0-66.1 .........................................................................................................................................................[error]
Installation of libmjpegutils-2_0-0-2.0.0-66.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libmjpegutils-2_0-0-2.0.0-66.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
( 3/24) Installing: libavutil52-2.3.6-2.1 ..................................................................................................................................................................[error]
Installation of libavutil52-2.3.6-2.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libavutil52-2.3.6-2.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
( 4/24) Installing: gstreamer-plugins-bad-1.4.5-78.1 .......................................................................................................................................................[error]
Installation of gstreamer-plugins-bad-1.4.5-78.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/gstreamer-plugins-bad-1.4.5-78.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
( 5/24) Installing: libswscale2-2.3.6-2.1 ..................................................................................................................................................................[error]
Installation of libswscale2-2.3.6-2.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libswscale2-2.3.6-2.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
( 6/24) Installing: libavresample1-2.3.6-2.1 ...............................................................................................................................................................[error]
Installation of libavresample1-2.3.6-2.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libavresample1-2.3.6-2.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
( 7/24) Installing: libswresample0-2.3.6-2.1 ...............................................................................................................................................................[error]
Installation of libswresample0-2.3.6-2.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libswresample0-2.3.6-2.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
( 8/24) Installing: libpostproc52-2.3.6-2.1 ................................................................................................................................................................[error]
Installation of libpostproc52-2.3.6-2.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libpostproc52-2.3.6-2.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
( 9/24) Installing: gstreamer-plugins-bad-orig-addon-1.4.5-78.1 ............................................................................................................................................[error]
Installation of gstreamer-plugins-bad-orig-addon-1.4.5-78.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/gstreamer-plugins-bad-orig-addon-1.4.5-78.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
(10/24) Installing: libavcodec55-2.3.6-2.1 .................................................................................................................................................................[error]
Installation of libavcodec55-2.3.6-2.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libavcodec55-2.3.6-2.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): i
(11/24) Installing: libavformat55-2.3.6-2.1 ................................................................................................................................................................[error]
Installation of libavformat55-2.3.6-2.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Essentials/x86_64/libavformat55-2.3.6-2.1.x86_64.rpm


Abort, retry, ignore? [a/r/i] (a): a
Problem occured during or after installation or removal of packages:
Installation aborted by user

Please see the above error message for a hint.
linux-zu5x:~ #

linux-zu5x:~ # dir /var/cache/zypp/packages/
total 0
drwxr-xr-x 1 root root 50 Nov 20 13:31 Packman Repository
drwxr-xr-x 1 root root 12 Nov 18 22:10 download.opensuse.org-13.2-non-oss
drwxr-xr-x 1 root root  8 Nov 12 11:19 download.opensuse.org-non-oss
drwxr-xr-x 1 root root  8 Nov 12 11:20 download.opensuse.org-oss
drwxr-xr-x 1 root root 24 Nov 12 11:20 download.opensuse.org-update
drwxr-xr-x 1 root root 12 Nov 17 09:33 libdvdcss repository
drwxr-xr-x 1 root root  8 Nov 12 11:16 openSUSE-13.2-0
linux-zu5x:~ # dir /var/cache/zypp/packages/Packman Repository
ls: cannot access /var/cache/zypp/packages/Packman: No such file or directory
ls: cannot access Repository: No such file or directory
linux-zu5x:~ # dir /var/cache/zypp/packages/**"Packman Repository"**
total 0
drwxr-xr-x 1 root root 24 Dec 28 15:16 Essentials
drwxr-xr-x 1 root root 12 Nov 20 13:31 Games
drwxr-xr-x 1 root root 12 Nov 17 09:32 Multimedia
linux-zu5x:~ # dir /var/cache/zypp/packages/libdvdcss repository
ls: cannot access /var/cache/zypp/packages/libdvdcss: No such file or directory
ls: cannot access repository: No such file or directory
linux-zu5x:~ # dir /var/cache/zypp/packages/**"libdvdcss repository"**
total 0
drwxr-xr-x 1 root root 0 Nov 17 09:34 x86_64
linux-zu5x:~ # cd /var/cache/zypp/packages/
linux-zu5x:/var/cache/zypp/packages # dir
total 0
drwxr-xr-x 1 root root 50 Nov 20 13:31 Packman Repository
drwxr-xr-x 1 root root 12 Nov 18 22:10 download.opensuse.org-13.2-non-oss
drwxr-xr-x 1 root root  8 Nov 12 11:19 download.opensuse.org-non-oss
drwxr-xr-x 1 root root  8 Nov 12 11:20 download.opensuse.org-oss
drwxr-xr-x 1 root root 24 Nov 12 11:20 download.opensuse.org-update
drwxr-xr-x 1 root root 12 Nov 17 09:33 libdvdcss repository
drwxr-xr-x 1 root root  8 Nov 12 11:16 openSUSE-13.2-0
linux-zu5x:/var/cache/zypp/packages # 

Hi
Spaces need to be preceded with a \ eg;
Packman\ Repository

Use YaST Software Repositories to rename them… with a - or drop the second word…

Hi,

You can rename the repositories via zypper too.

zypper help nr


renamerepo (nr) [options] <alias|#|URI> <new-alias>


Assign new alias to the repository specified by alias, number or URI.


This command has no additional options.

e.g.

zypper nr "Packman Repository" Packman

Note you need to quote “Packman Repository” or escape it Packman\ Repository because or word splitting by the shell.
It first see Packman and process it but there is no Packman repository/directory (but Packman Repository) so it will spit out an error.

On 2015-01-21 00:26, jetchisel wrote:
>
> Hi,
>
> You can rename the repositories via zypper too.

There is a complication, because zypper uses two names per repository:
the name and the alias. The name is just a name, but it is the alias
which is used for directory and file names around the system. When I add
repos I take care that the alias does not have spaces or colons,
although zypper escapes them, to avoid complications.

All the definitions are stored in files in /etc/zypp/repos.d/*

The file names seem to be the original alias name of the repository. The
current alias is inside, in brackets:


cer@Telcontar:~> cat /etc/zypp/repos.d/ftp.gwdg.de-suse.repo
[EXT_Packman]
name=EXT: Packman Repository
enabled=1
autorefresh=1
baseurl=http://ftp.gwdg.de/pub/linux/packman/suse/openSUSE_13.1/
path=/
type=rpm-md
priority=95
keeppackages=1
cer@Telcontar:~>

The “alias” is used for directory names elsewhere, like
“/var/cache/zypp/packages/*”.

With «zypper nr number “new alias”» you can change the alias, and the
name with «zypper mr --name “new name” number»


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

Just did an online update. It had a patch for rpm. The description said something about fixing response to filenames with spaces in them. Of xourse, I can’t get the description again because it’s updated, but I thought it was worth mentioning.

Bart

My learning continues… all now working ok

thanks to all :wink:

You can: Open YaST->Online Update and choose to display “All Patches” or “Unneeded Patches”. Then the already installed patches should be shown as well, and you can view the description again.
“zypper info -t patch openSUSE-2015-45” would show it as well, but for this you need to know the patch number obviously.

#  zypper info -t patch openSUSE-2015-45
Loading repository data...
Reading installed packages...

Information for patch openSUSE-2015-45:
---------------------------------------
Name: openSUSE-2015-45
Version: 1
Arch: noarch
Vendor: maint-coord@suse.de
Status: Installed
Category: recommended
Severity: moderate
Created On: Tue 13 Jan 2015 17:29:34 CET
Reboot Required: No
Package Manager Restart Required: No
Interactive: No
Summary: recommended update for rpm
Description: 
  This recommended udpate for rpm fixes the following issue:
  - boo#911228: fix noglob patch, which broke files with spaces
...

Or just look at the RPM changelog, either in YaST (“Changelog” tab) or with “rpm -q --changelog xxx”:

# rpm -q --changelog rpm | head
* Thu Jan 08 2015 mls@suse.de
- fix noglob patch, it broke files with spaces [bnc#911228]

* Wed Dec 10 2014 mls@suse.de
- honor --noglob in install mode [bnc#892431]
  new patch: installnoglob.diff
- check for bad invalid name sizes [bnc#908128] [CVE-2014-8118]
  new patch: cpionamesize.diff
- create files with mode 0 [bnc#906803] [CVE-2013-6435]
  new patch: unpackmode0.diff

That “–noglob” option is only used since the latest zypper update, that’s why the problem only showed up now.

This problem appeared after last openSUSE software stack update (to libzypp 14.32.0-5.3 / zypper 1.11.17-5.1). There was no such problem before!

Vote for a bug here:
https://bugzilla.opensuse.org/show_bug.cgi?id=914108

Yes, because zypper did not use rpm’s “–noglobs” option before that update, as I wrote in my previous post.
But there has been an update to rpm yesterday which should fix that option, and the problem.

Did you install yesterday’s rpm update?

Vote for a bug here:
914108 – Can not install any new update after update to libzypp 14.32.0-5.3 / zypper 1.11.17-5.1

Why, if it is fixed already?

Also, AFAIK, you cannot vote on bugzilla.opensuse.org:wink:

RPM update fixed problem

But I did this by manuall downloading rpm-4.11.3-8.1.*.rpm , because via online update it can not be done, as this bug exist!

I recommend somehow modify zypper RPM spec, that it could not to update, unless this RPM update is installed first!

openSUSE must provide automatic solution for those, who installed zypper update before RPM update. They are locked now!

Wrong.
On a standard installation, there is no space in the update repo’s name. It is called “repo-update”, so no problem there.

I recommend somehow modify zypper RPM spec, that it could not to update, unless this RPM update is installed first!

And how would this help?
How should people install a zypper update, if they can’t install any update?

And how?

I’d say, people that have a space in the update repo’s name are a very small minority. And those that installed the zypper update before the rpm update are probably even less.
Unfortunately I see no solution for them, other than downloading/installing the rpm update manually, or maybe switching zypper back to the version from the standard repo (which hopefully doesn’t have a space in the name).

On 2015-01-21 16:46, wolfi323 wrote:

>> Vote for a bug here:
>> https://bugzilla.opensuse.org/show_bug.cgi?id=914108
> Why, if it is fixed already?
>
> Also, AFAIK, you cannot vote on bugzilla.opensuse.org:wink:

Yes, you can, after login. At least you could before the current
release, I haven’t done it recently.

I just searched for the word “vote” and found it in the page, even
without login. On the priority line.

Fixed or not, I can’t say, but the bug is in “new” status.


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

Right, you can, sorry.
AFAIR you couldn’t before the bugzilla update a few months ago though, but I’m not completely sure.

Fixed or not, I can’t say, but the bug is in “new” status.

It is “RESOLVED FIXED” since Thursday.

But the bug in rpm was fixed by the update on Tuesday already. The problem was that the rpm update was not tagged as software stack update by mistake, so only the zypper update got installed making it impossible to install the rpm update as well if your update repo contained spaces (which it normally doesn’t).
This has been resolved by removing the zypper update (done on Tuesday already), correctly tagging the rpm update, and re-releasing the zypper update.

People who already installed the zypper but not the rpm update and have spaces in their update repo’s name will have to download and install the rpm update manually though. There’s nothing that can be done about that I suppose, but this shouldn’t affect many people anyway.

Hi,

All i can say is, sanitizing user input is a pain, major major pain :frowning:

Hi

I’m trying to install “dkms” pacckage by :


# zypper in dkms

but gets me following error :


In cache dkms-2.2.0.3-14.1.noarch.rpm                                                                            (1/1),  73.1 KiB (210.9 KiB unpacked)
Checking for file conflicts: ...................................................................................................................[done]
(1/1) Installing: dkms-2.2.0.3-14.1 ...........................................................................................................[error]
Installation of dkms-2.2.0.3-14.1 failed:
Error: Subprocess failed. Error: RPM failed: error: File not found: /var/cache/zypp/packages/Packman Repository/Extra/noarch/dkms-2.2.0.3-14.1.noarch.rpm

On 2015-01-29 18:26, kamrava wrote:
>
> Hi
>
> I’m trying to install “dkms” pacckage by :

If it is the same error as described in this thread (see wolfi323’s
posts), you have to wget the rpm update, then apply it with ‘rpm’.
Zypper will fail.

You can verify if you have this problem by examining the rpm changelog,
as described in another post (ie, does it have the noglob patch?).


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

Not necessarily.
That would only have to be done if the standard update repo has spaces in the name.

But as dkms is not available in the standard update repo, this doesn’t have to be the case here.

So it might still be able to normally install the rpm update via YaST->Online Update, zypper patch/up, or the desktop’s updater. If necessary disable the “Packman Repository” (likely the problem I’d guess, as dkms is available from there) temporarily.