chiark / gitweb /
logind: rework delay inhibition logic
[elogind.git] / TODO
diff --git a/TODO b/TODO
index c948d89803a70c954370f111400b81e12005dd28..ce0e6a7e0982ac10d4c0b9f6fa13e737939a4fa8 100644 (file)
--- a/TODO
+++ b/TODO
@@ -19,9 +19,29 @@ Fedora 19:
 * create /var/log/journal/
 
 Features:
-* re-enable "make check" for gtk-doc (broken for unknown reason)
 
-* logind: make PrepareForSuspend(false) an official api for notification of resumes
+* add configure switch for enabling/disabling efi stuff
+
+* introduce ExecCondition= in services
+
+* unify killing logic of service, socket, mount, swap units
+
+* logind: document new PrepareForSleep(false) semantics and UnlockSessions call in wiki
+
+* if we have systemd-analyze in C "systemctl dot" should move there too
+
+* fsck hookup for the ESP mount is missing
+
+* 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
+  that's sometimes kinda hard to parse for a human.
+
+* write man page for efi boot generator
+
+* maybe not install getty@tty1.service symlink in /etc but in /usr?
+
+* re-enable "make check" for gtk-doc (broken for unknown reason)
 
 * "systemctl disable" on a static unit prints no message and does
   nothing. "systemctl enable" does nothing, and gives a bad message
@@ -30,11 +50,12 @@ Features:
 * fstab: add new mount option x-systemd-after=/foobar/waldo to allow manual dependencies to other mount points
   https://bugzilla.redhat.com/show_bug.cgi?id=812826
 
-* add "loginctl unlock-sessions" as counterpart for "loginctl lock-sessions"
-
-* extend cgroup attr dbus calls to optionally make changes persistent, and retrieve current kernel values
-
-* support high-level cgroup setting syntax in systemctl. Example: "systemctl set-cgroup-attr MemoryLimit 5K"
+* cgroup attrs:
+  - don't filter out duplicate settings
+  - support high-level cgroup setting syntax in systemctl. Example: "systemctl set-cgroup-attr MemoryLimit 5K"
+  - support writte string mapping even for non-high-level settings
+  - add man page for systemctl commands
+  - make sure we work fine with multi-line strings
 
 * print a nicer explanation if people use variable/specifier expansion in ExecStart= for the first word
 
@@ -44,8 +65,6 @@ Features:
 
 * logind: optionally, ignore idle-hint logic for autosuspend, block suspend as long as a session is around
 
-* service: when killing a service with SIGKILL always kill all processes, even if for SIGTERM we only killed the main process
-
 * exec: when deinitializating a tty device fix the perms and group, too, not only when initializing. Set access mode/gid to 0620/tty.
 
 * DeviceAllow/DeviceDeny: disallow everything by default, but whitelist /dev/zero, /dev/null and friends
@@ -95,15 +114,15 @@ Features:
   mode, it will never touch the RTC if the no reliable time source is active or the
   user did not request anything like it.
 
-* When we begin with system shutdown all kind of suspend/hibernation should be prohibited until shutdown/reboot
-
 * When we update the kernel all kind of hibernation should be prohibited until shutdown/reboot
 
 * hwdb:
   - implement conditional properties (dmi matches)
   - hwdb --filter=ID_DRIVE_*
 
-* if booted in "quiet" mode, and an error happens, turn on status output again, so that the emergency mode isn't totally surprising
+* if booted in "quiet" mode, and an error happens, turn on status
+  output again, so that the emergency mode isn't totally
+  surprising. Also, terminate plymouth.
 
 * localectl: add listing support for X11 keymaps, by parsing /usr/share/X11/xkb/rules/xorg.lst
 
@@ -320,26 +339,10 @@ Features:
 
 * maybe allow services with ExecStop= set, but no ExecStart=?
 
-* efi: implement /forcefsck as uefi variables thus not requiring file system altering to trigger a file system check
-
-* efi: honor language efi variables for default language selection
-
-* efi: honor timezone efi variables for default timezone selection
-
-* efi: automatically mount EFI partition to /boot if no such entry exists in /etc/fstab and /boot is empty
-  gummiboot exports the EFI system partion (ESP) device:
-  /sys/firmware/efi/vars/LoaderDeviceIdentifier-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
-  Acpi(PNP0A03,0)/Pci(1F|2)/?/HD(Part1,Sig1FCBC57F-4BFC-4C2B-91A3-9C84FBCD9AF1)
-  '/' is the separator for the device path list
-  HD(Part1,Sig1FCBC57F-4BFC-4C2B-91A3-9C84FBCD9AF1) contains the GPT UUID of the ESP
-
-* read the bootloader performance data (raw TSC) in systemd-analyze
-  /sys/firmware/efi/vars/LoaderTicksExec-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
-  19066159288
-  /sys/firmware/efi/vars/LoaderTicksInit-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
-  17442940316
-  /sys/firmware/efi/vars/LoaderTicksStartMenu-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
-  (only set if the menu was active)
+* efi:
+  - honor language efi variables for default language selection (if there are any?)
+  - honor timezone efi variables for default timezone selection (if there are any?)
+  - introduce bootctl (backed by systemd-bootd) to control temporary and persistent default boot goal plus efi variables
 
 * change Requires=basic.target to RequisiteOverride=basic.target
 
@@ -362,8 +365,6 @@ Features:
 
 * pam: when leaving a session explicitly exclude the ReleaseSession() caller process from the killing spree
 
-* maybe introduce ~/.config/locale.conf and apply it within PAM
-
 * readahead: make use of EXT4_IOC_MOVE_EXT, as used by http://e4rat.sourceforge.net/
 
 * automount: implement expire:
@@ -383,8 +384,6 @@ Features:
 
 * ExecOnFailure=/usr/bin/foo
 
-* fedora: make sshd and pam_loginuid work in nspawn containers
-
 * fix utmp for console logins in containers
 
 * Add pretty name for seats in logind
@@ -398,10 +397,6 @@ Features:
   - kill scsi_id
   - add trigger --subsystem-match=usb/usb_device device
 
-* vconsole:
-  - implement setterm -store -foreground xxx --background zzz
-  - allow configuration of console width/height in vconsole.conf
-
 * cleanup syslog 'priority' vs. 'level' wording
 
 * dbus upstream still refers to dbus.target and shouldn't