On my home media server, I am running Ubuntu 12.04
Check out my profile for more information.
With the linux experiment coming to an end, and my Vista PC requiring a reinstall, I decided to take the leap and go all linux all the time. To that end, I’ve installed Kubuntu on my desktop PC.
I would like to be able to report that the Kubuntu install experience was better than the Debian one, or even on par with a Windows install. Unfortunately, that just isn’t the case.
My machine contains three 500GB hard drives. One is used as the system drive, while an integrated hardware RAID controller binds the other two together as a RAID1 array. Under Windows, this setup worked perfectly. Under Kubuntu, it crashed the graphical installer, and threw the text-based installer into fits of rage.
With plenty of help from the #kubuntu IRC channel on freenode, I managed to complete the Kubuntu install by running it with the two RAID drives disconnected from the motherboard. After finishing the install, I shut down, reconnected the RAID drives, and booted back up. At this point, the RAID drives were visible from Dolphin, but appeared as two discrete drives.
It was explained to me via this article that the hardware RAID support that I had always enjoyed under windows was in fact a ‘fake RAID,’ and is not supported on Linux. Instead, I need to reformat the two drives, and then link them together with a software RAID. More on that process in a later post, once I figure out how to actually do it.
At this point, I have my desktop back up and running, reasonably customized, and looking good. After trying KDE’s default Amarok media player and failing to figure out how to properly import an m3u playlist, I opted to use Gnome’s Banshee player for the time being instead. It is a predictable yet stable iTunes clone that has proved more than capable of handling my library for the time being. I will probably look into Amarok and a few other media players in the future. On that note, if you’re having trouble playing your MP3 files on Linux, check out this post on the ubuntu forums for information about a few of the necessary GStreamer plugins.
For now, my main tasks include setting up my RAID array, getting my ergonomic bluetooth wireless mouse working, and working out folder and printer sharing on our local Windows network. In addition, I would like to set up a Windows XP image inside of Sun’s Virtual Box so that I can continue to use Microsoft Visual Studio, the only Windows application that I’ve yet to find a Linux replacement for.
This is just the beginning of the next chapter of my own personal Linux experiment; stay tuned for more excitement.
This post first appeared at Index out of Bounds.
Just wanted to bring this website that I found today to everybody’s attention. It’s an online tool that checks if your hardware is supported by Debian. All you need to do is boot the target system from a live CD, type lspci -n at the command line, and paste the output into the text field on the site.
The system then checks a database to see if each of your devices is supported, and gives you a handy readout that shows which drivers you should use for each device. Because Debian is so strict about free software (as in speech, not as in beer), if your hardware passes this test, you should be able to find open sourced drivers that will allow any distribution to run on it.
Just about everything that I’ve ever read about media playback on Linux has been negative. As I understand the situation, the general consensus of the internet is that Linux should not be relied on to play media of any kind. Further, I know that the other guys have had troubles with video playback in the past.
All of which added up to me being extremely confused when I accidentally discovered that my system takes video playback like a champ. Now from the outset, you should know that my system is extremely underpowered where high definition video playback is concerned. I’m running Debian testing on a laptop with a 1.73 GHz single-core processor, 758MB shared video RAM, and a 128MB Intel GMA 900 integrated graphics card.
Incredibly enough, it turns out that this humble setup is capable of playing almost every video file that I can find, even with compiz effects fully enabled and just a base install of vlc media player.
Most impressively, the machine can flawlessly stream a 1280x528px 1536kb/s *.mkv file over my wireless network.
As a comparison, I have a Windows Vista machine with a 2.3GHz processor, 4GB of RAM, and a 512MB video card upstairs that can’t play the same file without special codecs and the help of a program called CoreAVC. Even with these, it plays the file imperfectly.
I can’t explain how this is possible, but needless to say, I am astounded at the ability of Linux.
I set my system font to Dingbat, which worked perfectly in every application except for Open Office. The strange part is that the font worked just fine in all of the other programs that I have installed. Silly OpenOffice.
The following is a cautionary tale about putting more trust in the software installed on your system than in your own knowledge.
Recently, while preparing for a big presentation that relied on me running a Java applet in Iceweasel, I discovered that I needed to install an additional package to make it work. This being nothing out of the ordinary, I opened up a terminal, and used apt-cache search to locate the package in question. Upon doing so, my system notified me that I had well over 50 ‘unnecessary’ packages installed. It recommended that I take care of the issue with the apt-get autoremove command.
On restart, I found that my system was virtually destroyed. It seemed to start X11, but refused to give me either a terminal or a gdm login prompt. After booting into Debian’s rescue mode and messing about in the terminal for some time trying to fix a few circular dependencies and get my system back, I decided that it wasn’t worth my time, backed up my files with an Ubuntu live disk, and reinstalled from a netinst nightly build disk of the testing repositories. (Whew, that was a long sentence)
Unfortunately, just as soon as I rebooted from the install, I found that my system lacked a graphical display manager, and that I could only log in to my terminal, even though I had explicitly told the installer to add GNOME to my system. I headed over to #debian for some help, and found out that the testing repositories were broken, and that my system lacked gdm for some unknown reason. After following their instructions to work around the problem, I got my desktop back, and once more have a fully functioning system.
The moral of the story is a hard one for me to swallow. You see, I have come to the revelation that I don’t know what I’m doing. Over the course of the last 3 months, I have learned an awful lot about running and maintaining a Linux system, but I still lack the ability to fix even the simplest of problems without running for help. Sure, I can install and configure a Debian box like nobody’s business, having done it about 5 times since this experiment started; but I still lack the ability to diagnose a catastrophic failure and to recover from it without a good dose of help. I have also realized something that as a software developer, I know and should have been paying attention to when I used that fatal autoremove command – when something seems wrong, trust your instincts over your software, because they’re usually correct.
This entire experiment has been a huge learning experience for me. I installed an operating system that I had never used before, and eschewed the user-friendly Ubuntu for Debian, a distribution that adheres strictly to free software ideals and isn’t nearly as easy for beginners to use. That done, after a month of experience, I switched over from the stable version of Debian to the testing repositories, figuring that it would net me some newer software that occasionally worked better (especially in the case of Open Office and Gnome Network Manager), and some experience with running a somewhat less stable system. I certainly got what I wished for.
Overall, I don’t regret a thing, and I intend to keep the testing repositories installed on my laptop. I don’t usually use it for anything but note taking in class, so as long as I back it up regularly, I don’t mind if it breaks on occasion; I enjoy learning new things, and Debian keeps me on my toes. In addition, I think that I’ll install Kubuntu on my desktop machine when this whole thing is over. I like Debian a lot, but I’ve heard good things about Ubuntu and its variants, and feel that I should give them a try now that I’ve had my taste of what a distribution that isn’t written with beginners in mind is like. I have been very impressed by Linux, and have no doubts that it will become a major part of my computing experience, if not replacing Windows entirely – but I recognize that I still have a long way to go before I’ve really accomplished my goals.
As an afterthought: If anybody is familiar with some good tutorials for somebody who has basic knowledge but needs to learn more about what’s going on below the surface of a Linux install, please recommend them to me.
Man I’m beginning to sound like a broken record. Last night I reinstalled my Debian system. Somewhere along the line, I made a mess with my repositories, and as Wayne suggested in the comments on one of my previous posts, a good way to avoid many of these issues is to install your Testing system directly from a netinst daily build cd image instead of installing Lenny and then upgrading.
So I did. Upon inserting the install disc and attempting to use the graphical installer, I was confronted with a terminal spewing error messages about missing drivers or something. Figuring that this was just an error related to the daily installer build, I backed out of the graphical installer and took a shot at the expert install. Now that I know my way around Linux, the expert installer isn’t so daunting, and the rest of the process went smoothly, although it took awhile.
This morning, I figured I’d be productive and write some Java on my freshly installed system. So I went over to synaptic, and searched out Eclipse… only to find that it didn’t exist in the Testing repositories. How strange. A google and a half later and I had found that eclipse is available in Lenny, as well as Sid, but is conspicuously absent from Testing. What to do?
I hit the #debian IRC channel and asked for a bit of help, which i promptly got, in the form of these instructions:
So after a little over an hour of messing about, I have a working Eclipse install on my system, and can get some real work done. It was frustrating, but hey, thanks to the guys over at #debian, it wasn’t the end of the world.
After successfully compiling and installing the BlueZync for Thunderbird plugin last night, I decided to take a shot at actually synchronizing my Blackberry with Thunderbird. The first step was a little bit of configuration. For that, I followed this guide on the BlueZync website.
Everything was going fine until I got to the section entitled “Mozilla plugin for OpenSync.” In this section, you are instructed to execute the command ldconfig -p | grep libxpcom.so, which checks if the file libxpcom.so is registered as a symlink on your system. After finding out that it was not, I entered the command locate libxpcom.so from a root terminal, and found three locations for the file in question on my system. I then used the line export LD_LIBRARY_PATH=/usr/lib/icedove:/usr/lib/iceowl:/usr/lib/xulrunner-1.9 to register the symlink. Unfortunately, even after running the export command, ldconfig failed to find the link. Although this one will probably bite me in the ass later on, I’ll skip it for now.
At this point in the install process, I could access the BlueZync settings panel from within Thunderbird, and run the command line osynctool –listplugins and see the mozilla-sync plugin listed, which is the part of the BlueZync suite that really interests me. mozilla-sync is a plugin for OpenSync that should allow me to interface my Blackberry with Thunderbird (with the help of the Barry libraries, which provide another OpenSync plugin that communicates with the phone).
To continue, it was necessary to install all of the elements of the Barry libraries in order to get their OpenSync plugin that would complete the chain. This is where I may have committed my second cardinal sin – dpkg notified me that in order to install the opensync-plugin-barry package, I had to install a version of the libopensync0 package that was between v0.22 and v0.3. As I understand it, Bluezync already installed some version of OpenSync onto my machine, and I have a feeling that reinstalling a different version may ruin all of the progress that I’ve made thus far.
Indeed, after finishing the Barry install and running osynctool –listplugins again, mozilla-sync was still listed, but opensync-plugin-barry was not. This is strange, as in my last three attempts at this process, getting Barry to show up was the easy part. Now the tables have turned, and I have what I assume to be a properly working BlueZync install, but without the Barry component that would make it all work with my phone.
Back to the proverbial drawing board with me…
After some constructive comments from Henrik, the developer of the BlueZync plugin for Thunderbird, I decided to take another shot at getting Blackberry sync working on Linux. This time, instead of making up my own instructions, I actually followed his (which have been updated somewhat since my last visit).
Surprisingly, when I followed the instructions to the letter, the plugin built correctly the first time without any problems. When I launched Icedove (the Debian rebranding of Mozilla Thunderbird), the plugin even loaded correctly! If you’ve read my past posts detailing this process, you’ll feel as incredulous as I did.
The only trouble that I ran into along the way was actually with version 0.9 of the Lightning plugin for Icedove (Thunderbird). Upon installation of the plugin, I was not able to create a calendar, an event, or a task. Turns out that this Ubuntu bug applies to Debian as well, and that the problem can be easily fixed by uninstalling Lightning, downloading and installing the libstdc++5 package, and reinstalling the Lightning plugin. For whatever reason, I could not find this package in the Debian Testing repositories, and instead downloaded and installed it from the Lenny repositories.
With that issue solved, I tried running the ./test-bluezync.sh script, and was met yet again with a slew of failed tests:
21% tests passed, 15 tests failed out of 19
The following tests FAILED:
5 – thunderbird (Failed)
6 – tbird_empty (Failed)
7 – tbird_slow (Failed)
8 – tbird_slow_3 (Failed)
9 – tbird_fast (Failed)
10 – tbird_add (Failed)
11 – tbird_delete (Failed)
12 – tbird_modify (Failed)
13 – light_empty (Failed)
14 – light_slow (Failed)
15 – light_slow_3 (Failed)
16 – light_fast (Failed)
17 – light_add (Failed)
18 – light_delete (Failed)
19 – light_modify (Failed)
However, unlike in past attempts at this install, this time the Bluezync plugin is visible from within Thunderbird… Now all I have to figure out is how to use it. More on that later.
This morning I reinstalled my Debian system. I began by downloading an ISO for the current Debian Stable build (called Lenny), and installing it with the graphical installer. That done, I used a couple of my old posts to get my wireless firmware installed and to upgrade my system to the Testing repositories.
Unfortunately, I have realized that a clean install of Debian Linux is a pretty plain place to be in. Even though I have the benefit of my old writings to help me get up to speed, some, like the ones dealing with how to get Compiz working properly, are somewhat lacking in detail.
Naturally, I’ve replaced all of the problems that running multiple desktop environments was causing with all of the problems that an entirely unconfigured system can cause. I’ve already mentioned that I haven’t gotten Compiz working yet (whenever I turn it on, all of my window decorations disappear), and there is some error with Postgre that causes Synaptic and Aptitude to complain whenever I make changes to my system:
E: postgresql-8.4: subprocess installed post-installation script returned error exit status 1
E: postgresql: dependency problems – leaving unconfigured
E: postgresql-contrib-8.4: dependency problems – leaving unconfigured
E: postgresql-contrib: dependency problems – leaving unconfigured
Most stressing is the fact that I cannot get into the preferences for the Nautilus file system browser. Whenever I try to open the preferences dialog from the edit menu, it (and most of GNOME) crash. Running Nautilus from the terminal yields me this output:
(nautilus:4213): Gtk-CRITICAL **: gtk_combo_box_append_text: assertion `GTK_IS_COMBO_BOX (combo_box)’ failed
(nautilus:4213): GLib-GObject-CRITICAL **: g_object_set_data_full: assertion `G_IS_OBJECT (object)’ failed
(nautilus:4213): Gtk-CRITICAL **: gtk_widget_set_sensitive: assertion `GTK_IS_WIDGET (widget)’ failed
(nautilus:4213): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(nautilus:4213): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)’ failed
(nautilus:4213): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(nautilus:4213): GLib-GObject-CRITICAL **: g_signal_handlers_block_matched: assertion `G_TYPE_CHECK_INSTANCE (instance)’ failed
(nautilus:4213): GLib-GObject-CRITICAL **: g_object_get_data: assertion `G_IS_OBJECT (object)’ failed
Actually, the terminal prints output similar to the above, but so much of it that this post would take up most of the front page of the site were I to post it all. I have no idea what the hell any of that means, or how it got into my system, or why I cannot get into the preferences panel of Nautilus as a result.
Until I do figure it out, I’ll be spending a lot of time on the #debian channel. Along with these major problems come a number of small tasks, like adding myself to the sudo keyring, adding the Testing repository keys to my sources list so that it stops yelling that all of my software is unverifiable.
Generally, after using a Windows machine for close to a year, it gets bogged down and slow and benefits greatly from a reinstall. After about 2 months of using Linux, and installing three different desktop managers on top of one another, I’ve found the same with my Linux install.
I attribute most of the problems that I’ve been having to the relationship between XFCE and KDE. After installing KDE and playing with it for one evening, I hightailed it back to XFCE, and found that many of the options that I set in KDE leeched their way back into XFCE.
For instance, all of the window decoration that I set in KDE, the default web browser and file manager all persist in XFCE. Thanks to the light weight way that XFCE handles settings (read: it doesn’t save them, and doesn’t listen to ones that you do set, so don’t expect it to), most of KDE has leeched into my XFCE install.
This, along with a few other minor problems that I’ve been having lately, as well as a curiosity about what the install process would be like now that I know what I’m doing, have lead me to attempting a fresh install. Ideally, I’ll be back up and running within an hour.
Cheers, and wish me luck.
I use FTP for a lot of things, mostly related to website administration. On Windows, my client of choice is WinSCP. It has this great feature that allows you to constantly synchronize a local directory with a remote directory, allowing you to make changes in your local editor of choice, and have them reflected on the site as soon as you save the file.
On Linux, I’ve been remoting into the server via SSH, opening the remote file in nano, and copying and pasting my local code to the server. While the combination of SSH and bash scripting can allow for some really cool code, I’d rather just find an application that mimics the WinSCP functionality that I’m looking for.
To that end, I have raided Synaptic and downloaded as many different graphical FTP clients as I could find. Read on, dear reader, as I delve into the depths of FTP on Linux, and share my findings with you.
This app is written in C# (for really cool cross-platform action), and targets the Mono framework on the GNOME desktop environment. It supports the FTP, FTPS, and SFTP protocols, and has a nice, clean looking interface:
I really like this app. It has a nice, intuitive interface, feels quick, and supports bookmarks that let you automatically connect to a remote server and set your local and remote directories with a single button click. Unfortunately, the program does not appear to support any kind of scripting or directory watching, so while it may see use as a client for occasional file transfers, it likely won’t suffice as a WinSCP replacement.
Before discoving WinSCP, I used this app for a long time on Windows. It’s an excellent utility that seems to have improved quite a bit since the last time I used it.
Of particular interest to me are the Synchronized Browsing and Directory Comparison features. The former changes the remote directory whenever you change the local directory, so that you can always keep an eye on the difference between local and remote files. To that end, the latter feature applies a colour coded scheme to both local and remote files so that you know exactly what has been synchronized to the server and what hasn’t. However, like bareFTP, there is no synchronization support.
The unfortunate part about this little exercise is that after trying another three FTP clients, I realized that they’re roughly all the same. Sure, some are uglier, like JFTP, and some are uber streamlined like kasablanca. Unfortunately, even though they all do the same task in a slightly different way, none of them do quite what I want.
And so I ask you, the reader – is there an FTP client that allows me to synchronize a local directory with a remote one?
There’s no doubt that when I initially switched from GNOME to XFCE, I was pretty angry. But hey, you can’t stay mad forever – In time, I’ve learned to appreciate GNOME’s minimalistic cousin for what it is, and (unlike some of the other guys) haven’t yet decided whether or not I’ll be switching back to GNOME tomorrow.
Sure, XFCE was a pain to get set up, but since then, it’s been fast and exceedingly stable. As a point of comparison, while running GNOME, I experienced daily crashes related to a known issue between Compiz and my Intel integrated video card. On XFCE, this issue has yet to manifest itself, although this may also have something to do with all of the upgrades that I made the day before changing desktop environments. With the addition of Compiz, GnomeDo+Docky, and some minor customization, I’ve created a desktop that is pleasing to look at, but remains responsive and lightweight on my aging hardware.
My only major complaint with XFCE remains the organization of the “Start Menu.” While I initially thought that the idea of separate Application, Places, and System menus in GNOME were stupid (having come from a Windows background), I find myself missing them under XFCE. I find their single menu system cluttered and hard to navigate, even with it’s sub-menus. GnomeDo improves things, but only if you know the name of the feature or setting that you’re searching for.
On the other hand, the GNOME community has just released a new version of their desktop environment, and it seems to include some neat new features. More importantly, the GNOME community has done a lot of thinking about where they want to take v3.0, due for release in either March or September of 2010. Some of the most interesting ideas that have come from this brainstorming (in my mind anyway), are a new desktop paradigm, supported mainly by a new compositing engine called Gnome Shell, and a new way of browsing your files called Gnome Zeitgeist. Check out some early demo screens here.
Hell, I might even consider taking the KDE plunge, just to see what all of the rage is about…
Now that I’m running the Testing repositories, I actually get regular updates. Today, there were 15 available for my system. However, when I started the update manager, I was confronted with this dialog:
Well what the hell does that mean, anyway? Does it mean that the safe-upgrade will not remove any existing packages or install any new ones? Or is it asking if I would like to perform a safe-upgrade as opposed to installing new packages? Should I just click the Yes button, because it is green and the No button is red? Am I even seeing the correct colours? I am colourblind, you know. Furthermore, if I don’t understand what’s happening here, where can I get more information? How come, no matter what I choose, the Apply button on the next screen is disabled until I manually clear and re-select every update in the list? Lastly, how come the entire update manager crashes when I hit the Check button? It seems unable to resolve one of the sources in my list (one that doesn’t even appear in my /etc/apt/sources.list file), and instead of timing out, sits, waiting, presumably forever, no matter how many times I hit the Cancel button. I’m a seasoned computer user with well over a month of Linux under my belt and I’m concerned – what of those other users who don’t know shit about shit? I want blood, damnit!
After a full day of using XFCE as my new desktop environment, I have just a few complaints, handily summarized in the following ordered list:
Of course, not everything about XFCE is bad. So far, I’ve found it to be stable and exceedingly fast. X11 hasn’t crashed once, although I have no doubt that it will; and once I installed the xfce4-goodies package, I found the environment to be very functional. Overall, I am pleased with my choice, even though there have been some minor setup annoyances.
With everybody switching up their desktop environments this week, I decided that I’d take a shot at installing XFCE on my system. My initial research showed that it is somewhat like a light-weight, highly customizable GNOME. Since I’m running on older hardware, it seemed like the best choice for me. While at it, I also decided to go ahead and move my Debian install from the stable to the testing repositories. In an ideal world, this switch would open the doors to some newer software, alleviating many of the issues that I have had with older software.
Moving to Testing:
Without bothering to do any research, I added the Debian Testing repository to my sources list and told the machine to check for available updates. It immediately found 655 new packages available for installation. Luckily, Debian offered me a handy “Smart Upgrade Manager” and I didn’t have to navigate the upgrade process myself:
After hitting the Smart Upgrade button, my machine chugged away for a few moments, figuring out dependencies and the like, and finally presenting me with a 1289.4MB list of 1570 required packages. Hoping for the best, I hit Apply, and spent the next 2 hours waiting for the necessary downloads to complete. Three episodes of House and an episode of Flashpoint later, at almost 1am, the install process was finally finished. So far, everything seemed alright.
Until I restarted. With the updates applied, my machine booted just fine, and even allowed me to login. Unfortunately, it never made it as far as the desktop. I was presented with a blank grey screen and a mouse pointer (which does work), but no windows, toolbars, or panels to speak of. It seems then, that X11 is working, but that it isn’t launching a window manager of any kind on login. I hit ctrl+alt+F1 and was relieved to find that I still had a terminal, and access to all of my files. But where did my desktop go?
Once at the terminal, I launched Aptitude, to see if there were some broken packages that needed to be fixed. It listed 190 that ought to be removed, and another 6 that ought to be upgraded, including GNOME. Hoping to fix the problem, I told it to get to work, and watched as it attempted to clean up the mess that I had created. That finished, I did what I should have done in the first place, and followed these instructions in an attempt to fix my system by upgrading properly.
This time, everything worked nicely, and within minutes, I was looking at my desktop through the brand spanking new GNOME v2.28.0, just released on September 27th. A solitary hiccup with dependencies required me to completely remove and reinstall the Compiz compositing engine. Friends, I speak to you now from the bleeding edge of the Debian GNU/Linux experience. From this point onward, I will receive the very latest code, just as soon as all release-critical bugs have been addressed. Sweet.
From my newly stable machine, I opened up Synaptic package manager and installed the xfce4 package, which pulled all of the necessary components of my new desktop in as dependencies. I also added the xfce4-artwork package, as it promised a slew of extra pretty desktop backgrounds to play with. After adding Gnome Do, Docky, and playing around with the desktop settings, I arrived at a pretty decent looking desktop:
My first impressions of the desktop are that it seems very solid, fast, and customizable. Unfortunately, it is lacking a few creature comforts, mainly alt-tab window switching (seriously, what the fuck?), and drag-and-drop from menu items to other windows. Over the next couple of weeks, I’ll give it a solid run, and see if it will become my Desktop Environment of choice.
Edit: After a long look down the tubes, I concluded that XFCE doesn’t support alt-tab, and just enabled the Ring Switcher plugin for Compiz to do the job instead.
My desktop used to have icons… And when I right-clicked on it, a fancy little menu came up that let me do things to it. It is now missing in action – and I think I might know why.
This afternoon, I was tidying up my home folder, carelessly deleting some crap that I didn’t think I needed anymore, when I deleted a folder called file: that seemed only to contain the the directories /home/jon/Desktop. I drilled all the way down into this directory, concluded that it was empty, and deleted it. A few moments later, my desktop disappeared.
Edit: I restored the folder to it’s original location and restarted the machine; Everything was back to normal, but I don’t understand the significance of that directory. It doesn’t appear to contain anything, even from a root terminal.
Here’s another fun little tidbit – today I tried to use OpenOffice.org Writer seriously for the first time, and realized rather quickly that I was running version 2.1 of same. For those who don’t already know, OpenOffice.org was close on unusable prior to version 3.x. While it has since matured into a very capable suite of programs, the first few versions were just awful. In particular, I couldn’t get the formatting correct on a numbered list with bullet-ted sub-points.
A quick apt-get -t lenny-backports install openoffice.org did the trick, and removed my system-wide dictionary as a bonus. Now both Icedove (Thunderbird) and Pidgin claim that everything that I type is spelled incorrectly. A quick check with Synaptic confirmed that the aspell package had mysteriously disappeared from my system; when I tried to mark it for re-installation, Synaptic refused, claiming that it aspell depended on a package called dictionaries-common, which wasn’t going to be installed for some unspecified reason. Christ.
Figuring that it was a version issue (since the only thing that has changed on my system is my version of OpenOffice.org), I tried apt-get -t lenny-backports install aspell. It worked, and also warned me that my OpenOffice.org upgrade had left about 25 packages lying about that ought to be removed:
bluez-gnome, libmtp7, python-notify, obex-data-server, libgda3-common, python-gnome2-extras, evolution-exchange, rhythmbox, system-config-printer,
libgpod3, gnome-themes-extras, bluez-utils, python-eggtrayicon, openoffice.org-style-andromeda, libxalan2-java, python-4suite-xml, libgda3-3,
transmission-common, libgdl-1-0, libxalan2-java-gcj, serpentine, transmission-gtk, libgdl-1-common, gnome-vfs-obexftp
The strange thing is that some of those packages look like they might be required by software other than OpenOffice.org. You know, like Evolution, or maybe Transmission? What the hell is going on here? I’m upgrading to the Testing repositories as soon as I get the chance. Hopefully that will solve some of my old-ass-software issues.
After my first two attempts at getting my Blackberry to sync with Mozilla Thunderbird, I got pissed off and went right to the source of my problems. I emailed the developer of the opensync-plugin-mozilla package that (allegedly) allows Thunderbird to play nicely with OpenSync, and gave him the what for, (politely) asking what I should do. He suggested that I follow the updated installation instructions for checking out and compiling the latest version of his plugin from scratch instead of using the older, precompiled versions that are no longer supported.
I set to it, first removing all of the packages that I had installed during my last two attempts, excluding Barry, as I had already built and installed the latest version of its libraries. Everything else, including OpenSync and all of its plugins went, and I started from scratch. Luckily, the instructions were easy to follow, although they recommended that I get the latest versions of some libraries by adding Debian’s sid repositories to my sources list. This resulted in me shitting my pants later in the day, when I saw 642 available updates for my system in Synaptic. I figured out what was going on pretty quickly and disabled updates from sid, without ruining my system. If there’s one thing that Windows has taught me over the years, it is to never set a machine to auto-install updates.
Once I had the source code and dependency libraries, the install was a snap. The plugin source came with a utils directory full of easy to use scripts that automated most of the process. With everything going swimmingly, I was jarred out of my good mood by a nasty error that occurred when I ran the build-install-opensync.sh script:
CMake Error at cmake/modules/FindPkgConfig.cmake:357 (message):
None of the required ‘libopensync1;>=0.39’ found
Call Stack (most recent call first):
CMake Error at cmake/modules/FindOpenSync.cmake:46 (MESSAGE):
OpenSync cmake modules not found. Have you installed opensync core or did
you set your PKG_CONFIG_PATH if installing in a non system directory ?
Call Stack (most recent call first):
It turns out that the plugin requires OpenSync v0.39 or greater to be installed to work. Of course, the latest version of same in either the Debian main or lenny-backports repositories is v0.22-2. This well-aged philosophy of the Debian Stable build has irked me a couple of times now, and I fully intend to update my system to the testing repositories before the end of the month. In any case, I quickly made my way over to the OpenSync homepage to obtain a newer build of their libraries. There I found out not only that version 0.39 had just been released on September 21st, and also that it isn’t all that stable:
Releases 0.22 (and 0.2x svn branch) and before are considered stable and suitable for production. 0.3x releases introduce major architecture and API changes and are targeted for developers and testers only and may not even compile or are likely to contain severe bugs.
0.3x releases are not recommended for end users or distribution packaging.
Throwing caution to the wind, I grabbed a tarball of compilation scripts from the website, and went about my merry way gentooing it up. After a couple of minor tweaks to the setEnvOpensync.sh script, I got the cmpOpensync script to run, which checked out the latest trunk from the svn, and automatically compiled and installed it for me. By running the command msynctool –version, I found out that I now had OpenSync v0.40-snapshot installed. Relieved, I headed back to my BlueZync installation. This time around, I managed to get right up to the build-install-bluezync.sh script before encountering another horrible dependency error:
— checking for one of the modules ‘glib-2.0’
— found glib-2.0, version 2.16.6
— Found GLib2: glib-2.0 /usr/include/glib-2.0;/usr/lib/glib-2.0/include
— Looking for include files HAVE_GLIB_GREGEX_H
— Looking for include files HAVE_GLIB_GREGEX_H – found
— checking for one of the modules ‘libxml-2.0’
— found libxml-2.0, version 2.6.32
— checking for one of the modules ‘libopensync1’
— found libopensync1, version 0.40-snapshot
— checking for one of the modules ‘thunderbird-xpcom;icedove-xpcom’
— found icedove-xpcom, version 184.108.40.206
— THUNDERBIRD_XPCOM_VERSION 220.127.116.11
— THUNDERBIRD_VERSION_MAIN 2
— THUNDERBIRD_XPCOM_MAIN_INCLUDE_DIR /usr/include/icedove
— NSPR_MAIN_INCLUDE_DIR /usr/include/nspr
— THUNDERBIRD_XPCOM_LIBRARY_DIRS /usr/lib/icedove
— THUNDERBIRD_XPCOM_LIBRARIES xpcom;plds4;plc4;nspr4;pthread;dl
— checking for one of the modules ‘sunbird-xpcom;iceowl-xpcom’
— found iceowl-xpcom, version 0.8
— SUNBIRD_MAIN_INCLUDE_DIR /usr/include/iceowl
— SUNBIRD_VERSION 0.8
— Found xpcom (thunderbird and sunbird):
— XPCOM_INCLUDE_DIRS /usr/include/nspr;/usr/include/icedove;/usr/include/icedove/addrbook;/usr/include/icedove/extensions;/usr/include/icedove/rdf;/usr/include/icedove/string;/usr/include/icedove/xpcom_obsolete;/usr/include/icedove/xpcom;/usr/include/icedove/xulapp;/usr/include/iceowl
— XPCOM_LIBRARY_DIRS /usr/lib/icedove
— XPCOM_LIBRARIES xpcom;plds4;plc4;nspr4;pthread;dl
— SUNBIRD_VERSION 0.8
— checking for one of the modules ‘check’
CMake Error at cmake/modules/FindPkgConfig.cmake:357 (message):
None of the required ‘check’ found
Call Stack (most recent call first):
CMAKING mozilla-sync 0.1.7
— Configuring done
From what I can gather from this output, the configuration file was checking for dependencies, and got hung up on one called “check.” Unfortunately, this gave me zero information that I could use to solve the problem. I can verify that the install failed by running msynctool –listplugins, which returns:
msynctool: symbol lookup error: msynctool: undefined symbol: osync_plugin_env_num_plugins
Ah, shit. Looks like I’m stuck again. Maybe one day I’ll figure it out. Until then, if any of our readers has ever seen something like this, I could use a couple of pointers.