* [gentoo-dev] [RFC] obs eclasses @ 2011-09-13 11:11 Michal Hrusecky 2011-09-13 11:24 ` Amadeusz Żołnowski ` (3 more replies) 0 siblings, 4 replies; 29+ messages in thread From: Michal Hrusecky @ 2011-09-13 11:11 UTC (permalink / raw To: gentoo-dev [-- Attachment #1.1: Type: text/plain, Size: 221 bytes --] Hi, please take a look at attached eclasses. Purpose is to make installation of obs services (plugins for osc) easier. Comments and improvements are welcome. Regards -- Michal Hrusecky <miska@gentoo.org> [-- Attachment #1.2: obs-download.eclass --] [-- Type: text/plain, Size: 1516 bytes --] # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ # @ECLASS: obs-download.eclass # @MAINTAINER: # miska@gentoo.org # @BLURB: Reduces code duplication in the downloading from obs. # @DESCRIPTION: # This eclass constructs OBS_URI based on provided project in openSUSE Build # Service and package name. It can be used later by packages/eclasses to # download actual files. # # All you need to do in order to use it is set OBS_PROJECT and OBS_PACKAGE and # inherit this eclass. It will provide OBS_URI in return which you will prepend # to your files and use in SRC_URI. Alternatively you can just set # OPENSUSE_RELEASE and OBS_PACKAGE and it will give you back OBS_URI for # downloading files from obs projects corresponding to the specified openSUSE # release. # @ECLASS-VARIABLE: OPENSUSE_RELEASE # @DEFAULT_UNSET # @DESCRIPTION: # From which stable openSUSE realease to take files. # @ECLASS-VARIABLE: OBS_PROJECT # @DEFAULT_UNSET # @DESCRIPTION: # In which obs project pakage is. This variable don't have to be set, if # OPENSUSE_RELEASE is provided. # @ECLASS-VARIABLE: OPENSUSE_PACKAGE # @REQUIRED # @DESCRIPTION: # Name of the package we want to take files from. [[ -z ${OPENSUSE_RELEASE} ]] || OBS_PROJECT="openSUSE:${OPENSUSE_RELEASE}" [[ -n ${OBS_PROJECT} ]] || die "OBS_PROJECT not set!" [[ -n ${OBS_PACKAGE} ]] || die "OBS_PACKAGE not set!" OBS_URI="https://api.opensuse.org/public/source/${OBS_PROJECT}/${OBS_PACKAGE}" [-- Attachment #1.3: obs-service.eclass --] [-- Type: text/plain, Size: 2375 bytes --] # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ # @ECLASS: obs-service.eclass # @MAINTAINER: # miska@gentoo.org # @BLURB: Reduces code duplication in the obs services. # @DESCRIPTION: # This eclass makes it easier to package obs services. Based on provided # information it will all neede variables and takes care of installation. # # @EXAMPLE: # Typical ebuild using obs-service.eclass: # # @CODE # EAPI=4 # # inherit obs-service # # KEYWORDS="" # # DEPEND="" # RDEPEND="${DEPEND}" # # @CODE # @ECLASS-VARIABLE: OBS_SERVICE_NAME # @DESCRIPTION: # Name of the service. If not set, it is taken from ${PN}. # @ECLASS-VARIABLE: OPENSUSE_RELEASE # @DESCRIPTION: # From which stable openSUSE realease to take a package. # @ECLASS-VARIABLE: ADDITIONAL_FILES # @DEFAULT_UNSET # @DESCRIPTION: # If any additional files are needed. case "${EAPI:-0}" in 4) : ;; *) die "EAPI=${EAPI} is not supported" ;; esac HOMEPAGE="http://en.opensuse.org/openSUSE:OSC" LICENSE="GPL-2" SLOT="0" IUSE="" RDEPEND+="dev-util/osc" [[ -n ${OBS_SERVICE_NAME} ]] || OBS_SERVICE_NAME=${PN/obs-service-/} [[ -n ${OPENSUSE_RELEASE} ]] || OBS_PROJECT="openSUSE:Tools" DESCRIPTION="Open Build Service client module - ${OBS_SERVICE_NAME} service" OBS_PACKAGE="obs-service-${OBS_SERVICE_NAME}" inherit obs-download SRC_URI="${OBS_URI}/${OBS_SERVICE_NAME}" SRC_URI+=" ${OBS_URI}/${OBS_SERVICE_NAME}.service" for i in ${ADDITIONAL_FILES}; do SRC_URI+=" ${OBS_URI}/${i}" done S="${WORKDIR}" # @FUNCTION: obs-service_src_configure # @DESCRIPTION: # Does nothing. Files are not compressed. obs-service_src_unpack() { debug-print-function ${FUNCNAME} "$@" } # @FUNCTION: obs-service_src_install # @DESCRIPTION: # Does the installation of the downloaded files. obs-service_src_install() { debug-print-function ${FUNCNAME} "$@" debug-print "Installing service \"${OBS_SERVICE_NAME}\"" exeinto /usr/lib/obs/service doexe ${DISTDIR}/${OBS_SERVICE_NAME} insinto /usr/lib/obs/service doins ${DISTDIR}/${OBS_SERVICE_NAME}.service if [[ -n ${ADDITIONAL_FILES} ]]; then debug-print "Installing following additional files:" debug-print " ${ADDITIONAL_FILES}" exeinto /usr/lib/obs/service/${OBS_SERVICE_NAME}.files for i in ${ADDITIONAL_FILES}; do doexe ${DISTDIR}/$i done fi } EXPORT_FUNCTIONS src_install src_unpack [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 230 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 11:11 [gentoo-dev] [RFC] obs eclasses Michal Hrusecky @ 2011-09-13 11:24 ` Amadeusz Żołnowski 2011-09-13 12:26 ` Joshua Kinard 2011-09-13 14:37 ` [gentoo-dev] " Michal Hrusecky 2011-09-13 14:59 ` Donnie Berkholz ` (2 subsequent siblings) 3 siblings, 2 replies; 29+ messages in thread From: Amadeusz Żołnowski @ 2011-09-13 11:24 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1497 bytes --] Hi, Excerpts from Michal Hrusecky's message of 2011-09-13 13:11:28 +0200: > Comments and improvements are welcome. Just some minor remarks: > [[ -z ${OPENSUSE_RELEASE} ]] || OBS_PROJECT="openSUSE:${OPENSUSE_RELEASE}" > [[ -n ${OBS_PROJECT} ]] || die "OBS_PROJECT not set!" > [[ -n ${OBS_PACKAGE} ]] || die "OBS_PACKAGE not set!" You don't need -n/-z with [[. [[ $var ]] == [[ -n $var ]] [[ ! $var ]] == [[ -z $var ]] So: [[ ${OPENSUSE_RELEASE} ]] && OBS_PROJECT="openSUSE:${OPENSUSE_RELEASE}" [[ ${OBS_PROJECT} ]] || die "OBS_PROJECT not set!" [[ ${OBS_PACKAGE} ]] || die "OBS_PACKAGE not set!" > obs-service_src_install() { > debug-print-function ${FUNCNAME} "$@" > debug-print "Installing service \"${OBS_SERVICE_NAME}\"" > exeinto /usr/lib/obs/service > doexe ${DISTDIR}/${OBS_SERVICE_NAME} > insinto /usr/lib/obs/service > doins ${DISTDIR}/${OBS_SERVICE_NAME}.service > if [[ -n ${ADDITIONAL_FILES} ]]; then > debug-print "Installing following additional files:" > debug-print " ${ADDITIONAL_FILES}" > exeinto /usr/lib/obs/service/${OBS_SERVICE_NAME}.files > for i in ${ADDITIONAL_FILES}; do > doexe ${DISTDIR}/$i "" just in case. > done > fi > } -- Amadeusz Żołnowski PGP key fpr: C700 CEDE 0C18 212E 49DA 4653 F013 4531 E1DB FAB5 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 490 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 11:24 ` Amadeusz Żołnowski @ 2011-09-13 12:26 ` Joshua Kinard 2011-09-13 13:02 ` Amadeusz Żołnowski 2011-09-20 5:09 ` [gentoo-dev] " Steven J Long 2011-09-13 14:37 ` [gentoo-dev] " Michal Hrusecky 1 sibling, 2 replies; 29+ messages in thread From: Joshua Kinard @ 2011-09-13 12:26 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1356 bytes --] On 09/13/2011 07:24, Amadeusz Żołnowski wrote: > Hi, > > > Excerpts from Michal Hrusecky's message of 2011-09-13 13:11:28 +0200: >> Comments and improvements are welcome. > > Just some minor remarks: > > >> [[ -z ${OPENSUSE_RELEASE} ]] || OBS_PROJECT="openSUSE:${OPENSUSE_RELEASE}" >> [[ -n ${OBS_PROJECT} ]] || die "OBS_PROJECT not set!" >> [[ -n ${OBS_PACKAGE} ]] || die "OBS_PACKAGE not set!" > > You don't need -n/-z with [[. > > [[ $var ]] == [[ -n $var ]] > [[ ! $var ]] == [[ -z $var ]] > What about other comparisons, like -f, -e, or -d? Bash's manpage only says [[ expression ]] -- it doesn't seem to go into the level of detail (at least not in the section that I quickly perused) about what flag operators are necessary or not. Also, is this a bash4-only thing, or bash3 and/or bash2 as well? If yes to above, we should get this edited and fixed up, then, because it uses -z/-n inside [[ ]]: http://devmanual.gentoo.org/tools-reference/bash/index.html Oh, forgot, it won't break initscripts, will it? -- Joshua Kinard Gentoo/MIPS kumba@gentoo.org 4096R/D25D95E3 2011-03-28 "The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between." --Emperor Turhan, Centauri Republic [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 834 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 12:26 ` Joshua Kinard @ 2011-09-13 13:02 ` Amadeusz Żołnowski 2011-09-13 13:12 ` Michał Górny 2011-09-13 14:44 ` Donnie Berkholz 2011-09-20 5:09 ` [gentoo-dev] " Steven J Long 1 sibling, 2 replies; 29+ messages in thread From: Amadeusz Żołnowski @ 2011-09-13 13:02 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 769 bytes --] Excerpts from Joshua Kinard's message of 2011-09-13 14:26:02 +0200: > > You don't need -n/-z with [[. > > > > [[ $var ]] == [[ -n $var ]] > > [[ ! $var ]] == [[ -z $var ]] > > What about other comparisons, like -f, -e, or -d? Same as inside [, but no need of quotes inside [[. > Also, is this a bash4-only thing, or bash3 and/or bash2 as well? I'm not sure. OT: When I was going through recruitment process, dberkholz pointed to me that I use things bash4-only. And again: why we need to stick to ancient 3 version? I would understand pseudo POSIX compatibility, but what is the benefit of bash3 compatibility while bash4 is stable already? -- Amadeusz Żołnowski PGP key fpr: C700 CEDE 0C18 212E 49DA 4653 F013 4531 E1DB FAB5 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 490 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 13:02 ` Amadeusz Żołnowski @ 2011-09-13 13:12 ` Michał Górny 2011-09-13 14:44 ` Donnie Berkholz 1 sibling, 0 replies; 29+ messages in thread From: Michał Górny @ 2011-09-13 13:12 UTC (permalink / raw To: gentoo-dev; +Cc: aidecoe [-- Attachment #1: Type: text/plain, Size: 484 bytes --] On Tue, 13 Sep 2011 15:02:43 +0200 Amadeusz Żołnowski <aidecoe@gentoo.org> wrote: > OT: When I was going through recruitment process, dberkholz pointed to > me that I use things bash4-only. And again: why we need to stick to > ancient 3 version? I would understand pseudo POSIX compatibility, but > what is the benefit of bash3 compatibility while bash4 is stable > already? It was to prevent Arfrever from doing insane things :D. -- Best regards, Michał Górny [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 13:02 ` Amadeusz Żołnowski 2011-09-13 13:12 ` Michał Górny @ 2011-09-13 14:44 ` Donnie Berkholz 2011-09-13 15:58 ` Patrick Lauer 1 sibling, 1 reply; 29+ messages in thread From: Donnie Berkholz @ 2011-09-13 14:44 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1266 bytes --] On 15:02 Tue 13 Sep , Amadeusz Żołnowski wrote: > Excerpts from Joshua Kinard's message of 2011-09-13 14:26:02 +0200: > > > You don't need -n/-z with [[. > > > > > > [[ $var ]] == [[ -n $var ]] > > > [[ ! $var ]] == [[ -z $var ]] > > > > What about other comparisons, like -f, -e, or -d? > > Same as inside [, but no need of quotes inside [[. > > > Also, is this a bash4-only thing, or bash3 and/or bash2 as well? > > I'm not sure. > > OT: When I was going through recruitment process, dberkholz pointed to > me that I use things bash4-only. And again: why we need to stick to > ancient 3 version? I would understand pseudo POSIX compatibility, but > what is the benefit of bash3 compatibility while bash4 is stable > already? It's because people want to pretend that it's possible for incredibly outdated systems (those with bash-3 only) to be updated. We're stuck in this limbo because "we" have apparently decided that just waiting a year, as we used to do, isn't good enough anymore; but at the same time, we don't have a better mechanism in place yet. So we're waffling around, doing nothing. -- Thanks, Donnie Donnie Berkholz Council Member / Sr. Developer Gentoo Linux Blog: http://dberkholz.com [-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 14:44 ` Donnie Berkholz @ 2011-09-13 15:58 ` Patrick Lauer 2011-09-13 16:41 ` Donnie Berkholz 2011-09-14 5:37 ` Ciaran McCreesh 0 siblings, 2 replies; 29+ messages in thread From: Patrick Lauer @ 2011-09-13 15:58 UTC (permalink / raw To: gentoo-dev On 09/13/11 16:44, Donnie Berkholz wrote: > On 15:02 Tue 13 Sep , Amadeusz Żołnowski wrote: >> Excerpts from Joshua Kinard's message of 2011-09-13 14:26:02 +0200: >>>> You don't need -n/-z with [[. >>>> >>>> [[ $var ]] == [[ -n $var ]] >>>> [[ ! $var ]] == [[ -z $var ]] >>> >>> What about other comparisons, like -f, -e, or -d? >> >> Same as inside [, but no need of quotes inside [[. >> >>> Also, is this a bash4-only thing, or bash3 and/or bash2 as well? >> >> I'm not sure. >> >> OT: When I was going through recruitment process, dberkholz pointed to >> me that I use things bash4-only. And again: why we need to stick to >> ancient 3 version? I would understand pseudo POSIX compatibility, but >> what is the benefit of bash3 compatibility while bash4 is stable >> already? > > It's because people want to pretend that it's possible for incredibly > outdated systems (those with bash-3 only) to be updated. Actually it's worse - PMS enforces this, and the only clean way out is to patch/fix/extend PMS to allow bash4 - but that breaks compatibility in silly ways. The proper way to handle that? I'm not sure, since we had a long fight to get PMS to acknowledge bash 3.2 instead of 3.0 I'm mostly ignoring PMS as it doesn't care about reality. > > We're stuck in this limbo because "we" have apparently decided that just > waiting a year, as we used to do, isn't good enough anymore; but at the > same time, we don't have a better mechanism in place yet. So we're > waffling around, doing nothing. > That's not quite correct for this case, but it shows that we need to discuss destructive changes (in the sense that they are not backwards-compatible etc.) to have any decent progress ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 15:58 ` Patrick Lauer @ 2011-09-13 16:41 ` Donnie Berkholz 2011-09-13 17:25 ` Ulrich Mueller 2011-09-14 5:39 ` Ciaran McCreesh 2011-09-14 5:37 ` Ciaran McCreesh 1 sibling, 2 replies; 29+ messages in thread From: Donnie Berkholz @ 2011-09-13 16:41 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1677 bytes --] On 17:58 Tue 13 Sep , Patrick Lauer wrote: > On 09/13/11 16:44, Donnie Berkholz wrote: > > It's because people want to pretend that it's possible for > > incredibly outdated systems (those with bash-3 only) to be updated. > > Actually it's worse - PMS enforces this, and the only clean way out is > to patch/fix/extend PMS to allow bash4 - but that breaks compatibility > in silly ways. > > The proper way to handle that? I'm not sure, since we had a long fight > to get PMS to acknowledge bash 3.2 instead of 3.0 I'm mostly ignoring > PMS as it doesn't care about reality. Thanks for the reminder; I looked, and it turns out that we now have a great precedent. Quoting PMS: "The required bash version was retroactively updated from 3.0 to 3.2 in November 2009 (see http://www.gentoo. org/proj/en/council/meeting-logs/20091109.txt)." So we could just retroactively update it again and let people scream if they're actually affected by this. > > We're stuck in this limbo because "we" have apparently decided that > > just waiting a year, as we used to do, isn't good enough anymore; > > but at the same time, we don't have a better mechanism in place yet. > > So we're waffling around, doing nothing. > > That's not quite correct for this case, but it shows that we need to > discuss destructive changes (in the sense that they are not > backwards-compatible etc.) to have any decent progress Maybe a way to set tree-level dependencies/EAPIs/features is something we seriously need to get going on. -- Thanks, Donnie Donnie Berkholz Council Member / Sr. Developer Gentoo Linux Blog: http://dberkholz.com [-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 16:41 ` Donnie Berkholz @ 2011-09-13 17:25 ` Ulrich Mueller 2011-09-13 17:33 ` Tomáš Chvátal ` (2 more replies) 2011-09-14 5:39 ` Ciaran McCreesh 1 sibling, 3 replies; 29+ messages in thread From: Ulrich Mueller @ 2011-09-13 17:25 UTC (permalink / raw To: gentoo-dev >>>>> On Tue, 13 Sep 2011, Donnie Berkholz wrote: > Thanks for the reminder; I looked, and it turns out that we now have > a great precedent. > Quoting PMS: > "The required bash version was retroactively updated from 3.0 to 3.2 > in November 2009 (see http://www.gentoo. > org/proj/en/council/meeting-logs/20091109.txt)." > So we could just retroactively update it again and let people scream > if they're actually affected by this. If you read the quoted council log, you'll find that the retroactive change was done because usage of bash 3.2 features in the tree was already widespread at that time. This is very different from the current situation, therefore it is not at all a precedent. Ulrich ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 17:25 ` Ulrich Mueller @ 2011-09-13 17:33 ` Tomáš Chvátal 2011-09-13 17:38 ` Amadeusz Żołnowski 2011-09-13 17:40 ` Michał Górny 2 siblings, 0 replies; 29+ messages in thread From: Tomáš Chvátal @ 2011-09-13 17:33 UTC (permalink / raw To: gentoo-dev 2011/9/13 Ulrich Mueller <ulm@gentoo.org>: >>>>>> On Tue, 13 Sep 2011, Donnie Berkholz wrote: > >> Thanks for the reminder; I looked, and it turns out that we now have >> a great precedent. > >> Quoting PMS: > >> "The required bash version was retroactively updated from 3.0 to 3.2 >> in November 2009 (see http://www.gentoo. >> org/proj/en/council/meeting-logs/20091109.txt)." > >> So we could just retroactively update it again and let people scream >> if they're actually affected by this. > I would really like if we do it properly this time. So it is done for goot and does not reappear from time to time. > If you read the quoted council log, you'll find that the retroactive > change was done because usage of bash 3.2 features in the tree was > already widespread at that time. This is very different from the > current situation, therefore it is not at all a precedent. > As is Ulrich saying, it was done because everyone at that point was using such features. Not because we wanted those features to be used. Cheers Tom ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 17:25 ` Ulrich Mueller 2011-09-13 17:33 ` Tomáš Chvátal @ 2011-09-13 17:38 ` Amadeusz Żołnowski 2011-09-13 17:40 ` Michał Górny 2 siblings, 0 replies; 29+ messages in thread From: Amadeusz Żołnowski @ 2011-09-13 17:38 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1001 bytes --] Excerpts from Ulrich Mueller's message of 2011-09-13 19:25:59 +0200: > >>>>> On Tue, 13 Sep 2011, Donnie Berkholz wrote: > > > Thanks for the reminder; I looked, and it turns out that we now have > > a great precedent. > > > Quoting PMS: > > > "The required bash version was retroactively updated from 3.0 to 3.2 > > in November 2009 (see http://www.gentoo. > > org/proj/en/council/meeting-logs/20091109.txt)." > > > So we could just retroactively update it again and let people scream > > if they're actually affected by this. > > If you read the quoted council log, you'll find that the retroactive > change was done because usage of bash 3.2 features in the tree was > already widespread at that time. This is very different from the > current situation, therefore it is not at all a precedent. > > Ulrich So we need to do it “illegally” first to make it “legal”? -- Amadeusz Żołnowski PGP key fpr: C700 CEDE 0C18 212E 49DA 4653 F013 4531 E1DB FAB5 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 490 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 17:25 ` Ulrich Mueller 2011-09-13 17:33 ` Tomáš Chvátal 2011-09-13 17:38 ` Amadeusz Żołnowski @ 2011-09-13 17:40 ` Michał Górny 2011-09-13 18:40 ` Ulrich Mueller 2 siblings, 1 reply; 29+ messages in thread From: Michał Górny @ 2011-09-13 17:40 UTC (permalink / raw To: gentoo-dev; +Cc: ulm [-- Attachment #1: Type: text/plain, Size: 1087 bytes --] On Tue, 13 Sep 2011 19:25:59 +0200 Ulrich Mueller <ulm@gentoo.org> wrote: > >>>>> On Tue, 13 Sep 2011, Donnie Berkholz wrote: > > > Thanks for the reminder; I looked, and it turns out that we now have > > a great precedent. > > > Quoting PMS: > > > "The required bash version was retroactively updated from 3.0 to 3.2 > > in November 2009 (see http://www.gentoo. > > org/proj/en/council/meeting-logs/20091109.txt)." > > > So we could just retroactively update it again and let people scream > > if they're actually affected by this. > > If you read the quoted council log, you'll find that the retroactive > change was done because usage of bash 3.2 features in the tree was > already widespread at that time. This is very different from the > current situation, therefore it is not at all a precedent. The current situation is that you can't even install bash-3.2 systemwide because of the number of packages [ebuilds/eclasses] requiring on bash-4. I myself had to prefix-install bash to test my code against it. -- Best regards, Michał Górny [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 17:40 ` Michał Górny @ 2011-09-13 18:40 ` Ulrich Mueller 2011-09-13 18:47 ` Michał Górny 0 siblings, 1 reply; 29+ messages in thread From: Ulrich Mueller @ 2011-09-13 18:40 UTC (permalink / raw To: Michał Górny; +Cc: gentoo-dev >>>>> On Tue, 13 Sep 2011, Michał Górny wrote: > The current situation is that you can't even install bash-3.2 > systemwide because of the number of packages [ebuilds/eclasses] > requiring on bash-4. Have you filed bug reports for these? Ulrich ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 18:40 ` Ulrich Mueller @ 2011-09-13 18:47 ` Michał Górny 0 siblings, 0 replies; 29+ messages in thread From: Michał Górny @ 2011-09-13 18:47 UTC (permalink / raw To: gentoo-dev; +Cc: ulm [-- Attachment #1: Type: text/plain, Size: 416 bytes --] On Tue, 13 Sep 2011 20:40:12 +0200 Ulrich Mueller <ulm@gentoo.org> wrote: > >>>>> On Tue, 13 Sep 2011, Michał Górny wrote: > > > The current situation is that you can't even install bash-3.2 > > systemwide because of the number of packages [ebuilds/eclasses] > > requiring on bash-4. > > Have you filed bug reports for these? I mean having *DEPEND=">=bash-4". -- Best regards, Michał Górny [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 16:41 ` Donnie Berkholz 2011-09-13 17:25 ` Ulrich Mueller @ 2011-09-14 5:39 ` Ciaran McCreesh 1 sibling, 0 replies; 29+ messages in thread From: Ciaran McCreesh @ 2011-09-14 5:39 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 841 bytes --] On Tue, 13 Sep 2011 11:41:00 -0500 Donnie Berkholz <dberkholz@gentoo.org> wrote: > Thanks for the reminder; I looked, and it turns out that we now have > a great precedent. Quoting PMS: > > "The required bash version was retroactively updated from 3.0 to 3.2 > in November 2009 (see http://www.gentoo. > org/proj/en/council/meeting-logs/20091109.txt)." > > So we could just retroactively update it again and let people scream > if they're actually affected by this. The last time this happened, the Council said "we're doing this once because people have forced our hand, but we're never doing it again". That's not a precedent. > Maybe a way to set tree-level dependencies/EAPIs/features is > something we seriously need to get going on. No need. GLEP 55 solves it with a far lower impact. -- Ciaran McCreesh [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 15:58 ` Patrick Lauer 2011-09-13 16:41 ` Donnie Berkholz @ 2011-09-14 5:37 ` Ciaran McCreesh 1 sibling, 0 replies; 29+ messages in thread From: Ciaran McCreesh @ 2011-09-14 5:37 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 945 bytes --] On Tue, 13 Sep 2011 17:58:15 +0200 Patrick Lauer <patrick@gentoo.org> wrote: > > It's because people want to pretend that it's possible for > > incredibly outdated systems (those with bash-3 only) to be updated. > > Actually it's worse - PMS enforces this, and the only clean way out is > to patch/fix/extend PMS to allow bash4 - but that breaks compatibility > in silly ways. > > The proper way to handle that? I'm not sure, since we had a long fight > to get PMS to acknowledge bash 3.2 instead of 3.0 I'm mostly ignoring > PMS as it doesn't care about reality. The proper fix for this, along with a whole bunch of other things, is GLEP 55. Don't blame the PMS team for that not having been implemented. As for you ignoring the specification, the reason that problems like this exist is precisely because of you doing that. Do you code websites based purely upon what Internet Explorer supports? -- Ciaran McCreesh [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* [gentoo-dev] Re: [RFC] obs eclasses 2011-09-13 12:26 ` Joshua Kinard 2011-09-13 13:02 ` Amadeusz Żołnowski @ 2011-09-20 5:09 ` Steven J Long 1 sibling, 0 replies; 29+ messages in thread From: Steven J Long @ 2011-09-20 5:09 UTC (permalink / raw To: gentoo-dev Joshua Kinard wrote: > On 09/13/2011 07:24, Amadeusz Żołnowski wrote: > >> You don't need -n/-z with [[. >> >> [[ $var ]] == [[ -n $var ]] >> [[ ! $var ]] == [[ -z $var ]] >> Also, you can usually be more succinct with [[ $var ]] || { some code; } for the empty case (as opposed to [[ $var ]] && { something else; } for code run when var is non-empty.) > What about other comparisons, like -f, -e, or -d? Bash's manpage only > says > [[ expression ]] -- it doesn't seem to go into the level of detail (at > least not in the section that I quickly perused) about what flag > operators are necessary or not. > As Amadeusz said, you can't omit the other ones. > Also, is this a bash4-only thing, or bash3 and/or bash2 as well? > It was definitely around in all bash-3 versions, from experience, and it's also a defined behaviour for POSIX sh test or [, tho only guaranteed for XSI systems[1] so I'd be surprised if it weren't in bash-2. > If yes to above, we should get this edited and fixed up, then, because it > uses -z/-n inside [[ ]]: > http://devmanual.gentoo.org/tools-reference/bash/index.html > As Michal said, it doesn't do any harm. imo it'd be better just to add that [[ $var ]] is the same as [[ -n $var ]]. [[ ! $var ]] doesn't seem better than [[ -z $var ]] to my eyes; the latter is clearer imo. (Decrufting ${var} to $var would be more of a help for learners imo; you only need to wrap a simple variable expansion in {} when it's immediately followed by an alphanumeric or underscore character, which would get interpreted as part of its name, which any syntax highlighting editor will show you. In several years of BASH scripting I've only once had an issue with that, in some complex text output.) > Oh, forgot, it won't break initscripts, will it? > Well you wouldn't use [[ in a sh-compatible initscript in any case. There it'd be safest to stick to [ -n "$var" ] (or -z ofc.) [1] http://pubs.opengroup.org/onlinepubs/009695399/utilities/test.html -- #friendly-coders -- We're friendly, but we're not /that/ friendly ;-) ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 11:24 ` Amadeusz Żołnowski 2011-09-13 12:26 ` Joshua Kinard @ 2011-09-13 14:37 ` Michal Hrusecky 1 sibling, 0 replies; 29+ messages in thread From: Michal Hrusecky @ 2011-09-13 14:37 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1580 bytes --] Amadeusz Żołnowski - 13:24 13.09.11 wrote: > Hi, > > > Excerpts from Michal Hrusecky's message of 2011-09-13 13:11:28 +0200: > > Comments and improvements are welcome. > > Just some minor remarks: > > > > [[ -z ${OPENSUSE_RELEASE} ]] || OBS_PROJECT="openSUSE:${OPENSUSE_RELEASE}" > > [[ -n ${OBS_PROJECT} ]] || die "OBS_PROJECT not set!" > > [[ -n ${OBS_PACKAGE} ]] || die "OBS_PACKAGE not set!" > > You don't need -n/-z with [[. But they don't do any harm either, right ;-) > [[ $var ]] == [[ -n $var ]] > [[ ! $var ]] == [[ -z $var ]] > > So: > > [[ ${OPENSUSE_RELEASE} ]] && OBS_PROJECT="openSUSE:${OPENSUSE_RELEASE}" > [[ ${OBS_PROJECT} ]] || die "OBS_PROJECT not set!" > [[ ${OBS_PACKAGE} ]] || die "OBS_PACKAGE not set!" > > > obs-service_src_install() { > > debug-print-function ${FUNCNAME} "$@" > > debug-print "Installing service \"${OBS_SERVICE_NAME}\"" > > exeinto /usr/lib/obs/service > > doexe ${DISTDIR}/${OBS_SERVICE_NAME} > > insinto /usr/lib/obs/service > > doins ${DISTDIR}/${OBS_SERVICE_NAME}.service > > if [[ -n ${ADDITIONAL_FILES} ]]; then > > debug-print "Installing following additional files:" > > debug-print " ${ADDITIONAL_FILES}" > > exeinto /usr/lib/obs/service/${OBS_SERVICE_NAME}.files > > for i in ${ADDITIONAL_FILES}; do > > doexe ${DISTDIR}/$i > > "" just in case. Fixed. -- Michal Hrusecky <miska@gentoo.org> [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 230 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 11:11 [gentoo-dev] [RFC] obs eclasses Michal Hrusecky 2011-09-13 11:24 ` Amadeusz Żołnowski @ 2011-09-13 14:59 ` Donnie Berkholz 2011-09-13 15:55 ` Nirbheek Chauhan 2011-09-14 8:44 ` Michal Hrusecky 2011-09-14 8:56 ` Michal Hrusecky 2011-09-20 8:23 ` [gentoo-dev] " Michał Górny 3 siblings, 2 replies; 29+ messages in thread From: Donnie Berkholz @ 2011-09-13 14:59 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1270 bytes --] On 13:11 Tue 13 Sep , Michal Hrusecky wrote: > # Copyright 1999-2011 Gentoo Foundation > # Distributed under the terms of the GNU General Public License v2 > # $Header: $ > > # @ECLASS: obs-download.eclass Are there going to be lots of packages using this and not the other eclass? I wonder whether there really need to be two of them. > # @MAINTAINER: > # miska@gentoo.org > # @BLURB: Reduces code duplication in the downloading from obs. Could you tell us what "obs" is in the blurb too? I had no clue what this email was about (obs, osc, etc are meaningless to me) until I got down to the eclass description. > # @ECLASS: obs-service.eclass > # @MAINTAINER: > # miska@gentoo.org > # @BLURB: Reduces code duplication in the obs services. > # @DESCRIPTION: > # This eclass makes it easier to package obs services. Based on provided > # information it will all neede variables and takes care of installation. Lots of typos here. > HOMEPAGE="http://en.opensuse.org/openSUSE:OSC" > LICENSE="GPL-2" > SLOT="0" > IUSE="" > RDEPEND+="dev-util/osc" You probably want a space here. RDEPEND+=" dev-util/osc" -- Thanks, Donnie Donnie Berkholz Council Member / Sr. Developer Gentoo Linux Blog: http://dberkholz.com [-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 14:59 ` Donnie Berkholz @ 2011-09-13 15:55 ` Nirbheek Chauhan 2011-09-14 8:44 ` Michal Hrusecky 1 sibling, 0 replies; 29+ messages in thread From: Nirbheek Chauhan @ 2011-09-13 15:55 UTC (permalink / raw To: gentoo-dev On Tue, Sep 13, 2011 at 8:29 PM, Donnie Berkholz <dberkholz@gentoo.org> wrote: >> HOMEPAGE="http://en.opensuse.org/openSUSE:OSC" >> LICENSE="GPL-2" >> SLOT="0" >> IUSE="" >> RDEPEND+="dev-util/osc" > > You probably want a space here. > > RDEPEND+=" dev-util/osc" > Slightly bike-sheddy, but it's less error-prone to use: RDEPEND="dev-util/osc" iirc, portage handles merging of the values of *DEPEND defined in eclasses and ebuilds. -- ~Nirbheek Chauhan Gentoo GNOME+Mozilla Team ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 14:59 ` Donnie Berkholz 2011-09-13 15:55 ` Nirbheek Chauhan @ 2011-09-14 8:44 ` Michal Hrusecky 1 sibling, 0 replies; 29+ messages in thread From: Michal Hrusecky @ 2011-09-14 8:44 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1373 bytes --] Donnie Berkholz - 9:59 13.09.11 wrote: > On 13:11 Tue 13 Sep , Michal Hrusecky wrote: > > # Copyright 1999-2011 Gentoo Foundation > > # Distributed under the terms of the GNU General Public License v2 > > # $Header: $ > > > > # @ECLASS: obs-download.eclass > > Are there going to be lots of packages using this and not the other > eclass? I wonder whether there really need to be two of them. Two more currently. > > # @MAINTAINER: > > # miska@gentoo.org > > # @BLURB: Reduces code duplication in the downloading from obs. > > Could you tell us what "obs" is in the blurb too? I had no clue what > this email was about (obs, osc, etc are meaningless to me) until I got > down to the eclass description. Fixed > > # @ECLASS: obs-service.eclass > > # @MAINTAINER: > > # miska@gentoo.org > > # @BLURB: Reduces code duplication in the obs services. > > # @DESCRIPTION: > > # This eclass makes it easier to package obs services. Based on provided > > # information it will all neede variables and takes care of installation. > > Lots of typos here. Sorry, fixed. > > HOMEPAGE="http://en.opensuse.org/openSUSE:OSC" > > LICENSE="GPL-2" > > SLOT="0" > > IUSE="" > > RDEPEND+="dev-util/osc" > > You probably want a space here. > > RDEPEND+=" dev-util/osc" Thanks, fixed. -- Michal Hrusecky <miska@gentoo.org> [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 230 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 11:11 [gentoo-dev] [RFC] obs eclasses Michal Hrusecky 2011-09-13 11:24 ` Amadeusz Żołnowski 2011-09-13 14:59 ` Donnie Berkholz @ 2011-09-14 8:56 ` Michal Hrusecky 2011-09-14 9:56 ` Ulrich Mueller 2011-09-15 7:35 ` Marijn 2011-09-20 8:23 ` [gentoo-dev] " Michał Górny 3 siblings, 2 replies; 29+ messages in thread From: Michal Hrusecky @ 2011-09-14 8:56 UTC (permalink / raw To: gentoo-dev [-- Attachment #1.1: Type: text/plain, Size: 122 bytes --] Hi, new versions of eclasses after hopefully fixing most of the comments. -- Michal Hrusecky <miska@gentoo.org> [-- Attachment #1.2: obs-download.eclass --] [-- Type: text/plain, Size: 1514 bytes --] # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ # @ECLASS: obs-download.eclass # @MAINTAINER: # miska@gentoo.org # @BLURB: Simplifies downloading from openSUSE Build Service. # @DESCRIPTION: # This eclass constructs OBS_URI based on provided project in openSUSE Build # Service and package name. It can be used later by packages/eclasses to # download actual files. # # All you need to do in order to use it is set OBS_PROJECT and OBS_PACKAGE and # inherit this eclass. It will provide OBS_URI in return which you will prepend # to your files and use in SRC_URI. Alternatively you can just set # OPENSUSE_RELEASE and OBS_PACKAGE and it will give you back OBS_URI for # downloading files from obs projects corresponding to the specified openSUSE # release. # @ECLASS-VARIABLE: OPENSUSE_RELEASE # @DEFAULT_UNSET # @DESCRIPTION: # From which stable openSUSE realease to take files. # @ECLASS-VARIABLE: OBS_PROJECT # @DEFAULT_UNSET # @DESCRIPTION: # In which obs project pakage is. This variable don't have to be set, if # OPENSUSE_RELEASE is provided. # @ECLASS-VARIABLE: OPENSUSE_PACKAGE # @REQUIRED # @DESCRIPTION: # Name of the package we want to take files from. [[ -z ${OPENSUSE_RELEASE} ]] || OBS_PROJECT="openSUSE:${OPENSUSE_RELEASE}" [[ -n ${OBS_PROJECT} ]] || die "OBS_PROJECT not set!" [[ -n ${OBS_PACKAGE} ]] || die "OBS_PACKAGE not set!" OBS_URI="https://api.opensuse.org/public/source/${OBS_PROJECT}/${OBS_PACKAGE}" [-- Attachment #1.3: obs-service.eclass --] [-- Type: text/plain, Size: 2419 bytes --] # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ # @ECLASS: obs-service.eclass # @MAINTAINER: # miska@gentoo.org # @BLURB: Reduces code duplication in the Open Build Service services. # @DESCRIPTION: # This eclass makes it easier to package Open Build Service services. Based on # provided information it will set all needed variables and takes care of # installation. # # @EXAMPLE: # Typical ebuild using obs-service.eclass: # # @CODE # EAPI=4 # # inherit obs-service # # KEYWORDS="" # # DEPEND="" # RDEPEND="${DEPEND}" # # @CODE # @ECLASS-VARIABLE: OBS_SERVICE_NAME # @DESCRIPTION: # Name of the service. If not set, it is taken from ${PN}. # @ECLASS-VARIABLE: OPENSUSE_RELEASE # @DESCRIPTION: # From which stable openSUSE realease to take a package. # @ECLASS-VARIABLE: ADDITIONAL_FILES # @DEFAULT_UNSET # @DESCRIPTION: # If any additional files are needed. case "${EAPI:-0}" in 4) : ;; *) die "EAPI=${EAPI} is not supported" ;; esac HOMEPAGE="http://en.opensuse.org/openSUSE:OSC" LICENSE="GPL-2" SLOT="0" IUSE="" RDEPEND="dev-util/osc" [[ -n ${OBS_SERVICE_NAME} ]] || OBS_SERVICE_NAME=${PN/obs-service-/} [[ -n ${OPENSUSE_RELEASE} ]] || OBS_PROJECT="openSUSE:Tools" DESCRIPTION="Open Build Service client module - ${OBS_SERVICE_NAME} service" OBS_PACKAGE="obs-service-${OBS_SERVICE_NAME}" inherit obs-download SRC_URI="${OBS_URI}/${OBS_SERVICE_NAME}" SRC_URI+=" ${OBS_URI}/${OBS_SERVICE_NAME}.service" for i in ${ADDITIONAL_FILES}; do SRC_URI+=" ${OBS_URI}/${i}" done S="${WORKDIR}" # @FUNCTION: obs-service_src_configure # @DESCRIPTION: # Does nothing. Files are not compressed. obs-service_src_unpack() { debug-print-function ${FUNCNAME} "$@" } # @FUNCTION: obs-service_src_install # @DESCRIPTION: # Does the installation of the downloaded files. obs-service_src_install() { debug-print-function ${FUNCNAME} "$@" debug-print "Installing service \"${OBS_SERVICE_NAME}\"" exeinto /usr/lib/obs/service doexe "${DISTDIR}"/${OBS_SERVICE_NAME} insinto /usr/lib/obs/service doins "${DISTDIR}"/${OBS_SERVICE_NAME}.service if [[ -n ${ADDITIONAL_FILES} ]]; then debug-print "Installing following additional files:" debug-print " ${ADDITIONAL_FILES}" exeinto /usr/lib/obs/service/${OBS_SERVICE_NAME}.files for i in ${ADDITIONAL_FILES}; do doexe "${DISTDIR}"/${i} done fi } EXPORT_FUNCTIONS src_install src_unpack [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 230 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-14 8:56 ` Michal Hrusecky @ 2011-09-14 9:56 ` Ulrich Mueller 2011-09-14 13:34 ` Michal Hrusecky 2011-09-15 7:35 ` Marijn 1 sibling, 1 reply; 29+ messages in thread From: Ulrich Mueller @ 2011-09-14 9:56 UTC (permalink / raw To: gentoo-dev >>>>> On Wed, 14 Sep 2011, Michal Hrusecky wrote: > new versions of eclasses after hopefully fixing most of the comments. > # @ECLASS-VARIABLE: OPENSUSE_RELEASE > # @ECLASS-VARIABLE: OBS_PROJECT > # @ECLASS-VARIABLE: OPENSUSE_PACKAGE Can't this use a single namespace, i.e. either "OBS" or "OPENSUSE"? Otherwise people will get confused ... > [[ -n ${OBS_PACKAGE} ]] || die "OBS_PACKAGE not set!" ... including yourself. ;-) Ulrich ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-14 9:56 ` Ulrich Mueller @ 2011-09-14 13:34 ` Michal Hrusecky 0 siblings, 0 replies; 29+ messages in thread From: Michal Hrusecky @ 2011-09-14 13:34 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 788 bytes --] Ulrich Mueller - 11:56 14.09.11 wrote: > >>>>> On Wed, 14 Sep 2011, Michal Hrusecky wrote: > > new versions of eclasses after hopefully fixing most of the comments. > > > # @ECLASS-VARIABLE: OPENSUSE_RELEASE > > # @ECLASS-VARIABLE: OBS_PROJECT > > # @ECLASS-VARIABLE: OPENSUSE_PACKAGE > > Can't this use a single namespace, i.e. either "OBS" or "OPENSUSE"? > Otherwise people will get confused ... Ok, fixed the documentation, replaced OPENSUSE_PACKAGE with OBS_PACKAGE. OBS is whole service that can host pretty much anything. OPENSUSE_RELEASE is just to make it easier to take files from one particular project (that I'll be using for "stable" releases of some packages). So it has some reasons to have different prefix... -- Michal Hrusecky <miska@gentoo.org> [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 230 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-14 8:56 ` Michal Hrusecky 2011-09-14 9:56 ` Ulrich Mueller @ 2011-09-15 7:35 ` Marijn 2011-09-15 8:18 ` Michal Hrusecky 1 sibling, 1 reply; 29+ messages in thread From: Marijn @ 2011-09-15 7:35 UTC (permalink / raw To: gentoo-dev; +Cc: Michal Hrusecky -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi Michal, On 09/14/11 10:56, Michal Hrusecky wrote: > Hi, > > new versions of eclasses after hopefully fixing most of the > comments. > The download eclass speaks about ``openSUSE Build Service'' while the other calls it the ``Open Build Service''. I note that the command line tool dev-util/osc also speaks about ``Open Build Service''. Others have remarked on this, but could you please explain why there are (going to be) ebuilds that don't/cannot use the full eclass? What numbers are we talking about? How about using open-build-service in the name of the eclass(es)? Finally, has this seen any testing in an overlay? Marijn -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.18 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk5xqtgACgkQp/VmCx0OL2w+aACffzDKZkDMOiKE55hh5CAS3b27 JA0AnRDZmVM3W/BuLBK0VPQEmIsYh0u6 =S84c -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-15 7:35 ` Marijn @ 2011-09-15 8:18 ` Michal Hrusecky 2011-09-15 16:30 ` [gentoo-dev] " Duncan 0 siblings, 1 reply; 29+ messages in thread From: Michal Hrusecky @ 2011-09-15 8:18 UTC (permalink / raw To: gentoo-dev; +Cc: Michal Hrusecky, hkBst -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Marijn - 9:35 15.09.11 wrote: > Hi Michal, > > On 09/14/11 10:56, Michal Hrusecky wrote: > > Hi, > > > > new versions of eclasses after hopefully fixing most of the > > comments. > > > > The download eclass speaks about ``openSUSE Build Service'' while the > other calls it the ``Open Build Service''. I note that the command > line tool dev-util/osc also speaks about ``Open Build Service''. Things are a little bit complicated. Once upon a time, there were some people unhappy with the process of building packages for SUSE/openSUSE and they created server application and called it "openSUSE Build Service". As "openSUSE Build Service" is quite a long name, everybody started calling it just 'obs'. Even developers themselves. As obs supported building packages for many distributions and was open source, some other companies and organizations started using it (for example Meego). Some didn't even know what 'obs' stands for and assumed, that 'o' is for 'Open'. But some other knew and was reluctant to use it because of openSUSE in it's name. So it got renamed to 'Open Build Service' (so the 'obs' abbreviation will still work). But the original first running publicly available instance is still called 'openSUSE Build Service'. So we've got a software, which is called "Open Build Service" and tools like dev-util/osc and it's plugins (obs services - what is second eclass intended for) that works with any instance. And we've got "openSUSE Build Service" which is basically build.opensuse.org server running Open Build Service :-D And as some SUSE guys are lazy to be a good upstream, they publish some source code and packages just through the openSUSE Build Service (that's what is the first eclass good for). > Others have remarked on this, but could you please explain why there > are (going to be) ebuilds that don't/cannot use the full eclass? What > numbers are we talking about? Currently, there are two more ebuilds that can make a use of obs-download.eclass: 'dev-util/osc' and 'dev-util/suse-build'. It is not that much of code duplication, but I think it could make ebuilds more readable. > How about using open-build-service in the name of the eclass(es)? I personally dislike long file names and obs is well known abbreviation (in my google search, second link is http://guild.opensuse.org and first http://en.wikipedia.org/wiki/OBS which also list OBS as Open Build Service), although a little bit ambiguous. If it would be hard requirement for getting them in, I would consider expanding the 'obs', but personally I would prefer not to. > Finally, has this seen any testing in an overlay? Only locally - on my computer. Currently I have 3 services (osc plugins) that I needed to commit stuff with osc from git. - -- Michal Hrusecky <miska@gentoo.org> -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.18 (GNU/Linux) iF4EAREIAAYFAk5xtNwACgkQpMQOFjUY7FXlQwEAqyoRWVzPxdq7Bf43wnPaeCXr o/jw7aKw8bCYokTEDlgA/306yyqBmePvSast4nOJJSg6KPi6QcLusC81QJJlKu9K =I8KK -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 29+ messages in thread
* [gentoo-dev] Re: [RFC] obs eclasses 2011-09-15 8:18 ` Michal Hrusecky @ 2011-09-15 16:30 ` Duncan 0 siblings, 0 replies; 29+ messages in thread From: Duncan @ 2011-09-15 16:30 UTC (permalink / raw To: gentoo-dev Michal Hrusecky posted on Thu, 15 Sep 2011 10:18:36 +0200 as excerpted: >> How about using open-build-service in the name of the eclass(es)? > > I personally dislike long file names and obs is well known abbreviation > (in my google search, second link is http://guild.opensuse.org and first > http://en.wikipedia.org/wiki/OBS which also list OBS as Open Build > Service), although a little bit ambiguous. If it would be hard > requirement for getting them in, I would consider expanding the 'obs', > but personally I would prefer not to. Taking a hint from the existing eclass name patterns, I'd strongly urge open-build.eclass or the like, over obs.eclass, which is intuitively read as "obsolete" (or in a medical context, obstetrics), here. Similarly with its vars and functions. obs_* is simply not immediately readable to many of those who may end up looking at ebuilds using it (I'm not the only one who has mentioned it), and were it me proposing it, I'd be particularly anxious to avoid the negative implications and confusion of someone reading "obsolete" into such references. But of course I'm not the primary target audience or the person that's going to end up typing it in repeatedly, so... -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-13 11:11 [gentoo-dev] [RFC] obs eclasses Michal Hrusecky ` (2 preceding siblings ...) 2011-09-14 8:56 ` Michal Hrusecky @ 2011-09-20 8:23 ` Michał Górny 2011-09-20 9:26 ` Tomáš Chvátal 3 siblings, 1 reply; 29+ messages in thread From: Michał Górny @ 2011-09-20 8:23 UTC (permalink / raw To: gentoo-dev; +Cc: miska [-- Attachment #1: Type: text/plain, Size: 404 bytes --] On Tue, 13 Sep 2011 13:11:28 +0200 Michal Hrusecky <miska@gentoo.org> wrote: > please take a look at attached eclasses. Purpose is to make > installation of obs services (plugins for osc) easier. > > Comments and improvements are welcome. I don't get the concept of having two eclasses for this. The first one looks more like a thirdpartymirrors entry. -- Best regards, Michał Górny [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 29+ messages in thread
* Re: [gentoo-dev] [RFC] obs eclasses 2011-09-20 8:23 ` [gentoo-dev] " Michał Górny @ 2011-09-20 9:26 ` Tomáš Chvátal 0 siblings, 0 replies; 29+ messages in thread From: Tomáš Chvátal @ 2011-09-20 9:26 UTC (permalink / raw To: gentoo-dev 2011/9/20 Michał Górny <mgorny@gentoo.org>: > On Tue, 13 Sep 2011 13:11:28 +0200 > Michal Hrusecky <miska@gentoo.org> wrote: > >> please take a look at attached eclasses. Purpose is to make >> installation of obs services (plugins for osc) easier. >> >> Comments and improvements are welcome. > > I don't get the concept of having two eclasses for this. The first one > looks more like a thirdpartymirrors entry. > Not really, you can't use variables in third-party mirrors, and storing there all opensuse releases or opensuse projects to check is REALLY insane as the package is usually just on one project. So it is not a "mirror" at all, rather one download url with really complex path. Tom ^ permalink raw reply [flat|nested] 29+ messages in thread
end of thread, other threads:[~2011-09-20 9:27 UTC | newest] Thread overview: 29+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-09-13 11:11 [gentoo-dev] [RFC] obs eclasses Michal Hrusecky 2011-09-13 11:24 ` Amadeusz Żołnowski 2011-09-13 12:26 ` Joshua Kinard 2011-09-13 13:02 ` Amadeusz Żołnowski 2011-09-13 13:12 ` Michał Górny 2011-09-13 14:44 ` Donnie Berkholz 2011-09-13 15:58 ` Patrick Lauer 2011-09-13 16:41 ` Donnie Berkholz 2011-09-13 17:25 ` Ulrich Mueller 2011-09-13 17:33 ` Tomáš Chvátal 2011-09-13 17:38 ` Amadeusz Żołnowski 2011-09-13 17:40 ` Michał Górny 2011-09-13 18:40 ` Ulrich Mueller 2011-09-13 18:47 ` Michał Górny 2011-09-14 5:39 ` Ciaran McCreesh 2011-09-14 5:37 ` Ciaran McCreesh 2011-09-20 5:09 ` [gentoo-dev] " Steven J Long 2011-09-13 14:37 ` [gentoo-dev] " Michal Hrusecky 2011-09-13 14:59 ` Donnie Berkholz 2011-09-13 15:55 ` Nirbheek Chauhan 2011-09-14 8:44 ` Michal Hrusecky 2011-09-14 8:56 ` Michal Hrusecky 2011-09-14 9:56 ` Ulrich Mueller 2011-09-14 13:34 ` Michal Hrusecky 2011-09-15 7:35 ` Marijn 2011-09-15 8:18 ` Michal Hrusecky 2011-09-15 16:30 ` [gentoo-dev] " Duncan 2011-09-20 8:23 ` [gentoo-dev] " Michał Górny 2011-09-20 9:26 ` Tomáš Chvátal
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox