Changeset View
Changeset View
Standalone View
Standalone View
devel/hs-git-annex/files/patch-Build__DesktopFile.hs
--- Build/DesktopFile.hs.orig 2017-06-12 17:56:05 UTC | --- Build/DesktopFile.hs.orig 2018-12-11 20:34:28 UTC | ||||
+++ Build/DesktopFile.hs | +++ Build/DesktopFile.hs | ||||
@@ -25,6 +25,7 @@ import System.Environment | @@ -21,6 +21,7 @@ import Utility.OSX | ||||
#ifndef mingw32_HOST_OS | import Assistant.Install.AutoStart | ||||
import System.Posix.User | import Assistant.Install.Menu | ||||
#endif | |||||
+import System.FilePath.Posix | +import System.FilePath ((</>)) | ||||
import System.Environment | |||||
import System.PosixCompat.User | |||||
import Data.Maybe | import Data.Maybe | ||||
import Control.Applicative | @@ -28,7 +29,7 @@ import Control.Applicative | ||||
import Prelude | import Prelude | ||||
@@ -50,12 +51,17 @@ writeFDODesktop :: FilePath -> IO () | |||||
systemwideInstall :: IO Bool | |||||
-#ifndef mingw32_HOST_OS | |||||
+#ifndef mingw32_HOST_OS | |||||
systemwideInstall = isroot <||> destdirset | |||||
where | |||||
isroot = do | |||||
@@ -48,13 +49,18 @@ writeFDODesktop :: FilePath -> IO () | |||||
writeFDODesktop command = do | writeFDODesktop command = do | ||||
systemwide <- systemwideInstall | systemwide <- systemwideInstall | ||||
- datadir <- if systemwide then return systemDataDir else userDataDir | - datadir <- if systemwide then return systemDataDir else userDataDir | ||||
+ prefix <- catchMaybeIO (getEnv "PREFIX") | + prefix <- catchMaybeIO (getEnv "PREFIX") | ||||
+ let (sddir,scdir) = case prefix of | + let (sddir,scdir) = case prefix of | ||||
+ Just p -> (p </> "share", p </> "etc/xdg") | + Just p -> (p </> "share", p </> "etc/xdg") | ||||
+ Nothing -> (systemDataDir, systemConfigDir) | + Nothing -> (systemDataDir, systemConfigDir) | ||||
+ | + | ||||
+ datadir <- if systemwide then return sddir else userDataDir | + datadir <- if systemwide then return sddir else userDataDir | ||||
menufile <- inDestDir (desktopMenuFilePath "git-annex" datadir) | menufile <- inDestDir (desktopMenuFilePath "git-annex" datadir) | ||||
icondir <- inDestDir (iconDir datadir) | icondir <- inDestDir (iconDir datadir) | ||||
installMenu command menufile "doc" icondir | installMenu command menufile "doc" icondir | ||||
- configdir <- if systemwide then return systemConfigDir else userConfigDir | - configdir <- if systemwide then return systemConfigDir else userConfigDir | ||||
- installAutoStart command | |||||
+ configdir <- if systemwide then return scdir else userConfigDir | + configdir <- if systemwide then return scdir else userConfigDir | ||||
installAutoStart command | + installAutoStart command | ||||
=<< inDestDir (autoStartPath "git-annex" configdir) | =<< inDestDir (autoStartPath "git-annex" configdir) | ||||
writeOSXDesktop :: FilePath -> IO () |