[Haskell-cafe] hoogle command line program on Linux

Neil Mitchell ndmitchell at gmail.com
Mon Jan 10 07:58:27 CET 2011


Hi Erik,

> The next problem is that hoogle installed as a Debian package would
> install as root as /usr/bin/hoogle. Then, when I run "hoogle data" it
> wants to install the database at /usr/share/hoogle/hoogle-4.1.3/databases
> which fails because I'm not running as root. So, to install the databases
> I need to run "sudo hoogle data" (which is acceptable), but then an
> unprivelidge user can't run hoogle because they don't have read permission
> on the database.
>
> The solution would be to set the umask before writing the databases.
> Something like (untested):
>
>    import System.Posx
>
>
>    -- Set umask to world read/execute. Save old umask for
>    -- restoration later.
>    oldumask <- setFileCreationMask 0o022

Should all files created by hoogle data always have world
read/execute? I'm not sure what the Unix conventions are - would that
be reasonable? If so, I'll make a new release that just changes the
file creation mask to the above during hoogle data (and sets it back
after).

Thanks, Neil



More information about the Haskell-Cafe mailing list