Home openSUSE YQPkg: A Modern, Qt-based Package Manager To Replace YaST In OpenSUSE

YQPkg: A Modern, Qt-based Package Manager To Replace YaST In OpenSUSE

Say Goodbye to YaST: Meet YQPkg, the New Lightweight Package Manager for OpenSUSE Linux.

By sk
283 views

OpenSUSE is introducing a new package manager called YQPkg, a modern, standalone, Qt-based solution designed to simplify software package management on openSUSE Linux distributions.

Currently in its alpha stage, YQPkg aims to fill the gap left by the phasing out of YaST, the traditional openSUSE package manager, in favor of Agama and Cockpit. While Agama focuses on installation and Cockpit on server administration, YQPkg delivers a focused, user-friendly approach to individual package selection and management.

By directly interacting with libzypp, the core package management library in openSUSE, YQPkg offers a lightweight, agile, and efficient alternative to YaST.

In this blog post, we’ll discuss about what YQPkg is, its key features, current limitations, and why it’s being developed to meet the needs of openSUSE users.

What is YQPkg?

YQPkg is a new, standalone, Qt-based package manager for openSUSE Linux distributions. It is designed to be lightweight and easy to use, providing a modern and user-friendly interface for managing software packages.

Despite being in early development, YQPkg already includes many of the essential features needed for effective package management. It allows users to install, update, and remove packages on their openSUSE systems with ease. Additionally, YQPkg handles package dependencies seamlessly, so users don’t have to worry about breaking their system.

YQPkg works by directly interacting with libzypp, the package management library used in openSUSE. This makes YQPkg independent of the YaST infrastructure resulting in a lighter and potentially more agile solution compared to YaST.

Here's how YQPkg interface looks like.

YQPkg openSUSE Package Manager
YQPkg openSUSE Package Manager

Please note that this interface may change in future updates. The current development status and screenshots are available here. Scroll down to view the most recent screenshots.

Key features of YQPkg

Here are some of the key features of YQPkg:

  • It offers a user-friendly interface for browsing, searching, and installing individual packages across a wide range of topics and repositories.
  • It provides an intuitive way to install specific package versions.
  • It allows users to easily discover and install language-specific packages.
  • It supports actual package installation, updates, and removals, complete with dependency resolution and user feedback.
  • It can be run as root for full functionality or as a regular user in read-only mode.
  • It is lightweight and does not rely on YaST.

Why YQPkg?

YQPkg was developed as a response to the phasing out of YaST, the traditional openSUSE package manager, in favor of Agama and Cockpit.

While Agama focuses on installation and Cockpit on server administration, neither tool offers the fine-grained package management features that YaST's sw_single module provided. This leaves users with limited options for browsing, searching, and installing individual packages, especially when compared to low-level command-line tools like zypper or high-level application installers specific to desktop environments.

YQPkg addresses this gap by providing a user-friendly interface for managing packages, with the following key motivations:

  • Enhanced Browsing and Installation: Offer a modern, intuitive way to browse and install packages across a wide range of topics and repositories.
  • Version-Specific Installations: Enable users to easily install specific package versions, such as different kernel versions, without hassle.
  • Language-Specific Packages: Simplify the discovery and installation of language-specific packages, catering to developers and multilingual users.
  • Bridging the YaST Gap: Ensure users can still perform granular package management, filling the void left by YaST’s departure.

How does YQPkg improve openSUE package management?

YQPkg offers a standalone, Qt-based GUI for package management in openSUSE, designed to bridge the gap left by the phasing out of YaST in favour of Agama and Cockpit.

YQPkg directly interacts with libzypp, the package management library, removing the dependency on YaST infrastructure. This makes it lighter and more streamlined compared to YaST's sw_single module, which it seeks to replace.

Here's how YQPkg improves openSUSE package management:

  • Fills the Gap Left by YaST: While Agama and Cockpit are suitable for their respective purposes, they lack the fine-grained package selection capabilities of YaST. YQPkg brings back this functionality, allowing users to browse, search, and install individual packages easily.
  • User-Friendly Interface: YQPkg boasts a more modern and user-friendly interface compared to the aging YaST. It features a straightforward progress bar and allows users to toggle detailed views during operations.
  • Independent and Lightweight: Being independent of YaST, YQPkg relies solely on libzypp. This makes it a more lightweight and focused tool, reducing complexity.
  • Root and Non-Root Modes: YQPkg can be run as root for full functionality or as a regular user in read-only mode. This caters to both power users who need to make changes and those who simply want to browse and explore available packages.
  • Real Package Management: It supports actual package installation, updates, and removals, complete with dependency resolution and user feedback. While still in alpha, it already offers most of the key features necessary for effective package management.

YQPkg, still in active development. Future updates are expected to address current limitations like the lack of repository refresh and gpg key handling, further enhancing its usability and appeal.

YQPkg's Strengths and Limitations

Strengths of YQPkg compared to YaST:

  • Lightweight and Independent: YQPkg is independent of the YaST infrastructure and relies solely on libzypp. This makes it lighter and less complex than YaST.
  • Modern Interface: YQPkg leverages Qt for its user interface, providing a more modern look and feel compared to the older YaST interface.

Limitations of YQPkg compared to YaST:

  • Early Stage of Development: YQPkg is still in its alpha stage, meaning it's under active development and may have some bugs. Key features are functional, but it lacks certain functionalities present in YaST.
  • Lack of Repository Management: Unlike YaST, YQPkg currently lacks features for repository management. Users need to manually refresh repositories using zypper before using the application.
  • Limited GPG Key Handling: YQPkg currently doesn't handle GPG key imports from repositories or prompt users about failed package GPG signatures. This functionality is present in YaST.

How to Install and Use YQPkg?

To install YQPkg, follow these steps:

Git clone the YQPkg GitHub repository:

git clone https://github.com/shundhammer/yqpkg.git

Open your terminal and navigate to the YQPkg source directory:

cd yqpkg

Run the following commands to build the package:

make -f Makefile.repo
cd build
make

After successfully building YQPkg, install it by running:

sudo make install

This will place the yqpkg executable in /usr/bin/, making it accessible system-wide.

There are two ways to use YQPkg: with full control or in a safe mode. You can run it as root to make changes to your system or as a regular user to just look at what packages are available.

As I mentioned already, you need to refresh your package lists manually before using YQPkg.

Conclusion

YQPkg is the modern, lightweight Qt-based package manager for OpenSUSE, designed to replace YaST and simplify package management.

It is still in alpha but is already showing a lot of potential. While YQPkg is usable in its current state, users are advised to avoid using it on critical production systems due to its early stage of development.

To learn more about YQPkg and to download the latest version, visit the project's GitHub page.

You May Also Like

Leave a Comment

* By using this form you agree with the storage and handling of your data by this website.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

This website uses cookies to improve your experience. By using this site, we will assume that you're OK with it. Accept Read More