#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Changes (by hamish):
* keywords: v.label.sa => v.label.sa, g.mkfontcap, wingrass
* priority: normal => critical
* component: default => Installation
* summary: v.label.sa - No Font Definition File, windows xp => No Font
Definition File, windows xp
Comment:
'd.font -l' and 'd.font -L' also fail.
-> g.mkfontcap needs to be run as part of the WinGrass installer, or upon
the first time you run grass.
Init.sh:
{{{
if [ ! -e "$GISBASE/etc/fontcap" ] ; do
g.mkfontcap
fi
}}}
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by glynn):
Replying to [comment:2 hamish]:
> maybe for GRASS 7 we should first check for it in ~/.grass7/fontcap, and
if not found there look for it in $(ETC)/fontcap?
The code which reads the file uses $GRASS_FONT_CAP if it is set and the
file can be read, otherwise $GISBASE/etc/fontcap.
If g.mkfontcap is run without the -s flag, the data will be written to
$GRASS_FONT_CAP if it is set, otherwise to $GISBASE/etc/fontcap. If
$GRASS_FONT_CAP is set but the file cannot be written, it fails.
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by hellik):
Replying to [comment:2 hamish]:
> ... but for be benefit of users without admin rights on the system it
should probably happen as part of the installer.
[...]
> Hamish
Replying to [comment:2 hamish]:
> ... but for be benefit of users without admin rights on the system it
should probably happen as part of the installer.
>
> maybe for GRASS 7 we should first check for it in ~/.grass7/fontcap, and
if not found there look for it in $(ETC)/fontcap?
>
>
> Hamish
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by hamish):
it uses G_no_gisinit(), but from outside of grass (ie in the installer) it
still needs to have ligbis and the freetype lib found somewhere in the
%PATH%, right?
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by hellik):
Replying to [comment:6 hamish]:
> it uses G_no_gisinit(), but from outside of grass (ie in the installer)
it still needs to have ligbis and the freetype lib found somewhere in the
%PATH%, right?
for testing, I've tried g.mkfontcap.exe in a MS-cmd outside a grass-
session, so there is an error "libfreetype-6.dll couldn't be found".
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by glynn):
Replying to [comment:6 hamish]:
> it uses G_no_gisinit(), but from outside of grass (ie in the installer)
it still needs to have ligbis and the freetype lib found somewhere in the
%PATH%, right?
Right.
It also needs $GISBASE to be set so that it can find the stroke fonts in
$GISBASE/fonts.
And it needs $GISRC to be set (and valid) because `G_parser()` uses
`G__getenv("OVERWRITE")` as well as `getenv("GRASS_OVERWRITE")`. It checks
these regardless of whether there are any options with "new" in the
gisprompt field (the overwrite field in the GModule structure is set
according to whether overwrite is enabled so that modules can perform
their own checks).
AFAICT, the simplest fix is to add:
{{{
G_set_gisrc_mode(G_GISRC_MODE_MEMORY);
}}}
to `G_no_gisinit()`.
Fixed in r40854 (6.5) and r40855 (7.0). Suggest back-port to 6.4 after
testing.
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by glynn):
Replying to [comment:8 glynn]:
> AFAICT, the simplest fix is to add:
{{{
G_set_gisrc_mode(G_GISRC_MODE_MEMORY);
}}}
> to `G_no_gisinit()`.
Oops. It took me all of two minutes to realise that isn't going to work
(it breaks g.proj and g.gisenv). I've moved the code into g.mkfontcap and
g.dirseps in r40856 (7.0) and r40857 (6.5).
Hamish, Many government organizations that use Windows are going to LUA, ``[http://technet.microsoft.com/en-us/library/cc700846.aspx](http://technet.microsoft.com/en-us/library/cc700846.aspx)`` Least-privileged User Account environments for most users. Having a normal user need to do anything as an administrator to run a program is almost a show-stopper for deployment in these environments.
So, I wholeheartedly applaud anything that can be done to make GRASS run well under Windows without any administrative access.
Doug
`` Doug Newcomb USFWS Raleigh, NC 919-856-4520 ext. 14 doug_newcomb@fws.gov --------------------------------------------------------------------------------------------------------- The opinions I express are my own and are not representative of the official policy of the U.S.Fish and Wildlife Service or Dept. of the Interior. Life is too short for undocumented, proprietary data formats.
To: undisclosed-recipients:; From: "GRASS GIS" Sent by: grass-dev-bounces@lists.osgeo.org Date: 02/05/2010 03:41AM Subject: [GRASS-dev] Re: [GRASS GIS] #908: No Font Definition File, windows xp
#908: No Font Definition File, windows xp ---------------------------+------------------------------------------------ Reporter: voncasec | Owner: grass-dev@lists.osgeo.org Type: defect | Status: new Priority: critical | Milestone: 6.4.0 Component: Installation | Version: svn-releasebranch64 Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass Platform: MSWindows XP | Cpu: Unspecified ---------------------------+------------------------------------------------ Comment (by hamish):
... but for be benefit of users without admin rights on the system it should probably happen as part of the installer.
maybe for GRASS 7 we should first check for it in ~/.grass7/fontcap, and if not found there look for it in $(ETC)/fontcap?
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by hellik):
Replying to [comment:9 glynn]:
> Replying to [comment:8 glynn]:
>
> > AFAICT, the simplest fix is to add:
> {{{
> G_set_gisrc_mode(G_GISRC_MODE_MEMORY);
> }}}
> > to `G_no_gisinit()`.
>
> Oops. It took me all of two minutes to realise that isn't going to work
(it breaks >g.proj and g.gisenv). I've moved the code into g.mkfontcap and
g.dirseps in r40856 >(7.0) and r40857 (6.5).
what does this mean for running g.mkfontcap outside a Grass-session (and
accordingly for the NSIS-installer)? which parameters have to be set for
working g.mkfontcap outside a Grass-session?
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by glynn):
Replying to [comment:10 hellik]:
> what does this mean for running g.mkfontcap outside a Grass-session (and
accordingly for the NSIS-installer)? which parameters have to be set for
working g.mkfontcap outside a Grass-session?
GISRC should no longer have to be set. GISBASE must still be set (this
eliminates the need for the installer to set GRASS_FONT_CAP, as the
default of $GISBASE/etc/fontcap will work).
Many government organizations that use Windows are
going to LUA, http://technet.microsoft.com/en-us/library/cc700846.aspx Least-privileged
User Account environments for most users. Having a
normal user need to do anything as an administrator to run a
program is almost a show-stopper for deployment in these
environments.
So, I wholeheartedly applaud anything that
can be done to make GRASS run well under Windows without any
administrative access.
This has certainly been our intention all along. There is some stuff yet
to figure out and work around (like adding v.patch and r.patch to the
package manifest so UAC doesn't choke on the word "patch"), but for the
most part I think we are, or at least will be, in pretty good shape.
It really helps that this has already been the UNIX model since forever,
in fact even if the multi-user stuff isn't used as much anymore, this is
the model GRASS was originally designed for. I think it would be much
harder to go the other way and try and port a large DOS+Windows codebase+
way of doing things into a UNIX ecosystem.
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by hellik):
Replying to [comment:11 glynn]:
> Replying to [comment:10 hellik]:
>
> > what does this mean for running g.mkfontcap outside a Grass-session
(and accordingly for the NSIS-installer)? which parameters have to be set
for working g.mkfontcap outside a Grass-session?
>
> GISRC should no longer have to be set. GISBASE must still be set (this
eliminates the need for the installer to set GRASS_FONT_CAP, as the
default of $GISBASE/etc/fontcap will work).
i've tested g.mkfontcap with grass65 running outside a grass-session. it's
working, fontcap is built.
I attach a patch for the NSIS-installer script to write a little cmd-file
to set all dependecies and then run g.mkfontcap outside a grass session.
the cmd is working by right click with "run as admin" on
C:\Program Files\GRASS-65-SVN\etc\install_run_gmkfontcap.cmd
but if it's started by the installer itself, there seems that
install_run_gmkfontcap.cmd isn't allowed to write fontcap in C:\Program
Files\GRASS-65-SVN\etc\.
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by hellik):
Replying to [comment:12 hellik]:
> I attach a patch for the NSIS-installer script to write a little cmd-
file to set all dependecies and then run g.mkfontcap outside a grass
session.
there was a typo, i change the patch, but it doesn't help to run the
g.mkfontcap by the installer.
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by hellik):
Replying to [comment:13 hellik]:
> Replying to [comment:12 hellik]:
> > I attach a patch for the NSIS-installer script to write a little cmd-
file to set all dependecies and then run g.mkfontcap outside a grass
session.
>
> there was a typo, i change the patch, but it doesn't help to run the
g.mkfontcap by the installer.
>
> Helmut
the added patch for the NSIS-installer-script is now working, that means
g.mkfontcap is now invoked by the WinGrass-installer and writes
succesfully the fontcap-file in c:\Program Files\Grass65-SVN\etc.
the only thing at the moment is, g.mkfontcap works longer (searching for
fonts) than the WinGrass-installer installs WinGrass, so after closing the
WinGrass-installer the Windows-command-box is still opened.
maybe is there a possibility to run the ''run_gmkfontcap.cmd''-script in
the background without opening Windows-command-box?
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by glynn):
Replying to [comment:15 hellik]:
> the only thing at the moment is, g.mkfontcap works longer (searching for
fonts) than the WinGrass-installer installs WinGrass, so after closing the
WinGrass-installer the Windows-command-box is still opened.
>
> maybe is there a possibility to run the ''run_gmkfontcap.cmd''-script in
the background without opening Windows-command-box?
It depends upon what's opening the console Window. If it's NSIS, there
might be an option within NSIS to do it. Otherwise, "`start /b ...`" might
work.
> p.s. how can I delete an old attachment in track?
I don't think that you can, although you can replace an attachment with an
updated version.
#908: No Font Definition File, windows xp
---------------------------+------------------------------------------------
Reporter: voncasec | Owner: grass-dev@lists.osgeo.org
Type: defect | Status: new
Priority: critical | Milestone: 6.4.0
Component: Installation | Version: svn-releasebranch64
Resolution: | Keywords: v.label.sa, g.mkfontcap, wingrass
Platform: MSWindows XP | Cpu: Unspecified
---------------------------+------------------------------------------------
Comment (by hellik):
Replying to [comment:16 glynn]:
> Replying to [comment:15 hellik]:
>
> > the only thing at the moment is, g.mkfontcap works longer (searching
for fonts) than the WinGrass-installer installs WinGrass, so after closing
the WinGrass-installer the Windows-command-box is still opened.
> >
> > maybe is there a possibility to run the ''run_gmkfontcap.cmd''-script
in the background without opening Windows-command-box?
>
> It depends upon what's opening the console Window. If it's NSIS, there
might be an option within NSIS to do it. Otherwise, "`start /b ...`" might
work.
>
there would be an option with a second bat starting run_gmkfontcap.bat
minimized:
{{{ @echo off
rem
#########################################################################
rem #run run_gmkfontcap.bat minimized
rem
#########################################################################
start /MIN "C:\Program Files\GRASS-65-SVN\etc\run_gmkfontcap.bat"
exit
}}}
I've tried this by invoking the above script by the installer, a minimized
console is started, but ''run_gmkfontcap.bat'' isn't running/started.
''run_gmkfontcap.bat'' itself invoked by the installer is working.