Archive

Archive for the ‘Open Source Software’ Category

The apps of KDE 4.10 Part III: KTorrent

April 11th, 2013 No comments

Welcome to another edition of The apps of KDE 4.10. This time around I’m going to be touching on the KDE BitTorrent client KTorrent.

KTorrent

KTorrent represents KDE’s take on what a BitTorrent client should be. It presents a relatively standard interface that reminds me a lot of other fully featured BitTorrent clients such as uTorrent and Deluge.

The main KTorrent interface

The main KTorrent interface

Being a KDE application it is also one of the more fully customizable BitTorrent clients out there, although not to the scale of some of the advanced menus seen in Vuze. It allows you to customize various options including things like encryption, queuing options and bandwidth usage. It also benefits from using a bunch of shared KDE libraries. When I checked its memory usage it was sitting at a respectable 16MB which makes it not the leanest client but certainly not the heaviest either.

Settings menu

Settings menu

Similar to Deluge, KTorrent supports a wide array of plugins which allows you to really tailor the program to your needs. In my testing I didn’t notice a way to browse for new plugins from within the application but I’m sure there are ways to add them elsewhere.

Plugins

Plugins

I have to admit that I actually went into this article expecting to have a lot more to say about this application but the bottom line is this: it does exactly what you expect. If you need to download torrent files then KTorrent might be for you – and not just if you’re running KDE either. Perhaps its because KTorrent covers the bases so well but I actually can’t think of anything that I dislike about it. It’s a solid application that serves a single purpose and what’s not to love about that?

More in this series




I am currently running a variety of distributions, primarily Linux Mint 17.
Previously I was running KDE 4.3.3 on top of Fedora 11 (for the first experiment) and KDE 4.6.5 on top of Gentoo (for the second experiment).
Check out my profile for more information.
Categories: KDE, Linux, Tyler B Tags: , ,

The apps of KDE 4.10 Part II: Kontact

April 9th, 2013 4 comments

Continuing on where I left off last time I decided my next order of business would be to set up my e-mail accounts and calendar. KDE provides a number of different, more or less single purpose applications to handle all of your personal information management. For example e-mail is handled by KMail, RSS feeds are pulled in via Akregator, calendars are maintained through KOrganizer, etc. Each of these applications could easily be reviewed on their own, however there is yet another application provided in KDE, Kontact, that unifies all of these distinct programs into one. For the purposes of this article I will be treating all of these as part of Kontact as a whole but will still try and focus on each individual component where needed.

Kontact

The first time you start Kontact

The first time you start Kontact

The first time you start Kontact it automatically starts an “Account Assistant” wizard that walks you through setting up your e-mail accounts. This brings me to the first embedded application: KMail.

KMail

The first item below summary on the left hand side of Kontact is Mail which makes it, in my opinion, the showcase application for Kontact.

Kontact's sidebar

Kontact’s sidebar

Mail is actually powered by the KMail application which at this point is very mature and fully featured.  Setting up an e-mail account is relatively straightforward although I do take issue with some of the default settings. While some are personal preference, for example I prefer to start my e-mail reply above the quote instead of below it, others are just plain strange. For instance by default KMail won’t display HTML e-mails, only plain text e-mails, supposedly in the name of security. Insecure or not I think consensus says HTML is the way forward.

"No HTML for you!"

“No HTML for you!”

Following in the standard KDE tradition KMail is crammed full of customization and configuration possibilities. For instance you remember that reply above/below the quote thing I mentioned above? In most other e-mail clients this is a simple combobox or switch, in KMail however you can configure everything from the location of the quote to the position of the cursor.

Composer Settings

Composer Settings

KMail also takes spam filtering and anti-virus to a whole new level. You have your choice from any compatible installed spam or anti-virus applications (i.e. SpamAssassin, ClamAV etc.). This gives you some flexibility if you find one works better for you than another.

A typical view of KMail

A typical view of KMail

Finally, on the security front, KMail integrates with the KDE Wallet system to securely store your account passwords and also supports OpenPGP and S/MIME e-mail encryption and signing.

KAddressBook

Next up is Contacts, this time powered by KAddressBook.

Contacts can store a lot of detail

Contacts can store a lot of detail

This is a pretty straightforward application and so I don’t have much to say about it other than it allows you to store a lot of information about a given person (from regular details like e-mail and websites to location and OpenPGP keys). It even generates a fancy little QR code for your contacts.

 

An example contact

An example contact

KOrganizer

For Calendar/To-do List/Journal functionality Kontact makes use of the KOrganizer application. Like KAddressBook this program functions exactly as expected which is not a bad thing. You can create events, send e-mail invitations and get alerts. It supports multiple calendars and is very functional.

Look! A calendar!

Look! A calendar!

The journal feature is kind of neat but I’m not sure who would actually make use of it on a regular basis. Perhaps I’m not the target market for it.

Dear diary...

Dear diary…

Akregator

If your thing is RSS feeds look no further than Akregator. I personally don’t normally use RSS feeds all that much but I know those that do are very addicted to it. Add to that the recent shutdown of Google Reader and this might just be your cup of tea.

Showing some feeds

Showing some feeds

As RSS readers go this one is also full of options. You can even configure a sharing service, such as Twitter or Identi.ca, if you happen to stumble across an article that you wish to spread.

akregator_share

Popup Notes

Last on the list is Popup Notes powered by KNotes. This is basically a sticky note application that lets you jot down little random thoughts or reminders. There isn’t a whole lot to this one.

Take a note

Take a note

Conclusion

So how does Kontact stand up at the end of the day? I like it. It does an effective job at unifying all of the different features you may need without making you feel like you need to pay attention to any one of them. In my use case I mainly stick to e-mail and calendar but in my limited time playing around with Kontact I have very few complaints.

Is it better than the alternatives like Thunderbird or Evolution? In some ways absolutely, in others there is still some work to be done. Outside of mail, calendar and RSS feeds the remaining functionality feels a bit lackluster or, at worst, simply there to round off some feature list bullet point. Thankfully this is something that could be easily remedied with a bit more attention and polish.

Give Kontact a try and let me know what you think in the comments.

More in this series




I am currently running a variety of distributions, primarily Linux Mint 17.
Previously I was running KDE 4.3.3 on top of Fedora 11 (for the first experiment) and KDE 4.6.5 on top of Gentoo (for the second experiment).
Check out my profile for more information.

The apps of KDE 4.10 Part I: Rekonq

April 6th, 2013 No comments

It’s been a while since I’ve used KDE, however with the recent rapid (and not always welcome) changes going on in the other two main desktop environments (GNOME 3 and Unity) and the, in my opinion, feature stagnation of environments like Xfce and LXDE I decided to give KDE another shot.

My goal this time is to write up a series of quick reviews of KDE as presented as an overall user experience. That means I will try and stick to the default applications for getting my work done. Obviously depending on the distribution you choose you may have a different set of default KDE applications, and that’s fine. So before you ask, no I won’t be doing another write up for KDE distribution X just because you think its ‘way better for including A instead of B’. I’m also going to try and not cover what I consider more trivial things (i.e. the installer/installation process) and instead focus on what counts when it comes to using an operating system day-to-day.

Rekonq

The default web browser in the distribution I chose is not Konqueror but rather its WebKit cousin Rekonq. Where Konqueror uses KHTML by default and WebKit as an option, Rekonq sticks to the more conventional rendering engine used by Safari and Chrome.

konqueror_4_4_2

This is not Rekonq, it is Konqueror

Rekonq is a very minimalistic looking browser to the point where I often thought I accidentally started up Chrome instead.

This is Rekonq

This is Rekonq

From my time using it, Rekonq seems to be a capable browser although it is certainly not the speediest, nor does it sport any features that I couldn’t find elsewhere. One thing it does do very nicely is with its integration into the rest of the KDE desktop. This means that the first time you visit YouTube or some other Flash website you get a nice little prompt in the system tray alerting you of the option to install new plugins. If you choose to install the plugin then a little window appears telling you what it is downloading and installing for you, completely automatically. No need to visit a vendor’s website or go plugin hunting online.

Like most other KDE applications Rekonq also allows for quite a bit of customization, although I found its menus to be very straightforward and not nearly as intimidating as some other applications.

The settings menu

The settings menu

I did notice a couple of strange things while working with Rekonq that I should probably mention. First off while typing into a WordPress edit window none of the shortcut keys (i.e. Ctrl+B = bold) seemed to work. I also found that I couldn’t perform a Shift+Arrow Key selection of the text, instead having to use Ctrl+Shift+Arrow Key which highlights an entire word at a time. At this time I’m not sure what other websites may suffer from similar irregularities so while Rekonq is a fine browser in its own right, you may want to keep another one around just in case.

Browsing the best website on the net

Browsing the best website on the net

While I haven’t found any real show-stoppers with Rekonq, I still can’t shake the feeling that I’m missing something. I don’t know how to describe it other than I think I would feel safer using a more mainstream web browser like Firefox, Chrome or even Opera. But like any software, your experience may vary and I would certainly never recommend against trying Rekonq (or even Konqueror). Who knows, you may find out that it is your new favorite web browser.




I am currently running a variety of distributions, primarily Linux Mint 17.
Previously I was running KDE 4.3.3 on top of Fedora 11 (for the first experiment) and KDE 4.6.5 on top of Gentoo (for the second experiment).
Check out my profile for more information.
Categories: Free Software, KDE, Linux, Tyler B Tags: , ,

Using ATI Catalyst drivers on Ubuntu 12.10 with old hardware

February 14th, 2013 No comments

As of version 12.10, Ubuntu has upgraded the version of X.org they include to the latest and unfortunately it is no longer compatible with the official ATI Catalyst drivers for some cards, specifically the HD2xxx, 3xxx and 4xxx models. The open source driver is the only officially supported alternative and, while it is fine for most uses, it doesn’t support the advanced power settings that the ATI driver does. This means that on my laptop in particular the fan runs constantly as it tries to cool down the overheating card.

So… no Ubuntu 12.10+ then?

Thankfully someone has created a PPA that successfully downgrades the version of X.org to the maximum supported version for the official ATI driver. This step is obviously quite drastic and should not be used on production systems. However from the limited time that I have been running it things seem pretty stable. The PPA (and instructions) can be found at this link: AMD Catalyst Legacy




I am currently running a variety of distributions, primarily Linux Mint 17.
Previously I was running KDE 4.3.3 on top of Fedora 11 (for the first experiment) and KDE 4.6.5 on top of Gentoo (for the second experiment).
Check out my profile for more information.
Categories: Tyler B, Ubuntu, Xorg/X11 Tags: , , ,

Batch Converting FLAC to MP3

April 2nd, 2012 1 comment

I came across this neat script somewhere on the internet while trying to batch convert a folder full of FLAC files to mp3 files. Hopefully it will help somebody else:

for file in *.flac; do flac -cd “$file” | lame -b 320 -h – “${file%.flac}.mp3″; done




On my Laptop, I am running Linux Mint 12.
On my home media server, I am running Ubuntu 12.04
Check out my profile for more information.
Categories: Jon F, Open Source Software Tags:

Fixing build issues with phonon-backend-gstreamer-4.5.1

November 9th, 2011 No comments

I’ve decided to try and upgrade my LFS system to the latest version of KDE (4.7.3 as of the time of this writing) and correspondingly needed to upgrade phonon-backend-gstreamer. Unfortunately, following the previous version’s compilation instructions provided this nasty message:

[ 4%] Building CXX object gstreamer/CMakeFiles/phonon_gstreamer.dir/audiooutput.cpp.o
In file included from /sources/phonon-backend-gstreamer-4.5.1/gstreamer/audiooutput.cpp:22:0:
/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:200:38: error: ‘NavigationMenu’ is not a member of ‘Phonon::MediaController’
/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:200:38: error: ‘NavigationMenu’ is not a member of ‘Phonon::MediaController’
/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:200:69: error: template argument 1 is invalid/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:262:11: error: ‘NavigationMenu’ is not a member of ‘Phonon::MediaController’
/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:262:11: error: ‘NavigationMenu’ is not a member of ‘Phonon::MediaController’/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:262:42: error: template argument 1 is invalid
/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:263:45: error: ‘Phonon::MediaController::NavigationMenu’ has not been declared
/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:317:11: error: ‘NavigationMenu’ is not a member of ‘Phonon::MediaController’
/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:317:11: error: ‘NavigationMenu’ is not a member of ‘Phonon::MediaController’/sources/phonon-backend-gstreamer-4.5.1/gstreamer/mediaobject.h:317:42: error: template argument 1 is invalid
make[2]: *** [gstreamer/CMakeFiles/phonon_gstreamer.dir/audiooutput.cpp.o] Error 1make[1]: *** [gstreamer/CMakeFiles/phonon_gstreamer.dir/all] Error 2make: *** [all] Error 2

To fix this issue, make sure you have the latest GStreamer and phonon-backend-xine installed. Then I followed some of the advice from this KDE forum topic.

If, like me, you installed Qt into /opt/qt, create a symbolic link into the qt directory pointing to your system’s latest version of phonon. For later success with kde-runtime, create links to the libphonon libraries in /opt/qt-4.7.1/lib to your recently compiled /usr/lib64 versions (adjust paths to /usr/lib on 32-bit systems):

# mv /opt/qt-4.7.1/include/phonon /tmp
# ln -snf /usr/include/phonon /opt/qt-4.7.1/include/phonon
# cd /opt/qt-4.7.1/lib
# rm -rf libphonon*
# ln -snf /usr/lib64/libphonon.so libphonon.so
# ln -snf /usr/lib64/libphonon.so.4 libphonon.so.4
# ln -snf /usr/lib64/libphonon.so.4.5.1 libphonon.so.4.5.1
# ln -snf /usr/lib64/libphononexperimental.so libphononexperimental.so
# ln -snf /usr/lib64/libphononexperimental.so.4 libphononexperimental.so.4
# ln -snf /usr/lib64/libphononexperimental.so.4.5.1 libphononexperimental.so.4.5.1

Then rerun the compilation process for phonon-backend-gstreamer and voila, no more errors. (You’ll probably still have more issues to work out, but this gets past the phonon-backend-gstreamer blockade.)




I am currently running Ubuntu 14.04 LTS for a home server, with a mix of Windows, OS X and Linux clients for both work and personal use.
I prefer Ubuntu LTS releases without Unity - XFCE is much more my style of desktop interface.
Check out my profile for more information.

Why do so many open source programs throw C/C++ warnings?

November 8th, 2011 4 comments

Seriously, I’d like to know, because this is a bit ridiculous.

For all the heavily encouraged coding styles out there, nearly all the open source software packages I’ve had to compile for Linux from Scratch have either

  1. Insanely chatty defaults for compilation; that is, GCC provides ‘notices’ about seemingly minor points, or
  2. A large number of warnings when compiling – unused variables, overloaded virtual functions, and deprecated features soon to disappear.

In the worst case, some of these warnings appear to be potential problems with the source. Leaving potentially uninitialized variables around seems to be a great way to run into runtime crashes if someone decides to use them. Overloading virtual functions with a different method signature has the same possible impact. And comparing signed and unsigned numbers is just a recipe for a crash or unpredictable behaviour down the line.

I just don’t get it. In my former development experiences, any compiler notifications were something to pay attention to. Usually when first developing an application, they were indicative of a typo, a forgotten variable or just general stupidity with the language. If a warning was absolutely unavoidable, it was specifically ignored in the build scripts with a clear explanation as to why.

So what’s the case with your programs? Have you noticed any stupid or insightful compiler messages scrolling past?




I am currently running Ubuntu 14.04 LTS for a home server, with a mix of Windows, OS X and Linux clients for both work and personal use.
I prefer Ubuntu LTS releases without Unity - XFCE is much more my style of desktop interface.
Check out my profile for more information.

LFS so far – why you should build i686 and x86_64 binaries

November 7th, 2011 No comments

I’ve now been actively using my (Beyond) Linux from Scratch installation for about a week now, and it’s actually pretty neat to have something working that I built with just a general outline. Granted, the LFS guide is very well put together, but going beyond the basic console of a system requires a bit of time and effort.

In really any other distro, the package manager should really be your best friend (except when it breaks.) Even in a source-based Linux like Gentoo, Portage gives you a pretty decent idea of what’s installed and is able to keep track of dependencies. With LFS, there are really some times where I don’t want to have to locate and download seventeen .tar.bz2 files, and ./configure –prefix=/usr; make; make install to each one in sequence. What’s worse is when you run into three dependencies for a particular piece of software, and the first two install properly, but the third one depends on ten additional packages.

This is what building software in LFS looks like.

There are also some libraries that despite being built on an x86_64 system will come out as 32-bit, and require special compiler or configure flags in order to build a pure 64-bit version. LFS x86_64 does not really have patience for anything 32-bit. This is generally fine because you’re building most of the applications yourself, but you can’t “just run” any typical application unless it’s taken the architecture into account.

In summary, while it’s awesome to go to SourceForge and have the very latest version of a package, sometimes I just don’t feel like going through all those hoops and satisfying twenty conditions for a compile to take place. Perhaps I’m OK if your application uses a built-in library rather than relying on whatever happens to be installed in /usr/lib.

The takeaway from this is that besides providing the source, considerate developers should try and build an i686 and x86_64 binary from that same source. If your build system has issues or you find it painful to produce binary releases, remember that anyone attempting to follow the INSTALL file will run into the same pain points. Firefox, for example, has both i686 and x86_64 release tarchives. The 64-bit version works quite well on my LFS installation and it’s how I’m writing this post.




I am currently running Ubuntu 14.04 LTS for a home server, with a mix of Windows, OS X and Linux clients for both work and personal use.
I prefer Ubuntu LTS releases without Unity - XFCE is much more my style of desktop interface.
Check out my profile for more information.

LFS: Installing VLC

November 6th, 2011 1 comment

Since the install of Linux From Scratch, one of the main issues I’ve been having is the playback of audio and video files. VLC does both quite well, so I decided to install it.

Like most of my installs in Linux From Scratch, there are millions of dependencies, and you have to install each one manually. I found that the CBLFS VLC page was a great help in determining which packages were required.

One thing I noticed, is that even though it lists some packages as “Optional,” VLC will not compile without a few of them. The easiest way to deal with this is to just install the optional packages as required.

I only ran into one issue while compiling:

D-Bus library appears to be incorrectly set up; failed to read machine uuid: Failed to open "/var/lib/dbus/machine-id": No such file or directory
See the manual page for dbus-uuidgen to correct this issue.
D-Bus not built with -rdynamic so unable to print a backtrace
Aborted

The quick fix for this is to just run:

dbus-uuidgen > /var/lib/dbus/machine-id

Now that VLC is compiled, you can run it anytime by using vlc from the command-line. Make sure you don’t pull a Jake and run it as root. It will yell at you.


I am currently running ArchLinux (x86_64).
Check out my profile for more information.

Linux From Scratch: We Have Lift-off…

November 4th, 2011 No comments

Hi Everyone,

Now that I have a relatively stable environment, I just wanted to write an update of how things went, and some issues that I ran into while installing my desktop environment.

No Sound

Not that I was expecting anything different from LFS, but I had no sound upon booting into KDE. I found this quite strange, as alsamixer was showing my sound card fine. One thing I can tell you, is that alsaconf is a filthy liar. My sound is now working, and it still says it can’t find my card. I’m not sure how I got it working, but here are a few tips.

  • Make sure your sound is un-muted in alsamixer.
  • Check your kernel to make sure that either support is compiled in for your card, or module support is selected.
  • If you selected module supprt, make sure the modules are loaded. For me, this was snd-hda-intel.

Firefox and Adobe Flash

I’m not going to go into too many details about Firefox, as Jake covered this in his post here, but I’d like to note that installing Flash into Firefox was quite easy. All I had to do was download the .tar.gz from Adobe, and do the following:

tar -xvf flash.tar.gz (or whatever the .tar.gz is called)
cd flash
cp libflashplayer.so ~/.mozilla/plugins (make sure plugins is created if it does not exist.)

KDE Crash On Logout

The first time I tried to logout of KDE, I noticed that it crashed. After doing some investigations, I found a solution here. You want to edit your $KDE4_PREFIX/share/config/kdm/kdmrc to reflect the following:

[X-:*-Core]

TerminateServer=true

What’s Next?

I’m actually not sure what I’m going to do next. I suppose I should get VLC running on the system, but that shouldn’t be too difficult. I now have a working web browser, flash, and sound, which should be fine until I can get other things working.


I am currently running ArchLinux (x86_64).
Check out my profile for more information.