Skip to content
Commits on Source (3)
......@@ -30,7 +30,7 @@ acquireFile url offline = do
hPutStrLn stderr $ "Cached file for " ++ url ++ " does not exist, cannot use offline mode."
exitFailure
-- --insecure due to curl failing on paradis :-(
let args = [ "-R" , "--insecure", "-s", "-S", "-L", "-o", savename] ++
let args = [ "-f", "-R" , "--insecure", "-s", "-S", "-L", "-o", savename] ++
(if ex then ["-z", savename] else []) ++
[ url ]
unless offline $ do
......
......@@ -46,8 +46,11 @@ defaultArches = words "amd64 arm64 armel armhf hurd-i386 i386 mips mipsel mips64
extraArches :: [Arch]
extraArches = words "sparc"
portsArches :: [Arch]
portsArches = words "alpha hppa ia64 m68k powerpcspe ppc64 sh4 sparc64 x32"
allArches :: [Arch]
allArches = defaultArches ++ extraArches
allArches = defaultArches ++ extraArches ++ portsArches
type SourceName = String
type Version = String
......@@ -375,14 +378,25 @@ fetchWannaBuildHTTP conf a = do
-- Reading archive files
debianMirror :: String
debianMirror = "http://cdn-fastly.deb.debian.org/debian"
debianMirror :: Arch -> String
debianMirror arch = printf "http://cdn-fastly.deb.debian.org/%s" subdir
where
subdir = if arch `elem` portsArches then "debian-ports" else "debian"
builddMirror :: Arch -> String
builddMirror arch =
if arch `elem` portsArches then "http://incoming.ports.debian.org/buildd"
else "http://incoming.debian.org/debian-buildd"
packageURL :: String -> Arch -> String
packageURL "sid" a = printf "%s/dists/sid/main/binary-%s/Packages.xz" debianMirror a
packageURL "buildd-sid" a = printf "http://incoming.debian.org/debian-buildd/dists/buildd-sid/main/binary-%s/Packages.xz" a
packageURL "experimental" a = printf "%s/dists/experimental/main/binary-%s/Packages.xz" debianMirror a
packageURL "buildd-experimental" a = printf "http://incoming.debian.org/debian-buildd/dists/buildd-experimental/main/binary-%s/Packages.xz" a
packageURL suite arch = printf "%s/dists/%s/main/binary-%s/Packages.xz" mirror suite' arch
where
mirror = (if isPrefixOf "buildd-" suite then builddMirror else debianMirror) arch
suite' = if arch `elem` portsArches then
case stripPrefix "buildd-" suite of
Just stripped -> stripped
Nothing -> suite
else suite
acquirePackagesHTTP :: Conf -> String -> Arch -> IO [Binary]
acquirePackagesHTTP conf suite arch = do
......