]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - TODO
Merge pull request #16124 from ssahani/dhcpv6-duid
[thirdparty/systemd.git] / TODO
diff --git a/TODO b/TODO
index 947274ea19358299f32e8b692fcc9897e9f9b29f..da248ff2961fd1cc202cf9be14f7faf10fd5a532 100644 (file)
--- a/TODO
+++ b/TODO
@@ -4,9 +4,6 @@ Bugfixes:
   manager or system manager can be always set. It would be better to reject
   them when parsing config.
 
-* busctl prints errors to stdout:
-  busctl tree org.freedesktop.systemd1  /org/freedesktop/systemd1
-
 External:
 
 * Fedora: add an rpmlint check that verifies that all unit files in the RPM are listed in %systemd_post macros.
@@ -22,11 +19,42 @@ Janitorial Clean-ups:
 
 Features:
 
+* add --copy-from and --copy-to command to systemd-dissect which copies stuff
+  in and out of a disk image
+
+* add systemd.random_seed= on the kernel cmdline, taking some hex or base64
+  encoded data. During earliest boot, credit it to entropy. This is not useful
+  for general purpose systems, but certainly for testing environments in VMs
+  and such, as it allows us to boot up instantly with fully initialized entropy
+  pool even if RNG pass-thru is not available.
+
+* Support ProtectProc= or so, using: https://patchwork.kernel.org/cover/11310197/
+
+* if /usr/bin/swapoff fails due to OOM, log a friendly explanatory message about it
+
+* build short web pages out of each catalog entry, build them along with man
+  pages, and include hyperlinks to them in the journal output
+
+* machined: add API to acquire UID range. add API to mount/dissect loopback
+  file. Both protected by PK. Then make nspawn use these APIs to run
+  unprivileged containers. i.e. push the truly privileged bits into machined,
+  so that the client side can remain entirely unprivileged, with SUID or
+  anything like that.
+
+* add "throttling" to sd-event event sources: optionally, when we wake up too
+  often for one, let's turn it off entirely for a while. Use that for the
+  /proc/self/mountinfo logic.
+
 * move our systemd-user PAM snippet to /usr/, which PAM appears to support
   these days
 
 * nspawn: support time namespaces
 
+* add ConditionSecurity=tpm2
+
+* Remove any support for booting without /usr pre-mounted in the initrd entirely.
+  Update INITRD_INTERFACE.md accordingly.
+
 * pid1: Move to tracking of main pid/control pid of units per pidfd
 
 * pid1: support new clone3() fork-into-cgroup feature
@@ -34,6 +62,9 @@ Features:
 * pid1: also remove PID files of a service when the service starts, not just
   when it exits
 
+* systemd-path: add ESP and XBOOTLDR path. Add "private" runtime/state/cache dir enum,
+  mapping to $RUNTIME_DIRECTORY, $STATE_DIRECTORY and such
+
 * make "systemd-dissect" an official supported tool, i.e. move to /usr/bin/ and
   provide man page. Given that we now have a tool that can generate images like
   this, it's useful to have one that can dump contents of them, too.
@@ -42,6 +73,13 @@ Features:
   operate on disk images directly. Specifically: bootctl, firstboot, tmpfiles,
   sysusers, systemctl, repart, journalctl, coredumpctl.
 
+* seccomp: by default mask x32 ABI system wide on x86-64. it's on its way out
+
+* seccomp: don't install filters for ABIs that are masked anyway for the
+  specific service
+
+* seccomp: maybe merge all filters we install into one with that libseccomp API that allows merging.
+
 * per-service credential system. Specifically: add LoadCredential= (for loading
   cred from file), AcquireCredential= (for asking user for cred, via
   ask-password), PassCredential= (for passing on credential systemd itself
@@ -71,7 +109,7 @@ Features:
 * homed: as an extension to the directory+subvolume backend: if located on
   especially marked fs, then sync down password into LUKS header of that fs,
   and always verify passwords against it too. Bootstrapping is a problem
-  though: if noone is logged in (or no other user even exists yet), how do you
+  though: if no one is logged in (or no other user even exists yet), how do you
   unlock the volume in order to create the first user and add the first pw.
 
 * homed: support new FS_IOC_ADD_ENCRYPTION_KEY ioctl for setting up fscrypt
@@ -242,14 +280,11 @@ Features:
 * systemd-firstboot: teach it dissector magic, so that you can point it to some
   disk image and it will just set everything in it all behind the scenes.
 
-* systemd-firstboot: add --force mode that replaces existing configuration.
-
 * We should probably replace /var/log/README, /etc/rc.d/README with symlinks
   that are linked to these places instead of copied. After all they are
   constant vendor data.
 
-* maybe add kernel cmdline params: 1) to force first-boot mode + 2) to force
-  random seed crediting
+* maybe add kernel cmdline params: to force random seed crediting
 
 * nspawn: on cgroupsv1 issue cgroup empty handler process based on host events,
   so that we make cgroup agent logic safe
@@ -1200,17 +1235,14 @@ Features:
 * networkd:
    - add more keys to [Route] and [Address] sections
    - add support for more DHCPv4 options (and, longer term, other kinds of dynamic config)
-   - add proper initrd support (in particular generate .network/.link files based on /proc/cmdline)
    - add reduced [Link] support to .network files
-   - add Scope= parsing option for [Network]
    - properly handle routerless dhcp leases
    - work with non-Ethernet devices
-   - add support for more bond options
    - dhcp: do we allow configuring dhcp routes on interfaces that are not the one we got the dhcp info from?
    - the DHCP lease data (such as NTP/DNS) is still made available when
      a carrier is lost on a link. It should be removed instantly.
    - expose in the API the following bits:
-         - option 15, domain name and/or option 119, search list
+         - option 15, domain name
          - option 12, hostname and/or option 81, fqdn
          - option 123, 144, geolocation
          - option 252, configure http proxy (PAC/wpad)
@@ -1219,11 +1251,9 @@ Features:
    - allow Name= to be specified repeatedly in the [Match] section. Maybe also
      support Name=foo*|bar*|baz ?
    - duplicate address check for static IPs (like ARPCHECK in network-scripts)
-   - allow DUID/IAID to be customized, see issue #394.
    - whenever uplink info changes, make DHCP server send out FORCERENEW
 
-* networkd-wait-online:
-   - make operstates to wait for configurable?
+* Figure out how to do unittests of networkd's state serialization
 
 * dhcp:
    - figure out how much we can increase Maximum Message Size
@@ -1248,20 +1278,14 @@ External:
    - natively watch for dbus-*.service symlinks (PENDING)
    - teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
 
-* fix alsa mixer restore to not print error when no config is stored
-
 * make cryptsetup lower --iter-time
 
-* patch kernel for xattr support in /dev, /proc/, /sys?
-
 * kernel: add device_type = "fb", "fbcon" to class "graphics"
 
 * /usr/bin/service should actually show the new command line
 
 * fedora: suggest auto-restart on failure, but not on success and not on coredump. also, ask people to think about changing the start limit logic. Also point people to RestartPreventExitStatus=, SuccessExitStatus=
 
-* fedora: F20: go timer units all the way, leave cron.daily for cron
-
 * neither pkexec nor sudo initialize environ[] from the PAM environment?
 
 * fedora: update policy to declare access mode and ownership of unit files to root:root 0644, and add an rpmlint check for it