The wget command will now be used in preference to curl, if available.
Got tired of curl's various ugly progress bars.
This commit is contained in:
parent
f82da1d9dc
commit
6e750764b7
5 changed files with 31 additions and 10 deletions
12
Utility.hs
12
Utility.hs
|
@ -15,7 +15,8 @@ module Utility (
|
|||
dirContains,
|
||||
dirContents,
|
||||
myHomeDir,
|
||||
catchBool
|
||||
catchBool,
|
||||
inPath
|
||||
) where
|
||||
|
||||
import IO (bracket)
|
||||
|
@ -94,3 +95,12 @@ myHomeDir = do
|
|||
{- Catches IO errors and returns a Bool -}
|
||||
catchBool :: IO Bool -> IO Bool
|
||||
catchBool = flip catch (const $ return False)
|
||||
|
||||
{- Checks if a command is available in PATH. -}
|
||||
inPath :: String -> IO Bool
|
||||
inPath command = search =<< getSearchPath
|
||||
where
|
||||
search [] = return False
|
||||
search (d:ds) = do
|
||||
e <- doesFileExist $ d </> command
|
||||
if e then return True else search ds
|
||||
|
|
|
@ -20,6 +20,7 @@ import Network.URI
|
|||
import Types
|
||||
import Messages
|
||||
import Utility.SafeCommand
|
||||
import Utility
|
||||
|
||||
type URLString = String
|
||||
|
||||
|
@ -35,15 +36,24 @@ exists url =
|
|||
_ -> return False
|
||||
|
||||
{- Used to download large files, such as the contents of keys.
|
||||
- Uses curl program for its progress bar. -}
|
||||
- Uses wget or curl program for its progress bar. (Wget has a better one,
|
||||
- so is preferred.) -}
|
||||
download :: URLString -> FilePath -> Annex Bool
|
||||
download url file = do
|
||||
showOutput -- make way for curl progress bar
|
||||
-- Uses the -# progress display, because the normal one is very
|
||||
-- confusing when resuming, showing the remainder to download
|
||||
-- as the whole file, and not indicating how much percent was
|
||||
showOutput -- make way for program's progress bar
|
||||
e <- liftIO $ inPath "wget"
|
||||
if e
|
||||
then
|
||||
liftIO $ boolSystem "wget"
|
||||
[Params "-c -O", File file, File url]
|
||||
else
|
||||
-- Uses the -# progress display, because the normal
|
||||
-- one is very confusing when resuming, showing
|
||||
-- the remainder to download as the whole file,
|
||||
-- and not indicating how much percent was
|
||||
-- downloaded before the resume.
|
||||
liftIO $ boolSystem "curl" [Params "-L -C - -# -o", File file, File url]
|
||||
liftIO $ boolSystem "curl"
|
||||
[Params "-L -C - -# -o", File file, File url]
|
||||
|
||||
{- Downloads a small file. -}
|
||||
get :: URLString -> IO String
|
||||
|
|
1
debian/changelog
vendored
1
debian/changelog
vendored
|
@ -2,6 +2,7 @@ git-annex (3.20110820) UNRELEASED; urgency=low
|
|||
|
||||
* Set EMAIL when running test suite so that git does not need to be
|
||||
configured first. Closes: #638998
|
||||
* The wget command will now be used in preference to curl, if available.
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Tue, 23 Aug 2011 13:41:01 -0400
|
||||
|
||||
|
|
2
debian/control
vendored
2
debian/control
vendored
|
@ -31,7 +31,7 @@ Depends: ${misc:Depends}, ${shlibs:Depends},
|
|||
git | git-core,
|
||||
uuid,
|
||||
rsync,
|
||||
curl,
|
||||
wget | curl,
|
||||
openssh-client
|
||||
Suggests: graphviz, bup, gnupg
|
||||
Description: manage files with git, without checking their contents into git
|
||||
|
|
|
@ -34,7 +34,7 @@ To build and use git-annex, you will need:
|
|||
(or `uuidgen` from util-linux)
|
||||
* [xargs](http://savannah.gnu.org/projects/findutils/)
|
||||
* [rsync](http://rsync.samba.org/)
|
||||
* [curl](http://http://curl.haxx.se/) (optional, but recommended)
|
||||
* [wget](http://www.gnu.org/software/wget/) or [curl](http://http://curl.haxx.se/) (optional, but recommended)
|
||||
* [sha1sum](ftp://ftp.gnu.org/gnu/coreutils/) (optional, but recommended;
|
||||
a sha1 command will also do)
|
||||
* [gpg](http://gnupg.org/) (optional; needed for encryption)
|
||||
|
|
Loading…
Add table
Reference in a new issue