Announcement

Collapse
No announcement yet.

Why kubuntu as a separate distribution?

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Why kubuntu as a separate distribution?

    Hello,

    I have a question. Perhaps it was previously discussed - if so, please point me to that discussion.

    The question is this: Why think about kubuntu as a separate distribution from ubuntu?

    It seems to me that there are a lot of things that are done twice, just because one is in KDE and one in GNOME. Recently I discovered adept, which is a nice package installation program. However, I don't really see what's wrong with synaptic - except for the fact that it's written using GTK.

    Really, I don't mind if a program is written using Qt or GTK. In dapper, they even look pretty much the same. So why everything should be written twice?

    What I want is to easily be able to choose the application I like for a specific task. Do I prefer kpdf or evince for viewing PDFs? Do I prefer OpenOffice.org or kword or abiword for word processing? And, do I prefer KDE or GNOME for a desktop environment? According to this list, my computer will choose my favorite application for opening a specific file type, and it will also show me these applications in the application menu.

    Really, a desktop environment for me is just the window behaviour, window decoration, the menu for accessing applications, and that's all. Having several applications compete who's the best for a specific purpose is great, but this competition should be free - I don't have to be stripped to a specific set of applications just because I chose KDE for the desktop! Also, if there's a perfect application for doing something, which happens to be written in GTK, why should it be re-written in Qt? I don't get it.

    I'll like to hear what you think,
    Noam

    #2
    Re: Why kubuntu as a separate distribution?

    Whew, that's quite a load of questions. I'll try to answer to the best of my abilities. Please don't mind if I take your thread piece by piece, as you are actually a bunch of separate (but related) questions.

    1.
    The question is this: Why think about kubuntu as a separate distribution from ubuntu?
    It's not. At least that's my view. And it seems to be the view of the Ubuntu developers. If you are using Dapper, there's a /usr/share/example-content folder that contains some sample documents/media. One of them is named oo-derivatives.doc and contains these paragraphs:

    Derivatives of Ubuntu

    Ubuntu is designed to be a solid foundation for creating further derivatives. In the case of the Official derivatives, all the packages used are from the main Ubuntu repositories, so a user from any variant can seamlessly install packages from any other, and even convert completely to a different variant.

    Kubuntu
    Kubuntu is a user friendly operating system based on KDE, the K Desktop Environment. Kubuntu and Ubuntu are not meant to be seen as distinct projects; Kubuntu is part of the Ubuntu project, and they are both part of one development team that contributes to the whole. Kubuntu is Ubuntu with a different default set-up, the Ubuntu CD contains only GNOME as a desktop environment; the Kubuntu CD contains only KDE, this is the primary difference.
    Hope that clears things a bit.

    2.
    It seems to me that there are a lot of things that are done twice, just because one is in KDE and one in GNOME. Recently I discovered adept, which is a nice package installation program. However, I don't really see what's wrong with synaptic - except for the fact that it's written using GTK.
    Ok, here switched from asking about Ubuntu/Kubuntu, to asking about a more fundamental difference: GNOME/KDE. There are many reasons why there are duplicates in GNOME/KDE. This thread merely touches the tip of the iceberg. But a more fundamental reason why these duplicates exist is because of the way things work in the Free/Open Source Software world. Developers/Programmers have this term called "scratching an itch". What it basically means is that if the available software doesn't do what you want, you make one that does. This doesn't apply only to programs but to distributions itself. People make/fork distributions because they believe that it doesn't have what they want/need, or because they believe they can give something more. Sometimes they succeed, sometimes they don't. But it doesn't really matter that much, at least to us using something else, right?

    Also, not all programs that do the same "basic" stuff are the same. Taking Adept and Synaptic as examples, there are many ways in which they are different. Of course, Synaptic is older and more mature, but you don't stop a baby's growth just because an adult already exists, right? People developing Adept believe that they are offering something different. And indeed they do. Here is a short "review" (made by me) of the different package managers. You can see where Synaptic and Adept differ. Just because they're both package managers doesn't mean they're duplicates.

    3.
    Really, I don't mind if a program is written using Qt or GTK. In dapper, they even look pretty much the same. So why everything should be written twice?
    GTK+/Qt isn't just about looks/appearances, although it's one of the most visible/obvious. On a fundamental level, it affects how it runs and cooperates with the desktop that you are running. True you can make GTK apps look like Qt apps in KDE (or Qt apps look like GTK apps in GNOME), but the similarity ends there. Under the hood, GTK will always be GTK and Qt will always be Qt, and there will be features that one will not be able to access that the other can. I can only give an example for GTK apps in KDE (haven't used GNOME much). KDE has these features like KParts, kioslaves, DCOP, etc. These things can't be used by GTK apps, nor can the GTK apps be accessed using these. (What are these things? It's a totally different discussion )

    4.
    What I want is to easily be able to choose the application I like for a specific task. Do I prefer kpdf or evince for viewing PDFs? Do I prefer OpenOffice.org or kword or abiword for word processing? And, do I prefer KDE or GNOME for a desktop environment? According to this list, my computer will choose my favorite application for opening a specific file type, and it will also show me these applications in the application menu.
    I can't seem to understand this paragraph. You can always choose/install the application that you prefer and set it as the default. If you prefer to use Evince instead of Kpdf, you can always install it and assign it to be the default PDF/Postscript app. But just take note that, like what I said above, there are some features that GTK apps won't be able to use in KDE (like embedded document viewing). The defaults are there for people who don't really care much about which apps they use, as long as it gets the job done. Remember that Ubuntu aims at regular desktop users, many of which might not be familiar (or don't even care) about different apps. For those who do care, the option to install is always there.

    5.
    Really, a desktop environment for me is just the window behaviour, window decoration, the menu for accessing applications, and that's all.
    What you think about something doesn't necessarily makes/limit what that thing really is, right? (No offense meant). Window behaviors and window decorations are not even handled by the desktop environment. It's the job of the window manager, which is a different application. The Applications menu? Yep, handled by a different application: the panel/taskbar app. So what does the desktop environment do? It integrates all of these apps (window managers, panels, desktops, file managers) so that they all act as one solid, organic whole. The key word here is "integration". Without a desktop environment, every piece of the computer would look like a separate, independent, and isolated application, which doesn't really do much for usability.

    Having several applications compete who's the best for a specific purpose is great, but this competition should be free - I don't have to be stripped to a specific set of applications just because I chose KDE for the desktop!
    You're right. you don't have to stick to KDE apps just because you are using KDE. See my statements above.

    Also, if there's a perfect application for doing something, which happens to be written in GTK, why should it be re-written in Qt? I don't get it.
    The problem here is the definition of "perfect". Not everybody can agree which apps are perfect or not. Also, if we take the standard of "not doing something done before", GNOME wouldn't even exist today, because KDE was already existing before GNOME was even born. But because of certain issues, people wanted to do something different. If we used that same standard, we wouldn't have any other distribution except the very first Linux distribution, probably the one made by FSF (Free Software Foundation). Also, there's also the possibility that a perfect application for something exists in Qt, then there shouldn't be a GTK one? Again this will go back again and again to the points I already mentioned, specially about Qt/GTK apps not being able to take full advantage of GNOME/KDE.

    But all of these boils down to one thing, the basic and most fundamental message of Free/Open Source Software and Linux: Freedom, specially the freedom to choose. There are many options out there, so that you could have the freedom to choose. A monopoly is something that everyone wants to avoid. Being forced to use something, because it's the only thing available isn't nice, specially if it's something you don't like. Monopoly is where things will end up if we begin to adapt the "it's been done before, don't do it again" mentality. Sure it might be less confusing, but confusion disappears in the face of more knowledge. So doing away doesn't necessarily solves the problem. It only replaces it with another problem.

    Btw, there are ongoing projects, notably the freedesktop.org project, which seeks to create some sort of interoperability between the different desktop environments. If all goes well, we could be seeing an improvement in how GTK/Qt apps operate in different environments. But still, there would be some features that wouldn't be accessible/usable by all apps in all desktop environments.

    Hope this helps you in some little way.
    Jucato's Data Core

    Comment


      #3
      Re: Why kubuntu as a separate distribution?

      The flip answer is "Why not?: or "because I can"

      To me, a Linux distro is basically a set of default packages and tools selected to fit a certain group or need, or, rather what someone thinks those things should be.

      I hate to do it, but the car analogy is appropriate here:
      Why do we have different automobiles that all more or less do the same thing?
      Why don't we all just drive Buick Centuries? I mean, just look at the options you get!

      Comment


        #4
        Re: Why kubuntu as a separate distribution?

        Hi Jucato, thanks for your enlightening reply!

        Thanks to your reply, I think that I can refine the description of my problem. It's simply this: Gnome/GTK and Qt/KDE don't work together good enough, so you are forced to choose whether you want your application to interact nicely with one kind of apps or the other kind of apps.

        That's why the freedesktop.org work is important: if you manage to create one agreed-upon standard, then the way an application was designed becomes an implementation detail.

        As you said, having an existing application isn't a reason for not writing another one, if someone thinks there's a better way to do it. The two (or more) applications will evolve, learning from one another, and you either end up with one standard application or with a couple, each with a different idea behind it. It may be similar to evolution theory - you have many species, all with the same basic purpose (pass genes across generations), but each with a different way of doing it.

        But, I think that the situation right now is different: You don't have real free competition among applications. You have Gnome applications, and you have KDE applications, and they aren't really competing: People may rewrite an application just because it's written for the other desktop environment, not because they have a better idea for doing what it does. And so it continues: there may be two applications, doing the same thing using the same idea, with no chance of one "defeating" the other; people will continue to spend twice the amount of work, because you have two applications for doing the same thing with the same idea.

        Of course, this may happen even if you have two applications with a different "way of doing things": some of the work will be duplicated. But that's where you start splitting things up: If both applications have one part which can be united (for example, two web browsers need to display PNG images), it should be united and become a common basic block. As this process continues, the amount of duplicated work decreases, so what remains is just the two ideas, each one with its own "source code".

        This explains my problem: Currently, Gnome and KDE are two gigantic competitors, each with its own complete set of applications. If things begun to split into modular components, each component may compete with similar components. You end up with having different alternatives only when there's a reason for having different alternatives - when there are two ideas for doing the same thing. In all other cases, you end up with one agreed, good way for doing something, and you don't waste your time on doing it twice any more.

        To summarize my idea (it wasn't really organized - I thought while typing): If things split into the right components, work is spent only where needed, in places where there are new ideas to implement. If things don't split up, work is wasted to do the same thing many times. In this case, the obvious example is that each application should be a separate component: They should compete with each other freely, and not be bound to a specific desktop environment, which doesn't really matter for the idea behind the application.

        Have a good day,
        Noam

        Comment

        Working...
        X