Skip to content

Commit

Permalink
kapptemplate, new recipe, templates for KDevelop (#10362)
Browse files Browse the repository at this point in the history
  • Loading branch information
Begasus committed Apr 21, 2024
1 parent 4b1dd75 commit 0838a51
Show file tree
Hide file tree
Showing 2 changed files with 220 additions and 0 deletions.
85 changes: 85 additions & 0 deletions kde-apps/kapptemplate/additional-files/kapptemplate.rdef.in
@@ -0,0 +1,85 @@
resource app_flags B_SINGLE_LAUNCH;

resource app_version {
major = @MAJOR@,
middle = @MIDDLE@,
minor = @MINOR@,

variety = B_APPV_FINAL,
internal = 0,

short_info = "@APP_NAME@",
long_info = "@LONG_INFO@"
};

resource app_signature "@APP_SIGNATURE@";

resource vector_icon {
$"6E63696605011A171B660554020016020000003CC4CCBCC4CC0000004E24C24A"
$"2E8F00FFFFE503003F80020006020000003D063DBD063D0000004E372349B68F"
$"00ABD5FFFF006CD906022BB91BBB92B91BBB92B911BB92B8FFBB9BB906BB972E"
$"BC03B7BBBCD5B827BC6CB7AEBCE2B7B2BD09B7A8BCF9B831BDCFB92EBF5BB8AF"
$"BE95B8E9BFC6B890C0B7B8B7C03CB7A6C0E5B5D2C143B6BCC114B5BEC148B5AD"
$"C166B5ADC152B5ADC1F8B5ADC31AB5ADC288B5ADC32DB5D2C345B5BFC341B6B6"
$"C37AB87EC3E2B79AC3AEB8A2C471B924C574B8D9C4F9B8A0C631B797C7ABB81B"
$"C6EFB78BC7BCB7A0C7DFB791C7D2B80CC845B8E3C911B878C8ABB8F1C91EB91B"
$"C91AB90AC924B9E9C8A3BB85C7B4BAB7C82CBC00C7F7BD0AC852BC7FC82EBD3B"
$"C92CBD9DCADFBD6CCA06BDA2CAF3BDC3CB03BDAECB03BE5DCB03BF90CB03BEF7"
$"CB03BFA4CB03BFBECADFBFB9CAF2BFF6CA06C065C852C02DC92CC0F4C82DC1FB"
$"C7ABC17EC7F1C2C6C82CC45DC92CC392C8ABC46DC936C494C923C485C931C500"
$"C8BDC5D7C7F1C56BC857C5E5C7E3C5E0C7BDC5EAC7CDC597C748C503C660C54C"
$"C6D4C4EAC669C4B8C67AC4D2C671C4AEC67FC49DC671C4A3C67AC49DC671C35A"
$"C4ABC411C5A9C27EC641BEBBC754C0C0C754BBDFC754B989C274B989C528B989"
$"C077BC9BBDFDBACDBEC2BC9BBD92BC9BBCBABC9BBD25BC47BCD6BBAABD1ABBF8"
$"BCF2BBAABD1ABBA1BD1ABBA2BD1ABAD3BC9AB937BB9ABA05BC1AB92EBB95B91A"
$"BB92B924BB91B91ABB92B91BBB92B91ABB92B91BBB92B91BBB92B91BBB92B91B"
$"BB92B91BBB92B91BBB92B91BBB92022BB8B5BAC6B8B5BAC6B8ABBAC6B899BACF"
$"B8A0BACB2DBB37B755BC09B7C1BBA0B748BC16B74CBC3DB742BC2DB7CBBD03B8"
$"C8BE8FB849BDC9B883BEFAB82ABFEBB851BF70B740C019B56CC077B656C048B5"
$"58C07CB547C09AB547C086B547C12CB547C24EB547C1BCB547C261B56CC279B5"
$"59C275B650C2AEB818C316B734C2E2B83CC3A5B8BEC4A8B873C42DB83AC565B7"
$"31C6DFB7B5C623B725C6F0B73AC713B72BC706B7A6C779B87DC845B812C7DFB8"
$"8BC852B8B5C84EB8A4C858B983C7D7BB1FC6E8BA51C760BB9AC72BBCA4C786BC"
$"19C762BCD5C860BD37CA13BD06C93ABD3CCA27BD5DCA37BD48CA37BDF7CA37BF"
$"2ACA37BE91CA37BF3ECA37BF58CA13BF53CA26BF90C93ABFFFC786BFC7C860C0"
$"8EC761C195C6DFC118C725C260C760C3F7C860C32CC7DFC407C86AC42EC857C4"
$"1FC865C49AC7F1C571C725C505C78BC57FC717C57AC6F1C584C701C531C67CC4"
$"9DC594C4E6C608C484C59DC452C5AEC46CC5A5C448C5B3C437C5A5C43DC5AEC4"
$"37C5A5C2F4C3DFC3ABC4DDC218C575BE55C688C05AC688BB79C688B923C1A8B9"
$"23C45CB923BFABBC35BD31BA67BDF6BC35BCC6BC35BBEEBC35BC59BBE1BC0ABB"
$"44BC4EBB92BC26BB44BC4EBB3BBC4EBB3CBC4EBA6DBBCEB8D1BACEB99FBB4EB8"
$"C8BAC9B8B4BAC6B8BEBAC5B8B4BAC6B8B5BAC6B8B4BAC6B8B5BAC6B8B5BAC6B8"
$"B5BAC6B8B5BAC6B8B5BAC6B8B5BAC6B8B5BAC6022BB8B5BAC6B8B5BAC6B8ABBA"
$"C6B899BACFB8A0BACB2DBB37B755BC09B7C1BBA0B748BC16B74CBC3DB742BC2D"
$"B7CBBD03B8C8BE8FB849BDC9B883BEFAB82ABFEBB851BF70B740C019B56CC077"
$"B656C048B558C07CB547C09AB547C086B547C12CB547C24EB547C1BCB547C261"
$"B56CC279B559C275B650C2AEB818C316B734C2E2B83CC3A5B8BEC4A8B873C42D"
$"B83AC565B731C6DFB7B5C623B725C6F0B73AC713B72BC706B7A6C779B87DC845"
$"B812C7DFB88BC852B8B5C84EB8A4C858B983C7D7BB1FC6E8BA51C760BB9AC72B"
$"BCA4C786BC19C762BCD5C860BD37CA13BD06C93ABD3CCA27BD5DCA37BD48CA37"
$"BDF7CA37BF2ACA37BE91CA37BF3ECA37BF58CA13BF53CA26BF90C93ABFFFC786"
$"BFC7C860C08EC761C195C6DFC118C725C260C760C3F7C860C32CC7DFC407C86A"
$"C42EC857C41FC865C49AC7F1C571C725C505C78BC57FC717C57AC6F1C584C701"
$"C531C67CC49DC594C4E6C608C484C59DC452C5AEC46CC5A5C448C5B3C437C5A5"
$"C43DC5AEC437C5A5C2F4C3DFC3ABC4DDC218C575BE55C688C05AC688BB79C688"
$"B923C1A8B923C45CB923BFABBC35BD31BA67BDF6BC35BCC6BC35BBEEBC35BC59"
$"BBE1BC0ABB44BC4EBB92BC26BB44BC4EBB3BBC4EBB3CBC4EBA6DBBCEB8D1BACE"
$"B99FBB4EB8C8BAC9B8B4BAC6B8BEBAC5B8B4BAC6B8B5BAC6B8B4BAC6B8B5BAC6"
$"B8B5BAC6B8B5BAC6B8B5BAC6B8B5BAC6B8B5BAC6B8B5BAC6060FFFFFFF15C27E"
$"B679C27EB679C166B693BF36B6C7C04EB6AEBF36BB02BF36C376BF36BF3CC04B"
$"C350C275C305C160C32BC275C136C275BD99C275BF68C3E6BF99C6C9C399C558"
$"C199C7EBC341CA2EC293C90CC2EAC8B2C0A7C5BEBCD1C738BEBBC73BBAFFCA37"
$"B75CC8B9B92EC90FB71CC6C0B69CC7E7B6DCC551B86EC275BC10C3E3BA3FC278"
$"BA34C27EB679C27BB856C27EB679B679B679B679060FFFFFFF15C1B2B5ADC1B2"
$"B5ADC09AB5C7BE6AB5FBBF82B5E2BE6ABA36BE6AC2AABE6ABE70BF7FC284C1A9"
$"C239C094C25FC1A9C06AC1A9BCCDC1A9BE9CC31ABECDC5FDC2CDC48CC0CDC71F"
$"C275C962C1C7C840C21EC7E6BFDBC4F2BC05C66CBDEFC66FBA33C96BB690C7ED"
$"B862C843B650C5F4B5D0C71BB610C485B7A2C1A9BB44C317B973C1ACB968C1B2"
$"B5ADC1AFB78AC1B2B5ADB5ADB5ADB5AD060FFFFFFF15C1B2B5ADC1B2B5ADC09A"
$"B5C7BE6AB5FBBF82B5E2BE6ABA36BE6AC2AABE6ABE70BF7FC284C1A9C239C094"
$"C25FC1A9C06AC1A9BCCDC1A9BE9CC31ABECDC5FDC2CDC48CC0CDC71FC275C962"
$"C1C7C840C21EC7E6BFDBC4F2BC05C66CBDEFC66FBA33C96BB690C7EDB862C843"
$"B650C5F4B5D0C71BB610C485B7A2C1A9BB44C317B973C1ACB968C1B2B5ADC1AF"
$"B78AC1B2B5ADB5ADB5ADB5AD060A0001001001178322040A0101011001178422"
$"040A020102000A0001031001178422040A0301041001178422040A04010500"
};
135 changes: 135 additions & 0 deletions kde-apps/kapptemplate/kapptemplate-23.08.5.recipe
@@ -0,0 +1,135 @@
SUMMARY="App code template generator"
DESCRIPTION="KAppTemplate is an application to start development quickly using existing templates \
providing basic repeatedly written code and a proper structure.
Features:
* Templates for C++, Ruby, Python and PHP
* Categories
* Templates for different build-systems and frameworks
* Templates especially for KDE-development (plugins for Plasma, QtQuick, KTextEditor, KRunner, \
Akonadi)
* It is easy to create new templates using space holders and a simple CMake-command
* Integrated into KDevelop"
HOMEPAGE="https://invent.kde.org/sdk/kapptemplate"
COPYRIGHT="2010-2024 KDE Organisation"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="https://download.kde.org/stable/release-service/$portVersion/src/kapptemplate-$portVersion.tar.xz"
CHECKSUM_SHA256="9b78d6997761b10ad19f6d8ec05379896ade2c64f63272d26b3b099a82485651"
SOURCE_DIR="kapptemplate-$portVersion"
ADDITIONAL_FILES="kapptemplate.rdef.in"

ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"

PROVIDES="
kapptemplate$secondaryArchSuffix = $portVersion
cmd:kapptemplate$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
# KF5
lib:libKF5Archive$secondaryArchSuffix
lib:libKF5Auth$secondaryArchSuffix
lib:libKF5AuthCore$secondaryArchSuffix
lib:libKF5Codecs$secondaryArchSuffix
lib:libKF5Completion$secondaryArchSuffix
lib:libKF5ConfigCore$secondaryArchSuffix
lib:libKF5ConfigGui$secondaryArchSuffix
lib:libKF5ConfigWidgets$secondaryArchSuffix
lib:libKF5CoreAddons$secondaryArchSuffix
lib:libKF5I18n$secondaryArchSuffix
lib:libKF5KIOCore$secondaryArchSuffix
lib:libKF5KIOGui$secondaryArchSuffix
lib:libKF5KIOWidgets$secondaryArchSuffix
lib:libKF5JobWidgets$secondaryArchSuffix
lib:libKF5Service$secondaryArchSuffix
lib:libKF5Solid$secondaryArchSuffix
lib:libKF5WidgetsAddons$secondaryArchSuffix
lib:libKF5WindowSystem$secondaryArchSuffix
# Qt5
lib:libQt5Core$secondaryArchSuffix
lib:libQt5DBus$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQt5Network$secondaryArchSuffix
lib:libQt5Widgets$secondaryArchSuffix
lib:libQt5Xml$secondaryArchSuffix
"

BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
# KF5
extra_cmake_modules$secondaryArchSuffix
devel:libKF5Archive$secondaryArchSuffix
devel:libKF5Auth$secondaryArchSuffix
devel:libKF5Bookmarks$secondaryArchSuffix
devel:libKF5Codecs$secondaryArchSuffix
devel:libKF5Completion$secondaryArchSuffix
devel:libKF5ConfigCore$secondaryArchSuffix
devel:libKF5ConfigWidgets$secondaryArchSuffix
devel:libKF5CoreAddons$secondaryArchSuffix
devel:libKF5DocTools$secondaryArchSuffix
devel:libKF5I18n$secondaryArchSuffix
devel:libKF5ItemViews$secondaryArchSuffix
devel:libKF5JobWidgets$secondaryArchSuffix
devel:libKF5KIOCore$secondaryArchSuffix
devel:libKF5Service$secondaryArchSuffix
devel:libKF5Solid$secondaryArchSuffix
devel:libKF5WidgetsAddons$secondaryArchSuffix
devel:libKF5WindowSystem$secondaryArchSuffix
devel:libKF5XmlGui$secondaryArchSuffix
# Qt5
devel:libQt5Core$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:g++$secondaryArchSuffix
cmd:make
cmd:msgfmt
cmd:msgmerge
cmd:pkg_config$secondaryArchSuffix
cmd:qdbuscpp2xml$secondaryArchSuffix >= 5
"

BUILD()
{
# disable docs generation
sed -e '/add_subdirectory(doc)/ s/^#*/#/' -i CMakeLists.txt
sed -e '/kdoctools_install(po)/ s/^#*/#/' -i CMakeLists.txt

cmake -Bbuild -S. $cmakeDirArgs \
-DCMAKE_BUILD_TYPE=Release \
-DECM_DIR=/system/data/cmake/Modules/ECM/cmake
make -C build $jobArgs
}

INSTALL()
{
make -C build install

# cleanup
rm -rf $dataDir/{applications,icons,metainfo}

local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local APP_NAME="KAppTemplate"
local LONG_INFO="$SUMMARY"
local APP_SIGNATURE="application/x-vnd.kapptemplate"
sed \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
-e "s|@APP_NAME@|$APP_NAME|" \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
$portDir/additional-files/kapptemplate.rdef.in > kapptemplate.rdef

addResourcesToBinaries kapptemplate.rdef $binDir/kapptemplate
addAppDeskbarSymlink $binDir/kapptemplate KAppTemplate
}

TEST()
{
make -C build test
}

0 comments on commit 0838a51

Please sign in to comment.