[opensuse-buildservice] OBS target customisation question
Hi experts, I tried to search the mailing list and had a quick look at the documentation but I could not find a clear answer. I’m currently building packages using target Debian 10 / buster, I managed to build deb dependencies packages successfully from genuine Debian 10/Buster target and I must admit that the process is quite straightforward. (I was used to work with Launchpad … :-) ) But now I have the following question: 1- I’m building a package on Buster (Debian 10) 2- The package I want to build use a package in Debian/experimental So I added in /etc/apt/sources.list the lines: ... deb http://ftp.crihan.fr/debian experimental main deb-src http://ftp.crihan.fr/debian experimental main … 3- In order to avoid repository conflict I added in /etc/apt/preferences the lines: (The src deb is grpc package) Package: libgrpc++-dev Pin: release a=experimental Pin-Priority: 800 Package: libgrpc++1 Pin: release a=experimental Pin-Priority: 800 Package: libgrpc-dev Pin: release a=experimental Pin-Priority: 800 Package: libgrpc7 Pin: release a=experimental Pin-Priority: 800 Package: protobuf-compiler-grpc Pin: release a=experimental Pin-Priority: 800 Package: python-grpcio Pin: release a=experimental Pin-Priority: 800 4- Then I update the distribution repository apt-get update 5- Finally: install the packages from experimental. … apt-get install libgrpc++-dev ... Etc. Do you know how to « reproducers » this in OBS ? For now I’m using only OBS web GUI, for learning sake I’ll switch to ocs command line interface when I’ll get more familiar to the whole system. One solution would be to rebuild experimental packages from Debian 10/Buster but building grpc is not a trivial operation... I’m fairly new to OBS, so apology in advance if this question has been answered previously. In that case I’d love to get any pointer to the doc or mailing list thread that would help me accomplish this… Thanks ! All the best, À bientôt, -- Frederic-- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
On Dienstag, 13. August 2019, 15:07:03 CEST Frédéric LOUI wrote:
Hi experts,
I tried to search the mailing list and had a quick look at the documentation but I could not find a clear answer.
I’m currently building packages using target Debian 10 / buster, I managed to build deb dependencies packages successfully from genuine Debian 10/Buster target and I must admit that the process is quite straightforward. (I was used to work with Launchpad … :-) )
But now I have the following question:
1- I’m building a package on Buster (Debian 10)
2- The package I want to build use a package in Debian/experimental So I added in /etc/apt/sources.list the lines: ... deb http://ftp.crihan.fr/debian experimental main deb-src http://ftp.crihan.fr/debian experimental main …
3- In order to avoid repository conflict I added in /etc/apt/preferences the lines: (The src deb is grpc package) Package: libgrpc++-dev Pin: release a=experimental Pin-Priority: 800
Package: libgrpc++1 Pin: release a=experimental Pin-Priority: 800
Package: libgrpc-dev Pin: release a=experimental Pin-Priority: 800
Package: libgrpc7 Pin: release a=experimental Pin-Priority: 800
Package: protobuf-compiler-grpc Pin: release a=experimental Pin-Priority: 800
Package: python-grpcio Pin: release a=experimental Pin-Priority: 800
4- Then I update the distribution repository apt-get update
5- Finally: install the packages from experimental. … apt-get install libgrpc++-dev ... Etc.
Do you know how to « reproducers » this in OBS ?
in OBS a package with a specific name is always taken from the first repository which got used. It means the order of your <path project=../> elements in your repository config does matter here. OBS would not switch repos depending on package version numbers though, this would cause quite some chaos and not reproducible building.
For now I’m using only OBS web GUI, for learning sake I’ll switch to ocs command line interface when I’ll get more familiar to the whole system.
One solution would be to rebuild experimental packages from Debian 10/Buster but building grpc is not a trivial operation...
we don't have a config for "experimental packages" yet .... but I could add one... -- Adrian Schroeter SUSE Linux Products GmbH, Maxfeldstr. 5, 90409 Nuernberg, Germany email: adrian@suse.de -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
Hi Adrian, Many thanls for your answers.
in OBS a package with a specific name is always taken from the first repository which got used. It means the order of your <path project=../> elements in your repository config does matter here.
OK. I if I understand well If I want to use GRPC Debian/Experimental, I would have first to add Debian/Experimental target as a repository in position #1 And let Debian 10/Buster as a repo in position #2 But in that case all the packages that have the same name in experimental will be installed fist. Which is the opposite action of what we would expect: Install package from Buster first and then use experimental. Is there a way to specify the package specific package name + version ? (In that case it would pick the right one)
OBS would not switch repos depending on package version numbers though, this would cause quite some chaos and not reproducible building. Ah, yes got it. So I guess my best option is to recreate the package from a genuine Debian 10/Buster target.
we don't have a config for "experimental packages" yet .... but I could add one... This would be perfect to have also testing/unstable/experimental. However, I guess that a mechanism similar similar to /etc/apt/preferences is needed for proper pinning.
I’ll try to rebuild grpc experimental from Debian 10/Buster then. Meanwhile, I’ll watch OBS new target options. This service is promising as the workflow unexpectedly simple. Merci ! À bientôt, -- Frederic
Le 13 août 2019 à 15:26, Adrian Schröter <adrian@suse.de> a écrit :
in OBS a package with a specific name is always taken from the first repository which got used. It means the order of your <path project=../> elements in your repository config does matter here.
OBS would not switch repos depending on package version numbers though, this would cause quite some chaos and not reproducible building.
For now I’m using only OBS web GUI, for learning sake I’ll switch to ocs command line interface when I’ll get more familiar to the whole system.
One solution would be to rebuild experimental packages from Debian 10/Buster but building grpc is not a trivial operation...
we don't have a config for "experimental packages" yet .... but I could add one...
-- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
On Dienstag, 13. August 2019, 15:53:28 CEST Frédéric LOUI wrote:
Hi Adrian,
Many thanls for your answers.
in OBS a package with a specific name is always taken from the first repository which got used. It means the order of your <path project=../> elements in your repository config does matter here.
OK. I if I understand well If I want to use GRPC Debian/Experimental, I would have first to add Debian/Experimental target as a repository in position #1 And let Debian 10/Buster as a repo in position #2
But in that case all the packages that have the same name in experimental will be installed fist. Which is the opposite action of what we would expect: Install package from Buster first and then use experimental.
well, you can also specify buster first. So it would only take packages from experimental which does not exist in buster ... not sure if that helps you.
Is there a way to specify the package specific package name + version ? (In that case it would pick the right one)
no
OBS would not switch repos depending on package version numbers though, this would cause quite some chaos and not reproducible building.
Ah, yes got it. So I guess my best option is to recreate the package from a genuine Debian 10/Buster target.
we don't have a config for "experimental packages" yet .... but I could add one...
This would be perfect to have also testing/unstable/experimental. However, I guess that a mechanism similar similar to /etc/apt/preferences is needed for proper pinning.
I’ll try to rebuild grpc experimental from Debian 10/Buster then.
might be the best ...
Meanwhile, I’ll watch OBS new target options. This service is promising as the workflow unexpectedly simple.
Debian:Experimental / standard is there now.
À bientôt, -- Frederic
Le 13 août 2019 à 15:26, Adrian Schröter <adrian@suse.de> a écrit :
in OBS a package with a specific name is always taken from the first repository which got used. It means the order of your <path project=../> elements in your repository config does matter here.
OBS would not switch repos depending on package version numbers though, this would cause quite some chaos and not reproducible building.
For now I’m using only OBS web GUI, for learning sake I’ll switch to ocs command line interface when I’ll get more familiar to the whole system.
One solution would be to rebuild experimental packages from Debian 10/Buster but building grpc is not a trivial operation...
we don't have a config for "experimental packages" yet .... but I could add one...
-- Adrian Schroeter SUSE Linux Products GmbH, Maxfeldstr. 5, 90409 Nuernberg, Germany email: adrian@suse.de -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
Hi !
well, you can also specify buster first. So it would only take packages from experimental which does not exist in buster ... not sure if that helps you.
Nope as grpc is both into Stable/Buster and Experimental.
Debian:Experimental / standard
Great ! This works great in case the package does not exist in Buster. Not sure if this « repo switch » can be force in Debian/control file by forcing the version. (That is obviously nit in buster but in experimental -> I’ll test it)
might be the best ...
Guess you are right. Doing it right now À bientôt, -- Frederic
Le 13 août 2019 à 16:10, Adrian Schröter <adrian@suse.de> a écrit :
On Dienstag, 13. August 2019, 15:53:28 CEST Frédéric LOUI wrote:
Hi Adrian,
Many thanls for your answers.
in OBS a package with a specific name is always taken from the first repository which got used. It means the order of your <path project=../> elements in your repository config does matter here.
OK. I if I understand well If I want to use GRPC Debian/Experimental, I would have first to add Debian/Experimental target as a repository in position #1 And let Debian 10/Buster as a repo in position #2
But in that case all the packages that have the same name in experimental will be installed fist. Which is the opposite action of what we would expect: Install package from Buster first and then use experimental.
well, you can also specify buster first. So it would only take packages from experimental which does not exist in buster ... not sure if that helps you.
Is there a way to specify the package specific package name + version ? (In that case it would pick the right one)
no
OBS would not switch repos depending on package version numbers though, this would cause quite some chaos and not reproducible building.
Ah, yes got it. So I guess my best option is to recreate the package from a genuine Debian 10/Buster target.
we don't have a config for "experimental packages" yet .... but I could add one...
This would be perfect to have also testing/unstable/experimental. However, I guess that a mechanism similar similar to /etc/apt/preferences is needed for proper pinning.
I’ll try to rebuild grpc experimental from Debian 10/Buster then.
might be the best ...
Meanwhile, I’ll watch OBS new target options. This service is promising as the workflow unexpectedly simple.
Debian:Experimental / standard
is there now.
-- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
participants (2)
-
Adrian Schröter
-
Frédéric LOUI