Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 77750 - gnustep-* use broken path - use.local.desc wrong?
Summary: gnustep-* use broken path - use.local.desc wrong?
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Gnustep project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-01-12 14:57 UTC by Stuart Shelton
Modified: 2005-03-18 10:43 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stuart Shelton 2005-01-12 14:57:29 UTC
GNUstep applications - e.g. "defaults" from gnustep-base-1.10.2_pre20050106 - seem to be broken, in that they keep looking for config files in "./~" rather than interpreting "~" as $HOME.

e.g. with a "$HOME/.GNUstep/Defaults" directory in place, running "defaults" results in:

$ ls
$ defaults read
2005-01-12 22:40:39.000 defaults[9930] Defaults home '~/.GNUstep' did not exist - created it
2005-01-12 22:40:39.000 defaults[9930] Defaults path '~/.GNUstep/Defaults' did not exist - created it
...
$ ls
~
$

... so a directory literally named "~" is always created.

Either the gnustep-* builds are broken in this respect or, more likely, our use.local.desc gives the wrong information.  This is with USE="layout-from-conf-file", and /etc/conf.d/gnustep.env reading:

GNUSTEP_SYSTEM_ROOT=/usr/share/GNUstep/System
GNUSTEP_LOCAL_ROOT=/usr/share/GNUstep/Local
GNUSTEP_NETWORK_ROOT=/usr/share/GNUstep/Network
GNUSTEP_USER_ROOT='~/.GNUstep'

use.local.desc says:

gnustep-base/gnustep-make:layout-from-conf-file - Layout GNUstep according to /e
tc/conf.d/gnustep.env; GNUSTEP_SYSTEM_ROOT, GNUSTEP_LOCAL_ROOT, GNUSTEP_NETWORK_
ROOT, and GNUSTEP_USER_ROOT (use '~' or '~/whatever' -- SURROUNDED BY SINGLE QUO
TES -- for the user root); the only required entry is GNUSTEP_SYSTEM_ROOT; GNUST
EP_SYSTEM_ROOT must end with "System".

Can someone with a greater understanding of the GNUstep applications advise on the correctness (or otherwise :) of this description?
Comment 1 Armando Di Cianno (RETIRED) gentoo-dev 2005-01-12 15:08:04 UTC
Yes, please post output of:
- `emerge info`
- `emerge -pv gnustep-base`
- `cat /etc/conf.d/gnustep.env`

Thanks.
Comment 2 Armando Di Cianno (RETIRED) gentoo-dev 2005-01-12 15:09:52 UTC
Sorry, you already have one of those ouputs, but the other stuff (especially `emerge info`, is definitely needed).

thanks again :-)
Comment 3 Stuart Shelton 2005-01-12 15:28:21 UTC
I'm currently using the latest ~x86 gnustep-base package(s), but the problem also existed (at least) with the earlier _pre* packages too.

I have gnustep-base/gnustep-make-1.10.1_pre20050106 installed currently.

emerge info:

Portage 2.0.51-r3 (default-linux/x86/2004.3, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.10-gentoo-r4 i686)
=================================================================
System uname: 2.6.10-gentoo-r4 i686 Intel(R) Pentium(R) M processor 1700MHz
Gentoo Base System version 1.4.16
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.92.0.2-r1
Headers:  sys-kernel/linux26-headers-2.6.8.1-r2
Libtools: sys-devel/libtool-1.5.2-r7
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=pentium4 -mfpmath=sse -msse2 -fprefetch-loop-arrays -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/X11/xkb /etc/gconf /etc/env.d"
CXXFLAGS="-O2 -march=pentium4 -mfpmath=sse -msse2 -fprefetch-loop-arrays -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks fixpackages sandbox sfperms"
GENTOO_MIRRORS="        http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo/   http://www.ibiblio.org/pub/Linux/distributions/gentoo   ftp://mirrors.sec.informatik.tu-darmstadt.de/gentoo/      http://gentoo.oregonstate.edu "
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/usr/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X Xaw3d a52 aalib accessibility acl acpi adns alsa arts audiofile avi bash-completion berkdb bitmap-fonts bluetooth bonobo caps cdr crypt cscope cups curl dedicated dga directfb divx4linux dv dvd dvdread eds encode esd ethereal evo f77 faac faad fam fastcgi fbcon fftw firebird flac flash foomaticdb fortran freetds freetype gb gcj gd gdbm ggi gif glut gnome gnomedb gnutls gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile hal howl icc-pgo imagemagick imap imlib informix innodb ipv6 jack java javamail javascript joystick jpeg junit kde kerberos krb4 ladcca lcms ldap libcaca libg++ libgda libwww lzo mad maildir mailwrapper makecheck matroska mbox mcal memlimit mikmod mmap mmx mng mono motif mozilla mpeg mpi mssql multislot mysql nas ncurses net network nls nntp nptl oci8 odbc oggvorbis openal opengl oss pam pcmcia pcre pdflib perl pic plotutils png pnp portaudio postgres ppds prelude python qdbm qt quicktime readline real samba sasl scanner sdl silc skey slang slp sndfile snmp socks5 speex spell sqlite sse ssl svg svga tcltk tcpd theora tiff truetype unicode usb v4l wmf wxwindows x86 xanim xface xim xinerama xml xml2 xmms xosd xprint xv xvid zeo zlib video_cards_radeon"
Comment 4 Stuart Shelton 2005-02-21 11:54:41 UTC
Any updates on this yet, guys?
Comment 5 Armando Di Cianno (RETIRED) gentoo-dev 2005-03-17 18:21:19 UTC
Stuart -

I have not been able to recreate this bug.

However, if you create /etc/conf.d/gnustep.env with (only):

GNUSTEP_SYSTEM_ROOT=/usr/share/GNUstep/System

Local and Network will be created in the same directory as System, and the default GNUstep user is ~/GNUstep, however, not ~/.GNUstep.

I'm mostly stumped -- in /etc/conf.d/gnustep.env, if you use single quotes, the variable should absolutely not expand, especially how it's being used.  Is there any change your shell is doing something odd here?  Any other info on your setup you think would help would be appreciated.
Comment 6 Stuart Shelton 2005-03-18 02:53:05 UTC
I think I should probably file a new bug for this one, but I'll continue here for now...

I've just upgraded to the latest gnustep* releases.  The problem is that neither the location of the binaries nor the libraries are added to PATH or LD_LIBRARY_PATH, meaning that the /usr/share/GNUstep/System/Tools/Gentoo/config-gnustep-base.sh script can't find the executable "defaults", and defaults can't find it's libraries in /usr/share/GNUstep/System/Library/Libraries/ix86/linux-gnu/gnu-gnu-gnu/

In /etc/env.d, I have:

10gnustep:
GNUSTEP_SYSTEM_ROOT=/usr/share/GNUstep/System
GNUSTEP_LOCAL_ROOT=/usr/share/GNUstep/Local
GNUSTEP_NETWORK_ROOT=/usr/share/GNUstep/Network
GNUSTEP_USER_ROOT='~/.GNUstep'

99gnustep:
MANPATH="~/Library/Documentation/man:/usr/share/GNUstep/Local/Library/Documentation/man:/usr/share/GNUstep/Network/Library/Documentation/man:/usr/share/GNUstep/System/Library/Documentation/man"
INFOPATH="~/Library/Documentation/info:/usr/share/GNUstep/Local/Library/Documentation/info:/usr/share/GNUstep/Network/Library/Documentation/info:/usr/share/GNUstep/System/Library/Documentation/info"
INFODIR="~/Library/Documentation/info:/usr/share/GNUstep/Local/Library/Documentation/info:/usr/share/GNUstep/Network/Library/Documentation/info:/usr/share/GNUstep/System/Library/Documentation/info"

(and I'm very suspicious of the paths in 99gnustep too).

Shouldn't 99gnustep contain PATH and LDPATH values to allow these apps to "just work"?

Currently installed packages:

gnustep-base/mknfonts-0.5
gnustep-base/gnustep-base-1.10.2_pre20050312
gnustep-base/gnustep-gui-0.9.5_pre20050312
gnustep-base/gnustep-make-1.10.1_pre20050312
gnustep-base/gnustep-back-art-0.9.5_pre20050312
gnustep-base/gnustep-env-0.1.6
gnustep-base/gnustep-back-xlib-0.9.5_pre20050312
gnustep-libs/prefsmodule-1.1.1_pre20050315
gnustep-libs/artresources-0.1.2
gnustep-libs/smbkit-0.0.1_pre20050312
gnustep-libs/pdfkit-0.8-r4
gnustep-libs/pantomime-1.2.0_pre20050312
gnustep-apps/textedit-0.95_pre20050315
gnustep-apps/clipbook-0.6.0.7.0
gnustep-apps/gwnet-0.1.0.7.0
gnustep-apps/affiche-0.6.0-r2
gnustep-apps/addresses-0.4.6-r1
gnustep-apps/preferences-1.3.0_pre20050315
gnustep-apps/helpviewer-0.3-r1
gnustep-apps/terminal-0.9.5_pre20050110
gnustep-apps/aclock-0.2.3
gnustep-apps/gworkspace-0.7.0
gnustep-apps/gnumail-1.2.0_pre20050312

To address your last post (yes, I'll get to the point eventually ;) I realise that the default location for GNUstep files is $HOME/GNUstep - and that's fine.  But if GNUstep can't be configured to use alternative locations, perhaps the "layout-from-conf-file" option should be removed?  (Or, even better, fixed :)

Cheers,

    Stuart
Comment 7 Stuart Shelton 2005-03-18 03:01:51 UTC
The good news, however, is that "defaults" now writes into /home/<user>/.GNUstep/Defaults/.GNUstepDefaults rather than creating a "~" directory, so that looks fixed!

Just the (LD)PATH issue remaining, then...
Comment 8 Armando Di Cianno (RETIRED) gentoo-dev 2005-03-18 10:43:06 UTC
Hrm -- it sounds like your not sourcing GNUstep.sh, most likely?

I suggest adding some lines like:

. /usr/share/GNUstep/System/Library/Makefiles/GNUstep.sh
make_services

to your ~/.bashrc.

GNUstep.sh should set up your environment.  The extra files in env.d is really just a matter of convenience so that `man` can still find man pages regardless of sourcing GNUstep.sh and the env being otherwise set up.

I'll look into setting up something with profile.d at some point.

Closing this bug, since the bug itself is fixed, but feel free to email me or gentoo-gnustep@gentoo.org (mailing list) for these other issues.