Slashdot Mirror


The NeXT-Best Thing: GNUSTEP 0.9.4 Live CD

roard writes "Following the NeXT tradition with mixed case, GNUSTEP is a live CD/distribution while GNUstep is an implementation of the OpenStep API. GNUSTEP is based on Morphix, and uses the GNUstep libraries and GNUstep-based applications to provide a NeXTSTEP-like environment that people can easily test and use. This new 0.9.4 release comes 8 months since the precedent 0.5 release, and brings a lot of new GNUstep applications with it, as well as an upgrade of the GNUstep libraries and the development tools. In other news, a small demonstration of GNUstep development tools is available in Flash or divx. The old dream of having a GNU OS with Hurd and an OpenStep implementation doesn't seems that far now ;)"

28 of 444 comments (clear)

  1. video by va3atc · · Score: 2, Informative

    is not divx, its mpeg(1 or 2, haven't finished downloading yet)

    --
    Candle burns its brightest in the dark
    1. Re:video by Wordsmith · · Score: 5, Informative

      It's a codec that might be contained within avi files, or wmv files, or mov files. MPG files are explicitly mpegs.

      Now, to make it even more fun. divx is an implimentation of mpeg-4. So even through it's not an mpeg1 or mpeg2 file, in a sense, it's still an mpeg file.

    2. Re:video by SharpFang · · Score: 2, Informative

      And to make things even more fun, this file is an .avi containing divx mis-named as .mpg

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
  2. GNUstep works on hurd by Anonymous Coward · · Score: 3, Informative

    with a really small patch to libobjc,
    available in a gcc/libobjc bug report.

  3. GNU's not Unix - but it is, apparently, Mac OS X by 1010011010 · · Score: 4, Informative


    Microkernel, unix-like userspace, Nextstep-based application development?

    Right here.

    --
    Napster-to-go says "Fill and refill your compatible MP3 player", which is a lie. It's not MP3. It's WMA with DRM.
  4. Re:Hurd? by Pflipp · · Score: 4, Informative

    Like Hurd was the perceived GNU kernel, GNUstep was the perceived GNU GUI.

    --
    "We can confirm that Debian does *not* ship the version with the trojan horse. Our version predates it." [CA-2002-28]
  5. Re:Have fun, nerds! by JessLeah · · Score: 1, Informative

    Off topic? It was an ON-TOPIC response to a troll. It was also meant as humorous. As in, us geeks don't even know how to say "Super Bowl". Ha ha, very funny.

    Why are the mods here obsessed with downmodding things?

  6. Re:Hurd? by TheRaven64 · · Score: 5, Informative
    GNUstep, like HURD, is a GNU project that has been going on for ages (it predates KDE and GNOME), without appearing to get close to completion. Unlike KDE or GNOME, which can incrementally add and deprecate features and APIs (potentially ending up with the same mess of legacy interfaces that plagues Windows), GNUstep is implementing the OPENSTEP API, jointly developed by NeXT and Sun. This meant that it was not particularly usable until it was about 90% done. This happened in the last year or so which, combined with the introduction of OPENSTEP into the mainstream in the form of Cocoa on OS X, lead to an increase in interest in GNUstep.

    The relevance to HURD is tenuous, but I recall Roard mentioning recently that he had seen a demo of a GNUstep desktop running on top of HURD, giving a 100% GNU desktop. Perhaps this is what he was referring to. It doesn't bring HURD any close to release, but when HURD is ready (Real Soon Now(TM)), it is likely that there will be a GNUstep desktop waiting for it. If only the GCC developers would commit Objective-C++ to the main tree and let is have a WebKit-based browser...

    --
    I am TheRaven on Soylent News
  7. ISO download sites by tarzeau · · Score: 5, Informative
    --
    Windoze not found: (C)heer, (P)arty or (D)ance
  8. Re:Nice Demo by TheRaven64 · · Score: 4, Informative

    Actually, that's not the cool thing. The cools thing is that the simple app with two lines of code implements the Model-Controller-View pattern. This means that this development approach is 100% scalable to large projects. Oh, and the fact that the output from GORM is a set of serialised objects, so you can instantiate them from the code with the same ease that you would create an object from within your code (particularly useful in document based applications where you'd want to create a large number of identical document views connected to different models).

    --
    I am TheRaven on Soylent News
  9. Made with ibuild by eburner · · Score: 3, Informative

    I just wanted to note that this was created based on morphix using a tool called ibuild that eases creation of Linux LiveCDs.

  10. Developlment IDE by jd142 · · Score: 2, Informative

    Wow, I really appreciate the Borland/Delphi/Kylix/C++ Builder/JBuilder IDE now. Even the VB ide was easier to build a gui app in.

  11. Re:Plus it isn't open source. by Leo+McGarry · · Score: 1, Informative

    Although OSX is very cool (I've got a mac mini, love it to death) it actually does have a few viruses

    Um? Like which ones, for instance? (The answer is, there are none.)

    There aren't any lawsuits over who owns the linux code.

    Okay, that's just not so. Linux is positively buried in litigation.

    otherwise it doesn't matter because it's GPL'd

    It does matter, because if the people who released the code actually stole the code, then it should be obvious that they have no right to try to saddle the code with a proprietary license. Or to do anything else with it, for that matter.

    You might not like the fact that Linux is under litigation, or you might expect the litigation to end in a settlement or be dismissed, but that doesn't change the fact that Linux is in the courts right now.

  12. Re:Hurd? by Master+Bait · · Score: 2, Informative

    If only the GCC developers would commit Objective-C++ to the main tree and let is have a WebKit-based browser...

    Ironic state of things, considering that the very first web browser was written for OpenStep in Objective C.
    --
    "Only in their dreams can men truly be free 'twas always thus, and always thus will be."
    --Tom Schulman
  13. Re:This Should Be THE Desktop Environment for Linu by RevAaron · · Score: 2, Informative

    GNUmail.app is one app that runs on both OS X and GNUstep. I've seen a small handful of others. However, there are some hurdles in porting an OS X app to GNUstep- if you use any Quartz compositing, it just won't work, for one. Or if you use any Carbon convenience functions, or any number of other non-OpenStep APIs that exist within OS X.

    But you are quite right in the last part. No way will your average Linux h4ck3r drop C/C++ and go to ObjC. A shame, as ObjC is a lot nicer, but it just won't happen.

    --

    Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
  14. There ARE no viruses. by GFLPraxis · · Score: 3, Informative

    Opener, to name one. ASTrojan to name abother. Why is there OSX antivirus software? (Which I'll admit is useless, because viruses aren't a real threat on OSX, even if they exist)

    Trojan /= Virus. Look it up.

    There are two trojans and NO VIRUSES. Opener does NOT self replicate, nor does it use any vulnerabilities (you have to deliberately execute it and then type in your password for it to install itself). Therefore it is NOT a virus.

    And there are many OS 9 viruses, and Word Macro viruses (not a threat to OS X, but a thread to your Word documents), which explains the OS X antivirus software.

    But the fact remains, there are no viruses. There is only two trojans, both of which require you to install them yourself.

  15. Re:Nice Demo by TheRaven64 · · Score: 3, Informative

    GNUstep is a set of libraries that run on almost anything (Windows, most flavours of *NIX including OS X, Solaris and *BSD. Oh, and Linux). The files created by GORM are just a description of how to instantiate a set of objects, and connections between them. They will work on any platform GNUstep works on. Currently, they are not compatible with OS X, unless you install GNUstep on OS X (and then you won't get the native look). Any GNUstep code that doesn't use GNUstep-specific extensions (i.e. anything that starts with GS instead of NS) will work on OS X natively (you may need to include different headers, but that's about it), but you will have to re-do anything you did in GORM in Interface Builder. A port of GORM to OS X to eliminate this restriction is underway, but not ready yet.

    --
    I am TheRaven on Soylent News
  16. Re:One STeP Beyond by BlueGecko · · Score: 2, Informative
    Is there any way to draw flowchart-style graphical indicators between object interface GUI representations?
    That's what you do on OS X, but NeXT (and now Apple) have a patent on that implementation. GNUstep tries to circumvent it by using the small "s" and "t" circles (for "source" and "target") that you see in the video.
    And any way to drag/drop primitives like the "*" and "=" operators into scopes of objects, much like drag/dropping the GUI textfields into their group?
    I'm not quite sure what you mean here. When the mouse creates connections between the controller and the view, it sets up bindings that ensure that the text view is equivalent to a variable in the controller. If you want a specific instance variable (ivar) to be updated based on the contents of a text field, you can do that on Cocoa, and will probably be able to do it at some point on GNUstep as well, but that's not currently available (so far as I know). If you mean you want the actual calculation to be creatable by a GUI, I would argue that there are too few instances when such formulae would be reasonable to make that worthwhile. It's really only one line of code as-is, anyway.
    Finally, does it run on Linux ;)?
    I think you're joking, but yes. GNUstep fills the same role as Gtk+GNOME or Qt+KDE, and runs on just about any POSIX system. FoundationKit (the non-GUI pieces) run very well on Windows and are usable for production, while AppKit (the graphical pieces) are quite solid on most Unices and getting there on Windows.
  17. Re:wHy WaS NeXT nAmED LiKE ThAT aNyHoW? by BlueGecko · · Score: 5, Informative

    NeXT has that capitalization because the original NeXT logo had that capitalization. It had that capitalization because the artist wanted to emphasize several adjectives that started with e (I don't remember them at this point, but they were words such as excellent, extendable, educational, and so on) so he made the e lowercase.

    NEXTSTEP the operating system is and always has been all caps. OPENSTEP the operating system has also always been all caps. OpenStep the API specification is capitalized in camel case, and I'm not going to touch NeXT's computers, because I always get them wrong.

  18. Re:One STeP Beyond by BlueGecko · · Score: 2, Informative

    If you really want to, you can program the GUI entirely from source code. You can see an example of how to do that in the old GNUstep tutorials that date from before Gorm (in particular, take a look at Your First Steps in GNUstep GUI Programming Part 1 and Part 2). That said, I have no idea why you'd want to do this. Gorm's interfaces are just XML files, and are therefore still fully modifyable from text. If you want something more human-readable, take a look at Renaissance.

  19. Re:Seeing the trees, but missing the forest... by TheRaven64 · · Score: 3, Informative
    Now that GNUStep is getting really close to being complete, I hope they look at Cairo as a base for doing something similar to Quartz.

    The GNUstep GUI components are in two models, a front, which talks to the program, and a back, which talks to the windowing system. Under X11, there is an xlib backend (which looks hideous) and a libart backend which looks a whole lot nicer. Additionally, work us underway to produce an OpenGL backend, which will almost certainly be faster than using OpenGL via a layer of indirection like Cairo.

    --
    I am TheRaven on Soylent News
  20. Re:wHy WaS NeXT nAmED LiKE ThAT aNyHoW? by Jeremy+Erwin · · Score: 2, Informative
    NeXT is an attempt to render a logo in ASCII. Most of us are stuck with dreary typefaces that don't include a full height 'e', so it looks rather odd. The 'e' supposedly stands for a variety of words: "education", "exponent"...

    The logo was designed by Paul Rand, who designed logos for UPS, IBM, and British Petroleum, among others.

    The persistent use inter-capitalization (NextCube, OpenStep, AppKit) probably derives from too much exposure to the NextStep api and Objective C-- both of which use inter-capitalization to enhance the readability of code.

    e.g the class NSBezierPath implements the method
    - (void)appendBezierPathWithArcFromPoint: (NSPoint)fromPoint toPoint: (NSPoint)toPoint radius: (float)radius
  21. Re:yeah... but it looks like its from the 80s by linguae · · Score: 4, Informative

    I agree, too. Judging by the screenshots, the Mac OS X port looks very attractive and, to my knowledge, follows the Apple Human Interface Guidelines completely. Heck, it looks just as good as the Mail.app bundled with Mac OS X. The GNUstep version, on the other hand, doesn't look as attractive. Assuming that GNUstep applications follow the design of NEXTSTEP applications, it needs some work. The toolbar should look like buttons, not like an Internet Explorer 3.0-esque design. I also don't really like the arrangement of some of the widgets.

    This is an example of the NEXTSTEP Mail.app program. You can see that the GNUMail.app application got many parts right, but its interface still needs some cleaning up to do.

  22. Re:Interesting how this post appears.... by HeghmoH · · Score: 3, Informative

    C and C++ are unique in the world of Cocoa as being extremely popular languages that don't have a bridge to Objective-C. Most popular languages out there are dynamic enough that writing a bridge isn't too hard, so you can access Cocoa or GNUSTEP from Python, Perl, Lisp, etc., but C and C++ aren't. Of course it doesn't matter for C, because it's a proper subset of Objective-C and you can just write a bit of glue code.

    C++, however, is not a proper subset of Objective-C and you can't mix the two. That means that you have to drop down to the least common denominator, C, and write a bunch of glue between the two which makes for a royal pain in doing any integration.

    Apple solves this with Objective-C++, which lets you mix the two, but for now it's an Apple-only language.

    --
    Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
  23. Re:WINGZ !!! by delirium+of+disorder · · Score: 2, Informative

    This should help you out.
    http://ceu.fi.udc.es/SAL/G/4/WINGZ.html

    --
    ------ Take away the right to say fuck and you take away the right to say fuck the government.
  24. Re:Looks neat, but... by roard · · Score: 3, Informative

    Firstly, please, please update the look-and-feel

    Like I said in a previous comment, I'm working on Camaelon 2, a pixmap theme engine that lets you have pretty things.. it should be officially released before the end of this month (it already works, I just want to clean up things).

    I didn't see any support for layout management in Gorm

    Well, I didn't show that part, but that works exactly in Gorm like on InterfaceBuilder on OSX (and imho it's a better model most of the time than the springs). So of course you can have resizable widgets. In addition, GNUstep implements a couple of widgets implemeting the spring resizing model (that's used by Renaissance by the way, an XML framework for describing UI for GNUstep...), so if you *really* want the spring model, you can use it.

  25. Re:Hurd? by zsau · · Score: 2, Informative

    Not at all. Objective C++ and Objective C are two different languages. ObjC is a version of C with minimal additions to make it a great object-oriented programming language. ObjC++ is ObjC combined with C++ in the same source code.

    Standard GCC can compile ObjC just fine. But because most major gui free webbrowsers (Mozilla and Konq at least) are written in C++, the only ways to write an OpenStep webbrowser are with ObjC++ or by rewriting the entire engine.

    --
    Look out!
  26. Re:Hurd? by jcr · · Score: 2, Informative

    Guess again.

    Prebinding (not pre-linking, as you're mistakenly referring to it) is compeletly orthgonal to the use or non-use of dynamic method dispatching.

    Prebinding is all about speeding up application launch times, by doing certain symbol mapping work up front. This is about resolving external references in your code, such as functions and global data provided by the system frameworks.

    The prebinding operation after performing a system update on OS X is time consuming, because the update_prebinding script checks all the apps on your system to see if they were affected by changes to the frameworks. The redo_prebinding operation on any particular executable doesn't take very long, and it's time saved on every subsequent launch of that program.

    -jcr

    --
    The only title of honor that a tyrant can grant is "Enemy of the State."