- Jan 19, 2025
-
-
Florian Schmaus authored
-
Florian Schmaus authored
It is possible that takeInhibitor() throws (see log below). Therefore, ensure that leaveAction is executed by using a try/finally block. Jan 19 09:01:56 host sandmann[1574]: Invoking /etc/sandmann/activity-check.d/bitcoin-lag Jan 19 09:01:56 host sandmann[1574]: Invoking /etc/sandmann/activity-check.d/bcache1-dirty Jan 19 09:00:46 host sandmann[1574]: Received sleep signal: start=false Jan 19 09:00:46 host sandmann[1574]: Appending sig: ua(yv) data: 1846, [[1, [o, /org/freedesktop/login1]], [2, [s, org.freedesktop.login1.Manager]], [3, [s, PrepareForSleep]], [8, [g, b]]] Jan 19 09:00:46 host sandmann[1574]: Appending sig: yyyy data: 0, 4, 0, 1 Jan 19 09:00:46 host sandmann[1574]: Creating message with serial 1846 Jan 19 09:01:10 host java[1574]: at java.base/java.lang.Thread.run(Thread.java:840) Jan 19 09:01:10 host java[1574]: at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) Jan 19 09:01:10 host java[1574]: at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) Jan 19 09:01:10 host java[1574]: at org.freedesktop.dbus.connections.base.ConnectionMessageHandler.lambda$handleMessage$0(ConnectionMessageHandler.java:91) Jan 19 09:01:10 host java[1574]: at eu.geekplace.sandmann.Logind.$anonfun$6(Logind.scala:194) Jan 19 09:01:10 host java[1574]: at eu.geekplace.sandmann.Logind.$anonfun$5(Logind.scala:172) Jan 19 09:01:10 host java[1574]: at jdk.proxy2/jdk.proxy2.$Proxy36.Inhibit(Unknown Source) Jan 19 09:01:10 host java[1574]: at org.freedesktop.dbus.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:97) Jan 19 09:01:10 host java[1574]: at org.freedesktop.dbus.RemoteInvocationHandler.executeRemoteMethod(RemoteInvocationHandler.java:153) Jan 19 09:01:10 host java[1574]: at org.freedesktop.dbus.RemoteInvocationHandler.executeRemoteMethod(RemoteInvocationHandler.java:251) Jan 19 09:01:10 host java[1574]: at org.freedesktop.dbus.RemoteInvocationHandler.executeRemoteMethod(RemoteInvocationHandler.java:234) Jan 19 09:01:10 host java[1574]: Exception in thread "DBus-Signal-Receiver-1" org.freedesktop.dbus.errors.NoReply: No reply within specified time Jan 18 21:45:17 host sandmann[1574]: Received sleep signal: start=true
-
- Dec 26, 2024
-
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
-
- Nov 14, 2024
-
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
Some idle check may return a idle since period starting with the unix epoch (e.g., [1]). Convert those timestamps to the system boot timestamp, because that is when the idle probably started. Alternative, we could cap the idle since start time to the system boot time, but let's try this first. 1: https://github.com/systemd/systemd/issues/35163
-
- Oct 21, 2024
-
-
Florian Schmaus authored
-
Florian Schmaus authored
As the code comment states, this is all that is required. But we still lists the sessions if debug is enabled.
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
-
- Oct 16, 2024
-
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
This avoids an NoSuchElementException: Oct 16 16:02:46 neo-pc.sch systemd[1]: sandmann.service: Main process exited, code=exited, status=1/FAILURE Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Sandmann.main(Sandmann.scala) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Sandmann$.main(Sandmann.scala:75) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.util.Using$.resource(Using.scala:261) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Sandmann$.main$$anonfun$1(Sandmann.scala:74) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.util.Using$.resource(Using.scala:261) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Sandmann$.main$$anonfun$1$$anonfun$1(Sandmann.scala:74) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Sandmann.run(Sandmann.scala:164) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Sandmann.performCheck(Sandmann.scala:567) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Sandmann.idleAction(Sandmann.scala:421) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Logind.getUserSessionCount(Logind.scala:85) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Logind.getSessionProperties(Logind.scala:97) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.collection.mutable.ArrayBuffer.map(ArrayBuffer.scala:43) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.collection.StrictOptimizedIterableOps.map$(StrictOptimizedIterableOps.scala:87) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.collection.StrictOptimizedIterableOps.map(StrictOptimizedIterableOps.scala:100) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Logind.getSessionProperties$$anonfun$2(Logind.scala:97) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Logind$Session.<init>(Logind.scala:65) Oct 16 16:02:46 neo-pc.sch java[110666]: at eu.geekplace.sandmann.Logind$SessionClass$.apply(Logind.scala:54) Oct 16 16:02:46 neo-pc.sch java[110666]: at scala.collection.immutable.Map$Map3.apply(Map.scala:397)
-
- Mar 11, 2024
-
-
Florian Schmaus authored
-
Florian Schmaus authored
-
- Jan 28, 2024
-
-
Florian Schmaus authored
-
Florian Schmaus authored
-
- Jan 10, 2024
-
-
Florian Schmaus authored
-
- Jan 09, 2024
-
-
Florian Schmaus authored
Only on protected branches SSH_DEPLOY_KEY is available.
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
-
- Dec 26, 2023
-
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
Just resetting 'idleSince' to 'None' after we resume from sleep/hibernation is not sufficient to prevent Sandmann from issuing the idle action right away, because logind/systemd will report an "old" idle since value of the user sessions. To fix this, we have to introduce a barrier that prevents Sandmann from assuming that the system is longer idle than the instant the system resumed. This commit adds such a barrier with the name lastWakeup.
-
- Dec 23, 2023
-
-
Florian Schmaus authored
-
- Dec 16, 2023
-
-
Florian Schmaus authored
-
- Nov 28, 2023
-
-
Florian Schmaus authored
-
- Nov 26, 2023
-
-
Florian Schmaus authored
-
Florian Schmaus authored
-