Lack Of Dependencies and Dependency Resolution in Slackware
I currently on Ubuntu distribution looking to perhaps try out slackware now that im better on the command line. The only thing that really puts me off is the dependency resolution. Slackware is a distribution that believes dependencies are the work of the user which I find a strange notion.
How do slackware users cope with this problem? Is it overly time consuming to get things to work, Are there alot of PPAs available for programs to solve this.
Here are some reasons that Ubuntu and Slackware exist
First of all, Ubuntu and Slackware cater to completely different audiences. Both are easy, but in a completely different way. Both are easy to install, but Ubuntu, once installed, makes a lot of choices for you. That is "easy" in one sense. When you do not even understand what a package is, it is nice to have a ready made system for you that takes care of routine system management for you. But once you learn how to handle such things, many times you want more control, and that is when people start looking elsewhere. Both distributions serve their purpose well.
Originally Posted by Idris
Slackware is a classic distribution. It was created at a time when nearly all software was distributed, whether in binary or source form, using compressed archives. The "tar" in the name originally meant "tape archive", though it has been a few decades now since tape was a primary archiving mechanism. The technique works as well as it ever did. Compression is a means of making the archive smaller or more compact. There was Z compression, then gz compression, then bz2 compression. Slackware usually has .tgz packages, which are archives with gz compression.
Originally Posted by Idris
Concerning PPA, that is a term unique to Ubuntu-based distributions, a convenience tool for "Personal Package Archives". Slackware uses either binary or source packages in the .tgz form I described above.
Others have mentioned that there are multiple package management tools available in Slackware, and a few Slackware derivatives use them as the primary package management tool. With Slackware, you CAN use them if you want, but pkgtool, which deals with those .tgz packages I have described remains the main tool, and someone explained why: many Slackware users and developers like to download source code packages in that .tar.gz or .tgz format and unpack them. The last thing they want to deal with is a chain of packaging dependencies. Of course, the cost is that you have to either get a package dependency management tool if you are simply going to install binary packages, and in that case, slapt-get is one such tool, and there are variations on it. But if you are going to build software using Slackware, then you just may find what Slackware users prefer: they would rather manage which software packages and their associated libraries themselves.
That can be one point of frustration
Not just on Slackware, but on other systems as well, from time to time I have gone to build an application, only to find it requires a variety of libraries as prerequisite code. The best projects clearly state what software is required. If you have a check list in front of you, it makes it a lot easier. You may have everything you need already, you may need a newer version of something, or you may have a bunch of things to get first. It's always easier when those things are known.
Originally Posted by hazel
Where a distribution like Debian is handy is that it includes a lot of software and a lot of libraries. Often you won't have to go searching for the source code unless you want to build from source - and it actually has source code repositories available for times that you want to build from source. But it has a different philosophy than Slackware. A Debian fan won't want to run Slackware and vice versa because of those differences.