gnustep: remove gnustep-startup
Removing gnustep-startup (not needed anymore). Adding Gorm and ProjectCenter applications (these mostly work, provided the environment is set up manually).
This commit is contained in:
parent
52d17a5f41
commit
5db3f3ee61
@ -1,5 +1,6 @@
|
|||||||
{ stdenv, fetchurl, gnustep_startup }:
|
{ buildEnv
|
||||||
|
, stdenv, fetchurl, gnustep_base, gnustep_make, gnustep_back, gnustep_gui
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
version = "1.2.18";
|
version = "1.2.18";
|
||||||
in
|
in
|
||||||
@ -10,11 +11,49 @@ stdenv.mkDerivation rec {
|
|||||||
url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz";
|
url = "ftp://ftp.gnustep.org/pub/gnustep/dev-apps/gorm-${version}.tar.gz";
|
||||||
sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq";
|
sha256 = "1vpzvmsnynlq5dv6rw9vbk1zzsim6z7b2kprrlm8dknyq0r1sdrq";
|
||||||
};
|
};
|
||||||
|
GNUSTEP_env = buildEnv {
|
||||||
|
name = "gnustep-gorm-env";
|
||||||
|
paths = [ gnustep_make gnustep_back gnustep_base gnustep_gui ];
|
||||||
|
pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ];
|
||||||
|
};
|
||||||
|
GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles";
|
||||||
|
GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM";
|
||||||
|
ADDITIONAL_CPPFLAGS = "-DGNUSTEP";
|
||||||
|
|
||||||
buildInputs = [ gnustep_startup ];
|
buildInputs = [ gnustep_base gnustep_back gnustep_make gnustep_gui ];
|
||||||
buildPhase = ''
|
dontBuild = true;
|
||||||
. ${gnustep_startup}/System/Library/Makefiles/GNUstep.sh
|
installPhase = ''
|
||||||
make
|
export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include
|
||||||
|
make \
|
||||||
|
GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \
|
||||||
|
GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \
|
||||||
|
GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \
|
||||||
|
GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \
|
||||||
|
GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \
|
||||||
|
GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \
|
||||||
|
GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \
|
||||||
|
GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \
|
||||||
|
GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \
|
||||||
|
messages=yes
|
||||||
|
make install \
|
||||||
|
GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
|
||||||
|
GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \
|
||||||
|
GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \
|
||||||
|
GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \
|
||||||
|
GNUSTEP_SYSTEM_TOOLS=$out/bin \
|
||||||
|
GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \
|
||||||
|
GNUSTEP_SYSTEM_HEADERS=$out/include \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARIES=$out/lib \
|
||||||
|
GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \
|
||||||
|
GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \
|
||||||
|
GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARIES=$out/lib \
|
||||||
|
GNUSTEP_HEADERS=$out/include \
|
||||||
|
DESTDIR_GNUSTEP_MAKEFILES=$out/share/GNUstep/Makefiles
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
{ stdenv, fetchurl, gnustep_startup }:
|
{ buildEnv
|
||||||
|
, stdenv, fetchurl
|
||||||
|
, gnustep_base, gnustep_make, gnustep_back, gnustep_gui
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
version = "0.6.2";
|
version = "0.6.2";
|
||||||
in
|
in
|
||||||
@ -10,11 +12,50 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "0wwlbpqf541apw192jb633d634zkpjhcrrkd1j80y9hihphll465";
|
sha256 = "0wwlbpqf541apw192jb633d634zkpjhcrrkd1j80y9hihphll465";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ gnustep_startup ];
|
GNUSTEP_env = buildEnv {
|
||||||
|
name = "gnustep-projectcenter-env";
|
||||||
|
paths = [ gnustep_make gnustep_back gnustep_base gnustep_gui ];
|
||||||
|
pathsToLink = [ "/bin" "/sbin" "/include" "/lib" "/share" ];
|
||||||
|
};
|
||||||
|
GNUSTEP_MAKEFILES = "${GNUSTEP_env}/share/GNUstep/Makefiles";
|
||||||
|
GNUSTEP_INSTALLATION_DOMAIN = "SYSTEM";
|
||||||
|
ADDITIONAL_CPPFLAGS = "-DGNUSTEP";
|
||||||
|
|
||||||
buildPhase = ''
|
patches = [ ./fixup-preamble.patch ];
|
||||||
. $gnustep_startup/GNUstep/System/Library/Makefiles/GNUstep.sh
|
buildInputs = [ gnustep_base gnustep_back gnustep_make gnustep_gui ];
|
||||||
make
|
dontBuild = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
export ADDITIONAL_INCLUDE_DIRS=${GNUSTEP_env}/include
|
||||||
|
make \
|
||||||
|
GNUSTEP_SYSTEM_APPS=$GNUSTEP_env/lib/GNUstep/Applications \
|
||||||
|
GNUSTEP_SYSTEM_ADMIN_APPS=$GNUSTEP_env/lib/GNUstep/Applications \
|
||||||
|
GNUSTEP_SYSTEM_WEB_APPS=$GNUSTEP_env/lib/GNUstep/WebApplications \
|
||||||
|
GNUSTEP_SYSTEM_TOOLS=$GNUSTEP_env/bin \
|
||||||
|
GNUSTEP_SYSTEM_ADMIN_TOOLS=$GNUSTEP_env/sbin \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARY=$GNUSTEP_env/lib/GNUstep \
|
||||||
|
GNUSTEP_SYSTEM_HEADERS=$GNUSTEP_env/include \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \
|
||||||
|
GNUSTEP_SYSTEM_DOC=$GNUSTEP_env/share/GNUstep/Documentation \
|
||||||
|
GNUSTEP_SYSTEM_DOC_MAN=$GNUSTEP_env/share/man \
|
||||||
|
GNUSTEP_SYSTEM_DOC_INFO=$GNUSTEP_env/share/info \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARIES=$GNUSTEP_env/lib \
|
||||||
|
messages=yes
|
||||||
|
make install \
|
||||||
|
GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
|
||||||
|
GNUSTEP_SYSTEM_APPS=$out/lib/GNUstep/Applications \
|
||||||
|
GNUSTEP_SYSTEM_ADMIN_APPS=$out/lib/GNUstep/Applications \
|
||||||
|
GNUSTEP_SYSTEM_WEB_APPS=$out/lib/GNUstep/WebApplications \
|
||||||
|
GNUSTEP_SYSTEM_TOOLS=$out/bin \
|
||||||
|
GNUSTEP_SYSTEM_ADMIN_TOOLS=$out/sbin \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARY=$out/lib/GNUstep \
|
||||||
|
GNUSTEP_SYSTEM_HEADERS=$out/include \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARIES=$out/lib \
|
||||||
|
GNUSTEP_SYSTEM_DOC=$out/share/GNUstep/Documentation \
|
||||||
|
GNUSTEP_SYSTEM_DOC_MAN=$out/share/man \
|
||||||
|
GNUSTEP_SYSTEM_DOC_INFO=$out/share/info \
|
||||||
|
GNUSTEP_SYSTEM_LIBRARIES=$out/lib \
|
||||||
|
GNUSTEP_HEADERS=$out/include
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
14
pkgs/applications/editors/projectcenter/fixup-preamble.patch
Normal file
14
pkgs/applications/editors/projectcenter/fixup-preamble.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
diff -c ProjectCenter-0.6.2/GNUmakefile.preamble ProjectCenter-0.6.2.patched/GNUmakefile.preamble
|
||||||
|
--- ProjectCenter-0.6.2/GNUmakefile.preamble 2010-08-08 03:56:04.000000000 +0600
|
||||||
|
+++ artyom/ProjectCenter-0.6.2.patched/GNUmakefile.preamble 2014-12-01 20:08:31.000000000 +0600
|
||||||
|
@@ -39,7 +39,7 @@
|
||||||
|
ADDITIONAL_INCLUDE_DIRS += -I./ -I./Headers
|
||||||
|
|
||||||
|
# Additional LDFLAGS to pass to the linker
|
||||||
|
-ADDITIONAL_LDFLAGS +=
|
||||||
|
+ADDITIONAL_LDFLAGS += -lgnustep-base -lgnustep-gui
|
||||||
|
|
||||||
|
# Additional library directories the linker should search
|
||||||
|
ADDITIONAL_LIB_DIRS += -L./Framework/ProjectCenter.framework/$(GNUSTEP_TARGET_LDIR)
|
||||||
|
|
||||||
|
Diff finished. Mon Dec 1 20:08:50 2014
|
@ -1,89 +0,0 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig
|
|
||||||
, aspell
|
|
||||||
, cups
|
|
||||||
, audiofile, portaudio
|
|
||||||
, clang, libobjc2
|
|
||||||
, gmp
|
|
||||||
, libjpeg, libtiff, libpng, giflib, libungif
|
|
||||||
, libxml2, libxslt, libiconv
|
|
||||||
, libffi
|
|
||||||
, gnutls, libgcrypt
|
|
||||||
, icu
|
|
||||||
, xlibs, x11
|
|
||||||
, freetype
|
|
||||||
, which
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
version = "0.32.0";
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "gnustep-core-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-startup-${version}.tar.gz";
|
|
||||||
sha256 = "1f24lggaind43jhp6gy5zspljbha5l2gnys1ddxjdxkiwqfkznc6";
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [ clang libobjc2 cups audiofile portaudio aspell libjpeg libtiff libpng giflib libungif libxml2 libxslt libiconv gnutls libgcrypt icu pkgconfig x11 libffi freetype which ];
|
|
||||||
# TODO: libobjc2 is a propagated (compile-time/runtime) dependency
|
|
||||||
propagatedBuildInputs = [ libobjc2 cups audiofile portaudio aspell libjpeg libtiff libpng giflib libungif libxml2 libxslt libgcrypt icu gmp libiconv gnutls icu libffi ];
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
./InstallGNUstep --batch --prefix=$out
|
|
||||||
'';
|
|
||||||
|
|
||||||
# TODO: add:
|
|
||||||
# . $out/System/Library/Makefiles/GNUstep.sh
|
|
||||||
# to bashrc prior to building any GNUstep package
|
|
||||||
# TODO: need a development environment for GNUstep packages
|
|
||||||
# - it would set various settings appropriately
|
|
||||||
# - similarly to what Python is doing
|
|
||||||
# ~/proj/nix/nixpkgs/pkgs/top-level/python-packages.nix: wrapPython?
|
|
||||||
# - buildPythonPackage: ~/proj/nix/nixpkgs/pkgs/development/python-modules/generic/default.nix
|
|
||||||
#
|
|
||||||
# TODO: could simply make the installPhase = "";
|
|
||||||
installPhase = ''
|
|
||||||
echo Do not forget to source $out/System/Library/Makefiles/GNUstep.sh!
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "GNUstep is a free, object-oriented, cross-platform development environment that strives for simplicity and elegance. GNUstep is based on and strives to be completely compatible with the Cocoa specification developed by Apple (Previously NeXT Software, Inc.).";
|
|
||||||
|
|
||||||
longDescription = ''
|
|
||||||
GNUstep is...
|
|
||||||
|
|
||||||
...an object-oriented tool development kit
|
|
||||||
|
|
||||||
GNUstep-make and GNUstep-base make up the core libraries contain
|
|
||||||
a complete system for writing non-graphic tools in Objective-C. The
|
|
||||||
make package allows you to setup a simple and powerful system for
|
|
||||||
building, installing and packaging your tools. The base package
|
|
||||||
includes all the classes necessary for writing an incredible array of
|
|
||||||
tools, from wrappers for system tools to tools for communicating with
|
|
||||||
web and other types of servers.
|
|
||||||
|
|
||||||
...and a graphical development kit
|
|
||||||
|
|
||||||
The core libraries contain classes for developing a complete
|
|
||||||
graphical application for almost any purpose. Along with our
|
|
||||||
object-oriented, graphical development applications,
|
|
||||||
ProjectCenter and Gorm it's simple to write very complex
|
|
||||||
commercial applications in weeks or months, rather than years
|
|
||||||
(or often, never) in the case of other development environments.
|
|
||||||
|
|
||||||
...and a cross platform development environment
|
|
||||||
|
|
||||||
GNUstep can, currently, allow you to build applications on
|
|
||||||
GNU/Linux, Windows, FreeBSD, OpenBSD, NetBSD, Solaris and any
|
|
||||||
POSIX compliant UNIX based operating system.
|
|
||||||
'';
|
|
||||||
|
|
||||||
homepage = http://gnustep.org/;
|
|
||||||
|
|
||||||
license = stdenv.lib.licenses.lgpl2Plus;
|
|
||||||
|
|
||||||
maintainers = with stdenv.lib.maintainers; [ ashalkhakov ];
|
|
||||||
platforms = stdenv.lib.platforms.all;
|
|
||||||
};
|
|
||||||
}
|
|
@ -7591,10 +7591,6 @@ in
|
|||||||
|
|
||||||
gnome-sharp = callPackage ../development/libraries/gnome-sharp {};
|
gnome-sharp = callPackage ../development/libraries/gnome-sharp {};
|
||||||
|
|
||||||
gnustep_startup = callPackage ../development/libraries/gnustep-startup/default.nix {
|
|
||||||
stdenv = clangStdenv;
|
|
||||||
giflib = giflib_4_1;
|
|
||||||
};
|
|
||||||
gorm = callPackage ../applications/editors/gorm/default.nix {
|
gorm = callPackage ../applications/editors/gorm/default.nix {
|
||||||
stdenv = clangStdenv;
|
stdenv = clangStdenv;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user