summaryrefslogtreecommitdiff
path: root/eclass/obs-download.eclass
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /eclass/obs-download.eclass
reinit the tree, so we can have metadata
Diffstat (limited to 'eclass/obs-download.eclass')
-rw-r--r--eclass/obs-download.eclass42
1 files changed, 42 insertions, 0 deletions
diff --git a/eclass/obs-download.eclass b/eclass/obs-download.eclass
new file mode 100644
index 000000000000..5ed65410c51d
--- /dev/null
+++ b/eclass/obs-download.eclass
@@ -0,0 +1,42 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: obs-download.eclass
+# @MAINTAINER:
+# suse@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 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 it 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 project corresponding to the specified openSUSE
+# release.
+
+# @ECLASS-VARIABLE: OPENSUSE_RELEASE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# From which openSUSE realease to take files.
+# Eg.: 12.1, 12.2, Factory
+
+# @ECLASS-VARIABLE: OBS_PROJECT
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# In which obs project pakage is.
+# This variable does not have to be set and is overriden, if
+# OPENSUSE_RELEASE is provided.
+
+# @ECLASS-VARIABLE: OBS_PACKAGE
+# @DESCRIPTION:
+# Name of the package we want to take files from.
+# By default taken from ${PN}.
+
+[[ -z ${OPENSUSE_RELEASE} ]] || OBS_PROJECT="openSUSE:${OPENSUSE_RELEASE}"
+[[ -n ${OBS_PROJECT} ]] || die "OBS_PROJECT not set!"
+[[ -n ${OBS_PACKAGE} ]] || OBS_PACKAGE="${PN}"
+
+OBS_URI="https://api.opensuse.org/public/source/${OBS_PROJECT}/${OBS_PACKAGE}"