diff --git a/src/libcalamares/modulesystem/RequirementsModel.cpp b/src/libcalamares/modulesystem/RequirementsModel.cpp index 4a776b3eb..50d70b150 100644 --- a/src/libcalamares/modulesystem/RequirementsModel.cpp +++ b/src/libcalamares/modulesystem/RequirementsModel.cpp @@ -18,6 +18,8 @@ #include "RequirementsModel.h" +#include "utils/Logger.h" + namespace Calamares { @@ -94,4 +96,20 @@ RequirementsModel::roleNames() const return roles; } +void +RequirementsModel::describe() const +{ + bool acceptable = true; + int count = 0; + for ( const auto& r : m_requirements ) + { + if ( r.mandatory && !r.satisfied ) + { + cDebug() << Logger::SubEntry << "requirement" << count << r.name << "is not satisfied."; + acceptable = false; + } + ++count; + } +} + } // namespace Calamares diff --git a/src/libcalamares/modulesystem/RequirementsModel.h b/src/libcalamares/modulesystem/RequirementsModel.h index e34dd02c2..eaf597509 100644 --- a/src/libcalamares/modulesystem/RequirementsModel.h +++ b/src/libcalamares/modulesystem/RequirementsModel.h @@ -71,6 +71,9 @@ public: int rowCount( const QModelIndex& ) const override; int count() const { return m_requirements.count(); } + ///@brief Debugging tool, describe the checking-state + void describe() const; + signals: void satisfiedRequirementsChanged( bool value ); void satisfiedMandatoryChanged( bool value );