Hey guys. I thought I would make this blog post to make a point: GNUstep is not OpenStep. GNUstep is a Cocoa implementation and has been for quite some time. I'm concerned that every so often in books or on blogs I see "GNUstep is an OpenStep implementation for Linux." This statement is blatantly wrong in two different capacites: 1) GNUstep is Cocoa and 2) GNUstep works on Linux, Solaris, BSD, Windows, etc.
Let's also address a few other misconceptions. GNUstep has been used to port a number of applications to Windows and Linux without any issues. So when people say "GNUstep is incomplete" they, honestly, don't really know what they're talking about. In most cases, GNUstep will contain whatever you need and, if it's not there then, for goodness sake, do the thing that supposed to be done in Free Software... implement it and contribute the code to us.
I'm beginning to wonder why so many people have trouble with this very simple concept. Please, people, stop spreading misinformation about GNUstep. GNUstep is not OpenStep, OpenStep is a dead standard. GNUstep is [an attempt to implement a Free Software version of] Cocoa. While GNUstep does retain some of the OpenStep methods which are useful, it is a Cocoa implementation at this point in time and I'm really tired of correcting people on this point.
Mostly Apple, GNUstep and stuff about me personally. I'm the Chief Maintainer for the GNUstep project.
Tuesday, November 16, 2010
Tuesday, August 10, 2010
GNUstep Development Visualization using Gource :)
I've just used gource to produce several videos to show GNUstep's development over the years. I've only done the parts of GNUstep which reside under core and, of course, Gorm.
Special thanks to Andy Ruder for setting up his GNUstep git repositories at gitweb.aeruder.net. :) Without these I would have had to suffer through the pain of importing GNUstep into git from SVN, not a painless operation. ;)
Hopefully, you'll see some familiar names from the past and present.
NOTE: I suggest viewing these in 720p (HD) as that will make the information easier to make out.
Here is Base:
Here is GUI:
Here is Back:
Here is Make:
Here is Gorm:
The command I used to make these was this (using gnustep-back as an example):
gource -s 0.01 --stop-at-end --highlight-all-users gnustep-back --output-ppm-stream - | ffmpeg -b 3000K -f image2pipe -vcodec ppm -i - ./gnustep-back.mp4
I was able to download gource using Mac Ports and also got ffmpeg from the same place and installed it on my MacBook. I also have gource built on my Linux box as well and it should work the same there for anyone who wants to give it a try. :)
Special thanks to Andy Ruder for setting up his GNUstep git repositories at gitweb.aeruder.net. :) Without these I would have had to suffer through the pain of importing GNUstep into git from SVN, not a painless operation. ;)
Hopefully, you'll see some familiar names from the past and present.
NOTE: I suggest viewing these in 720p (HD) as that will make the information easier to make out.
Here is Base:
Here is GUI:
Here is Back:
Here is Make:
Here is Gorm:
The command I used to make these was this (using gnustep-back as an example):
gource -s 0.01 --stop-at-end --highlight-all-users gnustep-back --output-ppm-stream - | ffmpeg -b 3000K -f image2pipe -vcodec ppm -i - ./gnustep-back.mp4
I was able to download gource using Mac Ports and also got ffmpeg from the same place and installed it on my MacBook. I also have gource built on my Linux box as well and it should work the same there for anyone who wants to give it a try. :)
Thursday, July 01, 2010
Analysis of the Bilski case
It's unfortunate that SCOTUS has ruled as it has on In Re: Bilski since this was a landmark opportunity to strike down the patentability of software. Instead they bowed to business as usual and decided to preserve the patentability of software, so our fight goes on with respect to fighting this.
http://www.patentlyo.com/patent/2010/06/bilski-v-kappos-business-methods-out-software-still-patentable.html
While it does seem to make software harder to patent, it doesn't go far enough and it seems to be too little too late. More on this is here:
http://www.lexology.com/library/detail.aspx?g=0a681b87-8340-4759-8de9-1dd495a405e7
http://www.groklaw.net/article.php?story=20100628100422167
This is a frustrating day for me and many others, since it seems to make very little change to the status quo. As others have said, this is a "no-op" and we're back to where we were before Bilski was even started.
http://www.patentlyo.com/patent/2010/06/bilski-v-kappos-business-methods-out-software-still-patentable.html
While it does seem to make software harder to patent, it doesn't go far enough and it seems to be too little too late. More on this is here:
http://www.lexology.com/library/detail.aspx?g=0a681b87-8340-4759-8de9-1dd495a405e7
http://www.groklaw.net/article.php?story=20100628100422167
This is a frustrating day for me and many others, since it seems to make very little change to the status quo. As others have said, this is a "no-op" and we're back to where we were before Bilski was even started.
Tuesday, June 29, 2010
Spam on my blog.... changing to members only for now...
I've recently been getting a lot of spam on my site, so I'm changing it so that only members can make comments. I apologize for any inconvenience.
Sunday, May 16, 2010
Progress on Plans for Change...
The old blog post is here. Even though it's been four years, I'm happy with where things are at the moment. Over the past few years the following things from that list have been accomplished:
1) Adopt a more modern look. This includes the look of the windows, the color scheme and how the menus are rendered. It's okay to let that old gui go, it's not going to kill you to do so. ;) Users like things to look "good". This is entirely subjective. Personally, I think GNOME and KDE are quite ugly under the best of circumstances. To this end, we need to make integrated theming available in GNUstep and make it easy.
This has been accomplished by the Etoile folks without question. But my blog post was meant to push the project itself to adopt a more modern looking GUI. So far we haven't done that yet, but the mechanisms are in place now to do it. The theming engine is now much more capable than it was before and should be able to allow the creation of some killer themes.
2) Make regular releases. Start courting different distributions to include GNUstep in their package set. Start getting the word out. Start making sure that people KNOW that GNUstep is alive and well. This, I believe, is the main reason why people have the perception that GNUstep is dead. We don't push ourselves hard enough and into enough distributions to be visible enough for people to care.
Given that our last release was last year and it's now the middle of 2010, we've still got a long way to go on this one too. This release, however, was a big one since it included a lot of functionality, not the least of which is the theme engine I mentioned above.
3) Eliminate the need for GNUstep.sh, either by making GNUstep place it's binaries and libraries in more "standard" places, or by providing an installation procedure
We have a GNUstep.conf file in /etc/GNUstep which environment variables get read from.
4) Start appealing more to the Mac OS X/Cocoa crowd. While some people disagree with me, I believe that this group IS the group we need to be playing towards. In the past some have advocated that GNUstep be an "OPENSTEP-like" or a "Cocoa-like" environment. While I don't believe that GNUstep should necessarily follow all of the design decisions Apple has made, I believe that it should implement all of the classes which are useful and which are being commonly used in spite of whether or not people personally agree with having that class in GNUstep or not. A good, and recent, example of this is NSToolbar. It's not about us, remember, it's about them... the users and developers USING GNUstep. We are here to make life easier for our users not to make GNUstep into the epitome of "perfect design" by excluding classes we personally don't like. This is not productive and, not to mention, highly subjective.
This has happened. More free software and proprietary projects are starting to take notice of GNUstep and it's helped improve GNUstep since contributions have been made to the project which have increased stability, performance and efficiency for all concerned.
5) Focus and concentrate on one and only one set of display technologies per platform. We expend way too much time and energy on maintaining mulitple backends (xlib, art and etc) when we really don't have to. For Linux/BSD we have two functional backends and another on the away for cairo. What's the point of this? In my opinion we should complete the cairo backend and deprecate BOTH the xlib and art backends. xlib is hopelessly outdated and libart isn't really supported by anyone anymore.
This has happened just recently with Fred's recent change making Cairo the default backend. Cairo provides the ability for us to really forget about writing another graphical backend for any operating system that Cairo supports which takes an ENORMOUS burden off of the project and allows us to leverage the work done by the Cairo project.
6) Decide what we are. Yes, that's right. Some people view GNUstep as a desktop, others view GNUstep as a development environment. GNUstep needs to define itself as one or the other. The website says it's a development environment, but it has many aspects which fit the definition of a desktop environment. In truth, I believe it should be both.
This has happened and has worked out pretty well. GNUstep has defined itself as a development environment. GNUstep is what powers a desktop environment whether that is Etoile or just WindowMaker with GWorkspace.
7) Make GNUstep friendly with other environments like GNOME, KDE, Windows and etc. Make sure that GNUstep functions sanely in these environments. This might mean that we need to have behaviors for each different environment. How to implement this is unclear, but it's something that I believe would make the user experience better overall.
The recent theming capability has accomplished this. :)
I believe we should commit ourselves to getting the rest of these tasks completed. They should all help GNUstep move forward. Right now stability, and more applications are key for the project.
Tuesday, May 04, 2010
An Artist's Concept of GNUstep's redesigned UI

A few years back Jesse Ross came up with this concept for a new look for GNUstep.
I'm wondering if there are any ideas/looks/concepts we can glean from this which might be of use. I have always liked the general look of it.
One person I talked to about it suggested being able to "dock" the menu bar. That is... attach it to a particular place on the screen, such as the border or something so that it could act like the menu bar on OS X, if we really wanted it to. Interesting thoughts. :)
Saturday, April 24, 2010
A little fun with SIMH and OpenVMS
VAX/VMS has always been interesting to me. I'm currently a member of the OpenVMS Hobbyist program, so I have a copy of OpenVMS 7.3/VAX.I decided to run it on SIMH which is an excellent collection of software aimed at preserving computer history through virtualization of obsolete machines.
I must admit that, for me, VMS brings about a bit of nostalgia, since it's where I cut my teeth. Some of the first systems I was ever lucky enough to play with when I was young were VMS systems and it inspired me to learn more and more about software and computers in general.
What I did here uses the latest version of SIMH built for PPC. You'll need to change SIMH a little in order to get it to build on the Mac, the instructions are here. Also, you'll need to follow Phil Wherry's excellent guide on getting VMS installed in the first place, that's here. And, finally, you'll need to get DECWindows installed, that information is provided here.
Information about the VMS Hobbyist program is available from HP and from this site. The only issue I found was that it takes a while to actually get the software since they want to first make certain that you have the membership so that you will not use the copy of VMS that they send for commercial purposes. :)
A fair amount of free and open source software is available for OpenVMS. I'm currently working on installing the latest version of GCC for VAX on my virtual VAX here.
GC
Monday, April 19, 2010
Here's Toetag. Another example of portability. :)
Here's "Toetag." It's an open source Quake level editor being ported by Eric W.As you can see he's been able to make a fair amount of progress in a number of things. The NSStepper/NSStepperCell for instance has been improved as well as Font display among other things.
Here's the original website here.
More to come... :)
Friday, April 09, 2010
TestPlant announces eggPlant for Windows based on GNUstep...
Please see the following link for the official announcement. Last year TestPlant released their application for Linux based on GNUstep on that platform as well.
GC
Tuesday, March 16, 2010
Wednesday, March 10, 2010
Sunday, January 24, 2010
Friday, January 15, 2010
Saturday, January 09, 2010
Wednesday, December 16, 2009
Windows Theming Progress
Wednesday, November 25, 2009
New Theming Capabilities...
Currently there is work progressing on themes on GNUstep... here are the links for that:
GNOME Native themes:
http://stashbox.org/693247/Bildschirmfoto.png
http://stashbox.org/693249/Bildschirmfoto-1.png
http://stashbox.org/705472/Bildschirmfoto.png
We also have a native theme working on Windows. I will have a picture of that soon as well. For now the code is in the repository in the plugins section.
One thing this post doesn't show is the in-windows menus which we already have implemented. Those combined with this should give the user a totally native experience with GNUstep.
Here is the code for the gtk theme:
http://github.com/hansfbaier/gnustep-gnome
GNOME Native themes:
http://stashbox.org/693247/
http://stashbox.org/693249/
http://stashbox.org/705472/
We also have a native theme working on Windows. I will have a picture of that soon as well. For now the code is in the repository in the plugins section.
One thing this post doesn't show is the in-windows menus which we already have implemented. Those combined with this should give the user a totally native experience with GNUstep.
Here is the code for the gtk theme:
http://github.com/hansfbaier/
Tuesday, November 24, 2009
The Right Choice
Here is a post about a guy trying to read webloc files on Windows. Guess which environment he chooses? ;)
http://sunflower.coleharbour.ca/cocoamondo/2009/11/opening-a-webloc-file-in-windows/
http://sunflower.coleharbour.ca/cocoamondo/2009/11/opening-a-webloc-file-in-windows/
Saturday, July 25, 2009
New Debian maintainer needed for GNUstep
All, recently our maintainer for Debian had to resign. Thank you, Hubert, for the many years you've given us.
This means that we are now seeking a maintainer for the Debian packages. I can't stress how important this is, since it means that, unless we can find one, we will no longer be distributed with Debian and Ubuntu and other Debian related distributions.
If you are interested in doing this, please contact me at greg.casamento@gmail.com.
This means that we are now seeking a maintainer for the Debian packages. I can't stress how important this is, since it means that, unless we can find one, we will no longer be distributed with Debian and Ubuntu and other Debian related distributions.
If you are interested in doing this, please contact me at greg.casamento@gmail.com.
Tuesday, April 21, 2009
NEWS: eggPlant application by TestPlant, LLC ported to Linux using GNUstep...
All,
After months of work, I'm pleased to announce that eggPlant, a product of TestPlant, has been successfully ported to Linux using GNUstep. All of the relavent improvements to GNUstep have been contributed back to the project and have already started to benefit the community as a whole.
TestPlant was formerly RedStone, Inc. You can visit their site at:
http://www.testplant.com.
As many of you may or may not know I've been working with projects, individuals and companies which use Cocoa to help them get onto Linux and all of the other platforms we support by assisting them in porting their applications to GNUstep.
It's important to remember that GNUstep is, first and foremost, a development environment in it's own right. Just as important, however, is the fact that GNUstep can be also used to port complex applications over to Linux and other platforms from Cocoa.
Helping companies such as this has two beneficial effects on our community... it encourages participation from developers since they can see it's being used and maintained actively and it also, through their participation, allows them to contribute code back to us that ultimately benefits the entire community.
Thanks, GC
After months of work, I'm pleased to announce that eggPlant, a product of TestPlant, has been successfully ported to Linux using GNUstep. All of the relavent improvements to GNUstep have been contributed back to the project and have already started to benefit the community as a whole.
TestPlant was formerly RedStone, Inc. You can visit their site at:
http://www.testplant.com.
As many of you may or may not know I've been working with projects, individuals and companies which use Cocoa to help them get onto Linux and all of the other platforms we support by assisting them in porting their applications to GNUstep.
It's important to remember that GNUstep is, first and foremost, a development environment in it's own right. Just as important, however, is the fact that GNUstep can be also used to port complex applications over to Linux and other platforms from Cocoa.
Helping companies such as this has two beneficial effects on our community... it encourages participation from developers since they can see it's being used and maintained actively and it also, through their participation, allows them to contribute code back to us that ultimately benefits the entire community.
Thanks, GC
Monday, February 23, 2009
SCALE Progress Report
Well, SCALE is over and I can only say that it was great. :) I got to meet Scott Christley and I also got to meet the WindowMaker team. They're all awesome people.
SCALE is a large conference. There were a couple of thousand people there. We had about 150 people take fliers from our booth and ask about GNUstep and we did get some of the "So, when are you guys putting out the next version of WindowMaker" questions. :) I told those people about what GNUstep was and sent them to our friends at booth #37, which was the WindowMaker team.
I tried to emphasize a few things with the people who came by:
Most hard core developers knew who we were right off the bat, some people still had us confused with WindowMaker, but fixing that just took some explaining. Just the simple act of being here was worth it just to educate people and to make them aware of what's going on with GNUstep.
I was also approached by someone from the LinuxFund who is intersted in helping us to reach 1.0 and wants us to keep in touch with them.
We ended the first day by having dinner with the WindowMaker team: John, Erin and Kevin. We discussed the possibilities of more cooperation between GNUstep and WindowMaker, specifically getting rid of WiNGS in WindowMaker and replacing it with GNUstep.
I also got to meet Randal Schwartz (author of a number of perl books and host on FLOSS Weekly). The night before the conference I saw this:

I told him (jokingly) that I was tempted to make a post called "I can has Randal's 3G?" but I resisted the temptation. ;)
The second day of the conference wasn't nearly as busy as the first. Sunday seems to be a lot slower than Saturday at these things.
All in all, I think the simple act of being there was a good thing for GNUstep. I'm definitely planning on going to SCALE next year and, if possible, other conferences which I can easily make it to in the future. :)
SCALE is a large conference. There were a couple of thousand people there. We had about 150 people take fliers from our booth and ask about GNUstep and we did get some of the "So, when are you guys putting out the next version of WindowMaker" questions. :) I told those people about what GNUstep was and sent them to our friends at booth #37, which was the WindowMaker team.
I tried to emphasize a few things with the people who came by:
- We're still alive and active
- We're, first and foremost a cross-platform development evironment
- We are following the Cocoa changes when we can and trying to maintain source compatibility with Cocoa and OpenStep.
Most hard core developers knew who we were right off the bat, some people still had us confused with WindowMaker, but fixing that just took some explaining. Just the simple act of being here was worth it just to educate people and to make them aware of what's going on with GNUstep.
I was also approached by someone from the LinuxFund who is intersted in helping us to reach 1.0 and wants us to keep in touch with them.
We ended the first day by having dinner with the WindowMaker team: John, Erin and Kevin. We discussed the possibilities of more cooperation between GNUstep and WindowMaker, specifically getting rid of WiNGS in WindowMaker and replacing it with GNUstep.
I also got to meet Randal Schwartz (author of a number of perl books and host on FLOSS Weekly). The night before the conference I saw this:

I told him (jokingly) that I was tempted to make a post called "I can has Randal's 3G?" but I resisted the temptation. ;)
The second day of the conference wasn't nearly as busy as the first. Sunday seems to be a lot slower than Saturday at these things.
All in all, I think the simple act of being there was a good thing for GNUstep. I'm definitely planning on going to SCALE next year and, if possible, other conferences which I can easily make it to in the future. :)
Subscribe to:
Posts (Atom)
Swift->ObjC interop
Some interesting notes. I will update this posting as i find more: * https://dart.dev/guides/libraries/objective-c-interop
-
Are we really going to fall for it again?
-
As the much villified theme for star trek enterprise says "its been a long road getting from there to here" i am almost done with ...
-
As announced on their blog and on WWDC, Swift 2.0 will be going open source: https://developer.apple.com/swift/blog/?id=29 GNUstep will ...






