]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - TODO
Merge pull request #8822 from fbuihuu/rfc-tmpfiles-safe-upstream
[thirdparty/systemd.git] / TODO
diff --git a/TODO b/TODO
index c16712e61b79ddb408dd4c70875b1bb4be35af7c..3ca3c5ec35ab04e428c03403a5cae95de2b42d54 100644 (file)
--- a/TODO
+++ b/TODO
@@ -14,19 +14,49 @@ Janitorial Clean-ups:
 
 * Rearrange tests so that the various test-xyz.c match a specific src/basic/xyz.c again
 
+* copy.c: set the right chattrs before copying files and others after
+
 * rework mount.c and swap.c to follow proper state enumeration/deserialization
   semantics, like we do for device.c now
 
+* udev: drop "collect", it's nonsense
+
 Features:
 
+* logind: maybe watch utmp asynchronously using inotify, and populate our own
+  tracked session metadata from the fields available therein. Why bother? Right
+  now, all "ssh" sessions will be tracked without their TTY by logind (which is
+  not just unfriendly to users as this means "loginctl session-status" shows
+  less information than "who" in many cases, but also breaks the IdleAction
+  logic, as we never can detect such sessions as idle, as we have no TTY to
+  watch). ssh sets the PAM_TTY field on its PAM sessions to "ssh" rather than
+  the actual pty, because the PAM session is opened early on for new
+  connections, but the PTY only registered much later (if at all). ssh writes
+  the utmp record only after a TTY is actually registered, hence we could use
+  this data then, and use it if it is available. Using utmp for this is ugly of
+  course, and watching things asynchronously even more so, but it should be
+  good enough for the idle detection logic at least.
+
+* maybe extend .path units to expose fanotify() per-mount change events
+
+* Add a "systemctl list-units --by-slice" mode or so, which rearranges the
+  output of "systemctl list-units" slightly by showing the tree structure of
+  the slices, and the units attached to them.
+
+* the stop-when-unneded feature should be reworked: there should be a queue of
+  units, and we should only enqeueu stop jobs from a defer event that processes
+  queue instead of right-away when we assume that a unit is now unneeded.
+
+* nspawn: make nspawn suitable for shell pipelines: instead of triggering a
+  hangup when input is finished, send ^D, which synthesizes an EOF. Then wait
+  for hangup or ^D before passing on the EOF.
+
 * When reloading configuration PID 1 should reset all its properties to the
   original defaults before calling parse_config()
 
 * Add OnTimezoneChange= and OnTimeChange= stanzas to .timer units in order to
   schedule events based on time and timezone changes.
 
-* add O_TMPFILE support to copy_file_atomic()
-
 * nspawn: greater control over selinux label?
 
 * cgroups: figure out if we can somehow communicate in a cleaner way whether a
@@ -47,10 +77,6 @@ Features:
   that our log messages could contain clickable links for example for unit
   files and suchlike we operate on.
 
-* introduce a new SystemCallFilters= group called "@system-service" with a
-  sensible default set for system services, then make use of them in portable
-  profiles
-
 * add support for "portablectl attach http://foobar.com/waaa.raw (i.e. importd integration)
 
 * add attach --enable and attach --now (for attach+enable+start)