Package Management - Avoiding the Two Step
apt-get, up2date, yum, pkgtool, dpkg, rpm -- we have lots of ways to avoid compiling programs. For the most part, I don't think that it's because we don't like to compile programs, but rather because most of the modern package management tools take care of dependancies, versioning, etc. I must admit, I even avoid the traditional "make; sudo make install" -- because I don't want to make my system messy. What I wonder, is if my desire to keep the system "in order" sacrifices some of the advantages compiling garners.
Here's a quick list of pros and cons off the top of my head. I'd love to hear your thoughts on the matter. Does package management help determine the distribution you use? Do package managers in general annoy you?
Pros for using a package management system
- Installing applications is fast
- Dependancies are usually automatically installed
- Many distributions notify when updates are available
- Uninstalling is easier
- It's what most people do, so peer support is prevalent
- Did I mention dependancies are usually automatically installed?
Cons for using a package management system
- Compile time options are chosen by the package maintainer, not you
- The newest version is often not available right away, so your compiling friends will make fun of you
- You get very little control over where and what is installed
- Your CPU will get lazy and overweight if it never has to compile your stuff
I could add to both lists, but the trend I see is that package management gives convenience, and compiling gives freedom. It's pretty clear that as a community, we're pretty big on freedom, so does that mean using apt-get is stealing our rights?
Uh, no. See, the beauty is that even though things like apt-get and synaptic make installing programs as easy as double clicking on setup.exe -- the difference is that we have a choice as to whether or not we pick the convenience of package management. It's the freedom to choose that makes Linux and open source so great.
Now it's your turn. What do you think?
- Integrating Trac, Jenkins and Cobbler—Customizing Linux Operating Systems for Organizational Needs
- New Products
- Tech Tip: Really Simple HTTP Server with Python
- Returning Values from Bash Functions
- Non-Linux FOSS: Remember Burning ISOs?
- EdgeRouter Lite
- RSS Feeds
- Cooking with Linux - Serious Cool, Sysadmin Style!