]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - TODO
Merge pull request #5731 from jprvita/hwdb-acer
[thirdparty/systemd.git] / TODO
diff --git a/TODO b/TODO
index 2004c394beab3d68ae0b6d6804b9b492cc363599..3cf4ce393c6d7b832f28e0820631622c7e1f8def 100644 (file)
--- a/TODO
+++ b/TODO
@@ -24,6 +24,20 @@ Janitorial Clean-ups:
 
 Features:
 
+* sort generated hwdb files alphabetically when we import them, so that git
+  diffs remain minimal (in particular: the OUI databases we import are not
+  sorted, and not stable)
+
+* set SystemCallArchitectures=native on all our services
+
+* maybe add call sd_journal_set_block_timeout() or so to set SO_SNDTIMEO for
+  the sd-journal logging socket, and, if the timeout is set to 0, sets
+  O_NONBLOCK on it. That way people can control if and when to block for
+  logging.
+
+* tighten sd_notify() MAINPID= checks a bit: don't accept foreign PIDs (i.e.
+  PIDs not managed by the service manager)
+
 * journald: when we recv a log datagram via the native or syslog transports,
   search for the PID in the active stream connections, and let's make sure to
   always process the datagrams before the streams. Then, cache client metadata
@@ -31,10 +45,19 @@ Features:
   quickly exiting processes which log as long as they had their own stream
   connection...
 
+* hostnamed: populate form factor data from a new hwdb database, so that old
+  yogas can be recognized as "convertible" too, even if they predate the DMI
+  "convertible" form factor
+
 * Maybe add a small tool invoked early at boot, that adds in or resizes
   partitions automatically, to be used when the media used is actually larger
   than the image written onto it is.
 
+* Maybe add PrivatePIDs= as new unit setting, and do minimal PID namespacing
+  after all. Be strict however, only support the equivalent of nspawn's
+  --as-pid2 switch, and sanely proxy sd_notify() messages dropping stuff such
+  as MAINPID.
+
 * change the dependency Set* objects in Unit structures to become Hashmap*, and
   then store a bit mask who created a specific dependency: the source unit via
   fragment configuration, the destination unit via fragment configuration, or
@@ -48,6 +71,15 @@ Features:
   the service cgroup, which is supposed to monitor the service, and when it
   exits the service is considered failed by its monitor.
 
+* track the per-service PAM process properly (i.e. as an additional control
+  process), so that it may be queried on the bus and everything.
+
+* add a new "debug" job mode, that is propagated to unit_start() and for
+  services results in two things: we raise SIGSTOP right before invoking
+  execve() and turn off watchdog support. Then, use that to implement
+  "systemd-gdb" for attaching to the start-up of any system service in its
+  natural habitat.
+
 * replace all canonicalize_file_name() invocations by chase_symlinks(), in
   particulr those where a rootdir is relevant.
 
@@ -55,6 +87,9 @@ Features:
 
 * set ProtectSystem=strict for all our usual services.
 
+* fix PrivateNetwork= so that we fall back gracefully on kernels lacking
+  namespacing support (similar for the other namespacing options)
+
 * maybe add gpt-partition-based user management: each user gets his own
   LUKS-encrypted GPT partition with a new GPT type. A small nss module
   enumerates users via udev partition enumeration. UIDs are assigned in a fixed
@@ -98,8 +133,6 @@ Features:
 
 * switch to ProtectSystem=strict for all our long-running services where that's possible
 
-* If RootDirectory= is used, mount /proc, /sys, /dev into it, if not mounted yet
-
 * Permit masking specific netlink APIs with RestrictAddressFamily=
 
 * nspawn: start UID allocation loop from hash of container name
@@ -129,8 +162,6 @@ Features:
 * Add DataDirectory=, CacheDirectory= and LogDirectory= to match
   RuntimeDirectory=, and create it as necessary when starting a service, owned by the right user.
 
-* Add RootImage= for mounting a disk image or file as root directory
-
 * make sure the ratelimit object can deal with USEC_INFINITY as way to turn off things
 
 * journalctl: make sure -f ends when the container indicated by -M terminates