KDE

Let me tell you where to put the buttons…

March 5th, 2010  |  Published in FYI, KDE

You really don’t want me to tell you where to put them, as you might not like the answer. However, with KDE, you can put the buttons wherever you would like Daviey, Mike, and everyone else.

No need for some confusing application or editor, simply configure the location of the buttons as you would like them to be. You can drag stuff where you want, click apply and test the results. Tweak until you are happy.

Kubuntu 9.10 Karmic Koala Beta Released: Everyone Needed!

October 1st, 2009  |  Published in KDE, Kubuntu, Release

Yes, I know I stole the idea of the title from Jono Bacon, however, unlike Ubuntu who supposedly only needs testers right now, Kubuntu needs all of you! Of course, quite a bit of the work left to do is testing and fixing, we can use many of you to show your support in #kubuntu, helping those who need it. Right now, all of the 9.10 support is in #ubuntu+1, so if you have any questions, or feel like helping others, head on over and check it out.

Interested in knowing what’s new with this latest release, check this out:

  • KDE 4.3.1
  • Kubuntu Netbook Technical Preview
  • Social From the Start (no more reason to not have any friends!)
  • OpenOffice.org KDE integration created by our very own Kubuntu developers!
  • Installer bling (I don’t use the Live Desktop installer, but this is so hot I just might have to!)
  • Amarok 2.2 RC (wait, and pretty soon you can update to the new Amarok 2.2 “Sunjammer”
  • and more…

Many of you may have heard about this Kubuntu Netbook thing and for once we are officially releasing and unofficial release. Does that make sense? I didn’t think so, as I just lost myself. Anyways, it is unofficial because we have been working very closely with upstream to bring the KDE Netbook environment to Kubuntu and KDE 4.3. You see, the netbook work upstream is all geared at KDE 4.4, which isn’t do out until February. The current version of the Kubuntu Netbook preview works fairly well, however there are still some annoyances here and there. I have been using it now for a couple of months on my netbook and I absolutely love it! Do I think it is the best netbook implementation right now? No, but I do see it being the best soon. KDE developers are working hard making sure to not waste space on such a small resolution, and they are also working on some really cool things for future releases with KDE 4.4. I can’t wait!

Also during the Karmic development cycle, a group of Kubuntu developers worked with developers from OpenOffice.org in order to bring you a groovy KDE 4 infused release. There are still some quirks being worked out, but I am sure they will be worked out before release. Though I don’t use OpenOffice.org, I have to say for once it looks good in KDE!

Installer bling, better known as Ubiquity, has had one hell of a make over. Roman, aka ’shtylman’, has put some damn fine touches into the Live CD installer. I was really impressed with the work, and for once the installer was pleasing to the eye. Great job Roman and thanks for all of your great work!

Now, with all the good, there is of course a little bad yet, I mean it is still a beta release. One has to do with logging out back to KDM, which oddly enough doesn’t effect everyone. If you do get bit by this, you have to go out to the console by pressing Ctrl+Alt+F1. Once there simply login to the console and type sudo stop kdm, unless of course you want to shutdown, then it is just sudo shutdown -h now or sudo reboot. And yes, we know KPackageKit does not install software, which is comical yet sad at the same time. Who wants to install software anyways? Well, I am sure most of you who will give this release a try are probably pretty comfortable around the command line, so nothing an apt-get can’t fix for the time being.

We invite everyone to give the new beta a good running and help us test the release and fix the release. Yes I mean everyone, as input from people with various skill levels matter so much to us. So please, feel free to join us in any of the following IRC channels:

  • #kubuntu for support for all stable releases
  • #ubuntu+1 for support for the latest development release
  • #kubuntu-devel if you would like to contribute

Or you can visit us on our development mailing list or our support mailing list for more. Thanks everyone!

Myth of the blue-headed step children

September 26th, 2009  |  Published in KDE, Kubuntu

I have been reading quite a few blog post comments these days just to get a feel for what people think about Kubuntu, KDE, and the other KDE distros. The comment I see the most is something along the lines of “Kubuntu’s KDE is garbage while distro x’s KDE rocks!” And then there is my favorite comment, which I made as a joke one day and was forever placed in the grasps of hell for it, “Kubuntu is the blue-headed step child of Ubuntu.” Today, while reading the comments and the post of Fabio A. Locati (flocati), he brought up a valid point about the lack of publicity for Kubuntu. Instantly the fanbois of the various distros come out of the shadows on the attack. Fabio thinks it could possibly be bad for the image of Kubuntu regarding the lack of publicity, and I have to agree a bit with him. I don’t so much think it hurts the image as much as it doesn’t help create or build an image for Kubuntu.

Kubuntu’s KDE is garbage while distro x’s KDE rocks! One thing I would like the users to know is that there is a good chance that Kubuntu and distro x share patches. Quite a few of the KDE based distros have a small developer community, which makes it tough to create and operate a full-fledged flagship like Ubuntu. Because of this we tend to share patches, we tend to communicate a little with each other (this could be better of course). Typically when people make this argument, they never list examples of why we suck compared to them. And when they do list examples most have nothing to do with KDE or Kubuntu.

Kubuntu is the blue-headed step child of Ubuntu. If you look at most of the KDE distros around here, the same thing could be said about them. With the release of KDE 4.0, we scared quite a few distros, and a few of us distros immediately jumped on that KDE 4.0 bandwagon. Whether or not it was good or bad, it is the past and there is nothing we can do about it, except continue making KDE rock harder with every release. Many people complain that Canonical doesn’t support Kubuntu like they do with Ubuntu. If you are just saying Ubuntu, then you are right, because Canonical is sponsoring all kinds of crazy projects for Ubuntu, which by the way isn’t GNOME for you users. Canonical is doing some amazing server work, mobile devices, services, and more. In terms of ‘paid developers’ I think the GNOME and KDE side is close to being even. To be honest, I can’t even think of one person who is a GNOME only developer. I know at least 2 KDE only developers (right now?). A majority of the work that goes into making Kubuntu is actually completed by Canonical employees, or people many of you consider paid Ubuntu developers. One thing Kubuntu doesn’t have that Ubuntu does, or the GNOME side of Ubuntu that is, is a large developer or contributor community. If I think about it, I think the same goes with other distros as well. If you look at their developers on the KDE side, there aren’t a lot when compared to the GNOME side. This is what makes the legend of the blue-headed step child nothing more than a myth at best.

With all of that garbled mess said, the point I would love to try to make is this. Why don’t we, the KDE community and downstream or distro developers, try to work together a bit. We have pretty much the same goals. Make our distro rock and make KDE number one! Wouldn’t be easier if we worked together a bit to at least make KDE number one, and while we are at it, we can share ideas to make our distro rock. Now I know we also want to make our distros stand out from one another, and we can continue doing that, but lets do it without hurting one another. We chose to use KDE as our environment because we love it and we want others to love it as well. By some of us saying you suck and we rock, you aren’t doing your distro any justice and you aren’t doing the other distro any justice either. There are people that will take what you said at face value and laugh it off and not use your distro because they see the elitism in your comment, and then there are others that will believe it and use your distro, only to find out it isn’t for them, and the next thing you know they are blogging about Linux sucks or KDE sucks.

And on a side note, concerning Kubuntu, another comment I see is “Kubuntu is so far behind Ubuntu.” How is this so? What can you do in Ubuntu that you can’t do in Kubuntu? Seeing as I use both Ubuntu and Kubuntu, there is nothing I can’t do on one that I can do on the other. I know bluetooth sucks, so you don’t have to bring that one up, it is being worked on somewhere, and of course if you would like to work on it you are free to do so :)

CSS Border Radius

June 19th, 2009  |  Published in Coding, Development, FYI, KDE, Personal, Tutorial

I am really just adding this so I have it documented in case I forget it in the future or need to reference it. One thing I like to do when messing around with web development is when I use a table to hold something, instead of a silly div (really on wiki pages and such to create cheap button-like objects), is use a round border. So here are the example on how to use round borders for tables, utilizing border-radius and CSS.

Firefox

/* 5px radius on all 4 corners of the table */
-moz-border-radius: 5px;
/* 5px radius on top left and bottom right corners only */
-moz-border-radius: 5px 0 5px 0;
/* 5px radius on bottom left and top right corners only */
-moz-border-radius: 0 5px 0 5px;
/* 5px radius on the top left corner only */
-moz-border-radius-topleft: 5px;
/* 5px radius on the bottom left corner only */
-moz-border-radius-bottomleft: 5px;
/* 5px radius on the top right corner only */
-moz-border-radius-topright: 5px;
/* 5px radius on the bottom right corner only */
-moz-border-radius-bottomright: 5px;

CSS 3

/* 5px radius on all 4 corners of the table */
border-radius: 5px;
/* 5px radius on top left and bottom right corners only */
border-radius: 5px 0 5px 0;
/* 5px radius on bottom left and top right corners only */
border-radius: 0 5px 0 5px;
/* 5px radius on the top left corner only */
border-top-left-radius: 5px;
/* 5px radius on the bottom left corner only */
border-bottom-left-radius: 5px;
/* 5px radius on the top right corner only */
border-top-right-radius: 5px;
/* 5px radius on the bottom right corner only */
border-bottom-right-radius: 5px;

Webkit

/* Just add -webkit- in front of the CSS 3 styles */
-webkit-border-top-right-radius: 5px;

KHTML (Konqueror)

/* Just add -khtml- in front of the CSS 3 styles */
-khtml-border-radius: 5px;

And with that said, Why is there 4, count them 4, different ways to skin the same exact cat? Come on browser devs, lets come together and accept 1 solution and implement it. I have been noticing Ajax-like functions out there to do rounded corners, and now I see why. With like 10 lines of JavaScript, you get this same functionality. Now do this in your style sheet, and 1 table could have as less as 4 lines if it is a simple table, or as many as 16 lines for a bit more complex layout. Anyways, just wanted to keep this documented instead of Googling for it all of the time when I need it, and pass it on to all of you fine folks who are unfortunate enough to read my blog. Plus, I also wanted to pass on how web developers, when utilizing border-radius, can now make a KHTML friendly site :)

Kubuntu and Apport love

June 11th, 2009  |  Published in Coding, KDE, Kubuntu

So, I decided to take all of the Apport related TODO items the other day and I am almost complete with all of them. Today I ported apport-qt to apport-kde, which means went from PyQt4 to PyKDE4 loveliness. Spent some time testing it and working out the bugs and I think it is good thus far. I am sure we will have to do some tweaks to it, but it is a great start.

Another item on the TODO list was to convert the Help->Report Bug… menu item to utilize Apport to file bug reports to Launchpad instead of going straight to KDE Bugzilla. In the future I will probably look at having both implemented, but that will need to be discussed further, probably with the KDE and Kubuntu people, as well as Celeste on usability.

Next step, something about all of the apps and Apport, so I will probably start working on hooks for the apps so we can get some better reports. Like always, I will keep you tuned in. Time for bed, good night!

Interrogation with Apport hooks – Qt Included

June 9th, 2009  |  Published in Coding, Development, FYI, KDE, Kubuntu, Python, Qt

Earlier today my buddy Martin Pitt blogged about how he needed a Qt developer to work on implementing the ui_question_choice() dialog. I looked through the code a bit this morning, and needed a little help right off the bat getting the GTK version running. One little thing I missed a bug report and Martin helped get it up and running. So as the day went on, storms came through, and for some reason I get in this storm hunter mode and nothing else gets done. Well, about an hour ago all the storms have cleared up and back to work I went. I spent about an hour, most of which was silly Qt Designer and layouts, which Kubuntu guys, I suck at, never listen to me brag about my Qt Designer classes again! The other thing that had me for a second was trying to iterate over a layout to get button statuses. After all was said and done, this is the little beauty that popped up when testing:

apport-qt4

Not to shabby. I will spend some time looking through all of the apport-qt ui stuff and see if I can make it as simple as the GTK side. The checkboxes in that image are generated dynamically by the hook. So once they are added to the layout, trying to figure out their status when they weren’t provided a name was tricky. Thankfully the PyQt 4 API Documentation is great!

So here it is, there is the main dialog and then there is the groupbox with a vertical box inside of it. The vertical box makes it simple to add and remove stuff so that’s why I went that route, KISS. So after the box is populate, you select the stuff you need then press OK to submit it. Well the trick was finding out what is checked. So the main dialog is named dialog and the vertical box that holds the check boxes is called vbox_choices. So here is how I got those values:

result = []
for c in range(0, dialog.vbox_choices.count()):
    if dialog.vbox_choices.itemAt(c).widget().isChecked():
        result.append(c)

So, the main reason for doing this, is so I can find it a bit easier next time, and the fact that I couldn’t find this little bit documented anywhere else. If there is a better way to do this, let me know.

EDIT: Removed the index variable as it was old code left hanging around when I did the copy and paste. Thanks Milian for catching that.