chiark / gitweb /
update TODO
[elogind.git] / TODO
diff --git a/TODO b/TODO
index 89d0c16b73cf2148f517c3072b0aa45b10090e19..51dee2c6ec2f8e60b0504247f84fccaf7908c4c0 100644 (file)
--- a/TODO
+++ b/TODO
@@ -25,13 +25,19 @@ External:
 
 * Fedora: post FPC ticket to move add %tmpfiles_create to the packaging guidelines
 
-Preparation for 209:
+Features:
 
-* Review new libraries
+* machined: provide calls GetMachineByAddress() on the manager interface to get the machine for a local IP address, and GetAddress() on the Machine interface to get the Address for a machine. Implement via forking off child process which quickly joins the cotnainer and passes data to parent. Show this in "machinectl status", and use it to implement NSS module to provide automatic name resolution for containers.
 
-* libsystemd-journal returns the object created as first param in sd_journal_new(), sd_bus_new() and suchlike as last...
+* add generator that pulls in systemd-network from containers when CAP_NET_ADMIN is set, more than the loopback device is defined, even when it is otherwise off
 
-Features:
+* logind: avoid suspending on SW_LID if SW_DOCK is set
+
+* MessageQueueMessageSize= and RLimitFSIZE= (and suchlike) should use parse_iec_size().
+
+* man: move .link, .network and .netdev documentation into their own
+  man pages maybe called "systemd.link(5)", "systemd.network(5)" and
+  "systemd.netdev(5)" or so.
 
 * "busctl status" works only as root on dbus1, since we cannot read
   /proc/$PID/exe
@@ -50,14 +56,6 @@ Features:
   "systemctl status" without args to output this state along with a
   selection of other data, such as the uptime or so.
 
-* generalize ConditionXYZ= logic and make it available in networkd's
-  .network, .netdev, .network files, too. This is particularly useful
-  to match on containers with ConditionVirtualization to
-  conditionalize network setups for containers
-
-* doc: remove documentation for .include, drop-in snippets are the
-  better replacement.
-
 * Add a seccomp-based filter for socket() calls to limit services to
   specific address families (for example: AF_UNIX), inspired by
   Android's sandboxing
@@ -83,8 +81,11 @@ Features:
   desktop UIs such as gnome-shell to freeze apps that are not visible
   on screen, not unlike how job control works on the shell
 
-* machinectl bash completion is missing
-* busctl bash and zsh completions are outdated
+* completions:
+ - busctl zsh completion is outdated
+ - systemd-nspawn -Z/-L/-q is missing for zsh
+ - systemd-nspawn completion is missing for bash
+ - manager property enumeration was broken when systemd moved to /usr/lib/
 
 * cgroups:
   - implement system-wide DefaultCPUAccounting=1 switch (and similar for blockio, memory?)
@@ -218,8 +219,6 @@ Features:
 * when isolating, try to figure out a way how we implicitly can order
   all units we stop before the isolating unit...
 
-* add ConditionArchitecture= or so
-
 * teach ConditionKernelCommandLine= globs or regexes (in order to match foobar={no,0,off})
 
 * after all byte-wise realloc() is slow, even on glibc, so i guess we
@@ -251,11 +250,6 @@ Features:
 
 * timedate: have global on/off switches for auto-time (NTP), and auto-timezone that connman can subscribe to.
 
-* dev-setup.c: when running in a container, create a tiny stub udev
-  database with the systemd tag set for all network interfaces found,
-  so that libudev reports them as present, and systemd's .device units
-  will be activated.
-
 * merge unit_kill_common() and unit_kill_context()
 
 * introduce ExecCondition= in services
@@ -350,7 +344,6 @@ Features:
   - document in wiki how to map ical recurrence events to systemd timer unit calendar specifications
   - add a man page containing packaging guidelines and recommending usage of things like Documentation=, PrivateTmp=, PrivateNetwork= and ReadOnlyDirectories=/etc /usr.
   - document systemd-journal-flush.service properly
-  - man: remove .include documentation, and instead push people to use .d/*.conf
   - documentation: recommend to connect the timer units of a service to the service via Also= in [Install]
   - man: document the very specific env the shutdown drop-in tools live in
   - man: extend runlevel(8) to mention that runlevels suck, and are dead. Maybe add runlevel(7) with a note about that too
@@ -450,11 +443,9 @@ Features:
 
 * nspawn:
   - nspawn: consider changing users for -u with /usr/bin/getent, so that NSS resolving works correctly
-  - nspawn: implement personality changes a la linux32(8)
   - nspawn: --read-only is not applied recursively to submounts
-  - nspawn: make use of device cgroup controller by default
   - bind mount read-only the cgroup tree higher than nspawn
-  - nspawn: make it work for dwalsh and shared /usr containers -- tmpfs mounts as command line parameters, selinux exec context
+  - nspawn: make it work for dwalsh and shared /usr containers -- tmpfs mounts as command line parameters
   - refuses to boot containers without /etc/machine-id (OK?), and with empty /etc/machine-id (not OK).
   - support taking a btrfs snapshot at startup and dropping it afterwards
   - maybe: hookup nspawn and PrivateNetwork=yes with "ip netns"
@@ -538,6 +529,7 @@ Features:
   - move to LGPL
   - kill scsi_id
   - add trigger --subsystem-match=usb/usb_device device
+  - reimport udev db after MOVE events for devices without dev_t
 
 * when a service has the same env var set twice we actually store it twice and return that in systemctl show -p... We should only show the last setting
 
@@ -673,6 +665,7 @@ Features:
    - 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
 
 External: