1use crate::pkg::{local, resolve};
2use anyhow::{Result, anyhow};
3use colored::*;
4
5pub fn run(package_name: &str) -> Result<()> {
6 let (pkg_meta, _, _, _, _) = resolve::resolve_package_and_version(package_name, false)?;
7
8 let installed_packages = local::get_installed_packages()?;
9
10 let Some(pkg) = installed_packages.iter().find(|p| p.name == pkg_meta.name) else {
11 return Err(anyhow!("Package '{}' is not installed.", package_name));
12 };
13
14 println!("Files for {} {}:", pkg.name.cyan(), pkg.version.yellow());
15
16 if pkg.installed_files.is_empty() {
17 println!("(No files recorded for this package)");
18 } else {
19 let mut sorted_files = pkg.installed_files.clone();
20 sorted_files.sort();
21 for file in &sorted_files {
22 println!("{}", file);
23 }
24 }
25
26 Ok(())
27}