{"id":14070,"date":"2026-04-24T01:01:00","date_gmt":"2026-04-24T05:01:00","guid":{"rendered":"https:\/\/www.both.org\/?p=14070"},"modified":"2026-04-16T20:36:33","modified_gmt":"2026-04-17T00:36:33","slug":"the-evolution-of-packager-managers","status":"publish","type":"post","link":"http:\/\/www.both.org\/?p=14070","title":{"rendered":"The evolution of packager managers"},"content":{"rendered":"<div class=\"pld-like-dislike-wrap pld-template-1\">\r\n    <div class=\"pld-like-wrap  pld-common-wrap\">\r\n    <a href=\"javascript:void(0)\" class=\"pld-like-trigger pld-like-dislike-trigger  \" title=\"\" data-post-id=\"14070\" data-trigger-type=\"like\" data-restriction=\"cookie\" data-already-liked=\"0\">\r\n                        <i class=\"fas fa-thumbs-up\"><\/i>\r\n                <\/a>\r\n    <span class=\"pld-like-count-wrap pld-count-wrap\">1    <\/span>\r\n<\/div><\/div>\n<p>In the early days of Linux, installing software applications was much more difficult. Most software was not distributed in easy-to-install packages. I frequently had to download source code, which usually came as a \u2018tar\u2019 file that had to be extracted and then compiled to run on the system. There was usually a four-step process which included extraction, change to the directory where the uncompressed files resided, and then issuing a series of commands which included:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ .\/configure\n\n$ make\n\n$ make install<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>.\/configure<\/code>&nbsp;checked your system for dependencies and set up build options<\/li>\n\n\n\n<li><code>make<\/code>&nbsp;compiled the program from source code<\/li>\n\n\n\n<li><code>make install<\/code>\u00a0copied the compiled files into system directories (usually\u00a0<code>\/usr\/local<\/code>)<\/li>\n<\/ul>\n\n\n\n<p>Then Linux distributions began to provide software in precompiled packages for compatible systems. Debian developed .<strong>deb<\/strong>&nbsp;packages, which were installed with the&nbsp;<strong>dpkg<\/strong>&nbsp;command. Red Hat developed&nbsp;<strong>RPMs<\/strong>, which were installed but still had dependency issues. A typical install on a Red Hat system looked like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ rpm -i somepackage.rpm<\/code><\/pre>\n\n\n\n<p>The command above installed the package but provided no visual or other feedback. Therefore, I often used the following command when installing a package:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ rpm -ivh somepackage.rpm<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>i \u2013 tells the package manager to install the package<\/li>\n\n\n\n<li>v \u2013 tells the package manager to produce a verbose output<\/li>\n\n\n\n<li>h \u2013 displays a progress bar made of hash marks<\/li>\n<\/ul>\n\n\n\n<p>The process became much more appealing with the development of automated package management, which began with Debian\u2019s&nbsp;APT&nbsp;(Advanced Package Tool) in 1998. This was followed by YUP (Yellow Dog Updater), originally created in 1999 as a backend for Yellow Dog Linux. YUP was later rewritten as YUM (Yellow Dog Updater Modified) and was primarily used at Duke University to update Red Hat systems. However, even with these advancements, it was still uncertain whether all dependencies were being met. Since then, a rewrite of YUM,&nbsp;DNF&nbsp;(Dandified YUM), was introduced in Fedora 18 in 2013. Arch Linux and Manjaro use pacman, a package management system that has revolutionized software installation on Linux systems.<\/p>\n\n\n\n<p>In conclusion, the evolution of package managers has significantly transformed the Linux landscape, making software installation more efficient and user-friendly. From the cumbersome process of manually compiling code to the sophisticated automated systems we use today, the advancements in package management have not only simplified dependency resolution but also enhanced overall system stability. With tools like APT, YUM, and pacman, users can easily access, install, and update software with minimal hassle, paving the way for broader adoption and greater innovation within the Linux community. As technology continues to advance, we can anticipate further improvements that will streamline software management and empower users to leverage the full potential of their operating systems.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>1 In the early days of Linux, installing software applications was much more difficult. Most software was not<\/p>\n","protected":false},"author":32,"featured_media":5253,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[5,966],"tags":[957,228],"class_list":["post-14070","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux","category-package-manager","tag-linux-101","tag-package-management"],"modified_by":"David Both","_links":{"self":[{"href":"http:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/posts\/14070","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"http:\/\/www.both.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=14070"}],"version-history":[{"count":2,"href":"http:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/posts\/14070\/revisions"}],"predecessor-version":[{"id":14072,"href":"http:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/posts\/14070\/revisions\/14072"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.both.org\/index.php?rest_route=\/wp\/v2\/media\/5253"}],"wp:attachment":[{"href":"http:\/\/www.both.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=14070"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.both.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=14070"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.both.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=14070"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}