fix windows assistant upgrade glitch
Prevent windows assistant from trying (and failing) to upgrade itself, which has never been supported on windows. The new windows build is made with UPGRADE_LOCATION set, which enabled this code path that had never run on windows before, and doesn't work. I don't want to try to support self-upgrade on windows, or generally on other OS's than the ones where its working, so added a check for that. This way the build can keep setting UPGRADE_LOCATION and if some later git-annex does learn how to upgrade itself on some OS, it won't need changing the build setup.
This commit is contained in:
parent
4b739fc460
commit
b3c88da181
5 changed files with 20 additions and 3 deletions
|
@ -31,7 +31,7 @@ import qualified Data.Text as T
|
||||||
|
|
||||||
upgraderThread :: UrlRenderer -> NamedThread
|
upgraderThread :: UrlRenderer -> NamedThread
|
||||||
upgraderThread urlrenderer = namedThread "Upgrader" $
|
upgraderThread urlrenderer = namedThread "Upgrader" $
|
||||||
when (isJust BuildInfo.upgradelocation) $ do
|
when upgradeSupported $ do
|
||||||
{- Check for upgrade on startup, unless it was just
|
{- Check for upgrade on startup, unless it was just
|
||||||
- upgraded. -}
|
- upgraded. -}
|
||||||
unlessM (liftIO checkSuccessfulUpgrade) $
|
unlessM (liftIO checkSuccessfulUpgrade) $
|
||||||
|
|
|
@ -338,6 +338,18 @@ distributionInfoUrl = fromJust BuildInfo.upgradelocation ++ ".info"
|
||||||
distributionInfoSigUrl :: String
|
distributionInfoSigUrl :: String
|
||||||
distributionInfoSigUrl = distributionInfoUrl ++ ".sig"
|
distributionInfoSigUrl = distributionInfoUrl ++ ".sig"
|
||||||
|
|
||||||
|
{- Upgrade only supported on linux and OSX. -}
|
||||||
|
upgradeSupported :: Bool
|
||||||
|
#ifdef linux_HOST_OS
|
||||||
|
upgradeSupported = isJust BuildInfo.upgradelocation
|
||||||
|
#else
|
||||||
|
#ifdef darwin_HOST_OS
|
||||||
|
upgradeSupported = isJust BuildInfo.upgradelocation
|
||||||
|
#else
|
||||||
|
upgradeSupported = False
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
{- Verifies that a file from the git-annex distribution has a valid
|
{- Verifies that a file from the git-annex distribution has a valid
|
||||||
- signature. Pass the detached .sig file; the file to be verified should
|
- signature. Pass the detached .sig file; the file to be verified should
|
||||||
- be located next to it.
|
- be located next to it.
|
||||||
|
|
|
@ -21,7 +21,7 @@ import Annex.NumCopies
|
||||||
import Utility.DataUnits
|
import Utility.DataUnits
|
||||||
import Git.Config
|
import Git.Config
|
||||||
import Types.Distribution
|
import Types.Distribution
|
||||||
import qualified BuildInfo
|
import Assistant.Upgrade
|
||||||
|
|
||||||
import qualified Data.Text as T
|
import qualified Data.Text as T
|
||||||
import qualified System.FilePath.ByteString as P
|
import qualified System.FilePath.ByteString as P
|
||||||
|
@ -59,7 +59,7 @@ prefsAForm d = PrefsForm
|
||||||
, ("disabled", NoAutoUpgrade)
|
, ("disabled", NoAutoUpgrade)
|
||||||
]
|
]
|
||||||
autoUpgradeLabel
|
autoUpgradeLabel
|
||||||
| isJust BuildInfo.upgradelocation = "Auto upgrade"
|
| upgradeSupported = "Auto upgrade"
|
||||||
| otherwise = "Auto restart on upgrade"
|
| otherwise = "Auto restart on upgrade"
|
||||||
|
|
||||||
positiveIntField = check isPositive intField
|
positiveIntField = check isPositive intField
|
||||||
|
|
|
@ -13,6 +13,8 @@ git-annex (8.20201117) UNRELEASED; urgency=medium
|
||||||
the stderr pipe to it was left open, due to a daemon having inherited
|
the stderr pipe to it was left open, due to a daemon having inherited
|
||||||
the file descriptor.
|
the file descriptor.
|
||||||
* Fix build on Windows.
|
* Fix build on Windows.
|
||||||
|
* Prevent windows assistant from trying (and failing) to upgrade
|
||||||
|
itself, which has never been supported on windows.
|
||||||
|
|
||||||
-- Joey Hess <id@joeyh.name> Mon, 16 Nov 2020 09:38:32 -0400
|
-- Joey Hess <id@joeyh.name> Mon, 16 Nov 2020 09:38:32 -0400
|
||||||
|
|
||||||
|
|
|
@ -37,3 +37,6 @@ Upgrader crashed: C:\Users\alexasus\.config\git-annex\program: openFile: does no
|
||||||
I've barely just installed. So I'm gonna get going these days. That warning doesn't seem to be an issue so far. I've looked it up but couldn't find any other reports for that warning.
|
I've barely just installed. So I'm gonna get going these days. That warning doesn't seem to be an issue so far. I've looked it up but couldn't find any other reports for that warning.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
> [[fixed|done]] (by skipping checking upgrades on OS's where it's not
|
||||||
|
> supported) --[[Joey]]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue