Bugfixes:
-* Should systemctl status \* work on all unit types, not just .service?
-
-* Dangling symlinks of .automount unit files in .wants/ directories, set up
- automount points even when the original .automount file did not exist
- anymore. Only the .mount unit was still around.
-
-* ExecStart with unicode characters fails in strv_split_extract:
+* the error paths in usbffs_dispatch_ep() leak memory
- [Service]
- Environment=ONE='one' "TWO='two two' too" THREE=
- ExecStart=/bin/python3 -c 'import sys;print(sys.argv)' $ONE $TWO $THREE
+* copy.c: set the right chattrs before copying files and others after
External:
* 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
+
Features:
-* nspawn: greater control over hostname, resolv.conf, timezone, rlim
+* 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.
-* nspawn: when operating in a scope, also create /payload subcrgoup
+* 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 error paths in usbffs_dispatch_ep() leak memory
+* 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.
+
+* 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.
+
+* nspawn: greater control over selinux label?
* cgroups: figure out if we can somehow communicate in a cleaner way whether a
systemd instance not running in the cgroup root shall or shall not manage the
should be revisited to make clearer and also work if the payload systemd runs
with full privs and without userns.
+* portables: introduce a new unit file directory /etc/systemd/system.attached/
+ or so, where we attach portable services to
+
* cgroups: use inotify to get notified when somebody else modifies cgroups
owned by us, then log a friendly warning.
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)
+
+* sync dynamic uids/gids between host+portable srvice (i.e. if DynamicUser=1 is set for a service, make sure that the
+ selected user is resolvable in the service even if it ships its own /etc/passwd)
+
* Fix DECIMAL_STR_MAX or DECIMAL_STR_WIDTH. One includes a trailing NUL, the
other doesn't. What a desaster. Probably to exclude it. Also
DECIMAL_STR_WIDTH should probably add an extra "-" into account for negative
numbers.
+* Check that users of inotify's IN_DELETE_SELF flag are using it properly, as
+ usually IN_ATTRIB is the right way to watch deleted files, as the former only
+ fires when a file is actually removed from disk, i.e. the link count drops to
+ zero and is not open anymore, while the latter happens when a file is
+ unlinked from any dir.
+
* port systemctl, systemd-inhibit, busctl, … over to format-table.[ch]'s table formatters
* pid1: lock image configured with RootDirectory=/RootImage= using the usual nspawn semantics while the unit is up
- document chaining of signal handler for SIGCHLD and child handlers
- define more intervals where we will shift wakeup intervals around in, 1h, 6h, 24h, ...
- generate a failure of a default event loop is executed out-of-thread
- - maybe add support for inotify events
+ - maybe add support for inotify events (which we can do safely now, with O_PATH)
* investigate endianness issues of UUID vs. GUID