Quantcast
Channel: //YorHel's utterly useless weblog
Viewing all articles
Browse latest Browse all 10

Debian and derivatives

$
0
0
I don't get it. I honestly. Don't. Get it.

This time I'm talking about the practice of splitting libraries into a separate package for run-time files (the .so's, usually), and one for build-time files (the header files and some .a's, usually). I suppose this was done to preserve disk space on systems that are never, ever, in their lifetime used to compile software. Makes sense. Although I have to wonder how much space you're really saving with it and in what situations this space is so important. I've successfully used Arch Linux, which has all the development files included, on an embedded system with a 1GB flash drive. I also have a full desktop and development environment on a 2GB flash drive for my notebook. Never had any problems with free space, and certainly not with the development files. Most of the space wastage goes to stuff like /usr/lib/python* and /usr/share/{locale,doc,man} anyway.

Why am I complaining about that, you ask? Even when I never use any such systems myself? Quite simple: as an "upstream" developer, I am concerned about how easy it is for users to install the latest version of my software. And you don't want to know how many times people have come to me for help on getting ncdc to run on their Debian-based system. Some have even given up quite early on for the simple reason that they didn't have root access to install the -dev packages, even though they already had all the required run-time libraries installed.

So what is a poor developer like me supposed to do to make life easier for my user base? Build packages for all Debian-based distributions and versions that people still use? That's going to be a lot of work to maintain. Not to mention that creating .deb packages isn't nearly as simple as creating PKGBUILD's for Arch or ebuilds for Gentoo.

The Debian project has succeeded in creating an open source system that discourages source-based distribution of software.

I believe there are a few other distributions that split development and run-time files in separate packages as well. I'm simply bashing Debian-based ones here because their user base is by far the most vocal, and quite often doesn't even realize they need -dev packages to compile something.

Viewing all articles
Browse latest Browse all 10

Trending Articles