diff --git a/src/rebuild/rebuild.cpp b/src/rebuild/rebuild.cpp index faf5746..8f3dac7 100644 --- a/src/rebuild/rebuild.cpp +++ b/src/rebuild/rebuild.cpp @@ -1,7 +1,6 @@ #include "kappa/rebuild/rebuild.hpp" #include "kappa/install/install.hpp" -#include #include namespace kappa::rebuild { @@ -27,14 +26,11 @@ ChangeSet compute_changes(const dsl::SystemConfig& cfg) { if (e.name != p.name) { continue; } found = true; - bool ver_changed = !p.version.empty() - && e.version != p.version; - bool feat_changed = !p.features.empty(); - bool cfg_changed = !p.config.empty(); + bool changed = !p.version.empty() + || !p.features.empty() + || !p.config.empty(); - if (ver_changed || feat_changed || cfg_changed) { - cs.changed.push_back(p.name); - } + if (changed) { cs.changed.push_back(p.name); } break; } if (!found) { cs.added.push_back(p.name); } @@ -59,23 +55,7 @@ ChangeSet compute_changes(const dsl::SystemConfig& cfg) { } for (auto& svc : cfg.services) { - if (!svc.enable) { continue; } - bool found = false; - for (auto& e : installed) { - if (e.name == ("svc:" + svc.name)) { - found = true; - for (auto& [k, v] : svc.config) { - auto it = std::find(e.provides.begin(), e.provides.end(), - k + "=" + v); - if (it == e.provides.end()) { - cs.services_changed = true; - break; - } - } - break; - } - } - if (!found) { cs.services_changed = true; break; } + if (svc.enable) { cs.services_changed = true; break; } } return cs;