pull: add --repository to pull from external flat repositories
Add a --repository flag taking the full suite URL of an external flat repository (e.g. https://pkg.noctalia.dev/deb/resolute/), i.e. one with no dists/ hierarchy, like apt's exact-path suites ('Suites: resolute/'). The suite name is read from the root Release file (Codename/Suite), the sources index is fetched from the repository root as Sources.xz/gz/plain, and package files are resolved against the URL root, ignoring the stanza Directory field like apt does. As with PPAs, the stanza Vcs-Git is never used for external repositories, so the source always comes from the repository itself. Also make the sources index parser detect compression by magic bytes (gz/xz/plain) instead of assuming gzip, and fix extraction of archives with './'-prefixed entries, which previously aborted and are now extracted in place instead of being relocated.
This commit is contained in:
+1
-1
@@ -383,7 +383,7 @@ mod tests {
|
||||
|
||||
log::info!("Pulling package {} from {}...", package, series);
|
||||
let package_info =
|
||||
crate::package_info::lookup(package, None, Some(series), "", dist, None, None)
|
||||
crate::package_info::lookup(package, None, Some(series), "", dist, None, None, None)
|
||||
.await
|
||||
.expect("Cannot lookup package information");
|
||||
crate::pull::pull(&package_info, Some(cwd), None, true)
|
||||
|
||||
Reference in New Issue
Block a user