osc - openSUSE build service command-line tool.
openSUSE build service command-line tool.
- add
- Mark files to be added upon the next commit
In case a URL is given the file will get downloaded and registered to be downloadedby the server as well via the download_url source service.
This is recommended for release tar balls to track their source and to helpothers to review your changes esp. on version upgrades.
usage:
osc add URL [URL...]
osc add FILE [FILE...]
- addchannels
- Add channels to project.
The command adds all channels which are defined to be used for a given source package.The source link target is used to lookup the channels. The command can beused for a certain package or for all in the specified project.
In case no channel is defined the operation is just returning.
Examples:
osc addchannels [PROJECT [PACKAGE]]Options:
-h, --help show this help message and exit
-e, --enable-all
Enable all added channels including the ones disabled
by default.
-s, --skip-disabled
Skip disabled channels. Otherwise the source gets
added, but not the repositories.
- addremove (ar)
- Adds new files, removes disappeared files
Adds all files new in the local copy, and removes all disappeared files.
ARG, if specified, is a package working copy.
Usage:
osc addremove [ARGS...]
Options:
-h, --help show this help message and exit
-r, --recursive
If CWD is a project dir then scan all package dirs as
well
- aggregatepac
- "Aggregate" a package to another package
Aggregation of a package means that the build results (binaries) of apackage are basically copied into another project.This can be used to make packages available from building that areneeded in a project but available only in a different project. Notethat this is done at the expense of disk space. Seehttp://en.opensuse.org/openSUSE:Build_Service_Tips_and_Tricks#link_and_aggregatefor more information.
The DESTPAC name is optional; the source packages' name will be used ifDESTPAC is omitted.
usage:
osc aggregatepac SOURCEPRJ SOURCEPAC DESTPRJ [DESTPAC]Options:
-h, --help show this help message and exit
-d, --disable-publish
disable publishing of the aggregated package
-m SRC=TARGET[,SRC=TARGET], --map-repo=SRC=TARGET[,SRC=TARGET]
Allows repository mapping(s) to be given as
SRC=TARGET[,SRC=TARGET]
--nosources
ignore source packages when copying build results to
destination project
- api
- Issue an arbitrary request to the API
Useful for testing.
URL can be specified either partially (only the path component), or fullywith URL scheme and hostname ('http://...').
Note the global -A and -H options (see osc help).
Examples:
osc api /source/home:user
osc api -X PUT -T /etc/fstab source/home:user/test5/myfstab
osc api -e /configuration
Usage:
osc api URL
Options:
-h, --help show this help message and exit
-a NAME STRING, --add-header=NAME STRING
add the specified header to the request
-T FILE, -f FILE, --file=FILE
specify filename to upload, uses PUT mode by default
-d STRING, --data=STRING
specify string data for e.g. POST
-e, --edit GET, edit and PUT the location
-X HTTP_METHOD, -m HTTP_METHOD, --method=HTTP_METHOD
specify HTTP method to use (GET|PUT|DELETE|POST)
- branch (bco, branchco, getpac)
- Branch a package
[See http://en.opensuse.org/openSUSE:Build_Service_Collaborationfor information on this topic.]
Create a source link from a package of an existing project to a newsubproject of the requesters home project (home:branches:)
The branched package will live in
home:USERNAME:branches:PROJECT/PACKAGEif nothing else specified.
With getpac or bco, the branched package will come from one of
openSUSE:Factory(list of projects from oscrc:getpac_default_project)if nothing else is specfied on the command line.
In case of branch errors, where the source has currently mergeconflicts use --linkrev=base option.
usage:
osc branch
osc branch SOURCEPROJECT SOURCEPACKAGE
osc branch SOURCEPROJECT SOURCEPACKAGE TARGETPROJECT
osc branch SOURCEPROJECT SOURCEPACKAGE TARGETPROJECT TARGETPACKAGE
osc getpac SOURCEPACKAGE
osc bco ...Options:
-h, --help show this help message and exit
--add-repositories-rebuild=add_repositories_rebuild
specify the used rebuild strategy for new repositories
--add-repositories-block=add_repositories_block
specify the used block strategy for new repositories
--linkrev=linkrev
specify the used revision in the link target.
-r rev, --revision=rev
branch against a specific revision
-N, --new-package
create a branch pointing to a not yet existing package
-M, --maintenance
Create project and package in maintenance mode
-m TEXT, --message=TEXT
specify message TEXT
--noaccess Create a hidden project
--extend-package-names
Extend packages names with project name as suffix
--add-repositories
Add repositories to target project (happens by default
when project is new)
-f, --force
force branch, overwrite target
-c, --checkout
Checkout branched package afterwards using "co -e
-S"('osc bco' is a shorthand for this option)
--nodevelproject
do not follow a defined devel project (primary project
where a package is developed)
- build
- Build a package on your local machine
You need to call the command inside a package directory, which should be abuildsystem checkout. (Local modifications are fine.)
The arguments REPOSITORY and ARCH can be taken from the first two columnsof the 'osc repos' output. BUILD_DESCR is either a RPM spec file, or aDebian dsc file.
The command honours packagecachedir, build-root and build-uidsettings in oscrc, if present. You may want to set su-wrapper = 'sudo'in oscrc, and configure sudo with option NOPASSWD for /usr/bin/build.
If neither --clean nor --noinit is given, build will reuse an existingbuild-root again, removing unneeded packages and add missing ones. Thisis usually the fastest option.
If the package doesn't exist on the server please use the --local-packageoption.If the project of the package doesn't exist on the server please use the--alternative-project <alternative-project> option:Example:
osc build [OPTS] --alternative-project openSUSE:10.3 standard i586 BUILD_DESCR
usage:
osc build [OPTS] REPOSITORY ARCH BUILD_DESCR
osc build [OPTS] REPOSITORY ARCH
osc build [OPTS] REPOSITORY (ARCH = hostarch, BUILD_DESCR is detected automatically)
osc build [OPTS] ARCH (REPOSITORY = build_repository (config option), BUILD_DESCR is detected automatically)
osc build [OPTS] BUILD_DESCR (REPOSITORY = build_repository (config option), ARCH = hostarch)
osc build [OPTS] (REPOSITORY = build_repository (config option), ARCH = hostarch, BUILD_DESCR is detected automatically)
# Note:# Configuration can be overridden by envvars, e.g.# OSC_SU_WRAPPER overrides the setting of su-wrapper.# OSC_BUILD_ROOT overrides the setting of build-root.# OSC_PACKAGECACHEDIR overrides the setting of packagecachedir.
Options:
-h, --help show this help message and exit
--nopreinstallimage, --no-preinstallimage
Do not use preinstall images for creating the build
root.
--trust-all-projects
trust packages from all projects
--host=HOST
perform the build on a remote server -
userAATTserver:~/remote/directory
--oldpackages=DIR
take previous build from DIR (special values: _self,
_link)
--download-api-only
only fetch packages from the api
--disable-cpio-bulk-download
disable downloading packages as cpio archive from api
--release=N
set release number of the package to N
-b, --baselibs
Create -32bit/-64bit/-x86 rpms for other architectures
--disable-debuginfo
disable build of debuginfo packages
-d, --debuginfo
also build debuginfo sub-packages
--alternative-project=PROJECT
specify the build target project
--target=TARGET
define target platform
--vm-telnet=TELNET
Launch a telnet server inside of VM build
--vm-type=TYPE
use VM type TYPE (e.g. kvm)
--vm-memory=MEMORY
use given MB for VM
--linksources
use hard links instead of a deep copied source
--local-package
build a package which does not exist on the server
--build-uid=uid:gid|"caller"
specify the numeric uid:gid pair to assign to the
unprivileged "abuild" user or use "caller" to use the
current user uid:gid
--userootforbuild
Run build as root. The default is to build as
unprivileged user. Note that a line "# norootforbuild"
in the spec file will invalidate this option.
--build-opt=OPT
pass option OPT to the build command
--define='X Y'
define macro X with value Y
--without=X
disable feature X for build
--with=X enable feature X for build
--ccache use ccache to speed up rebuilds
--icecream=N
use N parallel build jobs with icecream
-t N, --threads=N
Compile with N threads
-j N, --jobs=N
Compile with N jobs
--root=ROOT
Build in specified directory
-x PAC, --extra-pkgs=PAC
Add this package when installing the build-root
-M MPAC, --multibuild-package=MPAC
Build the specified multibuild package
-k DIR, --keep-pkgs=DIR
Save built packages into this directory
-p DIR, --prefer-pkgs=DIR
Prefer packages from this directory when installing
the build-root
--noservice, --no-service
Skip run of local source services as specified in
_service file.
--no-verify, --noverify
Skip signature verification (via pgp keys) of packages
used for build. (Global config in oscrc: no_verify)
--nochecks, --no-checks
Do not run build checks on the resulting packages.
--noinit, --no-init
Skip initialization of build root and start with build
immediately.
--overlay=OVERLAY
Copy overlay filesystem to buildroot after installing
all RPMs .
--rsync-dest=RSYNCDESTPATH
Copy folder to buildroot after installing all RPMs.
Use together with --rsync-src. This is the path on the
TARGET filesystem e.g.
/usr/src/packages/BUILD/linux-2.6 .
--rsync-src=RSYNCSRCPATH
Copy folder to buildroot after installing all RPMs.
Use together with --rsync-dest. This is the path on
the HOST filesystem e.g. /tmp/linux-kernel-tree. It
defines RSYNCDONE 1 .
--no-changelog
don't update the package changelog from a changes file
-l, --preload
Preload all files into the cache for offline operation
-o, --offline
Start with cached prjconf and packages without
contacting the api server
--clean Delete old build root before initializing it
- buildconfig
- Shows the build config
Shows the build configuration which is used in building a package.This command is mostly used internally by the 'build' command.
The returned data is the project-wide build configuration in a formatwhich is directly readable by the build script. It contains RPM macrosand BuildRequires expansions, for example.
The argument REPOSITORY an be taken from the first column of the
'osc repos' output.
usage:
osc buildconfig REPOSITORY (in pkg or prj dir)
osc buildconfig PROJECT REPOSITORY
- buildhistory (buildhist)
- Shows the build history of a package
The arguments REPOSITORY and ARCH can be taken from the first two columnsof the 'osc repos' output.
usage:
osc buildhist REPOSITORY ARCHITECTURE
osc buildhist PROJECT PACKAGE REPOSITORY ARCHITECTUREOptions:
-h, --help show this help message and exit
-M MPAC, --multibuild-package=MPAC
Show the buildhistory of the specified multibuild
package
-l limit, --limit=limit
for setting the number of results
--csv generate output in CSV (separated by |)
- buildinfo
- Shows the build info
Shows the build "info" which is used in building a package.This command is mostly used internally by the 'build' subcommand.It needs to be called from within a package directory.
The BUILD_DESCR argument is optional. BUILD_DESCR is a local RPM specfileor Debian "dsc" file. If specified, it is sent to the server, and thebuildinfo will be based on it. If the argument is not supplied, thebuildinfo is derived from the specfile which is currently on the sourcerepository server.
The returned data is XML and contains a list of the packages used inbuilding, their source, and the expanded BuildRequires.
The arguments REPOSITORY and ARCH are optional. They can be taken fromthe first two columns of the 'osc repos' output. If not specified,REPOSITORY defaults to the 'build_repositoy' config entry in your 'oscrc'and ARCH defaults to your host architecture.
usage:
in a package working copy:
osc buildinfo [OPTS] REPOSITORY ARCH BUILD_DESCR
osc buildinfo [OPTS] REPOSITORY (ARCH = hostarch, BUILD_DESCR is detected automatically)
osc buildinfo [OPTS] ARCH (REPOSITORY = build_repository (config option), BUILD_DESCR is detected automatically)
osc buildinfo [OPTS] BUILD_DESCR (REPOSITORY = build_repository (config option), ARCH = hostarch)
osc buildinfo [OPTS] (REPOSITORY = build_repository (config option), ARCH = hostarch, BUILD_DESCR is detected automatically)
Note: if BUILD_DESCR does not exist locally the remote BUILD_DESCR is used
osc buildinfo [OPTS] PROJECT PACKAGE REPOSITORY ARCH [BUILD_DESCR]
Options:
-h, --help show this help message and exit
-p DIR, --prefer-pkgs=DIR
Prefer packages from this directory when installing
the build-root
-x PAC, --extra-pkgs=PAC
Add this package when computing the buildinfo
-M MPAC, --multibuild-package=MPAC
Show the buildinfo of the specified multibuild package
-d, --debug
verbose output of build dependencies
- buildlog (bl, blt, buildlogtail)
- Shows the build log of a package
Shows the log file of the build of a package. Can be used to follow thelog while it is being written.Needs to be called from within a package directory.
When called as buildlogtail (or blt) it just shows the end of the logfile.This is useful to see just a build failure reasons.
The arguments REPOSITORY and ARCH are the first two columns in the 'oscresults' output. If the buildlog url is used buildlog command has thesame behavior as remotebuildlog.
Usage:
osc buildlog [ARGS...]
[REPOSITORY ARCH | BUILDLOGURL]Options:
-h, --help show this help message and exit
-s, --strip-time
strip leading build time from the log
-o OFFSET, --offset=OFFSET
get log start or end from the offset
-M MPAC, --multibuild-package=MPAC
get log of the specified multibuild package
-l, --last Show the last finished log file
- cat (blame, less)
- Output the content of a file to standard output
Examples:
osc cat file
osc cat project package file
osc cat project/package/file
osc cat http://api.opensuse.org/build/.../_log
osc cat http://api.opensuse.org/source/../_link
osc less file
osc less project package file
osc blame file
osc blame project package file
Usage:
osc cat [ARGS...]
Options:
-h, --help show this help message and exit
-M, --meta list meta data files
-D, --deleted
access file in a deleted package
-u, --unexpand
always work with unexpanded packages.
-e, --expand
(default) force expansion of linked packages.
-r rev, --revision=rev
print out the specified revision
- changedevelrequest (changedevelreq, cr)
- Create request to change the devel package definition.
[See http://en.opensuse.org/openSUSE:Build_Service_Collaborationfor information on this topic.]
See the "request" command for showing and modifing existing requests.
osc changedevelrequest PROJECT PACKAGE DEVEL_PROJECT [DEVEL_PACKAGE]
- checkconstraints
- check the constraints and view compliant workers
Checks the constraints for compliant workers.
usage:
in a package working copy:
osc checkconstraints [OPTS] REPOSITORY ARCH CONSTRAINTSFILE
osc checkconstraints [OPTS] CONSTRAINTSFILE
osc checkconstraints [OPTS]
Options:
-h, --help show this help message and exit
--ignore-file
ignore _constraints file and only check project
constraints
- checkout (co)
- Check out content from the repository
Check out content from the repository server, creating a local workingcopy.
When checking out a single package, the option --revision can be usedto specify a revision of the package to be checked out.
When a package is a source link, then it will be checked out inexpanded form. If --unexpand-link option is used, the checkout willinstead produce the raw _link file plus patches.
usage:
osc co PROJECT [PACKAGE] [FILE]
osc co PROJECT # entire project
osc co PROJECT PACKAGE # a package
osc co PROJECT PACKAGE FILE # single file -> to current dir
while inside a project directory:
osc co PACKAGE # check out PACKAGE from project
with the result of rpm -q --qf '%{DISTURL} PACKAGE
osc co obs://API/PROJECT/PLATFORM/REVISION-PACKAGE
Options:
-h, --help show this help message and exit
-l limit_size, --limit-size=limit_size
Skip all files with a given size
-S, --server-side-source-service-files
Use server side generated sources instead of local
generation.
-s, --source-service-files
Run source services.
-o outdir, --output-dir=outdir
place package in the specified directory instead of a
PROJECT/PACKAGE directory
-c, --current-dir
place PACKAGE folder in the current directory instead
of a PROJECT/PACKAGE directory
-M, --meta checkout out meta data instead of sources
-u, --unexpand-link
if a package is a link, check out the _link file
instead of the expanded sources
-e, --expand-link
if a package is a link, check out the expanded sources
(no-op, since this became the default)
-r rev, --revision=rev
checkout the specified revision. NOTE: if you checkout
the complete project this option is ignored!
- chroot
- opens a shell inside of the build root
chroot into the build root for the given repository, arch and build description(NOTE: this command does not work if a VM is used)
usage:
osc chroot [OPTS] REPOSITORY ARCH BUILD_DESCR
osc chroot [OPTS] REPOSITORY (ARCH = hostarch, BUILD_DESCR is detected automatically)
osc chroot [OPTS] ARCH (REPOSITORY = build_repository (config option), BUILD_DESCR is detected automatically)
osc chroot [OPTS] BUILD_DESCR (REPOSITORY = build_repository (config option), ARCH = hostarch)
osc chroot [OPTS] (REPOSITORY = build_repository (config option), ARCH = hostarch, BUILD_DESCR is detected automatically)Options:
-h, --help show this help message and exit
-f, --force
Do not ask confirmation for wipe
--wipe Delete the build root instead of chrooting into it
-o, --offline
Use cached data without contacting the api server
--root=ROOT
Path to the buildroot
-r, --login-as-root
login as root instead of abuild
--noinit, --no-init
do not guess/verify specified repository
--alternative-project=PROJECT
specify the used build target project
--local-package
package doesn't exist on the server
- clean
- removes all untracked files from the package working copy
Examples:
osc clean <path>
Note: if <path> is omitted it defaults to '.' (<path> has to
be a package working copy)
Warning: This command removes all files with status '?'.
Usage:
osc clean [ARGS...]
Options:
-h, --help show this help message and exit
-n, --dry-run
print the results without actually removing a file
- comment
- List / create / delete comments
On create:
If -p is given a reply to the ID is created. Otherwise
a toplevel comment is created.
If -c is not given the default editor will be opened and
you can type your comment
usage:
osc comment list package PROJECT PACKAGE
osc comment list project PROJECT
osc comment list request REQUEST_ID
osc comment create [-p PARENT_ID] [-c COMMENT] package PROJECT PACKAGE
osc comment create [-p PARENT_ID] [-c COMMENT] project PROJECT
osc comment create [-p PARENT_ID] [-c COMMENT] request REQUEST_ID
osc comment delete ID
- commit (checkin, ci)
- Upload content to the repository server
Upload content which is changed in your working copy, to the repositoryserver.
examples:
osc ci # current dir
osc ci <dir>
osc ci file1 file2 ...
Usage:
osc commit [ARGS...]
Options:
-h, --help show this help message and exit
--skip-local-service-run, --noservice
Skip service run of configured source services for
local run
-v, --verbose
Run the source services with verbose information
--skip-validation
deprecated, don't use it
-f, --force
force commit, even if there were no changes
-F FILE, --file=FILE
read log message from FILE, '-' denotes standard
input.
-n, --no-message
do not specify a log message
-m TEXT, --message=TEXT
specify log message TEXT
- config
- get/set a config option
Examples:
osc config section option (get current value)
osc config section option value (set to value)
osc config section option --delete (delete option/reset to the default)
(section is either an apiurl or an alias or 'general')
osc config --dump (dump the complete configuration)
Usage:
osc config [ARGS...]
Options:
-h, --help show this help message and exit
--dump-full
dump the complete configuration (including 'pass' and
'passx' options)
--dump dump the complete configuration (without 'pass' and
'passx' options)
--no-echo prompt for a value but do not echo entered characters
-p, --prompt
prompt for a value
-s, --stdin
indicates that the config value should be read from
stdin
-d, --delete
delete option from config or reset option to the
default)
- copypac
- Copy a package
A way to copy package to somewhere else.
It can be done across buildservice instances, if the -t option is used.In that case, a client-side copy and link expansion are implied.
Using --client-side-copy always involves downloading all files, anduploading them to the target.
The DESTPAC name is optional; the source packages' name will be used ifDESTPAC is omitted.
usage:
osc copypac SOURCEPRJ SOURCEPAC DESTPRJ [DESTPAC]Options:
-h, --help show this help message and exit
-e, --expand
if the source package is a link then copy the expanded
version of the link
-m TEXT, --message=TEXT
specify message TEXT
-t URL, --to-apiurl=URL
URL of destination api server. Default is the source
api server.
-r rev, --revision=rev
copy the specified revision.
-d, --keep-develproject
keep develproject tag in the package metadata
-K, --keep-link
keep the source link in target, this also expands the
source
-k, --keep-maintainers
keep original maintainers. Default is remove all and
replace with the one calling the script.
-c, --client-side-copy
do a (slower) client-side copy
- createincident
- Create a maintenance incident
[See http://openbuildservice.org/help/manuals/obs-reference-guide/cha.obs.maintenance_setup.htmlfor information on this topic.]
This command is asking to open an empty maintence incident. This can usually only be done by a responsiblemaintenance team.Please see the "mbranch" command on how to full such a project content andthe "patchinfo" command how add the required maintenance update information.
usage:
osc createincident [ MAINTENANCEPROJECT ]Options:
-h, --help show this help message and exit
-m TEXT, --message=TEXT
specify message TEXT
--noaccess Create a hidden project
-a ATTRIBUTE, --attribute=ATTRIBUTE
Use this attribute to find default maintenance project
(default is OBS:MaintenanceProject)
- createrequest (creq)
- create multiple requests with a single command
usage:
osc creq [OPTIONS] [
-a submit SOURCEPRJ SOURCEPKG DESTPRJ [DESTPKG]
-a delete PROJECT [PACKAGE]
-a change_devel PROJECT PACKAGE DEVEL_PROJECT [DEVEL_PACKAGE]
-a add_me ROLE PROJECT [PACKAGE]
-a add_group GROUP ROLE PROJECT [PACKAGE]
-a add_role USER ROLE PROJECT [PACKAGE]
-a set_bugowner USER PROJECT [PACKAGE]
]
Option -m works for all types of request, the rest work only for submit.example:
osc creq -a submit -a delete home:someone:branches:openSUSE:Tools -a change_devel openSUSE:Tools osc home:someone:branches:openSUSE:Tools -m ok
This will submit all modified packages under current directory, delete project home:someone:branches:openSUSE:Tools and change the devel project to home:someone:branches:openSUSE:Tools for package osc in project openSUSE:Tools.Options:
-h, --help show this help message and exit
--yes proceed without asking.
--no-update
never touch source package on accept (will break
source links)
--no-cleanup
never remove source package on accept, but update its
content
--cleanup remove package if submission gets accepted (default
for home:<id>:branch projects)
--nodevelproject
do not follow a defined devel project (primary project
where a package is developed)
-s REQUEST_ID, --supersede=REQUEST_ID
Superseding another request by this one
-r REV, --revision=REV
for "create", specify a certain source revision ID
(the md5 sum)
-m TEXT, --message=TEXT
specify message TEXT
-a, --action
specify action type of a request, can be :
submit/delete/change_devel/add_role/set_bugowner
- delete (del, remove, rm)
- Mark files or package directories to be deleted upon the next 'checkin'
usage:
cd .../PROJECT/PACKAGE
osc delete FILE [...]
cd .../PROJECT
osc delete PACKAGE [...]
This command works on check out copies. Use "rdelete" for working on serverside only. This is needed for removing the entire project.
As a safety measure, projects must be empty (i.e., you need to delete allpackages first).
If you are sure that you want to remove a package and allits files use '--force' switch. Sometimes this also works without --force.
Options:
-h, --help show this help message and exit
-f, --force
forces removal of entire package and its files
- deleterequest (deletereq, dr, dropreq, droprequest)
- Request to delete (or 'drop') a package or project
usage:
osc deletereq [-m TEXT] # works in checked out project/package
osc deletereq [-m TEXT] PROJECT [PACKAGE]
osc deletereq [-m TEXT] PROJECT [--repository REPOSITORY]Options:
-h, --help show this help message and exit
--accept-in-hours=HOURS
specify time when request shall get accepted
automatically. Only works with write permissions in
target.
-r REPOSITORY, --repository=REPOSITORY
specify repository
-m TEXT, --message=TEXT
specify message TEXT
- dependson (whatdependson)
- Show the build dependencies
The command dependson and whatdependson can be used to find out whatwill be triggered when a certain package changes.This is no guarantee, since the new build might have changed dependencies.
dependson shows the build dependencies inside of a project, valid for agiven repository and architecture.NOTE: to see all binary packages, which can trigger a build you need to
refer the buildinfo, since this command shows only the dependencies
inside of a project.
The arguments REPOSITORY and ARCH can be taken from the first two columnsof the 'osc repos' output.
usage in package or project directory:
osc dependson REPOSITORY ARCH
osc whatdependson REPOSITORY ARCH
usage:
osc dependson PROJECT [PACKAGE] REPOSITORY ARCH
osc whatdependson PROJECT [PACKAGE] REPOSITORY ARCH
- detachbranch
- replace a link with its expanded sources
If a package is a link it is replaced with its expanded sources. The linkdoes not exist anymore.
usage:
osc detachbranch # can be used in package working copy
osc detachbranch PROJECT PACKAGEOptions:
-h, --help show this help message and exit
-m TEXT, --message=TEXT
specify message TEXT
- develproject (bsdevelproject, dp)
- print the devel project / package of a package
Examples:
osc develproject&nb