top of page
degmufffecbora

Yum Plugins



To enable yum plug-ins, ensure that the directive plugins=1 (1 meaning on) exists under the [main] section in the /etc/yum.conf file, as shown below.


Yum has a simple but powerful plugin architecture which allows external modules to add new features and/or modify Yum's behaviour. Yum plugins are Python modules (.py files) which are loaded when Yum starts.




yum plugins




Plugins were created partially as a place to put functionality that was seen as either less common or undesirable for the main yum package. Functionality in plugins will generally not be moved or included in the core yum package.


The conduit varies depending on the plugin slot. Different methods and attributes are available as appropriate for the slot. See the yum.plugins.SLOT_TO_CONDUIT dictionary for details on the conduit class used for a particular slot. All conduits are subclassed from the PluginConduit class.


The plugin API and general Yum API are subject to change. For this reason, plugins must state which API they were written for via the requires_api_version attribute. Yum will exit with a useful error if it tries to load the plugin which is not compatible with its API version.


Plugins must advertise what type of plugin they are via the plugin_type tuple. The advertised type(s) can be used by software using the Yum libraries to control the types of plugins that will be loaded. Yum itself will always load all types of plugins.


If the option is missing from the configuration file then the default value passed to method will be returned. See yum.plugins for more documentation on these methods and see the yum(8) and yum.conf(5) man pages for general information on plugin configuration files.


In addition to having their own configuration file, plugins may modify theoptions available in Yum's own configuration files. A plugin can add newoptions or modify the existing options by modifying the YumConf and RepoConf classes defined in yum.config .


Note how different types of options are defined ( IntOption , UrlOption , BoolOption ). A wide variety of option types are available in yum.config . It is even possible for plugins to define their own optiontypes by subclassing Option if the existing types aren't sufficient. Seethe source code for the yum.config module for further details.


In addition to having their own configuration file, plugins may add extra options to Yum's main configuration files. A plugin must register new options in the config slot using the registerOpt() conduit method:


A plugin may add extra command line options to Yum. To do this the pluginshould call the getOptParser() conduit method during the config or init slot. This will return an OptionParser instance which the pluginmay modify. See the Python standard library optparse module documentation for information on how to manipulate this object.


The easiest way to get started writing Yum plugins is to look at some examples.The yum-utils package contains a number of useful plugins which will act as auseful starting point. The yum-utils git tree can be viewed here: =yum-utils.git;a=tree


The yum package manager can see its features enhanced through plugins.To allow these plugins to work, the plugins variable needs to be set to 1 in the /etc/yum.conf file but it is the default value. Plugin configurations are stored in the /etc/yum/pluginconf.d directory. In this directory, any plugin can be enabled/disabled by assigning 1/0 to the enabled variable located in its configuration file.


We can query the repository for packages which put files in the /usr/lib/yum-plugins directory. We have two options for that, using yum provides, or the repoquery utility.


Great, this provides at least some guidance. For now we use the line with group.add_option to determine that support is built into the yum toolset itself. This enables checking for yum plugins and built-in support.


To search for the available plugins, run yum search yum-plugin. You should see several plugin packages available. Some are also shipped by default as part of the main Yum package, and if you look under /etc/yum/pluginconf.d/ you should see several configuration files for plugins already available on your system. For example, the Presto plugin. This plugin enables support for delta RPMs. In F14 this is enabled by default.


'; if (startsWith(current_url_path, "/ansible-core/")) msg += 'You are reading documentation for Ansible Core, which contains no plugins except for those in ansible.builtin. For documentation of the Ansible package, go to the latest documentation.'; else if (startsWithOneOf(current_url_path, ["/ansible/latest/", "/ansible/7/"])) /* temp extra banner to advertise AnsibeFest2021 */ banner += extra_banner; msg += 'You are reading the latest (stable) community version of the Ansible documentation. If you are a Red Hat customer, refer to the Ansible Automation Platform Life Cycle page for subscription details.'; else if (startsWith(current_url_path, "/ansible/2.9/")) msg += 'You are reading the latest Red Hat released version of the Ansible documentation. Community users can use this version, or select latest from the version selector to the left for the most recent community version.'; else if (startsWith(current_url_path, "/ansible/devel/")) /* temp extra banner to advertise AnsibleFest2021 */ banner += extra_banner; /* temp banner to advertise survey important = true; msg += 'Please take our Docs survey before December 31 to help us improve Ansible documentation.'; */ msg += 'You are reading the devel version of the Ansible documentation - this version is not guaranteed stable. Use the version selection to the left if you want the latest (stable) released version.'; else msg += 'You are reading an older version of the Ansible documentation. Use the version selection to the left if you want the latest (stable) released version.'; msg += '


YUM plugins are programs that have been developed to extend and improve the overall performance of the package manager. Some of them are installed by default, while others are not. Yum will always notify us which plug-ins, if available, are loaded and active each time we execute any yum command.


While taking a Red Hat Training course the instructor showed us a Yum plugin called verify. I've never used any of the Yum plugins before and after a while of playing with Yum Verify, I have decided that I should share this very cool plugin and introduce others to Yum plugins.


Yum plugins are packages that can be installed to provide extra functionality to the Yellowdog Update Manager or yum. A plugin my provide an extra command or something for yum to execute in the background like finding the fastest mirror. There are quite a few Yum plugins available, for a comprehensive list you can check out The Yum Wiki.


You can enable or disable the ability to use yum plugins by editing the /etc/yum.conf. Within the [main] section there should be an entry for plugins, To enable the use of plugins we will change this value to 1.


In addition to enabling or disabling all yum plugins, you can enable or disable an individual plugin as well. This is helpful if a specific package is interfering with the installation, removal of upgrading of a specific package.


YUM Audio strongly believe that audio software should inspire you and help to fuel creative endeavors, not complicate them. Most importantly, their plugins should allow you to effortlessly focus on enjoying creating music and sound, so have fun and keep being creative!


MariaDB Corporation provides a MariaDB Package Repository for several Linux distributions that use yum to manage packages. This repository contains software packages related to MariaDB Server, including the server itself, clients and utilities, client libraries, plugins, and Mariabackup. The MariaDB Package Repository setup script automatically configures your system to install packages from the MariaDB Package Repository.


The MariaDB Foundation provides a MariaDB repository for several Linux distributions that use yum to manage packages. This repository contains software packages related to MariaDB Server, including the server itself, clients and utilities, client libraries, plugins, and Mariabackup. The MariaDB Repository Configuration Tool can easily generate the appropriate configuration file to add the repository for your distribution.


Different distributions have different plugins available, but the fastest way to see which Yum plugins available is to run yum search yum-plugin or yum search yum grep plugin. (Note that a few plugins might not turn up with the first search, like yum-presto or yum-langpacks.)


To help resolve some of the discussions I broughtupthe idea of maybe doing plugins for yum so that people can do externalhacks for the more wierd shit without them making it into the main yumcodebase. Funnily enough Panu and Gijs piped up straight away; they'dbeen thinking the same thing. Seth initially wasn't too keen on the ideabut then gave a little ground. Seth now wants us to solidify the ideasomewhat. I've got some rough ideas but haven't had the energy to putthem to the list. Maybe tomorrow.


  • Remove the configuration file: sudo rm /etc/yum/pluginconf.d/yumwat.confRemove the plugin file and its generated bytecode: sudo rm /usr/lib/yum-plugins/yumwat.py,pyc

  • Project details Project links Homepage

  • Statistics GitHub statistics: Stars:

  • Forks:

  • Open issues/PRs:

View statistics for this project via Libraries.io, or by using our public dataset on Google BigQuery 2ff7e9595c


0 views0 comments

Recent Posts

See All

Comments


bottom of page