Add OSX standalone app license bundle, and arrange for the About page

to link to it.
This commit is contained in:
Joey Hess 2012-09-27 16:47:52 -04:00
parent ad5b35026e
commit a02d6b36d8
8 changed files with 44 additions and 8 deletions

View file

@ -16,6 +16,9 @@ import Utility.OSX
import System.Posix.Env
standaloneOSXAppBase :: IO (Maybe FilePath)
standaloneOSXAppBase = getEnv "GIT_ANNEX_OSX_APP_BASE"
{- The OSX git-annex.app does not have an installation process.
- So when it's run, it needs to set up autostarting of the assistant
- daemon, as well as writing the programFile, and putting a
@ -25,11 +28,10 @@ import System.Posix.Env
- it around, the paths this sets up won't break.
-}
ensureInstalled :: IO ()
ensureInstalled = do
e <- getEnv "GIT_ANNEX_OSX_APP_BASE"
case e of
Nothing -> return ()
Just base -> do
ensureInstalled = go =<< standaloneOSXAppBase
where
go Nothing = noop
go (Just base) = do
let program = base ++ "/bin/git-annex"
programfile <- programFile
createDirectoryIfMissing True (parentDir programfile)

View file

@ -9,15 +9,36 @@
module Assistant.WebApp.Documentation where
import Assistant.Common
import Assistant.WebApp
import Assistant.WebApp.Types
import Assistant.WebApp.SideBar
import Assistant.Install (standaloneOSXAppBase)
import Utility.Yesod
import Yesod
{- The full license info may be included in a file on disk that can
- be read in and displayed. -}
licenseFile :: IO (Maybe FilePath)
licenseFile = do
base <- standaloneOSXAppBase
return $ (</> "LICENSE") <$> base
getAboutR :: Handler RepHtml
getAboutR = bootstrap (Just About) $ do
sideBarDisplay
setTitle "About git-annex"
builtinlicense <- isJust <$> liftIO licenseFile
$(widgetFile "documentation/about")
getLicenseR :: Handler RepHtml
getLicenseR = do
v <- liftIO licenseFile
case v of
Nothing -> redirect AboutR
Just f -> bootstrap (Just About) $ do
sideBarDisplay
setTitle "License"
license <- liftIO $ readFile f
$(widgetFile "documentation/license")

View file

@ -2,6 +2,7 @@
/noscript NoScriptR GET
/noscript/auto NoScriptAutoR GET
/about AboutR GET
/about/license LicenseR GET
/config ConfigR GET
/config/repository RepositoriesR GET

View file

@ -147,6 +147,7 @@ osxapp: $(bins)
cp git-annex "$(OSXAPP_BASE)/bin/"
strip "$(OSXAPP_BASE)/bin/git-annex"
ln -sf git-annex "$(OSXAPP_BASE)/bin/git-annex-shell"
zcat doc/license/git-annex-osx.app-licences.gz > $(OSXAPP_DEST)/LICENSE
for bin in $(THIRDPARTY_BINS); do \
cp "$$(which "$$bin")" "$(OSXAPP_BASE)/bin/" || echo "$$bin not available; skipping"; \

View file

@ -10,5 +10,5 @@ not include this code, so remains GPLed.
git-annex contains a variety of other code, artwork, etc copyright by
others, under a variety of licences, including the [[LGPL]], BSD,
MIT, and Apache 2.0 license. For a detailed overview, and pointers to the
full licenses of these components, see the COPYRIGHT file in the source.
MIT, and Apache 2.0 licenses. For details, see
[this file](http://source.git-annex.branchable.com/?p=source.git;a=blob_plain;f=debian/copyright;hb=HEAD).

Binary file not shown.

View file

@ -10,8 +10,17 @@
<hr>
git-annex is © 2010-2012 Joey Hess. It is free software, licensed #
under the terms of the GNU General Public License, version 3 or above. #
This webapp is licensed under the terms of the GNU Affero General #
Public License, version 3 or above. #
For full license information, see #
$if builtinlicense
<a href="@{LicenseR}">
this page.
$else
<a href="http://git-annex.branchable.com/license">
this page.
<p>
Its development was made possible by #
Development git-annex was made possible by #
<a href="http://git-annex.branchable.com/assistant/thanks/">
many excellent people
. <i .icon-heart></i>

View file

@ -0,0 +1,2 @@
<pre>
#{license}