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