Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
User Guide / Glossary

Glossary

.changes File

In OBS, a file with the file extension .changes to store changelog information.

See also Changelog.

API

API stands for application programming interface. It lets your product or service communicate with other products and services without having to know how they’re implemented.

The OBS API is located here: https://api.opensuse.org.

The documentation for the API is located here: https://api.opensuse.org/apidocs.

AppImage

An application and its dependencies packaged as a single file which can run on many distributions without unpacking or installing.

Appliance

An image built and preconfigured for a specific purpose. Appliances usually consist of a combination of an application (for example, a Web server), its configuration, and an operating system (for example, SUSE Linux Enterprise Server). Appliances can be copied as-is onto a hard disk, an SSD, or started as a virtual machine (deployed).

See also Operating System Image, Image (Image File).

Archive (Archive File)

An archive file contains a representation of usually multiple files and directories. Usually, archive files are also compressed. Archive files are the basis for binary packages (Binary Package (Binary)).

Attribute

Attributes can be added to projects or packages to add meta information or to trigger actions. For example, you can use the attribute OBS:AutoCleanup to delete a project after a certain amount of time.

Binary Package (Binary)

An archive file that contains an installable version of software and metadata. The metadata includes references to the dependencies of the main software. Dependencies are packaged as additional binary packages.

Formats of binary packages include RPM and DEB. In the OBS context, binary packages are sometimes also called binaries.

See also Container, Operating System Image, Source Package, Deb, RPM, KIWI, Archive (Archive File).

Branch

Personal copy of another repository that lives on your home project. A branch allows you to make changes without affecting the original repository. You can either delete the branch or merge it into the original repository with a submit request.

See also Submit Request.

Bug

Issue that documents incorrect or undesirable behaviour

Bugowner

In OBS, Bugowner is a user role which can be set for a project or a package. However, ideally, set this role for individual packages only. Users with this role can only read data but they are responsible for reacting to bug reports.

See also Maintainer.

Build

Generating ready-to-publish binaries, usually for a specific distribution and architecture.

Build Log

Output of the build process of a certain package.

See also Build.

Build Recipe

Generic term for a recipe file for creating a package. A build recipe includes metadata, instructions, requirements, and changelogs. For RPM-based systems like SUSE, a .spec file is used and contains all the previous points. Debian-based systems use a debian directory which splits all the information.

See also Spec File.

Build Requirement

Package requirements that are needed to create or build a specific package.

See also Installation Requirement, Build Recipe.

Build Result

The current state of a package. Example of a build result could be succeeded, failed, blocked, etc.

Build Root

Directory where the osc command copies, patches, builds, and create packages. By default, the build root is located in /var/tmp/build-root/BUILD_TARGET.

See also Build Target.

Build Target

Specific operating systems and architecture to build for.

Changelog

Listing of a high-level overview sorted by date. An entry of a changelog can contain information about version updates, bug and security fixes, incompatible changes, or changes related to the distribution.

See also .changes File.

Commit

A record of a change to one or more files. Each record contains the revision, the author, the date and time, a commit checksum, an optional request number, and a log message.

See also Revision.

Container

An image file that contains a deployable version of software and metadata. Dependencies of the main software are also included, such as additional libraries.

Unlike operating system images, containers do not include an operating system. Unlike binary packages, containers are deployed and not installed. Formats of containers include AppImage, Docker, Snap, and Flatpak.

See also Binary Package (Binary), Operating System Image, Image (Image File).

Deb

A package format created and used by the Debian distribution.

See also Package, RPM.

Decision

Decision made by a moderator (Cleared or Favor) when they receive a report of problematic content or user.

Dependency

See Requirement.

Devel Project

A set of related packages that share certain features. For example, the devel project devel:languages:python stores all packages related to the Python programming language.

See also Home Project, Project.

Diff

See Patch.

DISTURL

The DISTURL is a unique identifier of a source and its build setup. It is written usually written inside of the build result to be able to identify the origin. A DISTURL is structured as obs://OBS_NAME/PROJECT/REPOSITORY/REVISION-PACKAGE. It can be shown for example via

  • RPM packages: rpm -q --qf '%{DISTURL}\n' PACKAGE_NAME

  • Locally built container images: podman inspect IMAGE_ID | grep org.openbuildservice.disturl

  • Container images built on Open Build Service: skopeo inspect docker://URL | grep org.openbuildservice.disturl

Docker

Docker is a lightweight virtualization solution to run multiple virtual units (containers) simultaneously on a single control host.

See also Container.

Download Repository

An area containing built packages available for download and installation through Zypper or YaST. The download repository belongs to a project and is specific to a distribution. An example of a download repository could be http://download.opensuse.org/repositories/PROJECT/openSUSE_Tumbleweed/.

EULA

End User License Agreement. For software that needs a special license (usually non-open source) which the user needs to agree to before installing.

Fix

See Patch.

Flags

A set of switches that determine the state of package or repository. This includes building, publishing, and generating debug information.

GA Project

The GA (general availability) project builds an initial release of a product. It gets frozen after releasing the product. All further updates get released via the Update Project of this project.

GPG Key

An encryption key pair that in the context of OBS is used to verify the owner of the repository and packages.

Home Project

Working area in OBS for uploading and building packages. Each home project starts with home:USERNAME.

See also Project.

Image (Image File)

An image file contains a bit-wise representation of the layout of a block device. Some types of image files are compressed. OBS allows building multiple types of image:

Operating System Image, Container
Image Description

Specification to define an appliance built by KIWI. The image description is a collection of files directly used by KIWI (config.xml and *.kiwi), scripts, or configuration data to customize certain parts of the KIWI build process.

See also KIWI.

Incident

Describes a specific problem and the required updates. If the problem exists for multiple code streams, one incident covers all of them. An incident is started by creating a maintenance incident project and the update get built here.

Installation Requirement

Package requirements that are needed when the package is installed.

KIWI

A tool to build operating system images. It can create images for Linux supported hardware platforms or for virtualization systems.

See also Image (Image File).

License

Written contract to specify permissions for use and distribution of software.

See also Project.

A concept that defines a relationship between a source and a target repository.

See also Project.

Maintainer

In OBS, Maintainer is a user role which can be set for a project or a package. Users that have this role in a project can add, modify, and remove packages and subprojects, accept submit requests, and change metadata.

See also Bugowner.

Maintenance Project

A project without sources and binaries, defined by the maintenance team. Incidents are created as sub projects of this project.

See also Incident.

OBS Package

OBS packages contain the sources that are necessary to build one or more binary packages or containers. The content of OBS packages varies. In general, there is always a source file (such as a TAR archive of the upstream sources) and a build recipe.

To build an RPM package in OBS, you need a spec file as your build recipe, for example. An OBS package can also contain other files, such as a change log and patches.

OBS packages, unlike the name package suggests, do not consist of a single file. Instead, they are directories of a version-controlled repository. However, unlike most directories, they cannot contain subdirectories. (You can use subdirectories to simplify your work with the checked-out package but you cannot submit these directories.)

Open Build Service (OBS)

A Web service to build binary packages, containers and operating system images from source.

The term Open Build Service is used to speak about the server part of the build service. Unlike the term openSUSE Build Service, the term Open Build Service refers to all instances.

openSUSE Build Service

A specific Web service instance of Open Build Service (OBS) from the openSUSE project at http://build.opensuse.org.

Operating System Image

An image file that contains an operating system. The operating system can be either installable or deployable. Depending on their purpose, operating system images are classified into:

Product Image, Appliance, Virtual Machine Image

Formats of operating system images include ISO, Virtual Disk, and PXE Root File System.

See also Binary Package (Binary), Image (Image File), KIWI.

osc

A command line tool to work with OBS instances. The acronym osc stands for openSUSE commander. osc works similarly to SVN or Git.

See also Open Build Service (OBS), https://github.com/openSUSE/osc.

Overlay File

A directory structure with files and subdirectories used by KIWI. This directory structure is packaged as a file (root.tar.gz) or stored below a directory (named root). The contents of the directory structure is copied over the existing file system (overlaid) of the appliance root. This includes permissions and attributes as a supplement.

See also Appliance, KIWI.

Package

OBS handles very different types of software package:

Source Package, OBS Package, Binary Package (Binary)

See also Container.

Package Repository

A place where installable packages are available. This can be either from a media like CD, DVD, or from a remote online repository.

Official repositories can divided into oss software (licensed under an open source license) and non-oss (for software released under other. non-open source licenses). Additionally, there are update source, and debug repositories as well.

Package Requirement

See Requirement.

Patch

Textual differences between two versions of a file.

See also Patch File.

Patch File

A file that contains a patch with the file extension .diff or .patch.

See also Patch.

Product Image

An image that allows installing an operating system, usually from a removable medium, such as a USB disk or a DVD onto a hard disk or SSD.

Live images are a special case of operating system images. They can be run directly a USB disk or DVD and are often but not always installable.

See also Operating System Image, Image (Image File).

Project

Unit which defines access control, repositories, architectures, and a set of packages containing sources.

Project Configuration

Settings to define the setup of the build system, usually to switch on or off certain features during the build or to handle circular dependencies.

See also Project.

Publishing

Finished process when a package is successfully built and available in the download repository.

See also Download Repository.

Release Project

A release project is hosting a release repository which is not building any packages ever. It is only used to copy sources and binaries to this project on a release event.

Repo File

A file with the name PROJECT.repo. inside the download repository. The file contains information about the name of the repository, the repository type, and references to the download repository and the GPG key.

See also Download Repository.

Repository

A distribution-specific area that holds dependencies required for building a package.

See also Download Repository.

Requirement

In the OBS context, package requirements that are needed to create, build, or install a package.

See also Build Requirement, Installation Requirement.

Revision

A unique numeric identifier of a commit.

See also Commit.

RPM

A package format. It stands for recursive acronym RPM Package Manager. Mainly used by SUSE, Red Hat, u.a.

See also Deb, Package.

Sandbox

Isolated region of a host system which runs either a virtual machine or a change root environment.

See also Build Root.

Service File

An XML file that contains metadata required for building a package. This includes version information, upstream source repository, and actions.

Source

Original form, mostly written in a computer language.

See also Package.

See Link.

Source Package

Source packages contain content similar to an OBS package but they are packaged in an archive file. They are also meant to allow building a single binary package or container format only. However, source packages allow rebuilding outside of an Open Build Service context.

An example of source packages are SRPMs which contain the source for accompanying RPM binary packages.

See also Binary Package (Binary), Archive (Archive File).

Source Service

A tool to validate, generate, or modify a source in a trustable way.

See also Source.

Spec File

A file that contains metadata and build instructions. Metadata includes a general package description and dependencies required for building and installing the package.

See also Build Recipe, Patch, Source.

Submit Request

Asking for integrating changes from a branched project.

Subproject

A child of a parent project.

See also Devel Project, Home Project, Project.

SUSE Package Hub

An OBS project reachable under openSUSE:Backports. It is a subset of openSUSE Factory which does not contain version updates and does not conflict with official packages supported by SUSE Linux Enterprise.

Target

A specific distribution and architecture, for example, openSUSE Tumbleweed for x86-64. Also referenced as build target.

Update Project

A project which provides official updates for the products generated in the GA Project. The update project usually links sources and repositories against the GA Project.

See also Release Project, GA Project.

Virtual Machine Image

An image which is built (and sometimes preconfigured) to be the basis of virtual machines. Such images can usually be copied to the target computer and run as-is. As such, there is some overlap between virtual machine images and appliances.

See also Operating System Image, Image (Image File).

Watchlist

A list of repositories that the user is interested in, available in the OBS Web UI.

Working Copy

See Working Directory.

Working Directory

A directory on your local machine as a result from a osc checkout call for working and building before submitting your changes to an OBS instance.

Zypper

A command line package manager to access repositories, solve dependencies, install packages, and more.