Robert Pogson

One man, closing all the windows.

Stepping Outside the Repository

  • May 21 / 2011
  • 7
technology

Stepping Outside the Repository

Package management and the repositories of software in distributions like Debian GNU/Linux are one of the great features of GNU/Linux. For most individuals and organizations, installing and updating packages from the repositories will be the best way to manage IT. Most of the work is done by the package managers and the end-user can do periodic or instant updates according to his needs.

There are times when this system is not optimal for some users. One of them is when a particular application or a few applications acquires some must-have feature that the end-user wants immediately. Some packages like browsers and office suites have hundreds of millions of installations and are so well tested globally that there is less need for a distro to test and filter the package. One example is Google’s Chrome Browser which is one of the best browsers in terms of features and performance, supported by a powerful and competent business, Google, and widely used with integrated feedback to developers.

Google’s browser works very well with package management systems. It comes with suitable packaging to integrate with several package management systems so that updating the software with the package management system updates directly from Google’s repository rather than the distro’s repository. That allows faster security patches and access to new features sooner. This means, to the end-user, that there is no extra work required to stay up to date. Google even has stable, and unstable versions depending on how well developed features the user wants to use or test. With the Debian package, Google’s scripting makes an entry in the package manager’s configuration to do the job:
pogson@nb:/etc/apt/sources.list.d$ cat google-chrome.list
### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out this entry, but any other modifications may be lost.
deb http://dl.google.com/linux/chrome/deb/ stable main

LibreOffice is a bit different. Their download is a .tgz archive which unpacks to a mess of .deb or .rpm files.
dpkg -i *.deb installs the packages and a further package then integrates the executables with the menuing system:
root@nb:~/LibO_3.3.2rc2_Linux_x86_install-deb_en-US/DEBS# ls -d */
desktop-integration/
root@nb:~/LibO_3.3.2rc2_Linux_x86_install-deb_en-US/DEBS# ls desktop-integration/
libreoffice3.3-debian-menus_3.3-202_all.deb

That’s a bit less automatic but it does the job of staying current. It helped me get .SVG and .PDF importation on my desktop sooner.

With a distro like Debian which takes about two years of testing and development to bring forth goodness, having a few packages out of the repository can be useful. Debian has an experimental and testing flavour which helps but for such well-tested packages it is not really that helpful. One can install more recent versions from other flavours but it requires more detailed knowledge of APT. For the 1000+ other packages in your desktop system, APT and the Debian repositories are a gold mine.

7 Comments

  1. Richard Chapman

    I would most likely get Netflix if it wasn’t tied to Microsoft because I have no TV (nor would I want one). I sometimes use Hulu and Crackle (they are the same). I just found another site, DocumentaryHeaven.com. That’s pretty cool. I also have a few streaming channels I check now and then. Almost nothing comes through that I’m interested in.

  2. Robert Pogson

    Chuckle. “non-free” is still needed on some systems for drivers. We could argue about whether some video, audio or image is “essential” in a particular format or whether it could be distributed just as well in another format… Is the value in the content or the file format? I feel if a producer of content neglects to ship it in readable format, he is shooting himself in the foot. Netflix, for example, says it wants me to be a customer, but last time I checked, it was not shipping anything I could use nor did it even bother to inform me in what format it shipped stuff. How rude and foolish for them to lose my custom. I don’t watch a lot of movies but my wife and daughters surely do… They spend time together in front of our TV often and we don’t have a single PC left in the house with that other OS. Netflix had better get used to that or change their ways.

  3. Richard Chapman

    It’s a very small repository, about 2500 packages or so. I’ve never had a problem with breakage that I can recall. Tex, the creator of the distro, used to be a repo maintainer. He really knows his “stuff”. The repository seems to have everything I want. PCLinuxOS is a derivative of Mandriva which of course is a derivative of Fedora (or Red Hat, I forget). The package management is RPM so Synaptic runs slower than does on deb packages. This distro suits me very well. The pace of the upgrades, the choice of packages and the timeliness of updates on important packages. And it’s non-free which makes getting it media friendly a breeze (I’m dangling a little bait here).

  4. Richard Chapman

    My distro (PCLinuxOS) has always had the newest Google Browser and Google Earth within a day of release by Google. Same with OpenOffice/LibreOffice.

  5. Robert Pogson

    Chrome browser does depend on other packages but not in a way that is very specific about versions so there should not be incompatibility. Distributors of apps can always do “static builds” to include everything in the package but it makes them bulky….
    Depends: ca-certificates, libasound2, libatk1.0-0 (>= 1.13.2), libbz2-1.0, libc6 (>= 2.6-1), libcairo2 (>= 1.4.0), libcurl3, libfontconfig1 (>= 2.4.0), libfreetype6 (>= 2.3.5), libgcc1 (>= 1:4.2.1), libgconf2-4, libglib2.0-0 (>= 2.14.0), libgtk2.0-0 (>= 2.12.0), libjpeg62, libnspr4-0d (>= 4.7.1), libnss3-1d (>= 3.12.3), libpango1.0-0 (>= 1.18.3), libpng12-0, libstdc++6 (>= 4.2.1), libxslt1.1, libxss1, lsb-base (>= 3.2), wget, xdg-utils (>= 1.0.1), zlib1g (>= 1:1.2.3.3.dfsg-1)

  6. Ray

    I wish all apps were like that, instead of having 16 different packages. :(

Leave a comment