I am running Tumbleweed and everything is working fine. However, when I do an update, a new repository is added to my repository list. It fails to update the next time I check for an update. Last time I deleted it. Here is the link:
You’re right, that’s even the better solution, as otherwise it will probably be re-created on the next update.
Btw, I found out what creates it, and that’s not even Tumbleweed-specific:
wolfi@amiga:~> rpm -q --scripts openSUSE-release
postinstall scriptlet (using /bin/sh):
test -n "$FIRST_ARG" || FIRST_ARG=$1
# XXX: hack to make sure the non-oss update repo is also added
# after "zypper dup". we need to find a better way ...
if $FIRST_ARG -gt 1 ] &&
-z "$(grep -Er "baseurl=.*factory\/repo\/" /etc/zypp/repos.d)" ]
then
file="/etc/zypp/repos.d/repo-update-non-oss.repo"
if ! -e "$file" ]; then
cat > "$file".new <<-EOF
# created by openSUSE-release on upgrade
[repo-update-non-oss]
name=openSUSE-13.2-Update-Non-Oss
enabled=1
autorefresh=1
baseurl=http://download.opensuse.org/update/13.2-non-oss/
path=/
type=rpm-md
keeppackages=0
EOF
mv "$file".new $file
fi || true
fi
So whenever the package “openSUSE-release” is installed/updated, it checks whether the repo-update-non-oss exists, and creates it if not.
In my case it uses 13.2 of course, but I guess this is just taken from /etc/os-release or similar when the package is built.
So for Factory/Tumbleweed that would become something like 20141107 which doesn’t exist.
Definitely worth a bug report I’d say, although it has been mentioned on the opensuse-factory mailing list already, too.
To be precise, the above only adds the repo if you are not running Factory (i.e. the URLs of your repos do not contain the string “factory”).
This check doesn’t work for Tumbleweed any more of course, as the URLs have “tumbleweed” now instead of “factory”. It should probably be adapted to that fact.