diff --git a/qt-apps/heurams-k/heurams-k.py b/qt-apps/heurams-k/heurams-k.py index 47b490e..7393aa1 100644 --- a/qt-apps/heurams-k/heurams-k.py +++ b/qt-apps/heurams-k/heurams-k.py @@ -1,45 +1,43 @@ +import info from Blueprints.CraftPackageObject import CraftPackageObject +from CraftCore import CraftCore from Package.CMakePackageBase import CMakePackageBase -class subinfo(CraftPackageObject.get('qt-apps').subinfo): - def populateCache(self): - # 基础信息 - self.displayName = "HeurAMS-K" +class subinfo(info.infoclass): + def setTargets(self): + self.versionInfo.setDefaultValues( + gitUrl = "[git]https://git.pluv27.top/pluv/heurams-k.git", + ) self.description = "Kirigami frontend for HeurAMS memory scheduler" + self.displayName = "HeurAMS-K" self.webpage = "https://git.pluv27.top/pluv/heurams-k" - - # 源码地址(使用 master 分支,KDE Invent 风格) - self.svnTargets['master'] = '[git]https://git.pluv27.top/pluv/heurams-k.git|master' - self.defaultTarget = 'master' + self.defaultTarget = "master" def setDependencies(self): - # 构建依赖(CMake 等由 Craft 自动处理) - self.buildDependencies["dev-util/cmake"] = None + self.buildDependencies["dev-utils/cmake"] = None + self.buildDependencies["kde/frameworks/extra-cmake-modules"] = None - # 运行时依赖:Kirigami 框架及 KDE 组件 self.runtimeDependencies["kde/frameworks/kirigami"] = None self.runtimeDependencies["kde/frameworks/kcoreaddons"] = None self.runtimeDependencies["kde/frameworks/kconfig"] = None self.runtimeDependencies["kde/frameworks/ki18n"] = None - - # Kirigami Addons(formcard, statefulapp 等) self.runtimeDependencies["kde/kirigami-addons"] = None - # Qt 6 核心模块(Craft 会通过依赖自动处理,显式声明可选) - self.runtimeDependencies["libs/qt6/qtbase"] = None - self.runtimeDependencies["libs/qt6/qtdeclarative"] = None + self.runtimeDependencies["libs/qt/qtbase"] = None + self.runtimeDependencies["libs/qt/qtdeclarative"] = None + self.runtimeDependencies["libs/qt/qtsvg"] = None + + if CraftCore.compiler.isLinux: + self.runtimeDependencies["libs/qt/qtwayland"] = None class Package(CMakePackageBase): - def __init__(self): - super().__init__() - # 禁用测试(项目目前无测试) + def __init__(self, **kwargs): + super().__init__(**kwargs) self.subinfo.options.configure.args += ["-DBUILD_TESTING=OFF"] - # 指定 CMake 构建类型(Release 适合发布) self.subinfo.options.configure.args += ["-DCMAKE_BUILD_TYPE=Release"] def createPackage(self): - # 定义主程序名(与 desktop 文件中的 Exec 字段一致) self.defines["appname"] = "heurams-k" - # 调用父类打包方法,生成 APK/AppImage 等 + self.defines["company"] = "pluv27" return super().createPackage()