Language Selection

English French German Italian Portuguese Spanish

Your rPath to Conary

Filed under
Linux
Reviews
-s

Development Release: rPath Linux 0.51 (Alpha) was announced by DistroWatch yesterday, and I was a bit curious. After my first glance, I was a bit taken aback. rPath doesn't seem to be targetting desktop users. Although it ships with KDE and Gnome, they aren't the most up-to-date versions, nor are they dressed up or enhanced in any manner distinguishable. In my humble opinion, I think rPath is probably a developer's platform, ...a conary developer's platform.

Information about rPath, as well as its ancestor Specifix, is fairly sketchy. The rPath website is a page listing a job opening and a link to the conary wiki, however DistroWatch states "rPath is a distribution based around the new Conary package management, created by ex-Red Hat engineers, to both showcase the abilities Conary provides and to provide a starting point for customisation." The conary wiki is pretty thin itself, although I was able to gleen a little information from it.

It was no big surprise to see (a modified) Anacoda as the installer and (as usual) I found it fairly straight forward and easy to complete. It asks some basic configuration questions such as network setup, firewall choice, and bootloader conf. I must say I loved the package selection portion. One is give one choice: everything. Could it be any easier? It takes a little while to install and once it's complete, it reboots without setting up other hardware or user accounts. Upon reboot it starts X as root, but to complete some other basic configurations in a graphical environment using rPaths Setup Agent. Included configurations include the date and timezone, monitor and resolution, and of course user account(s). Upon Finish, it restarts X and presents gdm for login. KDE and gnome are about your only choices for a desktop environment/window manager. rPath includes KDE-3.4.1 and Gnome-2.10.2. The Xserver version is xorg-6.8.2, gcc is 3.3.3, and the kernel is 2.6.12.5. The kernel-source isn't installed from the iso, but one can install it with conary.

        

Conary is rPath's package management system. As it appears conary is the focus of rPath, I spent quite a bit of time trying to figure it out. I began my quest quite lost and confused and ended it a little less lost and confused. According to the site, "Conary is a distributed software management system for Linux distributions. It replaces traditional package management solutions (such as RPM and dpkg) with one designed to enable loose collaboration across the Internet." Simply put, it's the package manager. It appears to be able to obtain packages from different repositories, utilizing binaries if available or sources if necessary and storing all versionings in a database in order to track changes from source branch all the way back to local versions installed on a given system to meet dependencies without conflicts.

According to the wiki, after the installation of rPath 0.51 the first thing one should do is update conary to version 0.62.2. Termed Conversion, the instructions stated to issue the following commands:

$su -
# conary update conary
# conary q conary
$ su
# sed -i 's/lockTroves/pinTroves/g' /etc/conaryrc

They continue with instructions in case an AssertionError is encountered. I didn't experience such an error and proceded with reading the wiki, --help, and man pages.

Conary at the commandline appears very apt-like. In fact the conary-gui is identical in appearance to synaptic. The gui front-end didn't seem to function very well here, but the commandline version seems to work as intended. Also included is the utility "yuck" which is a wrapper script to call conary --upgradeall.

        

Fortunately running conary is much easier than trying to understand what it is or how it works. Some simple commands include: conary q <packagename> reveals if the given packagename is installed, whereas conary rq <packagename> lists the newest available upgrade. conary update <packagename> installs or updates requested packagename, and conary erase <packagename> uninstalls. There are many many interesting options to play with in using conary beyond those basics, but most seem to geared toward package builders. Some of these include emerge, which builds the "recipe"; commit, which stores the changes; and showcs, which shows the difference. It really looks sophisticated and yes, I admit, a little complicated at the more in-depth level.

So, to install the kernel-source, one simply types: conary update kernel-source

The developers might be onto a superior package management system, but is it catching on? We know rPath obviously uses it and I understand Foresight Linux to utilize this package management system. As for rPath, it was a stable functional development environment. It seems it isn't trying to be the latest or greatest nor the prettiest. If you are interested in developing for conary or wish to use a system utilizing that package management system, then rPath might be the distro for you. The full package list as tested is HERE.

        

Conary

I'm pretty hazy on this too, so I might be completely off, but here is how I understand this:

While to a casual user Conary looks pretty much like apt-get or synaptic, it does do something more advanced under the hood. It is intended to make it easy to put together a system using a number of separate and *independent* repositories, each making its own changes and mini-releases. Conary tracks not only what you installed on your system, but also where it came from. This extends to any dependencies it uses, and it becomes quite a powerful concept.
For example, Foresight which also uses Conary is actually created largely from packages pulled directly from rPath repos; I would say as much as 75% of packages are not modified at all. If you install Foresight and later run updates on it, you'll see number of packages are updated from rPath repos. Any packages Foresight guys developed themselves come from their own repositories, naturally. But any packages that do exist in rPath but were modified in Foresight are overlayed over the 'standard' versions, with Conary keeping track of what comes from where, and what depends on what (in that context). This is pretty cool for Foresight guys, who can make their own distro while at the same time take a lot from the base, rPath.

Think of it this way: if you used Fedora, you probably tried at some stage to add various third-party repos to your yum config: Livna, Freshrpms etc... and quite possibly you discovered in the process some of them can conflict with others... it can become a mess. Well, this is exactly the situation Conary adresses.

... but again, I could be completely wrong.

re: Conary

That's pretty much the way I understand it as well, in that conary can keep track of any and all changes to the branches of a given source from the main branch all the way to minor revisions on public mirrors as well as on your local machine (which is especially good for developers). An end user can choose to install any version listed or just go with the latest. Like other package managers, all depends on the repositories set up tho. Good explanation! Thanks for your contribution. That's wonderful.

-s

----
You talk the talk, but do you waddle the waddle?

Conary

You are correct that rPath is developmnent release for the extensive testing of the Conary system, fPath is from Specifix who is the creator of Conary. Other distros like Foresight have taken and used it for their own needs. I find the Conary system interesting and quite functional, but have not made a decision about it's need and potential in the comunity.

My 2cents,
Capnkirby

re: Conary

I think it's a wonderful concept as well, but I think it'd be rather complicated to set up and most developers are already set in their ways. And when you factor in how few distros use that method... I don't think it's something that will catch on right away.

----
You talk the talk, but do you waddle the waddle?

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

More in Tux Machines

digiKam 7.7.0 is released

After three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release. Read more

Dilution and Misuse of the "Linux" Brand

Samsung, Red Hat to Work on Linux Drivers for Future Tech

The metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world. Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility. Read more

today's howtos

  • How to install go1.19beta on Ubuntu 22.04 – NextGenTips

    In this tutorial, we are going to explore how to install go on Ubuntu 22.04 Golang is an open-source programming language that is easy to learn and use. It is built-in concurrency and has a robust standard library. It is reliable, builds fast, and efficient software that scales fast. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel-type systems enable flexible and modular program constructions. Go compiles quickly to machine code and has the convenience of garbage collection and the power of run-time reflection. In this guide, we are going to learn how to install golang 1.19beta on Ubuntu 22.04. Go 1.19beta1 is not yet released. There is so much work in progress with all the documentation.

  • molecule test: failed to connect to bus in systemd container - openQA bites

    Ansible Molecule is a project to help you test your ansible roles. I’m using molecule for automatically testing the ansible roles of geekoops.

  • How To Install MongoDB on AlmaLinux 9 - idroot

    In this tutorial, we will show you how to install MongoDB on AlmaLinux 9. For those of you who didn’t know, MongoDB is a high-performance, highly scalable document-oriented NoSQL database. Unlike in SQL databases where data is stored in rows and columns inside tables, in MongoDB, data is structured in JSON-like format inside records which are referred to as documents. The open-source attribute of MongoDB as a database software makes it an ideal candidate for almost any database-related project. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of the MongoDB NoSQL database on AlmaLinux 9. You can follow the same instructions for CentOS and Rocky Linux.

  • An introduction (and how-to) to Plugin Loader for the Steam Deck. - Invidious
  • Self-host a Ghost Blog With Traefik

    Ghost is a very popular open-source content management system. Started as an alternative to WordPress and it went on to become an alternative to Substack by focusing on membership and newsletter. The creators of Ghost offer managed Pro hosting but it may not fit everyone's budget. Alternatively, you can self-host it on your own cloud servers. On Linux handbook, we already have a guide on deploying Ghost with Docker in a reverse proxy setup. Instead of Ngnix reverse proxy, you can also use another software called Traefik with Docker. It is a popular open-source cloud-native application proxy, API Gateway, Edge-router, and more. I use Traefik to secure my websites using an SSL certificate obtained from Let's Encrypt. Once deployed, Traefik can automatically manage your certificates and their renewals. In this tutorial, I'll share the necessary steps for deploying a Ghost blog with Docker and Traefik.