1ZYPPER(8) ZYPPER ZYPPER(8)
2
3
4
6 zypper - Command-line interface to ZYpp system management library
7 (libzypp)
8
10 zypper [--global-opts] command [--command-opts] [command-arguments]
11
12 zypper subcommand [--command-opts] [command-arguments]
13
14 zypper help command
15
17 zypper is a command-line interface to ZYpp system management library
18 (libzypp). It can be used to install, update, remove software, manage
19 repositories, perform various queries, and more.
20
22 Most of the following concepts are common for all applications based on
23 the libzypp package management library, but there are some zypper
24 specifics.
25
26 System Packages
27 The set of installed packages on a system is sometimes denoted as
28 repository @System or System Packages. In contrast to available
29 repositories providing packages which can be installed, @System
30 provides packages which can only be deleted. Installed packages which
31 are not also provided by at least one of the available repositories are
32 often denoted as being unwanted, orphaned or dropped.
33
34 Repositories
35 Libzypp works with repository metadata, this is information about
36 packages and their relations extracted from RPM packages and other data
37 like patch information, pattern definitions, etc. These data are stored
38 together with the RPM files in folders called repositories.
39 Repositories can be placed on various media like an HTTP or FTP server,
40 DVD, or a folder on a local disc.
41
42 There is a special set of commands in zypper intended to manipulate
43 repositories. Also many commands and options take a repository as an
44 argument. See section COMMANDS, subsection Repository Management for
45 more details.
46
47 GPG checks
48 Disabling GPG checks is not recommended. Signing data enables the
49 recipient to verify that no modifications occurred after the data were
50 signed. Accepting data with no, wrong or unknown signature can lead to
51 a corrupted system and in extreme cases even to a system compromise.
52
53 Zypp verifies the authenticity of repository metadata by checking their
54 GPG signature. If the repository metadata are signed with a trusted key
55 and successfully verified, packages from this repository are accepted
56 for installation if they match the checksum provided in the metadata.
57 Using unsigned repositories needs to be confirmed.
58
59 If the repository metadata are not signed, the GPG signature of each
60 downloaded rpm package is checked before accepting it for installation.
61 Packages from unsigned repositories need a valid GPG signature. Using
62 unsigned packages needs to be confirmed.
63
64 The above is the default behavior defined by settings in
65 /etc/zypp/zypp.conf.
66
67 The addrepo and modifyrepo commands provide further options to tune the
68 behavior per repository. It is for example possible to relax the need
69 to confirm installing unsigned packages for a specific repository. But
70 if you do so, you should be very certain that an attacker can hardly
71 modify the package data within the repository or on the way to your
72 machine. See section COMMANDS for details about the command options.
73
74 Resource Identifiers (URI)
75 To specify locations of repositories or other resources (RPM files,
76 .repo files) you can use any type of URI supported by libzypp. In
77 addition Zypper accepts a special URI identifying openSUSE Build
78 Service (OBS) repositories in the addrepo command. These URIs have the
79 form of obs://’project'/[platform].
80
81 See section COMMANDS, subsection Repository Management for a complete
82 list and examples of supported URI formats.
83
84 Refresh
85 Refreshing a repository means downloading metadata of packages from the
86 medium (if needed), storing it in local cache (typically under
87 /var/cache/zypp/raw/’alias' directory) and preparsing the metadata into
88 .solv files (building the solv cache), typically under
89 /var/cache/zypp/solv/’alias'.
90
91 The metadata get refreshed either automatically or on user request. An
92 automatic refresh takes place right before reading metadata from the
93 database if the auto-refresh is enabled for the repository and the
94 metadata is reported to be out of date. If the auto-refresh is
95 disabled, the repository will only be refreshed on user request. You
96 can request a refresh by calling zypper refresh (see the documentation
97 of the refresh command for details).
98
99 The repository metadata are checked for changes before actually doing
100 the refresh. A change is detected by downloading one or two metadata
101 index files (small files) and comparing the checksums of the cached
102 ones and the remote ones. If the files differ, the repository is out of
103 date and will be refreshed.
104
105 To delay the up-to-date check (and thus the automatic refresh) for a
106 certain number of minutes, edit the value of the repo.refresh.delay
107 attribute of ZYpp config file (/etc/zypp/zypp.conf). This means, zypper
108 will not even try to download and check the index files, and you will
109 be able to use zypper for operations like search or info without
110 internet access or root privileges.
111
112 Services
113 Services are one level above repositories and serve to manage
114 repositories or to do some special tasks. Libzypp currently supports
115 Repository Index Service (RIS) and Plugin Service.
116
117 Repository Index Service (RIS) is a special type of repository which
118 contains a list of other repositories. This list can be generated
119 dynamically by the server according to some URI parameters or user
120 name, or can be static. Once such service is added to your system,
121 zypper takes care of adding, modifying, or removing these repositories
122 on your system to reflect the current list. See section Service
123 Management and
124 https://en.opensuse.org/openSUSE:Standards_Repository_Index_Service for
125 more details.
126
127 Package Types
128 Zypper works with several types of resource objects, called
129 resolvables. A resolvable might be a package, patch, pattern, product;
130 basically any kind of object with dependencies to other objects.
131
132 package
133 An ordinary RPM package.
134
135 patch
136 A released patch conflicts with the affected/vulnerable versions of
137 a collection of packages. As long as any of these
138 affected/vulnerable versions are installed, the conflict triggers
139 and the patch is classified as needed, optional or as unwanted if
140 the patch is locked. + Selecting the patch, the conflict is
141 resolved by updating all installed and affected/vulnerable packages
142 to a version providing the fix. When updating the packages zypper
143 always aims for the latest available version. Resolved patches are
144 classified as either applied or not needed, depending on whether
145 they refer to actually installed packages. + Depending on the kind
146 of defect, patches are classified by category and severity.
147 Commonly used values for category are security, recommended,
148 optional, feature, document or yast. Commonly used values for
149 severity are critical, important, moderate, low or unspecified. +
150 Note that the patch command does not apply optional patches
151 (category optional or feature) by default. If you actually want to
152 consider all optional patches as being needed, say patch
153 --with-optional. Specific patches can be applied using the install
154 command (e.g. zypper install patch:openSUSE-2014-7). + If the
155 issuer decides to retract a released patch, the patch status will
156 be shown as retracted. The packages provided by the retracted patch
157 are still visible but also tagged as having been retracted (R). The
158 resolver will avoid selecting retracted packages automatically. If
159 you are sure that a retracted package should be installed on your
160 system, you must explicitely select it.
161
162 pattern
163 A group of packages required or recommended to install some
164 functionality.
165
166 product
167 A group of packages which are necessary to install a product.
168
169 srcpackage
170 Source code package (.src.rpm). This type works in search and
171 install commands.
172
173 application
174 Legacy: Since libzypp-17.7.0 this type is no longer available.
175
176 Throughout this manual we will often refer to resolvables simply as
177 packages and to resolvable types as package type or kind. These type
178 names can be used as arguments of --type option in several commands
179 like install, info, or search. Commands should also allow to specify
180 resolvables as KIND:’NAME' (e.g. patch:openSUSE-2014-7).
181
182 Package Dependencies
183 Software packages depend on each other in various ways. Packages
184 usually require or recommend other packages, but they can also conflict
185 with them. Packages may support specific hardware or language settings.
186 Zypper uses a dependency solver to find out which packages need to be
187 installed to satisfy the user’s request.
188
189 If you do not request a specific version of a package the solver will
190 pick a reasonable one. The solvers general attitude when resolving a
191 job is to focus on installing the best version of the requested package
192 and to add or update dependencies as they are needed. Aside from this
193 Focus on Job, which is the default, two other focus modes are
194 available:
195
196 In Focus on Installed mode the solver focuses on applying as little
197 changes to the installed packages as needed. Choosing an older version
198 of a requested package is valid if it’s dependencies require less
199 changes to the system. The solver will try to avoid updating already
200 installed packages.
201
202 In Focus on Update mode the solver focuses on updating the requested
203 package and all its dependencies as much as possible. Beware,
204 installing a single package in this mode may easily lead to a mini
205 system update.
206
207 For a single command the focus mode can be set using the --solver-focus
208 MODE switch. Valid modes are Job, Installed or Update. If you want to
209 change the default mode for your system, set
210 [/etc/zypp/zypp.conf:solver.focus] to the desired value.
211
212 Automatically installed packages
213 Packages added by the dependency solver in order to resolve a user’s
214 request are remembered as having been 'automatically installed'. They
215 may later be removed, if no more user installed packages depend on them
216 (e.g. by zypper remove --clean-deps).
217
218 In the S+tatus+ column the search command distinguishes between user
219 installed packages (i+) and automatically installed packages (i).
220
221 Package File Conflicts
222 File conflicts happen when two packages attempt to install files with
223 the same name but different contents. This may happen if you are
224 installing a newer version of a package without erasing the older
225 version, of if two unrelated packages each install a file with the same
226 name.
227
228 As checking for file conflicts requires access to the full filelist of
229 each package being installed, zypper will be able to check for file
230 conflicts only if all packages are downloaded in advance (see
231 --download-in-advance). If you are doing a --dry-run no packages are
232 downloaded, so the file conflict check will skip packages not available
233 in the packages cache. To get a meaningful file conflict check use
234 --dry-run together with --download-only.
235
236 As the reason for file conflicts usually is a poor package design or
237 lack of coordination between the people building the packages, they are
238 not easy to resolve. By using the --replacefiles option you can force
239 zypper to replace the conflicting files. Nevertheless this may damage
240 the package whose file gets replaced.
241
243 zypper provides a number of commands. Each command accepts the options
244 listed in the GLOBAL OPTIONS section. These options must be specified
245 before the command name. In addition, many commands have specific
246 options, which are listed in this section. These command-specific
247 options must be specified after the name of the command and before any
248 of the command arguments.
249
250 Zypper also provides limited support for writing extensions/subcommands
251 in any language. See section SUBCOMMANDS for details.
252
253 General Commands
254 help [command]
255 Shows help texts. If invoked without any argument (just zypper or
256 zypper help), zypper displays global help text which lists all
257 available global options and commands. + If invoked with a command
258 name argument, zypper displays help for the specified command, if
259 such command exists. Long as well as short variants of the command
260 names can be used. + For your convenience, zypper help can also be
261 invoked in any of the following ways:
262
263 ;; $ *zypper -h*|*--help* ['command']
264 ;; $ *zypper* ['command'] *-h*|*--help*
265
266 shell (sh)
267 Starts a shell for entering multiple commands in one session. Exit
268 the shell using exit, quit, or Ctrl-D. + The shell support is not
269 complete so expect bugs there. However, there’s no urgent need to
270 use the shell since libzypp became so fast thanks to the SAT solver
271 and its tools (openSUSE 11.0), but still, you’re welcome to
272 experiment with it.
273
274 Package Management Commands
275 info (if) [options] name...
276 Displays detailed information about the specified packages. + For
277 each specified package, zypper finds the best available version in
278 defined repositories and shows information for this package.
279
280 -r, --repo alias|name|#|URI
281 Work only with the repository specified by the alias, name,
282 number or URI. This option can be used multiple times.
283
284 -t, --type type
285 Type of package (default: package). See section Package Types
286 for list of available package types.
287
288 --provides
289 Show symbols the package provides.
290
291 --requires
292 Show symbols the package requires.
293
294 --conflicts
295 Show symbols the package conflicts with.
296
297 --obsoletes
298 Show symbols the package obsoletes.
299
300 --recommends
301 Show symbols the package recommends.
302
303 --suggests
304 Show symbols the package suggests.
305
306 --supplements
307 Show symbols the package supplements.
308
309 Examples:
310
311
312 $ zypper info workrave
313 Show information about package workrave
314
315 $ zypper info -t patch libzypp
316 Show information about patch libzypp
317
318 $ zypper info -t pattern lamp_server
319 Show information about pattern lamp_server
320
321 install (in) [options] name|capability|rpm_file_uri...
322 Install or update packages.
323
324 The packages can be selected by their name or by a capability they
325 provide.
326 + A capability is formed by "NAME[.’ARCH'][ OP EDITION]", where
327 ARCH is an architecture code, OP is one of <, <=, =, >=, or >
328 and EDITION is "VERSION[-’RELEASE']". For example:
329 zypper=0.8.8-2 + The NAME component of a capability is not only
330 a package name but any symbol provided by packages: /bin/vi,
331 libcurl.so.3, perl(Time::ParseDate). Just remember to quote to
332 protect the special characters from the shell, for example:
333 zypper\>0.8.10 or 'zypper>0.8.10'. + If EDITION is not
334 specified, the newest installable version will be installed.
335 This also means that if the package is already installed and
336 newer versions are available, it will get upgraded to the
337 newest installable version. + If ARCH is not specified, or the
338 last dot of the capability name string is not followed by known
339 architecture, the solver will treat the whole string as a
340 capability name. If the ARCH is known, the solver will select a
341 package matching that architecture and complain if such package
342 cannot be found.
343
344 Zypper is also able to install plain RPM files while trying to
345 satisfy their dependencies using packages from defined
346 repositories. You can install a plain RPM file by specifying its
347 location in the install command arguments either as a local path or
348 an URI. E.g.:
349 + $ zypper install ~/rpms/foo.rpm http://some.site/bar.rpm. +
350 Zypper will report packages that it cannot find. Further, in
351 interactive mode, zypper proceeds with installation of the rest
352 of requested packages, and it will abort immediately in
353 non-interactive mode. In both cases zypper returns
354 ZYPPER_EXIT_INF_CAP_NOT_FOUND after finishing the operation. +
355 Zypper will collect the files in a temporary plaindir
356 repository and mark the respective packages for installation.
357 If --download-only is used, the downloaded packages will be
358 available in /var/cache/zypper/RPMS until you actually install
359 them or call zypper clean to clear the package caches.
360
361 In the install command, you can also specify packages you wish to
362 remove by prepending their names by a - or ! character. For
363 example:
364 + $ zypper install \!Firefox + In contrast to zypper remove
365 Firefox which removes Firefox and its dependent packages, the
366 install command will try to keep dependent packages installed
367 by looking for Firefox alternatives. + Note that if you choose
368 to use - with the first package you specify, you need to write
369 -- before it to prevent its interpretation as a command option:
370 + $ zypper install -- -boring-game great-game
371 great-game-manual
372
373 -r, --repo alias|name|#|URI
374 Work only with the repository specified by the alias, name,
375 number or URI. This option can be used multiple times. + Using
376 --repo is discouraged as it currently hides unmentioned
377 repositories from the resolver, leading to inexpertly
378 decisions. In the future --repo will become an alias for
379 --from.
380
381 -t, --type type
382 Type of package to install (default: package). See section
383 Package Types for list of available package types. Use zypper
384 se -t type [name] to look for available items of this type and
385 zypper info -t type name to display more detailed information
386 about the item. + If patch is specified, zypper will install
387 and/or remove packages to satisfy specified patch. This is a
388 way to ensure that specific bug fix is installed. Use zypper
389 list-patches to look for applicable patches. + If product or
390 pattern are specified, zypper ensures that all required (and
391 optionally recommended) packages are installed.
392
393 -n, --name
394 Select packages by their name, don’t try to select by
395 capabilities.
396
397 -f, --force
398 Install even if the item is already installed (reinstall),
399 downgraded or changes vendor or architecture.
400
401 --oldpackage
402 Allow to replace a newer item with an older one. Handy if you
403 are doing a rollback. Unlike --force it will not enforce a
404 reinstall, if the item is already installed with the requested
405 version.
406
407 --from alias|name|#|URI
408 Select packages from specified repository. If strings specified
409 as arguments to the install command match packages in
410 repositories specified in this option, they will be marked for
411 installation. This option currently implies --name, but allows
412 using wildcards for specifying packages.
413
414 -C, --capability
415 Select packages by capabilities.
416
417 -l, --auto-agree-with-licenses
418 Automatically say yes to third party license confirmation
419 prompt. By using this option, you choose to agree with licenses
420 of all third-party software this command will install. This
421 option is particularly useful for administrators installing the
422 same set of packages on multiple machines (by an automated
423 process) and have the licenses confirmed before.
424
425 --auto-agree-with-product-licenses
426 Automatically accept product licenses only. This is used by
427 tools like SUSEconnect, which ask for confirmation before the
428 product gets registered. So there’s no need to confirm the
429 product license again at install time.
430
431 --replacefiles
432 Install the packages even if they replace files from other,
433 already installed, packages. Default is to treat file conflicts
434 as an error. --download-as-needed disables the file conflict
435 check because access to all packages file lists is needed in
436 advance in order to perform the check.
437
438 -D, --dry-run
439 Test the installation, do not actually install any package. If
440 used together with --download-only a meaningful file conflict
441 check can be performed (see section Package File Conflicts).
442
443 --details
444 Show the detailed installation summary.
445
446 -y, --no-confirm
447 Don’t require user interaction. Alias for the --non-interactive
448 global option.
449
450 --allow-unsigned-rpm
451 Silently install unsigned rpm packages given as commandline
452 parameters.
453
454 Solver related options:
455
456
457 --debug-solver
458 Create solver test case for debugging. Use this option, if you
459 think the dependencies were not solved all right and attach the
460 resulting /var/log/zypper.solverTestCase directory to your bug
461 report. To use this option, simply add it to the problematic
462 install or remove command.
463
464 --force-resolution
465 Force the solver to find a solution by allowing to remove
466 packages with unfulfilled requirements. This is the default
467 when removing packages (zypper remove). This option overrides
468 --no-force-resolution in case both are specified on the command
469 line.
470
471 -R, --no-force-resolution
472 Do not force the solver to find a solution. Instead, report
473 dependency problems and prompt the user to resolve them
474 manually. This is the default except when removing packages
475 (zypper remove).
476
477 --solver-focus MODE
478 Set the solvers general attitude when resolving a job. Valid
479 modes are Job, Installed or Update. See section Package
480 Dependencies for details.
481
482 --recommends
483 Install also recommended packages in addition to the required
484 ones. The default behavior is determined by
485 [zypp.conf:solver.onlyRequires].
486
487 --no-recommends
488 Do not install recommended packages, but only required ones.
489 The default behavior is determined by
490 [zypp.conf:solver.onlyRequires].
491
492 Download-and-install mode options:
493
494
495 -d, --download-only
496 Only download the packages for later installation. If used
497 together with --dry-run a meaningful file conflict check can be
498 performed (see section Package File Conflicts).
499
500 --download-in-advance
501 First download all packages, then start installing. This is the
502 default.
503
504 --download-in-heaps
505 Download a minimal set of packages that can be installed
506 without leaving the system in broken state, and install them.
507 Then download and install another heap until all are installed.
508 This helps to keep the system in consistent state without the
509 need to download all packages in advance, which combines the
510 advantages of --download-in-advance and --download-as-needed.
511 This is the default mode. + NOTE: While the resolver is not
512 capable of building heaps, this behaves the same as
513 --download-in-advance.
514
515 --download-as-needed
516 Download one package, install it immediately, and continue with
517 the rest until all are installed.
518
519 --download mode
520 Use the specified download-and-install mode. Available modes
521 are: only, in-advance, in-heaps, as-needed. See corresponding
522 --download-’mode' options for their description.
523
524 Expert Options:
525 Don’t use them unless you know you need them.
526
527 --allow-downgrade, --no-allow-downgrade
528 Whether to allow downgrading installed resolvables.
529
530 --allow-name-change, --no-allow-name-change
531 Whether to allow changing the names of installed resolvables.
532 Setting this to no will not replace packages which have been
533 renamed.
534
535 --allow-arch-change, --no-allow-arch-change
536 Whether to allow changing the architecture of installed
537 resolvables.
538
539 --allow-vendor-change, --no-allow-vendor-change
540 Whether to allow changing the vendor of installed resolvables.
541 Setting this to no might be useful if you do not want packages
542 from foreign repos being changed to the distributions version
543 (or vice versa).
544
545 Examples:
546
547
548 $ zypper install -t pattern lamp_server
549 Install lamp_server pattern.
550
551 $ zypper install --no-recommends gv
552 Install GhostScript viewer, but ignore recommended
553 packages.
554
555 $ zypper install virtualbox-ose-2.0.6
556
557
558 $ zypper install virtualbox-ose=2.0.6
559
560
561 $ zypper install virtualbox-ose = 2.0.6
562 Install version 2.0.6 of virtualbox-ose package.
563
564 source-install (si) name...
565 Install specified source packages and their build dependencies. If
566 the name of a binary package is given, the corresponding source
567 package is looked up and installed instead. + This command will try
568 to find the newest available versions of the source packages and
569 uses rpm -i to install them, optionally together with all the
570 packages that are required to build the source package. The default
571 location where rpm installs source packages to is
572 /usr/src/packages/{SPECS,SOURCES}, but the values can be changed in
573 your local rpm configuration. In case of doubt try executing rpm
574 --eval "%{_specdir} and %{_sourcedir}". + Note that the source
575 packages must be available in repositories you are using. You can
576 check whether a repository contains any source packages using the
577 following command:
578
579 ;; $ '*zypper search -t srcpackage -r* alias'|'name'|'#'|'URI'
580
581 -d, --build-deps-only
582 Install only build dependencies of specified packages.
583
584 -D, --no-build-deps
585 Don’t install build dependencies.
586
587 -r, --repo alias|name|#|URI
588 Work only with the repository specified by the alias, name,
589 number, or URI. This option can be used multiple times.
590
591 --download-only
592 Only download the packages, do not install.
593
594 Examples:
595
596
597 $ zypper si -d dbus-1
598 Install build dependencies of dbus-1 source package.
599
600 verify (ve) [options]
601 Check whether dependencies of installed packages are satisfied. +
602 In case that any dependency problems are found, zypper suggests
603 packages to install or remove to fix them.
604
605 -D, --dry-run
606 Test the repair, do not actually do anything to the system. If
607 used together with --download-only a meaningful file conflict
608 check can be performed (see section Package File Conflicts).
609
610 --details
611 Show the detailed installation summary.
612
613 -r, --repo alias|name|#|URI
614 Work only with the repository specified by the alias, name,
615 number, or URI. This option can be used multiple times.
616
617 -y, --no-confirm
618 Don’t require user interaction. Alias for the --non-interactive
619 global option.
620
621 Solver related options:
622
623
624 --debug-solver
625 Create solver test case for debugging. Use this option, if you
626 think the dependencies were not solved all right and attach the
627 resulting /var/log/zypper.solverTestCase directory to your bug
628 report. To use this option, simply add it to the problematic
629 install or remove command.
630
631 --force-resolution
632 Force the solver to find a solution by allowing to remove
633 packages with unfulfilled requirements. This is the default
634 when removing packages (zypper remove). This option overrides
635 --no-force-resolution in case both are specified on the command
636 line.
637
638 -R, --no-force-resolution
639 Do not force the solver to find a solution. Instead, report
640 dependency problems and prompt the user to resolve them
641 manually. This is the default except when removing packages
642 (zypper remove).
643
644 --solver-focus MODE
645 Set the solvers general attitude when resolving a job. Valid
646 modes are Job, Installed or Update. See section Package
647 Dependencies for details.
648
649 --recommends
650 Install also recommended packages in addition to the required
651 ones. The default behavior is determined by
652 [zypp.conf:solver.onlyRequires].
653
654 --no-recommends
655 Do not install recommended packages, but only required ones.
656 The default behavior is determined by
657 [zypp.conf:solver.onlyRequires].
658
659 Expert Options:
660 Don’t use them unless you know you need them.
661
662 --allow-downgrade, --no-allow-downgrade
663 Whether to allow downgrading installed resolvables.
664
665 --allow-name-change, --no-allow-name-change
666 Whether to allow changing the names of installed resolvables.
667 Setting this to no will not replace packages which have been
668 renamed.
669
670 --allow-arch-change, --no-allow-arch-change
671 Whether to allow changing the architecture of installed
672 resolvables.
673
674 --allow-vendor-change, --no-allow-vendor-change
675 Whether to allow changing the vendor of installed resolvables.
676 Setting this to no might be useful if you do not want packages
677 from foreign repos being changed to the distributions version
678 (or vice versa).
679
680 This command also accepts the Download-and-install mode options
681 described in the install command.
682
683
684 install-new-recommends (inr) [options]
685 Install newly added packages recommended by already installed ones.
686 This command basically re-evaluates the recommendations of all
687 installed packages and fills up the system accordingly. You don’t
688 want to call this unconditionally on small or minimal systems, as
689 it may easily add a large number of packages. + Called as zypper
690 inr --no-recommends, it restricts the command to just look for
691 packages supporting available hardware, languages or filesystems.
692 Usefull after having added e.g. new hardware or driver repos. This
693 is also the default behavior if you have set
694 [zypp.conf:solver.onlyRequires].
695
696 -r, --repo alias|name|#|URI
697 Work only with the repository specified by the alias, name,
698 number, or URI. This option can be used multiple times.
699
700 -D, --dry-run
701 Test the installation, do not actually install anything. If
702 used together with --download-only a meaningful file conflict
703 check can be performed (see section Package File Conflicts).
704
705 --details
706 Show the detailed installation summary.
707
708 Solver related options:
709
710
711 --debug-solver
712 Create solver test case for debugging. Use this option, if you
713 think the dependencies were not solved all right and attach the
714 resulting /var/log/zypper.solverTestCase directory to your bug
715 report. To use this option, simply add it to the problematic
716 install or remove command.
717
718 --force-resolution
719 Force the solver to find a solution by allowing to remove
720 packages with unfulfilled requirements. This is the default
721 when removing packages (zypper remove). This option overrides
722 --no-force-resolution in case both are specified on the command
723 line.
724
725 -R, --no-force-resolution
726 Do not force the solver to find a solution. Instead, report
727 dependency problems and prompt the user to resolve them
728 manually. This is the default except when removing packages
729 (zypper remove).
730
731 --solver-focus MODE
732 Set the solvers general attitude when resolving a job. Valid
733 modes are Job, Installed or Update. See section Package
734 Dependencies for details.
735
736 --recommends
737 Install also recommended packages in addition to the required
738 ones. The default behavior is determined by
739 [zypp.conf:solver.onlyRequires].
740
741 --no-recommends
742 Do not install recommended packages, but only required ones.
743 The default behavior is determined by
744 [zypp.conf:solver.onlyRequires].
745
746 Expert Options:
747 Don’t use them unless you know you need them.
748
749 --allow-downgrade, --no-allow-downgrade
750 Whether to allow downgrading installed resolvables.
751
752 --allow-name-change, --no-allow-name-change
753 Whether to allow changing the names of installed resolvables.
754 Setting this to no will not replace packages which have been
755 renamed.
756
757 --allow-arch-change, --no-allow-arch-change
758 Whether to allow changing the architecture of installed
759 resolvables.
760
761 --allow-vendor-change, --no-allow-vendor-change
762 Whether to allow changing the vendor of installed resolvables.
763 Setting this to no might be useful if you do not want packages
764 from foreign repos being changed to the distributions version
765 (or vice versa).
766
767 This command also accepts the Download-and-install mode options
768 described in the install command.
769
770
771 remove (rm) [options] name...
772
773
774 remove (rm) [options] --capability capability...
775 Remove (uninstall) packages. + The remove command will uninstall
776 the selected and their dependent packages. It will not try to
777 install alternatives in order to keep dependent packages installed.
778 If you want this, use zypper install !name. + The packages can be
779 selected by their name or by a capability they provide. For details
780 on package selection see the install command description.
781
782 -r, --repo alias|name|#|URI
783 Work only with the repository specified by the alias, name,
784 number, or URI. This option can be used multiple times.
785
786 -t, --type type
787 Type of package (default: package). See section Package Types
788 for list of available package types. + Since patches are not
789 installed in sense of copying files or recording a database
790 entry, they cannot be uninstalled, even though zypper shows
791 them as installed. The installed status is determined solely
792 based on the installed status of its required dependencies. If
793 these dependencies are satisfied, the patch is rendered
794 installed.
795
796 -n, --name
797 Select packages by their name (default).
798
799 -C, --capability
800 Select packages by capabilities.
801
802 -D, --dry-run
803 Test the removal of packages, do not actually remove anything.
804
805 --details
806 Show the detailed installation summary.
807
808 -y, --no-confirm
809 Don’t require user interaction. Alias for the --non-interactive
810 global option.
811
812 Solver related options:
813
814
815 --debug-solver
816 Create solver test case for debugging. Use this option, if you
817 think the dependencies were not solved all right and attach the
818 resulting /var/log/zypper.solverTestCase directory to your bug
819 report. To use this option, simply add it to the problematic
820 install or remove command.
821
822 --force-resolution
823 Force the solver to find a solution by allowing to remove
824 packages with unfulfilled requirements. This is the default
825 when removing packages (zypper remove). This option overrides
826 --no-force-resolution in case both are specified on the command
827 line.
828
829 -R, --no-force-resolution
830 Do not force the solver to find a solution. Instead, report
831 dependency problems and prompt the user to resolve them
832 manually. This is the default except when removing packages
833 (zypper remove).
834
835 --solver-focus MODE
836 Set the solvers general attitude when resolving a job. Valid
837 modes are Job, Installed or Update. See section Package
838 Dependencies for details.
839
840 -u, --clean-deps
841 Automatically remove dependencies which become unneeded after
842 removal of requested packages.
843
844 -U, --no-clean-deps
845 No automatic removal of unneeded dependencies.
846
847 purge-kernels [options]
848 Autoremoves installed kernels. + Automatically cleans up installed
849 kernels according to the rules defined in
850 [zypp.conf:multiversion.kernels] which can be given as <version>,
851 latest(-N), running, oldest(+N).
852
853 --details
854 Show the detailed installation summary.
855
856 -D, --dry-run
857 Test the removal of packages, do not actually remove anything.
858
859 Update Management Commands
860 list-updates (lu) [options]
861 List available updates. + This command will list only installable
862 updates, i.e. updates which have no dependency problems, or which
863 do not change package vendor. This list is what the update command
864 will propose to install. To list all packages for which newer
865 version are available, use --all option.
866
867 -t, --type type
868 Type of package (default: package). See section Package Types
869 for list of available package types. + If patch is specified,
870 zypper acts as if the list-patches command was executed.
871
872 -r, --repo alias|name|#|URI
873 Work only with the repository specified by the alias, name,
874 number, or URI. This option can be used multiple times.
875
876 -a, --all
877 List all packages for which newer versions are available,
878 regardless whether they are installable or not.
879
880 --best-effort
881 See the update command for description.
882
883 Expert Options:
884 Don’t use them unless you know you need them.
885
886 --allow-downgrade, --no-allow-downgrade
887 Whether to allow downgrading installed resolvables.
888
889 --allow-name-change, --no-allow-name-change
890 Whether to allow changing the names of installed resolvables.
891 Setting this to no will not replace packages which have been
892 renamed.
893
894 --allow-arch-change, --no-allow-arch-change
895 Whether to allow changing the architecture of installed
896 resolvables.
897
898 --allow-vendor-change, --no-allow-vendor-change
899 Whether to allow changing the vendor of installed resolvables.
900 Setting this to no might be useful if you do not want packages
901 from foreign repos being changed to the distributions version
902 (or vice versa).
903
904 update (up) [options] [packagename]...
905 Update installed packages with newer versions, where possible. +
906 This command will not update packages which would require change of
907 package vendor unless the vendor is specified in
908 /etc/zypp/vendors.d, or which would require manual resolution of
909 problems with dependencies. Such non-installable updates will then
910 be listed in separate section of the summary as "The following
911 package updates will NOT be installed:". + To update individual
912 packages, specify one or more package names. You can use the * and
913 ? wildcard characters in the package names to specify multiple
914 packages matching the pattern.
915
916 -t, --type type
917 Type of package (default: package). See section Package Types
918 for list of available package types. + If patch is specified,
919 zypper acts as if the patches command was executed.
920
921 -r, --repo alias|name|#|URI
922 Work only with the repository specified by the alias, name,
923 number, or URI. This option can be used multiple times.
924
925 --skip-interactive
926 This will skip interactive patches, that is, those that need
927 reboot, contain a message, or update a package whose license
928 needs to be confirmed.
929
930 --with-interactive
931 Avoid skipping of interactive patches when in non-interactive
932 mode.
933
934 -l, --auto-agree-with-licenses
935 Automatically say yes to third party license confirmation
936 prompt. By using this option, you choose to agree with licenses
937 of all third-party software this command will install. This
938 option is particularly useful for administrators installing the
939 same set of packages on multiple machines (by an automated
940 process) and have the licenses confirmed before.
941
942 --auto-agree-with-product-licenses
943 Automatically accept product licenses only. This is used by
944 tools like SUSEconnect, which ask for confirmation before the
945 product gets registered. So there’s no need to confirm the
946 product license again at install time.
947
948 --replacefiles
949 Install the packages even if they replace files from other,
950 already installed, packages. Default is to treat file conflicts
951 as an error. --download-as-needed disables the fileconflict
952 check because access to all packages filelists is needed in
953 advance in order to perform the check.
954
955 -D, --dry-run
956 Test the update, do not actually install or update any package.
957 If used together with --download-only a meaningful file
958 conflict check can be performed (see section Package File
959 Conflicts).
960
961 --details
962 Show the detailed installation summary.
963
964 --best-effort
965 Do a best effort approach to update. This method does not
966 explicitly select packages with best version and architecture,
967 but instead requests installation of a package with higher
968 version than the installed one and leaves the rest on the
969 dependency solver. This method is always used for packages, and
970 is optional for products and patterns. It is not applicable to
971 patches.
972
973 -y, --no-confirm
974 Don’t require user interaction. Alias for the --non-interactive
975 global option.
976
977 Solver related options:
978
979
980 --debug-solver
981 Create solver test case for debugging. Use this option, if you
982 think the dependencies were not solved all right and attach the
983 resulting /var/log/zypper.solverTestCase directory to your bug
984 report. To use this option, simply add it to the problematic
985 install or remove command.
986
987 --force-resolution
988 Force the solver to find a solution by allowing to remove
989 packages with unfulfilled requirements. This is the default
990 when removing packages (zypper remove). This option overrides
991 --no-force-resolution in case both are specified on the command
992 line.
993
994 -R, --no-force-resolution
995 Do not force the solver to find a solution. Instead, report
996 dependency problems and prompt the user to resolve them
997 manually. This is the default except when removing packages
998 (zypper remove).
999
1000 --solver-focus MODE
1001 Set the solvers general attitude when resolving a job. Valid
1002 modes are Job, Installed or Update. See section Package
1003 Dependencies for details.
1004
1005 --recommends
1006 Install also recommended packages in addition to the required
1007 ones. The default behavior is determined by
1008 [zypp.conf:solver.onlyRequires].
1009
1010 --no-recommends
1011 Do not install recommended packages, but only required ones.
1012 The default behavior is determined by
1013 [zypp.conf:solver.onlyRequires].
1014
1015 Expert Options:
1016 Don’t use them unless you know you need them.
1017
1018 --allow-downgrade, --no-allow-downgrade
1019 Whether to allow downgrading installed resolvables.
1020
1021 --allow-name-change, --no-allow-name-change
1022 Whether to allow changing the names of installed resolvables.
1023 Setting this to no will not replace packages which have been
1024 renamed.
1025
1026 --allow-arch-change, --no-allow-arch-change
1027 Whether to allow changing the architecture of installed
1028 resolvables.
1029
1030 --allow-vendor-change, --no-allow-vendor-change
1031 Whether to allow changing the vendor of installed resolvables.
1032 Setting this to no might be useful if you do not want packages
1033 from foreign repos being changed to the distributions version
1034 (or vice versa).
1035
1036 This command also accepts the Download-and-install mode options
1037 described in the install command description.
1038
1039
1040 list-patches (lp) [options]
1041 List all applicable patches. + This command is similar to zypper
1042 list-updates -t patch. + Note that optional arguments of some of
1043 the following options must be specified using = instead of a space.
1044
1045 -b, --bugzilla[='#[,...']]
1046 List applicable patches for all Bugzilla issues, or issues
1047 whose number matches the given string.
1048
1049 --cve[='#[,...']]
1050 List applicable patches for all CVE issues, or issues whose
1051 number matches the given string.
1052
1053 --date YYYY-MM-DD[,...]
1054 List only patches issued up to, but not including, the
1055 specified date.
1056
1057 -g, --category category[,...]
1058 List only patches with this category. See section Package Types
1059 for a list of commonly used category values.
1060
1061 --severity severity[,...]
1062 List only patches with this severity. See section Package Types
1063 for a list of commonly used severity values.
1064
1065 --issues[=’string'[,...]]
1066 Look for issues whose number, summary, or description matches
1067 the specified string. Issues found by number are displayed
1068 separately from those found by descriptions. In the latter
1069 case, use zypper patch-info patchname to get information about
1070 issues the patch fixes.
1071
1072 -a, *--all
1073 By default, only patches that are applicable on your system are
1074 listed. This option causes all available released patches to be
1075 listed. This option can be combined with all the rest of the
1076 list-updates command options.
1077
1078 --with-optional, --without-optional
1079 Whether applicable optional patches should be treated as needed
1080 or be excluded. The default is to exclude optional patches.
1081
1082 -r, --repo alias|name|#|URI
1083 Work only with the repository specified by the alias, name,
1084 number, or URI. This option can be used multiple times.
1085
1086 patch-check (pchk)
1087 Check for patches. Displays a count of applicable patches and how
1088 many of them have the security category. + See also the EXIT CODES
1089 section for details on exit status of 0, 100, and 101 returned by
1090 this command.
1091
1092 --updatestack-only
1093 Check only for patches which affect the package management
1094 itself.
1095
1096 --with-optional, --without-optional
1097 Whether applicable optional patches should be treated as needed
1098 or be excluded. The default is to exclude optional patches.
1099
1100 -r, --repo alias|name|#|URI
1101 Check for patches only in the repository specified by the
1102 alias, name, number, or URI. This option can be used multiple
1103 times.
1104
1105 patch [options]
1106 Install all available needed patches. + If there are patches that
1107 affect the package management itself, those will be installed first
1108 and you will be asked to run the patch command again. + This
1109 command is similar to zypper update -t patch.
1110
1111 --updatestack-only
1112 Install only patches which affect the package management itself
1113 and exit.
1114
1115 --with-update
1116 Additionally try to update all packages not covered by patches.
1117 This is basically the same as running zypper update afterwards.
1118 + The option is ignored, if the patch command must update the
1119 update stack first, thus it can not be combined with the
1120 --updatestack-only option.
1121
1122 --with-optional, --without-optional
1123 Whether applicable optional patches should be treated as needed
1124 or be excluded. The default is to exclude optional patches.
1125
1126 -b, --bugzilla #[,...]
1127 Install patch fixing a Bugzilla issue specified by number. Use
1128 list-patches --bugzilla command to get a list of applicable
1129 patches for specific issues.
1130
1131 --cve #[,...]
1132 Install patch fixing a MITRE’s CVE issue specified by number.
1133 Use list-patches --cve command to get a list of applicable
1134 patches for specific issues.
1135
1136 --date YYYY-MM-DD[,...]
1137 Install only patches issued up to, but not including, the
1138 specified date.
1139
1140 -g, --category category[,...]
1141 Install only patches with this category. Use list-patches
1142 --category command to get a list of available patches with a
1143 specific category. See section Package Types for a list of
1144 commonly used category values.
1145
1146 --severity severity[,...]
1147 Install only patches with this severity. Use list-patches
1148 --severity command to get a list of available patches with a
1149 specific severity. See section Package Types for a list of
1150 commonly used severity values.
1151
1152 -r, --repo alias|name|#|URI
1153 Work only with the repository specified by the alias, name,
1154 number, or URI. This option can be used multiple times.
1155
1156 --skip-interactive
1157 This will skip interactive patches, that is, those that need
1158 reboot, contain a message, or update a package whose license
1159 needs to be confirmed.
1160
1161 --with-interactive
1162 Avoid skipping of interactive patches when in non-interactive
1163 mode.
1164
1165 -l, --auto-agree-with-licenses
1166 Automatically say yes to third party license confirmation
1167 prompt. By using this option, you choose to agree with licenses
1168 of all third-party software this command will install. This
1169 option is particularly useful for administrators installing the
1170 same set of packages on multiple machines (by an automated
1171 process) and have the licenses confirmed before.
1172
1173 --auto-agree-with-product-licenses
1174 Automatically accept product licenses only. This is used by
1175 tools like SUSEconnect, which ask for confirmation before the
1176 product gets registered. So there’s no need to confirm the
1177 product license again at install time.
1178
1179 --replacefiles
1180 Install the packages even if they replace files from other,
1181 already installed, packages. Default is to treat file conflicts
1182 as an error. --download-as-needed disables the fileconflict
1183 check because access to all packages filelists is needed in
1184 advance in order to perform the check.
1185
1186 -D, --dry-run
1187 Test the update, do not actually update. If used together with
1188 --download-only a meaningful file conflict check can be
1189 performed (see section Package File Conflicts).
1190
1191 --details
1192 Show the detailed installation summary.
1193
1194 -y, --no-confirm
1195 Don’t require user interaction. Alias for the --non-interactive
1196 global option.
1197
1198 Solver related options:
1199
1200
1201 --debug-solver
1202 Create solver test case for debugging. Use this option, if you
1203 think the dependencies were not solved all right and attach the
1204 resulting /var/log/zypper.solverTestCase directory to your bug
1205 report. To use this option, simply add it to the problematic
1206 install or remove command.
1207
1208 --force-resolution
1209 Force the solver to find a solution by allowing to remove
1210 packages with unfulfilled requirements. This is the default
1211 when removing packages (zypper remove). This option overrides
1212 --no-force-resolution in case both are specified on the command
1213 line.
1214
1215 -R, --no-force-resolution
1216 Do not force the solver to find a solution. Instead, report
1217 dependency problems and prompt the user to resolve them
1218 manually. This is the default except when removing packages
1219 (zypper remove).
1220
1221 --solver-focus MODE
1222 Set the solvers general attitude when resolving a job. Valid
1223 modes are Job, Installed or Update. See section Package
1224 Dependencies for details.
1225
1226 --recommends
1227 Install also recommended packages in addition to the required
1228 ones. The default behavior is determined by
1229 [zypp.conf:solver.onlyRequires].
1230
1231 --no-recommends
1232 Do not install recommended packages, but only required ones.
1233 The default behavior is determined by
1234 [zypp.conf:solver.onlyRequires].
1235
1236 Expert Options:
1237 Don’t use them unless you know you need them.
1238
1239 --allow-downgrade, --no-allow-downgrade
1240 Whether to allow downgrading installed resolvables.
1241
1242 --allow-name-change, --no-allow-name-change
1243 Whether to allow changing the names of installed resolvables.
1244 Setting this to no will not replace packages which have been
1245 renamed.
1246
1247 --allow-arch-change, --no-allow-arch-change
1248 Whether to allow changing the architecture of installed
1249 resolvables.
1250
1251 --allow-vendor-change, --no-allow-vendor-change
1252 Whether to allow changing the vendor of installed resolvables.
1253 Setting this to no might be useful if you do not want packages
1254 from foreign repos being changed to the distributions version
1255 (or vice versa).
1256
1257 This command also accepts the Download-and-install mode options
1258 described in the install command description.
1259
1260
1261 dist-upgrade (dup) [options]
1262 Perform a distribution upgrade. This command applies the state of
1263 (specified) repositories onto the system; upgrades (or even
1264 downgrades) installed packages to versions found in repositories,
1265 removes packages that are no longer in the repositories and pose a
1266 dependency problem for the upgrade, handles package splits and
1267 renames, etc. + If no repositories are specified via the --from
1268 option, zypper will do a global upgrade with all defined
1269 repositories. This global form of dup will also consider unchanged
1270 installed packages and re-evaluate their dependencies. This can be
1271 a problem if the system contains conflicting repositories, like
1272 repositories for two different distribution releases. This often
1273 happens if one forgets to remove an older release repository after
1274 adding a new one, say openSUSE 13.1 and openSUSE 13.2. + For all
1275 repositories which have the distribution version within their URL
1276 (like https://download.opensuse.org/distribution/13.1/repo/oss)
1277 using the $releasever variable instead may be helpful (
1278 https://download.opensuse.org/distribution/$releasever/repo/oss).
1279 The variable is per default substituted by the current
1280 distributions version (13.1). + This value can be temporarily
1281 overwritten in the current zypper command by using the --releasever
1282 global option. Calling zypper --releasever 13.2'...' will cause
1283 these repos to use the new location
1284 (https://download.opensuse.org/distribution/13.2/repo/oss) without
1285 the need to add/remove anything. But you’ll need to use
1286 --releasever 13.2 with every zypper command until the distribution
1287 upgrade was actually performed. Once the dup is done, $releasever
1288 will default to the new distribution version 13.2 and --releasever
1289 is no longer needed. + It might be less tedious to persistently set
1290 $releasever to the target distribution value, so --releasever is
1291 not needed at all. See section Repository Management for more info
1292 about variable substitution and the definition of custom variables.
1293 + Note: distribution upgrades in openSUSE are currently only
1294 supported between consecutive releases. To upgrade multiple
1295 releases, upgrade each consecutive release one at a time. For more
1296 details see http://en.opensuse.org/SDB:System_upgrade and the
1297 openSUSE release notes at http://doc.opensuse.org/release-notes/.
1298
1299 --from alias|name|#|URI
1300 The option can be used multiple times and restricts the upgrade
1301 to the specified repositories only. Nevertheless all enabled
1302 repositories are visible to the resolver and will be considered
1303 to satisfy dependency problems.
1304
1305 -r, --repo alias|name|#|URI
1306 Work only with the repository specified by the alias, name,
1307 number, or URI. + Using --repo is discouraged as it currently
1308 hides unmentioned repositories from the resolver, leading to
1309 inexpertly decisions. This is because packages originally
1310 installed from the hidden repos will now be treated as orphaned
1311 or dropped. They can be silently removed if involved in a
1312 dependency conflict. In the future --repo will become an alias
1313 for --from.
1314
1315 -l, --auto-agree-with-licenses
1316 Automatically say yes to third party license confirmation
1317 prompt. By using this option, you choose to agree with licenses
1318 of all third-party software this command will install. This
1319 option is particularly useful for administrators installing the
1320 same set of packages on multiple machines (by an automated
1321 process) and have the licenses confirmed before.
1322
1323 --auto-agree-with-product-licenses
1324 Automatically accept product licenses only. This is used by
1325 tools like SUSEconnect, which ask for confirmation before the
1326 product gets registered. So there’s no need to confirm the
1327 product license again at install time.
1328
1329 --replacefiles
1330 Install the packages even if they replace files from other,
1331 already installed, packages. Default is to treat file conflicts
1332 as an error. --download-as-needed disables the fileconflict
1333 check because access to all packages filelists is needed in
1334 advance in order to perform the check.
1335
1336 -D, --dry-run
1337 Test the upgrade, do not actually install or update any
1338 package. If used together with --download-only a meaningful
1339 file conflict check can be performed (see section Package File
1340 Conflicts).
1341
1342 -y, --no-confirm
1343 Don’t require user interaction. Alias for the --non-interactive
1344 global option.
1345
1346 --details
1347 Show the detailed installation summary.
1348
1349 Solver related options:
1350
1351
1352 --debug-solver
1353 Create solver test case for debugging. Use this option, if you
1354 think the dependencies were not solved all right and attach the
1355 resulting /var/log/zypper.solverTestCase directory to your bug
1356 report. To use this option, simply add it to the problematic
1357 install or remove command.
1358
1359 --force-resolution
1360 Force the solver to find a solution by allowing to remove
1361 packages with unfulfilled requirements. This is the default
1362 when removing packages (zypper remove). This option overrides
1363 --no-force-resolution in case both are specified on the command
1364 line.
1365
1366 -R, --no-force-resolution
1367 Do not force the solver to find a solution. Instead, report
1368 dependency problems and prompt the user to resolve them
1369 manually. This is the default except when removing packages
1370 (zypper remove).
1371
1372 --solver-focus MODE
1373 Set the solvers general attitude when resolving a job. Valid
1374 modes are Job, Installed or Update. See section Package
1375 Dependencies for details.
1376
1377 --recommends
1378 Install also recommended packages in addition to the required
1379 ones. The default behavior is determined by
1380 [zypp.conf:solver.onlyRequires].
1381
1382 --no-recommends
1383 Do not install recommended packages, but only required ones.
1384 The default behavior is determined by
1385 [zypp.conf:solver.onlyRequires].
1386
1387 Expert Options:
1388 Don’t use them unless you know you need them.
1389
1390 --allow-downgrade, --no-allow-downgrade
1391 Whether to allow downgrading installed resolvables.
1392
1393 --allow-name-change, --no-allow-name-change
1394 Whether to allow changing the names of installed resolvables.
1395 Setting this to no will not replace packages which have been
1396 renamed.
1397
1398 --allow-arch-change, --no-allow-arch-change
1399 Whether to allow changing the architecture of installed
1400 resolvables.
1401
1402 --allow-vendor-change, --no-allow-vendor-change
1403 Whether to allow changing the vendor of installed resolvables.
1404 Setting this to no might be useful if you do not want packages
1405 from foreign repos being changed to the distributions version
1406 (or vice versa).
1407
1408 This command also accepts the Download-and-install mode options
1409 described in the install command description.
1410
1411
1412 Examples:
1413
1414
1415 $ zypper dup --from factory --from packman
1416 Upgrade the system to the latest versions provided by the
1417 factory and packman repositories.
1418
1419 Query Commands
1420 search (se) [options] [querystring|capability]...
1421 Search for packages matching any of the given search strings. * and
1422 ? wildcard characters can be used within search strings. If the
1423 search string is enclosed in / (e.g. /^k.*e$/) it’s interpreted as
1424 a regular expression. See the install command for details about how
1425 to specify a capability. + Results of the search are printed in a
1426 table with columns S+tatus+, Name, Summary and Type of package. +
1427 In the detailed view (se -s) all available instances of matching
1428 packages are shown; each version in each repository on a separate
1429 line, with columns S+tatus+, Name, Type, Version, Arch+itecture+
1430 and Repository. For installed packages Repository shows either a
1431 repository that provides exactly the installed version of the
1432 package, or, if the exact version is not provided by any known
1433 repo, (System Packages) (or @System). Those installed packages not
1434 provided by any repo are often denoted as being unwanted, orphaned
1435 or dropped. + The S+tatus+ column can contain the following values:
1436
1437 i+
1438 installed by user request
1439
1440 i
1441 installed automatically (by the resolver, see section
1442 Automatically installed packages)
1443
1444 v
1445 a different version is installed
1446
1447 empty
1448 neither of the above cases
1449
1450 !
1451 a patch in needed state
1452
1453
1454
1455
1456 .l
1457 is shown in the 2nd column if the item is locked (see section
1458 Package Locks Management)
1459
1460 .R
1461 is shown in the 2nd column if the item has been retracted (see
1462 patch in section Package Types)
1463
1464
1465 The v status is only shown if the version or the repository matters
1466 (see --details or --repo), and the installed instance differs from
1467 the one listed in version or repository. + This command accepts the
1468 following options:
1469
1470 --match-substrings
1471 Matches for search strings may be partial words (default).
1472
1473 --match-words
1474 Matches for search strings may only be whole words.
1475
1476 -x, --match-exact
1477 Searches for an exact name of the package.
1478
1479 --provides
1480 Search for packages which provide the search strings.
1481
1482 --requires
1483 Search for packages which require the search strings.
1484
1485 --recommends
1486 Search for packages which recommend the search strings.
1487
1488 --suggests
1489 Search for packages which suggest the search strings.
1490
1491 --conflicts
1492 Search for packages conflicting with the search strings.
1493
1494 --obsoletes
1495 Search for packages which obsolete the search strings.
1496
1497 --supplements
1498 Search for packages which supplement the search strings.
1499
1500 --provides-pkg
1501 Search for all packages that provide any of the provides of the
1502 package(s) matched by the input parameters.
1503
1504 --requires-pkg
1505 Search for all packages that require any of the provides of the
1506 package(s) matched by the input parameters.
1507
1508 --recommends-pkg
1509 Search for all packages that recommend any of the provides of
1510 the package(s) matched by the input parameters.
1511
1512 --supplements-pkg
1513 Search for all packages that supplement any of the provides of
1514 the package(s) matched by the input parameters.
1515
1516 --conflicts-pkg
1517 Search for all packages that conflict with any of the
1518 package(s) matched by the input parameters.
1519
1520 --obsoletes-pkg
1521 Search for all packages that obsolete any of the package(s)
1522 matched by the input parameters.
1523
1524 --suggests-pkg
1525 Search for all packages that suggest any of the provides of the
1526 package(s) matched by the input parameters.
1527
1528 -n, --name
1529 Useful together with dependency options, otherwise searching in
1530 package name is default.
1531
1532 -f, --file-list
1533 Search in the file list of packages. Note that the full file
1534 list is available for installed packages only. For remote
1535 packages only an abstract of their file list is available
1536 within the metadata (files containing /etc/, /bin/, or /sbin/).
1537
1538 -d, --search-descriptions
1539 Search also in summaries and descriptions.
1540
1541 -C, --case-sensitive
1542 Perform case-sensitive search.
1543
1544 -i, --installed-only
1545 Show only installed packages.
1546
1547 -u, --not-installed-only
1548 Show only packages which are not installed. + The old option
1549 name --uninstalled-only is still acceptable, but should be
1550 considered deprecated.
1551
1552 -t, --type type
1553 Search only for packages of specified type. See section Package
1554 Types for a list of available package types. Multiple --type
1555 options are allowed. + See also the type-specific query
1556 commands like packages, patterns, etc.
1557
1558 -r, --repo alias|name|#|URI
1559 Work only with the repository specified by the alias, name,
1560 number, or URI. This option can be used multiple times.
1561
1562 --sort-by-name
1563 Sort packages by name (default).
1564
1565 --sort-by-repo
1566 Sort packages by repository, not by name.
1567
1568 -s, --details
1569 Show all available versions of matching packages, each version
1570 in each repository on a separate line.
1571
1572 -v, --verbose
1573 Like --details with additional information where the search has
1574 matched (useful when searching for dependencies, e.g.
1575 --provides).
1576
1577 Examples:
1578
1579
1580 $ zypper se 'yast*'
1581 Search for YaST packages (quote the string to prevent the
1582 shell from expanding the wildcard).
1583
1584 $ zypper se -s --match-exact kernel-default
1585 Show all available versions of package kernel-default
1586
1587 $ zypper se -dC --match-words RSI
1588 Look for RSI acronym (case-sensitively), also in summaries
1589 and descriptions.
1590
1591 packages (pa) [options] [repository]...
1592 List all available packages or all packages from specified
1593 repositories. Similar to zypper search -s -t package.
1594
1595 -r, --repo alias|name|#|URI
1596 Just another means to specify repositories.
1597
1598 -i, --installed-only
1599 Show only installed packages.
1600
1601 -u, --not-installed-only
1602 Show only packages which are not installed. + The old option
1603 name --uninstalled-only is still acceptable, but should be
1604 considered deprecated.
1605
1606 --orphaned
1607 Show packages which are orphaned (without repository).
1608
1609 --suggested
1610 Show packages which are suggested.
1611
1612 --recommended
1613 Show packages which are recommended.
1614
1615 --unneeded
1616 Show packages which are unneeded.
1617
1618 patches (pch) [options] [repository]...
1619 List all available patches from specified repositories, including
1620 those not needed. Short for zypper lp -a.
1621
1622 -r, --repo alias|name'|#|URI
1623 Just another means to specify repositories.
1624
1625 patterns (pt) [options] [repository]...
1626 List all available patterns or all patterns from specified
1627 repositories. Similar to zypper search -s -t pattern.
1628
1629 -r, --repo alias|name|#|URI
1630 Just another means to specify repositories.
1631
1632 -i, --installed-only
1633 Show only installed patterns.
1634
1635 -u, --not-installed-only
1636 Show only patterns which are not installed. + The old option
1637 name --uninstalled-only is still acceptable, but should be
1638 considered deprecated.
1639
1640 products (pd) [options] [repository]...
1641 List all available products or all products from specified
1642 repositories. Similar to zypper search -s -t product, but shows
1643 also the type of the product (base, add-on).
1644
1645 -r, --repo 'alias|name|#|URI
1646 Just another means to specify repositories.
1647
1648 -i, --installed-only
1649 Show only installed products.
1650
1651 -u, --not-installed-only
1652 Show only products which are not installed. + The old option
1653 name --uninstalled-only is still acceptable, but should be
1654 considered deprecated.
1655
1656 --xmlfwd tag
1657 XML output only: Literally forward the XML tag, if it is found
1658 in an installed products .prod-file (in /etc/products.d). +
1659 Using this option, for each installed product an <xmlfwd> node
1660 will be created inside the <product> output node of the
1661 product. + Tag defines the name (or /-separated path) of a
1662 xml-tag inside an installed products .prod-file. If the tag is
1663 present inside the products .prod-file, the tag and it’s
1664 content is literally forwarded into the products <xmlfwd>
1665 output node. + The option may be specified multiple times.
1666
1667 Examples:
1668
1669
1670 $ zypper -x pd --xmlfwd name --xmlfwd register/target
1671
1672
1673 what-provides (wp) capability
1674 List all packages providing the specified capability. See also the
1675 install command for info about specifying capabilities.
1676
1677 The command line is automatically transformed into the appropriate
1678 search command, e.g.:
1679
1680
1681 $ zypper what-provides 'zypper>1.6'
1682
1683
1684 $ zypper se --provides --match-exact 'zypper>1.6'
1685
1686
1687 Repository Management
1688 Zypper is able to work with YaST, RPM-MD (yum) software repositories,
1689 and plain directories containing .rpm files.
1690
1691 Repositories are primarily identified using their URI or alias. Alias
1692 serves as a shorthand for the long URI or name of the repository. The
1693 name of the repository should briefly describe the repository and is
1694 shown to the user in tables and messages. The name is not required, and
1695 if not known, the alias is shown instead. The alias is required and
1696 uniquely identifies the repository on the system.
1697
1698 The alias, name, URI, or the number from zypper repos list can be used
1699 to specify a repository as an argument of various zypper commands and
1700 options like refresh, --repo, or --from.
1701
1702 Apart from the above, repositories have several other properties which
1703 can be set using the commands described in this section below, or by
1704 manually editing the repository definition files (.repo files, see
1705 section FILES).
1706
1707 Variable substitution:
1708 You can use the following variables within a .repo or .service files
1709 name and URI values:
1710
1711 $arch
1712 Use this variable to refer to the system’s CPU architecture.
1713
1714 $basearch
1715 Use this variable to refer to the base architecture of the system.
1716 For example, iX86 machines have a base architecture of i386, while
1717 AMD64 and Intel64 have x86_64.
1718
1719 $releasever, $releasever_major, $releasever_minor
1720 Use this variable to refer to the version of your openSUSE or SUSE
1721 Linux. The value is obtained from the /product/version XML-node in
1722 /etc/products.d/baseproduct. + This is useful for related
1723 repositories like packman
1724 (http://ftp.gwdg.de/pub/linux/packman/suse/$releasever), which
1725 shall always fit the installed distribution, even after a
1726 distribution upgrade. + To help performing a distribution upgrade,
1727 the value of $releasever can be persistently set to a user defined
1728 value by creating a custom variable with that name (see below).
1729 This way you can easily switch all repositories using $releasever
1730 to the new version (provided the server layouts did not change and
1731 new repos are already available). + For a single zypper command the
1732 value of $releasever can be temporarily overwritten by using the
1733 --releasever global option. + In addition $releasever_major will be
1734 set to the leading portion up to (but not including) the 1st dot;
1735 $releasever_minor to the trailing portion after the 1st dot. If
1736 there’s no dot in $releasever, $releasever_major is the same as
1737 $releasever and $releasever_minor is empty.
1738
1739 Custom Variables
1740 A custom repository variable is defined by creating a file in
1741 /etc/zypp/vars.d. The variable name equals the file name. The files
1742 first line (up to but not including the newline character) defines
1743 the variables value. Valid variable(file) names consist of
1744 alphanumeric chars and underscore only.
1745
1746 This is how you can set a custom variable, e.g. $releasever to a value
1747 of 99.0:
1748 echo "99.0" >/etc/zypp/vars.d/releasever
1749
1750 To remove the custom variable, simply delete its file in
1751 /etc/zypp/vars.d:
1752 rm /etc/zypp/vars.d/releasever
1753
1754 To check where you already use $releasever call:
1755 zypper --releasever @--HERE--@ lr -u
1756
1757 Remember to protect the $ when using these variables on a shell command
1758 line:
1759 zypper ar -f http://ftp.gwdg.de/pub/linux/packman/suse/\$releasever
1760 packman
1761
1762 If a variable is followed by an alphanumeric character or underscore it
1763 needs to be enclosed in {}:
1764 zypper ar -f
1765 http://ftp.gwdg.de/pub/linux/packman/suse/\${’releasever'}_packman
1766
1767 Bash style definition of default ${’variable':-’word'} and alternate
1768 ${’variable':+’word'} values:
1769 SLE-${’releasever_major'}${’releasever_minor':+-SP-$releasever_minor}
1770
1771 NOTE:
1772 Variable substitution within an URIs authority is limited to host
1773 and port. Bash style definition of default and alternate values is
1774 not supported. No variables can be used in an URIs scheme, user and
1775 password.
1776
1777 Supported URI formats:
1778 scheme: @]host[:’port']] /’path' [?’query'] [#’fragment']
1779 Special characters occurring in URI components (like a @ in a
1780 password) must be %-encoded (%40).
1781
1782 CD or DVD drive
1783 Optionally with devices list for probing.
1784
1785 ;; *cd:///*
1786 ;; *dvd:/subdir*'?devices=/dev/sr0,/dev/sr1'
1787
1788 FTP/HTTP/HTTPS directory tree
1789 The ftp URL scheme supports absolute and relative paths to the
1790 default ftp server directory (RFC1738, Section 3.2.2). To use an
1791 absolute path, you have to prepend the path with an additional
1792 slash, what results in a /%2f combination (second / encoded to %2f)
1793 at the begin of the URL path. This is important, especially in user
1794 authenticated ftp, where the users home is usually the default
1795 directory of the server (except when the server chroots into the
1796 users home directory). + Explicit proxy settings may be passed via
1797 optional parameters proxy, proxyport, proxyuser and proxypass. +
1798 HTTP authentication methods to use can be defined as comma
1799 separated list via optional parameter auth. Valid methods are e.g.
1800 basic, digest, ntlm, negotiate. Note, that this list depends on the
1801 list of methods supported by the curl library. + SSL verification
1802 behavior can be changed using the ssl_verify option (this should be
1803 used with care). Valid values are yes (the secure default), host,
1804 peer or no. Host just checks that the "Common Name" field or a
1805 "Subject Alternate Name" field in the servers certificate matches
1806 the host name in the URL. Peer just verifies whether the
1807 certificate provided by the server is authentic against the chain
1808 of digital signatures found in ssl_capath. No performs no checks at
1809 all. Yes is the secure default, performing host and peer check. +
1810 For SSL client certificate authentication use the options
1811 ssl_clientcert to define the path to the ssl client certificate and
1812 ssl_clientkey to define the path to the SSL client key. Use
1813 ssl_capath to change the directory holding the CA certificates
1814 (default is /etc/ssl/certs).
1815
1816 ;; *ftp://user:pass@server/path/to/media/dir*
1817 ;; *ftp://user:pass@server/%2fhome/user/path/to/media/dir*
1818 ;; *http://user:pass@server/path*
1819 ;; *https://user:pass@server/path*'?proxy=foo&proxyuser=me&proxypass=pw'
1820 ;; *https://server/path*'?ssl_clientcert=/entitlement/1234.pem&ssl_clientkey=/entitlement/1234-key.pem'
1821
1822 Disk volume (partition)
1823 Mandatory device parameter specifying the name of the block device
1824 to mount. The name of the optional filesystem defaults to "auto".
1825
1826 ;; *hd:/subdir?device=/dev/sda1*'&filesystem=reiserfs'
1827
1828 Local directory tree
1829 ;; dir:/directory/name
1830
1831 Media in an ISO image (loopback mounted)
1832 + Mandatory iso parameter specifying the name of the iso file.
1833 Optional url parameter specifying the URL to the directory
1834 containing the iso file. Optional mnt parameter specifying the
1835 preferred attach point for the source media url. Optional
1836 filesystem name of the filesystem used in the iso file. Defaults to
1837 "auto".
1838
1839 ;; *iso:/?iso=CD1.iso*'&url=nfs://server/path/to/media'
1840 ;; *iso:/?iso=CD1.iso*'&url=hd:/?device=/dev/hda'
1841 ;; *iso:/subdir?iso=DVD1.iso*'&url=nfs://nfs-server/directory&mnt=/nfs/attach/point&filesystem=udf'
1842
1843 NFS exported directory tree
1844 To use NFSv4 either use schema tnfsv4:// or pass an optional
1845 parameter type=nfs4. Additional mountoptions can be passed as comma
1846 separated list. Defaults to "ro".
1847
1848 ;; *nfs://nfs-server/exported/path*
1849 ;; *nfs://nfs-server/exported/path*'?mountoptions=ro&type=nfs4'
1850 ;; *nfs4://nfs-server/exported/path*'?mountoptions=ro'
1851
1852 CIFS/SMB directory tree
1853 There is no difference between cifs and smb scheme (any more). In
1854 both cases the cifs filesystem is used. Additional mountoptions can
1855 be passed as comma separated list. Defaults to "ro,guest". Specify
1856 "noguest" to turn off "guest". This is necessary if Samba is
1857 configured to reject guest connections. + Optional workgroup or
1858 domain parameter set the name of the workgroup. As alternative to
1859 passing username:password in the URI authority the parameters user
1860 and pass can be used.
1861
1862 ;; *smb://servername/share/path/on/the/share*
1863 ;; *cifs://usern:passw@servername/share/path/on/the/share*'?mountoptions=ro,noguest'
1864 ;; *cifs://usern:passw@servername/share/path/on/the/share*'?workgroup=mygroup'
1865 ;; *cifs://servername/share/path/on/the/share*'?user=usern&pass=passw'
1866
1867 OpenSUSE Build Build Service (OBS) repositories
1868 Zypper also accepts special URIs identifying openSUSE Build Service
1869 (OBS) repositories in the addrepo command. These URIs have the form
1870 of obs://’project'/[platform], where project is the name of the OBS
1871 project and platform is the target platform (OS) for which the
1872 repository is intended. + If platform is omitted,
1873 openSUSE_$releasever is used unless a value for obs.platform is
1874 defined in zypper.conf. If you are following openSUSE_Factory or
1875 openSUSE_Tumbleweed you may need to set these as your default
1876 platform. But we can only guess, how the directory containing the
1877 repository that fits your distribution is named on the server. In
1878 case of doubt you need to look up the right URL in a browser.
1879
1880 ;; *obs://zypp:Head/*
1881 ;; *obs://zypp:Head/openSUSE_Factory*
1882 ;; *obs://zypp:Head/openSUSE_Factory_Staging_Gcc49_standard*
1883
1884
1885 addrepo (ar) [options] URI alias
1886
1887
1888 addrepo (ar) [options] FILE.repo
1889 Add a new repository specified by URI and assign specified alias to
1890 it or specify URI to a .repo file. + Newly added repositories have
1891 auto-refresh disabled by default (except for repositories imported
1892 from a .repo, having the auto-refresh enabled). To enable
1893 auto-refresh use addrepo -f, or the --refresh option of the
1894 modifyrepo command. + Also, this command does not automatically
1895 refresh the newly added repositories. The repositories will get
1896 refreshed when used for the first time, or you can use the refresh
1897 command after finishing your modifications with *repo commands.
1898
1899 -r, --repo file.repo
1900 Read URI and alias from specified .repo file
1901
1902 -c, --check
1903 Probe given URI.
1904
1905 -C, --no-check
1906 Don’t probe URI, probe later during refresh.
1907
1908 -n, --name name
1909 Specify descriptive name for the repository.
1910
1911 -e, --enable
1912 Enable the repository (the default).
1913
1914 -d, --disable
1915 Add the repository as disabled. Repositories are added as
1916 enabled by default.
1917
1918 -f, --refresh
1919 Enable autorefresh of the repository. The autorefresh is
1920 disabled by default when adding new repositories.
1921
1922 -F, --no-refresh
1923 Disable auto-refresh for the repository.
1924
1925 -p, --priority positive-integer
1926 Set the priority of the repository. Priority of 1 is the
1927 highest, the higher the number the lower the priority. -p 0
1928 will set the priority back to the default (99). Packages from
1929 repositories with higher priority will be preferred even in
1930 case there is a higher installable version available in the
1931 repository with a lower priority.
1932
1933 -k, --keep-packages
1934 Enable RPM files caching for the repository.
1935
1936 -K, --no-keep-packages
1937 Disable RPM files caching.
1938
1939 -g, --gpgcheck
1940 Enable GPG check for this repository. The behavior as described
1941 in section GPG checks.
1942
1943 --gpgcheck-strict
1944 Enable strict GPG check for this repository. Even packages from
1945 signed repositories need a valid GPG signature and using
1946 unsigned packages must be confirmed.
1947
1948 --gpgcheck-allow-unsigned
1949 Short hand for --gpgcheck-allow-unsigned-repo
1950 --gpgcheck-allow-unsigned-package
1951
1952 --gpgcheck-allow-unsigned-repo
1953 Enable GPG check but allow the repository metadata to be
1954 unsigned.
1955
1956 --gpgcheck-allow-unsigned-package
1957 Enable GPG check but allow installing unsigned packages from
1958 this repository.
1959
1960 -G, --no-gpgcheck
1961 Disable GPG check for this repository. + Disabling GPG checks
1962 is not recommended. Signing data enables the recipient to
1963 verify that no modifications occurred after the data were
1964 signed. Accepting data with no, wrong or unknown signature can
1965 lead to a corrupted system and in extreme cases even to a
1966 system compromise.
1967
1968 --default-gpgcheck
1969 Use the global GPG check settings defined in
1970 /etc/zypp/zypp.conf. This is the default. + Unless you have
1971 modified your zypp.conf settings, this is the same as
1972 --gpgcheck, the behavior as described in section GPG checks.
1973
1974 Examples:
1975
1976
1977 $ zypper ar -c -n 'Packman 11.1 repo'
1978 http://packman.iu-bremen.de/suse/11.1 packman
1979 Add a HTTP repository, probe it, name it Packman 11.1 repo,
1980 and use packman as alias.
1981
1982 $ zypper ar
1983 https://download.opensuse.org/repositories/zypp:/svn/openSUSE_Factory/zypp:svn.repo
1984
1985
1986 $ zypper ar myreposbackup.repo
1987 Add repositories from a .repo file.
1988
1989 removerepo (rr) [options] alias|name|#|URI...
1990 Delete repositories specified by aliases, names, numbers, URIs or
1991 one of the aggregate options.
1992
1993 --loose-auth
1994 Ignore user authentication data in the URI
1995
1996 --loose-query
1997 Ignore query string in the URI
1998
1999 -a, --all
2000 Apply changes to all repositories.
2001
2002 -l, --local
2003 Apply changes to all local repositories.
2004
2005 -t, --remote
2006 Apply changes to all remote repositories (http/https/ftp).
2007
2008 -m, --medium-type type
2009 Apply changes to repositories of specified type. The type
2010 corresponds to the repository URI scheme identifier like http,
2011 dvd, etc. You can find complete list of valid types at
2012 http://en.opensuse.org/openSUSE:Libzypp_URIs.
2013
2014 repos (lr) [options] [repo]...
2015 List all defined repositories or show detailed information about
2016 those specified as arguments + The following data can be printed
2017 for each repository found on the system: # (repository number),
2018 Alias (unique identifier), Name, Enabled (whether the repository is
2019 enabled), GPG Check (whether GPG check for repository metadata (r)
2020 and/or downloaded rpm packages (p) is enabled), Refresh (whether
2021 auto-refresh is enabled for the repository), Priority, Type
2022 (repository meta-data type: rpm-md, yast2, plaindir). Which of the
2023 data is shown is determined by command line options listed below
2024 and the main.repoListColumns setting from zypper.conf. By default,
2025 #, Alias, Name, Enabled, GPG Check and Refresh is shown. +
2026 Repository number is a unique identifier of the repository in
2027 current set of repositories. If you add, remove or change a
2028 repository, the numbers may change. Keep that in mind when using
2029 the numbers with the repository handling commands. On the other
2030 hand, using the alias instead of the number is always safe. + To
2031 show detailed information about specific repositories, specify them
2032 as arguments, either by alias, name, number from simple zypper lr,
2033 or by URI; e.g. fB zypper lr factory, or zypper lr 2.
2034
2035 -e, --export FILE.repo|-
2036 This option causes zypper to write repository definition of all
2037 defined repositories into a single file in repo file format. If
2038 - is specified instead of a file name, the repositories will be
2039 written to the standard output.
2040
2041 -a, --alias
2042 Add alias column to the output.
2043
2044 -n, --name
2045 Add name column to the output.
2046
2047 -u, --uri
2048 Add base URI column to the output.
2049
2050 -p, --priority
2051 Add repository priority column to the output.
2052
2053 -r, --refresh
2054 Add the autorefresh column to the output.
2055
2056 -d, --details
2057 Show more information like URI, priority, type, etc.
2058
2059 -E, --show-enabled-only
2060 Show enabled repositories only.
2061
2062 -U, --sort-by-uri
2063 Add base URI column and sort the list it.
2064
2065 -P, --sort-by-priority
2066 Add repository priority column and sort the list by it.
2067
2068 -A, --sort-by-alias
2069 Sort the list by alias.
2070
2071 -N, --sort-by-name
2072 Sort the list by name.
2073
2074 Examples:
2075
2076
2077 $ zypper repos -e myreposbackup.repo
2078 Backup your repository setup:
2079
2080 $ zypper lr -pu
2081 List repositories with their URIs and priorities:
2082
2083 renamerepo (nr) alias|name|#|URI new-alias
2084 Assign new alias to the repository specified by alias, name,
2085 number, or URI.
2086
2087 Examples:
2088
2089
2090 $ zypper nr 8 myrepo
2091 Rename repository number 8 to myrepo (useful if the repo
2092 has some dreadful alias which is not usable on the command
2093 line).
2094
2095 modifyrepo (mr) options alias|name|#|URI...
2096
2097
2098 modifyrepo (mr) options --all|--remote|--local|--medium-type
2099 Modify properties of repositories specified by alias, name, number,
2100 or URI or one of the aggregate options.
2101
2102 -n, --name name
2103 Set a descriptive name for the repository.
2104
2105 -e, --enable
2106 Enable the repository.
2107
2108 -d, --disable
2109 Disable the repository.
2110
2111 -f, --refresh (legacy: -r)
2112 Enable auto-refresh for the repository.
2113
2114 -F, --no-refresh (legacy: -R)
2115 Disable auto-refresh for the repository.
2116
2117 -p, --priority positive-integer
2118 Set the priority of the repository. Priority of 1 is the
2119 highest, the higher the number the lower the priority. -p 0
2120 will set the priority back to the default (99). Packages from
2121 repositories with higher priority will be preferred even in
2122 case there is a higher installable version available in the
2123 repository with a lower priority.
2124
2125 -k, --keep-packages
2126 Enable RPM files caching.
2127
2128 -K, --no-keep-packages
2129 Disable RPM files caching.
2130
2131 -g, --gpgcheck
2132 Enable GPG check for this repository. The behavior as described
2133 in section GPG checks.
2134
2135 --gpgcheck-strict
2136 Enable strict GPG check for this repository. Even packages from
2137 signed repositories need a valid GPG signature and using
2138 unsigned packages must be confirmed.
2139
2140 --gpgcheck-allow-unsigned
2141 Short hand for --gpgcheck-allow-unsigned-repo
2142 --gpgcheck-allow-unsigned-package
2143
2144 --gpgcheck-allow-unsigned-repo
2145 Enable GPG check but allow the repository metadata to be
2146 unsigned.
2147
2148 --gpgcheck-allow-unsigned-package
2149 Enable GPG check but allow installing unsigned packages from
2150 this repository.
2151
2152 -G, --no-gpgcheck
2153 Disable GPG check for this repository. + Disabling GPG checks
2154 is not recommended. Signing data enables the recipient to
2155 verify that no modifications occurred after the data were
2156 signed. Accepting data with no, wrong or unknown signature can
2157 lead to a corrupted system and in extreme cases even to a
2158 system compromise.
2159
2160 --default-gpgcheck
2161 Use the global GPG check settings defined in
2162 /etc/zypp/zypp.conf. This is the default. + Unless you have
2163 modified your zypp.conf settings, this is the same as
2164 --gpgcheck, the behavior as described in section GPG checks.
2165
2166 -a, --all
2167 Apply changes to all repositories.
2168
2169 -l, --local
2170 Apply changes to all local repositories.
2171
2172 -t, --remote
2173 Apply changes to all remote repositories (http/https/ftp).
2174
2175 -m, --medium-type type
2176 Apply changes to repositories of specified type. The type
2177 corresponds to the repository URI scheme identifier like http,
2178 dvd, etc. You can find complete list of valid types at
2179 http://en.opensuse.org/openSUSE:Libzypp_URIs.
2180
2181 Examples:
2182
2183
2184 $ zypper mr -kt
2185 Enable keeping of packages for all remote repositories.
2186
2187 $ zypper mr -er updates
2188 Enable repository updates and switch on autorefresh for the
2189 repo.
2190
2191 $ zypper mr -da
2192 Disable all repositories.
2193
2194 refresh (ref) [alias|name|#|URI]...
2195 Refresh repositories specified by their alias, name, number, or
2196 URI. If no repositories are specified, all enabled repositories
2197 will be refreshed.
2198
2199 -f, --force
2200 Force a complete refresh of specified repositories. This option
2201 will cause both the download of raw metadata and parsing of the
2202 metadata to be forced even if everything indicates a refresh is
2203 not needed.
2204
2205 -b, --force-build
2206 Force only reparsing of cached metadata and rebuilding of the
2207 database. Raw metadata download will not be forced.
2208
2209 -d, --force-download
2210 Force only download of current copy of repository metadata.
2211 Parsing and rebuild of the database will not be forced.
2212
2213 -B, --build-only
2214 Only parse the metadata and build the database, don’t download
2215 raw metadata into the cache. This will enable you to repair
2216 damaged database from cached data without accessing network at
2217 all.
2218
2219 -D, --download-only
2220 Only download the raw metadata, don’t parse it or build the
2221 database.
2222
2223 -s, --services
2224 Refresh also services before refreshing repositories.
2225
2226 clean (cc) [options] [alias|name|#|URI]...
2227 Clean the local caches for all known or specified repositories. By
2228 default, only caches of downloaded packages are cleaned.
2229
2230 -m, --metadata
2231 Clean repository metadata cache instead of package cache.
2232
2233 -M, --raw-metadata
2234 Clean repository raw metadata cache instead of package cache.
2235
2236 -a, --all
2237 Clean both repository metadata and package caches.
2238
2239 Service Management
2240 The services, addservice, removeservice, modifyservice, and
2241 refresh-services commands serve for manipulating services. A service is
2242 specified by its URI and needs to have a unique alias defined (among
2243 both services and repositories).
2244
2245 Standalone repositories (not belonging to any service) are treated like
2246 services, too. The ls command will list them, ms command will modify
2247 them, etc. Repository specific options, like --keep-packages are not
2248 available here, though. You can use repository handling commands to
2249 manipulate them.
2250
2251 addservice (as) [options] URI alias
2252 Adds a service specified by URI to the system. The alias must be
2253 unique and serves to identify the service. + Newly added services
2254 are not refreshed automatically. Use the refresh-services command
2255 to refresh them. Zypper does not access the service URI when adding
2256 the service, so the type of the services is unknown until it is
2257 refreshed. +
2258
2259 -n, --name name
2260 Specify descriptive name for the service.
2261
2262 -e, --enable
2263 Enable the service (this is the default).
2264
2265 -d, --disable
2266 Add the service as disabled.
2267
2268 -f, --refresh
2269 Enable auto-refresh of the service.
2270
2271 -F, --no-refresh
2272 Disable auto-refresh of the service.
2273
2274 removeservice (rs) [options] alias|name|#|URI...
2275 Remove specified service from the system. Removing a service will
2276 also remove of all of its repositories.
2277
2278 --loose-auth
2279 Ignore user authentication data in the URI.
2280
2281 --loose-query
2282 Ignore query string in the URI.
2283
2284 modifyservice (ms) options alias|name|#|URI
2285
2286
2287 modifyservice (ms) options --all|--remote|--local|--medium-type
2288 Modify properties of specified services.
2289
2290 Common Options
2291 These options are common to all types of services and
2292 repositories.
2293
2294 -n, --name name
2295 Set a descriptive name for the service.
2296
2297 -e, --enable
2298 Enable a disabled service.
2299
2300 -d, --disable
2301 Disable the service (but don’t remove it).
2302
2303 -f, --refresh (legacy: -r)
2304 Enable auto-refresh of the service.
2305
2306 -F, --no-refresh (legacy: -R)
2307 Disable auto-refresh of the service.
2308
2309 -a, --all
2310 Apply changes to all services.
2311
2312 -l, --local
2313 Apply changes to all local services.
2314
2315 -t, --remote
2316 Apply changes to all remote services.
2317
2318 -m, --medium-type type
2319 Apply changes to services of specified type.
2320
2321 RIS Service Specific Options
2322 These options are ignored by services other than Repository
2323 Index Services.
2324
2325 -i, --ar-to-enable alias
2326 Schedule an RIS service repository to be enabled at next
2327 service refresh.
2328
2329 -I, --ar-to-disable alias
2330 Schedule an RIS service repository to be disabled at next
2331 service refresh.
2332
2333 -j, --rr-to-enable alias
2334 Remove a RIS service repository to enable.
2335
2336 -J, --rr-to-disable "alias'
2337 Remove a RIS service repository to disable.
2338
2339 -k, --cl-to-enable
2340 Clear the list of RIS repositories to enable.
2341
2342 -K, --cl-to-disable
2343 Clear the list of RIS repositories to disable.
2344
2345 services (ls) [options]
2346 List services defined on the system.
2347
2348 -u, --uri
2349 Show also base URI of repositories.
2350
2351 -p, --priority
2352 Show also repository priority.
2353
2354 -d, --details
2355 Show more information like URI, priority, type.
2356
2357 -r, --with-repos
2358 Show also repositories belonging to the services.
2359
2360 -P, --sort-by-priority
2361 Sort the list by repository priority.
2362
2363 -E, --show-enabled-only
2364 Show enabled services only. If used together with --with-repos
2365 a disabled services owning (manually) enabled repositories are
2366 shown as well.
2367
2368 -U, --sort-by-uri
2369 Sort the list by URI.
2370
2371 -N, --sort-by-name
2372 Sort the list by name.
2373
2374 refresh-services (refs) [options] alias|name|#|URI...
2375 Refreshing a service means executing the service’s special task. +
2376 RIS services add, remove, or modify repositories on your system
2377 based on current content of the repository index. A differing
2378 enabled/disabled state caused by manually calling modify-repo on a
2379 service repository however will not be reverted unless the
2380 --restore-status option is used, or the repository index explicitly
2381 requests the change. + Services only manage defined repositories,
2382 they do not refresh them. To refresh also repositories, use
2383 --with-repos option or the refresh command.
2384
2385 -f, --force
2386 Force a complete refresh of specified services. This option
2387 will cause both the download of raw metadata and parsing of the
2388 metadata to be forced even if everything indicates a refresh is
2389 not needed.
2390
2391 -r, --with-repos
2392 Refresh also the service repositories.
2393
2394 -R, --restore-status
2395 Also restore service repositories enabled/disabled state to the
2396 repository index default. Useful after you manually changed
2397 some service repositories enabled state.
2398
2399 Package Locks Management
2400 Package locks serve the purpose of preventing changes to the set of
2401 installed packages on the system. The locks are stored in form of a
2402 query in /etc/zypp/locks file (see also locks(5)). Packages matching
2403 this query are then forbidden to change their installed status; an
2404 installed package can’t be removed or upgraded, not installed package
2405 can’t be installed. When requesting to install, upgrade or remove such
2406 locked package, you will get a dependency problem dialog.
2407
2408 locks (ll)
2409 List currently active package locks.
2410
2411 -m, --matches
2412 Show the number of resolvables matched by each lock. This
2413 option requires loading the repositories.
2414
2415 -s, --solvables
2416 List the resolvables matched by each lock. This option requires
2417 loading the repositories.
2418
2419 addlock (al) [options] package-name...
2420 Add a package lock. Specify packages to lock by exact name or by a
2421 glob pattern using * and ? wildcard characters.
2422
2423 -r, --repo alias|name|#|URI
2424 Restrict the lock to the specified repository.
2425
2426 -t, --type type
2427 Lock only packages of specified type (default: package). See
2428 section Package Types for list of available package types.
2429
2430 removelock (rl) [options] lock-number|package-name...
2431 Remove specified package lock. Specify the lock to remove by its
2432 number obtained with zypper locks or by the package name.
2433
2434 -r, --repo alias|name|#|URI
2435 Restrict the lock to the specified repository.
2436
2437 -t, --type type
2438 Restrict the lock to packages of specified type (default:
2439 package). See section Package Types for list of available
2440 package types.
2441
2442 cleanlocks (cl)
2443 Remove unused locks. + This command looks for locks that do not
2444 currently (with regard to repositories used) lock any package and
2445 for each such lock it asks user whether to remove it.
2446
2447 Locale Management ~~~~~~~ These commands give information about
2448 requested locales and the possibilty to manage those. A locale is
2449 defined by a language code. For many packages there are locale
2450 dependent packages available which provide translations or
2451 dictionaries. To get these installed, the locale for the desired
2452 language must be marked as requested by the package manager library.
2453
2454 locales (lloc) [OPTIONS] [LOCALE] ...
2455 List requested locales. Called without argument, lists the locales
2456 which are already marked as requested. Specifying certain locale(s)
2457 prints information only for this(these).
2458
2459 -a, --all
2460 List all available locales.
2461
2462 -p, --packages
2463 Show corresponding packages.
2464
2465 addlocale (aloc) [OPTIONS] <LOCALE> ...
2466 Add specified locale(s) to the list of requested locales..
2467
2468 -n, --no-packages
2469 Do not install corresponding packages.
2470
2471 removelocale (rloc) [OPTIONS] <LOCALE> ...
2472 Remove specified locale(s) from the list of requested locales..
2473
2474 -n, --no-packages
2475 Do not remove corresponding packages.
2476
2477 Examples:
2478
2479
2480 $ zypper locales
2481 List requested locales.
2482
2483 $ zypper locales --packages de en
2484 Get the lists of packages which are available for de and en
2485 (exact match).
2486
2487 $ zypper locales en_
2488 Get all locales with lang code en that have their own country
2489 code, excluding the fallback en.
2490
2491 $ zypper locales en*
2492 Get all locales with lang code en with or without country code.
2493
2494 $ zypper aloc --packages de_CH
2495 Request de_CH and install language dependent packages.
2496
2497 Other Commands
2498 versioncmp (vcmp) version1 version2
2499 Compare the versions supplied as arguments and tell whether
2500 version1 is older or newer than version2 or the two version strings
2501 match. + The default output is in human-friendly form. If --terse
2502 global option is used, the result is an integer number,
2503 negative/positive if version1 is older/newer than version2, zero if
2504 they match.
2505
2506 -m, --match
2507 Takes missing release number as any release.
2508
2509 For example:
2510
2511 $ zypper vcmp -m 0.15.3 0.15.3-2
2512 0.15.3 matches 0.15.3-2
2513
2514 $ zypper vcmp 0.15.3 0.15.3-2
2515 0.15.3 is older than 0.15.3-2
2516
2517 targetos (tos)
2518 Shows the ID string of the target operating system. The string has
2519 a form of distroname-architecture. The string is determined by
2520 libzypp, the distroname is read from
2521 (current-rootdir)/etc/products.d/baseproduct and the architecture
2522 is determined from uname and CPU flags.
2523
2524 licenses
2525 Prints a report about licenses and 'EULA’s of installed packages to
2526 standard output. + First, a list of all packages and their licenses
2527 and/or EULAs is shown. This is followed by a summary, including the
2528 total number of installed packages, the number of installed
2529 packages with EULAs that required a confirmation from the user.
2530 Since the EULAs are not stored on the system and can only be read
2531 from repository metadata, the summary includes also the number of
2532 installed packages that have their counterpart in repositories. The
2533 report ends with a list of all licenses uses by the installed
2534 packages. + This command can be useful for companies redistributing
2535 a custom distribution (like appliances) to figure out what licenses
2536 they are bound by.
2537
2538 download
2539 Download rpms specified on the commandline to a local directory. +
2540 Per default packages are downloaded to the libzypp package cache
2541 (/var/cache/zypp/packages; for non-root users
2542 $XDG_CACHE_HOME/zypp/packages), but this can be changed by using
2543 the global --pkg-cache-dir option. + Parsable XML-output produced
2544 by zypper --xmlout will include a <download-result> node for each
2545 package zypper tried to download. Upon success the location of the
2546 downloaded package is found in the path attribute of the
2547 <localfile> subnode (xpath: download-result/localpath@path): +
2548
2549 <download-result>
2550 <solvable>
2551 <kind>package</kind>
2552 <name>zypper</name>
2553 <edition epoch="0" version="1.9.17" release="26.1"/>
2554 <arch>x86_64</arch>
2555 <repository name="repo-oss-update (13.1)" alias="openSUSE:repo-oss-update"/>
2556 </solvable>
2557 <localfile path="/var/cache/zypp/pac.../zypper-1.9.17-26.1.x86_64.rpm"/>
2558 </download-result>
2559
2560 --all-matches
2561 Download all versions matching the commandline arguments.
2562 Otherwise only the best version of each matching package is
2563 downloaded.
2564
2565 --dry-run
2566 Don’t download any package, just report what would be done.
2567
2568 -r, --repo alias|name|#|URI
2569 Work only with the repository specified by the alias, name, number
2570 or URI. This option can be used multiple times.
2571
2572 --from alias|name|#|URI
2573 Select packages from the specified repository only. This option can
2574 be used multiple times.
2575
2576 source-download
2577 Download source rpms for all installed packages to a local
2578 directory.
2579
2580 -d, --directory dir
2581 Download all source rpms to this directory. Default is
2582 /var/cache/zypper/source-download.
2583
2584 --delete
2585 Delete extraneous source rpms in the local directory. This is
2586 the default.
2587
2588 --no-delete
2589 Do not delete extraneous source rpms.
2590
2591 --status
2592 Don’t download any source rpms, but show which source rpms are
2593 missing or extraneous.
2594
2595 ps
2596 After each upgrade or removal of packages, there may be running
2597 processes on the system which continue to use meanwhile deleted
2598 files. zypper ps lists all processes using deleted files, together
2599 with the corresponding files, and a service name hint, in case it’s
2600 a known service. This gives a hint which services may need to be
2601 restarted after an update. Usually programs which continue to use
2602 deleted shared libraries. The list contains the following
2603 information:
2604
2605 PID
2606 ID of the process
2607
2608 PPID
2609 ID of the parent process
2610
2611 UID
2612 ID of the user running the process
2613
2614 Login
2615 Login name of the user running the process
2616
2617 Command
2618 Command used to execute the process
2619
2620 Service
2621 Service name, if command is associated with a system service
2622
2623 Files
2624 The list of the deleted files
2625
2626 -s, --short
2627 Create a short table not showing the deleted files. Given
2628 twice, show only processes which are associated with a
2629 system service. Given three times, list the associated
2630 system service names only.
2631
2632 --print format
2633 For each associated system service print format on the
2634 standard output, followed by a newline. Any %s directive in
2635 format is replaced by the system service name.
2636
2637 -d, --debugFile filename
2638 Output a file with all proc entries that make it into the
2639 final set of used open files. This can be submitted as
2640 additional information in a bug report.
2641
2642 Examples:
2643
2644
2645 $ zypper ps -ss
2646 Show only processes associated with a system service.
2647
2648 $ zypper ps -sss
2649 Short for zypper ps --print "%s"; list services which might
2650 need a restart.
2651
2652 $ zypper ps --print "systemctl status %s"
2653 Let zypper print the commands to retrieve status information
2654 for services which might need a restart.
2655
2656 needs-rebooting
2657 Checks if the reboot-needed flag was set by a previous update or
2658 install of a core library or service. + The reboot-needed flag is
2659 set when a package from a predefined list (/etc/zypp/needreboot) is
2660 updated or installed. Exit code ZYPPER_EXIT_INF_REBOOT_NEEDED
2661 indicates that a reboot is needed, otherwise the exit code is set
2662 to ZYPPER_EXIT_OK.
2663
2664 Subommands
2665 subcommand
2666 Lists available subcommands in /usr/libexec/zypper/commands and
2667 from elsewhere on your $PATH. See section SUBCOMMANDS for details.
2668
2670 -h, --help
2671 Help. If a command is specified together with --help option,
2672 command specific help is displayed.
2673
2674 -V, --version
2675 Print zypper version number and exit.
2676
2677 -c, --config file
2678 Use the specified zypper config file instead of the default
2679 zypper.conf. Other command line options specified together with
2680 --config and having their counterpart in the zypper config file are
2681 still preferred. + The order of preference with --config is as
2682 follows:
2683
2684 1. Command line options
2685
2686 2. --config file
2687
2688 3. [/etc/zypp/zypp.conf] (system-wide defaults for all libzypp
2689 based applications)
2690
2691 NOTE: Use and location of the system-wide /etc/zypp/zypp.conf
2692 can not be changed this way. It’s mentioned here just because some
2693 zypper command line options allow to overwrite system-wide defaults
2694 defined in zypp.conf.
2695
2696 + See also FILES section for more information.
2697
2698 -v, --verbose
2699 Increase verbosity. For debugging output specify this option twice.
2700
2701 -q, --quiet
2702 Suppress normal output. Brief (esp. result notification) messages
2703 and error messages will still be printed, though. If used together
2704 with conflicting --verbose option, the --verbose option takes
2705 preference.
2706
2707 --color, --no-color
2708 Whether to use colors in output if tty supports it. For details see
2709 the [color] section in zypper.conf.
2710
2711 -A, --no-abbrev
2712 Do not abbreviate text in tables. By default zypper will try to
2713 abbreviate texts in some columns so that the table fits the width
2714 of the screen. If you need to see the whole text, use this option.
2715
2716 -t, --terse
2717 Terse output for machine consumption. Implies --no-abbrev and
2718 --no-color.
2719
2720 -s, --table-style integer
2721 Choose among different predefined line drawing character sets to
2722 use when drawing a table. The table style is identified by an
2723 integer number. Style 0 is the default, styles 1-9 use combinations
2724 of different box drawing characters whose shape may depend on the
2725 font the terminal is using. Style 10 separates columns by a colon
2726 and style 11 draws no lines at all.
2727
2728 -n, --non-interactive
2729 Switches to non-interactive mode. In this mode zypper doesn’t ask
2730 user to type answers to various prompts, but uses default answers
2731 automatically. Those default answers also depend on other options
2732 like --no-gpg-checks or --ignore-unknown.
2733
2734 --non-interactive-include-reboot-patches
2735 In non-interactive mode do not skip patches which have the
2736 rebootSuggested-flag set. Otherwise these patches are considered to
2737 be interactive, like patches including a licenses or some message
2738 to confirm. NOTE: This option does not turn on non-interactive
2739 mode.
2740
2741 -x, --xmlout
2742 Switches to XML output. This option is useful for scripts or
2743 graphical frontends using zypper.
2744
2745 -i, --ignore-unknown
2746 Ignore unknown packages. This option is useful for scripts, because
2747 when installing in --non-interactive mode zypper expects each
2748 command line argument to match at least one known package. Unknown
2749 names or globbing expressions with no match are treated as an error
2750 unless this option is used.
2751
2752 -D, --reposd-dir dir
2753 Use the specified directory to look for the repository definition
2754 (.repo) files. The default value is /etc/zypp/repos.d.
2755
2756 -C, --cache-dir dir
2757 Use an alternative root directory for all caches. The default value
2758 is /var/cache/zypp.
2759
2760 --raw-cache-dir dir
2761 Use the specified directory for storing raw copies of repository
2762 metadata files. The default value is /var/cache/zypp/raw.
2763
2764 --solv-cache-dir dir
2765 Use the specified directory to store the repository metadata cache
2766 database files (solv files). The default value is
2767 /var/cache/zypp/solv.
2768
2769 --pkg-cache-dir dir
2770 Use the specified directory for storing downloaded rpm packages.
2771 (see addrepo --keep-packages) The default value is
2772 /var/cache/zypp/packages.
2773
2774 --userdata string
2775 User data is expected to be a simple string without special chars
2776 or embedded newlines and may serve as transaction id. It will be
2777 written to all install history log entries created throughout this
2778 specific zypper call. It will also be passed on to zypp plugins
2779 executed during commit. This will enable e.g. a btrfs plugin to tag
2780 created snapshots with this string. For zypper itself this string
2781 has no special meaning.
2782
2783 Repository Options:
2784
2785
2786 --no-gpg-checks
2787 Ignore GPG check failures and continue. If a GPG issue occurs when
2788 using this option zypper prints and logs a warning and
2789 automatically continues without interrupting the operation. Use
2790 this option with caution, as you can easily overlook security
2791 problems by using it. (see section GPG checks) +
2792
2793 --gpg-auto-import-keys
2794 If new repository signing key is found, do not ask what to do;
2795 trust and import it automatically. This option causes that the new
2796 key is imported also in non-interactive mode, where it would
2797 otherwise got rejected.
2798
2799 -p, --plus-repo URI
2800 Use an additional repository for this operation. The repository
2801 aliased tmp# and named by the specified URI will be added for this
2802 operation and removed at the end. You can specify this option
2803 multiple times.
2804
2805 --plus-content tag
2806 Additionally use disabled repositories denoted by tag for this
2807 operation. If tag matches a repositories alias, name or URL, or is
2808 a keyword defined in the repositories metadata, the repository will
2809 be temporarily enabled for this operation. The repository will then
2810 be refreshed and used according to the commands rules. You can
2811 specify this option multiple times. + If a disabled repositories
2812 metadata are not available in the local cache, they will be
2813 downloaded to scan for matching keywords. Otherwise the keyword
2814 scan will use the metadata available in the local cache. Only if
2815 used together with the refresh command, a keyword scan will refresh
2816 all disabled repositories. +
2817
2818 To refresh all disabled repositories metadata:
2819 zypper --plus-content '' ref
2820
2821 To include a disabled repository repo-debug in a search:
2822 zypper --plus-content repo-debug search ...
2823
2824 To search only in a disabled repository repo-debug:
2825 zypper --plus-content repo-debug search -r repo-debug ...
2826
2827 To enable all repos providing the debug keyword:
2828 zypper in --plus-content debug some -debuginfo or -debugsource
2829 package
2830
2831 --disable-repositories
2832 Do not read metadata from repositories. This option will prevent
2833 loading of packages from repositories, thus making zypper work only
2834 with the installed packages (if --disable-system-resolvables was
2835 not specified).
2836
2837 --no-refresh
2838 Do not auto-refresh repositories (ignore the auto-refresh setting).
2839 Useful to save time when doing operations like search, if there is
2840 not a need to have a completely up to date metadata.
2841
2842 --no-cd
2843 Ignore CD/DVD repositories. When this option is specified, zypper
2844 acts as if the CD/DVD repositories were not defined at all.
2845
2846 --no-remote
2847 Ignore remote repositories like http, ftp, smb and similar. This
2848 makes using zypper easier when being offline. When this option is
2849 specified, zypper acts as if the remote repositories were not
2850 defined at all.
2851
2852 --releasever version
2853 For the current command set the value of the $releasever repository
2854 variable to version. This can be used to switch to new distribution
2855 repositories when performing a distribution upgrade. See the
2856 dist-upgrade (dup) command and section Repository Management for
2857 more details about using the $releasever repository variable. +
2858
2859 To check where you already use $releasever call:
2860 zypper --releasever @--HERE--@ lr -u
2861
2862 Target Options:
2863
2864
2865 -R, --root dir
2866 Operates on a different root directory. This option influences the
2867 location of the repos.d directory and the metadata cache directory
2868 and also causes rpm to be run with the --root option to do the
2869 actual installation or removal of packages. See also the FILES
2870 section.
2871
2872 --installroot dir
2873 Behaves like --root but shares the repositories with the host
2874 system.
2875
2876 --disable-system-resolvables
2877 This option serves mainly for testing purposes. It will cause
2878 zypper to act as if there were no packages installed in the system.
2879 Use with caution as you can damage your system using this option.
2880
2882 Zypper subcommands are inspired by git(1). Subcommands are standalone
2883 executables that live in the zypper_execdir
2884 (/usr/libexec/zypper/commands). For subcommands zypper provides a
2885 wrapper that knows where the subcommands live, and runs them by passing
2886 command options and arguments to them. If a subcommand is not found in
2887 the zypper_execdir, the wrapper will look in the rest of your $PATH for
2888 it. Thus, it’s possible to write local zypper extensions that don’t
2889 live in system space.
2890
2891 This is how to add your own subcommand zypper mytask:
2892
2893 · The executable must be named zypper-’mytask'.
2894
2895 · The executable must be located your $PATH.
2896
2897 · A manpage for zypper-’mytask' should be provided and explaining the
2898 commands options and return values. It will be shown when calling
2899 zypper help mytask.
2900
2901 · Zypper built-in commands take precedence over subcommands with the
2902 same name.
2903
2904 · It’s fine to call zypper or use libzypp from within your
2905 subcommand.
2906
2907 You can use the built-in zypper subcommand command to get a list of all
2908 subcommands in zypper_execdir and from elsewhere on your $PATH.
2909
2910 Using zypper global-options together with subcommands, as well as
2911 executing subcommands in zypper shell is currently not supported.
2912
2914 /etc/zypp/zypper.conf, $HOME/.zypper.conf
2915 Global (system-wide) and user’s configuration file for zypper.
2916 These files are read when zypper starts up and --config option is
2917 not used. + User’s settings are preferred over global settings.
2918 Similarly, command line options override the settings in either of
2919 these files. To sum it up, the order of preference is as follows
2920 (from highest to lowest):
2921
2922 1. Command line options
2923
2924 2. $HOME/.zypper.conf
2925
2926 3. /etc/zypp/zypper.conf
2927
2928 4. [/etc/zypp/zypp.conf] (system-wide defaults for all libzypp
2929 based applications)
2930
2931 See the comments in /etc/zypp/zypper.conf for a list and
2932 description of available options.
2933
2934 NOTE: The system-wide /etc/zypp/zypp.conf is mentioned here
2935 just because some zypper command line options allow to overwrite
2936 system-wide defaults defined there. zypp.conf and zypper.conf have
2937 different content and serve different purpose.
2938
2939 /etc/zypp/zypp.conf
2940 ZYpp configuration file affecting all libzypp based applications.
2941 See the comments in the file for description of configurable
2942 properties. Many locations of files and directories listed in this
2943 section are configurable via zypp.conf. The location for this file
2944 itself can be redefined only by setting $ZYPP_CONF in the
2945 environment.
2946
2947 /etc/zypp/locks
2948 File with package lock definitions, see locks(5) manual page for
2949 details. The package lock commands (addlock, removelock, etc.) can
2950 be used to manipulate this file. + This file is used by all
2951 ZYpp-based applications.
2952
2953 /etc/zypp/repos.d
2954 Directory containing repository definition (*.repo) files. You can
2955 use the Repository Management commands to manipulate these files,
2956 or you can edit them yourself. In either case, after doing the
2957 modifications, executing *zypper refresh* is strongly recommended.
2958 + You can use the --reposd-dir global option to use an alternative
2959 directory for this purpose or the --root option to make this
2960 directory relative to the specified root directory. + This
2961 directory is used by all ZYpp-based applications.
2962
2963 /etc/zypp/services.d
2964 Directory containing service definition (*.service) files. You can
2965 use the Service Management Commands to manipulate these files, or
2966 you can edit them yourself. Running *zypper refs* is recommended
2967 after modifications have been done. + This directory is used by all
2968 ZYpp-based applications.
2969
2970 /usr/libexec/zypper/commands
2971 System directory containing zypper extensions (see section
2972 SUBCOMMANDS)
2973
2974 /var/cache/zypp/raw
2975 Directory for storing raw metadata contained in repositories. Use
2976 the --raw-cache-dir global option to use an alternative directory
2977 for this purpose or the --root option to make this directory
2978 relative to the specified root directory. + This directory is used
2979 by all ZYpp-based applications.
2980
2981 /var/cache/zypp/solv
2982 Directory containing preparsed metadata in form of solv files. +
2983 This directory is used by all ZYpp-based applications.
2984
2985 /var/cache/zypp/packages
2986 If keeppackages property is set for a repository (see the
2987 modifyrepo command), all the RPM file downloaded during
2988 installation will be kept here. See also the clean command for
2989 cleaning these cache directories. + This directory is used by all
2990 ZYpp-based applications.
2991
2992 /var/log/zypp/history
2993 Installation history log.
2994
2995 ~/.zypper_history
2996 Command history for the zypper shell (see the shell command).
2997
2998 /etc/zypp/needreboot
2999 File with a list of packages that will set the reboot-needed flag
3000 when installed or upgraded.
3001
3002 /etc/zypp/needreboot.d
3003 Directory that can be used to define packages that trigger the
3004 reboot-needed flag by adding additional files containing the
3005 required package names.
3006
3008 There are several exit codes defined for zypper built-in commands for
3009 use e.g. within scripts. These codes are defined in header file
3010 src/zypper-main.h found in zypper source package. Codes below 100
3011 denote an error, codes above 100 provide a specific information, 0
3012 represents a normal successful run. Following is a list of these codes
3013 with descriptions:
3014
3015 0 - ZYPPER_EXIT_OK
3016 Successful run of zypper with no special info.
3017
3018 1 - ZYPPER_EXIT_ERR_BUG
3019 Unexpected situation occurred, probably caused by a bug.
3020
3021 2 - ZYPPER_EXIT_ERR_SYNTAX
3022 zypper was invoked with an invalid command or option, or a bad
3023 syntax.
3024
3025 3 - ZYPPER_EXIT_ERR_INVALID_ARGS
3026 Some of provided arguments were invalid. E.g. an invalid URI was
3027 provided to the addrepo command.
3028
3029 4 - ZYPPER_EXIT_ERR_ZYPP
3030 A problem is reported by ZYPP library.
3031
3032 5 - ZYPPER_EXIT_ERR_PRIVILEGES
3033 User invoking zypper has insufficient privileges for specified
3034 operation.
3035
3036 6 - ZYPPER_EXIT_NO_REPOS
3037 No repositories are defined.
3038
3039 7 - ZYPPER_EXIT_ZYPP_LOCKED
3040 The ZYPP library is locked, e.g. packagekit is running.
3041
3042 8 - ZYPPER_EXIT_ERR_COMMIT
3043 An error occurred during installation or removal of packages. You
3044 may run zypper verify to repair any dependency problems.
3045
3046 100 - ZYPPER_EXIT_INF_UPDATE_NEEDED
3047 Returned by the patch-check command if there are patches available
3048 for installation.
3049
3050 101 - ZYPPER_EXIT_INF_SEC_UPDATE_NEEDED
3051 Returned by the patch-check command if there are security patches
3052 available for installation.
3053
3054 102 - ZYPPER_EXIT_INF_REBOOT_NEEDED
3055 Returned after a successful installation of a patch which requires
3056 reboot of computer.
3057
3058 103 - ZYPPER_EXIT_INF_RESTART_NEEDED
3059 Returned after a successful installation of a patch which requires
3060 restart of the package manager itself. This means that one of
3061 patches to be installed affects the package manager itself and the
3062 command used (e.g. zypper update) needs to be executed once again
3063 to install any remaining patches.
3064
3065 104 - ZYPPER_EXIT_INF_CAP_NOT_FOUND
3066 Returned by the install and the remove command in case any of the
3067 arguments does not match any of the available (or installed)
3068 package names or other capabilities.
3069
3070 105 - ZYPPER_EXIT_ON_SIGNAL
3071 Returned upon exiting after receiving a SIGINT or SIGTERM.
3072
3073 106 - ZYPPER_EXIT_INF_REPOS_SKIPPED
3074 Some repository had to be disabled temporarily because it failed to
3075 refresh. You should check your repository configuration (e.g.
3076 zypper ref -f).
3077
3078 107 - ZYPPER_EXIT_INF_RPM_SCRIPT_FAILED
3079 Installation basically succeeded, but some of the packages %post
3080 install scripts returned an error. These packages were successfully
3081 unpacked to disk and are registered in the rpm database, but due to
3082 the failed install script they may not work as expected. The failed
3083 scripts output might reveal what actually went wrong. Any scripts
3084 output is also logged to /var/log/zypp/history.
3085
3086 Zypper subcommands (see section SUBCOMMANDS) may return different codes
3087 which should be described in the commands man page. Call zypper help
3088 subcommand to see the subcommands man page if one is provided.
3089
3091 https://github.com/openSUSE/zypper
3092
3094 The zypper project was started by Martin Vidner, Jan Kupec, Michael
3095 Andres, Duncan Mac-Vicar Prett, Josef Reidinger and Stanislav
3096 Visnovsky. Many people have later contributed to it.
3097
3099 locks(5), zypper-log(8), YaST2(8)
3100
3101
3102
3103SUSE Linux 2020-03-20 ZYPPER(8)