Thursday, 12 May 2011

MediaInfoFetcher is no more, long live MediaManager

No need to panic, MediaInfoFetcher has been renamed to MediaManager to reflect that the next version will be much more that a tool to fetch media information. It is not a tool for managing Media collections.

Since my last post, Media Manager as really started to take shape. Many bugs have been found and fixed with is bringing it nearer to a release. Also it now has nearly all the features that will be present in the next release. These include the following:
  • Better searching for film and tv information using XBMC scrapers
  • Tool to download and stay uptodate with the latest XBMC scrapers
  • Much improved film title and show name lookup by variours searching strategies
  • New actions, such as ability to execute system commands on media files and rename the media files
  • The renaming as also improved quite a bit as the patterns have new elements like optional parts.
  • Can lookup film information from .NFO files.
  • Improved configuration options
  • New XML store for caching media information
  • Improved tag chimp source, that will use the sites API instead of scraping the HTML.
  • New installer for all platforms.
As you can see that is quite a impressive list of features going into the next release and their are still a couple in the works. The previous version had the concept of sources and stores, but now has the concept of actions. Actions are performed on the media files when they are found. So a new action as been created for renaming media witch used to be the only thing the old version could do.

Users are able to write the own custom actions, stores and stores in Java and use them. This gives a great way for custom things, but also allows for testing of new actions, stores and sources before they make it to a release.

Anyhow the next release is getting closer......

Tuesday, 1 March 2011

MediaInfoFetcher version 2.0 progress so far....

It's been a little while since I posted any kind of update on the my open source project MediaInfoFetcher. For those not familiar with the project. MediaInfoFetcher is a application and a API which can be used to retrieve TV show and movie meta data from Internet sources. This information is then stored locally and can be used to rename media files with the correct title.

Version 1.0 was released sometime ago now, with several updates since then. However it was always had problems keeping up with the web sites that it scraped for information. So I've been working on version 2.0 for a little while now and it's making good progress. A lot of things will change in the next version which will help to keep it up today and always working in between releases.
Some of the features to look forward to:
  • Added a source that uses XBMC media player scrapers.
  • Checks for and downloads updates of XBMC scrappers.
  • Removed the old XMLStore and replaced it with a new one that stores all media files in a single XML file.
  • Removed some of the source which were always broken. Now using the XBMC source instead.
  • Much better searching of media data (films and tv).
  • No longer uses Atomic Parsely to write .mp4 metadata. Uses a pure Java solotuion instead.
  • And much more to come....
Things are shaping up nicely, but it still has a way to go before it's release ready. I'm very pleased with it's ability to use XBMC scrapers. This means it can always obtain media information without having to worry about it going out of date. It also means their are many more sites that media data can be obtained from as their are quite a lot of different XBMC scrapers.

Monday, 1 November 2010

NFS on MacOS is broken!

I've been looking into iPhone development lately as I wanted to get an idea about what is involved. This means I've been force to use my Mac Mini for development. I'm not really a Mac user as I mostly use Linux (KDE). At first I wanted to use eclipse like I do for everything else. Currently this does not seem possible so I've been forced to use xcode.

I'll probably talk more about xcode in a later blog entry, but for now I'd like to rant about how bad NFS support in Mac applications are. I have NFS shared directories so that my server contains all user details. This has lots of benefits like been able to move between my different machines, but the main advantage is that they data is backup centrally from the server.

It seems many mac applications just don't work with NFS. I've never had a problem in Linux, all applications work with NFS that I've tried. I even play WOW from a NFS directory via crossover games with no problems!

So here is a list of apps I've discovered have problems:
  • iPhone simulator (Can't install developed apps)
  • xcode (Can't save files)
  • Installers (One of my macs can't install stuff unless they are done from local dir).
If anyone knows how to get round these problems I'd love to here it.

Tuesday, 5 October 2010

Bacula - The Open Source Network Backup Solution

Been a little while since I've blogged. I mainly blame this on World of Warcraft which I'm still playing quite a bit on Linux.

I've been looking at how I do backups at home again. I've written a script (in perl) that performs my backups, but it's been having a few problems. First of I worte it to backup my how server to my Netgear NAS. It did this using rsync to a NFS exported filesystem on the NAS. It turned out that the NAS crashes when about half way though a full backup! For some reason the NFS is pretty flakly on my Netgear ReadyNAS (which is a sparc CPU btw!).

The NAS also supported ssh and rsync protocols, so I stopped using NFS and started to transfer things over SSH. This however showed up another problem. It seems that the rsync parameter --list-dest does not work over SSH. This parameter is used to perform the incremental backups and only copy the stuff that has changed since the last time. To perform a full backup takes about 3 days currently (100Mbit network), so this is a no go. The backups need to be incremental.

I've started to think about writing my own backup application, but this time making a client/server type app that does not use rsync. Instead would have it's own storage daemon running on the NAS. At this point I started to look around at other free applications and discovered Bacula. This is what I've using to perform backups now.

This is a very nice application that consists of 3 main parts. Their is a storage daemon, that sits on my NAS. A Director which is a server that controls everything and a file daemon that also sits on my server. The file daemon is the client that is responsible for pulling files when the Director requests them. The director then stores them in the storage daemon. The good thing about this is I can run a file daemon on all the machines on my network and just have a single director on the server.

It was easy to install on my OpenSuSE machines, version 5 was available as packages and I used zypper to install them. Getting the storage deamon onto the NAS was harder. Their are packages, but they are a older version that is not fully compatible. I found I could perform backups, but not restore files. So I grabbed the latest sources and cross compiled it for the NAS which runs a SPARC architecture :-) If your familiar with cross compiling, then this is not to tricky. I need to some extra libs (sqlite3, zlib...) and then build the storage daemon static. After this it worked like a charm.

Bacula is a very command line based application, it's controlled from configuration files and a console. Once I got these all working I manged to setup nightly incremental backups. The acuall backups appear to be a lot faster than my previous solution. Their are some GUI consoles, but this are basicly not much more that a place to type commands. So in my view still a command line. I bealive their is also a web client, but I've not got round to installing that. Will be giving it ago soon.

If I don't find a good graphical client, then I might think about creating one. Main reason for this is we have a number of laptops in my family (windows and Linux) and I'd like these to have a good UI for doing backups.

Thursday, 1 July 2010

World of Warcraft stopped working in Crossover Games

I've been playing World of Warcraft most nights. What can I say, I'm addicted. As mentioned in previous posts, I bought crossover games to play WoW on my Linux Box and it was working very well. That was untill last night. WoW patched it self last night to version 3.3.5, cxgames/wine crashed a couple of time trying to update, howerver in the end I updated to the latest WoW.

No I have the problem that I can't log into the game server. Seems Crossover games no longer works with wine! Hoping their is a patch for this before long otherwise I'll probally have to find another solution.

As a software engineere I can understand how tricky it is to work with every version of the software. Don't expect blizzard shipped a earily release to code weavers before for pushing the patch to users. That would have given code weavers change to fix crossover games.

I could run WoW on my new Mac Mini, but I'd much rather be running it on my main Linux box with dual screens. Since I've bought the Windows version of WoW I'd probally have to buy the mac version. Maybe if you buy wow you can use either version, not sure about that.

Moving from windows to Mac OS X

Since I had problems updating my firmware using iTunes in windows running in VMWare workstation, I've been looking for another solution. I seem to have found one! I bought one of the new Mac Mini's (The server version as to has better spec). I'm now using this for syncing all my gadgets.

Mac OS X works a lot better for me than windows ever did. I've been able to connect it to the ldap server and nfs server on my network. This means and don't have to do much admin work on the sever, everything is controlled from a central location. Most importantly, when I backup my server and backup up all the user data on the mac.

The new Mac's are very nice. I have a older one belowe the TV which serves as a media center and I've been thinking of getting more other TV's at somepoint. Having one which can be used as a desktop computer will help qutie a bit with setting these others up. I don't want to have to admin each of them, I'd much rather come up with a solution where they are all configured on my server.

Reconfiguring Max OS X snow leapord to talk to my LDAP server and authenticated agaist it was pretty tricky. In fact I find OpenSuSE quite a bit easy to configure than the Mac. Most my admin work is done remotely from the command line for variours reasons, this a hell of a lot easier on OpenSuSE. Some think apple should sort out if they are seriours about Server opearting systems. In the end I got things working by changing the mac to use the LDAP profile "RFC 2307".

The automounts are still now working, so that will be a task for another day. It seems that RFC 2307 is not the same as what my linux boxes use. I might be able to tweak the mac to work, otherwise I'll have to add new entries into the ldap for mac's.

The next pain I had was group ID's. The ID's in the mac clashed with the ID's on my linux box. I fixed this by renumbering the ID's on the Mac, then adding them to the ldap server. I then updated the users so that on linux the mac groups were also visible. This was pretty complicated as the groups are stored on the mac in it's directory service as well as flat files. I wrote a perl script to perform the update. The directory service files are stored in these folders :

/private/var/db/dslocal/nodes/Default/groups
/System/Library/DirectoryServices/DefaultLocalDB/Default/groups

Anyway I've spent the last few nights putting all my iTunes conent into place and synced my phone last night. All is working very well. Will have to repeat the user setup for my wife's account. Hopefully firmware upgrade will go smoother this time.

Wednesday, 23 June 2010

Running windows under VMWare

I've spent the last week running windows vist 64Bit under VMWare to see if it can be used sync my gadgets (iphone, tomtom, harmony remote). All as been going pretty well, though still frustated my roaming profiles. The cause windows to take ages to log in and out. A nfs soultion would be much better given that this machine is a desktop one.

I've been syncing my iPhone without problems, which gave me a lot of hope that things would work. However last night I tried to upgrade the firmware to iOS 4. This proved to be impossible and left the phone useable. I googled around and found some suggested fixes for the problem, however none of them worked and all involved hacking around with the Linux Host USB options. If I can't update the firmware, then VMWare is not going to work for me.

I'm not considering other options, and it seems the best one is to by one of the new MacMini's. More money than I wanted to spend, but the benefits are quite large. First of I should be able to connected it to my linux next work with ldap auto mounts via nfs. No more roaming profiles! Backuping up to my Nas should be easy. My netgear nas pretends to my a apple time machine.
All my gadgets seem to work on MacOS X so I should be able to sit the box on the desktop and use VNC from my main Linux machine.