Bug 213402 - Pup package updater error: Cannot open/read repomd.xml file for repository:
Pup package updater error: Cannot open/read repomd.xml file for repository:
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: pirut (Show other bugs)
6
All Linux
medium Severity medium
: ---
: ---
Assigned To: Jeremy Katz
:
: 237536 (view as bug list)
Depends On:
Blocks: FC7Blocker
  Show dependency treegraph
 
Reported: 2006-11-01 06:05 EST by Wes Armour
Modified: 2007-11-30 17:11 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2007-03-23 11:39:00 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
cli pup output with proxy info in /etc/yum.conf (1.66 KB, application/octet-stream)
2007-04-23 16:24 EDT, fangorious
no flags Details

  None (edit)
Description Wes Armour 2006-11-01 06:05:37 EST
Description of problem:

When I try to launch the package updater I get the error:

Cannot open/read repomd.xml file for repository: ...

I am behind a firewall and have a squid proxy server. I have put a proxy.sh in
my /ect/profile.d/ and also used the graphical network proxy manager to enter my
proxy details.

Yum, yumex and firefox all work.

Version-Release number of selected component (if applicable):

rpm -qa pirut
pirut-1.2.5-1

How reproducible:

Always

Steps to Reproduce:
1. Just launch the package updater or the applet.
  
Actual results:
Reports the above error then dies.

Expected results:
Download updates and play nicely.

Additional info:
None.
Comment 1 Jeremy Katz 2006-11-03 14:03:16 EST
What is in your proxy script?

Can you try launching pirut/pup from a terminal and see if it works better?
Comment 2 Wes Armour 2006-11-06 05:24:17 EST
Hi 

My proxy scripts are:

more /etc/profile.d/proxy.sh 
#!/bin/bash

export http_proxy=http://wwwcache.rl.ac.uk:8080/
export ftp_proxy=http://wwwcache.rl.ac.uk:8080/
export HTTP_PROXY=http://wwwcache.rl.ac.uk:8080/
export FTP_PROXY=http://wwwcache.rl.ac.uk:8080/

and

more /etc/profile.d/proxy.csh 
#!/bin/csh

setenv http_proxy http://wwwcache.rl.ac.uk:8080/
setenv ftp_proxy http://wwwcache.rl.ac.uk:8080/
setenv HTTP_PROXY http://wwwcache.rl.ac.uk:8080/
setenv FTP_PROXY http://wwwcache.rl.ac.uk:8080/
 
There permissions are:

ll /etc/profile.d/
total 160
-rwxr-xr-x 1 root root  764 Sep 28 13:32 colorls.csh
-rwxr-xr-x 1 root root  713 Sep 28 13:32 colorls.sh
-rwxr-xr-x 1 root root   78 Oct 29 09:24 cvs.sh
-rwxr-xr-x 1 root root  192 Aug 30 14:34 glib2.csh
-rwxr-xr-x 1 root root  192 Aug 30 14:34 glib2.sh
-rwxr-xr-x 1 root root   58 Oct  2 18:39 gnome-ssh-askpass.csh
-rwxr-xr-x 1 root root   70 Oct  2 18:39 gnome-ssh-askpass.sh
-rwxr-xr-x 1 root root  465 Oct 26 23:37 kde.csh
-rwxr-xr-x 1 root root  407 Oct 26 23:37 kde.sh
-rwxr-xr-x 1 root root  218 Sep  6 21:41 krb5.csh
-rwxr-xr-x 1 root root  229 Sep  6 21:41 krb5.sh
-rwxr-xr-x 1 root root 2492 Oct 12 04:55 lang.csh
-rwxr-xr-x 1 root root 2698 Oct 12 04:55 lang.sh
-rwxr-xr-x 1 root root  122 Jul 13 09:39 less.csh
-rwxr-xr-x 1 root root  108 Jul 13 09:39 less.sh
-rwxr-xr-x 1 root root  208 Nov  6 09:38 proxy.csh
-rwxr-xr-x 1 root root  209 Nov  6 09:38 proxy.sh
-rwxr-xr-x 1 root root   72 Sep 29 04:02 vim.csh
-rwxr-xr-x 1 root root  246 Sep 29 04:02 vim.sh
-rwxr-xr-x 1 root root  170 Jul 15 04:08 which-2.sh

I find that as a user I get the following error if I launch pup/pirut
graphically or from the cli:

Cannot find a valid baseurl for repo: updates

or on the cli:

pirut 
Loading "installonlyn" plugin
Could not retrieve mirrorlist
http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-fc6&arch=i386
error was
[Errno 4] IOError: <urlopen error (111, 'Connection refused')>

***However if I launch these as root from the cli everything works***

So I have a feeling this has something to do with the consolehelper

I could however be completely wrong (as my girlfriend points out frequently, god
only knows what I'd do if she wasn't there to correct me ;-)

Cheers,

Wes.
Comment 3 Jeremy Katz 2006-11-06 14:21:52 EST
Hrmm, it looks like usermode's sanity checking nukes the vars for proxies. 
Comment 4 Douglas Campbell 2006-12-18 13:05:18 EST
Workaround:  

a) Make backup copy of /etc/yum.conf
b) add one line to /etc/yum.conf:
   either
   proxy=http://<user>:<passwd>@wwwcache.rl.ac.uk:8080
   or
   proxy=http://wwwcache.rl.ac.uk:8080
   (if no proxy server user/password needed)
c) comment out the http_proxy and ftp_proxy and HTTP_PROXY and FTP_PROXY env
vars you created
d) If the user/password is to be hidden from nonprivileged users, chown
root.root /etc/yum.conf and chmod 640 /etc/yum.conf  
   (as a side effect of (d), regular users can't do pup, which I view as positive)

Note that, for websense and some other security-conscious proxies, the passwords
will age; when you change your password for access, you need to update
/etc/yum.conf as well.
Comment 5 Miloslav Trmač 2007-03-19 18:28:17 EDT
With usermode-1.91, you can add the following to
/etc/security/console.apps/{pirut,pup}:
  KEEP_ENV_VARS=http_proxy,ftp_proxy

Please check the way the environment variables are used, and enable them only if
they can't be used for privilege escalation (which, I guess, is not a concern
for pup/pirut).
Comment 6 Jeremy Katz 2007-03-19 21:09:29 EDT
Great -- will add in the next day or so
Comment 7 Jeremy Katz 2007-03-23 11:39:00 EDT
Done in CVS, will be in the next build
Comment 8 Jeremy Katz 2007-04-23 14:13:35 EDT
*** Bug 237536 has been marked as a duplicate of this bug. ***
Comment 9 fangorious 2007-04-23 16:24:00 EDT
Created attachment 153313 [details]
cli pup output with proxy info in /etc/yum.conf

I added my proxy info to /etc/yum.conf and ran pup from the terminal, and was
given the error show in the attached file. Setting http_proxy and editing
/etc/security/console.apps/pirut works. I'd rather have the yum.conf setting
work for pup though. And I'd rather have pup use check the GNOME settings
before that. I go back and forth between networks with a proxy that requries
auth and networks with no proxy, so setting it in GNOME would be the most
convenient.

Note You need to log in before you can comment on or make changes to this bug.