diff --git a/pkgs/development/libraries/gnustep-back/default.nix b/pkgs/development/libraries/gnustep/back/default.nix similarity index 85% rename from pkgs/development/libraries/gnustep-back/default.nix rename to pkgs/development/libraries/gnustep/back/default.nix index bb504642f3c..9bad56a747a 100644 --- a/pkgs/development/libraries/gnustep-back/default.nix +++ b/pkgs/development/libraries/gnustep/back/default.nix @@ -1,7 +1,7 @@ { gsmakeDerivation , cairo , fetchurl -, gnustep_base, gnustep_gui +, base, gui , xlibs , x11 , freetype @@ -17,7 +17,7 @@ gsmakeDerivation { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-0.24.0.tar.gz"; sha256 = "0qixbilkkrqxrhhj9hnp7ygd5gs23b3qbbgk3gaxj73d0xqfvhjz"; }; - buildInputs = [ cairo gnustep_base gnustep_gui freetype pkgconfig x11 ]; + buildInputs = [ cairo base gui freetype pkgconfig x11 ]; meta = { description = "GNUstep-back is a generic backend for GNUstep."; diff --git a/pkgs/development/libraries/gnustep-back/fixup-tools.patch b/pkgs/development/libraries/gnustep/back/fixup-tools.patch similarity index 100% rename from pkgs/development/libraries/gnustep-back/fixup-tools.patch rename to pkgs/development/libraries/gnustep/back/fixup-tools.patch diff --git a/pkgs/development/libraries/gnustep-base/default.nix b/pkgs/development/libraries/gnustep/base/default.nix similarity index 83% rename from pkgs/development/libraries/gnustep-base/default.nix rename to pkgs/development/libraries/gnustep/base/default.nix index 837d74399a8..ae90aac6e23 100644 --- a/pkgs/development/libraries/gnustep-base/default.nix +++ b/pkgs/development/libraries/gnustep/base/default.nix @@ -20,17 +20,7 @@ gsmakeDerivation { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-base-1.24.7.tar.gz"; sha256 = "0qhphw61ksyzf04a4apmvx8000alws6d92x8ila1mi5bapcpv41s"; }; - buildInputs = [ - aspell audiofile - cups - gmp gnutls - libffi - libjpeg libtiff libpng giflib libungif - libxml2 libxslt libiconv - libobjc2 libgcrypt - icu - pkgconfig portaudio - ]; + nativeBuildInputs = [ pkgconfig ]; propagatedBuildInputs = [ aspell audiofile cups diff --git a/pkgs/development/libraries/gnustep-base/fixup-base-makefile-installdir.patch b/pkgs/development/libraries/gnustep/base/fixup-base-makefile-installdir.patch similarity index 100% rename from pkgs/development/libraries/gnustep-base/fixup-base-makefile-installdir.patch rename to pkgs/development/libraries/gnustep/base/fixup-base-makefile-installdir.patch diff --git a/pkgs/development/libraries/gnustep-base/fixup-paths.patch b/pkgs/development/libraries/gnustep/base/fixup-paths.patch similarity index 100% rename from pkgs/development/libraries/gnustep-base/fixup-paths.patch rename to pkgs/development/libraries/gnustep/base/fixup-paths.patch diff --git a/pkgs/development/libraries/gnustep/default.nix b/pkgs/development/libraries/gnustep/default.nix new file mode 100644 index 00000000000..77ceec3f96d --- /dev/null +++ b/pkgs/development/libraries/gnustep/default.nix @@ -0,0 +1,22 @@ +{ pkgs, newScope }: + +let + callPackage = newScope self; + + self = rec { + stdenv = pkgs.clangStdenv; + + gsmakeDerivation = callPackage ./make/gsmakeDerivation.nix {}; + gorm = callPackage ./gorm {}; + projectcenter = callPackage ./projectcenter {}; + system_preferences = callPackage ./systempreferences {}; + libobjc2 = callPackage ./libobjc2 {}; + make = callPackage ./make {}; + xcode = callPackage ./xcode {}; + back = callPackage ./back {}; + base = callPackage ./base { giflib = pkgs.giflib_4_1; }; + gui = callPackage ./gui {}; + gworkspace = callPackage ./gworkspace {}; + }; + +in self diff --git a/pkgs/applications/editors/gorm/default.nix b/pkgs/development/libraries/gnustep/gorm/default.nix similarity index 84% rename from pkgs/applications/editors/gorm/default.nix rename to pkgs/development/libraries/gnustep/gorm/default.nix index d5633b5e97d..1b4e0464fb0 100644 --- a/pkgs/applications/editors/gorm/default.nix +++ b/pkgs/development/libraries/gnustep/gorm/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, gnustep_base, gnustep_back, gsmakeDerivation, gnustep_gui +{ stdenv, fetchurl, base, back, gsmakeDerivation, gui }: let version = "1.2.18"; @@ -11,7 +11,7 @@ gsmakeDerivation { sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq"; }; # patches = [ ./fix-gs-makefiles.patch ]; - buildInputs = [ gnustep_base gnustep_back gnustep_gui ]; + buildInputs = [ base back gui ]; # propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui ]; meta = { @@ -24,4 +24,4 @@ gsmakeDerivation { maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; platforms = stdenv.lib.platforms.linux; }; -} \ No newline at end of file +} diff --git a/pkgs/applications/editors/gorm/fix-gs-makefiles.patch b/pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch similarity index 100% rename from pkgs/applications/editors/gorm/fix-gs-makefiles.patch rename to pkgs/development/libraries/gnustep/gorm/fix-gs-makefiles.patch diff --git a/pkgs/development/libraries/gnustep-gui/default.nix b/pkgs/development/libraries/gnustep/gui/default.nix similarity index 93% rename from pkgs/development/libraries/gnustep-gui/default.nix rename to pkgs/development/libraries/gnustep/gui/default.nix index 829c9905d25..9fee627b19a 100644 --- a/pkgs/development/libraries/gnustep-gui/default.nix +++ b/pkgs/development/libraries/gnustep/gui/default.nix @@ -1,6 +1,6 @@ { gsmakeDerivation , fetchurl -, gnustep_base +, base , stdenv }: let version = "0.24.0"; @@ -11,7 +11,7 @@ gsmakeDerivation { url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-0.24.0.tar.gz"; sha256 = "0d6jzfcyacxjzrr2p398ysvs1akv1fcmngfzxxbfxa947miydjxg"; }; - buildInputs = [ gnustep_base ]; + buildInputs = [ base ]; # propagatedBuildInputs = [ gnustep_base ]; # patches = [ ./fixup-gui-makefile-installdir.patch ]; # DEBUG! diff --git a/pkgs/development/libraries/gnustep-gui/fixup-all.patch b/pkgs/development/libraries/gnustep/gui/fixup-all.patch similarity index 100% rename from pkgs/development/libraries/gnustep-gui/fixup-all.patch rename to pkgs/development/libraries/gnustep/gui/fixup-all.patch diff --git a/pkgs/development/libraries/gnustep-gui/fixup-gui-makefile-installdir.patch b/pkgs/development/libraries/gnustep/gui/fixup-gui-makefile-installdir.patch similarity index 100% rename from pkgs/development/libraries/gnustep-gui/fixup-gui-makefile-installdir.patch rename to pkgs/development/libraries/gnustep/gui/fixup-gui-makefile-installdir.patch diff --git a/pkgs/development/libraries/gnustep-gui/fixup-gui-textconverters-preamble.patch b/pkgs/development/libraries/gnustep/gui/fixup-gui-textconverters-preamble.patch similarity index 100% rename from pkgs/development/libraries/gnustep-gui/fixup-gui-textconverters-preamble.patch rename to pkgs/development/libraries/gnustep/gui/fixup-gui-textconverters-preamble.patch diff --git a/pkgs/development/libraries/gnustep-gui/fixup-gui-tools-preamble.patch b/pkgs/development/libraries/gnustep/gui/fixup-gui-tools-preamble.patch similarity index 100% rename from pkgs/development/libraries/gnustep-gui/fixup-gui-tools-preamble.patch rename to pkgs/development/libraries/gnustep/gui/fixup-gui-tools-preamble.patch diff --git a/pkgs/applications/misc/gworkspace/default.nix b/pkgs/development/libraries/gnustep/gworkspace/default.nix similarity index 86% rename from pkgs/applications/misc/gworkspace/default.nix rename to pkgs/development/libraries/gnustep/gworkspace/default.nix index e59cde7e22e..538a34461a8 100644 --- a/pkgs/applications/misc/gworkspace/default.nix +++ b/pkgs/development/libraries/gnustep/gworkspace/default.nix @@ -1,4 +1,4 @@ -{ gnustep_back, gnustep_base, gnustep_gui, gsmakeDerivation +{ back, base, gui, gsmakeDerivation , fetchurl , sqlite , stdenv @@ -16,7 +16,7 @@ gsmakeDerivation { # additional dependencies: # - PDFKit framework from http://gap.nongnu.org/ # - TODO: to --enable-gwmetadata, need libDBKit as well as sqlite! - buildInputs = [ gnustep_back gnustep_base gnustep_gui system_preferences ]; + buildInputs = [ back base gui system_preferences ]; # propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui system_preferences ]; configureFlags = [ "--with-inotify" ]; meta = { diff --git a/pkgs/development/libraries/libobjc2/default.nix b/pkgs/development/libraries/gnustep/libobjc2/default.nix similarity index 100% rename from pkgs/development/libraries/libobjc2/default.nix rename to pkgs/development/libraries/gnustep/libobjc2/default.nix diff --git a/pkgs/development/libraries/libobjc2/removeCXXtests.patch b/pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch similarity index 100% rename from pkgs/development/libraries/libobjc2/removeCXXtests.patch rename to pkgs/development/libraries/gnustep/libobjc2/removeCXXtests.patch diff --git a/pkgs/development/tools/build-managers/gnustep-make/GNUstep.conf b/pkgs/development/libraries/gnustep/make/GNUstep.conf similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/GNUstep.conf rename to pkgs/development/libraries/gnustep/make/GNUstep.conf diff --git a/pkgs/development/tools/build-managers/gnustep-make/builder.sh b/pkgs/development/libraries/gnustep/make/builder.sh similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/builder.sh rename to pkgs/development/libraries/gnustep/make/builder.sh diff --git a/pkgs/development/tools/build-managers/gnustep-make/default.nix b/pkgs/development/libraries/gnustep/make/default.nix similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/default.nix rename to pkgs/development/libraries/gnustep/make/default.nix diff --git a/pkgs/development/tools/build-managers/gnustep-make/fixup-paths.patch b/pkgs/development/libraries/gnustep/make/fixup-paths.patch similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/fixup-paths.patch rename to pkgs/development/libraries/gnustep/make/fixup-paths.patch diff --git a/pkgs/development/tools/build-managers/gnustep-make/gs-makefiles-additional.patch b/pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/gs-makefiles-additional.patch rename to pkgs/development/libraries/gnustep/make/gs-makefiles-additional.patch diff --git a/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix b/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix new file mode 100644 index 00000000000..51e26f3a694 --- /dev/null +++ b/pkgs/development/libraries/gnustep/make/gsmakeDerivation.nix @@ -0,0 +1,11 @@ +{ stdenv, lib, libobjc2, clang, make, makeWrapper, which }: +{ buildInputs ? [] +, ...} @ args: +stdenv.mkDerivation (args // { + buildInputs = [ makeWrapper make which ] ++ buildInputs; + + builder = ./builder.sh; + setupHook = ./setup-hook.sh; + + GNUSTEP_MAKEFILES = "${make}/share/GNUstep/Makefiles"; +}) diff --git a/pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh b/pkgs/development/libraries/gnustep/make/setup-hook.sh similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/setup-hook.sh rename to pkgs/development/libraries/gnustep/make/setup-hook.sh diff --git a/pkgs/development/tools/build-managers/gnustep-make/wrapper.sh b/pkgs/development/libraries/gnustep/make/wrapper.sh similarity index 100% rename from pkgs/development/tools/build-managers/gnustep-make/wrapper.sh rename to pkgs/development/libraries/gnustep/make/wrapper.sh diff --git a/pkgs/applications/editors/projectcenter/default.nix b/pkgs/development/libraries/gnustep/projectcenter/default.nix similarity index 82% rename from pkgs/applications/editors/projectcenter/default.nix rename to pkgs/development/libraries/gnustep/projectcenter/default.nix index ccb885f7477..0e0237c0db0 100644 --- a/pkgs/applications/editors/projectcenter/default.nix +++ b/pkgs/development/libraries/gnustep/projectcenter/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl -, gnustep_base, gnustep_back, gsmakeDerivation, gnustep_gui, gorm +, base, back, gsmakeDerivation, gui, gorm , gnumake, gdb }: let @@ -15,8 +15,7 @@ gsmakeDerivation { # NOTE: need a patch for ProjectCenter to help it locate some necessary tools: # 1. Framework/PCProjectLauncher.m, locate gdb (say among NIX_GNUSTEP_SYSTEM_TOOLS) # 2. Framework/PCProjectBuilder.m, locate gmake (similar) - buildInputs = [ gnustep_base gnustep_back gnustep_gui ]; - propagatedBuildInputs = [ gnustep_base gnustep_back gnustep_gui gnumake gdb gorm ]; + propagatedBuildInputs = [ base back gui gnumake gdb gorm ]; meta = { description = "ProjectCenter is GNUstep's integrated development environment (IDE) and allows a rapid development and easy managment of ProjectCenter running on GNUstep applications, tools and frameworks."; @@ -28,4 +27,4 @@ gsmakeDerivation { maintainers = with stdenv.lib.maintainers; [ ashalkhakov ]; platforms = stdenv.lib.platforms.linux; }; -} \ No newline at end of file +} diff --git a/pkgs/applications/editors/projectcenter/fixup-preamble.patch b/pkgs/development/libraries/gnustep/projectcenter/fixup-preamble.patch similarity index 100% rename from pkgs/applications/editors/projectcenter/fixup-preamble.patch rename to pkgs/development/libraries/gnustep/projectcenter/fixup-preamble.patch diff --git a/pkgs/applications/misc/systempreferences/default.nix b/pkgs/development/libraries/gnustep/systempreferences/default.nix similarity index 87% rename from pkgs/applications/misc/systempreferences/default.nix rename to pkgs/development/libraries/gnustep/systempreferences/default.nix index 2dffdfe3df5..90f91234b62 100644 --- a/pkgs/applications/misc/systempreferences/default.nix +++ b/pkgs/development/libraries/gnustep/systempreferences/default.nix @@ -1,4 +1,4 @@ -{ gnustep_back, gnustep_base, gnustep_gui, gsmakeDerivation +{ back, base, gui, gsmakeDerivation , fetchurl , stdenv }: @@ -12,7 +12,7 @@ gsmakeDerivation { sha256 = "1q68bs8rlq0dxkar01qs5wfyas4iivddnama371jd7ll6cxzmpy7"; }; # GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; - buildInputs = [ gnustep_back gnustep_base gnustep_gui ]; + buildInputs = [ back base gui ]; # propagatedBuildInputs = [ gnustep_back gnustep_base gnustep_gui ]; meta = { description = "System Preferences allows to manage the settings of many aspects of the GNUstep environment and its applications"; diff --git a/pkgs/development/libraries/gnustep/xcode/default.nix b/pkgs/development/libraries/gnustep/xcode/default.nix new file mode 100644 index 00000000000..e709f8b453c --- /dev/null +++ b/pkgs/development/libraries/gnustep/xcode/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchFromGitHub, make, libobjc2, base }: + +stdenv.mkDerivation rec { + name = "xcode-${version}"; + version = "1.0"; + + makeFlags = "messages=yes"; + + installFlags = "DESTDIR=$(out)"; + + buildInputs = [ make libobjc2 base ]; + + src = fetchFromGitHub { + owner = "gnustep"; + repo = "xcode"; + rev = "cc5016794e44f9998674120a5e4625aa09ca455a"; + sha256 = "85420f3f61091b2e4548cf5e99d886cb9c72cf07b8b9fae3eebc87e7b6b7e54a"; + }; +} diff --git a/pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix b/pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix deleted file mode 100644 index 200648d621e..00000000000 --- a/pkgs/development/tools/build-managers/gnustep-make/gsmakeDerivation.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ stdenv, lib, libobjc2, clang, gnustep_make, makeWrapper, which }: -{ buildInputs ? [] -, ...} @ args: -stdenv.mkDerivation (args // { - buildInputs = [ makeWrapper gnustep_make which ] ++ buildInputs; - - builder = ./builder.sh; - setupHook = ./setup-hook.sh; - - GNUSTEP_MAKEFILES = "${gnustep_make}/share/GNUstep/Makefiles"; -}) diff --git a/pkgs/development/tools/build-managers/gnustep/make/default.nix b/pkgs/development/tools/build-managers/gnustep/make/default.nix deleted file mode 100644 index 5baa37b93a4..00000000000 --- a/pkgs/development/tools/build-managers/gnustep/make/default.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ stdenv, fetchurl }: - -let version = "2.6.7"; in -stdenv.mkDerivation rec { - name = "gnustep-make-${version}"; - - src = fetchurl { - url = "http://ftpmain.gnustep.org/pub/gnustep/core/${name}.tar.gz"; - sha256 = "1r2is23xdg4qirckb6bd4lynfwnnw5d9522wib3ndk1xgirmfaqi"; - }; - - patchPhase = '' - substituteInPlace GNUmakefile.in \ - --replace which type \ - --replace 'tooldir = $(DESTDIR)' 'tooldir = ' \ - --replace 'makedir = $(DESTDIR)' 'makedir = ' \ - --replace 'mandir = $(DESTDIR)' 'mandir = ' - - substituteInPlace FilesystemLayouts/apple \ - --replace /usr/local "" - - substituteInPlace configure \ - --replace /Library/GNUstep "$out" - ''; - - installFlags = "DESTDIR=$(out)"; - - postInstall = '' - mkdir -p $out/nix-support - cat >$out/nix-support/setup-hook <