aboutsummaryrefslogtreecommitdiff
path: root/src/remove_pkg.cc
diff options
context:
space:
mode:
authordacctal <dacctal@symlinx.net>2026-05-02 09:09:39 +0000
committerdacctal <dacctal@symlinx.net>2026-05-02 09:09:39 +0000
commitac6c1dfd676eedca3e1b3c4d5c3b0ecf32fc1539 (patch)
tree81496b9df79bb8b4f6d41934c638a7c31e9ba9f5 /src/remove_pkg.cc
parent47652687bcf1e02eb5503a6223b16238d4d6d161 (diff)
fixed like half of everything idk, you can install stuff now
Diffstat (limited to 'src/remove_pkg.cc')
-rw-r--r--src/remove_pkg.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/remove_pkg.cc b/src/remove_pkg.cc
index 6b82296..0138f38 100644
--- a/src/remove_pkg.cc
+++ b/src/remove_pkg.cc
@@ -7,19 +7,24 @@
#include "vars.hh"
void remove_pkg(Pkg pkg) {
+ if (!std::filesystem::exists(pkg.src)) {
+ std::cout << print_pkgit << pkg.name << " is not installed!" << std::endl;
+ return;
+ }
for (auto const& dir_entry : std::filesystem::recursive_directory_iterator(pkg.src)) {
if (dir_entry.path().extension().string().rfind(".so", 0) == 0) {
std::filesystem::remove(install_directories["lib"]+"/"+dir_entry.path().filename().string());
- std::cout << print_pkgit << "removed library: " << dir_entry << "\n";
+ //std::cout << print_pkgit << "removed library: " << dir_entry << "\n";
} else if (!access(dir_entry.path().c_str(), X_OK) && !is_directory(dir_entry.path())) {
std::filesystem::remove(install_directories["bin"]+"/"+dir_entry.path().filename().string());
- std::cout << print_pkgit << "removed executable: " << dir_entry << "\n";
+ //std::cout << print_pkgit << "removed executable: " << dir_entry << "\n";
} else if (dir_entry.path().extension() == ".h") {
std::filesystem::remove(install_directories["include"]+"/"+dir_entry.path().filename().string());
- std::cout << print_pkgit << "removed include: " << dir_entry << "\n";
+ //std::cout << print_pkgit << "removed include: " << dir_entry << "\n";
}
}
remove_all(pkg.src.parent_path());
+ std::cout << print_pkgit << "removed " << pkg.name << "\n";
}