Thursday, December 17, 2009

The failure that is windows

In this case, it's windows server 2008. I can't even be bothered to capitalize that horrendous bowl of crap.

Of course, it must be said that the server platform wasn't meant for everyday use, especially when it comes to programming and development. But with that said, it's not like any other "good" operating systems have trouble performing more than one function.

If it isn't clear yet, I am in a bad mood.
I have an assignment due tomorrow requiring an apache/mysql/php server (LAMP in this case) to host a website. Now, I was reluctant to use ms server 2008 because I know that it's going to piss me off, bad. Little did I know I would encounter the following issues:

Issue #1: Update won't install.
Now I know this rather silly considering it doesn't affect my work, but it's a start to pave the way to frustration.
Windows Update does not update. Upon trying to update (because I like my OS secure and up-to-date), I am informed that my 4.1 Mb update failed. Reason? Even microsoft doesn't know.
Their help page starts off with the ever-so-helpful "0 results for WindowsUpdate_blahblahblah". The error code is 80070490 if you want to know.
Yes, I am connected to the internet. The update is already downloaded!
Are you saying I can't even use an up-to-date server? This has been happening for over a week now! It won't update! Useless!

Issue #2: Taskbar hell.
For some odd reason, everytime I click on a taskbar program, it greets me with the flashing grey and blue, but it does not appear on my desktop as it should. When I click it again, it de-selects itself still flashing grey and blue. What?! I click it again and FINALLY it opens up like it should.
So basically I have to work 3 times as hard to do 1x the work. And you know in windows, you have to do a lot of clicking. I guess Redmond can't be bothered to include global shortcuts that seem to be so prevalent in other Operating Systems. Alt-Tab works as expected though.

Issue #3: And here's where the sh-- goes down.
I am a programmer, developer, whatever you wish to call it. When programming in php and using html/css, you use a lot of <, >, and / characters.
AS LUCK WOULD HAVE IT, while in the middle of using Programmer's Notepad to do my work, something happens that I cannot explain (a certain key combination maybe) and I no longer can type those 3 characters! In one fell swoop, my productivity falls to absolute zero. What happened? I check the locale, keyboard setup, sticky keys, and pnotepad for any options that could have affected my typing. But nope, there doesn't seem to be any particular reason for what just happened.
By now, I'm practically screaming at my lcd, wanting to throw my fist through it.

As I'm thinking about it, there are a few possibilities. Since the characters for < > and / were changed to ., `, and some accented capital E character, it was probably an english/french keyboard language exchange of some sort. The kicker is, that I was able to type the < > and / characters in firefox so it was probably an application error; as the reader of this post, you are probably wondering "so what? it's not like you can't restart and continue on."
And you'd be right, I did reboot and everything works again.
But this just goes to show something more sinister at work. Why in hell should an application be able to have the power to change what characters are typed on a keyboard a) without any consent of the user, b) without any warning (the screen flashed once when it changed), and c) with no apparent way to undo or revert the changes?

I was working as the Administrator, so I'm partly to blame. But why would an application even ATTEMPT to change something like that? If I was French, I'd have a French keyboard layout and negate the need for the application to worry about it. And that's the point of an OS, to perform required operations without nagging the user on tasks that are not relevant to the job at hand.
Which is why windows fails on so many levels.
+ nags you to reboot after certain updates, every 15 minutes on XP I believe.
+ nags you with the UAC. If it was actually helpful, I could understand, such as GNU/Linux asking for root or sudo passwords.
+ have to use the mouse for almost everything. Because arthritis is for the cool kids.

I'd also like to mention that as I was working in a VMWare machine, for some reason my screen would flicker every so often. Virtualbox may have it's quirks, but it doesn't piss me off by attempting to inflict a seizure.

So my boiling point has been reached. My opinion of windows and microsoft, however low it was before, has gone south.

I'm contemplating refusing employment if it requires work on a windows machine, for my own safety.
The last thing I need are glass shards in my fist.

Saturday, November 7, 2009

Akonadi D-Bus error and fix

After re-installing Kubuntu 8.10, the only distribution I've tried that works with my ATI Radeon 3870 HD card (using old catalyst drivers: 8.12), I've been looking into optimizing my OS since upgrading is oh so frustrating. However, this brings its own issues.

I sped up the boot time by about 5 seconds or so by disabling and blacklisting some unneeded modules, but I've also been attempting to transfer internal sqlite databases to a faster MySQL database.

Attempting to convert akonadi has led to some frustrations. Here's what happened.

Went to the system settings for kde -> then Akonadi.
Created the mysql database and user for it to use (referenced the amarok wiki, as it's basically the same procedure with different names.) and then restarted.
This will output annoying errors like:
akonadi "Can't connect to local MySQL server through socket ... mysql.socket"


Akonadi server process not registered at D-Bus

Needless to say, if you're switching or modifying akonadi and it starts blitzing out on you, a smart solution is to
a) delete all the configurations that it uses (/home/$USER/.config/akonadi/*) and
b) do an "apt-get install --reinstall akonadi-server akonadi-kde"

do a "dpkg-reconfigure akonadi-server akonadi-kde" for good measure.
I rebooted first, then attempted to load it. Finally it worked.

I should also mention that I did the following, mentioned from the akonadi section in the wiki.



Note that you might be using Apparmor even if it does not show up in the process list.

Also note that some distributions ship an additional mysqld binary called mysqld-akonadi which has AppArmor set up correctly. If that's the case on your system and you see this problem nevertheless, there are two possible reasons:

* Akonadi still uses mysqld instead of mysqld-akonadi. You can change that in Systemsettings -> Advanced -> Akonadi -> Server configuration.
* AppArmor is not setup correctly for mysqld-akonadi either. Try running the aa-complain command noted above with mysqld-akonadi instead of mysqld.


You will also experience this problem if you are running an encrypted home directory using encryptfs combined with AppArmor as the Akonadi apparmor profile currently does not account for an ecrypted home (common with Ubuntu Jaunty users). Error messages with include:

* dmesg produces:

ecryptfs_do_create: Failure to create dentry in lower fs; rc = [-13]
ecryptfs_create: Failed to create file inlower filesystem

* Akonadi will list the following errors:

Akonadi server process not registered at D-Bus

The fix is to edit the following file "/etc/apparmor.d/usr.sbin.mysqld-akonadi". Below the line:

@{HOME}/.local/share/akonadi/** rwk,

Add a new line:

@{HOME}/.Private/** rwk,

Restart apparmor and restart akonadi.

And so, akonadi works so far. I haven't thoroughly tested it, so we'll see how things go.

Tuesday, November 3, 2009

[PDFLaTeX] finished with exit code 70

I recently got an error compiling a pdf in the LaTeX editor, Kile.

As per the title, it mentioned an exit code of 70. What happened with this error is that I attempted to compile my document and the console mentioned that there were: 0 errors, x warnings and y badboxes, etc. However, upon trying to view the document a 'no pdf found'-like message appeared. Odd... I had just added 25 pdfs as graphics into the document, so perhaps I had overloaded it?

Actually, the reason for this errors is because one pdf file I had imported was misspelled, so it couldn't add it and spat out the exit code 70. The strange thing was that it erased my pdf output and only after scrolling up in my console was the error message visible. Until I had scrolled up, there was no indication an error had occurred aside from not being able to view the pdf.

If anyone gets this error, check your spelling first!

Thursday, October 29, 2009

Arch, Gentoo, and *buntu

Hey all. As I have been recently working on setting up an Arch system on my alienware, I'd like to point all you enthusiasts to a resource that has been invaluable for me.

On the right hand side of the page, there are links to the different arch tutorials. That, and the archwiki, are detailed and helpful. Even though I'm mainly a Kubuntu guy, I find the Arch community to be very intelligent and independent compared to many other communities. I've tried a bit of Gentoo in my spare time and found it to be exciting, but difficult. The tutorials and forums tend to be less 'simple' and straightforward, which is why arch is so attractive to me.

Hopefully I'll have a fully configured system in a few days. I've spent about a week on this already.

In other GNU/Linux news, I'm really impressed with the Kubuntu 9.10 RC. Really Impressed.
On a school laptop (which takes 2+ min to cold boot to XP with all the school services enabled, ~1 min with Kubuntu 8.10) with 2 Ghz Dual Core Intel Centrino, 2 GB DDR2 ram, integrated Intel graphics, it loads in approximately 20 seconds.

"sudo shutdown -h now" will shutdown in about 5 seconds. Sadly, this is the only way to shut down as the KMenu driven shutdown will not work. It gets hung up on some process so it won't shut down.
That, and the amarok blog I mentioned before make the experience a little less pristine.
But it's by far the best *buntu release to date, faster than any Windows OS on the equivalent hardware, more stable, and less prone to malware. Firefox and OpenOffice look much better with the QT/KDE theming and firefox runs like a dream, unlike the 3.5.3 beta I was using on 8.10.

The shutdown issue as far as I can see is the only show stopper, and it's not even the official release yet. Since shutdown is so darned fast using sudo, I can really see the potential here.

Now if only ATI and nVidia would get their drivers in order. Supposedly 20-40% worldwide uses GNU/Linux, I'm surprised they haven't taken more action. But the goings on of corporations is beyond me currently, and they have done many beneficial things for the open and free software communities.
Maybe with Windows 7, they will finally see Linux as a driving force they can get behind.
It seems Redmond has gone a little overboard with the whole 'Rebooting will solve all your problems' Windows concept.
Trolling for google results provides these links:

Saturday, October 24, 2009

Installing Amaork 1.4 in KDE 4 (Kubuntu 9.10)

As per my previous post, playlist functionality was disappointing in amarok 2.x, so here's a brief tutorial on how to get it working in 9.10 (could work in 9.04 and others I'm assuming too). I am using the command line only, so a user should be somewhat familiar with using it, and installing packages via apt with it, as well as compiling sources.

(Please note, this may break your amarok 2.x application:
amarok: symbol lookup error: /usr/lib/ undefined symbol: _ZTIN6TagLib3MP44FileE , and I can no longer import a collection into amarok 1.4. LastFM does not seem to work.)

Amarok 1.4 source:

1. Install.
You will need -dev packages for compiling. Some of these include: kdelibs-dev, kde-devel, xorg-dev, qt3 and qt4 -dev packages, build-essentials, gcc 4.3 or 4.4 (I'm also assuming you have g++ 4.3 or 4.4), and others that may crop up. There are forums that contain the packages you need to install.

( mentions the following packages to install)

sudo apt-get install cdbs comerr-dev diffstat fdupes gawk gettext-kde kdelibs4-dev kdesdk-scripts libaa1-dev libacl1-dev libart-2.0-dev libasound2-dev libaspell-dev libattr1-dev libaudio-dev libaudiofile-dev libavahi-client-dev libavahi-common-dev libavahi-qt3-dev libbz2-dev libcaca-dev libcucul-dev libcups2-dev libcupsys2-dev libcurl4-gnutls-dev libdbus-qt-1-dev libdirectfb-dev libdirectfb-extra libesd0-dev libfftw3-dev libflac-dev libgcrypt11-dev libgl1-mesa-dev libglu1-mesa-dev libgnutls-dev libgpg-error-dev libidn11-dev libifp-dev libilmbase-dev libjasper-dev libjpeg62-dev libkadm55 libkrb5-dev liblcms1-dev libldap2-dev liblua50-dev liblualib50-dev libmad0-dev libmng-dev libmpcdec-dev libmtp-dev libmusicbrainz4-dev libmysqlclient15-dev libncurses5-dev libnjb-dev libofa0-dev libogg-dev libopenexr-dev libpcre3-dev libpq-dev libqt3-compat-headers libqt3-headers libqt3-mt-dev libsasl2-dev libsdl1.2-dev libslang2-dev libsqlite3-dev libssl-dev libsysfs-dev libtag1-dev libtasn1-3-dev libtiff4-dev libtiffxx0c2 libtunepimp-dev libusb-dev libvisual-0.4-dev libvorbis-dev libxine-dev libxml2-dev libxmu-dev libxmu-headers libxslt1-dev lua50 mesa-common-dev qt3-dev-tools quilt ruby1.8-dev

I'd recommend viewing the blog as it has a lot of info regarding amarok 1.4.

Another quick mention: MTP. This will give you grief unless you have the right version. The issue is, you need to downgrade to in order for this to work.
This one should be an easy .configure/make/make install (as root)

You will also need xine, and might need to compile it from source as well (I did)

2. Ruby.
This one deserves its own point, because it may give you a lot of grief. Install Ruby1.8 or higher (I used Ruby1.9.1) as well as having the rubyfull and ruby (ruby-dev) packages. If amarok is still spitting out some ruby header errors, then do the following:

sudo apt-get install --reinstall ruby

That fixed it for me, but make sure you have ruby installed.

3. Configure.
I'm assuming you have the source extracted, packages installed, and are ready to configure. First, my recommendations:
./configure --without-arts --program-suffix=-1.4
(I didn't add this, but you probably should. '--enable-mysql')

Don't build with arts, as 9.10 and other new-ish versions tend to use xine and pulse.
I added the prefix so I can run both amarok 2.x and amarok 1.4.10.
Be sure to google any errors that occur, many of them are self-explainatory.

4. Make
Here's where you will need to know if you have gcc 4.3 or gcc 4.4.
According to an Arch package report, having the updated 4.4 version will require some cpp file editing.

It's not too difficult even for noobs, but definitely detracts from the experience. Make-ing is the last difficult part of installing amarok 1.4.x.

If compiling with gcc-4.4 and up (as I did), some .cpp files will create errors so you have to add '#include ' to those classes (at the top of the file, I put them before the other include statements) OR '#include ' if that fails. (you may get this error: "error: 'rename' is not a member of 'std'", and including stdio.h will not fix it).
If you are using gcc-4.3, this shouldn't be an issue, but I have not tried it.
I edited approximately 8 .cpp files total. (you can use kate, nano, or any text editor.)

Once make-ing is done, then type

sudo make install

This should go without a hitch.
To run amarok, you MUST call amarokapp-1.4 (program suffix = -1.4, remember)
not amarok-1.4.

One issue I encountered is that the default .ogg file with Matthias's 15 second clip did not play. I already had installed mp3 codec support by running amarok 2's install script so mp3s play great. If I have any issues along the way to using 1.4 now, I'll post them on this blog.

I hope this helps many users hoping to regain the functionality of a quality audio player.
I am not going to test a lot of extra functionality, mostly playlist, tagging, and support.

You can comment or e-mail me if you'd like a hand, but don't expect a solution.

Anyway, cheers all.

EDIT: Just as a point of interest, amarok2 saves playlists in a .xspf format, which is why the amarok1.4 'm3u' extension is not found. I heard that when a collection is being updated, any playlists should be automatically added. I added the playlists to the /home/$USER/.kde/share/apps/amarok/playlists folder after I updated my audio, which could explain it. But I'm sure you diehard 1.4 fans don't mind.

Kubuntu 9.10 RC - First Impression

I installed Kubuntu 9.10 Release Candidate on my school-owned laptop yesterday.
So far, things are looking quite good, but there are a few disappointments as well.

[Machine specs:
> 2.0 GHz Dual Core Intel Centrino
> Mobile GM965 / GL960 Intregrated Graphics controller
> 1200x800 res
> All partitions ext4 format ]

By far, the biggest showstopper for me is the inclusion of Amarok 2.x.
I'm not going to complain about the interface, because that's not really the issue even though I prefer 1.4.x's interface.
I cannot import my old playlists from Amarok 1.4.x. I copied them over to the ~/.kde/share/apps/amarok/playlists folder, yet it still will not show them.
I have a mysql database to hold all my songs, yet when re-attaching my external with my music, it had to re-scan it all (which took about 10 minutes). Didn't happen with the older version.

Another issue is the new grub loader. It's unintuitive compared with grub 1.5, but all in all, learning the ropes isn't too difficult.

Now on to the good stuff:

- Compositing (Window Effects) is automatically enabled on an integrated Intel chipset. Yes, a lot of work has been done to get it working right. I love transparency, so this really made an impression.
- Fast. These school laptops have poor chipsets and build quality. Windows XP (modified with school software) takes approximately 2 and a half minutes to boot unless services are cut. Kubuntu races along, even with all the limitations of hardware.
- Improved notifier and taskbar. In 8.10, there were issues with some notifications freezing (unable to close) and spacing issues in the external device widget. This release gets it right, and it looks even better. Organization has definitely been polished.

Note: I skipped the 9.04 release, video driver issues.

I'm no professional reviewer, but this looks good. I'd definitely trust *buntu over Windows 7 on older hardware like this.
I've also been spoiled, as my other laptop is an alienware. (How's that for a bumper sticker?)
In comparison, Kubuntu 9.10 on this laptop IS slower than 8.10 on my alienware, BUT bootup time on 9.10 is superior to my 8.10 notebook.
That really says something. Congrats, Canonical.

Saturday, August 22, 2009

Update August 22.2009

Well, summer has been a mix of work, friends / family, and of course: code.
School's starting in a few weeks, so we all know what that means. Less time to work on awesome pet projects. =/

I haven't had as much time to work as I want, but I've definitely made progress. After coming back from three weeks of holidays, it came as a surprise to me when I started to code and document for 6-8 hours every day without any prodding. Being in a very small company... there's still a long way to go. However, I've got command line arguments processing fine, a configuration file and logging mechanism (with console gui for output if desired) working. An accomplishment for someone with so little real-world experience as I.
This is actually the easy stuff; once the base of my libraries are created, I'll start having to learn about graphical manipulation and key controls. Even when the libraries are completed, I have an IDE planned. It should take years to complete, but I think it will benefit the open-source community once finished.

The reason I haven't been letting much out about this project is because
1. I don't think many people care right now (0 comments on all posts, no e-mails, etc.)
2. I'll need to create a portion of this project before I feel it will have any resonance with the community. So I have something to show for my efforts, especially since it's a little ambitious what I'm planning.
3. School is going to greatly reduce the time I have to work on extra projects. For instance, last semester I had an average of 3-4 hours of homework a night, moreso near the end of the year. (Why can't teachers properly balance workloads throughout the year? Oh well, they can't be blamed for every missed deadline or delay.)
4. I like keeping all 0 readers in suspense.

On a more personal note, every day I like Microsoft less and less. Not for no reason either, I've been using their OS and software for over 18 years and only in the past 3-4 have I switched to Linux. (2+ years of NOT having M$ on my computers.)
It seems that they have stopped caring about quality of software, interoperability, performance (Vista anyone?), and most of all: flexability - customizability - integration.
Look at KDE, my desktop environment. I've customized it to suit my needs so I can spend hours coding, listening to music, browsing files on my computer without having to so much as move the mouse an inch. Why can't Microsoft have a KHotKeys application?

On another note, if you're looking for a nice iso / file / squashfs mounting app, I found a nice GUI kde-app you would find useful.
Since I have starcraft / warcraft / etc. games running on my linux pc, some need the cd in order to play. Having them mounted (easily) is a blessing, so newbies please check it out.

Back to work, For the Horde, etc.

Tuesday, July 14, 2009

Removing update-notifier in KDE system tray on startup (Kubuntu 8.10)

[ Summary ]

This post describes removing the system tray icon for update-notifier [-kde] so that user will not be reminded every login that they should upgrade to the next distribution.
This is useful if you don't want the green update notification appearing when it isn't useful to upgrade your distribution (and when no updates actually exist).
** In my case, upgrading to Jaunty breaks my 3D acceleration I get with the ATI catalyst drivers.

[ Method ]

The update-notifier-kde executable (binary) is located in /usr/bin. To remove the system tray icon without the trouble of the 'apt-get remove dependancy hell' (in my case it removed network-manager as well), the simplest solution is to rename the executable.

sudo mv /usr/bin/update-notifier-kde /usr/bin/_update-notifier-kde

Now you can login without being tricked into thinking there are updates. To reinstate the system tray icon, just rename it back to the original file name and reboot/restart the display manager.

If you want to have your pc check for updates without the update-notifier, you may want to place the apt-get update && apt-get upgrade commands in a cron job scheduled for every week.

I hope this little tutorial has helped reduce the frustration that some experience with linux & video drivers. It's been bothering me for weeks. I would rather spend the next 3 months in school not right-clicking and closing the notifier every class.

Tuesday, June 2, 2009

Amarok: id3 tags and me

If you're like me and (1) you have a large music collection and (2) you've copied data from an ipod off the harddrive, you've probably thought about renaming your music via the id3 tags.

For newbies, an id3 tag is part of the audio file that stores the title, artist, year, track #, genre, etc. Regardless of what the file is called, this data remains intact.
Now if you are familiar with an ipod, it stores mp3's in strange, 4 character names that make no readable sense.

I use (and swear by) GNU/Linux systems. AmaroK has done everything I've ever needed when it comes to audio especially when it comes to handling large collections.

Where is this leading to? I had over 60GB of audio that I copied from my ipod before I sold it for a superior Cowon machine. (D2+ anyone?)
I wanted all the music to be in the standard Artist - Title.ext format, but I can't rename all 60GB by hand. There used to be a python script I used before that would batch rename all my files to their id3 tags, but lost it after some reformatting, etc.
I've tried looking up other methods, id3ren is one of them, plus a python script someone posted on a forum. They worked very well for me, but I never actually realized amaroK had this functionality built in. It's not obvious at all!

So for those who use amaroK and want to convert the filenames to their id3 tag counterparts, here's the solution:

Select the mp3's you want to rename.

Right click, go to Manage Files -> Organize Files

It's flexable and easy, requiring no extra programs.
Being somewhat of an audiophile, I wish I could have known about this earlier.

Thanks to the folks at amaroK for showing me how.
Peon out.

Monday, April 13, 2009

Status Update 001

College exams are coming up, meaning we haven't had nearly enough time to work on the projects we want to. Don't expect any amazing updates for a couple months, although there is some news of interest.

I am currently working to advocate using a Gnu/Linux Operating System in my college, and am offering to produce a college-specific distribution for their use. Just what we need, another large project... But honestly, I'm really hoping that this will come to fruition. I'm only speaking for myself (the blogger) that I now find using Windows to be more of a chore than a Linux system. The freedom is worth the work.
I am involved in talks with the program coordinator who will be presenting a business case I developed to the cause of using Gnu/Linux as an optional OS for certain technology courses. Even if the idea falls through, it will expose people to another option. Anyway, I don't know when the case will be presented, but we will keep you updated.

Another mention goes towards our 'other' pet project. It's going to be a series of Java libraries under its own name for specific development of a seriously under-appreciated area of Java.
Currently the basic plans and backend have/are being designed. Plugins for a database as well as normal textfile saving are in the works. Firebird is the database being looked at right now, since MySQL may be going down the tubes with Sun's brilliant leadership. I'd prefer to go with a free-to-distribute multi-platform database (hence firebird) as these libraries are going to be multi-platform.
The libraries will be the backend themselves, but a front-end development suite is planned out to be released with the libraries. We're still debating releasing the front-end IDE as open-source or closed-source, but chances are it will be open-source once the licensing is figured out. Expect a GPL 2.0 with a couple additional requirements pertaining to its redistribution and authorship.

That's it for now. We'll keep hacking at this project, so stay tuned.

NuclearPeon and Co.

Saturday, February 28, 2009

PeonDevelopments WebBlog

PeonDevelopments is a small (and I mean very small) company that does mainly java-based programming.

While a Front-end to FFMPEG is planned for development, we are pre-occupied with a much larger and ambitious project.
Since it is in the beginning stages, not a lot can be said right now, but given time and effort it should be a rewarding project.

I'll keep you posted.