Update to alpm.rs 4.0.1 with partial reversion of b621c34

- Updated to alpm.rs 4.0.1
- Changes made with b621c34 were made as a result of a regression,
  introduced with alpm.rs 3.0.x, of which has now been fixed upstream.
  They've now since been reverted.
This commit is contained in:
Xavier Moffett 2024-09-20 23:55:52 -04:00
parent d1622eb0b4
commit 07d3963196
Signed by: Sapphirus
GPG key ID: A6C061B2CEA1A7AC
5 changed files with 24 additions and 22 deletions

4
Cargo.lock generated
View file

@ -13,9 +13,9 @@ dependencies = [
[[package]]
name = "alpm"
version = "4.0.0"
version = "4.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d07c43bf396280fdda8928f725a89cdb8c525bba0240494f5da6b40aafe61387"
checksum = "c02d4b4d6bc861451437cdbd7feb35385874ff4cc449ace8e793fe8c30533240"
dependencies = [
"alpm-sys",
"bitflags 2.6.0",

View file

@ -22,4 +22,4 @@ serde = { version = "1.0", features = ["derive"] }
bincode = "1.3.3"
# Packaging
alpm = { version = "4.0.0", features = ["checkver"] }
alpm = { version = "4.0.1", features = ["checkver"] }

View file

@ -37,7 +37,7 @@ libseccomp = "0.3.0"
signal-hook = "0.3.15"
# Packaging
alpm = { version = "4.0.0", features = ["checkver"] }
alpm = { version = "4.0.1", features = ["checkver"] }
pacmanconf = "2.0.0"
tar = "0.4"
zstd = "0.13.0"

View file

@ -20,13 +20,7 @@
use std::thread::Builder;
use alpm::{
Alpm,
CommitData,
CommitError,
Error::{ConflictingDeps, FileConflicts, PkgInvalid, PkgInvalidArch, PkgInvalidChecksum, PkgInvalidSig, UnsatisfiedDeps},
Package,
PrepareData,
PrepareError,
Alpm, CommitData, CommitError, Error::{ConflictingDeps, FileConflicts, PkgInvalid, PkgInvalidArch, PkgInvalidChecksum, PkgInvalidSig, UnsatisfiedDeps}, FileConflictType, Package, PrepareData, PrepareError
};
use signal_hook::iterator::Signals;
@ -98,16 +92,24 @@ pub fn erroneous_transaction(error: CommitError) -> Result<()> {
match error.data() {
CommitData::FileConflict(file) => {
for conflict in file {
print_warning(&format!(
"Conflict between {}{}{} and {}{}{}: {}",
*BOLD,
conflict.package1().name(),
*RESET,
*BOLD,
conflict.package2().name(),
*RESET,
conflict.reason()
));
match conflict.conflict_type() {
FileConflictType::Filesystem => {
let file = conflict.file();
let target = conflict.target();
print_warning(&format!("{}: '{}' already exists.", target, file));
}
FileConflictType::Target => {
let file = conflict.file();
let target = format!("{}{}{}", *BOLD_WHITE, conflict.target(), *RESET);
if let Some(conflicting) = conflict.conflicting_target() {
let conflicting = format!("{}{conflicting}{}", *BOLD_WHITE, *RESET);
print_warning(&format!("{conflicting}: '{target}' is owned by {file}"));
} else {
print_warning(&format!("{target}: '{file}' is owned by foreign target"));
}
}
}
}
err!(SyncError::TransactionFailure("Conflict within container filesystem".into()))?

View file

@ -27,7 +27,7 @@ signal-hook = "0.3.15"
os_pipe = "1.1.4"
# Packaging
alpm = { version = "4.0.0", features = ["checkver"] }
alpm = { version = "4.0.1", features = ["checkver"] }
# Miscellaneous
sha2 = "0.10.8"