- 2020 1
- 2018 6
- 2017 2
- 2015 1
- 2014 2
- 2013 2
- 2012 5
- 2011 11
- 2010 25
- 2009 52
- 2008 34
- 2007 20
- 2006 25
- 2005 54
- 2004 123
2020
kdesrc-build updated for Gitlab Migration
This weekend the KDE Sysadmins completed the migration of KDE git modules to our Gitlab-based source code management stack as discussed for months now, and recently posted to kde-cvs-announce as a final reminder.
2018
Moved to Jekyll
Akademy retrospective
Going to Akademy
Happy to participate in a tradition I’ve admired from afar but never been able to do myself… until this year. My tickets are bought, my passport is issued, and I’m going to Akademy! Hope to see you all there!
Fancy status updating in kdesrc-build
New Interfaces for kdesrc-build
Debugging issues booting a PC in 2018
I figured out a solution to a hardware troubleshooting problem I’ve had going off and on for at least a couple of years. I feel like others might run across it and, not knowing anywhere better to note it, suppose I might as well dump it on my blog and hope search engines can make it available to those who need it.
Animated Plasma Wallpaper: Asciiquarium
Years ago, for KDE 3, I had ported a console “asciiquarium” to operate as a KDE screensaver, called “KDE asciiquarium“. By KDE 4.2, it was included as part of the kdeartwork module by default.
2017
KDE in 2017
It’s time for the end of 2017 KDE fundraiser, and so this is good a time as any during the year to take a step back and publish a retrospective on the work we’ve individually done in 2017.
kdesrc-build updates and tips
A few years back, I shifted kdesrc-build to a release model where it was to be used essentially straight from the git-master version. This was both beneficial from a time management perspective, and also reflected the ongoing reality of how it was actually being used, since most developers were using kdesrc-build directly from git by then to take advantage of ongoing updates to the sample KF5 configurations.
2015
The future of kdesrc-build packaging
The last official release of the kdesrc-build tool to build KDE was 1.15.1, nearly three years ago. For some perspective, this is when we were in the process of preparing KDE Software Compilation 4.9 for release, and nearly 2 years before the first technological preview of KDE Frameworks 5.
2014
Vim support for kdesrc-buildrc files
Debugging KF5 build failures
Those familiar with running development versions of KDE software are familiar with the idea of having to sometimes remove their whole development install directory and start all over
in order to resolve some types of build errors.
2013
Filtering out KDE Projects modules in kdesrc-build
So I implemented support last night for a way to filter out modules from a build from a module-set using the KDE Projects database.
JuK Supports Opus Codec (sort of)
2012
Review request: kdesrc-build login session script
One of the long-standing desirable improvements that I’ve wanted for kdesrc-build is to automatically make it easy to login to the newly-built-from-source desktop. In fact, this is item 5 on my current ROADMAP included with the kdesrc-build source.
kdesrc-build supports subversion 1.7
So the most recent major release of the Subversion source control software used for some KDE modules is version 1.7, released waaay back in October 2011.
KSharedDataCache debugging
I was approached the other day by an Amarok developer who was receiving a lot of debug output from KImageCache (which uses my KSharedDataCache). When the cache was nearly full he was starting to receive a lot of messages about being “Unable to free up memory for” each entry.
The future of kdesrc-build
As I hinted at in my recent post, it’s time for me to genuflect a bit on kdesrc-build “going forward”:
kdesrc-build 1.15
So I’ve released kdesrc-build 1.15 yesterday. There are lots of bugfixes and some minor features since 1.14.1. (I ended up skipping 1.14.2 despite some FIXED-IN: entries that claim otherwise).
2011
Vim tip: Finding differences without separate files
While debugging a failure in the kdesrc-build test suite after a fairly extensive series of refactorings, I ended up with an object hierarchy which was different from a different hierarchy… but different where?
Tracking down a library bug
So today I had noticed I had build failures in quite a few modules that were based on errors linking to libkipi, involving undefined references to KIPI::ImageInfoShared::~ImageInfoShared()
.
15 years of KDE
I’m almost late to the party, but then it’s never too late to commemorate something as notable as 15 years of development.
2 new kdesrc-build releases
Desktop Summit 2011
For what seems like the umpteenth year in a row, events have conspired to prevent my attending Desktop Summit/Akademy. :( However, I did want to pass on my well-wishes for a successful summit, and hopefully some constructive interaction with our GNOME counterparts and other guests.
Good job Aaron
243 votes. 61 duplicated bugs (as of this post). 21 backtraces submitted as attachments. 5 months of troubleshooting. 1 detailed Valgrind log. And now, Aaron Seigo has figured out and fixed Bug 258706, a crash in Plasma related to the system tray (often but not always with Amarok).
Reminder of 4.7 soft feature freeze
Just as a heads-up for KDE developers, the current release plan for KDE SC 4.7 has Thursday 28 April as the deadline to have desired features added to the 4.7 Feature Plan, otherwise they have to wait for the next release.
Perl hijinks
So I’ve been trying to modularize my kdesrc-build Perl script (i.e. actually split it into logical objects/modules) and yet still retain it all into one script, the idea being to get the logic into a more understandable state where possible and overall make the codebase less brittle.
kdesrc-build 1.13
I’m too tired to go too deep into the changes in the kdesrc-build 1.13 release, but the largest is that module data from projects.kde.org can now be used to build git modules.
Library dependencies
I noticed someone encountered an issue with trying to find out what library is introducing dependencies into their program, and didn’t immediately think of a tool I’d written to do that, so obviously I am not “marketing” effectively. ;)
May you live in interesting times….
So, given the accelerating rate of KDE project migration to git.kde.org, I felt it was prudent to finally make a kdesrc-build release, for those who don’t follow kdesrc-build development in trunk.
2010
Everyone is moving to git.kde.org
Except me that is… but only due to lack of rule-writing time.
Things
I haven’t updated in awhile. This isn’t going to be much better, but it’s something.
kdesrc-build update for Git migration
So this morning kde-core-devel was emailed to notify that a few projects that used to be hosted in kdesupport have moved to git.kde.org.
Benoît Mandelbrot
So it seems that Benoît Mandelbrot has died today.
Speed up!
So. Matthias Fuchs of Speeding up KGet with Callgrind fame pointed out to me on IRC the other day that KIconLoader seemed to still be using a lot of time to load icon image data, even when the icon should have already been cached.
Big update collection
Unfortunately I haven’t made any blog updates in awhile. I’ve been very busy between work and school (and I will likely spend this weekend working on a 20 page project that I’ve written 0 pages for ;). That doesn’t mean I have nothing to report though…
Timing belts
So… the engine on my Chevrolet Aveo abruptly stopped working today. Always a nice experience!
Another transition for kdesvn-build
So if you have been looking at Planet KDE or the kde-scm-interest mailing list recently you will have noticed that some of our intrepid sysadmins have started setup the systems that will be needed to migrate the KDE source code to Git. Konversation and Amarok have already switched.
Loading an icon with KIconLoader
Given that I’ve recently been mucking about in the internals of KIconLoader and gaining more knowledge about its inner workings, I’ve learned a bit about how the icon loading mechanisms work in the KDE platform. I thought it would make for an interesting entry so here I go:
Implementing a shared cache: Part 4
Implementing a shared cache: Part 3
If trunk is broken for you…
It might be because I completed the port of KIconLoader to use the KSharedDataCache class I recently introduced.
Today I learned…
… that the ~QX11PixmapData(): QPixmap objects must be destroyed before the QApplication object, otherwise the native pixmap object will be leaked.
warning most KDE applications display when exiting is actually false.
Implementing a shared cache: Part 2
In my last post, I gave some background on what a shared-memory cache is, and how KDE already uses one (KPixmapCache
) to save memory and make the desktop more efficient. I also noted how the current implementation leaves some things to be desired, and hinted at a new implementation I was working on.
Implementing a shared cache: Part 1
So awhile ago I mentioned that I was trying to add a new shared-memory cache for the next version of the KDE platform. It’s almost done now, and has been submitted for review (both old-skool on kde-core-devel, and all Web 2.0-style on our review board).
API Docs
I had previously added a mirror of the kdelibs API documentation, with some exceptions:
KSharedDataCache
So in my last post I had mentioned some of the issues that have been encountered with KPixmapCache, and that I was working on a separate implementation.
Bug of Legend
So. Those of you who notice the things I post will presumably notice I haven’t blogged as much recently. Essentially it’s because I have less time for development between school and work (I’m on shore duty so I don’t deploy, but I’m in charge of a division so my hours are still substantial).
Window button ordering
Sometimes you can’t please everybody. The blog article I linked to argues that the window button ordering change in the alpha releases of the next Ubuntu should be reverted back.
ImageMagick Fun
The “fun” in the title should be read in your most sarcastic tone of voice… Anyways, one of my professors mailed us a PDF of a scanned document to read (and print out) for the next class. Being that is was scanned in (by what appeared to be the professor literally holding it above a scanner) there was a lot of excess black in the picture.
Retro tunes with Phonon
So, in The Beginning, when I was just a young padawan on the Internet, I had been let into a glorious secret: Emulation (not of IBM System/360 machines, but of more important things like the Super NES). Some branching from there led me to zophar.net, a popular emulation site, and their message boards, and also left me with a fascination with emulation.
Well, George…
You don’t have to use KDE 4. (And I can’t believe I’m actually having to make that part clear) Really people should use whatever makes them most comfortable, productive, fits with their needs better, etc. Just use what you want.
Trolling
So every so often I like to take a look at what our siblings over at GNOME are up to by reading Planet GNOME. I do it manually because I removed that feed from Akregator quite awhile ago, and a couple of the stories there seem to confirm my choice (although it’s at least much better than when I had to finally give up and stop reading it).
kdesvn-build git bug possibly fixed?
So if you’ve used kdesvn-build to build some of the modules that are hosted on Gitorious then you are probably familiar with an error that always comes up when doing the initial checkout. This error is so famous that every “how to build using kdesvn-build” guide I’ve seen over the past couple of months have mentioned that the clone step for qt-copy would need to be done manually.
It’s nice to get some dedicated coding time
Knocked out a few minor kdesvn-build bugs in my free time today (even if I am crazy tired now, maybe they won’t be “bugfixes” when I wake up this morning!)
2009
So long 2009
So 2009 is expiring where I live.
kdesvn-build 1.11
kdesvn-build 1.11 has been released. (Update 2009-12-26: Fixed broken link, thanks deabru)
Documentation hacking
Maintaining the documentation for a project is a necessary, but often thankless task.
“Decontamination efforts continue at the Pyne residence…”
I don’t normally post about noteworthy disasters in diaper changing because, well, duh. Babies and toddlers in diapers will result in messes.
kdesvn-build tip o’ the day
So I woke up this morning to notice that my kdesvn-build --refresh-build
run from last night had a hiccup somewhere:
GNOME + Slashdot
So our brothers/sisters at the GNOME Project managed to hit the front page of Slashdot.
kdesvn-build konversation
Now Konversation has also switched to git.
The November update
So it’s been a busy month for me:
MALLOC_CHECK_ crashes
If you’re a KDE developer using a recent version of glibc (since 2.10), you may have come across strange crashes complaining about memory corruption when running development versions of KDE (especially Okular, KTorrent, KNotify, and other KDE applications using threading).
kdesvn-build 1.10
Another season, another kdesvn-build release.
4.4 Feature Freeze
A reminder was posted to kde-core-devel today, which I’ll pass along via Planet KDE:
Professional software development
Sadly the title doesn’t mean I’ve gotten a job developing software. No, in this case I’ve finally bitten the bullet and joined one of the two major software developer professional organizations here in the US. In my case, the IEEE Computer Society. I suppose I may join the ACM later though.
ELF Library Viewer Again
As usual, no (coding) progress happens for me unless something else is causing me problems on my system. In this case, I had the opportunity to need to use my library dependency viewer.
“When it rains, it pours”
So last month my daughter died. My grandfather has been in the hospital for a week but his condition has deteriorated and now he’s not expected to live longer than a day or two. :(
Car batteries
I now hate side-post car batteries. My wife’s car battery died today and since she has appointments to take Ian to and I have work to go to I needed it fixed today. Since it’s just a car battery I opted to do it myself.
Tooling around
Some minor things:
Keep moving
So, I’ve been trying to keep working and moving and generally being productive. It helps me feel a bit better and besides, it’s easier doing something than to do nothing.
Even in death, life goes on
Certain is it that there is no kind of affection so purely angelic as of a father to a daughter. In love to our wives there is desire; to our sons, ambition; but to our daughters there is something which there are no words to express. ~Joseph Addison
Disaster
This is only going to be a short note but I just wanted to announce that our baby girl born almost 5 months ago passed away yesterday, Aug 25.
Status update
Since I haven’t blogged in awhile I thought I’d give an update as to what I’ve been doing in the past month or so:
Family Reunion results
I mentioned last entry that I would come back with photos. I also mentioned I had suffered a flat tire. I converted 9 photos that didn’t disclose tons of personally identifiable information and put them up, and in case you’re not in the mood for looking at photos I even added a “Read More” thingy for what I think is the first time ever…
Lame
So I’m on the way to my family reunion in west Pennsylvania. And while traveling through North Carolina my front right tire goes from properly inflated to almost completely flat in about 2 seconds from what I can tell. Luckily I was passing an offramp when it happened so I was able to exit the highway immediately. Unfortunately it was at night when it happened so I get to find a tire place at some point tomorrow.
Interesting news on Mono
Hmm, found something which is interesting.
I feel so bad for Andy Roddick
When I wasn’t working on coding or checking out what’s been going on at the Gran Canaria Desktop Summit this past two weeks, I’ve been spending my free time keeping track of this year’s Wimbledon tennis championship in London.
A few good bug squadders
From IRC, a quote:
BBIAB
If I’m incommunicado over the next few days, it is because I’m in the process of moving to my next duty station, which will take place over the next couple of days. Everything is getting packed up tomorrow and shipped out Tuesday. Hopefully I will receive it Thursday at the new place.
New playing mechanic for Nintendo games
So I guess that some upcoming Nintendo games will have the ability to go on auto-pilot if you’re facing difficult parts of levels, and have the game essentially play itself.
Oh fun
So after my latest X.org upgrade I forgot to recompile the xf86-input-evdev module as well. So of course when I ran startx again, my shiny KDE desktop came straight up… and I couldn’t move the mouse or use the keyboard. Drat.
Fonts
So I was reading through programming.reddit.com yesterday when I happened upon an article detailing various available free fonts.
Attention kdesvn-build users
If you’ve been using kdesvn-build to build qt-copy, I recommend updating to the Subversion /trunk version, or using the 1.9.1 release. This is to adapt to a recent change to the qt-copy configure script, which causes an infinite loop (with subsequent disk fillup thanks to output logging). 1.9.1 will not work with older versions of qt-copy however.
Big news
You may have noticed that I was in port longer than normal between deployments. The reason is that my sea tour is over.
kdesvn-build 1.9
After weeks and weeks of promising to release kdesvn-build “soon”, I managed to release kdesvn-build 1.9 today. It’s got quite a few useful bugfixes at least, and I know dfaure likes the unit test feature. Plus if you have megabytes upon megabytes of unused log directories you’ll want to grab this release.
XFS has got to go
So the other day I had suffered probably the third dataloss in a year due to the XFS filesystem in use on my desktop + power loss.
Stupid heat pumps
So our boat is in refit right now, and even though the workload seems to be reduced in theory, it’s been more stressful than ever. I can at least be thankful that I’m no longer in Engineering Department, since it still seems like Engineering division officers are forced to spend long hours at work all the time due to some new and exciting broken part.
How many log directories do you have?
The question in the title pertains if you use kdesvn-build. kdesvn-build creates a separate log directory for every single run it makes. If you’ve done a lot of kdesvn-build runs and you’ve never manually cleaned out your log directory you’ve probably got quite a few hundreds of log bundles.
2.1
Although I missed the birth of my son, I managed to be here for the birth of my daughter.
some things
Well I went and ported kfile_torrent to be a Strigi analyzer so that the .torrent info metadata is available in KDE 4 now. Unfortunately although KFileMetaInfo has apparently been ported to use Strigi no metadata shows up for me in Dolphin. Maybe it will when I enable Nepomuk perhaps, kind of unfortunate that a feature more or less from KDE 2 is still unavailable though :-/
Documentation KIOSlaves
KDE has long had a nice collection of useful kioslaves for viewing installed documentation, including viewers for manpages and info pages (used by GNU software).
CMake prefix path
I remembered reading the discussion on kde-buildsystem about CMake 2.6’s CMAKE_PREFIX_PATH environment variable. I just forgot to add it to kdesvn-build.
Yay, it’s been so long since an uninformed C++ rant.
You may start by reading The Tailor, off of Planet GNOME.
More programming tips
In the spirit of my series of programming tips articles I thought I would go ahead and throw out some more:
kdesvn-build 1.8
.desktop file security
As most of you may have seen by now, foobar had made a post 10 days ago called “How to write a Linux virus in 5 easy steps.” That blog post was later covered on Slashdot and LWN, and describes the lack of security around .desktop launcher files. These .desktop files do lots of things, but one of their most prominent uses is in program launching.
Nuclear subs collide
I guess Slashdot has finally picked up on the collision between a British and French SSBN. Since submarining is my Real Job ™ I figured I’d try to disspell some of the inaccuracies I saw among the Slashdot comments.
Google Chrome
World of Goo… for Linux
It seems like the guys at 2D Boy, makers of World of Goo, have ported the game to Linux.
The RANDU pseudo-random number generator
On my homepage I have for awhile mentioned that I wanted to get my symposium project posted someday.
Could this be the dumbest Slashdot story ever?
Bold claim, I know. But according to this Slashdot story, Microsoft has a broken design for some Vista-specific tool because they allow XP Media Center users to download it.
Another programming tidbit
Quick tips
I’ve rounded up some useful tips, none of which are really important enough to warrant a post just by themselves. So without further ado…
web pages
I’ve noticed that many web pages will set a foreground color but assume the background is white. Or (more common) they will set a background color and assume the text is black.
Things
So Aaron had a post up about building a community. A couple of the major points he is driving is to make it easy to work on the code, and to make it easy to contribute. In accordance with those principles I have been continuing to work on kdesvn-build as I feel that being able to quickly get into a working KDE development environment can open code review and contribution substantially.
2008
Happy new year 2009
I’m sure there’s already a million “Happy New Year” type posts up but I figured I’d throw in my two cents as well (since I’m actually here for this New Year’s Day).
Back again part 5
So I returned a few days ago from our latest deployment. As far as SSBN patrols go it was pretty successful.
Happy Halloween
I’m not back yet but I figured I’d leave a message to be posted while I was gone. Don’t forget that feature freeze is almost up! (At least according to the release schedule as of this time). If you have stuff to get in do so, just try and make sure it’s well-baked by now.
Here I go again
So by the time you read this I’ll be deployed again.
kdesvn-build 1.7.1
OK, so that last release had a slight bug that basically caused it to not work at all for new modules (i.e. ones you’d svn checkout instead of svn update). And then when I fixed one bug it turned out I unmasked a bug that kept qt-copy from configuring. All that then helped me find an unrelated bug too so a day later you get a kdesvn-build with 3 bugfixes.
Whooooo
The Pittsburgh Steelers finally beat the Jacksonville Jaguars for the first time in like 3 years. And here I was worried about this season but our team is managing to find ways to win (well, for the most part).
kdesvn-build 1.7
kdesvn-build 1.7 is out. The list of features/bugfixes is fairly long and I don’t feel like re-massaging it. I think it warrants you grabbing it if you’re already using it though.
Neat KWin trick
I’m not sure when this changed in KDE 4 but if you move your mouse to the upper-left corner and keep trying to “push” you’ll get the “exposé” effect without having to use the keyboard shortcut, and then click on the window you want. Handy alternative to Alt-Tab.
Debate time
Why are you taking notes on the debate? I thought you already mailed in your vote.
PlayStation 3
My wife bought me a PS3 as an early Christmas present (and so I could possibly bring it on the boat for the next underway).
Adventures
So the recent Hurricane Hanna that passed by forced our ship to get underway last week and I got to spend almost a week deployed. Yay. I’m back for now but we’ve been super-busy since then trying to make up for lost time.
kdesvn-build 1.7 improvements
There’s enough changes in the upcoming kdesvn-build release to bump the version to 1.7 instead of another 1.6.x release. Here’s a sampling:
Olympics and other fun stuff
So I was excited to see my people behind KDE interview get posted the other day, especially since the comments were much more positive than I was expecting. blauzahl did a good job on the interview, I’d like to thank her and Danny Allen for taking the time to work on it. It was hard for me just to handle the Q&A session so I don’t want to think of how much work they put in!
Akademy night
I just wanted to say hi to everyone going to Akademy. I once again cannot go this year but I figured to compensate I’d regale you with a story from my Officer Candidate School days.
Perl fun
So in the course of developing the next code feature I plan to add to kdesvn-build (nothing major, just adding a persistent data store) I came across what I consider an oddity:
Styes suck
So for the past couple of days I’ve noticed a swelling in my right eyelid. I figured it was merely a pimple but I woke up this morning and it had grown quite a bit.
Go me
So I just returned from a trip to Washington, D.C.
kdesvn-build 1.6.2
kdesvn-build 1.6.1 had some issues in the sample configuration regarding the build order of phonon and kdesupport so I’ve taken that fix and a few others and have released kdesvn-build 1.6.2. It’s also the first kdesvn-build that I’ve digitally signed. I’ve had a GPG key for awhile now but I’ve not put the effort into signing the code because it didn’t seem necessary. Someday I’ll actually get to go to Akademy and thereby get my key signed but until then at least there’s a bit more trust you can associate with the code.
Gamers today
I was reading news on some video gaming sites today, and these sites typically have places for their readers to leave comments.
kdesvn-build 1.6.1
kdesvn-build 1.6.1 has been released. It’s basically a compilation of bugfixes but it also makes it easier to build Phonon 4.2 instead of Qt’s or kdesupport’s Phonon as well.
It’s the end of the world as we know it?
On Slashdot (don’t run!), there is an article about whether or not a particle accelerator being built called the Large Hadron Collider (LHC) could actually generate particles that “might destroy the world”.
Improved crossfadiness
So I’ve made a few more changes to the crossfading code in JuK. This should hopefully fix crossfading issues completely for people. However, life is weird sometimes. phonon-gst went from being completely unusable (it would crash with JuK) to being the best option right now (perfect crossfading, at least here). phonon-xine, due to the way crossfading is now implemented sounds slightly crackly sometimes while playing music back. Even with the new crossfading routine, incoming music starts out at a high volume before fading in, although it does sound smoother.
Hey, check it out
Apparently someone has decided that the best use of their advertising money would be to purchase ads on the term “KDE”. Ads that have nothing to do with KDE, but everything to do with programming with Gtk/WebKit…
Programming tips
So I finally fixed a bug which has been causing some people a bit of grief, bug 160284. This bug involves crashes due to a couple of different things:
$200 computers
So, I went down to visit my sister the other day. When I called to ask if they were going to be there they informed me that it was a good thing I called. Her grandmother had been using an old computer for her to use for school and email, which crapped the bucket.
Improved crossfading
I’ve been improving JuK a lot over the past week or so trying to get it into better shape for KDE 4.1 (and 4.0.5).
Usability in interfaces
So on Planet KDE there is a bit of discussion regarding usability, discussion brought on by an article on a programming weblog.
Amazon MP3
So I’m a pretty big fan of the Amazon MP3 Music Store. It has had very few tracks which I wanted to grab which weren’t available. It’s cheaper than the iTunes Music Store as well. I realize this is the case only because the music labels are tired of getting their terms dictated to them by Apple so they decided to open up the competition and make the deal more enticing. But that works in my favor so that’s awesome. Only thing I’m afraid of is that that music labels will try to do something dumb and try to start adding DRM copy protection to the music again (which breaks the music on my players). But anyways, back to my original point: Amazon’s MP3s even come with the cover art built-in to the track.
How infuriating
So Mario Kart Wii came out the other day. Given that every Mario Kart ever has been at least a great game, we picked it up immediately.
Victory Again
So before I went underway our car had developed a trouble causing the Check Engine light to come in continuously. No abnormal sounds but being nuclear-trained has taught me not to live with “locked-in” alarms or warnings. I wasn’t able to troubleshoot it in the limited time I had before deploying so I asked my wife to make sure it got investigated when she had free time.
Hardy Heron + Sound
I think I blogged earlier about the Dell Inspiron laptop I bought with Ubuntu Linux pre-installed. I managed to use it sparingly underway (had I known beforehand how little free time I would have I wouldn’t have bothered but that’s a different story). It was cool showing some of the other officers the programs where I’m listed in the credits though.
RTP, the official TLA for “Return to Port”
So now I’m back in town again, after a fairly harrowing (for me) patrol. Apparently being chem-radcon officer is a lot of work for inspection. The final grade is apparently classified so I won’t remain on the topic for too long, but I didn’t do too bad at least, which is all I can do really.
Going away again
At some point soon I’ll be away again. So, I’ve made a new release of kdesvn-build so that people not tracking the trunk version of it can still use the nifty asynchronous download/build feature. (Sorry if the output still seems buggier, you can disable using –no-async if you don’t like it).
KDE 4.0(.0)
So at long last the first release in the KDE 4 series, KDE 4.0 has been released.
2007
Victory is mine
So I bought the game Galactic Civilizations II a long time ago. I was able to play it on my wife’s laptop and I figured it had to be pretty easy to get at least the major parts of the game running in Wine since it doesn’t have the copy protection code which normally breaks games nowadays, and it didn’t look like it was using any fancy DirectX features.
Qualified in submarines
So yesterday I completed my submarine officer qualification board. Today I had my dolphins pinned on me by my wife. It’s different having them on, I’m still not really sure what to make of it. For better or for worse you’re looked at differently by submariners if you are qualified in submarines. Unlike many other badges and awards you may encounter this one is still generally awarded only to those who deserve it and have completed all the applicable requirements.
I think I’m allergic to footballs
So I went to a football game today with officers from my ship. Throwing the football before the game, I somehow managed to injure the ring finger on my left hand on a catch. I kept it iced during the game and was able to flex it and everything but it never quite stopped swelling and it eventually bruised really badly.
kio_perldoc
kio_perldoc: I’ll keep it short:
More gifts
All that work I was doing to add parallel updating and building to kdesvn-build gave me a great appreciation for one thing that Perl does right: copious documentation, even if you need to use a special program to view it (perldoc, which man-page-ifies it).
kdesvn-build speed improvements (and some KMail)
I’ve started on work to implement a feature requested in bug 109619. Namely, to allow kdesvn-build to start the build process as soon as the first module has been updated from subversion and then to run the two updates in parallel as much as possible.
The USS Hampton
My scanner works
Spent a lot of time over the past two days scanning in some old photos that my Grandma has left me and trying to touch some of them up. I’m not good at photo editing but ye olde “Auto Adjust” feature has made a lot of these pictures look better. For a few of them they looked 100% better just from being scanned (xsane also has an auto-adjust feature).
ELF Library dependency viewer
Update 2009-10-10: Updated link to software
Back again (with a book review too)
Back from my last patrol. Now I’m close to being fully qualified. That will be nice to finally achieve.
Wheee
I’ll be gone for some weeks. (Actually I’ve already been gone by the time you read this :)
JuK love
As a parting gift to the KDE 3.5 series, I’ve gone and finally fixed a few annoying bugs in JuK. This includes bug 116181, which prevented the internet image search feature from working for most people (and then prevented it from working for everyone), bug 126032, which caused the last item in the Play Queue to play twice before shifting back to normal playback, and bug 131238, which resulted in right-clicks in the History playlist showing the wrong column names.
I can’t think of a good title
But two relatively big events happened over the past week. This past Friday I was promoted to Lieutenant, Junior Grade. And today I finally qualified as Engineering Officer of the Watch and Engineering Duty Officer (on the same board no less). So now I just have like a million more qualifications until I get qualifed as a Submarine Warfare Officer.
kdesvn-build 1.4
I’ve released kdesvn-build 1.4 just now. It includes a couple of minor bugfixes, the default options and modules have been revised, and now kdesvn-build supports using the KDE FTP Subversion nightly snapshots when checking out trunk KDE modules. (Thanks to dirk for fixing the FTP mirror script to support kdesvn-build).
QMail
In the past couple of hours I’ve managed to fix 3 different screwups I made with qmail. Because having to deal with qmail (or rather, MTAs in general) always gets me upset, I figured I’d document what I’ve done for posterity. Sorry to the Planet KDE readers, this is longer than I thought it would be.
Wiki wiki wiki
So since I haven’t been very useful coding for KDE recently I figured I could at least help get the new KDE Developer Wiki in even better shape. It’s really nice to have it in Wiki format I think. I just started on transferring the stuff on the HOWTOs and FAQs part of the old developer site and cleaned up a few spelling errors and grammar flaws on the way. Since it’s a Wiki if I notice such problems in the future it won’t mean a 7-step process to fix it, I can fix it right from the page instead.
It’s a good thing I exist
Because I wanted to install clee’s updated SPC player plugin for gstreamer, I went and created a couple of ebuilds for Gentoo Linux.
Migrating user data
So last time I mentioned that I bought a new computer and moved my user and system data over, and that I would mention some of the steps I took. It was actually much easier than I thought it would be.
Goodbye broadway
The title isn’t referring to me visiting New York. Rather, it’s referring to my old computer, which I have replaced as my main computer/server. The new computer serves a few important uses for me that the old one did not:
I’m back
So I’m finally back from my first patrol. The patrol itself went pretty well, we did a successful test launch and I learned a crap load about the engineering systems (but I still have oh so much to learn). There have been quite a few changes in things while I was gone as well.
2006
Another infrequent commit
So I made a minor improvement to JuK yesterday (in the 3.5 branch, I’m still seeing how it applies to KDE 4). Basically the “Add to JuK Collection” action that is added to Konqueror when selecting music files didn’t work. And, not only did it not work, but if you selected 20 different files and tried to add them to JuK, your taskbar would fill up with 20 different buttons as DCOP was run 20 times simultaneously trying to add the files at once.
Update update
This has been a really busy two weeks for me. One thing I’ve noticed is that all through the Navy training pipeline, the message has always been, “Oh, it’ll be better at the next command.” But the only time that was true was during OCS (i.e. boot camp).
I lost the power
I encountered perhaps the weirdest issues I’ve had with electrical service in my life yesterday.
kdesvn-build update
Hi all. Just wanted to let you all know that as of revision 593817, kdesvn-build supports using the progress output of CMake 2.4.3, just like it used to do with unsermake.
KDE shown on the new NBC show Heroes
Someone who actually watches TV noticed that our favorite desktop environment, KDE, was featured on the new NBC show, Heroes.
on friendship
Peter Rockai has written a great piece about friendship. It’s almost poetic, and it’s definitely something that would make a great “email-this-to-all-your-friends” letter if I were that kind of schmuck. ;-)
Back in Georgia
I’m now back in Georgia. Now I get to have a week or so off before I report to my boat, which will hopefully be enough time to get everything unpacked and get my computer upgraded, and my email checked, etc.
Tennis
I went to go see the U.S. Open on Friday night to catch Lindsay Davenport vs. Katarina Srebotnik and Marat Safin vs. David Nalbandian. Unfortunately both games were rained out. They made up the games this morning and it turns out that they were both awesome. They both went to the maximum number of sets, and finished in a tiebreak. So I’m rather bummed to miss it.
Setting up
I’m still in the Submarine Officer Basic Course, but my wife has setup things at my home at my duty station so my computer is finally on the Internet again, which means I can continue making periodic updates to my weblog.
Leaving soon
First off let me wish you a Happy Independence Day. Obviously I’m a day late mentioning this, but that’s because I was busy doing more important things, like celebrating. :)
Preparing to move
So, I’ve just completed the Prototype school. Now I get to go to Connecticut and go through Sub School, so I’m prepping to move.
The May/June roundup
Haven’t posted in awhile, figured I’d go ahead and update you all on what’s going on.
I’m qualified
Today I finally qualified as Engineering Officer of the Watch. This is awesome if only because I’ll be spending a lot less time at Prototype. Graduation won’t happen any quicker though, it’s still at the end of June timeframe.
Finally passed Final Watch Board
I finally passed Final Watch Board. You may remember me talking about getting psyched up for it 5 weeks ago… and then a week ago, and then the boat broke. :-(
Of course someone would complain about Phonon. :)
Sweet, the flamewar has started. :) Christian Schaller, gstreamer-developer extraordinaire has mentioned that he thinks Phonon is a bad idea for KDE. (For those not in the know, Phonon will be a multimedia layer for KDE 4 designed to be independant of the actual audio playing code).
abakus
So today I released a new version of Abakus (the simple useful KDE calculator). Basically we show the more important part of long answers by default, and abakus supports using the correct decimal separator according to the KDE locale settings.
Qualified yet?
So. Prototype has been going fairly well. I’ve been doing good so far on my casualty watches, although the harder 3rd drill set casualties are on the way for my next two watches.
Casualty
I stood my first casualty watch today. (That is, a watch where the staff will run drills on you to see how your react and perform while recovering the plant).
2006/Mar/25
Man, it’s a lot easier to pick blog titles when you simply use the date of the entry. :-)
This C++ criticism is perplexing.
Found over at Planet GNOME a criticism of C++ by Callum McKenzie. Now, Callum is always on top of his game, but his argument sounds suspiciously like, “Boy I wish C++ didn’t have this feature.”
Shift works starts today
So I start on the second phase of my Nuclear Prototype schooling today. The first phase was similar to Nuclear Power School in that there were a lot of lectures, even though it wasn’t the same classroom atmosphere, we still had a schedule we had to follow for the most part.
Bad calls in football games.
I was surprised to see so much hoopla about the recent Super Bowl on a site mostly familiar to those interested in computing.
kdesvn-build 1.0
So, another month, another kdesvn-build release, right?
A game for the ages
I was so stoked to watch the Pittsburgh Steelers defeat the Indianapolis Colts (in one of the most shocking upsets in years) that I decided to take care of an annoyance that the various sites that cover football have caused me.
Whew
The first week of my next school is about to conclude tomorrow. And it’s been a long week…
2005
Comprehensive Exam Results
Well, the Comprehensive Exam for Nuclear Power School was a success.
Comprehensive Exam
Well, it’s finally here. I take the Comprehensive Examination for Nuclear Power School tomorrow. Pretty soon I’ll finally be done with this place. :-)
Tale of a computer bug
I finally fixed a bug that has been pestering me for literally months. It is bug 117541. The story of how I finally tracked down the cause may be interesting, and should certainly be a cautionary tale for C++ programmers. Allow me to relate the story. (Less technically inclined readers: I will try to make it understandable, but this is a bit dry)
It’s the little things
I realized that even after all these years of having one web prescence or another, that I don’t have a page that people can look at and say, “Oh, that’s his email address”. I’ve rectified that, which should be especially useful for my family members who read this and share my propensity for not remembering to record important email addresses. ;-)
Grab bag 2005
Did well on the last test (which was the last non-final exam). I actually scored above my average, which is nice since my study hours have been slowly decreasing while the difficulty has been ramping up, so I haven’t scored above my average for about 5 straight tests. Although I haven’t been doing poorly either.
Monthly Update (Oct 2005)
In short: School is boring, but I’m still doing well.
If practice makes perfect, I may yet be the best blogger ever.
I’m just responding to a few posts I saw on Planet KDE.
amarok Context Menus
Seb Ruiz had a question about whether unusable features should be removed from context menus or grayed out.
JuK 2.3’s Cover Manager
Since there’s a documentation freeze (and it’s not like I’d, uh, get around to doing a great job updating them anyways. :-( ), I figured the next best thing I could do would be to explain somewhere what the deal is with the cover management code for the JuK release that will be part of KDE 3.5.
JuK and amaroK
Aaron Seigo recently mentioned JuK as an example of why it is useful to have powerful application development frameworks in order to seed great applications.
If you want something done right…
“If you want something done right, you have to do it yourself.” Re-discovered that today. The problem is that I’m no good at dry cleaning.
Wow, protest about SCons.
Asciiquarium Redux
Wow, I didn’t think it had really been two weeks since I last posted. I used to be putting up some new post every day.
ASCII Art Aquarium
canllaith discovered a very amusing program:
This is depressing
Reading about the disaster in New Orleans has been incredibly depressing. As bad as four different hurricanes were last year, this one seems to easily take the cake. It’s as if New Orleans was simply turned all at once into a lake.
Donuts again
2005 August 24
The other day I found my old N64 and hooked it up and started playing Super Mario 64 again for the first time in awhile. I love this game if only because it proves that a game can be fun without necessarily having to be violent or mature-themed. I suppose the recent Game Cube releases from Nintendo haven’t helped that impression any though, especially the quite bad Star Fox Assault. I couldn’t even make it past the first level of that game before getting sick of the characters with the pre-pubescent voices.
2 for 1 update special
As indicated by the title, I actually have two things to mention this time. Shocking, no?
Mmmmm, donut
Abakus again
Those who have kept track of the evolution of abakus will have noticed that a lot of the improvements to abakus recently had first appeared in Ariya Hidayat’s SpeedCrunch. The last release of abakus integrated the high-precision math routines. And, now that I got a spare day today to work on it, the next release of abakus will also have the nifty syntax-highlighting input feature found in SpeedCrunch 0.6-beta1.
KDE 4 moved to /trunk
Big news for KDE developers: KDE 4 is nowgoing to be in /trunk. Update: I should have read the email better. As of this writing, no modules have actually be moved to trunk. Although the branch has already been created. Or in other words, /trunk isn’t KDE 4 quiet yet. Sorry for the confusion. Anways, KDE 4 will be in mainline development soon, with the upcoming KDE 3.5 now in a branch directory. The schedule seems to be still a bit undecided for 3.5, but now is the time to get your applications ported to KDE 4. ;-)
Alien Hominid
Been playing Alien Hominid for the Gamecube today. This has to be one of the funniest and just overall bestest games I’ve played in a while. Although I still stink at side scrolling shooters. :-(
Portability
So I spent some time over this past weekend trying to make sure that kdesvn-build works on FreeBSD instead of just working on Linux. Someone at #kde-devel was gracious enough to give me access to a FreeBSD system for testing purposes.
Wiki for kdesvn-build
I’ve setup a page for kdesvn-build on the KDE Wiki. So to all kdesvn-build users, if you could stop by the kdesvn-build Wiki and see if you can’t update it with a few Frequently Asked Questions you think are missing, or perhaps an advanced usage tip, I’d really appreciate it. :-)
A Shame
I can’t really think of much to add to the news about what happened in London, other than to say it makes me feel very badly about what happened, and the state of the world today.
Have a good weekend.
I’m going to be heading down to visit some family over this weekend since I get another day (Monday) off. It will be the last extended weekend in awhile. :-(
Busy busy busy
Last week I started my next school for my training to be a submarine officer. It has been quite hectic, I generally don’t really have time to do much once I get home since I have to do the normal stuff like eat, take a shower, maybe check my email, and then whoops, time for bed. The hours for this school are incredibly long. Although one nice thing is that they generally don’t try to beat the unimportant stuff into our heads. One student asked a question during the explanation of a certain type of equation solving method, and the instructor explained about alternate methods, but then added, “Don’t worry about it though, you won’t need it.”
Other C++ tidbits
Recently there have been posts about C++ on Planet KDE, so I just thought I’d chip in.
Advanced parameter substitution with bash
arghhh
Alexander Neundorf found yet another flawed, inaccurate C/C++ comparo. I’d add comments to the blog entry, but I don’t feel like looking up my user name, and this also satisfies my own blog quota for the week. =D
I’m back (online)
I’m finally back on the intarweb. It’s kind of ironic. I’ve been in my new location for a full week. I *just* got my things moved in here yesterday, and the cable guys finally got the Internet to work after two trips over here.
Expect downtime
I will be moving things to Charleston starting tomorrow, since the movers will be here in two days. I will be taking my computer with me.
I Love Mail
I was feeling a bit depressed earlier because 14:00 had come around and I still didn’t get any packages. So my wife and I went out for a jog. We came back, no note on the door. So we went out to buy some groceries.
Great week
First off, Nintendo has announced their next system. Which is going to be, finally, backward compatible. So Prince or Persia won’t be obsolete as soon as I plug it in!. ;-)
Getting back into coding
It’s weird. All said and done I must have made at least 8 separate commits in the past 24 hours. And I’ve done a lot of work in the past couple of days as well, which really is nice.
wheels++
And I’m not saying this just because he’s the author of (most of) the best Free music management software available.
Charleston, and stuff
I’ve been cooped up here in Charleston for a few days now. It’s kind of annoying. I can’t go home since I’ve checked in, but apparently the Navy has no transient housing in Charleston, so I have to stay at a hotel. The gov’t will reimburse me, but it’s boring as all hell here. I’m hoping to get to talk to the officer in charge of students checking in who haven’t classed up yet and see if I can return to Jacksonville on phone muster, since all I’m going to be doing here is (essentially) showing up at 8:30, saying Hi, and leaving again.
Sweetness
I guess that since kdesvn-build is now one of about two scripts out there that can build KDE from Subversion, that there is more interest in using it.
tada
To celebrate KDE’s migration from CVS to Subversion, I have ported kdecvs-build to kdesvn-build. The biggest change is, of course, the fact that it pulls source using svn instead of cvs. However, there were a few other changes to boot.
KDE has now migrated to Subversion
You didn’t hear it from me, but I was just able to make my first commit into KDE’s new svn repository (Sorry for not waiting for you, coolo!). The first line of code that I added was:
Redesigning the JuK cover storage system
I’ve been working the past couple of days on designing and implementing a new cover storage system for JuK. The current system, although it works, has a few limitations:
More website coding
I’ve been working bit-by-bit on my website in the past few days. I just got done writing a PHP utility function to construct HTML ChangeLogs for me, since I get real tired of writing them in 5 different places.
tacky 0.7.0
JuK fun
I did a fair amount of hacking on JuK today, expanding the DCOP interface. I added some functions to get the album cover information of a track, get/set the random play mode, and a quick way to find the currently playing file.
An OCS drill competition
This probably won’t be of interest to most of you, but thanks to the help of someone from #kde-devel, I’ve transferred my drill competition video from DVD to a form you can download and view over the Internet. I have a rather wimpy Internet server, so you’ll have to use BitTorrent to get it (it’s around 140 MB large). You can find it at my drill competition page.
First KDE bugfix since returning
Today I fixed my first bug since I got back from OCS.
Readjusting
I’ve been readjusting to having some time off. Unfortunately I won’t have a lot of time off, and besides, I’ve been busy getting ready to leave again. My wife and I are down to considering two homes in the Charleston area (both townhouses, the apartments are simply ridiculously expensive if you have pets). Of course, there’s a lot of packing to be done here as well.
I’m back
Well, I’m back.
Yes, I’m still alive
Well, I’m just posting to let everyone who was wondering know that I’m still alive, after 9 weeks of Officer Candidate School. I now have 5 weeks left, although only the next week is going to be hair-raising. The week after will be cake, and the last 3 weeks will be in the Candidate Officer phase, where my class will be responsible for the orderly functioning of Officer Candidate School.
Last update in awhile
SPC with JuK
Short story is that it sorta, kinda works at this point. It’s actually sorta, kinda worked on my computer for a couple of weeks now, but I haven’t had time to finish it. Now that I’m about to leave for 3 months or so, I figured I’d let everyone know about the partially completed work. Maybe it’ll be done when I get back. Hint: Help clee finish gst-spc first, as that’s universally useful. ;-)
Konqueror hacking
For those of you who don’t frequent kfm-devel, I’ve posted a patch against KHTML to the mailing list to show the image you’re dragging during a drag and drop operation.
New BitTorrent
There’s a beta release of the next BitTorrent program. My notes:
Delayed update
First off, Happy New Year’s Day to everybody. It’s been a pretty hectic holidays for me. Christmas was great, and I even had my grandma mail down some of her absolutely incredible fudge candies. :-). I also got a nifty laser-leveling system, a few video games, some gift certificates, and some Steelers merchandise. Here’s hoping it leads them to a Super Bowl victory for the first time in almost 25 years.
2004
Um…
Gervase Markham, a Mozilla programmer, has an interesting viewpoint on macro-evolution. Basically, he is trying to say that although evolution as a process is pretty much not in dispute, that doesn’t mean you can just work backwards and say that evolution is how life came to be on this Earth.
To those of you running web servers…
… you may want to double-check your PHP-using programs, such as phpBB. There is a worm going around the Internet which uses Google to search for phpBB-using sites and then deface them automatically. The security flaw itself is a mixture of the recent major PHP vulnerabilities and the so-called highlight bug in versions of phpBB prior to 2.0.11.
Cool archive
I found an archive yesterday of “speed runs” through different video games. It’s quite amazing actually, and there are different types of movies. There are people who try to beat the game in the quickest possible time, and others who try to collect all items and finish the game in the quickest time.
Digital Video to DVD encoding under Linux
There are a few things where Linux is truly not ready to go. Converting video from a DV-capable digital camcorder to DVD is one of them.
Ad I saw a few days ago
As seen on a billboard on St. John’s Bluff Rd., slightly south of Beach Blvd (in Jacksonville).
Wow
These are my grades from the last 4 classes I took before graduating:
Little tin cans
Had my first accident where I was at fault today. This also happened in the Aveo, so I’ve created a new category in my blog since apparently I’m going to be writing a few something-bad-happened-in-my-Chevy stories.
Graduation Update
The graduation went well enough. I got to the University Arena early and met in the back to get ready, and get my name card filled out. I managed to get into the right line 15 minutes before the ceremony (the College of Arts and Sciences had a huge sign next to their hallway which dumps right into the meeting room, whereas you had to go through a few unmarked doors to get to my College’s line).
Graduating
I’m graduating tomorrow (or to be more specific, later today). After that, it’s time for intensive practice to prepare for Officer Candidate School (and maybe some last-minute programming if I can).
Update
The Steelers game was awesome.
Going to a football game
Leaving to see a football (American football) game in about an hour.To avoid dealing with parking hassles my wife and I are going to ride the bus to the stadium and back.
SPC Gstreamer plugin
I’ve got it sort of working. No code release yet because it takes oh, say, 70% more of my CPU than a simple spcplay, (that and I’ve hardcoded in the filename), but I’m too tired to hack on it further.
kfile_spc, and website development
Video games and the SPC file format
I was part of an interesting discussion on #kde-devel tonight regarding the joys of video game music. The discussion eventually turned around to music for one of the best gaming consoles in history, the Super Nintendo. Enterprising emulator authors have taken advantage of the wonderful sound hardware of the Super Nintendo to come up with a file format for Super Nintendo music tracks, called SPC.
KIO
I was adding KIO support to Tacky (my Pyblosxom blogger) today, and was impressed with how easy the transition was. The only complaints I had were that there is no NetAccess function for getting a list of files and/or directories from a URL, and that writing a file involves a dance with a temp file and then file_copy(). Although I suppose that last one can’t really be helped. ;)
My near car wreck
I can’t believe I forgot to blog about this. About a week ago I almost got into a car accident. I was driving down the road when someone decided to turn right in front of me into a side street.
Happy Thanksgiving
I hope you all have a happy Thanksgiving, even if you aren’t here in the United States. There’s nothing like huge family gatherings twice in the span of a month. ;-)
Finding out what C++ symbols are in a library.
I was debugging a problem today that required me to find out what symbols were in a .so dynamic library. Being C++ symbols, the output from objdump wasn’t really very helpful. So in the interest of spreading my knowledge, I will now share the technique that worked for me with you guys:
This sucks
I won’t have much time for KDE development for probably the next month or so due to the fact that I have a ton of assignments to do, including extending an SQL engine in Java in a month. Hmm, that leads me into a rant.
For those wondering where I was today
I was at the hospital. I am now an uncle, as my sister gave birth to a beautiful baby boy today. In what is mostly likely related news, I am incredibly tired, and transferring DV video to DVD in Linux is harder than I thought.
The Incredibles
Short story: Superb movie
Baked caviar
Well I’ve been staying up working on Tacky because I wanted to post this using the Preview mode. KParts itself was surprisingly painless. Making KHTML render the fonts like Konqueror was a little harder, but I’ve got that problem solved (Hint: Copy konquerorrc’s Fonts settings from the HTML Settings group to your own KConfig file first).
Grab bag
I can’t think of any one thing to blog about, so I’ll just blog about many little things.
JuK + gstreamer
wheels commited support for gstreamer-0.8 a few hours ago. Note that, like amarok which had this first, that the KDE GST bindings in kdenonbeta are not required. I had problems getting this to build using unsermake because gstreamer-0.8 puts -Wl,–export-dynamic into the lib flags which interferes with the LDADD variable (at least with unsermake). I’ve patched configure.in.in and Makefile.am here to make it work, but I need to go over it with wheels because it’s probably an ugly hack I have here. Anyways, now that I got JuK to link, I switched it over to gstreamer output, and it works (more or less). There seems to be a problem resuming playback, which I’ll look into however.
Heh
As a married man who has never been divorced or other such liberal madness, this article (pointed out by SadEagle) was pretty refreshing.
OMFG
We are murdalizing the New England Patriots.
Another C++ tip
Someone asked a question on #kde-devel the other day, wondering what the best way to do a stream insertion operator was. Their first suggestion was to do something like the following:
Lunar Eclipse
I took some pictures of the lunar eclipse from Jacksonville Florida. I didn’t have a tripod so it’s blurrier than it needs to be, but they seem to have turned out OK anyways. Here’s a sample:
Choices
Replying to Annma’s reply to Scott’s blog:
Video gamers of America (and the World if you’re interested), Unite!
Penny Arcade is once again holding a charity drive to make Christmas a little brighter for some of the many children who will spending their holidays cooped up in a hospital. The event is called Child’s Play, and you can find out more about it here.
Multiline QLabels + Layouts == b0rkage
I was wondering if anyone reading this happened to know why having a multiline QLabel in a layout causes the layout to completely break? For example, let’s say you’re creating a widget in Designer. Add a label, make the text nice and long, and make sure the format is set to RichText so that it actually takes up multiple lines. Then add something else, like a text edit widget, and lay them out however. When you preview the form, you’ll be able to resize it much, much smaller than should be possible. Change the text in the label to something short, and you won’t have that problem.
Fun in operating systems class
I haven’t blogged in awhile due to extreme business (such as midterm exams in school), but I thought it would be funny to demonstrate how important security coding is in some schools.
Gimme a free ride.
My wife and I went to the mall today with my sister. We saw one of my wife’s friends, who was wearing this kick-ass Legend of Zelda jacket. I asked him where he got it, and he said, “Hot Topic.”
Testing XML-RPC
Well here I am testing whether changing PyBlosxom to use the XML-RPC plugin is working or not. Now that it should be working, I can update my simple blog tool one of these days to allow me to blog without having to su to my stable KDE account.
Cleaned my desk
And boy does it look so much better.
Computing Sciences
Regarding the recent discussion of Computer Science courses on Planet KDE, I just thought I’d mention how this kind of thing is handled at my University.
Stuff
This sucks. I have to go to bed like, now, because my wife is taking the SATs tomorrow, but the lovely people at the College Board decided that the best place for this sort of thing is on the other freaking side of Jacksonville, which is the largest city by land area in the continental United States.
Multiple (incompatible) C++ standard libraries.
JuK is one of the few KDE programs that relies on C++ libraries other than Qt and KDE. These libraries include MusicBrainz and libOggFLAC among others, and we seem to get users every so often (especially Gentoo users sadly. I use Gentoo myself, so I know their pain =D) that have managed to install two different standard C++ libraries, so that JuK uses the new ones but JuK’s C++ library dependencies use the old one.
Speed testing SpeedCrunch
Ariya Hiyadat has submitted his calculator implementation, giving KDE users a choice of 4 (!) different calculators.
Someone had to do it.
Well, I’m not dead. In fact, I’ve been quite busy the past 2 days trying to implement Roberto Alsina’s simple calculator idea in C++ for speed. It was complicated by the fact that I couldn’t simply call ‘eval str’ like Roberto and Zack, but I have my first version up at my website.
Hurricane Jeanne again
It looks like Jacksonville residents (like myself) may get lucky with Hurricane Jeanne, as the projected course keep moving more and more westward. Currently it looks like the Hurricane will take a path similar to Hurricane Frances did.
JuK random play icons
Tina Trillitzsch has been kind of enough to respond to my plea for JuK random play icons, and has submitted a few potential icons, which are much better than what we have now.
Qt 4.0 Tech Preview 2, and Qt D-BUS bindings.
Two (IMHO) big stories:
Update
Well, the undo support in JuK seems to be progressing nicely. The feature itself works now, and includes renaming files back to their original name if necessary, and works for all of the code paths that can change a tag (although MusicBrainz can only undo the very last change made due to the way it’s been coded). I still have to finish up some problems, like the playlist items not updating after making a change, but it shouldn’t be too hard to get it finished in the next day or two.
For when you’ve accidentally retagged all your music with the genre of Polka…
I’ve been working a bit today on implementing undo for tagging. I thought it was going to be much harder than it has turned out to be so far. I already have a basic framework up and going that can retag files again, and track what files need to be changed and how, to reverse the operation.
Ruby and some hacking
Richard Dale has been nice enough to try and explain the use of braces in Ruby.
Learning Ruby
I was reading a book about Learning Ruby during my copious spare time in class today. So far I like the language (especially the super keyword, which I’ve only ever used in Turbo Pascal 7.0 where it was called inherited). However, there is a big thing that annoys me: The begin and end keywords. Call me stubborn, but I am so used to { and } for forming blocks of code that I don’t even want to go back to anything else. Python neatly sidesteps the problem by not having keywords for this sort of thing. Although I’m not fond of using indentation for creating blocks, that at least works with my programming style.
My opinion on Kopete’s Send keyboard shortcut change
I think it was a good change. Having Ctrl-Enter be the keyboard shortcut has bugged the ever-lovin’ bejeesus out of me ever since I first used Kopete. I don’t use Ctrl-Enter to send in any other program I’ve ever used, and besides that, I think it’s pretty clear that users want to send much more often than they want to add a newline to their message. I’ve always thought that things you do often should have easier shortcuts than those actions you perform rarely.
Lexar’s “Secure” Jump Drive Has Been Cracked
And trivially so, to boot. You can see the story on Slashdot. To paraphrase, Lexar’s Secure Jump Drive includes an XORed version of the password within the drive itself. Or, you can simply attach a debugger to the Lexar-provided management software and sniff the password in plain text. Of course, once you have the password, decrypting the contents of the drive isn’t hard.
Just ran the Navy Physical Readiness Test
And I did halfway decent, which is much better than normal for myself.
The Polar Express
So, I just saw a preview for The Polar Express. Don’t get me wrong, I actually have quite a fondness for many animated movies. But this looks like the biggest excuse for a piece of crap cartoon that I have ever seen. This is especially distressing seeing as how Robert Zemeckis and Tom Hanks (both from Forrest Gump) are part of the movie team.
Been awhile, now I’m waiting for Ivan
Turns out Erinn made a good choice. ;-)
I earlier blogged about Erinn Clark evacuating Jacksonville, wondering what she was afraid of. Apparently even a weakened Frances hundreds of miles away was enough to wreak utter havoc here in Jacksonville. :-( It doesn’t help that Frances’s path through Florida kept it within striking range of Jacksonville at all times. It is as if she was strafing around us.
Why is she evacuating?
So, it seems that Erinn Clark, who is President of the Jacksonville Linux Users’ Group, has evacuated from Jacksonville due to Hurricane Frances. In case her server is still down, I read the entry from Planet Debian.
Pain
Hours after the recent trip to the dentist’s office I started to be able to feel the right side of my jaw. I should have taken this as a hint to apply the painkillers for when my whole jaw would feel pain again, especially since the left side of my jaw would be under much more pain than the right.
The Dentist
Just got back from the dentist’s office. I’ve had my lower two wisdom teeth removed. One came out rather frighteningly easy, and the other the dentist literally cut in half. No splinters or anything either. I was very impressed. ;-)
Oh, please
Just figured I’d post this so that there would be a break (namely, this. ;-)) in the flamewar about to erupt on Planet KDE.
Delete dialog changes in JuK
I spent 5 hours today fighting with KDialogBase over a new delete dialog for JuK. At first I thought I was having problems because of the use of Qt Designer, but it turned out that hand-coding the widgets into the code resulted in the exact same problem.
Website coding
Real-life usability of warning signs.
Detecting null dereferences in member functions.
Today’s C++ example involves detecting the use of null pointer dereferences from within your member functions. It’s not common since there’s really not much you can do when you detect this situation, but I find it’s somewhat neat anyways.
Hackergotchi drop target
Well, now that I (seem to) have fixed bug 86478 (Drop target has severe graphical artifacts), I discovered something neat.
Yes, I forgot to give credit where credit’s due.
While I knew in my head that it was more than just Boudewijn working on Krita, especially given that he’s been mentioning everyone in his blog entries, the fact that I was replying to Boudewijn’s blog apparently gave me a mental burp when I forgot to credit the other Krita devs. Sorry guys! :-)
Re: Krita
More gstreamer action
gstreamer
School starts today
And that means less time for KDE. :-(
OMFG
I guess this will be number 2 in my series of neat-bug-reports-assigned-to-developers-who-have-burned-out.
Say Hello to KDE 3.3!
Well, it’s finally happened, KDE 3.3 has been released! I’m especially excited about this release, because it turns out that one of the features I coded for JuK ended up in the press release, under the integration option.
Fun with JuK and DCOP
After reading Ian Geiser’s recent post admiring the DCOP functionality in JuK, I thought it would cool if I elaborated a bit about what would be nice about it.
There was a party after all…
OK, so I ended up having a birthday party after all. Still no drinking or club hopping, but instead my grandma and wife setup a party at my grandma’s house. Lots of pizza, lots of soda, lots of cake, and lots of me kicking ass in Mario Kart! :-)
B-Day
So today’s my 21st birthday, so we all know what that means, right??
Yeah, that’s right
Hurricane Charley can kiss my ass. I’m not going anywhere.
Whoo!!
Yay! CVS HEAD is open for normal development again! What this means is:
Showing images on Planet KDE
After seeing Sashmit’s blog entry on adding notifications to akregator, I figured the secret to showing images on Planet KDE was out. Of course, it was only a secret since clee and I forgot to mention it. :-)
Upcoming playlist support in JuK
So, my work on upcoming playlist support continues to go relatively well. It’s more or less working now, just needs some polishing. The graphic you see is the monstrosity I came up with for the icon. Any budding artists that would like to send me an improved icon for the upcoming playlists are more than welcome: michael (DOT) pyne (AT) kdemail (DOT) net
Fun KDE 3.3 Feature #${RANDOM}
KDE 3.3 is coming out soon, so I thought I’d relate one of my favorite new features. It’s quite simple really (but aren’t they all?).
PEBKAC
So, I’ve been trying to do some *cough* quality testing of KDE, making sure it will build from scratch. Since I’m doing this, I figured I might as well upgrade GCC as well. So I get GCC 3.4.1 installed, no problems, and started compiling KDE.
Very brief intro to C++ template specializations
I was looking through my C++ templates book today, when I realized that a lot of these things were real obscure, so there’s a lot of programmers who wouldn’t know about them unless I could help explain it.
Lil’ Brudder
From Homestar Runner
Working
I’m working now on an idea I have to refactor JuK’s playlist code to make the previous/next track decision code independent of the playlist code. The idea being to finally add support for the #2 requested feature in JuK, the ‘upcoming’ playlist.
Yay!
Well, Scott and I managed to get JuK down below 10 bugs in time for KDE 3.3 RC1, and I am insanely happy, especially since about half of the bugs seem to be unreproducable, and the other half can’t be fixed for 3.3 for the most part.
Got a new car
No one’s blogged recently, so I figured I’d regale you with tales of the car my wife and I bought yesterday. It’s a
2004 Chevrolet Aveo LS. It’s apparently a rebadged Daewoo, but that’s OK, the car has been very nice from my day or so of using it.
Some quiz results
Edit: Changed the img tags to hopefully make the images show up on Planet KDE. They sort of give context to the rest of my blog. ;-)
dotNET
KolourPaint
I am dedicating this blog entry to letting the world know that Clarence Dang’s KolourPaint, due to be included in KDE 3.3, is a very kick-ass painting program. Mind you, it’s not the Kimp, but it is much much better than KPaint ever was. And unlike MS Paint, it supports such niceties as transparency, and a selection of image effects (not just Resize / Skew). Also, there’s no Settings dialog; it doesn’t need one. :-)
System Admin Appreciation Day
Air conditioning actually sorta works
Well, the air conditioning is working a little better now. Turns out it wasn’t so much the air conditioning that was broken as the adjuster switch, which seems to be telling the air conditioning unit, “Yes, I love living in a sauna, so please tone down the cold.”
Where’s your hackergotchi? It’s waiting for you!
Aaron, you can have your floaty head when you make one, like I did. It took me about an hour and a half, taking the picture with the right pose, cropping out the head just so, clone brushing some of the blemishes out, etc. ;-)
Stuff
Wow, some of these bugs keep getting weirder. Juk was crashing in certain situations because a function which for the life of me appears re-entrant seemed to be unable to cope with being called multiple times. Or maybe it’s a side effect of changes the calling function was making. Either way, I didn’t have time to investigate too deeply, so I turned the code path into a poor man’s critical section.
Working on my build script some more
So, it occurred to me that configuring my build script is probably not the easiest thing in the world. I’ve been trying to write a GUI to make it easier, but that’s not too much fun either.
Miscellaneous news
So I finally figured out why arts wasn’t working for me the past few days. Turns out that aeons ago when I setup my single-user KDE account, I forgot to add ${KDEDIR}/lib to my LD_LIBRARY_PATH, and now arts couldn’t find its libraries. So now the question becomes, how is it that anything at all worked before? I seriously believe that for this entire time I’ve been running KDE CVS on KDE 3.2 libraries, which would explain my sound problems.
JuK Tree View Mode changes
Yesterday I committed my fixes to the JuK tree view mode to CVS. It should work much better now, as it dynamically adjusts the entries in the tree view depending on the tags present in the Collection List. It will even add/remove entries as needed after you edit a tag. :-)
I’m back
Well, my weeklong vacation to my grandmother’s in Pennsylvania is over, and I’m back safe and sound.
Vacation status
So, I got up here after driving for about 15 hours safe and sound. So far it has been fun up here, moreso than I thought. Sometimes it’s nice just to sit back and just chat with your relatives I guess.
Going Away
So I’m leaving tonight for a trip to my grandparents’ house for a family reunion. Although we will have a laptop, we won’t have much in the way of Internet access, which is probably for the best what with the freeze starting and all. ;-)
This is the first thing I’m trying once I upgrade to GCC 3.4
Check out this GCC Symbol visibility patch. It can have quite an effect on code, especially code (*coughC++cough*) that generates very large symbol tables.
srcdir != builddir == good
I had a discussion on #kde-devel today with a developer who didn’t know about how to build programs with a different build and source directory. It came as quite a shock to me, as I had assumed that it was common knowledge.
C++ Tips, Vol ?
I come across this every so often and still get surprised by it every time. So I figured I’d impart a bit of my hard-earned C++ knowledge so that more people would be familiar with the phenomenon.
Wow
Saw this Realtime xplanet page by reading Planet Perl.
Getting ready to go for a trip
Haven’t blogged in a while, guess I’ve been pretty busy. Which is a pity, as I have always lamented the fact that there was no Planet KDE, until clee went and fixed that for me.
Web site coding
So I’d finally set up my grandma’s computer the other day, and configured it to
run Fluxbox and Mozilla Firefox to conserve memory. Unfortunately, Fluxbox
isn’t included with Gentoo’s GRP package, and after a few hours of compiling it
was looking like my grandma’s computer would never be able to install it
either. So what I did was setup a chroot environment on my home system which is
very similar to my Grandma’s system, down to the last USE flag. I was then able
to compile binary packages on my fast home system and then have them downloaded
from my Grandma’s slow computer. It was up at
/cgi-bin/x86-packages but I’ve since lost that content. Feel free to
browse around, but please don't actually download anything, my upload bandwidth
is bad enough as it is. ;-)
Lotsa stuff
I’m just blogging this random collection of thoughts.
More tackiness
annma has kindly tested the last release of Tacky. I feel sort of bad for even releasing it, as it wouldn’t even start up if you hadn’t configured the directory already! But anyways, I’m putting v0.6.1 out, which fixes that problem, and makes it possible to build using the normal automake framework again thanks to an /admin directory update (again thanks to annma).
My new blogging tool.
BWAHAHAHA
I was reading JWZ’s blog, and came across him posting about his experiences reporting a GIMP bug.
Some answers to FAQs
As I was reading Boudewijn’s blog entry on the upcoming KDE 3.3, I noticed that he was also having difficulties with the new Document Relations Toolbar in Konqueror. So I will give the same piece of advice, that I have given on #kde-devel about two or three times now: In Konqueror, Tools -> Document Relations -> Configure -> Never. The toolbar won’t bug you until you enable it again.
w00t! & my experience as a Linux ambassador
So I’ve been practicing for my Navy PRT. After taking a two day break, I go to the gym again today and start running again. I was finally able to manage to beat my required time of 13 minutes and 30 seconds by running 1.5 miles in 12:40. The catch is that my feat was performed indoors, on a treadmill, listening to some very driving music for motivation. But at least I know that it can be done.
Exercise and E-mail
So, I’ve been exercising a lot recently. I have to get ready to go to Officer Candidate School in January, and I wouldn’t like to have my heart explode after 2 days or so. I was able to get my 1.5 mile run time down to 14:30 today (quit laughing, I’ve never exercised in my life until this month). I would like to get it around 12:30 (or better). I already feel that I can breathe deeper, but now I need to psych myself up into running for longer, faster.
pWNed by the Russian Mafia
Saw this story on Slashdot.
Libtool is a harsh, harsh mistress.
Dance Recitals
My little sister had a dance recital today, that I went to see. It makes me wish I had been violently ill with the flu instead, at least I could’ve got something done. The event was apparently around 6-7 hours long, including intermission. My sister was on stage for a grand total of perhaps 20 minutes.
Aworkin’ away
I think I’ve finally implemented all of the features that mornfall and berkus have suggested, with the exception of separate compilation and linking, since that seems to be impossible.
Sock Sucking
Having read Roberto’s reply, I think that of his two choices, Planet KDE should choose the second one. I read planet.gnome.org and planet.debian.net regularly, and it’s not because I’m interested in knowing when I can use spatial browsing in Debian installer, it’s because I’m interested in knowing what’s going on with other free and open-source software developers.
Geez, how do people pick out titles?
Hmm, been a few days since I’ve posted a blog. Been sorta busy myself, between the coding I’ve been doing and real life.
Nightly routine
I usually read a little bit from bash.org before going to bed at night. Or to be more specific, I’m at the site because I’m bored, which convinces me to go to bed. But anyways, this quote was particularly funny.
The Joys of Wrapping your Head around Code
I never thought that I would have as much trouble understanding bugs as I just now had for a bug in JuK. First, a description of the bug is needed.
Feature Planning
I almost wish that I had added more features to the Juk section of the KDE Feature Plan while I had a chance.
My Blogging Tool of Choice
cat fortune
Fixed a weird error in my build script just now, which was preventing kdepim from compiling. Of course, I had let kdepim sit there not compiling for about 2 weeks or so, wondering what it was the coders could be smoking. :-(
Top Ten Amusing Code Snippets from KDE CVS
Cats are weird
I was sorry to read about Roberto’s kitten, especially since I have two cats of my own.
First blog post like, ever.
And vim managed to crash while editing it. Go figure. :-P