Commit graph

25 commits

Author SHA1 Message Date
Ivailo Monev
1cb8619539 kinit: upload modified temporary files
NOTE: this is potentionally dangerous thing to do because KLauncher reaps
processes and there is no interruption point for it right now which is one
of the reasons upload confirmation is not in place (user interaction will
have to be potentionally canceled too)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-24 14:08:42 +03:00
Ivailo Monev
c72478ab01 kinit: check the process exit code on state change
for flexibility

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-16 06:33:13 +03:00
Ivailo Monev
ecef0ed675 kinit: remove exec_blind method from the D-Bus interface
no longer used by any other program

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-12 14:08:08 +03:00
Ivailo Monev
8da3ce890f kinit: use the home path as default working directory
because klauncher is D-Bus service

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-12 09:30:09 +03:00
Ivailo Monev
1ac69ccc74 kdecore: drop unused startup condition feature
there are other conditions that are checked tho like the allowed
environment but this one is Katana specific and unused so

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-12 05:02:58 +03:00
Ivailo Monev
b90f90905b kio: move most of the KRun bits to KLauncher
two things doing the same thing - one has to go away. also KRun does not
fork and the launched service/application lifetime was bound to the
process launching it, that is not the case with klauncher - it is bound
to the session (in the usual case)

a few things on the TODO list but mostly for services/applications
lacking features

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-12 03:21:17 +03:00
Ivailo Monev
0e0db0b815 kdeui: move session management to KApplicaiton
every comment about X11 and session management in general claims it was
broken, not going to claim otherwise. everything that does not use
KApplication shall not be involved into session management now and gets
the middle finger (SIGTERM or SIGKILL) after 5 sec by klauncher when the
session is done

also session management has to be explicitly enabled by applications
now, disabled by default

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-09 08:29:51 +03:00
Ivailo Monev
a50c72de91 generic: drop support for startup notification via D-Bus service
just another way to do what ASN does, the KService::DBusWait mode was
not used too. with this change however all of the process setup code is
moved to a seperate class and the responsibility of KLauncher about ASN
is reduced (ASN now works better for process that fork but if application
claims ASN support and does not send ASN finish then the timeout will be
reached)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-19 19:53:14 +03:00
Ivailo Monev
64e890cc1a kinit: read the launch timeout from klaunchrc
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-19 01:16:26 +03:00
Ivailo Monev
4c5361d34d kinit: implement public cleanup method for klauncher
to be used by ksmserver

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-29 00:16:32 +03:00
Ivailo Monev
61709722d0 kdecore: remove now unused no-wait/blind option of KToolInvocation
KToolInvocation processes application events now (see
4fb8a1d674)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-20 15:40:32 +02:00
Ivailo Monev
4fb8a1d674 generic: call klauncher methods asynchronously from KToolInvocation
so that application event processing is not blocked by any
KToolInvocation method, the D-Bus service name and PID return arguments
are not used anyway so removing them

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-19 12:44:44 +02:00
Ivailo Monev
34d87abfd8 kinit: new method for dumping the system environment
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-10 09:01:48 +02:00
Ivailo Monev
f82af797c3 kinit: require phase argument to be passed to autoStart method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-10 08:53:45 +02:00
Ivailo Monev
89e0305c24 kinit: remove redundant reparseConfiguration() method of org.kde.KLauncher interface
klauncher is no longer responsible for KIO slaves

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-08 03:59:18 +02:00
Ivailo Monev
8e0c48a7f7 kinit: log the ASN binary
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-06 00:47:51 +02:00
Ivailo Monev
ac048407c3 kinit: cache the QDBusConnectionInterface
it will not change because the connection is persistent

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-05 00:39:08 +02:00
Ivailo Monev
aa6b5ea4f0 kinit: klauncher and KCrash rewrite
much simpler and easier to maintain, also it will be proper D-Bus
service now with no sockets, process title hack and whatnot. KCrash
and startkde script (in kde-workspace repo) have to be adjusted for
it tho

note that the internal KIO scheduler already has the functionality to
put slaves on hold but now they will be started as detached process.
eventually they may become plugins (they are loaded as such by kioslave
program) without event loop dispatcher

fixes application startup notification (ASN) and cleanup issues

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-04 23:20:15 +02:00
Ivailo Monev
45b86486d3 kinit: do not deep-copy QString object in KLauncher::start_service()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-25 13:27:38 +03:00
Ivailo Monev
efbc9556a6 generic: remove unused org.kde.KLauncher.exec_blind() overload
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-25 07:06:15 +03:00
Ivailo Monev
b690586b3d generic: remove deprecated org.kde.KLauncher.start_service_by_name() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-25 06:31:55 +03:00
Ivailo Monev
a0547d6810 generic: fix possible PID clamping
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-01-04 01:48:39 +02:00
Ivailo Monev
61333c4671 generic: namespaced Qt4/Katie build fixes
most of the changes were done trought Katie's namefsck script which
convertes forward class declarations to include directives, however
other fixes here and there were needed as well as some questionable
changes to Q_DECLARE_TYPEINFO() macro calls because they most likely
have to do the namespacing themselfs (QT_BEGIN/END_NAMESPACE, and
probably will be in Katie) meaning that some of the changes may be
temporary and reverted later.

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2017-08-04 09:24:39 +00:00
Ivailo Monev
9f362672a6 generic: headers inclusion cleanup 2015-10-14 22:38:09 +03:00
Ivailo Monev
814163a8dc initial import 2014-11-13 01:04:59 +02:00