upstream_rs/services/packaging/
progress.rs1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
2pub enum PackagePhase {
3 CreatingSnapshot,
4 RemovingRuntimeLinks,
5 ResolvingRelease,
6 DownloadingPackage,
7 ChecksummingPackage,
8 VerifyingSignature,
9 InstallingPackage,
10 ExtractingPackage,
11 CreatingRuntimeLinks,
12 CreatingDesktopEntry,
13 InstallingCompletions,
14 SavingMetadata,
15 RebuildingFromSource,
16 RemovingPackage,
17 RemovingMetadata,
18 PurgingPackageData,
19 RollingBack,
20 RestoringSnapshot,
21}
22
23impl PackagePhase {
24 pub fn label(self) -> &'static str {
25 match self {
26 Self::CreatingSnapshot => "Creating snapshot ...",
27 Self::RemovingRuntimeLinks => "Removing runtime links ...",
28 Self::ResolvingRelease => "Resolving release ...",
29 Self::DownloadingPackage => "Downloading package ...",
30 Self::ChecksummingPackage => "Checksumming package ...",
31 Self::VerifyingSignature => "Verifying signature ...",
32 Self::InstallingPackage => "Installing package ...",
33 Self::ExtractingPackage => "Extracting package ...",
34 Self::CreatingRuntimeLinks => "Creating runtime links ...",
35 Self::CreatingDesktopEntry => "Creating desktop entry ...",
36 Self::InstallingCompletions => "Installing completions ...",
37 Self::SavingMetadata => "Saving metadata ...",
38 Self::RebuildingFromSource => "Rebuilding from source ...",
39 Self::RemovingPackage => "Removing package ...",
40 Self::RemovingMetadata => "Removing metadata ...",
41 Self::PurgingPackageData => "Purging package data ...",
42 Self::RollingBack => "Rolling back ...",
43 Self::RestoringSnapshot => "Restoring snapshot ...",
44 }
45 }
46}
47
48#[derive(Debug, Clone, PartialEq, Eq)]
49pub enum PackageProgressEvent {
50 Phase(PackagePhase),
51 Download { downloaded: u64, total: u64 },
52 Warning(String),
53}
54
55#[derive(Debug, Clone, Copy, PartialEq, Eq)]
56pub enum OperationPhase {
57 SerializingManifest,
58 WritingManifest,
59 ScanningFiles,
60 ArchivingFiles,
61 FinalizingArchive,
62 ImportingManifest,
63 ImportingKeys,
64 ExtractingSnapshot,
65 CreatingSnapshotBackup,
66 RestoringSnapshot,
67 LoadingMetadata,
68}
69
70impl OperationPhase {
71 pub fn label(self) -> &'static str {
72 match self {
73 Self::SerializingManifest => "Serializing manifest ...",
74 Self::WritingManifest => "Writing manifest ...",
75 Self::ScanningFiles => "Scanning files ...",
76 Self::ArchivingFiles => "Archiving files ...",
77 Self::FinalizingArchive => "Finalizing archive ...",
78 Self::ImportingManifest => "Importing manifest ...",
79 Self::ImportingKeys => "Importing keys ...",
80 Self::ExtractingSnapshot => "Extracting snapshot ...",
81 Self::CreatingSnapshotBackup => "Creating snapshot backup ...",
82 Self::RestoringSnapshot => "Restoring snapshot ...",
83 Self::LoadingMetadata => "Loading metadata ...",
84 }
85 }
86}
87
88#[derive(Debug, Clone, PartialEq, Eq)]
89pub enum OperationProgressEvent {
90 Phase(OperationPhase),
91 Count { done: u64, total: u64 },
92 Warning(String),
93 Detail(String),
94}