chiark / gitweb /
machined: add a full bus object for images
[elogind.git] / TODO
diff --git a/TODO b/TODO
index dae2f36e14a81b75886f4b62afbfaa30def73f4e..c58f50350d1ebf23b5c31e16fb808534070f70bf 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,11 +1,3 @@
-Preparations for 218:
-
-* cgroup delegation issues
-
-* should networkd's [BridgePort] section really be called like that?
-
-* test-bus-kernel-bloom is borked
-
 Bugfixes:
 
 * Should systemctl status \* work on all unit types, not just .service?
 Bugfixes:
 
 * Should systemctl status \* work on all unit types, not just .service?
@@ -14,8 +6,6 @@ Bugfixes:
   automount points even when the original .automount file did not exist
   anymore. Only the .mount unit was still around.
 
   automount points even when the original .automount file did not exist
   anymore. Only the .mount unit was still around.
 
-* properly handle .mount unit state tracking when two mount points are stacked one on top of another on the exact same mount point.
-
 * ExecStart with unicode characters fails in strv_split_quoted:
 
           [Service]
 * ExecStart with unicode characters fails in strv_split_quoted:
 
           [Service]
@@ -30,8 +20,6 @@ External:
 
 * Fedora: add an rpmlint check that verifies that all unit files in the RPM are listed in %systemd_post macros.
 
 
 * Fedora: add an rpmlint check that verifies that all unit files in the RPM are listed in %systemd_post macros.
 
-* Fedora: post FPC ticket to move add %tmpfiles_create to the packaging guidelines
-
 * Fedora: move kernel image to /usr/lib/modules/, kernel-install will take care of populating /boot
 
 * Fedora: remove /etc/resolv.conf tmpfiles hack
 * Fedora: move kernel image to /usr/lib/modules/, kernel-install will take care of populating /boot
 
 * Fedora: remove /etc/resolv.conf tmpfiles hack
@@ -43,6 +31,37 @@ External:
 
 Features:
 
 
 Features:
 
+* Port various tools to make use of verbs.[ch], where applicable
+
+* Check all invocations of access() and consider turning them into laccess()
+
+* "machinectl run" that works like systemd-run, but allocates a pty in the container and attached the service to it
+
+* "machinectl start/enable/disable foo" as aliases for "systemctl start/enable/disable systemd-nspawn@foo.service"
+
+* "machinectl list-images" for showing a list of container trees collected from /var/lib/containers
+
+* "machinectl snapshot" to make a snapshot of a tree or container into /var/lib/containers
+
+* "machinectl rm" to remove a container tree from /var/lib/containers
+
+* "machinectl history"
+
+* "machinectl diff"
+
+* "machinectl status" should show 10 most recent log lines of both the host logs of the unit of the machine, plus the logs generated in the machine
+
+* add transparent btrfs pool in a loopback file in /var if btrfs operations (such as systemd-import pull-dck) are used and /var is not a btrfs file system
+
+* machined: open up certain commands to unprivileged clients via polkit
+
+* hostnamectl: show root image uuid
+
+* sysfs set api in libudev is not const
+
+* Find a solution for SMACK capabilities stuff:
+  http://lists.freedesktop.org/archives/systemd-devel/2014-December/026188.html
+
 * port libmount hookup to use API's own inotify interface, as soon as that is table in libmount
 
 * bash completion for busctl, to make it truly useful
 * port libmount hookup to use API's own inotify interface, as soon as that is table in libmount
 
 * bash completion for busctl, to make it truly useful
@@ -82,10 +101,6 @@ Features:
 
 * timedated should compensate on SetTime for the time spent in polkit
 
 
 * timedated should compensate on SetTime for the time spent in polkit
 
-* figure out what to do with libmount and utab?
-
-* We really should have a FOREACH macro to iterate through inotify events we read, similar to KDBUS_FOREACH_ITEM
-
 * figure out when we can use the coarse timers
 
 * sd-resolve: drop res_query wrapping, people should call via the bus to resolved instead
 * figure out when we can use the coarse timers
 
 * sd-resolve: drop res_query wrapping, people should call via the bus to resolved instead
@@ -136,7 +151,10 @@ Features:
 
 * systemctl: if some operation fails, show log output?
 
 
 * systemctl: if some operation fails, show log output?
 
-* systemctl edit: add commented help text to the end, like git commit
+* systemctl edit:
+- allow creation of units from scratch
+- use equvalent of cat() to insert existing config as a comment, prepended with #.
+  Upon editor exit, lines with one # are removed, lines with two # are left with one #, etc.
 
 * refcounting in sd-resolve is borked
 
 
 * refcounting in sd-resolve is borked
 
@@ -308,8 +326,8 @@ Features:
   ReadOnlyDirectories=... for whitelisting files for a service.
 
 * sd-bus:
   ReadOnlyDirectories=... for whitelisting files for a service.
 
 * sd-bus:
+  - kdbus: process fd=-1 for incoming msgs
   - make dsrt happy, and change userspace header for kdbus to yyyyuta{tv}v
   - make dsrt happy, and change userspace header for kdbus to yyyyuta{tv}v
-  - kdbus: remove NameOwnerChanged kernel messages for monitors
   - kdbus: PID/TID goes missing for method calls from outside the PID namespace?
   - kdbus: the kernel should not allow messages to be delivered that have a reply serial != 0, reply-expect unset, but no appropriate window
   - kdbus: timestamps on kernel's NameOwnerChanged messages?
   - kdbus: PID/TID goes missing for method calls from outside the PID namespace?
   - kdbus: the kernel should not allow messages to be delivered that have a reply serial != 0, reply-expect unset, but no appropriate window
   - kdbus: timestamps on kernel's NameOwnerChanged messages?
@@ -318,7 +336,7 @@ Features:
     without the active policy and should get a Wants=org.freedesktop.resolve1.busname to
     pull-in the policy.
   - port to sd-resolve for connecting to TCP dbus servers
     without the active policy and should get a Wants=org.freedesktop.resolve1.busname to
     pull-in the policy.
   - port to sd-resolve for connecting to TCP dbus servers
-  - kdbus: maybe add controlling tty and ppid metadata fields
+  - kdbus: maybe add controlling tty metadata fields
   - see if we can introduce a new sd_bus_get_owner_machine_id() call to retrieve the machine ID of the machine of the bus itself
   - when kdbus does not take our message without memfds, try again with memfds
   - introduce sd_bus_emit_object_added()/sd_bus_emit_object_removed() that automatically includes the build-in interfaces in the list
   - see if we can introduce a new sd_bus_get_owner_machine_id() call to retrieve the machine ID of the machine of the bus itself
   - when kdbus does not take our message without memfds, try again with memfds
   - introduce sd_bus_emit_object_added()/sd_bus_emit_object_removed() that automatically includes the build-in interfaces in the list
@@ -570,7 +588,6 @@ Features:
 * nspawn:
   - bind mount read-only the cgroup tree higher than nspawn
   - refuses to boot containers without /etc/machine-id (OK?), and with empty /etc/machine-id (not OK).
 * nspawn:
   - bind mount read-only the cgroup tree higher than nspawn
   - 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
   - introduce machines.target to order after all nspawn instances
   - systemd-nspawn@.service should fail if some nspawn arg is invalid, with Type=notify
   - PID 1 doesn't apply nspawns devices cgroup policy
   - introduce machines.target to order after all nspawn instances
   - systemd-nspawn@.service should fail if some nspawn arg is invalid, with Type=notify
   - PID 1 doesn't apply nspawns devices cgroup policy