1GNUstep(7)                   GNUstep System Manual                  GNUstep(7)
2
3
4

NAME

6       GNUstep - A free implementation of the OpenStep standard
7
8

DESCRIPTION

10       GNUstep  provides  an Object-Oriented application development framework
11       and toolset for use on a wide variety of computer  platforms.   GNUstep
12       is  based on the original OpenStep specification provided by NeXT, Inc.
13       (now Apple).
14
15       GNUstep is written in Objective-C, an object-oriented superset of the C
16       programming  language, similar to SmallTalk. However there exist a num‐
17       ber of brigdes and interfaces to develop GNUstep programs  using  other
18       languages like JAVA or Ruby.
19
20       The  GNUstep  core  system  consists  of the following parts, which are
21       jointly refered to as gnustep-core :
22
23       gnustep-make
24              A set of scripts and makefiles that heavily  ease  the  creation
25              and maintenance of software projects.
26
27       gnustep-base
28              The  FoundationKit  libraries for non-GUI tools providing every‐
29              thing from string and array classes, filemanager classes to dis‐
30              tributed objects.
31
32       gnustep-gui
33              The  ApplicationKit  containing  widgets,  workspace classes and
34              means for applications to interact with the user.  This  is  the
35              frontend of GNUstep's GUI part.
36
37       gnustep-back
38              This  is the backend of GNUstep's GUI part which does the actual
39              rendering and  event  handling.  It  acts  as  a  layer  between
40              gnustep-gui and the operating/drawing system. Backends exist for
41              X11 (one using cairo, one using libart, one using xlib  drawing)
42              and win32.
43
44       Apart  from  the  above,  there exist a number of addon libraries, like
45       Renaissance which allows developers to specify  an  application's  user
46       interface  in  xml.  For  database  access, there is GDL2 - the GNUstep
47       Database Library. Please refer to the GNUstep website for more informa‐
48       tion.
49
50       GNUstep  per  default  is  self-contained.  That means that all GNUstep
51       applications, tools, libraries  and  add-ons  are  installed  into  the
52       GNUstep  directory  hierarchy.  However  as of gnustep-make-2.0.0 it is
53       also possible to install everything in compliance with other filesystem
54       hierarchies.  See the FilesystemLayouts directory in the source package
55       of gnustep-make for more information.
56
57       There are four domains which are searched for files: the System domain,
58       which should only contain the core system files, the Local domain which
59       stores all that has later been installed on  the  system,  the  Network
60       domain  which  should  be used for importing data from a remote system,
61       and the User domain which resides in the user's home directory  (mostly
62       ~/GNUstep).
63
64       A  complete  description  of the default GNUstep layout can be found in
65       the filesystem.pdf.
66
67
68   TOOLS AND APPLICATIONS
69       In the world of GNUstep the term tool refers to command  line  programs
70       whereas  applications are fully fledged GUI programs.  Naturally, tools
71       reside in the domains' Tools folder, applications can be found  in  the
72       domains' Applications folder.
73
74       Applications  are either launched using the openapp command or from the
75       Workspace.
76
77
78   SERVICES
79       In GNUstep applications globally offer functionality to other  applica‐
80       tions  through services.  They can be reached through the Services menu
81       entry in an application's main menu. Apart  from  services  offered  by
82       applications,  there may be programs whose sole purpose is the offering
83       of services. They can be found in the domains' Libary/Services folders.
84
85       The make_services tool makes sure  the  services  are  known  to  other
86       applications when a application is newly installed.
87
88
89   BUNDLES
90       A  bundle is a collection of resources making up a discrete package for
91       use. There are currently three types of bundles:  applications,  frame‐
92       works and loadable bundles.
93
94       A loadable bundle is a kind of plug-in. There are two types of loadable
95       bundles, namely plug-ins and palettes. The plug-in is noramlly  refered
96       to  as a bundle, which can make it a bit confusing. A plug-in is a bun‐
97       dle that can be loaded by an application to  provide  additional  func‐
98       tionality,  while  a  palette  is  a  plug-in  for  GORM, the interface
99       builder. A palette is used to extend GORM with custom UI objects.  Pal‐
100       ettes have a .palette extension.
101
102
103   THE WORKSPACE
104       The  central  place of the user interface is the Workspace or Workspace
105       Manager which acts as an interface between the user and  parts  of  the
106       system  like files, processes, etc. The GWorkspace application provides
107       this functionality in GNUstep. See  the  GWorkspace  website  for  more
108       details.
109
110
111   DEVELOPER APPLICATIONS
112       What  would  a  development  environment be without the applications to
113       create applications? The applications provided  by  GNUstep  for  Rapid
114       Application Developement are:
115
116       GORM   GORM  is the interface modeler. With GORM you can quickly create
117              the graphical interface of your application.
118
119       Project Center
120              Project Center is the program where you can  develop  your  pro‐
121              gram.  It  offers  you  automatic  generation  of GNUmakefiles ,
122              project maintenance and of course a code editor.
123
124

SEE ALSO

126       gcc(1), gdnc(1), gdomap(8), gopen(1), gpbs(1), make(1), openapp(1)
127
128       GNUstep Websites:
129
130       http://www.gnustep.org/
131              Official GNUstep website
132
133       http://wiki.gnustep.org/
134              GNUstep Wiki (lots of useful information)
135
136       http://savannah.gnu.org/projects/gnustep/
137              GNUstep Project Page
138
139       http://gnustep.made-it.com/
140              GNUstep Documentation Library
141
142       http://www.collaboration-world.com
143              Collaboration World, the home of GNUmail
144
145       http://www.gnustep.it/
146              The home of GWorkspace, JIGS, Renaissance and programming  tuto‐
147              rials.
148
149       Mailinglists
150
151       http://www.gnustep.org/information/gethelp.html
152              Mailing lists and mailing list archives.
153
154       IRC
155
156       #GNUstep on FreeNode
157              You  are  invited  to  join the #GNUstep IRC channel on FreeNode
158              (irc.freenode.net).
159

HISTORY

161       GNUstep was at first a collaboration of two  projects  that  wanted  to
162       create  a single GNUstep project that complied to the OpenStep specifi‐
163       cation provided by NeXT Computer, Inc. and SunSoft, Inc. Development of
164       this joint effort started around 1993-1994. For a more detailed history
165       description see the GNUstep Documentation Library referenced in the SEE
166       ALSO section.
167
168       GNUstep is developed and maintained by a large number of people. Please
169       see <http://www.gnustep.org/developers/whoiswho.html> for a list.
170
171

AUTHORS

173       This man-page was first written by Martin Brecher <martin@mb-itconsult‐
174       ing.com> in august of 2003.
175
176       In  December  2007 it was expanded by Dennis Leeuw <dleeuw@made-it.com>
177       and made to comply with the gnustep-make-2.0.x releases.
178
179
180
181gnustep-core                      15/12/2007                        GNUstep(7)
Impressum