New repository always created

Hello,

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:

http://download.opensuse.org/update/20141107-non-oss/

Is it safe to delete these all the time?

Thanks.

Yes, and you should do that anyway.

Those repos do not exists. It would not be feasible anyways to have an update repo that contains the date of the snapshot in the URL.

Some broken update seems to add those repos…

Thanks.

Probably just growing pains and something that will be ironed out.

I just wanted to make sure :).

Also leave installed but do not select Enabled or Automatically Refresh
then no need to keep deleting

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.

That explains why I am not seeing it with “factory”.

I think I’ll leave the repos saying “factory” for a while longer – at least until this problem is fixed.