Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
OS X Businesses Operating Systems Apple

GTK+OSX for Mac OS X Aqua 240

Scott Sheppard writes "GTK+OSX has released a native Mac OS X Aqua port of the Linux-based GTK+ open source graphical user interface library. GTK+ (GIMP Toolkit) is a popular widget library supporting graphical applications for Linux. GTK+OSX version 0.1 is an alpha release intended for developers." This could make The Gimp cozy for MacHeads without installing XDarwin and OroborOSX. Looking good!
This discussion has been archived. No new comments can be posted.

GTK+OSX for Mac OS X Aqua

Comments Filter:
  • by Anonymous Coward on Tuesday December 31, 2002 @09:40AM (#4987875)
    GTK+OSX has released a native Macintosh Aqua port of the Linux-based GTK+ open source graphical user interface library. GTK+ (GIMP Toolkit) is a popular widget library supporting graphical applications for Linux. GTK+OSX version 0.1 is an alpha release intended for developers.

    "This is great news for the Mac OS X developer community," says Macworld UK contributing editor Scott Sheppard. "It means that many popular Linux programs can be ported to run natively with Mac OS X's Aqua user interface, avoiding the hassle of users having to run an X server."

    GTK+OSX is a spin-off from the Film Gimp project (www.FilmGimp.org). GTK+ is utilized by Film Gimp and many other Linux programs including those of GNU and GNOME. Mac OS X users greeted Mac Film Gimp with enthusiasm at its release earlier in December. But, that X-based compatibility version was merely the first step. GTK+OSX is being developed as the underpinnings for a native Aqua-based Mac OS X port of Film Gimp, scheduled for Q2 2003.

    GTK+OSX project manager Robin Rowe is also the release manager for Film Gimp. "As soon as we released the Fink-based version of Film Gimp we began looking for ways to port natively to Mac OS X", says Rowe. "Andy and I began researching different ways of doing that, either switching to another toolkit or making GTK+ run directly on Aqua."

    GTK+OSX lead developer Andy Prock is also the Mac port lead for Film Gimp. "My curiosity got the better of me", says Prock. "I discovered an abandoned GTK+ for OS 9 Sourceforge project called gtk-mac, and that became the basis for GTK+OSX". GTK+ co-maintainer Owen Taylor says, "The GTK+ team is happy to see the GTK+OSX project working on bringing the power and flexibility of GTK+ to OS X."

    GTK+ has not been available running natively on Macintosh, although there is a native port of GTK+ for Windows. Mac Film Gimp and other GTK+ applications currently use Fink and the XDarwin X server, a technology that enables X Windows programs to run on the Mac almost seamlessly. The relationship between Darwin/Aqua is roughly the same as Linux/X. Both Linux and Darwin are open source, but the Macintosh Aqua interface is not. A fully open source alternative is Darwin/XDarwin. XDarwin enables X to run on Darwin, and it can run "rootless" on the Aqua desktop if a user wishes to run both. However, there's overhead and complexity to running two graphics interfaces simultaneously. That's why it is desirable to have GTK+ run natively on Mac Aqua without X.

    Apple offers four GUI toolkits: Cocoa, Java2, Carbon, and Classic. Carbon and Cocoa are both native Aqua interfaces. Aqua renders utilizing Quartz, a technology Apple based upon NeXT Display Postscript. For GTK+OSX a Carbon-based design was chosen over Cocoa because Rowe was influenced by Patrick Beard's description of the challenges Mozilla Chimera experienced working with Cocoa and Objective C (see http://www.opensourceprogrammers.org/meeting/2002/ Jun19.html). "We wanted an easy-to-maintain design, that would play nice with the Linux and Windows versions of GTK+", says Rowe. "That meant choosing Carbon and C, rather than Cocoa and Objective C."

    A three-step process was mapped for developing the GTK+OSX library. First, do the trivial GTK+ program Hello World, then a mid-sized Linux application, then major applications such as Film Gimp. Rowe had written an article about porting the Linux-based Gothello GTK+ program to Windows (see http://linuxjournal.com/article.php?sid=5574), making it an obvious choice as a test program for a Mac port. Mac Gothello is the first real program to utilize GTK+OSX. Both are available for download at the GTK+OSX site at SourceForge.

    * Pricing and Availability

    Free at http://gtk-osx.sourceforge.net. GTK+OSX is available as source tarball (gz). Download version 0.1 or higher, about 8mb. Optional Mac Gothello download is about 1mb. GTK+OSX has an active mailing list.

    * Further Information

    http://gtk-osx.sourceforge.net

    Robin Rowe, GTK+OSX project manager, 510-235-2397, Robin.Rowe@MovieEditor.com

    Full rez screenshots: http://gtk-osx.sourceforge.net/docs/applications.h tml
  • But, why would anyone use GTK when OS X provides the vastly better Aqua?
    • Its easier to compile The Gimp for OS X/GTK than to create a separate tree for an Aqua version of The Gimp. This goes for a horde of other gtk applications as well. Now if only they would make a Gnome library for Aqua I could use Gnome applets in my dock. This is good stuff. Im looking forward to throwing out Photoshop in favour of The Gimp.
    • by popeyethesailor ( 325796 ) on Tuesday December 31, 2002 @09:47AM (#4987932)
      GTK is a widget toolkit, it can be targeted to any rendering engine, X-windows, GDI etc.
      BTW, this article is about GTK running natively on OS-X, which means it utilises the Aqua rendering engine. So there.
    • But, why would anyone use GTK when OS X provides the vastly better Aqua?

      Because GTK lets you write apps for Linux, Windows and now MacOS X, whereas Aqua is OS X only?

      Also, how are you comparing GTK to Aqua? Looks? Have you got extensive programming experience of both? Or are you just assuming it's worse?

      I think you could make a good case that GTK is superior to Aqua (as a widget toolkit).

      GTK2 is much better than GTK1 bear in mind (I think they ported gtk1). I personally think the most common theme engines look much better than Aqua, because the flat, clean look appeals to me. Seeing screenshots of Aqua apps makes me glad I'm not using it, I mean every effing widget is full of stripey lines: I find it incredibly visually distracting. Of course GTK is natively themable (Aqua is not without some horrid hacks) and has been for some time, so if you must have an Aqua style GUI you can have one, but I much prefer for instance Mist [ximian.com] which is stylish without getting in your way.

      Programming wise, although I don't know much about MacOS coding, I do know that GTK2 has more bindings than Aqua (it's based on object oriented C meaning it's incredibly easy to bind to other languages), can have multiple backends (which is where it gets its display portability from), with the X backend can be network transparent, uses FreeType for superior text antialiasing (OS X has heavier, fuzzier AA at small sizes), has full accessibility support (aqua may have this too, i dunno) and of course is open source (which is why this is possible in the first place).

      So - if you have credible arguments for why Aqua is better as a toolkit than GTK, let's hear them. And no, "I like animated buttons" is not a credible argument, you can have them with GTK too if you write a theme that uses them.

      • Compare helloworld.c from HelloGTK (with the comments stripped out for brevity's sake and massaged to appease the stupid lameness filter [which should ignore stuff inside ecode tags, dammit]) to the equivalent Controller.m from Hello.app, which I wrote in Objective C using the Cocoa API with Project Builder and Interface Builder in about two minutes.

        helloworld.c
        #include "HelloGTK_Prefix.h"

        #include <gtk/gtk.h>

        void hello( GtkWidget *widget, gpointer data )
        {
        g_print ("Hello World\n");
        }

        gint delete_event( GtkWidget *widget, GdkEvent *event, gpointer data )
        {
        g_print ("delete event occurred\n");
        return(TRUE);
        }

        void destroy( GtkWidget *widget, gpointer data )
        {
        gtk_main_quit();
        }

        int main( int argc, char *argv[] )
        {
        GtkWidget *window;
        GtkWidget *button;

        gtk_init(&argc, &argv);

        window = gtk_window_new (GTK_WINDOW_TOPLEVEL);

        gtk_signal_connect (GTK_OBJECT (window), "delete_event", GTK_SIGNAL_FUNC (delete_event), NULL);

        gtk_signal_connect (GTK_OBJECT (window), "destroy", GTK_SIGNAL_FUNC (destroy), NULL);

        gtk_container_set_border_width (GTK_CONTAINER (window), 10);

        button = gtk_button_new_with_label ("Hello World");

        gtk_signal_connect (GTK_OBJECT (button), "clicked", GTK_SIGNAL_FUNC (hello), NULL);

        gtk_signal_connect_object (GTK_OBJECT (button), "clicked", GTK_SIGNAL_FUNC (gtk_widget_destroy), GTK_OBJECT (window));

        gtk_container_add (GTK_CONTAINER (window), button);

        gtk_widget_show (button);

        gtk_widget_show (window);

        gtk_main ();

        return(0);
        }
        Controller.m
        #import "Controller.h"

        @implementation Controller

        - (IBAction)doHelloButtonAction:(id)sender {
        [NSApp terminate:HelloButton];
        }

        @end
        Which API would you rather use?
        • Ahhh, well that's sort of cheating. A better example would be using a high level language [daa.com.au]. That doesn't use Glade (UIs loaded externally). I've written a hello world GTK app in Python that is only 4 lines of code using glade, one of which is loading the file.

          If you're going to compare APIs you should at least make use of the features of each, and use languages of similar levels. No, ObjC is not a low level language either.

          GTK UI construction in C is verbose yeah, but so is anything in C. You can make GTK apps very simply if you use the right bindings and use Glade (equivalent to .nib files), ditto for any part of the GNOME apis. Oh and I'd much rather not use Objective-C for anything, I find it incredibly hard to read, and I know many languages. I'm sure I could learn it if I wanted to, but I don't, language neutral APIs are generally much nicer imho.

          • Oh and I'd much rather not use Objective-C for anything, I find it incredibly hard to read...

            Like Python is easy on the eyes? My kingdom for a damn semicolon! ;-)
            • *chuckle* :) Well, I don't tend to use Python much, Ruby is starting to look good though. A cross between Python, Perl and Smalltalk with gnome2 bindings? Mmm, I think so. But I'll wait until it's more mature (and I actually need it) before playing with it. And with semicolons!
              • Thanks, but no thanks. I'll stick with Objective C. It compiles, so it requires no special run-time environment. It's trivial; there are about five extensions to standard C to learn. Because it's just C with some extras, I can use any C-language code or library with no extra effort. And it's just as easy (easier, even!) to write first-class Aqua UI applications as it would be with Python or Ruby or whatever else.
            • Damn, I know what you mean, I can't stand reading Python!

              I haven't done much Python, but the little I have done sure did drive me nuts. I'd rather write 5x more C code to do the same thing than code in Python.

              Then again, I do more coding in Perl than anything else, so what do I know? ;-)

              BTW, IamTheRealMike is correct, the example you used is absolutely horrible, as you can do GTK with much less code than that. OTOH, the Cocoa API is much, much nicer, even without taking the amount of code into consideration.

          • Oh and I'd much rather not use Objective-C for anything, I find it incredibly hard to read, and I know many languages.


            That's exactly what I thought, until I started using it. The method syntax actually makes it more readable than most other languages. (Ugh, tried to paste examples but the lameness filter doesn't like it).


            language neutral APIs are generally much nicer imho


            You can write Cocoa apps in many languages [fscript.org], including Java, Perl, Python, Ruby, Smalltalk, and Lisp.

        • uh, no. The equivalent to your objective C hello world app would be:
          #include <gtk/gtk.h>

          int main( int argc, char *argv[] ){
          GtkWidget *window, *button;

          gtk_init(&argc, &argv);

          window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
          button = gtk_button_new_with_label ("Hello World");
          gtk_container_add (GTK_CONTAINER (window), button);

          gtk_widget_show_all (window);
          gtk_main ();

          return(0);
          }
          • I'm no GTK expert, but to me it looks like you left out the part where clicking the button causes the program to exit. If I'm reading your program right, all you did was draw a window with a button in it; the button itself doesn't seem to do anything.

            Right?
  • by mustangdavis ( 583344 ) on Tuesday December 31, 2002 @09:50AM (#4987949) Homepage Journal
    This could make The Gimp cozy for MacHeads


    I don't think so!

    Although it is pricey, all the "MacHeads" still are trained on (and prefer) Adobe Photoshop. Unfortunately, that is still a superior product when it comes to image manipulation. Yes, GIMP has come quite a ways (and I use it for personal stuff since Adobe P.S. is so pricey), but it is hard to compete with a product that does such a great job and that has become an industry standard.

    Nice thought, but it ain't gonna happen! Too many graphi designers have spent too many years of their lives learning how to use all of the features of Photoshop .... they're not goning to convert just because GIMP is suddenl available for OSX. If they wanted GIMP, they would have installed Linux on their Mac years ago and used it then.

    Although I think it is great that GTK is now on Mac, I don't think it will change "things" that much ...

    Just my $0.02 cents

    • The funny thing is that everything I ever try to do in Photoshop feels counter-intuitive. Why? Because I learned on the GIMP. It takes me forever to figure out things in Photoshop, whereas in the GIMP, I can get by pretty quickly.
      • by veddermatic ( 143964 ) on Tuesday December 31, 2002 @10:07AM (#4988036) Homepage
        I learned to get across the room by breaking glass on the floor then stripping naked and wrigginlg across it while squeezing lemon juice on my body.

        Every time I try to use my "legs" it seems akward.

        If you like the GIMP, neat, it's dirt cheap, and it does some stuff that PS does.. but boy howdy, comparing GIP to Photoshop is, well, re-read that first part of my post. I'm a professional designer... I looked into the GIMP when I was going ot leave WInderz for Linux.... I gave it plenty of time and effort, but sorry, the GIMP UI was designed by an evil robot who's only job it was to make a horrible UI. =)

        I left Windows tho... Mmm, photoshop on OS X.
        • by Anonymous Coward on Tuesday December 31, 2002 @10:14AM (#4988086)
          For what it's worth, I started on the gimp, and enjoyed it immensely - it was my introduction to graphics in a purely manual sense (as opposed to rendered 3D imagery and the like). I'm glad I came across it when I did. I never saw much reason to bash photoshop at the time, but other linux graphics users seem to have an obsession with bringing down all things PS.

          I used photoshop after nearly 2 years with the gimp, and while it was initially freaky without my familiar tools I was stunned at the power in PS. It feels simpler, looks simpler, hell I feel like I'm doing less 'work' but there's more of me going into an image, than into using the UI. You can count me among the pro-photoshop people, but on the other hand I'll never bash The Gimp for what it is. It does well for when you don't need all of PS, and I can't see everyone needing to do everything PS does. It's one of the few pieces of software worth the price, IMHO
        • I gave it plenty of time and effort, but sorry, the GIMP UI was designed by an evil robot who's only job it was to make a horrible UI. =)

          Unfortunatly, I have to second this. I'm no artist (and being color-blind doesn't help... that's what the picker is for...), but I know how to use the app (Photoshop) quite well. I've tried to do the same thing in Gimp that I can do in Photoshop in seconds, but alas; the Gimp needs a LOT of work in the UI department.

          Sure, yes, The Gimp is just as powerful as Photoshop, there's no arguement there, but the UI is nasty. Just nasty.

          Part of it may be that I'm not the biggest fan of GTK (I'm a KDE user), but just in general I mean this. I like the Gimp and I am really trying to learn it (since I don't have a Win* box worth more than a few bucks around anymore). But damn. I just find it really hard to work with.

          Sure, that could be because I've been using Photoshop since like the 3 versions, but I'm used to learning curves. This one, I'm finding, to be quite steep.

          Maybe it's just me.
    • by BMonger ( 68213 ) on Tuesday December 31, 2002 @10:07AM (#4988035)
      I'm not a graphic design type but I do need a program to use when I am creating web sites... there's not a chance I'm gonna spend $600 or so on PhotoShop when all I have to do is resize and image and maybe a crop or two...

      Right now I use Graphic Convertor because it's cheap ($20) and it's easy to use... but I'd be inclined to install GIMP and use it too if it stopped by OS X...

      A lot of power users probably use Final Cut Pro/DVD Studio Pro too but I bet there is a much much larger market that uses iMovie and iDVD because it's easy and it does what "the common man" needs done... this is the same place where GIMP will prevail.
      • > A lot of power users probably use Final Cut Pro/DVD Studio Pro too but I bet there is a much much larger market that uses iMovie and iDVD because it's easy and it does what "the common man" needs done... this is the same place where GIMP will prevail.

        I don't think that many people are going to find the GIMP much easier to learn than Photoshop. Nor should that be the GIMP team's goal. Their goal so far has been to make the best, most powerfull, image editor possible, not the easiest to use. And that is the only way I'd have it. Though, there are still areas I wish they would work of ease of use.

        Adobe PhotoDelux would be a better equivelent of iMovie and iDVD, but I don't know of any free equivelent.
      • You could get Photoshop Elements. Yeah, it's more expensive than graphic converter, but you get 90% of Photoshop for 15% of the price, and it still beats the pants of GIMP for most stuff :)
    • All the current macheads (if most of my experience with fellow graphic artists is anything to go by) will look at the gimp and go "wtf?". Some will head towards it because it's free, but the biggest benefit will be to future macheads, switchers, and people who haven't yet thrown themselves into graphics. While I prefer photoshop (alright, it's the main reason I use a computer at all), it's all about choice.

      One more tool, with its place.

    • On one level you're right -- Photoshop is in most ways & by most opinions a superior tool compared to the Gimp, and most oldschool Mac users will not be impressed by the Gimp. On the other hand, a lot of newschool Mac users are oldschool Unix users, and a lot of those folks are only passingly interested in creative graphics software. For that segment, noodling around in the Gimp is just fine, and makes far more sense than shelling out a few hundred bucks for the professional grade graphic designers' software. In short, the Mac ecosystem is diverse enough to support both applications just fine.

      More importantly, the real gain here is the GTK+ toolkit, not just the most prominent application written with that toolkit. Being one of those unix/mac users, I'm not particularly interested in the Gimp -- but I'd love to be able to use an Aqua-native version of Gvim every day, and with a native GTK+ port there are now a huge number of other GTK+ apps that can be brought over to OSX without forcing users to set up X11 as well. As another commenter noted, no, these will not really have the right look & feel for OSX -- menus attached to windows instead of the screen border is a mistake here -- but as a bridge framework for bringing graphical Unix software to the Mac, this is far better than having to run X11 alongside Aqua.

      • ...and to be honest, I should have mentioned that there is already an Aqua port of Vim [swdev.org] (currently version 6.1.184, runs on all versions of OSX). So just to head off the person that will inevitably point that out that Vim has been ported to a more or less Aqua-native form (menus on the screen border, not on the windows, etc), I realize that wasn't such a great example -- I just couldn't think of a better one at the time :-)
        • I find that the filters in GIMP are a little different than the Photoshop versions, and can be used to give a different feel to a project. To me GIMP is a utility. Still PS is the way to go.

          A native port of GIMP will push development, as more Mac users try it.

    • I agree that many MacHeads prefer Photoshop because they know it. I also agree that it has many more features. In fact, Photoshop has really become a mix of graphic design, web design, and image manipulation tools.

      But that merely makes it different from the Gimp, not necessarily superior to it. For the specific purpose of digital photography and image manipulation, the Gimp is excellent, and its user interface works very well.

      In any case, I do agree that there isn't much point in porting the Gimp to OSX. People buy Macs because they want to run commercial software and because they want a certain "look". Anybody who wants to run the Gimp would get a much faster machine and a much more consistent GUI for less money by running it on a PC running Linux.

    • However, new people might learn the gimp that would have otherwise just pirated Photoshop.

      Also, FilmGimp does things well that photoshop does badly, like handling video and 16bit images. Sure, photoshop does 16bit, except that, to my understanding, a lot of features disappear, and not just from among the third party plugins.

      Most dedicated Photoshop users probably won't switch soon, but maybe they find reasons to use Gimp anyway (the gimp seems like it is well on its way to being better for scripting, but I could be wrong), and there are many people who find photoshop to be the wrong tool.
  • SOMEONE PORT THE DAMN THING!!!

    I'd do it myself, but I'm a loser arty-farty type =)
  • by sheriff_p ( 138609 ) on Tuesday December 31, 2002 @09:54AM (#4987971)
    This is probably a stupid question, but:

    There are programs like FreeCIV that use GTK. How long until I can natively compile FreeCIV, or some other arbitary *nix program on OS X, without needing an X server?
  • by ewwhite ( 533880 ) on Tuesday December 31, 2002 @10:00AM (#4987998) Homepage
    How will this affect those of us with existing XFree86 and Fink applications [djedwhite.com]? I currently use Gnome and Gtk for my X applications... is this an entirely-standalone product, or could it possibly integrate well with an existing Gtk install?
  • by lpontiac ( 173839 ) on Tuesday December 31, 2002 @10:12AM (#4988064)

    I've been looking into cross platform toolkits myself recently. A major issue where the Mac is concerned is that it's not just the look, it's the feel; there are lots of nuances that will annoy Mac users if you don't get them right.

    The screenshot shows a menu bar at the top of the Othello window, which breaks the most obvious rule of all - Mac app windows don't have a menu bar on them, instead there's a single menu bar up the top which changes depending upon the focus.

    There's some specific gotchas in the wxWindows wiki, here [wxwindows.org].

    Don't get me wrong, the GTK port is an achievement and I'm sure it will be very useful to a lot of people. But we'll never get to the point where someone can produce a decent Mac app by taking their Unix sources and recompiling.

  • First, I want to give a big thanks to the developers who made this happen. Very cool stuff, and very useful.

    Second, does anyone know if PyTK (The Python TK stuff.) is going to be ported? Imagine being able to toss together a Python/TK app together that could run on OS X without X! Very cool stuff!
    • Apple already ported Tk, although I haven't been able to get it to work. And the OS ships with python. So, if you have better luck than I've had with Tk, you should have no problem.
    • What about this? [slashdot.org].

      I know, not cross-platform, but the goodness of python in Cocoa...

      As to the original story, I see the value as a porting mechanism of 'legacy' applications, but I fear that it will become a crutch for those who would otherwise provide a native Cocoa port. XDarwin already makes a lot of projects view a native Cocoa port as not absolutely necessary and not worth the effort. I would agree.... IF XDarwin was hardware accelerated, and worked perfectly consistantly in rootless mode, but neither is the case, even with OrborosX..
  • by BigSven ( 57510 ) on Tuesday December 31, 2002 @10:21AM (#4988127) Homepage
    The article doesn't mention much about the technical details and does not even tell us which version of GTK+ this port is based on. Unfortunately it seems to be a port of the older GTK+ version 1.2. This is a surprising at first glance since the 2.0 version of GTK+ is much better prepared for different rendering backends (and comes with GDK versions for Win32, linux-fb and DirectFB). Since this port is closely related to FilmGimp, which is unfortunately still dealing with the outdated 1.2 version, this choice becomes clear. Hopefully this project will soon lead to a GTK+-2.x port or Mac users will have to deal with outdated and mostly unmaintained GTK+ applications.
  • This is really good news for gtk i think, especially since qt have offered a mac (and windows) support for a while. When I first moved to Linux developing, from MFC, i picked Qt because:

    A. I like C++ better than C(Qt is native C++ as opposed to the wrappers of gtk)

    B. It offered better platform flexibility (I like the fact that its possible to port a interface to OSX relatively easy, since i plan of getting myself a OSX box in the near future)

    I dont think im the only one who feels this way, wanting to be able to port to other platforms easily. Hopefully this will eventually help making more apps NOT rely to much on Gnome/KDE, and more on the toolkits(gtk+/qt). Which would be great, since it would make it easier to run ONLY the WM you perfer, and still get to run most apps.

    For me personally, it would mean i could just install KDE, and only gtk instead of the entire gnome WM(to make sure i can run all gnome apps). For enlightenment users, it would mean ever better news i guess.

    Just imagine if everybody would just use GTK+ or Qt exclusively to make their apps, it would just make everything so much simpler.

    Lets all hope this helps in making the apps more WM independent in general.

    AND HAPPY NEW YEAR =D
    • A. I like C++ better than C(Qt is native C++ as opposed to the wrappers of gtk)

      Well, I'm not a C++ coder but from what I've read gtkmm is more C++ish than Qt, because Qt has to run on all sorts of wierdo platforms throughout its history and as such redefines basic standardised classes in the name of portability (QString etc). It also requires preprocessors etc. GTKmm on the other hand is more "native C++" than Qt is. But I haven't used either.

      B. It offered better platform flexibility (I like the fact that its possible to port a interface to OSX relatively easy, since i plan of getting myself a OSX box in the near future)

      Only if you buy a developer license (>$1k). The X11 edition is GPLd, the others are commercial. So, if you want to write cross platform non-GPLd software, you'd better have deep pockets. Of course, Qt has better docs than GTK and you pay for support also. But bear that in mind.

      For me personally, it would mean i could just install KDE, and only gtk instead of the entire gnome WM(to make sure i can run all gnome apps). For enlightenment users, it would mean ever better news i guess.

      Well, I think you're a bit confused here. All you need are the GNOME libs, which are just like any other libs. Saying apps should only use the widget toolkit is a bit odd, why not use more powerful features available in other libs? If you want to run GNOME apps on another platform, just port the gnome libs - they aren't hard to port, it's just nobody cares enough to do it. Also, what libs an app uses has no effect on what WMs it runs in. You can run gnome/kde apps in E just fine.

      AND HAPPY NEW YEAR =D

      And a happy new year to you too :)

    • For me personally, it would mean i could just install KDE, and only gtk instead of the entire gnome WM(to make sure i can run all gnome apps). For enlightenment users, it would mean ever better news i guess.

      Some would say the same things about KDE. I'd like to just install the basic libs without installing the WM and everything else. Both suffer from the same problems. I wish they'd both take all their packages and split them but then we wouldn't be forced to install 100 programs when we install kde-libs, kde-base, gnome-base or gnome-libs. Especailly when you only want one or two parts of each.
  • what about adobe (Score:3, Interesting)

    by digitalsushi ( 137809 ) <slashdot@digitalsushi.com> on Tuesday December 31, 2002 @10:38AM (#4988226) Journal
    I wonder what Adobe's take on this is, with the GIMP on the horizon? I wonder what percentage of Photoshop installations are legal viewed from both PC and Mac perspectives. Anyone know that stat, roughly? Course it's a hard number to calculate.
  • Don't think Gimp. (Score:4, Insightful)

    by IGnatius T Foobar ( 4328 ) on Tuesday December 31, 2002 @11:47AM (#4988780) Homepage Journal
    Don't think Gimp. Think OpenOffice. Think Mozilla. Think apps that people actually want on the Mac. I've believed for a long time that Apple should be pushing really hard to make these two applications not only available, but downright pervasive on the Mac. This will eliminate Apple's indentured servitude to Microsoft and allow them to push forward in any direction they like without Microsoft threatening to pull the plug on Office (and to a lesser extent, IE) every time Apple tiptoes in a direction that offends Bill's delicate sensibilities.

    Native GTK for Mac OS is a good way to kickstart apps like Moz and OO on the platform without requiring XFree86 to be installed first (which works wonderfully, but is a bit too hackish for nontechnical Mac users). Then Apple and others can begin working on making the integration more and more native-looking.
    • Apple won't publicly, directly support these moves because it still has to talk and negotiate with M$. At the same time, they must be happy that these apps are moving forward, but without needing their direct support. These open apps are a percieved threat to M$ across several platforms, so Apple gets a little leverage with M$ (because cutting Office for Mac is less of a doomsday scenario), without being 'one of the bad guys.' Also, don't forget that Apple has it's own competing product to OpenOffice - AppleWorks.

      Regarding Apple's homegrown browser, I would guess that it will just drive M$ to make IE for Windows even less stnadards compliant, forcing web developers to follow, and making IE on Windows the only way to reliably interact with lots more web sites.

    • Re:Don't think Gimp. (Score:2, Interesting)

      by marmoset ( 3738 )
      I'm not trying to be a smartass here, but there's already a very advanced Mac build of Mozilla (utilizing a Carbon front end), not to mention a pretty darned great Gecko-based browser, Chimera, using a Cocoa front-end. What could a GTK-based Mozilla offer Apple or Mac users that those two aren't already doing?
  • If Apple wanted support for regular UNIX GUIs, they would integrate XDarwin into OSX--it could be done more easily and more transparently than Carbon or Java are integrated right now.

    Apple wants people to port their applications to Cocoa. That's the only kind of GUI they want on OSX. They have said so. I think it's stupid. I think it makes OSX pretty unattractive for UNIX workstation users. But it's Apple's wish, and it's Apple strategy. I don't see any point in fighting it, and I don't see any point for open source efforts to waste any time on doing something Apple doesn't want in the first place.

    For me, it means that I'm going to continue to use my Mac mostly as a decorative jukebox, and my Linux machine to replace my UNIX workstation.

    • Excuse me, but I don't give a shit what Apple wants or doesn't want me to be able to run on their hardware. I'd like to run some GTK-based applications natively under Aqua without having to run a second window manager that happens to be resource intensive and buggy-as-hell along side it. Apparently a lot of other people want to as well.

      This has nothing at all to do with "support for regular UNIX GUIs", it's about expanding support for the Aqua GUI. It's about making X11 less necessary, not making it more necessary.

      I don't care what you do with your Mac, or your Linux machine. Neither does anyone else in here. If you want to waste the electricity and processor on a jukebox, well, you go for it.
      • Excuse me, but I don't give a shit what Apple wants or doesn't want me to be able to run on their hardware.

        Well, you should, because ultimately, Apple does control what does and doesn't run there.

        it's about expanding support for the Aqua GUI.

        The Gtk+ port does not use the Aqua GUI, it uses the regular Gtk+ rendering and primitives. It's not much different from running Gtk+ under XDarwin.

        I don't care what you do with your Mac, or your Linux machine.

        Well, perhaps you should. The fewer people buy and use Macs, the more trouble Apple is in. And if the open source community doesn't bother with supporting ports of open source software to the Mac anymore, you won't be getting much open source software anymore either.

        • But if open source software people hurt apple by not supporting ports to the mac, and apple goes out of business, where are open source people going to steal all their ideas for themes from?

        • Well, you should, because ultimately, Apple does control what does and doesn't run there.

          Actually, no. They control what does or does not run under their operating system. I run Linux on an older iMac. People (for some reason I can't fathom) run Linux on newer machines that run OS X fine. Hell, Apple even helped support one of the older linux-for-macs distributions. In the end, what you use it for doesn't matter a whole lot to them, they just make the hardware. Yeah, they'll happily sell you other stuff if you want it, but they're not (yet) about stopping you from doing anything with it. (No, the iDVD thing isn't about hardware, the person in question was altering iDVD, an Apple piece of software)

          It's not much different from running Gtk+ under XDarwin.

          Actually, it's very different. I don't need to hog system resources running two window managers. I don't care if the applications don't follow the Apple spec for GUI design on a Mac. If that's what I wanted, what makes you think I'd even be bothering with GTK+ at all?

          Well, perhaps you should.

          Perhaps I shouldn't.

          The fewer people buy and use Macs, the more trouble Apple is in.

          I could get into the idiotic rumors of Apple's demise, but they've been gone over and over. The computer manufacturing industry is faltering all over. Apple isn't alone, no matter how you might wish it to be.

          And if the open source community doesn't bother with supporting ports of open source software to the Mac anymore, you won't be getting much open source software anymore either.

          This is the same "open source community" that ports things to the Amiga, BeOS, Irix, praises someone like Stallman for a "revolutionary operating system" that's more vaporware than half of the dead dotcoms? And there's supposed to be some way for you to stop people from porting things to a PPC architecture and Darwin when someone gets a bug up their ass about it later?

          I would consider myself unconcerned... =)
    • But Apple doesn't fight this. You think they don't want this? What color is the sky on your planet? This means more apps on Quartz for OSX. Yeah right, they don't want it...
      • This means more apps on Quartz for OSX. Yeah right, they don't want it...

        Yes, they don't want this [apple.com]. Gtk+OSX applications are not Macintosh native, and they are not consistent.

        Of course, since Apple can't easily stop this, they'll still be happy to count the application when making claims about how much software OSX supports.

    • Apple wants people to port their applications to Cocoa. That's the only kind of GUI they want on OSX.


      True, and false. Apple emphasizes Cocoa and doesn't provide a built-in X server, but that doesn't mean they're hostile to the concept of running X apps. They even link [apple.com] to the XFree86 Darwin port.


      I don't see any point in fighting it, and I don't see any point for open source efforts to waste any time on doing something Apple doesn't want in the first place.


      There's nothing to fight, and even if there were, Apple doesn't control what software you run. By that reasoning developing Mozilla for Windows is pointless since Microsoft doesn't like it.

  • This has been wanted for a long time. It is a true sign that OSX is becoming a mainstream Unix and, despite all the complaining about GTK, it says a lot about the flexibility of the design. The obvious problems such as menu bars will eventually be overcome and I'm sure that the GIMP will get ported to GTK+2 some time.

    Good on the people that did all the hard work and thanks.
  • Blech (Score:2, Interesting)

    by Dr. Sp0ng ( 24354 )
    If you'll excuse me, I have some things to get off my chest.

    Christ, I just don't understand you people sometimes. You pay good money for a Mac and a copy of OS X, and then you cheer for a half-assed port of GTK+, the most horrible toolkit ever conceived? I mean, come on, at least put the fucking menubar on top of the screen where it belongs!

    I'm not a Mac zealot. I love my Mac, but I'm also a fan of Windows XP (from a useability, if not technological, standpoint), and have been using Linux since before the kernel hit the big 1.0 (although, since the train wreck that has been kernel 2.4 hit the world, I've moved everything important over to FreeBSD). I spent years championing free software, but one can only take so much of "that'll be fixed soon, we promise," before the idea of a free desktop stops being attractive.

    I cannot stand to use a GTK+-based application without cringing - applying a skin-deep theme doesn't fix the useability and design problems, which go straight to the core (granted, a lot of this stems from the "evil robot" UI designer another posted in this thread pointed out, and there's not much a toolkit can do about that, but the problem seems worse for most GTK+ apps than, say, Qt). GTK+ apps, without a SINGLE EXCEPTION that I have seen, just scream "AMATEUR!" The GIMP is the only GTK+ application I have seen which comes even close to feeling professional, and it's still got a long way to go. Qt apps are much better in the respect, and that probably stems from the fact that programmers who use Qt (at least in the context of KDE applications) tend to pay more attention to KDE's UI guidelines than GTK+ programmers do to Gnome's guidelines. But they both have the same problem in the end - without somebody to have the final say in the user interface area, a coherent desktop is impossible, because anybody who has other ideas is free to implement them. That may work fine in other areas of software development (and indeed, has, as free software spanks the competition in most other areas), but on the desktop, it just can't fly.

    I, for one, will stay the hell away from this port, even if they fix the menubar issues and make a convincing Aqua theme (which, to this point, has not been done by anybody, so I'm not counting on colorblind, aesthetically-challenged free software types to pull it off). Even if the widgets manage to blend in with the native ones, GTK+ applications will always stick out like a sore thumb. The Mac interface is about much more than blue, pulsating buttons - interfaces are DESIGNED, not HACKED TOGETHER.

    The only thing this port will be good for is a temporary stepping stone from X11 to Aqua - and not a very good one, at that. I wish free software people would drop GTK+ for a more reasonable toolkit, like Qt, which doesn't actively try to drive the programmer to drink. The best case would be if the GNUStep people would 1) finish up their god damned project, and 2) make it less ugly. That way native OS X applications could be written the way God intended (in Cocoa), and easily ported to other operating systems. As the author of several programs using GTK+, Qt, and Cocoa, I can honestly say that I would sooner work for minimum wage flipping burgers at McDonalds than ever write another line of code using GTK+. Qt is decent, and Cocoa is by far the best. But GTK+... ugh, there is just not a single redeeming feature to this entire toolkit.

    Then again, I'm even picky when it comes to Carbon vs. Cocoa - even Carbon applications don't feel right on OS X (especially the Carbon port of Vim, which makes me cry). Give me native Cocoa apps, or give me death.
    • GTK+ is not the worst. In fact, with gtkmm or PyGtk, it is quite palleteable. I would say gtkmm and qt are on equal footing.

      As far as UI design is concerned, it really reflects the different design goals of GTK+ versus Apple APIs. GTK+ strives to provide maximal flexibility. Let the developer chose however he wants to design the app and provide some way to implement it. Flys in the face of consistancy, but there is a reason. Apple kills flexibility to enforce consistancy. Though I respect both goals, and think GTK+OSX is a REALLY good step for providing ports of complex apps quickly versus XDarwin, I agree that developers should consider how badly GTK+ apps will stick out like a sore thumb in OSX. They can work to make some widgets more seamless (i.e. menubar, button appearance, etc.), but others will always stand out (detachable handleboxes, for example. They can be quite useful (on multi-head configurations), but I don't think they are anywhere to be found in OSX).
  • the reason people will stick to photoshop is color. Gimp is good for rgb and greyscale, but is useless for print, which needs cmyk color. Not all jobs use cmyk, but why use 2 environments? Photoshop does all color as LAB then converts to the selected color mode. Gimp just doesn't compare to photoshop in the use of color.

    Film Gimp, however, could give photoshop a kick in the nards. Recently used in Scooby Doo, it's 16 bit per channel in RGB designed specifically for motion picture retouching and rotoscoping. Photoshop just doesn't have the capabilities film gimp has when it comes to these. The RGB only flaw is not as big a problem in film and video.
  • I've opened the pbproj files and clicked the Build button, which seemingly compiled and built stuff into the Frameworks folder. Not knowing what was supposed to happen, I copied the resultant gdk.framework and gtk.framework folders to /Library/Frameworks ...glib-1.2.10 installed like any other UNIX library.

    Okay so now how do I compile typical UNIX gtk+ apps against this new "aqua-compatible" GTK? I tried compiling the nessus-core --enable-gtk but it's looking for the binaries gtk-config, etc! Project Builder didn't install such binaries into /usr/local/bin ... wtf?

    I guess what I'm asking is how do I take a generic gtk app from source (like nessus) and build it using the gtk-osx libraries/frameworks instead of regular gtk (which I would normally do via Fink)?

news: gotcha

Working...