[websites/apps-kde-org] /: Add lifecycle as a taxonomy term

Julius Künzel <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git commit 1086e0b4f1c31b3485a6bce4d67ee39c78dd8f99 by Julius Künzel.
Committed on 17/08/2026 at 23:51.
Pushed by jlskuz into branch 'master'.

Add lifecycle as a taxonomy term

M  +1    -0    appdata-extractor/lib/collectors.py
M  +5    -0    appdata-extractor/lib/kde_project.py
M  +1    -0    config.yaml
M  +14   -2    i18n/en.yaml
M  +5    -2    layouts/partials/icon.html

https://invent.kde.org/websites/apps-kde-org/-/commit/1086e0b4f1c31b3485a6bce4d67ee39c78dd8f99

diff --git a/appdata-extractor/lib/collectors.py b/appdata-extractor/lib/collectors.py
index 003daea..81646ba 100644
--- a/appdata-extractor/lib/collectors.py
+++ b/appdata-extractor/lib/collectors.py
@@ -172,6 +172,7 @@ class AppstreamCollector:
         self.appdata["bug_report"] = self.project.bug_report
         self.appdata["project_identifier"] = self.project.identifier
         self.appdata["X-KDE-Repository"] = self.project.repo
+        self.appdata["lifecycle"] = self.project.lifecycle
 
     def grab_app_data(self, non_apps=None):
         if non_apps is None:
diff --git a/appdata-extractor/lib/kde_project.py b/appdata-extractor/lib/kde_project.py
index 3e87319..a39dcc4 100644
--- a/appdata-extractor/lib/kde_project.py
+++ b/appdata-extractor/lib/kde_project.py
@@ -33,6 +33,7 @@ class Project:
                 "identifier": basename,
                 "bug_submit": "",
                 "bug_database": "",
+                "lifecycle": "unmaintained",
                 "i18n": None,
             }
         else:
@@ -67,6 +68,10 @@ class Project:
             self.bug_report = data["bug_submit"]
             self.identifier = data["identifier"]
             # self.old_path = data['__do_not_use-legacy-projectpath']
+            self.lifecycle = data["lifecycle"]
+            # archived is a synonym for unmaintained
+            if self.lifecycle == "archived":
+                self.lifecycle = "unmaintained"
             self.repo = data["repo"]
             self.artifact = {"group": 5, "branch": "master"}
             if data["i18n"] and data["i18n"]["trunkKF6"] != "none":
diff --git a/config.yaml b/config.yaml
index 51ab4f5..0deed4d 100644
--- a/config.yaml
+++ b/config.yaml
@@ -78,4 +78,5 @@ permalinks:
 summaryLength: 15
 taxonomies:
   category: categories
+  lifecycle: lifecycle
   platform: platforms
diff --git a/i18n/en.yaml b/i18n/en.yaml
index ef2f0dd..648a627 100644
--- a/i18n/en.yaml
+++ b/i18n/en.yaml
@@ -12,13 +12,25 @@ macos:
   other: macOS
 ios:
   other: iOS
-unmaintained:
-  other: Unmaintained
 # these keys must be the same as section names
 categories:
   other: Categories
 platforms:
   other: Other platforms
+lifecycle:
+  other: Lifecycle
+
+# these keys need to be the same as values of section lifecycle
+active:
+  other: Active
+playground:
+  other: Playground
+in-review:
+  other: In review
+reviewed:
+  other: Reviewed
+unmaintained:
+  other: Unmaintained
 
 # these keys need to be like this to fit with the templating logic
 games-other:
diff --git a/layouts/partials/icon.html b/layouts/partials/icon.html
index 4369e51..5acbd53 100644
--- a/layouts/partials/icon.html
+++ b/layouts/partials/icon.html
@@ -14,6 +14,9 @@ Params:
 {{ else }}
   {{ $src = printf "/app-icons/%s/%s.svg" .type .icon }}
 {{ end }}
+{{ $src = partial "fn/resource_url" (dict "url" $src) }}
 {{- $alt := partial "fn/i18n_args" (slice "icon-name" .name) }}
-<img width="{{ .size }}" height="{{ .size }}"{{ with .class }} class="{{ . }}"{{ end }}
-     src="{{ $src }}" alt="{{ $alt }}" title="{{ .name }}" aria-hidden="true" loading="lazy">
+{{- with $src -}}
+<img width="{{ $.size }}" height="{{ $.size }}"{{ with $.class }} class="{{ . }}"{{ end }}
+     src="{{ . }}" alt="{{ $alt }}" title="{{ $.name }}" aria-hidden="true" loading="lazy">
+{{- end -}}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.