From faf9deb9da1d566d17c48451dd16f05132ce0655 Mon Sep 17 00:00:00 2001 From: Simon Schneegans Date: Sat, 5 Nov 2022 05:47:31 +0100 Subject: [PATCH 1/6] :wrench: Port .desktop to .json config --- kwin/metadata.desktop.in | 21 --------------------- kwin/metadata.json.in | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 21 deletions(-) delete mode 100755 kwin/metadata.desktop.in create mode 100755 kwin/metadata.json.in diff --git a/kwin/metadata.desktop.in b/kwin/metadata.desktop.in deleted file mode 100755 index 4223b8b..0000000 --- a/kwin/metadata.desktop.in +++ /dev/null @@ -1,21 +0,0 @@ -[Desktop Entry] -Name=%NAME% -Icon=preferences-system-windows-effect-%ICON% -Comment=%DESCRIPTION% - -Type=Service -X-KDE-ServiceTypes=KWin/Effect,KCModule -X-KDE-PluginInfo-Author=Vlad Zahorodnii, Martin Flöser, Simon Schneegans -X-KDE-PluginInfo-Email=vlad.zahorodnii@kde.org, mgraesslin@kde.org, code@simonschneegans.de -X-KDE-PluginInfo-Name=%DIR_NAME% -X-KDE-PluginInfo-Version=1 -X-KDE-PluginInfo-Category=Window Open/Close Animation -X-KDE-PluginInfo-License=GPLv3 -X-KDE-PluginInfo-EnabledByDefault=false -X-KDE-Ordering=60 -X-Plasma-API=javascript -X-Plasma-MainScript=code/main.js -X-KDE-PluginKeyword=%DIR_NAME% -X-KDE-Library=kcm_kwin4_genericscripted -X-KWin-Config-TranslationDomain=kwin_effects -X-KWin-Exclusive-Category=toplevel-open-close-animation diff --git a/kwin/metadata.json.in b/kwin/metadata.json.in new file mode 100755 index 0000000..05c4237 --- /dev/null +++ b/kwin/metadata.json.in @@ -0,0 +1,18 @@ +{ + "KPlugin": { + "Name": "%NAME%", + "Description": "%DESCRIPTION%", + "Icon": "preferences-system-windows-effect-%ICON%", + "Category": "Window Open/Close Animation", + "Authors": [ + { "Name": "Simon Schneegans", "Email": "code@simonschneegans.de" } + { "Name": "Martin Flöser", "Email": "vlad.zahorodnii@kde.org" } + { "Name": "Aaron Seigo", "Email": "mgraesslin@kde.org" } + ], + "License": "GPLv3", + "Version": "1.0", + "EnabledByDefault": "false", + "Website": "https://github.com/Schneegans/Burn-My-Windows/" + "BugReportUrl": "https://github.com/Schneegans/Burn-My-Windows/issues" + } +} \ No newline at end of file From 1caff7c07833e2faa563e56275dbf790e341b0bc Mon Sep 17 00:00:00 2001 From: Simon Schneegans Date: Sat, 5 Nov 2022 06:08:46 +0100 Subject: [PATCH 2/6] :wrench: Install new metadata.json file --- kwin/build.sh | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/kwin/build.sh b/kwin/build.sh index e769daf..78977e2 100755 --- a/kwin/build.sh +++ b/kwin/build.sh @@ -82,12 +82,12 @@ generate() { perl -pi -e "s/%SHADER_NAME%/$1/g;" "$BUILD_DIR/$DIR_NAME/contents/code/main.js" perl -pi -e "s/\f/\//g;" "$BUILD_DIR/$DIR_NAME/contents/code/main.js" - # Now create the metadata.desktop file. Again, we replace some placeholders. - cp metadata.desktop.in "$BUILD_DIR/$DIR_NAME/metadata.desktop" - perl -pi -e "s/%ICON%/$1/g;" "$BUILD_DIR/$DIR_NAME/metadata.desktop" - perl -pi -e "s/%NAME%/$2/g;" "$BUILD_DIR/$DIR_NAME/metadata.desktop" - perl -pi -e "s/%DESCRIPTION%/$3/g;" "$BUILD_DIR/$DIR_NAME/metadata.desktop" - perl -pi -e "s/%DIR_NAME%/$DIR_NAME/g;" "$BUILD_DIR/$DIR_NAME/metadata.desktop" + # Now create the metadata.json file. Again, we replace some placeholders. + cp metadata.json.in "$BUILD_DIR/$DIR_NAME/metadata.json" + perl -pi -e "s/%NAME%/$2/g;" "$BUILD_DIR/$DIR_NAME/metadata.json" + perl -pi -e "s/%ICON%/$1/g;" "$BUILD_DIR/$DIR_NAME/metadata.json" + perl -pi -e "s/%DESCRIPTION%/$3/g;" "$BUILD_DIR/$DIR_NAME/metadata.json" + perl -pi -e "s/%DIR_NAME%/$DIR_NAME/g;" "$BUILD_DIR/$DIR_NAME/metadata.json" # Now create the two required shader files. We prepend the common.glsl to each shader. # We also define KWIN and KWIN_LEGACY. The code in common.glsl takes some different @@ -143,4 +143,4 @@ generate "wisps" "Wisps [Burn-My-Windows]" "Let your windows be carr # Finally, create an archive for the effects. # shellcheck disable=SC2046 -tar -cjf "burn_my_windows_kwin4.tar.gz" -C "$BUILD_DIR" $(ls "$BUILD_DIR") \ No newline at end of file +tar -cjf "burn_my_windows_kwin4.tar.gz" -C "$BUILD_DIR" $(ls "$BUILD_DIR") From 1264bc8b6f40a3fd241713a1f6c2b14300a48c7b Mon Sep 17 00:00:00 2001 From: Simon Schneegans Date: Sat, 5 Nov 2022 06:09:09 +0100 Subject: [PATCH 3/6] :wrench: Fix kwin's metadata.json file --- kwin/metadata.json.in | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/kwin/metadata.json.in b/kwin/metadata.json.in index 05c4237..79558ac 100755 --- a/kwin/metadata.json.in +++ b/kwin/metadata.json.in @@ -5,14 +5,24 @@ "Icon": "preferences-system-windows-effect-%ICON%", "Category": "Window Open/Close Animation", "Authors": [ - { "Name": "Simon Schneegans", "Email": "code@simonschneegans.de" } - { "Name": "Martin Flöser", "Email": "vlad.zahorodnii@kde.org" } + { "Name": "Simon Schneegans", "Email": "code@simonschneegans.de" }, + { "Name": "Martin Flöser", "Email": "vlad.zahorodnii@kde.org" }, { "Name": "Aaron Seigo", "Email": "mgraesslin@kde.org" } ], + "Id": "%DIR_NAME%", "License": "GPLv3", "Version": "1.0", "EnabledByDefault": "false", - "Website": "https://github.com/Schneegans/Burn-My-Windows/" - "BugReportUrl": "https://github.com/Schneegans/Burn-My-Windows/issues" - } -} \ No newline at end of file + "Website": "https://github.com/Schneegans/Burn-My-Windows/", + "BugReportUrl": "https://github.com/Schneegans/Burn-My-Windows/issues", + "ServiceTypes": [ + "KWin/Effect" + ] + }, + "X-KDE-Ordering": "60", + "X-KDE-PluginKeyword": "%DIR_NAME%", + "X-KWin-Config-TranslationDomain": "kwin_effects", + "X-KWin-Exclusive-Category": "toplevel-open-close-animation", + "X-Plasma-API": "javascript", + "X-Plasma-MainScript": "code/main.js" +} From 15dd1c010c99e7ae0edf14065c9964081b1d2adc Mon Sep 17 00:00:00 2001 From: Simon Schneegans Date: Sat, 5 Nov 2022 06:12:50 +0100 Subject: [PATCH 4/6] :copyright: Add SPDX license file --- kwin/metadata.json.in.license | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 kwin/metadata.json.in.license diff --git a/kwin/metadata.json.in.license b/kwin/metadata.json.in.license new file mode 100644 index 0000000..22ffc89 --- /dev/null +++ b/kwin/metadata.json.in.license @@ -0,0 +1,3 @@ +SPDX-FileCopyrightText: 2022 Simon Schneegans + +SPDX-License-Identifier: CC0-1.0 From 008ba5503371d8bdeb6867c1e6d32130164f004a Mon Sep 17 00:00:00 2001 From: Simon Schneegans Date: Sat, 5 Nov 2022 06:14:08 +0100 Subject: [PATCH 5/6] :memo: Add changelog entry --- docs/changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/changelog.md b/docs/changelog.md index 7806c59..4efc176 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -16,7 +16,7 @@ SPDX-License-Identifier: CC-BY-4.0 #### Other Enhancements * Burn-My-Windows now follows the [REUSE Specification](https://reuse.software/spec). - +* The KWin port of Burn-My-Windows now uses `metadata.json` files instead of the deprecated `metadata.desktop` format. ## [Burn My Windows 21](https://github.com/schneegans/Burn-My-Windows/releases/tag/v21) From 3cc3c562448b62dfe3a5b06104a5c6591234b7ba Mon Sep 17 00:00:00 2001 From: Simon Schneegans Date: Sat, 5 Nov 2022 06:16:22 +0100 Subject: [PATCH 6/6] :wrench: Revert unnecessary change --- kwin/build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kwin/build.sh b/kwin/build.sh index 78977e2..e6b37d5 100755 --- a/kwin/build.sh +++ b/kwin/build.sh @@ -84,8 +84,8 @@ generate() { # Now create the metadata.json file. Again, we replace some placeholders. cp metadata.json.in "$BUILD_DIR/$DIR_NAME/metadata.json" - perl -pi -e "s/%NAME%/$2/g;" "$BUILD_DIR/$DIR_NAME/metadata.json" perl -pi -e "s/%ICON%/$1/g;" "$BUILD_DIR/$DIR_NAME/metadata.json" + perl -pi -e "s/%NAME%/$2/g;" "$BUILD_DIR/$DIR_NAME/metadata.json" perl -pi -e "s/%DESCRIPTION%/$3/g;" "$BUILD_DIR/$DIR_NAME/metadata.json" perl -pi -e "s/%DIR_NAME%/$DIR_NAME/g;" "$BUILD_DIR/$DIR_NAME/metadata.json"