X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=TODO;h=cfd42ce745b1755d33839fda5f8d853ae41dad89;hb=78edb35ab4f4227485cb9ec816b43c37e0d5e62a;hp=10a2b8c8c0d158efe172bbd175411968a0c58386;hpb=b5c03638d48c07aa0eaf13b5f54000c7133e1883;p=elogind.git diff --git a/TODO b/TODO index 10a2b8c8c..cfd42ce74 100644 --- a/TODO +++ b/TODO @@ -11,15 +11,8 @@ Bugfixes: * properly handle .mount unit state tracking when two mount points are stacked one on top of another on the exact same mount point. -* add 'set -e' to scripts in test/ -* make test in test/ work with separate output dir - -* suppress log output on shutdown when "quiet" is used - Fedora 19: -* make anaconda write timeout=0 for encrypted devices - * external: maybe it is time to patch procps so that "ps" links to libsystemd-logind to print a pretty service name, seat name, session name in its output. Currently it only shows cgroup membership, but @@ -28,21 +21,70 @@ Fedora 19: * cgroup attrs: - update dbus interface docs in wiki -* journal is not closed properly at shutdown when run in a container? - * localed: - - localectl: add listing support for X11 keymaps, by parsing /usr/share/X11/xkb/rules/xorg.lst - localectl: support new converted x11→console keymaps -* logind: Class property should probably know "background" or so as value for cron jobs, and the inhibition checks should filter those out too. +Features: + +* nss-myhostname: investigate whether there's any point in also + resolving localhost6, localhost.localdomain, ip6-localhost or any of + the other names often seen in /etc/hosts -* timer logic is confused by units which are skipped due to failing condition - http://lists.freedesktop.org/archives/systemd-devel/2013-February/008816.html +* see if we can fix https://bugs.freedesktop.org/show_bug.cgi?id=63672 + without dropping the location cache entirely. -* timer logic is also confused if a service it triggers hasn't finished when the next timer elapses: - http://lists.freedesktop.org/archives/systemd-devel/2013-February/009021.html +* dbus: when a unit failed to load (i.e. is in UNIT_ERROR state), we + should be able to safely try another attempt when the bus call LoadUnit() is invoked. -Features: +* for instanced unit drop-ins we should look in foo@bar.service.d/ as well as foo@.service.d/ + +* if pam_systemd is invoked by su from a process that is outside of a + any session we should probably just become a NOP, since that's + usually not a real user session but just some system code that just + needs setuid(). + +* add a pam module that passes the hdd passphrase into the PAM stack and then expires it, for usage by gdm auto-login. + +* add a pam module that on password changes updates any LUKS slot where the password matches + +* maybe add a generator that looks for "systemd.run=" on the kernel cmdline for container usercases... + +* timedatctl, localectl: possibly make some commands work without the daemon, for chroot situations... + +* logind: add Suspend() bus calls which take timestamps to fix double suspend issues when somebody hits suspend and closes laptop quickly. + +* we need dynamic units + +* add s.th. like "systemctl set-log-level debug" + +* cgtop: make cgtop useful in a container + +* make sure cg_pid_get_path() works properly for co-mounted controllers + +* nspawn: ensure syntax of --uuid= argument is correct + +* explicitly disallow changing the cgroup path of units in the + name=systemd hierarchy, unless it is outside of /system + +* test/: + - add 'set -e' to scripts in test/ + - make stuff in test/ work with separate output dir + - remove all the duplicated code in test/ + +* suppress log output on shutdown when "quiet" is used + +* systemctl delete x.snapshot leaves no trace in logs (at least at default level). + +* make the coredump collector tool move itself into the user's cgroup + so that the coredump is properly written to the user's own journal + file. + +* move /usr/lib/modules/$(uname -r)/modules.devname parsing from udevd to + kmod static-nodes + call kmod as an early service, and drop CAP_MKNOD from udevd.service + +* systemd-delta needs to be made aware of *.d/*.conf drop-in files for + units. * seems that when we follow symlinks to units we prefer the symlink destination path over /etc and /usr. We shouldn't do that. Instead @@ -66,8 +108,6 @@ Features: * teach ConditionKernelCommandLine= globs or regexes (in order to match foobar={no,0,off}) -* hostnamectl: when a passed pretty hostname also qualifies as low-level name, then only set low-level name, and unset the pretty hostname - * we should log capabilities too * Support SO_REUSEPORT with socket activation: @@ -98,13 +138,13 @@ Features: * rework specifier logic so that we can distuingish OOM errors from other errors -* systemd-inhibit: refuse taking delay locks +* systemd-inhibit: make taking delay locks useful: support sending SIGINT or SIGTERM on PrepareForSleep() * journal-or-kmsg is currently broken? See reverted commit 4a01181e460686d8b4a543b1dfa7f77c9e3c5ab8. * remove any syslog support from log.c -- we probably can't do this before split-off udev is gone for good -* fedora: connect the timer units of a service to the service via Also= in [Install], and maybe introduce timers.target +* fedora: connect the timer units of a service to the service via Also= in [Install] * fedora: F20: go timer units all the way, leave cron.daily for cron @@ -120,8 +160,6 @@ Features: * man: add a link to socket activation blog from systemd.socket(5) -* systemctl status: show drop-in snippets for service files in addition to service file path themesevles. - * man: add more examples to man pages * man: maybe sort directives in man pages, and take sections from --help and apply them to man too @@ -141,8 +179,6 @@ Features: name for the entries to de_DE if they aren't explicitly suffixed individually. -* figure out what we do about hostnames/fqdn in hostnamectl/hostnamed - * use "log level" rather than "log priority" everywhere * ensure sd_journal_seek_monotonic actually works properly. @@ -190,6 +226,7 @@ Features: - logind: add equivalent to sd_pid_get_owner_uid() to the D-Bus API - pam: when leaving a session explicitly exclude the ReleaseSession() caller process from the killing spree - logind: GetSessionByPID() should accept 0 as PID value + - we should probably handle SIGTERM/SIGINT to not leave dot files around, just in case * exec: when deinitializating a tty device fix the perms and group, too, not only when initializing. Set access mode/gid to 0620/tty. @@ -236,6 +273,8 @@ Features: - journal: store euid in journal if it differs from uid - journal: sanely deal with entries which are larger than the individual file size, but where the components would fit - journalctl: make journalctl smarter, and actually check groups that have access to /var/log/journal before printing message about recomming group membership for journal access + - Replace utmp, wtmp, btmp, and lastlog completely with journal + - Port upower to use the journal for historical power information used in future calculations * document: - document unit_name_mangle() @@ -352,12 +391,10 @@ Features: interfaces to the container - nspawn: maybe add a way to drop additional caps, in addition to add additional caps - nspawn: maybe explicitly reset loginuid? - - nspawn: move all containers to name=systemd:/containers/, and introduce externally visible names for containers - nspawn: make it work for dwalsh and shared /usr containers -- tmpfs mounts as command line parameters, selinux exec context * cryptsetup: - cryptsetup-generator: warn if the password files are world-readable - - cryptsetup-generator: add RequiresMountsFor= to cryptseup service files referencing a file, similar for devices - cryptsetup-generator: allow specification of passwords in crypttab itself - move cryptsetup key caching into kernel keyctl? https://bugs.freedesktop.org/show_bug.cgi?id=54982 @@ -484,12 +521,8 @@ Features: * default unix qlen is too small (10). bump sysctl? add sockopt? -* figure out whether we should leave dbus around during shutdown - * dbus: in fedora, make /var/lib/dbus/machine-id a symlink to /etc/machine-id -* dbus: move dbus to early boot - * save coredump in Windows/Mozilla minidump format * support crash reporting operation modes (https://live.gnome.org/GnomeOS/Design/Whiteboards/ProblemReporting) @@ -633,6 +666,8 @@ External: - plot per-process IO utilization - group processes based on service association (cgroups) - document initcall_debug + - put bootcharts in the journal + - kernel cmdline "bootchart" option for simplicity? Regularly: