(OLDER) <- More Stuff -> (NEWER) (NEWEST)
Printer Friendly Version



Another look at Linux code dependencies




2009/01/02

This was in response to my Linux clipboard utilities lead to frustration and defeat.

The following was sent to me in email by someone who prefers to remain anonymous. He explains:

I made some pretty brusque remarks about Mono, C#, and configuration management. C# and Mono aren't terrible, but they aren't compelling and do bring additional problems. RPM package management isn't perfect. However, a lot of the challenge is in creating the spec files. I'm not sure how to approach solving spec file creation issues.

If I was writing for a public forum, I probably would have been a little more politic.

1) A different Linux distribution (as you pointed out) presents no problem. Glipper is actually in Fedora 10's repository

2) Building software that depends on Python bindings to Gnome is a mess in general.

I tried building glipper from the sourceforge tarball, and after adding my one dependency I had no trouble building it. The message from ./configure was a little obtuse, but that's the developer's fault, not Linux or the tools that automate building the configure script.

Once I build software I like to test software before installation. I thought that I would run ./glipper.py from the source directory.

That's when I found out all of the Python module requirements. In true Python fashion, there's no convenient way to test the software before installation. I see this with many Python packages, and I think the casual nature of Python scripting discourages good programming and system hygene. Once I saw the large balls of Python that went along with this program, I decided to skip the installation.

The error message for xclipboard was certainly obtuse. I don't know if xclipboard would run under XCFE. I may try logging in under that window manager later to find out. KDE has its own clipboard manager (Klipper), so that's not an issue.

All in all, my experience was certainly mildly annoying but not show-stopping. I come from a scientific programming, development, systems administration, and systems architecture background so I am not a generic user. One of my areas of interest is configuration / change management. I look at these puzzles as exercises in how not to do dependency management.

Until someone comes up with the C/C++/Python analogue to Maven (Java dependency / build management) or some of the better written Makefile.PL scripts, I think this dependency mess will continue. Someone attempted to do generic dependency management at the package level at Colorado State University a long time ago, but his work never seemed to get much beyond the conceptual / proof of concept stage. I experimented with the tools, but didn't see an obvious way to make them more productive.

BTW - Parcellite (as others have mentioned) seems to be much easier to build, is testable from a user account without installation, and doesn't have all of this Python scripting running about. It's also in the Fedora 10 repository. I downloaded the source code, built it with no problems, and ran it from the command line. The search result for gnome clipboard resulted in Parcellite being the 9th entry. The other two (gnome-clipboard-manager and glipper) seem to not be very active.

Inactivity is one of the warning signs for dependency issues. Having a project at the bleeding edge of technology is another warning sign.





Finally, when confronted with this dependency rat's nest, I find a more measured approach works better.

I once had the joy of getting Mono running on Fedora Core 3. That took the better part of two days chasing down software packages, building, testing, and documenting the results. In the end, I had a complete Mono system up and operational. In the end I also found out that I didn't want Mono. Between the performance issues, SELinux issues, and the perpetual disparity between Mono and .NET, I found no compelling reason to use Mono / C# on Linux.

Have a better 2009.




Click here to add your comments





Fri Jan 2 21:25:45 2009: Subject:   TonyLawrence

gravatar
Parcellite is only marginally better than a one clip clipboard. A really good CBM will have persistence across sessions, will allow multiple clipboards, loading from files and instant paste (most require selecting the text in the CBM and then using normal paste keys).

I understand the allure of puzzles, but sometimes I'm in a hurry for results :-)



Don't miss responses! Subscribe to Comments by RSS or by Email

Click here to add your comments


If you want a picture to show with your comment, go get a Gravatar



numly esn 23470-090102-940605-73
numly barcode

Have you tried Searching this site?

Unix/Linux/Mac OS X support by phone, email or on-site: Support Rates

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more. We appreciate comments and article submissions.

Publishing your articles here

Jump to Comments



Many of the products and books I review are things I purchased for my own use. Some were given to me specifically for the purpose of reviewing them. I resell or can earn commissions from the sale of some of these items. Links within these pages may be affiliate links that pay me for referring you to them. That's mostly insignificant amounts of money; whenever it is not I have made my relationship plain. I also may own stock in companies mentioned here. If you have any question, please do feel free to contact me.

Specific links that take you to pages that allow you to purchase the item I reviewed are very likely to pay me a commission. Many of the books I review were given to me by the publishers specifically for the purpose of writing a review. These gifts and referral fees do not affect my opinions; I often give bad reviews anyway.

We use Google third-party advertising companies to serve ads when you visit our website. These companies may use information (not including your name, address, email address, or telephone number) about your visits to this and other websites in order to provide advertisements about goods and services of interest to you. If you would like more information about this practice and to know your choices about not having this information used by these companies, click here.


book graphic unix and linux troubleshooting guide

My Troubleshooting E-Book will show you how to solve tough problems on Linux and Unix systems!



 I sell and support
 Kerio Mail server




pavatar.jpg
More:
       - Linux
       - Programming


Unix/Linux Consultants

Skills Tests

Guest Post Here











My Favorites

Change Congress