00:02:45 -!- TheLie has quit (Remote host closed the connection).
01:06:42 -!- craigo has joined.
01:10:10 -!- dcristofani has joined.
01:20:20 -!- ubq323 has quit (Quit: WeeChat 2.3).
01:51:51 -!- FreeFull has quit.
02:43:36 -!- Lord_of_Life_ has joined.
02:45:34 -!- Lord_of_Life has quit (Ping timeout: 260 seconds).
02:45:34 -!- Lord_of_Life_ has changed nick to Lord_of_Life.
03:09:49 -!- dcristofani has quit (Ping timeout: 260 seconds).
03:30:13 -!- dcristofani has joined.
04:20:07 -!- Cale has quit (Remote host closed the connection).
04:20:44 -!- Cale has joined.
05:03:39 -!- delta23 has joined.
05:10:28 -!- dcristofani has quit (Ping timeout: 245 seconds).
05:15:43 -!- dcristofani has joined.
05:46:22 -!- delta23 has quit (Quit: Leaving).
05:48:16 <esowiki> [[Patternfuck]] https://esolangs.org/w/index.php?diff=81205&oldid=80172 * Robolta * (+22) /* Overview */
05:48:23 -!- dcristofani has quit (Ping timeout: 245 seconds).
05:50:21 <zzo38> I think some time ago someone mentioned two dimensional regular expressions. I had thought of some ideas about that too, because I intended to add a similar feature into Free Hero Mesh.
05:58:36 <kmc> that's an interesting idea
05:58:39 <kmc> how does it work?
06:00:47 <zzo38> What I had is that it contains directions, which can be relative or absolute. It can also have loops and alternation like ordinary regular expressions, as well as some other things, such as callouts.
06:05:21 <zzo38> So, the basic idea is not so difference from one dimensional regular expressions, except that the match can be in any direction and can change directions too.
06:28:09 -!- sprock has quit (Ping timeout: 264 seconds).
06:29:43 -!- sprock has joined.
06:40:45 -!- sprock has quit (Ping timeout: 264 seconds).
07:24:07 -!- ornxka has quit (Read error: Connection reset by peer).
07:25:15 -!- ornxka has joined.
08:48:04 -!- dcristofani has joined.
09:00:47 -!- craigo has quit (Ping timeout: 256 seconds).
09:09:10 -!- hendursa1 has joined.
09:11:44 -!- hendursaga has quit (Ping timeout: 268 seconds).
09:13:14 -!- craigo has joined.
09:23:18 -!- Sgeo has quit (Read error: Connection reset by peer).
09:43:20 -!- craigo has quit (Remote host closed the connection).
09:43:46 -!- craigo has joined.
10:23:49 -!- dcristofani has quit (Ping timeout: 245 seconds).
12:42:10 <fizzie> Bleh. I've got this automated backup thing that reads org.freedesktop.login1.Manager.IdleHint and .IdleSinceHint to only run when the computer's been idle for at least two hours, but now it's somehow broken again and thinks it hasn't been idle since Feb 28.
12:42:18 <fizzie> I've been unable to find any real documentation how exactly "idleness" is measured.
12:43:54 <int-e> . o O ( maybe you need to set up a cron job that resets the idle counter )
12:45:06 * int-e knows nothing about this business.
12:45:37 <fizzie> It used to "just work", so I didn't bother trying to figure out how exactly it knows.
12:45:58 <fizzie> I think it's got something to do with logind "sessions".
12:47:46 <fizzie> There are per-session idle hints as well, and looks like I've got two active sessions, one of which says it's been non-idle since I woke up (fair enough), and the other which says it's been non-idle since Feb 27, so it's presumably that other session that's the problem.
12:49:18 <fizzie> Both of the sessions say they are "lightdm-xsession" sessions on the same display (:0). The okay-behaving one says it's in "active" state, but the other's in "closing" state.
12:49:46 <fizzie> So I guess that probably means there's some lingering process that got started in the "old" session that's keeping it alive.
12:51:23 <int-e> Hmm... loginctl show-session? Ah, unsurprisingly that hint shows my login time. :P
12:52:21 <int-e> (I just have a plain fvwm2 which I suspect is too old for this crap, or maybe would need some more gnome* stuff to support this.)
12:53:21 <fizzie> I've got a reasonably "plain" XMonad as well, but I think either xss-lock or xsecurelock does the necessary magic to mark it as idle when it's locked.
12:54:10 <fizzie> I imagine there's some way to see which processes are part of "session-2.scope", so I could figure out why that other session is still in "closing" state.
12:54:57 <fizzie> Ah, `systemctl status session-2.scope`
12:56:22 <fizzie> Shows there's a CGroup that contains `adb -L tcp:5037 fork-server server --reply-fd 4` in it. So I guess I did some adb stuff, then restarted X (I vaguely remember doing that for some reason), and that thing stayed there.
12:57:08 <fizzie> Yep, after `adb kill-server` the other session has now closed. Mystery solved, *and* complaining about it to IRC helped again.
12:59:01 <int-e> wait... where'd my xdm go
13:03:02 <int-e> there we go... systemctl said it got killed by SIGUSR2 on startup? and it didn't clean up its lock file, grmbl.
13:04:24 <int-e> but I bet xdm won't do anything about keeping track of idle states either :)
13:06:04 <int-e> Ah, but this way it's honest about it: IdleHint=no
13:06:05 <fizzie> Probably not. I think it's xss-lock doing it for me, for the record.
13:06:25 <int-e> Whereas before I guess it tracked activity in the shell where I did startx.
13:06:44 <int-e> (unsurprisingly, there was no such activity at all)
13:07:06 <fizzie> At least it's got a `static void logind_session_set_idle_hint(gboolean idle);` function in the code.
13:07:26 <fizzie> IdleHint is a boolean where false ("no"?) means "not idle". IdleSinceHint says when the IdleHint was last changed.
13:09:14 <int-e> I see. Okay, let's `watch` this while I get myself some food :)
13:39:15 -!- hendursa1 has quit (Quit: hendursa1).
13:39:31 -!- hendursaga has joined.
13:44:40 -!- zzo38 has quit (Ping timeout: 256 seconds).
14:13:20 <int-e> Oh well, it's not idle yet.
14:13:52 <int-e> fizzie: arguably you should be checking all sessions. but it's also bad that that adb kept running
14:42:30 -!- delta23 has joined.
14:44:34 -!- craigo has quit (Ping timeout: 260 seconds).
14:57:27 <esowiki> [[Sploosh]] M https://esolangs.org/w/index.php?diff=81206&oldid=77677 * PythonshellDebugwindow * (+19) /* Hello World example (or Jello Woqld, or Fello Wollf, or many other unpredictable results) */ Format; wbr
15:06:17 <esowiki> [[Sploosh]] M https://esolangs.org/w/index.php?diff=81207&oldid=81206 * PythonshellDebugwindow * (+26) /* Some looping and array examples */ Format, wbr
15:13:44 <esowiki> [[Immi]] M https://esolangs.org/w/index.php?diff=81208&oldid=25976 * PythonshellDebugwindow * (+3) /* what did (variable name) say? */ Format
15:15:22 <esowiki> [[Immi]] M https://esolangs.org/w/index.php?diff=81209&oldid=81208 * PythonshellDebugwindow * (+26) /* Commands */ Format
15:30:23 -!- sprock has joined.
16:13:57 <fizzie> int-e: There's a "global" idle hint (/org/freedesktop/login1, org.freedesktop.login1.Manager.Idle(Since)Hint) that combines the information from all sessions; that's the one I'm checking. AFAICT it's idle iff all sessions are idle, that's why the state=closing session was blocking the backups.
16:14:53 <int-e> oh, I misunderstood then, I thought that session counted as idle
16:15:32 <fizzie> Nah, I think it only counts as idle if something explicitly sets it as idle, and there was nothing running in there that could.
16:16:12 <fizzie> Hmm, while the X session is idle because xss-lock sets it so, I wonder how/why SSH sessions become idle too. Because I've occasionally had an SSH session open for weeks/months, and the backups haven't stalled.
16:16:30 <int-e> so it's all adb's fault then for running in the background without dissociating itself from the session (do cgroups even allow that thoug; maybe not, it could easily break containers...)
16:17:15 <fizzie> It could stop the server when the session gets closed. I think some kind of a signal is even sent for that? But maybe it ignores that.
16:18:02 <int-e> The upshot is... I have a few pieces of these puzzles but no picture of how they fit together as a whole.
16:18:54 <fizzie> Same here. I opened a SSH session, and it's IdleHint = False, IdleSinceHint = time of login.
16:19:53 <fizzie> (Which makes sense, since what else could it be, but how's that not blocking the backups then?)
16:23:29 <fizzie> A random systemd github issue suggests logind detects idleness for sessions with a TTY by watching the mtime of the associated TTy device (!), so maybe it becomes idle if that crosses some threshold.
16:31:06 <fizzie> ...okay, I got sidetracked by all these other DBus interfaces that this graphical introspection tool (`d-feet`) is showing. I can see my mouse's battery charging level here!
17:18:46 -!- esowiki has joined.
17:19:23 -!- wesleyac has joined.
17:19:23 -!- myname has joined.
17:19:23 -!- izabera has joined.
17:21:50 -!- wmww has quit (Ping timeout: 268 seconds).
17:21:56 -!- df1111 has quit (Ping timeout: 240 seconds).
17:23:04 -!- Discordian[m] has quit (Ping timeout: 268 seconds).
17:24:45 -!- none30 has quit (Ping timeout: 240 seconds).
17:26:26 -!- delta23 has quit (Ping timeout: 265 seconds).
17:38:39 -!- wmww has joined.
17:41:58 -!- delta23 has joined.
18:16:58 -!- tromp has quit (Remote host closed the connection).
18:20:01 -!- Discordian[m] has joined.
18:22:15 -!- df1111 has joined.
18:41:18 -!- none30 has joined.
18:50:03 -!- tromp has joined.
18:55:09 -!- tromp has quit (Ping timeout: 264 seconds).
19:12:07 -!- craigo has joined.
19:14:11 -!- Sgeo has joined.
19:16:08 <esowiki> [[Stupidc]] M https://esolangs.org/w/index.php?diff=81210&oldid=80374 * Not applicable * (+576) added notes
19:26:24 <esowiki> [[Special:Log/newusers]] create * Largejamie * New user account
19:28:28 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=81211&oldid=81174 * Largejamie * (+117) /* Introductions */
19:29:19 <esowiki> [[Esolang:Introduce yourself]] https://esolangs.org/w/index.php?diff=81212&oldid=81211 * Largejamie * (+89) /* Introductions */
19:35:31 -!- tromp has joined.
19:39:41 <fizzie> Yeah, that untouched SSH session had indeed become idle. And when I pressed a key in it, it became non-idle. So it does Just Work™ for TTY-type sessions.
19:53:21 -!- zzo38 has joined.
20:09:38 -!- zzo38 has quit (Ping timeout: 264 seconds).
20:27:39 -!- zzo38 has joined.
20:31:51 <int-e> and I guess it worked that way in UNIX times already... `who` displays idle times and I never wondered where it got those.
20:32:10 <int-e> but mtime of the tty makes a lot of sense
20:55:20 <zzo38> On my computer the idle column for "who" command just says "old"
21:05:46 <int-e> so... I *think* who assumes that c[hange]time = time of login, a[ccess]time = time of last input (so this corresponds to idle time), and m[odify]time = time of last output, when looking at a user's controlling pty
21:06:02 <int-e> and 'old' is printed when atime is before ctime.
21:07:56 <int-e> Hmm there are some oddities... like ^C not counting as an input. (I guess that's an ioctl, not a write)
21:08:30 <int-e> (I'm looking at a PTY, not a "real" tty)
23:12:05 <zzo38> Next thing to write in Free Hero Mesh is figuring out what is wrong with some levels involving the $SeekerCloser class in the FALLING puzzle set.
23:28:37 -!- zzo38 has quit (Ping timeout: 276 seconds).
23:47:52 -!- dcristofani has joined.
23:56:59 -!- zzo38 has joined.