kde-plasma

This commit is contained in:
Rmys
2025-01-21 15:46:21 +03:00
parent 366d8c1820
commit 4a2b60c149
135 changed files with 3886 additions and 23672 deletions
+4 -4
View File
@@ -4,16 +4,16 @@
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import kde5
from pisi.actionsapi import kde6
from pisi.actionsapi import pisitools
def setup():
kde5.configure()
kde6.configure()
def build():
kde5.make()
kde6.make()
def install():
kde5.install()
kde6.install()
pisitools.dodoc("LICENSES/*")
@@ -3,7 +3,7 @@ index 9fef4ec..939d055 100644
--- a/processcore/CMakeLists.txt
+++ b/processcore/CMakeLists.txt
@@ -41,18 +41,18 @@ install( FILES processes.h process.h DESTINATION ${INCLUDE_INSTALL_DIR}/ksysguar
#------ KAuth stuff
#------ kauth stuff
# Auth example helper
-# set(ksysguardprocesslist_helper_srcs
@@ -28,7 +28,7 @@ index 9fef4ec..939d055 100644
+
+add_executable(ksysguardprocesslist_helper ${ksysguardprocesslist_helper_srcs})
+target_link_libraries(ksysguardprocesslist_helper Qt5::Core KF5::Auth KF5::I18n)
+install(TARGETS ksysguardprocesslist_helper DESTINATION ${KAUTH_HELPER_INSTALL_DIR})
+install(TARGETS ksysguardprocesslist_helper DESTINATION ${kauth_HELPER_INSTALL_DIR})
+
+kauth_install_helper_files(ksysguardprocesslist_helper org.kde.ksysguard.processlisthelper root)
+kauth_install_actions(org.kde.ksysguard.processlisthelper actions.actions)
@@ -43,7 +43,7 @@ index 6c1f570..c34ab1e 100644
#include "helper.h"
#include "processes_local_p.h"
+using namespace KAuth;
+using namespace kauth;
+
KSysGuardProcessListHelper::KSysGuardProcessListHelper()
{
@@ -51,9 +51,9 @@ index 6c1f570..c34ab1e 100644
}
/* The functions here run as ROOT. So be careful. DO NOT TRUST THE INPUTS TO BE SANE. */
-#define GET_PID(i) parameters.value(QString("pid%1").arg(i), -1).toULongLong(); if(pid < 0) return KAuth::ActionReply::HelperErrorReply;
-KAuth::ActionReply KSysGuardProcessListHelper::sendsignal(QVariantMap parameters) {
- KAuth::ActionReply errorReply(KAuth::ActionReply::HelperError);
-#define GET_PID(i) parameters.value(QString("pid%1").arg(i), -1).toULongLong(); if(pid < 0) return kauth::ActionReply::HelperErrorReply;
-kauth::ActionReply KSysGuardProcessListHelper::sendsignal(QVariantMap parameters) {
- kauth::ActionReply errorReply(kauth::ActionReply::HelperError);
+#define GET_PID(i) parameters.value(QString("pid%1").arg(i), -1).toULongLong(); if(pid < 0) return ActionReply(ActionReply::HelperErrorType);
+ActionReply KSysGuardProcessListHelper::sendsignal(QVariantMap parameters) {
+ ActionReply reply(ActionReply::HelperErrorType);
@@ -75,11 +75,11 @@ index 6c1f570..c34ab1e 100644
}
KSysGuard::ProcessesLocal processes;
@@ -56,17 +58,17 @@ KAuth::ActionReply KSysGuardProcessListHelper::sendsignal(QVariantMap parameters
@@ -56,17 +58,17 @@ kauth::ActionReply KSysGuardProcessListHelper::sendsignal(QVariantMap parameters
success = successForThisPid && success;
}
if(success) {
- return KAuth::ActionReply::SuccessReply;
- return kauth::ActionReply::SuccessReply;
+ return ActionReply::SuccessReply();
} else {
- errorReply.setErrorDescription(QString("Could not send signal to: ") + errorList.join(", "));
@@ -91,64 +91,64 @@ index 6c1f570..c34ab1e 100644
}
}
-KAuth::ActionReply KSysGuardProcessListHelper::renice(QVariantMap parameters) {
-kauth::ActionReply KSysGuardProcessListHelper::renice(QVariantMap parameters) {
+ActionReply KSysGuardProcessListHelper::renice(QVariantMap parameters) {
if(!parameters.contains("nicevalue") || !parameters.contains("pidcount"))
- return KAuth::ActionReply::HelperErrorReply;
- return kauth::ActionReply::HelperErrorReply;
+ return ActionReply(ActionReply::HelperErrorType);
KSysGuard::ProcessesLocal processes;
int niceValue = qvariant_cast<int>(parameters.value("nicevalue"));
@@ -77,14 +79,14 @@ KAuth::ActionReply KSysGuardProcessListHelper::renice(QVariantMap parameters) {
@@ -77,14 +79,14 @@ kauth::ActionReply KSysGuardProcessListHelper::renice(QVariantMap parameters) {
success = processes.setNiceness(pid, niceValue) && success;
}
if(success)
- return KAuth::ActionReply::SuccessReply;
- return kauth::ActionReply::SuccessReply;
+ return ActionReply::SuccessReply();
else
- return KAuth::ActionReply::HelperErrorReply;
- return kauth::ActionReply::HelperErrorReply;
+ return ActionReply(ActionReply::HelperErrorType);
}
-KAuth::ActionReply KSysGuardProcessListHelper::changeioscheduler(QVariantMap parameters) {
-kauth::ActionReply KSysGuardProcessListHelper::changeioscheduler(QVariantMap parameters) {
+ActionReply KSysGuardProcessListHelper::changeioscheduler(QVariantMap parameters) {
if(!parameters.contains("ioScheduler") || !parameters.contains("ioSchedulerPriority") || !parameters.contains("pidcount"))
- return KAuth::ActionReply::HelperErrorReply;
- return kauth::ActionReply::HelperErrorReply;
+ return ActionReply(ActionReply::HelperErrorType);
KSysGuard::ProcessesLocal processes;
int ioScheduler = qvariant_cast<int>(parameters.value("ioScheduler"));
@@ -96,14 +98,14 @@ KAuth::ActionReply KSysGuardProcessListHelper::changeioscheduler(QVariantMap par
@@ -96,14 +98,14 @@ kauth::ActionReply KSysGuardProcessListHelper::changeioscheduler(QVariantMap par
success = processes.setIoNiceness(pid, ioScheduler, ioSchedulerPriority) && success;
}
if(success)
- return KAuth::ActionReply::SuccessReply;
- return kauth::ActionReply::SuccessReply;
+ return ActionReply::SuccessReply();
else
- return KAuth::ActionReply::HelperErrorReply;
- return kauth::ActionReply::HelperErrorReply;
+ return ActionReply(ActionReply::HelperErrorType);
}
-KAuth::ActionReply KSysGuardProcessListHelper::changecpuscheduler(QVariantMap parameters) {
-kauth::ActionReply KSysGuardProcessListHelper::changecpuscheduler(QVariantMap parameters) {
+ActionReply KSysGuardProcessListHelper::changecpuscheduler(QVariantMap parameters) {
if(!parameters.contains("cpuScheduler") || !parameters.contains("cpuSchedulerPriority") || !parameters.contains("pidcount"))
- return KAuth::ActionReply::HelperErrorReply;
- return kauth::ActionReply::HelperErrorReply;
+ return ActionReply(ActionReply::HelperErrorType);
KSysGuard::ProcessesLocal processes;
int cpuScheduler = qvariant_cast<int>(parameters.value("cpuScheduler"));
@@ -116,9 +118,9 @@ KAuth::ActionReply KSysGuardProcessListHelper::changecpuscheduler(QVariantMap pa
@@ -116,9 +118,9 @@ kauth::ActionReply KSysGuardProcessListHelper::changecpuscheduler(QVariantMap pa
success = processes.setScheduler(pid, cpuScheduler, cpuSchedulerPriority) && success;
}
if(success)
- return KAuth::ActionReply::SuccessReply;
- return kauth::ActionReply::SuccessReply;
+ return ActionReply::SuccessReply();
else
- return KAuth::ActionReply::HelperErrorReply;
- return kauth::ActionReply::HelperErrorReply;
+ return ActionReply(ActionReply::HelperErrorType);
}
KAUTH_HELPER_MAIN("org.kde.ksysguard.processlisthelper", KSysGuardProcessListHelper)
kauth_HELPER_MAIN("org.kde.ksysguard.processlisthelper", KSysGuardProcessListHelper)
diff --git a/processcore/processes_linux_p.cpp b/processcore/processes_linux_p.cpp
index 65b8dfd..0cff0e8 100644
--- a/processcore/processes_linux_p.cpp
@@ -180,8 +180,8 @@ index 1651a0a..ba9d8c9 100644
int totalRowCount(const QModelIndex &parent) const;
/** Helper function to setup 'action' with the given pids */
- void setupKAuthAction(KAuth::Action *action, const QList<long long> & pids) const;
+ void setupKAuthAction(KAuth::Action &action, const QList<long long> & pids) const;
- void setupkauthAction(kauth::Action *action, const QList<long long> & pids) const;
+ void setupkauthAction(kauth::Action &action, const QList<long long> & pids) const;
/** fire a timer event if we are set to use our internal timer*/
void fireTimerEvent();
@@ -189,8 +189,8 @@ index 1651a0a..ba9d8c9 100644
return total;
}
-void KSysGuardProcessListPrivate::setupKAuthAction(KAuth::Action *action, const QList<long long> & pids) const
+void KSysGuardProcessListPrivate::setupKAuthAction(KAuth::Action &action, const QList<long long> & pids) const
-void KSysGuardProcessListPrivate::setupkauthAction(kauth::Action *action, const QList<long long> & pids) const
+void KSysGuardProcessListPrivate::setupkauthAction(kauth::Action &action, const QList<long long> & pids) const
{
- action->setHelperId("org.kde.ksysguard.processlisthelper");
+ action.setHelperId("org.kde.ksysguard.processlisthelper");
@@ -208,23 +208,23 @@ index 1651a0a..ba9d8c9 100644
@@ -1023,23 +1026,19 @@ bool KSysGuardProcessList::reniceProcesses(const QList<long long> &pids, int nic
#warning KAuth needs porting, but docu is not adjusted, no idea how to do it
#warning kauth needs porting, but docu is not adjusted, no idea how to do it
-#if 0
- KAuth::Action *action = new KAuth::Action("org.kde.ksysguard.processlisthelper.renice");
- kauth::Action *action = new kauth::Action("org.kde.ksysguard.processlisthelper.renice");
- action->setParentWidget(window());
+ KAuth::Action action("org.kde.ksysguard.processlisthelper.renice");
+ kauth::Action action("org.kde.ksysguard.processlisthelper.renice");
+ action.setParentWidget(window());
d->setupKAuthAction( action, unreniced_pids);
d->setupkauthAction( action, unreniced_pids);
- action->addArgument("nicevalue", niceValue);
- KAuth::ActionReply reply = action->execute();
- kauth::ActionReply reply = action->execute();
+ action.addArgument("nicevalue", niceValue);
+ KAuth::ExecuteJob *job = action.execute();
+ kauth::ExecuteJob *job = action.execute();
- if (reply == KAuth::ActionReply::SuccessReply) {
- if (reply == kauth::ActionReply::SuccessReply) {
+ if (job->exec()) {
updateList();
- delete action;
- } else if (reply != KAuth::ActionReply::UserCancelled && reply != KAuth::ActionReply::AuthorizationDenied) {
- } else if (reply != kauth::ActionReply::UserCancelled && reply != kauth::ActionReply::AuthorizationDenied) {
+ } else if (!job->exec()) {
KMessageBox::sorry(this, i18n("You do not have the permission to renice the process and there "
- "was a problem trying to run as root. Error %1 %2", reply.errorCode(), reply.errorDescription()));
@@ -239,27 +239,27 @@ index 1651a0a..ba9d8c9 100644
@@ -1189,26 +1188,22 @@ bool KSysGuardProcessList::changeIoScheduler(const QList< long long> &pids, KSys
if(!d->mModel.isLocalhost()) return false; //We can't use kauth to affect non-localhost processes
#warning KAuth needs porting, but docu is not adjusted, no idea how to do it
#warning kauth needs porting, but docu is not adjusted, no idea how to do it
-#if 0
- KAuth::Action *action = new KAuth::Action("org.kde.ksysguard.processlisthelper.changeioscheduler");
- kauth::Action *action = new kauth::Action("org.kde.ksysguard.processlisthelper.changeioscheduler");
- action->setParentWidget(window());
+ KAuth::Action action("org.kde.ksysguard.processlisthelper.changeioscheduler");
+ kauth::Action action("org.kde.ksysguard.processlisthelper.changeioscheduler");
+ action.setParentWidget(window());
d->setupKAuthAction( action, unchanged_pids);
d->setupkauthAction( action, unchanged_pids);
- action->addArgument("ioScheduler", (int)newIoSched);
- action->addArgument("ioSchedulerPriority", newIoSchedPriority);
+ action.addArgument("ioScheduler", (int)newIoSched);
+ action.addArgument("ioSchedulerPriority", newIoSchedPriority);
- KAuth::ActionReply reply = action->execute();
+ KAuth::ExecuteJob *job = action.execute();
- kauth::ActionReply reply = action->execute();
+ kauth::ExecuteJob *job = action.execute();
- if (reply == KAuth::ActionReply::SuccessReply) {
- if (reply == kauth::ActionReply::SuccessReply) {
+ if (job->exec()) {
updateList();
- delete action;
- } else if (reply != KAuth::ActionReply::UserCancelled && reply != KAuth::ActionReply::AuthorizationDenied) {
- } else if (reply != kauth::ActionReply::UserCancelled && reply != kauth::ActionReply::AuthorizationDenied) {
+ } else if (!job->exec()) {
KMessageBox::sorry(this, i18n("You do not have the permission to change the I/O priority of the process and there "
- "was a problem trying to run as root. Error %1 %2", reply.errorCode(), reply.errorDescription()));
@@ -272,27 +272,27 @@ index 1651a0a..ba9d8c9 100644
}
@@ -1226,24 +1221,20 @@ bool KSysGuardProcessList::changeCpuScheduler(const QList< long long> &pids, KSy
if(!d->mModel.isLocalhost()) return false; //We can't use KAuth to affect non-localhost processes
if(!d->mModel.isLocalhost()) return false; //We can't use kauth to affect non-localhost processes
#warning KAuth needs porting, but docu is not adjusted, no idea how to do it
#warning kauth needs porting, but docu is not adjusted, no idea how to do it
-#if 0
- KAuth::Action *action = new KAuth::Action("org.kde.ksysguard.processlisthelper.changecpuscheduler");
- kauth::Action *action = new kauth::Action("org.kde.ksysguard.processlisthelper.changecpuscheduler");
- action->setParentWidget(window());
+ KAuth::Action action("org.kde.ksysguard.processlisthelper.changecpuscheduler");
+ kauth::Action action("org.kde.ksysguard.processlisthelper.changecpuscheduler");
+ action.setParentWidget(window());
d->setupKAuthAction( action, unchanged_pids);
d->setupkauthAction( action, unchanged_pids);
- action->addArgument("cpuScheduler", (int)newCpuSched);
- action->addArgument("cpuSchedulerPriority", newCpuSchedPriority);
- KAuth::ActionReply reply = action->execute();
- kauth::ActionReply reply = action->execute();
+ action.addArgument("cpuScheduler", (int)newCpuSched);
+ action.addArgument("cpuSchedulerPriority", newCpuSchedPriority);
+ KAuth::ExecuteJob *job = action.execute();
+ kauth::ExecuteJob *job = action.execute();
- if (reply == KAuth::ActionReply::SuccessReply) {
- if (reply == kauth::ActionReply::SuccessReply) {
+ if (job->exec()) {
updateList();
- delete action;
- } else if (reply != KAuth::ActionReply::UserCancelled && reply != KAuth::ActionReply::AuthorizationDenied) {
- } else if (reply != kauth::ActionReply::UserCancelled && reply != kauth::ActionReply::AuthorizationDenied) {
+ } else if (!job->exec()) {
KMessageBox::sorry(this, i18n("You do not have the permission to change the CPU Scheduler for the process and there "
- "was a problem trying to run as root. Error %1 %2", reply.errorCode(), reply.errorDescription()));
@@ -307,26 +307,26 @@ index 1651a0a..ba9d8c9 100644
@@ -1262,26 +1253,20 @@ bool KSysGuardProcessList::killProcesses(const QList< long long> &pids, int sig)
if(!d->mModel.isLocalhost()) return false; //We can't elevate privileges to kill non-localhost processes
#warning KAuth needs porting, but docu is not adjusted, no idea how to do it
#warning kauth needs porting, but docu is not adjusted, no idea how to do it
-#if 0
KAuth::Action action("org.kde.ksysguard.processlisthelper.sendsignal");
kauth::Action action("org.kde.ksysguard.processlisthelper.sendsignal");
action.setParentWidget(window());
- d->setupKAuthAction( &action, unkilled_pids);
- d->setupkauthAction( &action, unkilled_pids);
+ //action.setHelperId("org.kde.ksysguard.processlisthelper");
+ d->setupKAuthAction( action, unkilled_pids);
+ d->setupkauthAction( action, unkilled_pids);
action.addArgument("signal", sig);
- KAuth::ActionReply reply = action.execute();
+ KAuth::ExecuteJob *job = action.execute();
- kauth::ActionReply reply = action.execute();
+ kauth::ExecuteJob *job = action.execute();
- if (reply == KAuth::ActionReply::SuccessReply) {
- if (reply == kauth::ActionReply::SuccessReply) {
+ if (job->exec()) {
updateList();
- } else if (reply.type() == KAuth::ActionReply::HelperError) {
- } else if (reply.type() == kauth::ActionReply::HelperError) {
- if (reply.errorCode() > 0)
- KMessageBox::sorry(this, i18n("You do not have the permission to kill the process and there "
- "was a problem trying to run as root. %1", reply.errorDescription()));
- return false;
- } else if (reply != KAuth::ActionReply::UserCancelled && reply != KAuth::ActionReply::AuthorizationDenied) {
- } else if (reply != kauth::ActionReply::UserCancelled && reply != kauth::ActionReply::AuthorizationDenied) {
+ } else if (!job->exec()) {
KMessageBox::sorry(this, i18n("You do not have the permission to kill the process and there "
- "was a problem trying to run as root. Error %1 %2", reply.errorCode(), reply.errorDescription()));
+26 -586
View File
@@ -1,3 +1,4 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
@@ -13,15 +14,14 @@
<IsA>app:console</IsA>
<Summary>Task management and system monitoring library</Summary>
<Description>Task management and system monitoring library</Description>
<Archive sha1sum="a27daa4a9a16f0cccc6640819a35b9c40d36c75d" type="tarxz">mirrors://kde/stable/plasma/5.27.11/libksysguard-5.27.11.tar.xz</Archive>
<Archive sha1sum="72791fa981c10ddddb6631d110de266491c6d1c6" type="tarxz">mirrors://kde/stable/plasma/6.2.5/libksysguard-6.2.5.tar.xz</Archive>
<BuildDependencies>
<Dependency versionFrom="5.7.1">qt5-base-devel</Dependency>
<Dependency versionFrom="5.7.1">qt5-script-devel</Dependency>
<Dependency versionFrom="5.7.1">qt5-webkit-devel</Dependency>
<Dependency versionFrom="5.7.1">qt5-x11extras-devel</Dependency>
<Dependency versionFrom="5.7.1">qt5-webengine-devel</Dependency>
<Dependency versionFrom="5.7.1">qt5-designer-devel</Dependency>
<Dependency versionFrom="5.7.1">qt5-declarative-devel</Dependency>
<Dependency versionFrom="6.7.1">qt6-base-devel</Dependency>
<Dependency versionFrom="6.7.1">qt6-webengine-devel</Dependency>
<Dependency versionFrom="6.7.1">qt6-designer-devel</Dependency>
<Dependency versionFrom="6.7.1">qt6-declarative-devel</Dependency>
<Dependency versionFrom="6.7.1">qt6-5compat-devel</Dependency>
<Dependency>kcolorscheme-devel</Dependency>
<Dependency>kio-devel</Dependency>
<Dependency>solid-devel</Dependency>
<Dependency>kglobalaccel-devel</Dependency>
@@ -46,7 +46,7 @@
<Dependency>libnl-devel</Dependency>
<Dependency>libcap-devel</Dependency>
<Dependency>knewstuff-devel</Dependency>
<Dependency>plasma-framework-devel</Dependency>
<Dependency versionFrom="6.2.5">libplasma-devel</Dependency>
<Dependency>extra-cmake-modules</Dependency>
<Dependency>attr-devel</Dependency>
<Dependency>pam-devel</Dependency>
@@ -63,10 +63,12 @@
<Dependency>libpcap</Dependency>
<Dependency>kservice</Dependency>
<Dependency>kglobalaccel</Dependency>
<Dependency>qt5-webengine</Dependency>
<Dependency>qt5-webchannel</Dependency>
<Dependency versionFrom="5.7.1">qt5-base</Dependency>
<Dependency versionFrom="5.7.1">qt5-declarative</Dependency>
<Dependency>qt6-webengine</Dependency>
<Dependency>qt6-webchannel</Dependency>
<Dependency versionFrom="6.7.1">qt6-base</Dependency>
<Dependency versionFrom="6.7.1">qt6-declarative</Dependency>
<Dependency versionFrom="6.7.1">qt6-5compat</Dependency>
<Dependency>kcolorscheme</Dependency>
<Dependency>kpackage</Dependency>
<Dependency>kjobwidgets</Dependency>
<Dependency>kdeclarative</Dependency>
@@ -74,8 +76,6 @@
<Dependency>libgcc</Dependency>
<Dependency>zlib</Dependency>
<Dependency>libXres</Dependency>
<Dependency>qt5-webkit</Dependency>
<Dependency>qt5-x11extras</Dependency>
<Dependency>kwindowsystem</Dependency>
<Dependency>kconfigwidgets</Dependency>
<Dependency>kwidgetsaddons</Dependency>
@@ -96,6 +96,9 @@
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
<Replaces>
<Package>libksysguard-kf6</Package>
</Replaces>
</Package>
<Package>
@@ -103,587 +106,24 @@
<Summary>Development files for libksysguard</Summary>
<RuntimeDependencies>
<Dependency release="current">libksysguard</Dependency>
<!--Dependency versionFrom="5.7.1">qt5-base-devel</Dependency>
<Dependency>libX11-devel</Dependency>
<Dependency>zlib-devel</Dependency>
<Dependency>libXres-devel</Dependency>
<Dependency versionFrom="5.7.1">qt5-webkit-devel</Dependency>
<Dependency versionFrom="5.7.1">qt5-x11extras-devel</Dependency>
<Dependency>kwindowsystem-devel</Dependency>
<Dependency>kconfigwidgets-devel</Dependency>
<Dependency>kwidgetsaddons-devel</Dependency>
<Dependency>kconfig-devel</Dependency>
<Dependency>kauth-devel</Dependency>
<Dependency>kcoreaddons-devel</Dependency>
<Dependency>ki18n-devel</Dependency-->
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="data">/usr/lib/cmake</Path>
<Path fileType="library">/usr/lib/pkgconfig</Path>
</Files>
<Replaces>
<Package>libksysguard-kf6-devel</Package>
</Replaces>
</Package>
<History>
<Update release="80">
<Date>2024-05-20</Date>
<Version>5.27.11</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="79">
<Date>2023-12-06</Date>
<Version>5.27.10</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="78">
<Date>2023-10-26</Date>
<Version>5.27.9</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="77">
<Date>2023-10-17</Date>
<Version>5.27.8</Version>
<Comment>Rebuild.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="76">
<Date>2023-09-12</Date>
<Version>5.27.8</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="75">
<Date>2023-08-01</Date>
<Version>5.27.7</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="74">
<Date>2023-06-20</Date>
<Version>5.27.6</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="73">
<Date>2023-05-09</Date>
<Version>5.27.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="72">
<Date>2023-04-08</Date>
<Version>5.27.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="71">
<Date>2023-03-15</Date>
<Version>5.27.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="70">
<Date>2023-03-01</Date>
<Version>5.27.2</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="69">
<Date>2023-02-22</Date>
<Version>5.27.1</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="68">
<Date>2023-02-16</Date>
<Version>5.27.0</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="67">
<Date>2023-01-04</Date>
<Version>5.26.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="66">
<Date>2022-11-29</Date>
<Version>5.26.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="65">
<Date>2022-11-11</Date>
<Version>5.26.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="64">
<Date>2022-10-28</Date>
<Version>5.26.2</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="63">
<Date>2022-09-13</Date>
<Version>5.25.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="62">
<Date>2022-08-02</Date>
<Version>5.25.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="61">
<Date>2022-07-12</Date>
<Version>5.25.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="60">
<Date>2022-06-29</Date>
<Version>5.25.2</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="59">
<Date>2022-06-22</Date>
<Version>5.25.1</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="58">
<Date>2022-06-18</Date>
<Version>5.25.0</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="57">
<Date>2022-05-06</Date>
<Version>5.24.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="56">
<Date>2022-02-26</Date>
<Version>5.24.2</Version>
<Comment>Version bump</Comment>
<Name>Kamil Atlı</Name>
<Email>suvari@pisilinux.org</Email>
</Update>
<Update release="55">
<Date>2022-01-04</Date>
<Version>5.23.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="54">
<Date>2021-12-01</Date>
<Version>5.23.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="53">
<Date>2021-11-10</Date>
<Version>5.23.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="52">
<Date>2021-10-27</Date>
<Version>5.23.2</Version>
<Comment>Version bump</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="51">
<Date>2021-10-19</Date>
<Version>5.23.1</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="50">
<Date>2021-10-14</Date>
<Version>5.23.0</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="49">
<Date>2021-08-31</Date>
<Version>5.22.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="48">
<Date>2021-07-08</Date>
<Version>5.22.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="47">
<Date>2021-06-22</Date>
<Version>5.22.2</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="46">
<Date>2021-06-15</Date>
<Version>5.22.1</Version>
<Comment>Version bump</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="45">
<Date>2021-05-05</Date>
<Version>5.21.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="44">
<Date>2021-03-17</Date>
<Version>5.21.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="43">
<Date>2021-03-14</Date>
<Version>5.21.2</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="42">
<Date>2021-01-10</Date>
<Version>5.20.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="41">
<Date>2020-12-11</Date>
<Version>5.20.4</Version>
<Comment>Version bump.</Comment>
<Name>Ali Algul</Name>
<Email>aligulle3801@gmail.com</Email>
</Update>
<Update release="40">
<Date>2020-09-01</Date>
<Version>5.19.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="39">
<Date>2020-06-16</Date>
<Version>5.19.1</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="38">
<Date>2020-06-09</Date>
<Version>5.19.0</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="37">
<Date>2020-05-06</Date>
<Version>5.18.5</Version>
<Comment>Version bump</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="36">
<Date>2020-03-29</Date>
<Version>5.18.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="35">
<Date>2020-01-10</Date>
<Version>5.17.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="34">
<Date>2019-09-15</Date>
<Version>5.16.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="33">
<Date>2019-07-31</Date>
<Version>5.16.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="32">
<Date>2019-07-22</Date>
<Version>5.16.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="31">
<Date>2019-04-15</Date>
<Version>5.15.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="30">
<Date>2019-03-12</Date>
<Version>5.15.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="29">
<Date>2019-02-27</Date>
<Version>5.15.2</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="28">
<Date>2019-02-21</Date>
<Version>5.15.1</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="27">
<Date>2019-02-12</Date>
<Version>5.15.0</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="26">
<Date>2019-01-12</Date>
<Version>5.14.5</Version>
<Comment>Version bump</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="25">
<Date>2018-12-26</Date>
<Version>5.14.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="24">
<Date>2018-11-06</Date>
<Version>5.14.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="23">
<Date>2018-10-17</Date>
<Version>5.14.1</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="22">
<Date>2018-10-17</Date>
<Version>5.14.0</Version>
<Comment>Version bump</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="21">
<Date>2018-08-11</Date>
<Version>5.12.5</Version>
<Comment>Rebuild</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="20">
<Date>2018-05-14</Date>
<Version>5.12.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="19">
<Date>2018-04-23</Date>
<Version>5.12.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="18">
<Date>2018-04-06</Date>
<Version>5.12.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="17">
<Date>2018-03-22</Date>
<Version>5.12.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="16">
<Date>2018-02-03</Date>
<Version>5.11.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="15">
<Date>2017-12-15</Date>
<Version>5.11.4</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="14">
<Date>2017-11-08</Date>
<Version>5.11.3</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="13">
<Date>2017-11-02</Date>
<Version>5.11.2</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="12">
<Date>2017-10-14</Date>
<Version>5.11.0</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="11">
<Date>2017-09-13</Date>
<Version>5.10.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="10">
<Date>2017-06-21</Date>
<Version>5.10.2</Version>
<Comment>version bump</Comment>
<Name>Ali Algul</Name>
<Email>aligulle3801@gmail.com</Email>
</Update>
<Update release="9">
<Date>2017-03-01</Date>
<Version>5.8.5</Version>
<Comment>Rebuild for new Toolchain.</Comment>
<Name>Stefan Gronewold(groni)</Name>
<Email>groni@pisilinux.org</Email>
</Update>
<Update release="8">
<Date>2017-01-01</Date>
<Version>5.8.5</Version>
<Comment>Version bump.</Comment>
<Name>Stefan Gronewold(groni)</Name>
<Email>groni@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2016-11-26</Date>
<Version>5.8.4</Version>
<Comment>Version bump.</Comment>
<Name>Stefan Gronewold(groni)</Name>
<Email>groni@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2016-11-03</Date>
<Version>5.8.3</Version>
<Comment>Version bump.</Comment>
<Name>Stefan Gronewold</Name>
<Email>groni@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2016-10-20</Date>
<Version>5.8.2</Version>
<Comment>Version bump.</Comment>
<Name>Stefan Gronewold</Name>
<Email>groni@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2016-10-06</Date>
<Version>5.8.0</Version>
<Comment>Version bump.</Comment>
<Name>Stefan Gronewold</Name>
<Email>groni@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2016-07-30</Date>
<Version>5.7.2</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2016-05-18</Date>
<Version>5.6.4</Version>
<Comment>Version bump.</Comment>
<Name>Burak Ertürk</Name>
<Email>burakerturk@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2016-04-08</Date>
<Version>5.6.2</Version>
<Update release="81">
<Date>2025-01-01</Date>
<Version>6.2.5</Version>
<Comment>First release</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
<Name>Pisi Linux Community</Name>
<Email>admin@pisilinux.org</Email>
</Update>
</History>
</PISI>