* Most of the best ideas ([http://www.mozilla.org/projects/camino/ Camino] and [http://www.apple.com/safari/ Apple's Safari]) rely on Objective-C++ support that wasn't available with the stock GCC until the 4.1 snapshots.

+

* Work is on the way to bring [[SimpleWebKit]], a small WebKit compatible library up to working condition. [[SimpleWebKit]] is part of the GNUstep project and can be found in the SVN. This library will allow the creation of a simple web browser, such as [[Vespucci.app]].

-

* Stefan began porting [http://mac.wms-network.de/gnustep/WebCore/blog/ Webcore to GNUstep] by splitting the Objective-C++ code into C++ and Objective-C modules. Unfortunately, while it can render pages using an (old) version of WebCore, it still lacks a significant amount of implementation before it could actually be the GNUstep WebKit.

+

* The WebKit project has also offered their support to anyone who wishes to port WebKit to GNUstep, [http://lists.gnu.org/archive/html/discuss-gnustep/2007-03/msg00290.html see this e-mail]. This framework would allow the creation of a fully functional web browser.

-

+

-

* [[User:Geocar]] worked on Stefan's code for a bit to get something that looked like this:

+

-

[[Image:webkit-on-gnustep.png]]

+

-

before deciding to try using the new Objective-C++ compiler in GCC. Will note how this all turns out :)

+

-

+

-

* I could port [http://ibn.com/~hdiwan/orchidWeb.html OrchidWeb] to GNUStep. I'd just need enough examples on developing the views from code to do it.

+

-

+

-

* Apparently, [http://www.caminobrowser.org/ Camino] is written in Objective-C++, which GCC can't compile (although Apple is supposed to have contibuted the patch). Until gcc can compile mixed obj-c and c++, it can't be ported. There is a thread about this at [http://linuxfr.org/2003/03/10/11647.html] (it's in french).

+

+

=== Web services app ===

+

A [http://www.karelia.com/developer/watson/ Watson] / Sherlock clone would be useful to me.

=== Video conferencing software ===

=== Video conferencing software ===

-

There's [http://www.gnomemeeting.org/ Gnomemeeting] (excellent piece of software), but I don't like Gnome too much (all those dependencies).

+

There's [http://www.gnomemeeting.org/ Ekiga] (excellent piece of software) which it no longer dependent on the GNOME libraries to work but looses some functionality.

-

+

* Would be nice to have a GNUstep native application that could use the same protocols (SIP and H.323).

-

Update: Gnomemeeting 0.9.6 is supposed to work without Gnome libs (limited functionality).

I want a better Keychain. I need an architecture and app to securely store not just usernames and passwords, but also other useful data. Think associated email / verification method, SSH passwords and keys, email public and private keys, and user-defined name-value pairs (for unforeseen uses, this facilitates micro-formats, like a standard for voicemail PIN etc). And a pony!

+

+

Apple indicates that their KeyChain is derived from the open-source Common Data Security Architecture, so such a project would not have to start from scratch. I'm unsure how useful the third-party open-source [http://sourceforge.net/projects/keychain Keychain Framework] would be.

+

+

''The above mentioned keychain on SourceForge depends on Apple's own 'Security' framework. I'm not sure how much of it is publicly available (and if so, portable)'' -- cbv

== Text Processing / Office ==

== Text Processing / Office ==

-

=== Abiword (Word Processor) ===

+

=== Word Processor ===

A port of the Cocoa version of [http://www.abisource.com/ AbiWord] would be great, considering a word processor is a pretty vital application, and that Abiword is a pretty good one.

A port of the Cocoa version of [http://www.abisource.com/ AbiWord] would be great, considering a word processor is a pretty vital application, and that Abiword is a pretty good one.

+

+

Porting Bean from the Macintosh 10.4 is currently done in the [[GAP]] GNUstep application project. It mostly works and the build is done using [[pbxbuild]], but no release to the general public yet.

=== Spreadsheet ===

=== Spreadsheet ===

A spreadsheet application would be great for GNUstep. A clone of Lotus Improv or Lighthouse Design's Parasheet would be a nice thing for GNUstep to have.

A spreadsheet application would be great for GNUstep. A clone of Lotus Improv or Lighthouse Design's Parasheet would be a nice thing for GNUstep to have.

+

+

: You could look at porting [http://www.materialarts.com/FlexiSheet/ FlexiSheet]; it's the only Cocoa FOSS spreadsheet I know of. Coincidentally, it has a couple of ideas borrowed from Lotus Improv.

+

+

There has been recent progress for a FlexiSheet revival. GNUmakefiles are done. The current application is in [[GAP]] cvs, no release yet to the general public.

=== CSS/html editor ===

=== CSS/html editor ===

Line 163:

Line 170:

''This might actually be feasible, however, Nexus is based on [http://www.w3.org/Library/ libwww] and its source is, well, very NeXTSTEP'ish...'' -- cbv

''This might actually be feasible, however, Nexus is based on [http://www.w3.org/Library/ libwww] and its source is, well, very NeXTSTEP'ish...'' -- cbv

-

-

=== A text editor ===

-

-

A simple text editor that can read and write plain or rich text, including both simple word processing functionality (nothing too splashy, like frames) and optional programming features (like syntax highlighting -- not just coloring; controllable tabs; tab v. space indentation, multiple language support). Programming features could be provided by a bundle, but it would be good to for the app to be designed with that bundle in mind.

-

-

This editor which is to guarantee me world domination includes a split view where the other pane locates and displays the corresponding end-tag/start-tag when programming.

-

-

Ink is not that editor. :)

-

-

[http://www.softpanorama.org/Editors/index.shtml Softpanorama] seems to give a good overview of editors

-

-

''We have to distinguish between a text editor as programming tool (CodeEditor.app) and a text editor as a word processor (WordProcessor.app?). '' They are two different approaches to text editing and text processing.

-

-

Source code editing view and associated inspector panels and preferences should be provided as a framework, so the SourceView should be reused in other apps. CodeEditor should be only some default wrapper for that framework.

Database

Database management

A desktop software (like PgAccess for example) to manage database. This program could use the GDL2 (Gnustep Database Library). It could be a good exercice and demonstration of this very good library.

Development

Project Management app

Something like MrProject. It has to be simple, not overbloated as MS Project.

nib2gmodel/nib2gorm without OPENSTEP/MacOSX

GORM can open NIB files created with MacOSX 10.2 and later. OPENSTEP/MacOSX is still needed for older NIB files.

CVS app

Port CVL.

F-Script

F-Script is useful for examining applications' properties and various Objective-C objects. It's FOSS, but I don't think there's a GNUstep port yet.

this is highly dependent on the objc-runtime

ManOpen

[1] Source is available and even an OpenSTEP variant. But not GNUstep.

Graphics

Blender

Blender has recently (since October 2002) gone GPL. Consisting of porting the Blender GUI/WM abstract library GHOST, using NSOpenGLContext, or a CoreGraphics implementation one day. Objective-C++ might be needed for implementing GHOST, but probably can be worked around easily enough. There is an OSX port, probably using CoreGraphics.

Painting app (photoshop)

Something usable - can do Photoshop, but easy to learn. The Gimp can nearly do photoshop, but who can use it?

It would be great if it consisted of two parts - a very small very useful image viewer/manager (eg gqview) and the actual editor plugin (the big part). So installing image-core would give a very small useful app, then adding image-edit would make it into photoshop.

When opening an image file eg by clicking on it or running image-core thefile.jpg then only the core apps should start, so it starts real quick. If i right-click and choose edit or something .. THEN the other stuff is pulled in.

Or whatever. Just an idea. But makes development path cool. Could also have a vector plugin, or whatever.

Maybe we should wait, when (if?) Gimp gets 'gegl'ed.
then having a decent photoshop like app would be as simple as writing a gui for the gegl foundation.
+ gives us a nice featureset + plugins!

Maliwan project is aiming to achieve the same goal of GEGL. Right now GEGL isn't even half complete but we can still reimplement it base on GEGL's design. lastlife is waiting for you in irc if you want to discuss the idea. Maliwan is planned to be the heart of the BluTulip which is the actual application.

porting http://seashore.sourceforge.net/ from their website: Seashore is an open source image editor for Cocoa. It features gradients, textures and anti-aliasing for both text and brush strokes. It supports multiple layers and alpha channel editing. It is based around the GIMP's technology and uses the same native file format.

MultiMedia

iTunes/Rhythmbox clone

It would be nice to see a music or video player with real music/media management like Rhythmbox or iTunes. iTunes has started to support management of movies and videoclips, so maybe media management is the way to go?

DivX/XViD/DVD/VCD Player

I see that there was at least an attempt to port mplayer at one point but it seems to be dead. Maybe VLC which does have an OSX version, could be ported.

Networking

ICQ

Web browser

Seems to be a popular request :).

Work is on the way to bring SimpleWebKit, a small WebKit compatible library up to working condition. SimpleWebKit is part of the GNUstep project and can be found in the SVN. This library will allow the creation of a simple web browser, such as Vespucci.app.

The WebKit project has also offered their support to anyone who wishes to port WebKit to GNUstep, see this e-mail. This framework would allow the creation of a fully functional web browser.

PIM

Task management app

Security

Keychain

I want a better Keychain. I need an architecture and app to securely store not just usernames and passwords, but also other useful data. Think associated email / verification method, SSH passwords and keys, email public and private keys, and user-defined name-value pairs (for unforeseen uses, this facilitates micro-formats, like a standard for voicemail PIN etc). And a pony!

Apple indicates that their KeyChain is derived from the open-source Common Data Security Architecture, so such a project would not have to start from scratch. I'm unsure how useful the third-party open-source Keychain Framework would be.

The above mentioned keychain on SourceForge depends on Apple's own 'Security' framework. I'm not sure how much of it is publicly available (and if so, portable) -- cbv

Text Processing / Office

Word Processor

A port of the Cocoa version of AbiWord would be great, considering a word processor is a pretty vital application, and that Abiword is a pretty good one.

Porting Bean from the Macintosh 10.4 is currently done in the GAP GNUstep application project. It mostly works and the build is done using pbxbuild, but no release to the general public yet.

Spreadsheet

A spreadsheet application would be great for GNUstep. A clone of Lotus Improv or Lighthouse Design's Parasheet would be a nice thing for GNUstep to have.

You could look at porting FlexiSheet; it's the only Cocoa FOSS spreadsheet I know of. Coincidentally, it has a couple of ideas borrowed from Lotus Improv.

There has been recent progress for a FlexiSheet revival. GNUmakefiles are done. The current application is in GAP cvs, no release yet to the general public.

This might actually be feasible, however, Nexus is based on libwww and its source is, well, very NeXTSTEP'ish... -- cbv

A simple DTP application

A simple frame-based application for desktop publishing. Something like Calamus (here is the documentation of tools and modules). Nothing fancy, just application that can lay out frames, control text flow, use paragraph styles and master pages.

I'd rather see TeXView.app come back myself.... I think it's far more feasible (doing a decent page layout app is _hard_ just as Donald E. Knuth). Perhaps better still would be to take advantage of LyX's ``GUI-independence and provide a GNUstep front-end for it, http://www.lyx.org .

No, nothing like LyX or TeX. I have in mind a visual page layout editing tool with features as described above (similar to PageMaker). LyX and TeX are a bit different approaches and should be alternatives to Frame based DTP application.

- Stefan

I think a heavy-weight drawing package w/ page layout features would be a better solution here (this is the workflow I'm using on my NeXT Cube now), then it could be tied into an XML-based workflow in a fashion like to Apple's new Keynote, perhaps in a fashion like to Pages-by-Pages. To describe my workflow a bit---I now use Altsys Virtuoso on my NeXT Cube w/ Omega (Unicode-aware TeX variant) for most of my page layout. IME, if a document gets too large to manage w/ Altsys Virtuoso, it might as well go into TeX... Not that I'd mind seeing a replacement for PasteUp.app, I just think that a drawing program is more immediately important / useful.

For simple DTP utility, I'd dearly love to see a re-creation of TouchType.app

- William

Maybe you should take a look at TeXmacs. Looks promising and is in great need of a GNUstep frontend.

- david.

Interesting. I'd seen TeXMacs mentioned on comp.text.tex quite often, but hadn't realized it had gotten as far as it had. Interesting counterpoint to LyX.

- William

One really interesting thing would be to have a fame class which would useful enough so it could be used to put together a simple DTP Application but which would be flexible enough that it could be available to any application - the text control is a standard control for windows managers like MS Windows or Gnome. If there were an equivalent "flowing graphic control", you'd have a powerful building block indeed (note that in MS windows, the text control is actually poor enough that no credible application can built around besides notepad).
Also, for a programming text editor, scintilla is great. One thing to consider is that for DTP/HTML editor, what you would want would be a *superset* of the scintilla interface. It would be great to add all the different features in such a way that you didn't have interfaces duplicating each other's functionalities.

-- JosephSolbrig

Digital Librarian-like

I would really, really like a Digital Librarian for GNUstep. Basically, imagine an application that manage your documents the same way iTunes manage your music or iPhoto your photos... (to take well-known OSX apps as example ;-)

It would provide 1) automatic management of the documents by projects/ideas/whatever metadata 2) index your documents to let you search quickly in it 3) handles bibliography
As a postgrad student I have a LOT of articles in PDF/PS/DVI/html on my hard drive, and such an application would be really nice to help managing that.

PfaEdit - A font editor

Actually, Cenon (see above) is able to do some limited font editing. Not to knock pfaedit, I use it a lot and think it's a way cool program. Wonder if the two could be merged somehow.

GuileServices / StepTalk Services

On NeXTSTEP there was an application (service?) called TickleServices that allowed you to write your own services in the Tcl language. Something along these lines, but using guile/steptalk would be a nice addition to gnustep.

Printer.app

An application/framework for managing printers, printer properties and print queues. (CUPS frontend?) (NOTE: To an extent, GNUstep already has CUPS support, and has number of builtin classes and panels for managing printers and printer settings. They may just need to be extended a little for different uses and environments.)

Growl! (Global notification system)

Growl! uses distributed notification center to display a graphic message on screen. Every application can send messages to it, for example, when new emails arrive, buddies sign in the instant messager, a task end, etc. It is very easy to implement.