Giter Site home page Giter Site logo

opensuse / mirrorcache Goto Github PK

View Code? Open in Web Editor NEW
35.0 10.0 11.0 1.84 MB

Download Redirector

Home Page: https://opensuse.github.io/MirrorCache/

License: GNU General Public License v2.0

Perl 55.64% Shell 35.87% JavaScript 5.62% SCSS 1.85% Makefile 0.26% M4 0.77%
mirrors mojolicious perl docker circleci systemd postgresql mariadb

mirrorcache's Introduction

Welcome to MirrorCache!

MirrorCache is a Web Server for files download, which will route download requests to an appropriate mirror. MirrorCache doesn't store files and instead keeps in DB list of files from the Main Server.

According to Wikipedia "Cache - is a component that stores data so that future requests for that data can be served faster". In this regard MirrorCache is a cache of (meta)information about geographical location of files.

"Cache hit" means that MirrorCache was able to redirect to proper (the closest) mirror. "Cache miss" means that MirrorCache had to redirect request to the Main Server.

Output below domonstrates a cache miss, so the download request will be redirected to the Main Server (in this case download.opensuse.org):

> curl -I http://mirrorcache.opensuse.org/download/update/openSUSE-current/x86_64/alsa-1.1.5-lp152.8.6_lp152.9.4.1.x86_64.drpm
HTTP/1.1 302 Found
location: http://download.opensuse.org/update/openSUSE-current/x86_64/alsa-1.1.5-lp152.8.6_lp152.9.4.1.x86_64.drpm
date: Wed, 29 Jul 2020 08:37:07 GMT

Then background jobs will collect info about the hottest misses and scan predefined mirrors for presence of these files. Further requests will be redirected to one of the mirrors that has the file:

> curl -I http://mirrorcache.opensuse.org/download/update/openSUSE-current/x86_64/alsa-1.1.5-lp152.8.6_lp152.9.4.1.x86_64.drpm
HTTP/1.1 302 Found
location: http://ftp.gwdg.de/pub/opensuse/update/openSUSE-current/x86_64/alsa-1.1.5-lp152.8.6_lp152.9.4.1.x86_64.drpm
date: Wed, 29 Jul 2020 08:40:00 GMT

The project was implemented as a quick hack with some amount of shortcuts to make things going. The goal is to improve it over time with the main focus to do the job.

Motivation

The motivation behind this project is to rethink architecture of mirrorbrain https://github.com/poeml/mirrorbrain with following features:

  • job queue;
  • web UI;
  • fileless approach means that application doesn't require physical access to managed files;
  • properly handle http/https and ipv4/ipv6 requests by picking a mirror which is able to serve that;
  • geo-cluster feature allows to configure an instance per region, where each instance scan only mirrors from own region.

How to report issues or ask questions:

Write an email to andrii.nikitin on domain suse.com or use the issue tracker at https://github.com/openSUSE/MirrorCache/

mirrorcache's People

Contributors

adammajer avatar andrii-suse avatar bmwiedemann avatar dirkmueller avatar eliroca avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mirrorcache's Issues

Can not download files from https://mirrorcache-us.opensuse.org/repositories/security:/SELinux/SLE_15_SP2/x86_64/

Example from Azure instance - Region: eastus2

sles4sap-15-sp2-selinux-01:~ # wget https://download.opensuse.org/repositories/security:/SELinux/SLE_15_SP2/x86_64/checkpolicy-3.4-63.1.x86_64.rpm
--2022-07-07 07:40:28-- https://download.opensuse.org/repositories/security:/SELinux/SLE_15_SP2/x86_64/checkpolicy-3.4-63.1.x86_64.rpm
Resolving download.opensuse.org (download.opensuse.org)... 195.135.221.134, 2001:67c:2178:8::13
Connecting to download.opensuse.org (download.opensuse.org)|195.135.221.134|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://mirrorcache-us.opensuse.org/repositories/security:/SELinux/SLE_15_SP2/x86_64/checkpolicy-3.4-63.1.x86_64.rpm [following]
--2022-07-07 07:40:29-- https://mirrorcache-us.opensuse.org/repositories/security:/SELinux/SLE_15_SP2/x86_64/checkpolicy-3.4-63.1.x86_64.rpm
Resolving mirrorcache-us.opensuse.org (mirrorcache-us.opensuse.org)... 91.193.113.65, 2a07:de40:401::65
Connecting to mirrorcache-us.opensuse.org (mirrorcache-us.opensuse.org)|91.193.113.65|:443... connected.
HTTP request sent, awaiting response... 500 Internal Server Error
2022-07-07 07:40:29 ERROR 500: Internal Server Error.


Thx for fixing

lp15.4 dependice errors trying to install Mesa-dri-nouveau ....

Hi,
I'm sorry for the long output:

First try via YaST2:

Mesa-dri-nouveau - Mesa DRI plug-in for 3D acceleration via Nouveau

This package contains nouveau_dri.so, which is necessary for Nouveau's 3D acceleration to work. It is packaged separately since it is still experimental.

cat conflicts.txt

YaST2 conflicts list - generated 2023-05-26 19:57:56

the to be installed Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64 requires 'Mesa = 23.0.3', but this requirement cannot be provided
uinstallerbare nødvendige pakker: Mesa-23.0.3-lp154.1463.1.i586[home_regataos]
Mesa-23.0.3-lp154.1463.1.x86_64[home_regataos]
[ ] ignorer noen avhengigheter selv om Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64 ikke vil fungere

[ ] Følgende handlinger vil bli utført:

install Mesa-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-libGL1-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-libGL1-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-gallium-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-gallium-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-dri-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-dri-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
[ ] do not install Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64

YaST2 conflicts list END

terje@localhost:~> cat conflicts.txt

YaST2 conflicts list - generated 2023-05-26 20:01:06

the to be installed Mesa-23.0.3-lp154.1463.1.x86_64 requires 'Mesa-libEGL1 = 23.0.3', but this requirement cannot be provided
uinstallerbare nødvendige pakker: Mesa-libEGL1-23.0.3-lp154.1463.1.i586[home_regataos]
Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64[home_regataos]
[ ] install Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-libEGL1-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/

[ ] Følgende handlinger vil bli utført:

do not install Mesa-23.0.3-lp154.1463.1.x86_64
do not install Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64
[ ] Følgende handlinger vil bli utført:
do not install Mesa-23.0.3-lp154.1463.1.x86_64
do not install Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64
do not install Mesa-libGL1-23.0.3-lp154.1463.1.x86_64
[ ] ignorer noen avhengigheter selv om Mesa-23.0.3-lp154.1463.1.x86_64 ikke vil fungere

Second try via zypper

zypper se Mesa-dri-nouveau

Loading repository data...
Warning: Repository 'openSUSE:Backports:SLE-15-SP4' metadata expired since 2023-04-22 18:22:27 CEST.

Warning: Repository metadata expired: Check if 'autorefresh' is turned on (zypper lr), otherwise
manualy refresh the repository (zypper ref). If this does not solve the issue, it could be that
you are using a broken mirror or the server has actually discontinued to support the repository.

Reading installed packages...

S | Name | Summary | Type
--+------------------------+--------------------------------------------------+--------
| Mesa-dri-nouveau | Mesa DRI plug-in for 3D acceleration via Nouveau | package
| Mesa-dri-nouveau-32bit | Mesa DRI plug-in for 3D acceleration via Nouveau | package
localhost:~ # zypper in Mesa-dri-nouveau
Loading repository data...
Warning: Repository 'openSUSE:Backports:SLE-15-SP4' metadata expired since 2023-04-22 18:22:27 CEST.

Warning: Repository metadata expired: Check if 'autorefresh' is turned on (zypper lr), otherwise
manualy refresh the repository (zypper ref). If this does not solve the issue, it could be that
you are using a broken mirror or the server has actually discontinued to support the repository.

Reading installed packages...
Resolving package dependencies...

Problem: the to be installed Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64 requires 'Mesa = 23.0.3', but this requirement cannot be provided
not installable providers: Mesa-23.0.3-lp154.1463.1.i586[home_regataos]
Mesa-23.0.3-lp154.1463.1.x86_64[home_regataos]
Solution 1: Following actions will be done:
install Mesa-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-dri-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-dri-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-gallium-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-gallium-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-libGL1-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-libGL1-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
Solution 2: do not install Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64
Solution 3: break Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/3/c/d/?] (c): 1
Resolving dependencies...
Resolving package dependencies...

Problem: the to be installed Mesa-23.0.3-lp154.1463.1.x86_64 requires 'Mesa-libEGL1 = 23.0.3', but this requirement cannot be provided
not installable providers: Mesa-libEGL1-23.0.3-lp154.1463.1.i586[home_regataos]
Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64[home_regataos]
Solution 1: Following actions will be done:
do not install Mesa-23.0.3-lp154.1463.1.x86_64
do not install Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64
do not install Mesa-libGL1-23.0.3-lp154.1463.1.x86_64
Solution 2: Following actions will be done:
do not install Mesa-23.0.3-lp154.1463.1.x86_64
do not install Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64
Solution 3: install Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-libEGL1-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
Solution 4: break Mesa-23.0.3-lp154.1463.1.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/3/4/c/d/?] (c): 3
Resolving dependencies...
Resolving package dependencies...

The following 5 packages are going to be upgraded:
Mesa Mesa-dri Mesa-gallium Mesa-libEGL1 Mesa-libGL1

The following 5 packages are going to change vendor:
Mesa SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-dri SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-gallium SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-libEGL1 SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-libGL1 SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos

The following 2 NEW packages are going to be installed:
Mesa-dri-nouveau libLLVM13

5 packages to upgrade, 2 new, 5 to change vendor.
Overall download size: 26.4 MiB. Already cached: 19.8 MiB. After the operation, additional 123.2 MiB will be used.
Continue? [y/n/v/...? shows all options] (y):
Retrieving: Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64 (Regata OS Home Project (15.4)) (1/7), 282.0 KiB
Retrieving: Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64.rpm ..............................................................................................................................[not found]
File './x86_64/Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64.rpm' not found on medium 'https://download.opensuse.org/repositories/home:/regataos/15.4/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a): i
Warning: You have chosen to ignore a problem with download or installation of a package which might lead to broken dependencies of other packages. It is recommended to run 'zypper verify' after the operation has finished.
In cache libLLVM13-13.0.1-bp154.2.18.x86_64.rpm (2/7), 19.8 MiB
Retrieving: Mesa-23.0.3-lp154.1463.1.x86_64 (Regata OS Home Project (15.4)) (3/7), 169.7 KiB
Retrieving: Mesa-23.0.3-lp154.1463.1.x86_64.rpm ......................................................................................................................................[not found]
File './x86_64/Mesa-23.0.3-lp154.1463.1.x86_64.rpm' not found on medium 'https://download.opensuse.org/repositories/home:/regataos/15.4/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a): i
Warning: You have chosen to ignore a problem with download or installation of a package which might lead to broken dependencies of other packages. It is recommended to run 'zypper verify' after the operation has finished.
Retrieving: Mesa-libGL1-23.0.3-lp154.1463.1.x86_64 (Regata OS Home Project (15.4)) (4/7), 323.9 KiB
Retrieving: Mesa-libGL1-23.0.3-lp154.1463.1.x86_64.rpm ...............................................................................................................................[not found]
File './x86_64/Mesa-libGL1-23.0.3-lp154.1463.1.x86_64.rpm' not found on medium 'https://download.opensuse.org/repositories/home:/regataos/15.4/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a): i
Warning: You have chosen to ignore a problem with download or installation of a package which might lead to broken dependencies of other packages. It is recommended to run 'zypper verify' after the operation has finished.
Retrieving: Mesa-dri-23.0.3-lp154.1463.1.x86_64 (Regata OS Home Project (15.4)) (5/7), 7.9 MiB
Retrieving: Mesa-dri-23.0.3-lp154.1463.1.x86_64.rpm ..................................................................................................................................[not found]
File './x86_64/Mesa-dri-23.0.3-lp154.1463.1.x86_64.rpm' not found on medium 'https://download.opensuse.org/repositories/home:/regataos/15.4/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a): i
Warning: You have chosen to ignore a problem with download or installation of a package which might lead to broken dependencies of other packages. It is recommended to run 'zypper verify' after the operation has finished.
Retrieving: Mesa-gallium-23.0.3-lp154.1463.1.x86_64 (Regata OS Home Project (15.4)) (6/7), 9.9 MiB
Retrieving: Mesa-gallium-23.0.3-lp154.1463.1.x86_64.rpm ..............................................................................................................................[not found]
File './x86_64/Mesa-gallium-23.0.3-lp154.1463.1.x86_64.rpm' not found on medium 'https://download.opensuse.org/repositories/home:/regataos/15.4/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a): i
Warning: You have chosen to ignore a problem with download or installation of a package which might lead to broken dependencies of other packages. It is recommended to run 'zypper verify' after the operation has finished.
Retrieving: Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64 (Regata OS Home Project (15.4)) (7/7), 7.9 MiB
Retrieving: Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64.rpm ..........................................................................................................................[not found]
File './x86_64/Mesa-dri-nouveau-23.0.3-lp154.1463.1.x86_64.rpm' not found on medium 'https://download.opensuse.org/repositories/home:/regataos/15.4/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a): i
Warning: You have chosen to ignore a problem with download or installation of a package which might lead to broken dependencies of other packages. It is recommended to run 'zypper verify' after the operation has finished.
Installation has completed with error.

localhost:~ # zypper in Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64.rpm
Specified local path does not exist or is not accessible.
Problem retrieving the specified RPM file:
Malformed URI:
Please check whether the file is accessible.
Problem with the RPM file specified as 'Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64.rpm', skipping.
No valid arguments specified.
localhost:~ #
localhost:~ # zypper lr
Repository priorities in effect: (See 'zypper lr -P' for details)
90 (raised priority) : 1 repository
99 (default priority) : 24 repositories

| Alias | Name | Enabled | GPG Check | Refresh

---+----------------------------------------------+---------------------------------------------------+---------+-----------+--------
1 | 15.4 | 15.4 | Yes | (r ) Yes | Yes
2 | KDE_KDE3 | KDE 3.5.10 and Qt3-related software (15.4) | Yes | (r ) Yes | No
3 | Office_openSUSE_Leap_15.4 | Office_openSUSE_Leap_15.4 | Yes | (r ) Yes | Yes
4 | google-chrome | google-chrome | Yes | (r ) Yes | Yes
5 | graphics | Graphics Project (15.4) | Yes | (r ) Yes | No
6 | home_hennevogel | home:hennevogel (15.4) | Yes | (r ) Yes | No
7 | home_illuusio | Misc packages needed for me (15.4) | Yes | (r ) Yes | Yes
8 | home_regataos | Regata OS Home Project (15.4) | Yes | (r ) Yes | No
9 | home_tkb | home:tkb (15.4) | Yes | (r ) Yes | No
10 | https-download.opensuse.org-68c75d00 | openSUSE:Backports:SLE-15-SP4 | Yes | (r ) Yes | Yes
12 | https-download.opensuse.org-96d8b672 | system:packagemanager | Yes | (r ) Yes | Yes
11 | https-download.opensuse.org-765cf284 | SUSE:SLE-15:Update | Yes | (r ) Yes | Yes
13 | multimedia_libs | Multimedia Libraries, Codecs and Command Line T-> | Yes | (r ) Yes | Yes
14 | multimedia_proaudio | Geekos DAW (15.4) | Yes | (r ) Yes | No
15 | opensuse-guide.org-openSUSE_Leap_$releasever | Libdvdcss Repository | Yes | (r ) Yes | Yes
16 | packman | Packman | Yes | (r ) Yes | Yes
17 | repo-backports-update | Update repository of openSUSE Backports | Yes | (r ) Yes | Yes
18 | repo-non-oss | Non-OSS Repository | Yes | (r ) Yes | Yes
19 | repo-oss | Main Repository | Yes | (r ) Yes | Yes
20 | repo-sle-update | Update repository with updates from SUSE Linux -> | Yes | (r ) Yes | Yes
21 | repo-update | Hovedpakkebrønn for oppdateringer | Yes | (r ) Yes | Yes
22 | repo-update-non-oss | Oppdateringspakkebrønn (ikke åpen kildekode) | Yes | (r ) Yes | Yes
23 | teams | teams | Yes | (r ) Yes | Yes
24 | teamviewer | TeamViewer - x86_64 | Yes | (r ) Yes | Yes
25 | utilities | all the small tools for the shell (15.4) | Yes | (r ) Yes | No
localhost:~ #
localhost:~ # zypper lr -U
Repository priorities in effect: (See 'zypper lr -P' for details)
90 (raised priority) : 1 repository
99 (default priority) : 24 repositories

| Alias | Name | Enabled | GPG Check | Refresh | URI

---+----------------------------------------------+--------------------------------------------------------------+---------+-----------+---------+-------------------------------------------------------------------------------------
18 | repo-non-oss | Non-OSS Repository | Yes | (r ) Yes | Yes | http://download.opensuse.org/distribution/leap/15.4/repo/non-oss/
19 | repo-oss | Main Repository | Yes | (r ) Yes | Yes | http://download.opensuse.org/distribution/leap/15.4/repo/oss/
17 | repo-backports-update | Update repository of openSUSE Backports | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/15.4/backports/
22 | repo-update-non-oss | Oppdateringspakkebrønn (ikke åpen kildekode) | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/15.4/non-oss/
21 | repo-update | Hovedpakkebrønn for oppdateringer | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/15.4/oss
20 | repo-sle-update | Update repository with updates from SUSE Linux Enterprise 15 | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/15.4/sle/
15 | opensuse-guide.org-openSUSE_Leap_$releasever | Libdvdcss Repository | Yes | (r ) Yes | Yes | http://opensuse-guide.org/repo/openSUSE_Leap_15.4/
4 | google-chrome | google-chrome | Yes | (r ) Yes | Yes | https://dl.google.com/linux/chrome/rpm/stable/x86_64
2 | KDE_KDE3 | KDE 3.5.10 and Qt3-related software (15.4) | Yes | (r ) Yes | No | https://download.opensuse.org/repositories/KDE:/KDE3/15.4/
3 | Office_openSUSE_Leap_15.4 | Office_openSUSE_Leap_15.4 | Yes | (r ) Yes | Yes | https://download.opensuse.org/repositories/Office/openSUSE_Leap_15.4/
5 | graphics | Graphics Project (15.4) | Yes | (r ) Yes | No | https://download.opensuse.org/repositories/graphics/15.4/
1 | 15.4 | 15.4 | Yes | (r ) Yes | Yes | https://download.opensuse.org/repositories/home:/dliw/15.4/
6 | home_hennevogel | home:hennevogel (15.4) | Yes | (r ) Yes | No | https://download.opensuse.org/repositories/home:/hennevogel/15.4/
7 | home_illuusio | Misc packages needed for me (15.4) | Yes | (r ) Yes | Yes | https://download.opensuse.org/repositories/home:/illuusio/15.4/
8 | home_regataos | Regata OS Home Project (15.4) | Yes | (r ) Yes | No | https://download.opensuse.org/repositories/home:/regataos/15.4/
9 | home_tkb | home:tkb (15.4) | Yes | (r ) Yes | No | https://download.opensuse.org/repositories/home:/tkb/15.4/
13 | multimedia_libs | Multimedia Libraries, Codecs and Command Line Tools (15.4) | Yes | (r ) Yes | Yes | https://download.opensuse.org/repositories/multimedia:/libs/15.4/
14 | multimedia_proaudio | Geekos DAW (15.4) | Yes | (r ) Yes | No | https://download.opensuse.org/repositories/multimedia:/proaudio/15.4/
10 | https-download.opensuse.org-68c75d00 | openSUSE:Backports:SLE-15-SP4 | Yes | (r ) Yes | Yes | https://download.opensuse.org/repositories/openSUSE:/Backports:/SLE-15-SP4/standard/
12 | https-download.opensuse.org-96d8b672 | system:packagemanager | Yes | (r ) Yes | Yes | https://download.opensuse.org/repositories/system:/packagemanager/15.4/
25 | utilities | all the small tools for the shell (15.4) | Yes | (r ) Yes | No | https://download.opensuse.org/repositories/utilities/15.4/
11 | https-download.opensuse.org-765cf284 | SUSE:SLE-15:Update | Yes | (r ) Yes | Yes | https://download.opensuse.org/update/leap/15.4/sle
16 | packman | Packman | Yes | (r ) Yes | Yes | https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_15.4/
24 | teamviewer | TeamViewer - x86_64 | Yes | (r ) Yes | Yes | https://linux.teamviewer.com/yum/stable/main/binary-x86_64/
23 | teams | teams | Yes | (r ) Yes | Yes | https://packages.microsoft.com/yumrepos/ms-teams
localhost:~ #
localhost:~ # cd /home/terje/Nedlastinger
localhost:/home/terje/Nedlastinger # ls
Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64.rpm b6a670bb_writer2latex.oxt
localhost:/home/terje/Nedlastinger # zypper in Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64.rpm
Loading repository data...
Warning: Repository 'openSUSE:Backports:SLE-15-SP4' metadata expired since 2023-04-22 18:22:27 CEST.

Warning: Repository metadata expired: Check if 'autorefresh' is turned on (zypper lr), otherwise
manualy refresh the repository (zypper ref). If this does not solve the issue, it could be that
you are using a broken mirror or the server has actually discontinued to support the repository.

Reading installed packages...
Resolving package dependencies...

Problem: the to be installed Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64 requires 'Mesa = 23.0.3', but this requirement cannot be provided
not installable providers: Mesa-23.0.3-lp154.1463.1.i586[home_regataos]
Mesa-23.0.3-lp154.1463.1.x86_64[home_regataos]
Solution 1: Following actions will be done:
install Mesa-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-dri-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-dri-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-gallium-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-gallium-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-libGL1-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-libGL1-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
Solution 2: do not install Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64
Solution 3: break Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/3/c/d/?] (c): 1
Resolving dependencies...
Resolving package dependencies...

Problem: the to be installed Mesa-23.0.3-lp154.1463.1.x86_64 requires 'Mesa-libEGL1 = 23.0.3', but this requirement cannot be provided
not installable providers: Mesa-libEGL1-23.0.3-lp154.1463.1.i586[home_regataos]
Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64[home_regataos]
Solution 1: Following actions will be done:
do not install Mesa-23.0.3-lp154.1463.1.x86_64
do not install Mesa-libGL1-23.0.3-lp154.1463.1.x86_64
Solution 2: install Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-libEGL1-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
Solution 3: do not install Mesa-23.0.3-lp154.1463.1.x86_64
Solution 4: break Mesa-23.0.3-lp154.1463.1.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/3/4/c/d/?] (c): 2
Resolving dependencies...
Resolving package dependencies...

The following 5 packages are going to be upgraded:
Mesa Mesa-dri Mesa-gallium Mesa-libEGL1 Mesa-libGL1

The following 5 packages are going to change vendor:
Mesa SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-dri SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-gallium SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-libEGL1 SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-libGL1 SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos

The following 2 NEW packages are going to be installed:
Mesa-dri-nouveau libLLVM13

5 packages to upgrade, 2 new, 5 to change vendor.
Overall download size: 26.4 MiB. Already cached: 19.8 MiB. After the operation, additional 123.2 MiB will be used.
Continue? [y/n/v/...? shows all options] (y):
Retrieving: Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64 (Regata OS Home Project (15.4)) (1/7), 282.0 KiB
Retrieving: Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64.rpm .............................................................................................................................................................[not found]
File './x86_64/Mesa-libEGL1-23.0.3-lp154.1463.1.x86_64.rpm' not found on medium 'https://download.opensuse.org/repositories/home:/regataos/15.4/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a):
Problem occurred during or after installation or removal of packages:
Installation has been aborted as directed.
Please see the above error message for a hint.
localhost:/home/terje/Nedlastinger # ls
Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64.rpm Mesa-libEGL1-23.0.3-lp154.1471.1.x86_64.rpm b6a670bb_writer2latex.oxt
localhost:/home/terje/Nedlastinger # zypper in Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64.rpm Mesa-libEGL1-23.0.3-lp154.1471.1.x86_64.rpm
Loading repository data...
Warning: Repository 'openSUSE:Backports:SLE-15-SP4' metadata expired since 2023-04-22 18:22:27 CEST.

Warning: Repository metadata expired: Check if 'autorefresh' is turned on (zypper lr), otherwise
manualy refresh the repository (zypper ref). If this does not solve the issue, it could be that
you are using a broken mirror or the server has actually discontinued to support the repository.

Reading installed packages...
Resolving package dependencies...
2 Problems:
Problem: the installed Mesa-21.2.4-150400.68.12.1.x86_64 requires 'Mesa-libEGL1 = 21.2.4', but this requirement cannot be provided
Problem: the to be installed Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64 requires 'Mesa = 23.0.3', but this requirement cannot be provided

Problem: the installed Mesa-21.2.4-150400.68.12.1.x86_64 requires 'Mesa-libEGL1 = 21.2.4', but this requirement cannot be provided
not installable providers: Mesa-libEGL1-21.2.4-150400.68.3.1.x86_64[https-download.opensuse.org-765cf284]
Mesa-libEGL1-21.2.4-150400.68.6.1.x86_64[https-download.opensuse.org-765cf284]
Mesa-libEGL1-21.2.4-150400.68.9.1.x86_64[https-download.opensuse.org-765cf284]
Mesa-libEGL1-21.2.4-150400.66.1.x86_64[repo-oss]
Mesa-libEGL1-21.2.4-150400.68.3.1.x86_64[repo-sle-update]
Mesa-libEGL1-21.2.4-150400.68.6.1.x86_64[repo-sle-update]
Mesa-libEGL1-21.2.4-150400.68.9.1.x86_64[repo-sle-update]
Solution 1: Following actions will be done:
install Mesa-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-dri-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-dri-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-gallium-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-gallium-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
Solution 2: do not install Mesa-libEGL1-23.0.3-lp154.1471.1.x86_64
Solution 3: break Mesa-21.2.4-150400.68.12.1.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/3/s/r/c/d/?] (c): 1

Problem: the to be installed Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64 requires 'Mesa = 23.0.3', but this requirement cannot be provided
not installable providers: Mesa-23.0.3-lp154.1463.1.i586[home_regataos]
Mesa-23.0.3-lp154.1463.1.x86_64[home_regataos]
Solution 1: Following actions will be done:
install Mesa-libGL1-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-libGL1-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-dri-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-dri-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
install Mesa-gallium-23.0.3-lp154.1463.1.x86_64 from vendor obs://build.opensuse.org/home:regataos
replacing Mesa-gallium-21.2.4-150400.68.12.1.x86_64 from vendor SUSE LLC https://www.suse.com/
Solution 2: do not install Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64
Solution 3: break Mesa-dri-nouveau-23.0.3-lp154.1471.1.x86_64 by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/3/s/r/c/d/?] (c): 1
Resolving dependencies...
Resolving package dependencies...

The following 5 packages are going to be upgraded:
Mesa Mesa-dri Mesa-gallium Mesa-libEGL1 Mesa-libGL1

The following 5 packages are going to change vendor:
Mesa SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-dri SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-gallium SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-libEGL1 SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos
Mesa-libGL1 SUSE LLC https://www.suse.com/ -> obs://build.opensuse.org/home:regataos

The following 2 NEW packages are going to be installed:
Mesa-dri-nouveau libLLVM13

5 packages to upgrade, 2 new, 5 to change vendor.
Overall download size: 26.4 MiB. Already cached: 19.8 MiB. After the operation, additional 123.2 MiB will be used.
Continue? [y/n/v/...? shows all options] (y):
In cache libLLVM13-13.0.1-bp154.2.18.x86_64.rpm (1/7), 19.8 MiB
Retrieving: Mesa-libEGL1-23.0.3-lp154.1471.1.x86_64 (Plain RPM files cache) (2/7), 282.0 KiB
Retrieving: Mesa-23.0.3-lp154.1463.1.x86_64 (Regata OS Home Project (15.4)) (3/7), 169.7 KiB
Retrieving: Mesa-23.0.3-lp154.1463.1.x86_64.rpm .....................................................................................................................................................................[not found]
File './x86_64/Mesa-23.0.3-lp154.1463.1.x86_64.rpm' not found on medium 'https://download.opensuse.org/repositories/home:/regataos/15.4/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a):

Request file list

Hello, I am building a tool about RootFS, I need something that I can query all latest file(.iso .tar.xz) on it.

eg.

  • for Ubuntu it's a single SHA256SUM file about all release file at the same URL path.
  • for Alpine it's a yaml file with latest release.

I am making a way to get rootfs easily, make it possible to run job as workflow.
I've alreay done for other linux distro, looking for openSUSE...

mirrors.o.o lacks 15.4

Hi,

unsure if this is the right place to report - I searched for some parts of the website (like "Leap" or "15.3") here in the repository, but it did not return anything, hence I am unsure where the frontend code is coming or being generated from.

I noticed the bar at the top as well as the filter options on https://mirrors.opensuse.org are still missing Leap 15.4. Is it possible to just add this to the frontend somewhere or is there some background scanning which needs to be adjusted as well?

Best,
Georg

Consider displaying files inline in the browser

Current state: clicking the link opens system dialog to download the file:

Desired state: clicking the link displays file in the browser:

It might be as easy as setting content-disposition header to inline:

Cannot update system (Leap 15.3) using YaST or zypper

Copied from bug https://bugzilla.opensuse.org/show_bug.cgi?id=1195268 and
https://forums.opensuse.org/showthread.php/565806-Cannot-update-system-(Leap)-using-YaST-or-zypper-(troubles-with-curl-or-mirrorcache-opensuse-org-)

Starting with about 24.01.2022, I experience troubles with updating OS. Previously there were troubles with getting files with repository description, such as https://download.opensuse.org/repositories/multimedia:/libs/openSUSE_Leap_15.3/repodata/40b1774cac13e48d14fd395495274ca8198f54ff3c0bdca981cf184fd8c87e1a-primary.xml.gz.

Today I cannot get updates at all:

"Error with loading" (curl) "https://download.opensuse.org/repositories/utilities/openSUSE_Leap_15.3/noarch/urlscan-0.9.7-lp153.23.2.noarch.rpm":
"Error code": Connection failed
"Error message": Could not resolve host: mirrorcache-eu.opensuse.org

I am using https instead of http, that means using "mirrorcache.opensuse.org".
Trying to change https to http for Packman with YaST: unable to update repos, https changed to http.
I can download files with Firefox, but during update system cannot see them with https links.

Reports during getting update description files:

https://download.opensuse.org/update/leap/15.3/sle/

"Error with loading" (curl) "https://download.opensuse.org/update/leap/15.3/sle/repodata/repomd.xml":
"Error code": Connection failed
"Error message": Could not resolve host: mirrorcache.opensuse.org

https://repo.vivaldi.com/archive/rpm/x86_64/

"Error with loading" (curl) "https://repo.vivaldi.com/archive/rpm/x86_64/repodata/repomd.xml":
"Error code": Connection failed
"Error message": Could not resolve host: repo.vivaldi.com

https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_15.3/

Ошибка загрузки (curl) "https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_15.3/repodata/repomd.xml":
Код ошибки: Connection failed
Сообщение об ошибке: Could not resolve host: ftp.gwdg.de

After changing https to http for some repos update for them works OK.
Using this command: "sudo zypper up -r Packman" for Packman repo.

ILL problem is with MirrorCache, not MirrorBrain: https://news.opensuse.org/2021/12/23/download-redirector-state/
To start using MirrorCache change openSUSE repositories from http to https.

When source country is Chile, mirror-br or something from Brazil is used, it is just wrong

Hi:

Since pretty much forever I can remember (circa 15 years on this) either mirrorbrain or the mirror cache redirects users from Chile to Brazil, thinking it is for the best. It is not, it has never been.

Im not sure how or if the mirror system can do this, but it should instead redirect us to mirror with peering or connected to Equinix MI1 - Miami, NOTA. as this is the only international transit path that providers must (by law) provide high quality of service and it is monitored by the telcomunications authority.
Other possible fast paths are all the big CDNs.

For a little while cloudfare had a cache that saved me from the slowness of everything but it was undocumented and short lived. Mirrors are usually slow but the biggest pain is using osc which takes ages to build something, so much that so far, I build packages on vm or servers hosted in germany where the problem is not present.

Failed to download python3-six-1.16.0-lp154.3.1.noarch.rpm

This CI job fails with following error:

Retrieving: python3-six-1.16.0-lp154.3.1.noarch.rpm [error]
Download (curl) error for 'https://download.opensuse.org/repositories/devel:/languages:/python:/backports/15.4/noarch/python3-six-1.16.0-lp154.3.1.noarch.rpm':
Error code: Curl error 16
Error message: 

Abort, retry, ignore? [a/r/i/...? shows all options] (a): a
Problem occurred during or after installation or removal of packages:
Installation has been aborted as directed.
Please see the above error message for a hint.

Exited with code exit status 8

CircleCI received exit code 8

And actually, if I try to download that rpm from the browser I get resource not available.

Download Time out

When updating Tumbleweed wine-7.xx and wine-32bit-7.xx time out and zypper terminates the update after 3 retries. This has been an issue for several versions over a week or so.

If I put these urls into Firefox I get the same result, the download stops at between 20% and 70%. If I replace au with eu in the url I can download the files and manually update wine. I can then rerun zypper and zypper completes the update correctly.

The 2 errors are:
Timeout exceeded when accessing 'https://mirrorcache-au.opensuse.org/repositories/Emulators:/Wine/openSUSE_Tumbleweed/x86_64/wine-32bit-7.22-1515.1.x86_64.rpm'
Timeout exceeded when accessing 'https://mirrorcache-au.opensuse.org/repositories/Emulators:/Wine/openSUSE_Tumbleweed/x86_64/wine-7.22-1515.1.x86_64.rpm'

MirrorCache is missing in the official openSUSE distribution

Please consider to submit packages in https://build.opensuse.org/project/show/openSUSE:infrastructure:MirrorCache to the openSUSE:Factory project, so they see a package review and get part of the official distribution.

Using openSUSE:infrastructure:MIrrorCache as development repository shouid be fine (and I even would expect that the production instances use this repository). But a general agreement in the openSUSE heroes team is to provide at least a working copy of all packages used in the openSUSE infrastructure also in the distribution.

Note: providing the packages in the distribution also has some overheat, as this includes maintenance (submissions) from time to time.

mirrorcache does not start, if MIRRORCACHE_ROOT is not defined

Today I restarted mirrorcache-us.opensuse.org - with the result that the mirrorcache daemon did not start with:
mirrorcache-daemon[1455]: MIRRORCACHE_ROOT is not set at /usr/share/mirrorcache/script/../lib/MirrorCache/WebAPI.pm line 37.

After some debugging, I found out that the script requires MIRRORCACHE_ROOT to be set as environment variable like:
systemctl set-environment MIRRORCACHE_ROOT=http://download.opensuse.org

But this does not survive a reboot.

Please consider to (for example) source a configuration file in the mirrorcache.service file which allows an admin to define/set these configuration variables.

With "these", I include the other variables I found, like:

  • MIRRORCACHE_HEADQUARTER
  • MIRRORCACHE_CITY_MMDB
  • MIRRORCACHE_TOP_FOLDERS
  • MIRRORCACHE_REGION
  • MIRRORCACHE_FALLBACK_HTTPS_REDIRECT

Documentation / Setup guide

Hi there,

It would be great to have a setup guide that documents how to setup mirrorcache on a SUSE server for common use cases. IE I want to be a mirrorcache publicly, or I want to run one at home for my home servers to proxy through. That would really help.

Thanks!

Broken package cpp13

Trying to install package cpp13, broken rpm ./x86_64/cpp13-13.0.1+git5679-19.1.x86_64.rpm, looking on the mirror I think it should be ./x86_64/cpp13-13.0.1+git6549-21.1.x86_64.rpm

[mw@blah:~] % sudo zypper install cpp13
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following NEW package is going to be installed:
  cpp13

1 new package to install.
Overall download size: 10.3 MiB. Already cached: 0 B. After the operation, additional 30.5 MiB will be used.
Continue? [y/n/v/...? shows all options] (y): y
Retrieving: cpp13-13.0.1+git5679-19.1.x86_64 (GNU Compiler Collection container (openSUSE_Factory))                                                                                           (1/1),  10.3 MiB
Retrieving: cpp13-13.0.1+git5679-19.1.x86_64.rpm ......................................................................................................................................................[not found]
File './x86_64/cpp13-13.0.1+git5679-19.1.x86_64.rpm' not found on medium 'https://download.opensuse.org/repositories/devel:/gcc/openSUSE_Factory/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a):

Happy to provide any more info if this isn't reproducible, also happy to be told I'm a plonker and have done something wrong.

Signature verification failed for non-oss, main

As of this moment, attempting to 'zypper refresh' by AWS EC2 instance running OpenSuSE 15.4 is throwing errors:

zypper -n refresh

Repository 'Update repository of openSUSE Backports' is up to date.
Repository 'Debug Repository' is up to date.
Repository 'Update Repository (Debug)' is up to date.
Signature verification failed for file 'repomd.xml' from repository 'Non-OSS Repository'.

Note: Signing data enables the recipient to verify that no modifications
occurred after the data were signed. Accepting data with no, wrong or
unknown signature can lead to a corrupted system and in extreme cases even
to a system compromise.

Note: File 'repomd.xml' is the repositories master index file. It ensures
the integrity of the whole repo.

Warning: This file was modified after it has been signed. This may have been
a malicious change, so it might not be trustworthy anymore! You should not
continue unless you know it's safe.

Signature verification failed for file 'repomd.xml' from repository 'Non-OSS Repository'. Continue? [yes/no] (no): no
Retrieving repository 'Non-OSS Repository' metadata .....................[error]
Repository 'Non-OSS Repository' is invalid.
[repo-non-oss|https://download.opensuse.org/distribution/leap/15.4/repo/non-oss/] Valid metadata not found at specified URL
History:

  • Signature verification failed for repomd.xml
  • Can't provide /repodata/repomd.xml

Please check if the URIs defined for this repository are pointing to a valid repository.
Skipping repository 'Non-OSS Repository' because of the above error.
Signature verification failed for file 'repomd.xml' from repository 'Main Repository'.

Note: Signing data enables the recipient to verify that no modifications
occurred after the data were signed. Accepting data with no, wrong or
unknown signature can lead to a corrupted system and in extreme cases even
to a system compromise.

Note: File 'repomd.xml' is the repositories master index file. It ensures
the integrity of the whole repo.

Warning: This file was modified after it has been signed. This may have been
a malicious change, so it might not be trustworthy anymore! You should not
continue unless you know it's safe.

Signature verification failed for file 'repomd.xml' from repository 'Main Repository'. Continue? [yes/no] (no): no
Retrieving repository 'Main Repository' metadata ........................[error]
Repository 'Main Repository' is invalid.
[repo-oss|https://download.opensuse.org/distribution/leap/15.4/repo/oss/] Valid metadata not found at specified URL
History:

  • Signature verification failed for repomd.xml
  • Can't provide /repodata/repomd.xml

Please check if the URIs defined for this repository are pointing to a valid repository.
Skipping repository 'Main Repository' because of the above error.
Repository 'Update repository with updates from SUSE Linux Enterprise 15' is up
to date.

Repository 'Source Repository' is up to date.
Repository 'Main Update Repository' is up to date.
Repository 'Update Repository (Non-Oss)' is up to date.
Some of the repositories have not been refreshed because of an error.

mirrorcache-us.opensuse.org is down

curl https://mirrorcache-us.opensuse.org/tumbleweed/repo/oss/repo/repoindex.xml
<html><body><h1>504 Gateway Time-out</h1>
The server didn't respond in time.
</body></html>

JP mirror 'mirror-jp.firstyear.id.au' doesn't support TLS1.2

When attemping to refresh the server_monitoring repository on a SLES 12 SP5 located in Japan, download.opensuse.org redirects to a regional mirror located at mirror-jp.firstyear.id.au. Zypper then tries to retrieve a file and it fails with:

# zypper refresh server_monitoring
Retrieving repository 'server_monitoring' metadata ------------------------------------------------------------------------------------------------------------------------------------------[\]
Download (curl) error for 'https://download.opensuse.org/repositories/server:/monitoring/SLE_12_SP5/repodata/2e20cd4220e1657d290ba6fc9acb26a212623f952aa37f96399d4fb8799db626-primary.xml.gz':
Error code: Curl error 35
Error message: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

Trying with cURL it seems that the mirror doesn't support TLS1.2 but only TLS1.3, and installed cURL (7.60.0) doesn't support TLS1.3

# curl -v --location --output /dev/null 'https://download.opensuse.org/repositories/server:/monitoring/SLE_12_SP5/repodata/2e20cd4220e1657d290ba6fc9acb26a212623f952aa37f96399d4fb8799db626-primary.xml.gz'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 195.135.221.134...
* TCP_NODELAY set
*   Trying 2001:67c:2178:8::13...
* TCP_NODELAY set
* Immediate connect fail for 2001:67c:2178:8::13: Cannot assign requested address
* Connected to download.opensuse.org (195.135.221.134) port 443 (#0)
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
} [5 bytes data]
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.2 (IN), TLS handshake, Server hello (2):
{ [102 bytes data]
* TLSv1.2 (IN), TLS handshake, Certificate (11):
{ [4288 bytes data]
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
{ [589 bytes data]
* TLSv1.2 (IN), TLS handshake, Server finished (14):
{ [4 bytes data]
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
} [70 bytes data]
* TLSv1.2 (OUT), TLS change cipher, Client hello (1):
} [1 bytes data]
* TLSv1.2 (OUT), TLS handshake, Finished (20):
} [16 bytes data]
* TLSv1.2 (IN), TLS change cipher, Client hello (1):
{ [1 bytes data]
* TLSv1.2 (IN), TLS handshake, Finished (20):
{ [16 bytes data]
* SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=opensuse.org
*  start date: Mar 11 00:08:45 2023 GMT
*  expire date: Jun  9 00:08:44 2023 GMT
*  subjectAltName: host "download.opensuse.org" matched cert's "*.opensuse.org"
*  issuer: C=US; O=Let's Encrypt; CN=R3
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
} [5 bytes data]
* Using Stream ID: 1 (easy handle 0x5652e0b625c0)
} [5 bytes data]
> GET /repositories/server:/monitoring/SLE_12_SP5/repodata/2e20cd4220e1657d290ba6fc9acb26a212623f952aa37f96399d4fb8799db626-primary.xml.gz HTTP/2
> Host: download.opensuse.org
> User-Agent: curl/7.60.0
> Accept: */*
>
{ [5 bytes data]
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
} [5 bytes data]
< HTTP/2 302
< content-length: 0
< server: Apache
< location: https://mirrorcache-jp.opensuse.org/repositories/server:/monitoring/SLE_12_SP5/repodata/2e20cd4220e1657d290ba6fc9acb26a212623f952aa37f96399d4fb8799db626-primary.xml.gz
< date: Wed, 03 May 2023 07:50:09 GMT
< content-type: application/x-gzip
<
{ [0 bytes data]
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
* Connection #0 to host download.opensuse.org left intact
* Issue another request to this URL: 'https://mirrorcache-jp.opensuse.org/repositories/server:/monitoring/SLE_12_SP5/repodata/2e20cd4220e1657d290ba6fc9acb26a212623f952aa37f96399d4fb8799db626-primary.xml.gz'
*   Trying 139.162.108.149...
* TCP_NODELAY set
* Connected to mirrorcache-jp.opensuse.org (139.162.108.149) port 443 (#1)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
} [5 bytes data]
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.2 (IN), TLS handshake, Server hello (2):
{ [93 bytes data]
* TLSv1.2 (IN), TLS handshake, Certificate (11):
{ [3842 bytes data]
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
{ [148 bytes data]
* TLSv1.2 (IN), TLS handshake, Server finished (14):
{ [4 bytes data]
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
} [70 bytes data]
* TLSv1.2 (OUT), TLS change cipher, Client hello (1):
} [1 bytes data]
* TLSv1.2 (OUT), TLS handshake, Finished (20):
} [16 bytes data]
* TLSv1.2 (IN), TLS change cipher, Client hello (1):
{ [1 bytes data]
* TLSv1.2 (IN), TLS handshake, Finished (20):
{ [16 bytes data]
* SSL connection using TLSv1.2 / ECDHE-ECDSA-AES128-GCM-SHA256
* ALPN, server did not agree to a protocol
* Server certificate:
*  subject: CN=mirrorcache-jp.opensuse.org
*  start date: Apr 18 14:26:40 2023 GMT
*  expire date: Jul 17 14:26:39 2023 GMT
*  subjectAltName: host "mirrorcache-jp.opensuse.org" matched cert's "mirrorcache-jp.opensuse.org"
*  issuer: C=US; O=Let's Encrypt; CN=R3
*  SSL certificate verify ok.
} [5 bytes data]
> GET /repositories/server:/monitoring/SLE_12_SP5/repodata/2e20cd4220e1657d290ba6fc9acb26a212623f952aa37f96399d4fb8799db626-primary.xml.gz HTTP/1.1
> Host: mirrorcache-jp.opensuse.org
> User-Agent: curl/7.60.0
> Accept: */*
>
{ [5 bytes data]
< HTTP/1.1 302 Found
< content-length: 0
< date: Wed, 03 May 2023 07:50:09 GMT
< location: https://mirror-jp.firstyear.id.au/repositories/server:/monitoring/SLE_12_SP5/repodata/2e20cd4220e1657d290ba6fc9acb26a212623f952aa37f96399d4fb8799db626-primary.xml.gz
< server: Mojolicious (Perl)
< vary: Accept, COUNTRY
< strict-transport-security: max-age=16000000; includeSubDomains; preload;
< connection: close
<
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
* Closing connection 1
} [5 bytes data]
* TLSv1.2 (OUT), TLS alert, Client hello (1):
} [2 bytes data]
* Issue another request to this URL: 'https://mirror-jp.firstyear.id.au/repositories/server:/monitoring/SLE_12_SP5/repodata/2e20cd4220e1657d290ba6fc9acb26a212623f952aa37f96399d4fb8799db626-primary.xml.gz'
*   Trying 139.162.108.7...
* TCP_NODELAY set
* Connected to mirror-jp.firstyear.id.au (139.162.108.7) port 443 (#2)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
} [5 bytes data]
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.2 (IN), TLS alert, Server hello (2):
{ [2 bytes data]
* error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version
* stopped the pause stream!
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
* Closing connection 2
curl: (35) error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

cURL version info:

# curl --version
curl 7.60.0 (x86_64-suse-linux-gnu) libcurl/7.60.0 OpenSSL/1.0.2p zlib/1.2.11 libssh/0.8.7/openssl/zlib nghttp2/1.39.2
Release-Date: 2018-05-16
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy

Trying to connect via openssl s_client using TLS 1.2 fails:

# openssl s_client -connect mirror-jp.firstyear.id.au:443 -tls1_2
CONNECTED(00000003)
139854185559808:error:1409442E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version:ssl/record/rec_layer_s3.c:1544:SSL alert number 70
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 228 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID:
    Session-ID-ctx:
    Master-Key:
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1683101880
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
    Extended master secret: no
---

Cannot update our package - "File has unexpected size"

Hello,

We have updated a package on our repository ( https://download.opensuse.org/repositories/home:/VIFIBnexedi/Debian_10/ ) and now when I run apt commands to update the package on a Debian 10 machines it fails with the following message:

jhg@red:~$ sudo apt install re6st-node
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Suggested packages:
  ndisc6
The following packages will be upgraded:
  re6st-node
1 upgraded, 0 newly installed, 0 to remove and 125 not upgraded.
Need to get 22,1 MB of archives.
After this operation, 2 345 kB of additional disk space will be used.
Get:1 http://download.opensuse.org/repositories/home:/VIFIBnexedi//Debian_10 ./ re6st-node 0.619+slapos1.gef0769489-1 [22,1 MB]
Err:1 http://download.opensuse.org/repositories/home:/VIFIBnexedi//Debian_10 ./ re6st-node 0.619+slapos1.gef0769489-1
  File has unexpected size (30174116 != 22149012). Mirror sync in progress? [IP: 2001:638:60f:110::1:2 80]
  Hashes of expected file:
   - SHA256:b3599aa81a2e803ce1f0de583896133ce470187a715c09e9fe5b26d02dd1a47e
   - SHA1:0bfcd15c20ba6c6540e8bc5fbe958bff8636c4bb [weak]
   - MD5Sum:87a0733cdc6d5cc859987cf6360b91dc [weak]
   - Filesize:22149012 [weak]
E: Failed to fetch http://ftp.gwdg.de/pub/opensuse/repositories/home%3A/VIFIBnexedi/Debian_10/amd64/re6st-node_0.619%2Bslapos1.gef0769489-1_amd64.deb  File has unexpected size (30174116 != 22149012). Mirror sync in progress? [IP: 2001:638:60f:110::1:2 80]
   Hashes of expected file:
    - SHA256:b3599aa81a2e803ce1f0de583896133ce470187a715c09e9fe5b26d02dd1a47e
    - SHA1:0bfcd15c20ba6c6540e8bc5fbe958bff8636c4bb [weak]
    - MD5Sum:87a0733cdc6d5cc859987cf6360b91dc [weak]
    - Filesize:22149012 [weak]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

The only way to fix it is to use a mirror and replace it in /etc/apt/sources.list
I believe this happened because we updated the package but kept the same name (we usually don't do this).

What could we do so that our users can update the re6st-node package without changing the mirror ?

Thank you,
Joanne

Looking for an efficient way to monitor for download folder changes

Motivation

I reported https://progress.opensuse.org/issues/123797 about a problem that a pipeline that was monitoring the URL http://download.opensuse.org/repositories/GNOME:/Medias/images/iso/?P=GNOME_Next* is now always reporting changes even though no new files where showing up in that folder.

the content always changes as the generated HTML page shows a "csrf-token" changing on each call. I found that by calling

diff <(curl -sS "http://download.opensuse.org/repositories/GNOME:/Medias/images/iso/?P=GNOME_Next*") <(curl -sS "http://download.opensuse.org/repositories/GNOME:/Medias/images/iso/?P=GNOME_Next*")

which yields:

<       <meta name="csrf-token" content="3a72819665c9adb750ad4d5e8054961c5b1c3efc" />
---
>       <meta name="csrf-token" content="0b17cbf73c393a1baa4daee989158038caeafc7c" />

As there is also no "last-modified" served in HEAD of those documents and also not when looking into files themselves like

curl --head "http://download.opensuse.org/repositories/GNOME:/Medias/images/iso/GNOME_Next.x86_64.iso.sha256"

I wonder what is the best approach to look for changes in a folder and trigger external services accordingly. Right now the best approach I found is to download the checksum file http://download.opensuse.org/repositories/GNOME:/Medias/images/iso/GNOME_Next.x86_64.iso.sha256 recurringly and check for changes in content

Suggestions

  • Maybe the always changing "csrf-token" can be removed from those generated pages. I don't think this needs to be delivered to users
  • Would it be possible to add a "last-modified" to the page header?

show SHA-512 hash to match zypper/libzypp output

(at least) on Tumbleweed, zypper/libzypp reports SHA-512 upon digest verification errors, as seen in boo#1207755. This may depend on whether the repository metadata used that type. MirrorCache shows MD5, SHA-1, SHA-2 (SHA-256). This is not suitable for debugging user reports. Should we show the SHA-512 hash if available?

AU mirror 'mirror.firstyear.id.au' TLS handshake issues

When attempting to apt-install various packages hosted by download.opensuse.org/repository, onto an up-to-date Ubuntu 20.04 VM, it fails with the following error (edit: replaced incorrect error message from original report):

Building dependency tree...
Reading state information...
The following NEW packages will be installed:
  siemens-certificates
0 upgraded, 1 newly installed, 0 to remove and 120 not upgraded.
Need to get 91.2 kB of archives.
After this operation, 260 kB of additional disk space will be used.
Err:1 https://download.opensuse.org/repositories/isv:/Siemens:/packages/xUbuntu_20.04 ./ siemens-certificates 2022.10.06
  Could not handshake: Error in the pull function. [IP: 45.79.236.155 443]
E: Failed to fetch https://mirror.firstyear.id.au/repositories/isv:/Siemens:/packages/xUbuntu_20.04/all/siemens-certificates_2022.10.06_all.deb  Could not handshake: Error in the pull function. [IP: 45.79.236.155 443]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Diagnosis attempt using curl - note the TLSv1.3 (OUT) attempted after the redirects - this is when the curl fails.

$ curl -v --location --output /dev/null "https://download.opensuse.org/repositories/home:/npreining:/debian-ubuntu-onedrive/xUbuntu_20.04/amd64/onedrive_2.4.21-1+np2_amd64.deb"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 195.135.221.134:443...
* TCP_NODELAY set
* Connected to download.opensuse.org (195.135.221.134) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [19 bytes data]
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [4295 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=opensuse.org
*  start date: Nov 10 00:57:00 2022 GMT
*  expire date: Feb  8 00:56:59 2023 GMT
*  subjectAltName: host "download.opensuse.org" matched cert's "*.opensuse.org"
*  issuer: C=US; O=Let's Encrypt; CN=R3
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
} [5 bytes data]
* Using Stream ID: 1 (easy handle 0x56280ee162f0)
} [5 bytes data]
> GET /repositories/home:/npreining:/debian-ubuntu-onedrive/xUbuntu_20.04/amd64/onedrive_2.4.21-1+np2_amd64.deb HTTP/2
> Host: download.opensuse.org
> user-agent: curl/7.68.0
> accept: */*
> 
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [281 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [281 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
} [5 bytes data]
< HTTP/2 302 
< content-length: 0
< server: Apache
< date: Mon, 05 Dec 2022 04:28:17 GMT
< location: https://mirrorcache-au.opensuse.org/repositories/home:/npreining:/debian-ubuntu-onedrive/xUbuntu_20.04/amd64/onedrive_2.4.21-1+np2_amd64.deb
< content-type: application/x-debian-package
< 
{ [0 bytes data]
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
* Connection #0 to host download.opensuse.org left intact
* Issue another request to this URL: 'https://mirrorcache-au.opensuse.org/repositories/home:/npreining:/debian-ubuntu-onedrive/xUbuntu_20.04/amd64/onedrive_2.4.21-1+np2_amd64.deb'
*   Trying 172.105.167.90:443...
* TCP_NODELAY set
* Connected to mirrorcache-au.opensuse.org (172.105.167.90) port 443 (#1)
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [10 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [3849 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [78 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server did not agree to a protocol
* Server certificate:
*  subject: CN=mirrorcache-au.opensuse.org
*  start date: Dec  2 17:29:01 2022 GMT
*  expire date: Mar  2 17:29:00 2023 GMT
*  subjectAltName: host "mirrorcache-au.opensuse.org" matched cert's "mirrorcache-au.opensuse.org"
*  issuer: C=US; O=Let's Encrypt; CN=R3
*  SSL certificate verify ok.
} [5 bytes data]
> GET /repositories/home:/npreining:/debian-ubuntu-onedrive/xUbuntu_20.04/amd64/onedrive_2.4.21-1+np2_amd64.deb HTTP/1.1
> Host: mirrorcache-au.opensuse.org
> User-Agent: curl/7.68.0
> Accept: */*
> 
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
* Mark bundle as not supporting multiuse
< HTTP/1.1 302 Found
< content-length: 0
< date: Mon, 05 Dec 2022 04:28:18 GMT
< location: https://mirror.firstyear.id.au/repositories/home:/npreining:/debian-ubuntu-onedrive/xUbuntu_20.04/amd64/onedrive_2.4.21-1+np2_amd64.deb
< server: Mojolicious (Perl)
< strict-transport-security: max-age=16000000; includeSubDomains; preload;
< connection: close
< 
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
* Closing connection 1
} [5 bytes data]
* TLSv1.3 (OUT), TLS alert, close notify (256):
} [2 bytes data]
* Issue another request to this URL: 'https://mirror.firstyear.id.au/repositories/home:/npreining:/debian-ubuntu-onedrive/xUbuntu_20.04/amd64/onedrive_2.4.21-1+np2_amd64.deb'
*   Trying 45.79.236.155:443...
* TCP_NODELAY set
* Connected to mirror.firstyear.id.au (45.79.236.155) port 443 (#2)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* OpenSSL SSL_connect: Connection reset by peer in connection to mirror.firstyear.id.au:443 
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
* Closing connection 2
curl: (35) OpenSSL SSL_connect: Connection reset by peer in connection to mirror.firstyear.id.au:443 

When I use Chrome browser with download.opensuse.org, browse to the backports folder mentioned above, click on one of the .deb files and look in DevTools 'Security' tab, it shows mirror.firstyear.id.au as 'TLS 1.2'.

Pvbrowser keys expired

/etc/apt/trusted.gpg.d/home_pvbrowser.gpg

pub dsa1024 2008-01-22 [SC] [caducó: 2023-04-21]
9576 8D56 60C6 20BC 9B1B 23CB 298D 698D 0AD5 FE1F
uid [ caducada ] home:pvbrowser OBS Project home:[email protected]

Invalid signature file

The signature file for
/repositories/home:/el:/archphp/Arch/x86_64/home_el_archphp_Arch.db

is invalid as of yesterday (07/18/2023).

Prevent redirection from https to http.

Today I ran into the following issue while refreshing repositories on Tumbleweed.

Repository 'openSUSE-Tumbleweed-Debug' is invalid.
[repo-debug|https://mirrorcache.opensuse.org/debug/tumbleweed/repo/oss/] Valid metadata not found at specified URL
History:
 - Download (curl) error for 'https://mirrorcache.opensuse.org/debug/tumbleweed/repo/oss/repodata/1c92b1536363bed4d5cc8f1d8d54becf1105301e326033601cf10168a300da41-primary.xml.gz':
   Error code:  Unsupported protocol or redirect (Location: http://ftp-srv2.kddilabs.jp/Linux/packages/opensuse/debug/tumbleweed/repo/oss/repodata/1c92b1536363bed4d5cc8f1d8d54becf1105301e326033601cf10168a300da41-primary.xml.gz)
   Error message: Redirect to protocol "http" not supported or disabled in libcurl
 - Can't provide ./repodata/1c92b1536363bed4d5cc8f1d8d54becf1105301e326033601cf10168a300da41-primary.xml.gz

Please check if the URIs defined for this repository are pointing to a valid repository.
Skipping repository 'openSUSE-Tumbleweed-Debug' because of the above error.

Apparently, MirrorCache allows redirecting to http from https, while zypper does not support this.
Since I’m asking for https, I would expect to stay on a secure protocol, so I consider this a bug.

I don’t know whether this is an issue with the configuration of mirrorcache.opensuse.org or just with MirrorCache itself, but I think MirrorCache should not allow this behaviour/configuration in the first place.

TR and TR mirrors should be in mirrorcache-eu.opensuse.org

Hello,

Congratulations for this new improved system to pick mirrors.

Turkey's (TR) country backbone is optimized for European connections and Asian connections have rather horrible ping rates.

For example,
ping mirrorcache-eu.opensuse.org
PING proxy-nue.opensuse.org (195.135.221.140) 56(84) bytes of data.
64 bytes from proxy-nue.opensuse.org (195.135.221.140): icmp_seq=1 ttl=52 time=54.1 ms
64 bytes from proxy-nue.opensuse.org (195.135.221.140): icmp_seq=2 ttl=52 time=54.6 ms
64 bytes from proxy-nue.opensuse.org (195.135.221.140): icmp_seq=3 ttl=52 time=56.2 ms
^C
--- proxy-nue.opensuse.org ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 54.055/54.945/56.197/0.911 ms

The mirror I suggested/enabled (verinomi) can also serve great to EU users. Right now, when I check my IP (which is fixed, 31.223.0.183 ) it shows in Asia. {"country":"TR","ip":"31.223.0.183","region":"AS"}

Doesn't pick nearest mirror (for a period of time)

Hi! Writing to let you know of a specific issue in Brazil. In my understanding the experience for TW users that dup daily is more impacted than users in other cohorts.

Captured this on Feb 8th after snapshot 20220207 was released:

 16:44:17  curl -L --head https://download.opensuse.org/tumbleweed/repo/oss/x86_64/Mesa-21.3.5-300.2.x86_64.rpm
HTTP/2 302
location: https://mirrorcache.opensuse.org/tumbleweed/repo/oss/x86_64/Mesa-21.3.5-300.2.x86_64.rpm
content-type: text/html; charset=iso-8859-1
date: Tue, 08 Feb 2022 19:44:21 GMT
server: Apache

HTTP/2 302
location: https://ftp.halifax.rwth-aachen.de/opensuse/tumbleweed/repo/oss/x86_64/Mesa-21.3.5-300.2.x86_64.rpm
date: Tue, 08 Feb 2022 19:44:22 GMT
content-length: 0
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
referrer-policy: no-referrer-when-downgrade
strict-transport-security: max-age=15768000

HTTP/2 200
server: nginx/1.18.0
date: Tue, 08 Feb 2022 19:44:23 GMT
content-type: application/x-redhat-package-manager
content-length: 80469
last-modified: Mon, 07 Feb 2022 03:42:30 GMT
accept-ranges: bytes

MirrorCache doesn't yet know about a local (BR) mirror, even though MirrorBrain is already aware of it.

 16:44:24  curl https://download.opensuse.org/tumbleweed/repo/oss/x86_64/Mesa-21.3.5-300.2.x86_64.rpm.meta4
<?xml version="1.0" encoding="UTF-8"?>
<metalink xmlns="urn:ietf:params:xml:ns:metalink">
  <generator>MirrorBrain/2.19.0</generator>
  <origin dynamic="true">https://download.opensuse.org/tumbleweed/repo/oss/x86_64/Mesa-21.3.5-300.2.x86_64.rpm.meta4</origin>
  <published>2022-02-08T19:44:30Z</published>
  <publisher>
    <name>openSUSE</name>
    <url>http://download.opensuse.org</url>
  </publisher>

  <file name="Mesa-21.3.5-300.2.x86_64.rpm">
    <size>80469</size>

    <!-- <mtime>1644205350</mtime> -->

    <!-- internal id: 986933903 -->
    <hash type="md5">d9bcb880bcd2c23572cdcaebf8e16f3f</hash>
    <hash type="sha-1">62c4530620211dc9d0c82331ba4677f80f674396</hash>
    <hash type="sha-256">d497e4a19b5024d3eb50789cd4a760bcdf0054335732b8fb27357d882aa08aba</hash>
    <pieces length="262144" type="sha-1">
      <hash>62c4530620211dc9d0c82331ba4677f80f674396</hash>
    </pieces>


    <!-- Found 32 mirrors: 0 in the same network prefix, 0 in the same autonomous system,
         1 handling this country, 0 in the same region, 27 elsewhere -->

    <!-- Mirrors in the same network (2804:d50::/28): -->

    <!-- Mirrors in the same AS (8167): -->

    <!-- Mirrors which handle this country (BR): -->
    <url location="br" priority="1">http://opensuse.c3sl.ufpr.br/tumbleweed/repo/oss/x86_64/Mesa-21.3.5-300.2.x86_64.rpm</url>

    <!-- Mirrors in the same continent (SA): -->

Retrying the operation today tells me that MirrorCache picked up:

 19:49:22  curl -L --head https://download.opensuse.org/tumbleweed/repo/oss/x86_64/Mesa-21.3.5-300.2.x86_64.rpm
HTTP/2 302
location: https://mirrorcache.opensuse.org/tumbleweed/repo/oss/x86_64/Mesa-21.3.5-300.2.x86_64.rpm
content-type: text/html; charset=iso-8859-1
date: Sun, 13 Feb 2022 22:49:25 GMT
server: Apache

HTTP/2 302
date: Sun, 13 Feb 2022 22:49:27 GMT
location: https://download.opensuse.net.br/tumbleweed/repo/oss/x86_64/Mesa-21.3.5-300.2.x86_64.rpm
content-length: 0
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
referrer-policy: no-referrer-when-downgrade
strict-transport-security: max-age=15768000

HTTP/2 200
accept-ranges: bytes
content-type: application/x-redhat-package-manager
date: Sun, 13 Feb 2022 22:49:27 GMT
etag: "62009526-13a55"
last-modified: Mon, 07 Feb 2022 03:42:30 GMT
server: nginx
content-length: 80469

Comments/questions:

  1. Mirror download.opensuse.net.br is picked instead of opensuse.c3sl.ufpr.br, not sure why. See
    insert into server(hostname,urldir,enabled,country,region) select 'opensuse.c3sl.ufpr.br','/','t','br','sa';
  2. opensuse.c3sl.ufpr.br is an HTTP-only mirror, could this impact MirrorCache performance?
  3. Can a cache miss redirect instead to the mirror known to MirrorBrain?
  4. README mentions Then background jobs will collect info about the hottest misses and scan predefined mirrors for presence of these files. Maybe the hottest misses could be revised to include a few more misses?

apt-key add key reports repository is not signed

wget -nv https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/Release.key -O Release.key
apt-key add - <Release.key

detail error:

W: GPG error: http://package.perforce.com/apt/ubuntu focal InRelease: The following signatures were invalid: EXPKEYSIG 7123CB760FF18869 Perforce Software (Package Signing) <[email protected]>
E: The repository 'http://package.perforce.com/apt/ubuntu focal InRelease' is not signed.

Repository has no alias defined.

I was attempting to upgrade a 15.3 installation this morning and this occurred:

Unexpected exception.
[|https://mirrorcache-us.opensuse.org/repositories/mozilla/openSUSE_Leap_15.3/] Repository has no alias defined.
Please file a bug report about this.
See http://en.opensuse.org/Zypper/Troubleshooting for instructions.

I could not proceed at all. I had no problems upgrading this system 3 days ago.

Thanks in advance.

MirrorCache misses a landing page like MirrorBrain

If I visit https://mirrorcache-eu.opensuse.org/ there is not really much more to see than the menu list at the top of the page (which leads a lot of users to try the "login" link).

I would expect a listing, similar to the one provided at https://download.opensuse.org/ - which is just available for MIrrorCache users once they clicked on the "Download" link in the menu: https://mirrorcache-eu.opensuse.org/download/

Could you consider to either have a static page in front (which could be themed easily as static page) or having the /download/ page as homepage?

Mirror 'mirror.firstyear.id.au' not working

Trying to run zypper ref Games gives the error

Repository 'Games' is invalid.
[Games|https://mirrorcache-au.opensuse.org/repositories/games/openSUSE_Tumbleweed/] Valid metadata not found at specified URL
History:
 - File '/repodata/repomd.xml' not found on medium 'https://mirrorcache-au.opensuse.org/repositories/games/openSUSE_Tumbleweed/'
 - Can't provide /repodata/repomd.xml

Please check if the URIs defined for this repository are pointing to a valid repository.
Skipping repository 'Games' because of the above error.
Could not refresh the repositories because of errors.

zypper.log says:

2023-05-26 20:04:05 <1> archie-e14(31145) [zypp::media++] MediaCurl.cc(doGetFileCopyFile):1203 URL: https://mirrorcache-au.opensuse.org/repositories/games/openSUSE_Tumbleweed/repodata/repomd.xml
2023-05-26 20:04:05 <1> archie-e14(31145) [zypp-curl++] curlhelper.cc(log_redirects_curl):152 redirecting to location: https://mirror.firstyear.id.au/repositories/games/openSUSE_Tumbleweed/repodata/repomd.xml
2023-05-26 20:04:05 <3> archie-e14(31145) [zypp::media] MediaCurl.cc(doGetFileCopyFile):1268 curl error: 22: The requested URL returned error: 404, temp file size 0 bytes.
2023-05-26 20:04:05 <5> archie-e14(31145) [zypp-core] Exception.cc(log):186 MediaCurl.cc(evaluateCurlCode):898 THROW:    File '/repodata/repomd.xml' not found on medium 'https://mirrorcache-au.opensuse.org/repositories/games/openSUSE_Tumbleweed/'

Based on the redirection and the curl error I assume that the mirror is at fault.
Opening the link in Firefox it complains "no element found", curling it prints nothing to the console and wget says the response is "404 Not Found".

mirror.aardsoft.fi broken IPv6 connectivitiy on both ports 80 and 443, IPv4 seems to work, but it breaks IPv6-only envs

LANG=C wget https://mirror.aardsoft.fi
--2023-03-10 14:30:08--  https://mirror.aardsoft.fi/
Resolving mirror.aardsoft.fi (mirror.aardsoft.fi)... 2a01:4f9:3b:2d2b::1, 65.21.143.134
Connecting to mirror.aardsoft.fi (mirror.aardsoft.fi)|2a01:4f9:3b:2d2b::1|:443... failed: Connection refused.
Connecting to mirror.aardsoft.fi (mirror.aardsoft.fi)|65.21.143.134|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘index.html’

index.html                           [ <=>                                                     ]     367  --.-KB/s    in 0s      

2023-03-10 14:30:08 (16.7 MB/s) - ‘index.html’ saved [367]

LANG=C wget http://mirror.aardsoft.fi
--2023-03-10 14:30:36--  http://mirror.aardsoft.fi/
Resolving mirror.aardsoft.fi (mirror.aardsoft.fi)... 2a01:4f9:3b:2d2b::1, 65.21.143.134
Connecting to mirror.aardsoft.fi (mirror.aardsoft.fi)|2a01:4f9:3b:2d2b::1|:80... failed: Connection refused.
Connecting to mirror.aardsoft.fi (mirror.aardsoft.fi)|65.21.143.134|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘index.html.1’

index.html.1                         [ <=>                                                     ]     367  --.-KB/s    in 0s      

2023-03-10 14:30:36 (18.3 MB/s) - ‘index.html.1’ saved [367]


14th page to get to ISO downloads in TW ???

It might make sense to put Changes.txt into a directory off the main download, so you don't have to click through 13 pages to find the very first TW ISO from the TW ISO download site. Since people sort of expect to find the TW ISO downloads from the TW ISO download site.

cri-o libcontainers stable repo is not maintained.

The project CRI-O (https://cri-o.io/) lists the following repositories for installing pre-built RPM and DEB packages for cri-o and cri-tools.

If you check the first repository, it contains the latest cri-o version, recent Linux distro versions like CentOS_9_Stream are supported.
The second repository - stable - has very outdated versions: crictl version 1.21.0 (should be 1.26.1), runc v1.0.1-1 (should be 1.1.4), CentOS_9_Stream RPM packages are missing (Installation is not possible on RHEL 9 systems without building your own RPM packages)

Newer versions of cri-o are not compatible with such old versions of helper tools like crictl, runc, ... Over time many issues arise and the the only solution is to get the newest version from the respective GitHub or build from source.

Increase the usage of combined assignment operators

👀 Some source code analysis tools can help to find opportunities for improving software components.
💭 I propose to increase the usage of combined operators accordingly.

Would you like to integrate anything from a transformation result which can be generated by a command like the following?
(:point_right: Please check also for questionable change suggestions because of an evolving search pattern.)

lokal$ perl -p -i.orig -0777 -e 's/(?<target>\$\S+)\s*=\s*\k<target>[ \t]*(?<operator>[+%^.x]|-(?!>)|&(?:&|.)?|\|(?:\||.)?|\*\*?|\/\/?|<<|>>|^.)/$+{target} $+{operator}=/gm' $(find ~/Projekte/MirrorCache/lokal -name '*.pl' -o -name '*.pm')

🔮 How will development interests evolve further also according to update candidates in 36 lines of this software?

Copied links urlencoded

Hello,

in the previous traditional directory listing on download.opensuse.org, .repo file links copied using the Firefox "Copy link" context menu function would be copied to the clipboard in a 1:1 fashion, allowing for easy pasting into, for example, zypper ar calls.
Since the new listing feature, links are copied to the clipboard in an URL encoded fashion - for example in https://download.opensuse.org/repositories/openSUSE:/Backports:/SLE-15-SP4/standard/openSUSE%3ABackports%3ASLE-15-SP4.repo the colons in the .repo file name got replaced, requiring manual touch-ups before the link can be used.

I am unsure how much of it is a browser issue, but perhaps there is something in the new site triggering it which could be changed.

Intermittent 502 bad gateway errors

I'm trying to install podman using apt-get via https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04 repository and I keep receiving http 502 bad gateway errors.

To reproduce:
add the repo to sources.list.d:

$ cat /etc/apt/sources.list.d/devel\:kubic\:libcontainers\:stable.list
deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/ /

 sudo apt-get update
 sudo apt-get purge podman -y
 sudo apt-get --purge autoremove -y
 sudo apt-get clean
 sudo apt-get install podman -y

until you see the Bad Gateway error. It is intermittent.

See an example output:

$ sudo apt-get install podman -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  catatonit conmon containernetworking-plugins containers-common criu crun dns-root-data dnsmasq-base fuse-overlayfs
  libidn11 libnet1 libnl-3-200 libprotobuf-c1 libprotobuf17 libyajl2 podman-machine-cni podman-plugins
  python3-protobuf slirp4netns uidmap
The following NEW packages will be installed:
  catatonit conmon containernetworking-plugins containers-common criu crun dns-root-data dnsmasq-base fuse-overlayfs
  libidn11 libnet1 libnl-3-200 libprotobuf-c1 libprotobuf17 libyajl2 podman podman-machine-cni podman-plugins
  python3-protobuf slirp4netns uidmap
0 upgraded, 21 newly installed, 0 to remove and 251 not upgraded.
Need to get 32.0 MB of archives.
After this operation, 159 MB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 libprotobuf17 amd64 3.6.1.3-2ubuntu5.2 [798 kB]
Get:2 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-protobuf amd64 3.6.1.3-2ubuntu5.2 [298 kB]
Get:3 http://archive.ubuntu.com/ubuntu focal/main amd64 libnet1 amd64 1.1.6+dfsg-3.1build1 [43.3 kB]
Get:4 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 libnl-3-200 amd64 3.4.0-1ubuntu0.1 [54.4 kB]
Get:5 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 libprotobuf-c1 amd64 1.3.3-1ubuntu0.1 [19.3 kB]
Get:6 http://archive.ubuntu.com/ubuntu focal/main amd64 libyajl2 amd64 2.1.0-3 [20.1 kB]
Get:7 http://archive.ubuntu.com/ubuntu focal/main amd64 dns-root-data all 2019052802 [5300 B]
Get:8 http://archive.ubuntu.com/ubuntu focal/main amd64 libidn11 amd64 1.33-2.2ubuntu2 [46.2 kB]
Get:9 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 dnsmasq-base amd64 2.80-1.1ubuntu1.6 [315 kB]
Get:10 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 uidmap amd64 1:4.8.1-1ubuntu5.20.04.4 [26.4 kB]
Err:11 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  catatonit 0.1.7-1
  502  Bad Gateway [IP: 195.135.221.134 443]
Get:12 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  conmon 100:2.1.2~0 [33.7 kB]
Get:13 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  containers-common 100:1-22 [52.4 kB]
Get:14 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  criu 3.17.1-1 [685 kB]
Get:15 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  crun 100:1.2-2 [252 kB]
Get:16 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  fuse-overlayfs 100:1.5.0-2 [41.8 kB]
Get:17 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  podman-plugins 100:1.2.0-1 [1035 kB]
Get:18 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  podman-machine-cni 100:0.0.0-1 [1640 kB]
Err:20 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  slirp4netns 100:1.1.8-4
  502  Bad Gateway [IP: 195.135.221.134 443]
Get:19 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  podman 100:3.4.2-5 [18.7 MB]
51% [19 podman 8372 kB/18.7 MB 45%]                                                                        412 kB/s 4451% [19 podman 8585 kB/18.7 MB 46%]                               52% [1Get:21 https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04  containernetworking-plugins 100:1.1.1~1 [7009 kB]
Fetched 31.0 MB in 1min 32s (339 kB/s)
E: Failed to fetch https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/./amd64/catatonit_0.1.7-1_amd64.deb  502  Bad Gateway [IP: 195.135.221.134 443]
E: Failed to fetch https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/./amd64/slirp4netns_1.1.8-4_amd64.deb  502  Bad Gateway [IP: 195.135.221.134 443]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

MirrorCache should provide footer links

For open source projects, it is usual to provide some additional links in the footer of a HTML page:

  • Direct link to the sources on Github
  • Direct contact link (link to the Github issue page) for users, who want to report an issue
  • Imprint link

Just have a look at the current https://download.opensuse.org/ page

Repository 'opensuse_leap15_4-uyuni-client-x86_64' is invalid.

A colleague and I have started having issues with repos hosted on download.opensuse.org overnight. We are both in Australia.
Below is the issue reported to me by my uyuni server and my colleague is trying to install packages from the https://download.opensuse.org/repositories/server:/monitoring/15.4/ repository.

[opensuse_leap15_4-uyuni-client-x86_64|https://download.opensuse.org/repositories/systemsmanagement:/Uyuni:/Stable:/openSUSE_Leap_15-Uyuni-Client-Tools/openSUSE_Leap_15.0/] Valid metadata not found at specified URL
History:
 - File './repodata/52efe3d5322d264e5f3ed960d4e7f818618c0f1f90a1f4231fe2e5cf82d258fd-primary.xml.gz' not found on medium 'https://download.opensuse.org/repositories/systemsmanagement:/Uyuni:/Stable:/openSUSE_Leap_15-Uyuni-Client-Tools/openSUSE_Leap_15.0/'
 - Can't provide ./repodata/52efe3d5322d264e5f3ed960d4e7f818618c0f1f90a1f4231fe2e5cf82d258fd-primary.xml.gz

Please check if the URIs defined for this repository are pointing to a valid repository.
Skipping repository 'opensuse_leap15_4-uyuni-client-x86_64' because of the above error.
Could not refresh the repositories because of errors.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.