blob: c2eb557f507ec82b7898f36db495fb8f7c81dcf5 [file] [log] [blame]
Lennart Poettering71092d72011-07-29 05:01:47 +02001Bugfixes:
Kay Sievers7c66aeb2012-04-17 02:55:39 +02002* check systemd-tmpfiles for selinux context hookup for mknod(), symlink() and similar
3
Lennart Poetteringc904f642011-02-25 01:47:31 +01004* swap units that are activated by one name but shown in the kernel under another are semi-broken
5
Lennart Poettering05677bb2011-04-20 00:51:23 +02006* make anaconda write timeout=0 for encrypted devices
Lennart Poettering73090dc2011-04-19 06:06:41 +02007
Kay Sieversf9576322011-09-21 19:33:52 +02008* Dangling symlinks of .automount unit files in .wants/ directories, set up
9 automount points even when the original .automount file did not exist
10 anymore. Only the .mount unit was still around.
11
Lennart Poettering9a366072011-10-07 22:00:23 +020012* make polkit checks async
13
Lennart Poetteringa40593a2011-11-08 19:12:29 +010014* properly handle .mount unit state tracking when two mount points are stacked one on top of another on the exact same mount point.
Kay Sievers20ffc4c2012-04-17 18:47:49 +020015
Lennart Poettering4ce84982012-09-15 06:57:15 +020016F18:
17
Lennart Poetteringc3090672012-09-18 01:55:49 +020018* Retest multi-seat
19
Lennart Poettering71092d72011-07-29 05:01:47 +020020Features:
Kay Sievers772374a2013-01-06 19:14:56 +010021* udev: remove all (misguided from day 1) userspace firmware_class handling
Lennart Poettering9b413662012-12-31 21:24:05 +010022
Lennart Poettering95b4be12012-12-23 22:38:21 +010023* logind: optionally, ignore idle-hint logic for autosuspend, block suspend as long as a session is around
24
Lennart Poettering15abdb92012-12-23 11:56:22 +010025* service: when killing a service with SIGKILL always kill all processes, even if for SIGTERM we only killed the main process
Lennart Poettering2d0b0522012-12-22 22:17:37 +010026
Lennart Poettering499519c2012-12-19 20:50:42 +010027* exec: when deinitializating a tty device fix the perms and group, too, not only when initializing. Set access mode/gid to 0620/tty.
28
Lennart Poettering490b7e42012-12-19 15:27:27 +010029* DeviceAllow/DeviceDeny: disallow everything by default, but whitelist /dev/zero, /dev/null and friends
30
31* service: watchdog logic: for testing purposes allow ping, but do not require pong
32
Lennart Poettering59659842012-11-22 20:16:15 +010033* journald: when dropping msgs due to ratelimit make sure to write
34 "dropped %u messages" not only when we are about to print the next
35 message that works, but alraedy after a short tiemout
36
Lennart Poetteringe4181482012-11-20 21:33:49 +010037* journald: also get thread ID from client, plus thread name
38
Lennart Poetteringe9fd44b2012-11-20 19:13:54 +010039* check if we can make journalctl by default use --follow mode inside of less if called without args?
40
Lennart Poettering15abdb92012-12-23 11:56:22 +010041* Add a verbose mode to "systemctl start" and friends that explains what is being done or not done
Lennart Poetteringe9fd44b2012-11-20 19:13:54 +010042
Lennart Poettering30407282012-11-20 19:11:55 +010043* journal is not closed properly at shutdown when run in a container?
44
Lennart Poettering15abdb92012-12-23 11:56:22 +010045* journal: when waiting for journal additions in the client always sleep at least 1s or so, in order to minimize wakeups
Lennart Poettering8ed20652012-11-18 23:32:09 +010046
Lennart Poetteringe6c6e7a2012-11-16 01:36:29 +010047* When shutdown.target is queued begin with an asynchronous sync()?
48
Lennart Poetteringe673ad02012-11-14 22:20:51 +010049* add API to close/reopen/get fd for journal client fd in libsystemd-journal.
50
51* maybe add API to send pairs of iovecs via sd_journal_send
52
53* fallback to /dev/log based logging in libsystemd-journal, if we can't log natively?
54
55* declare the local journal protocol stable in the wiki interface chart
56
Lennart Poettering7361c3b2012-11-14 22:14:17 +010057* journal: reuse XZ context
Lennart Poettering8b04b922012-11-21 00:33:37 +010058
Lennart Poettering7361c3b2012-11-14 22:14:17 +010059* sd-journal: speed up sd_journal_get_data() with transparent hash table in bg
60
Lennart Poetteringe673ad02012-11-14 22:20:51 +010061* introduce ntp.service (or suchlike) as symlink that is used to arbitrate between various NTP implementations
62
Kay Sieversd2e83c22012-11-04 15:47:08 +010063* timer units should get the ability to trigger when:
64 - CLOCK_REALTIME makes jumps (TFD_TIMER_CANCEL_ON_SET)
65 - DST changes
66
67* update the kernel's TZ (sys_tz) when DST changes
68
69* sync down the system time to the RTC when:
Kay Sieversf6113d42012-11-07 13:59:50 +010070 - CLOCK_REALTIME makes jumps (the user explicitely requested a time set)
71 - DST/timezone changes && ntp is active && RTC-in-localtime (never do it without ntp)
Kay Sieversd2e83c22012-11-04 15:47:08 +010072 This takes care of syncing ntpdate updates to the RTC, and DST updates for localtime
Kay Sievers7a43e912012-11-05 02:17:23 +010073 mode, it will never touch the RTC if the no reliable time source is active or the
Kay Sieversd2e83c22012-11-04 15:47:08 +010074 user did not request anything like it.
Lennart Poetteringc55b1b52012-10-31 00:04:59 +010075
Lennart Poettering822e5dd2012-10-30 18:29:35 +010076* When we begin with system shutdown all kind of suspend/hibernation should be prohibited until shutdown/reboot
77
78* When we update the kernel all kind of hibernation should be prohibited until shutdown/reboot
79
Kay Sievers6c1703c2012-10-29 20:54:19 +010080* hwdb:
81 - implement conditional properties (dmi matches)
82 - hwdb --filter=ID_DRIVE_*
83 - find out what to do for blockdevs and skipping scsi modaliases
84 - move writing code to src/libudev/libudev-hwdb-private.c
Lennart Poettering08f95882012-10-03 11:37:06 -040085
Lennart Poettering9ec82de2012-10-28 00:49:49 +020086* if booted in "quiet" mode, and an error happens, turn on status output again, so that the emergency mode isn't totally surprising
87
Lennart Poetteringe707c492012-10-26 03:51:10 +020088* localectl: add listing support for X11 keymaps, by parsing /usr/share/X11/xkb/rules/xorg.lst
89
90* libunwind support for coredump pattern hook, and includes this in
91 the message for coredumps. After all, libunwind is now capable to
92 unwind coredumps since a few weeks ago. This probably requires that
93 we have nice support for multi-line messages on display in logs-show.c.
94
Lennart Poetteringe707c492012-10-26 03:51:10 +020095* figure out relation of --all and --full in the various tools
96
97* journal: when writing journal auto-rotate if time jumps backwards
98
Lennart Poettering220369c2012-10-26 01:06:50 +020099* introduce new "journal" group in place of adm? introduce groups for the various mini daemons?
100
101* journal: add a setgid "adm" utility to invoke from libsystemd-journal, which passes fds via STDOUT and does PK access
102
Zbigniew Jędrzejewski-Szmekf2d433e2012-10-28 00:43:44 +0200103* journactl: support negative filtering, i.e. FOOBAR!="waldo",
104 and !FOOBAR for events without FOOBAR.
Lennart Poetteringa19554e2012-10-24 01:05:40 +0200105
Zbigniew Jędrzejewski-Szmekf2d433e2012-10-28 00:43:44 +0200106* print nice message from systemctl --failed if there are no entries shown, and hook that into ExecStartPre of rescue.service/emergency.service
Lennart Poetteringa19554e2012-10-24 01:05:40 +0200107
108* add libsystemd-password or so to query passwords during boot using the password agent logic
109
110* journal: when rotating, copy over old acls/access mode
111
112* journal: document why we do not give ownership to journal files to the user that created them but use FS ACLs for that
113
114* journal: send out marker messages every now and then, and immediately sync with fdatasync() afterwards, in order to have hourly guaranteed syncs.
115
116* journal: when we haven't written anything in a while, sync to disk and mark file as offline, in order to be more often than not in a clean state
117
118* journal-send.c, log.c: when the log socket is clogged, and we drop, count this and write a message about this when it gets unclogged again.
119
Lennart Poettering1cb88f22012-10-23 17:13:01 +0200120* If we show an error about a unit (such as not showing up) and it has no Description string, then show a description string generated form the reverse of unit_name_mangle().
121
122* fedup: add --unit to systemctl switch-root somehow
123* fedup: don't delete initrd on switch-root
124* fedup: generator
Lennart Poettering603cd8f2012-10-23 01:53:23 +0200125
Lennart Poettering06bf4612012-10-22 23:24:09 +0200126* journal: find a way to allow dropping history early, based on priority, other rules
127
Lennart Poettering936d6fc2012-10-20 17:00:29 +0200128* journal: When used on NFS, check payload hashes
129
130* journal: When used on NFS make sure wake up sd_journal_wait() every 2s, to handle missing inotify
131
Lennart Poettering936d6fc2012-10-20 17:00:29 +0200132* document that people can use file system ACLs to manage access to journal files, with example
133
Lennart Poettering6d0274f2012-10-17 02:50:09 +0200134* timedated: export boolean that clarifies whether NTP is even available
135
136* timedated: refuse time changes when NTP is on
137
Lennart Poetteringa7a3f282012-10-15 16:28:04 +0200138* clean up date formatting and parsing so that all absolute/relative timestamps we format can also be parsed
139
Lennart Poettering9a526a02012-10-10 22:23:06 +0200140* document unit_name_mangle()
141
Lennart Poetteringa8985ba2012-10-08 20:07:50 +0200142* add new command to systemctl: "systemctl system-reexec" which reexecs as many daemons as virtually possible
143
Lennart Poettering9b279102012-10-04 14:10:02 -0400144* introduce generic AUGMENT_PID=, AUGMENT_DEVICE= fields
145
Lennart Poetteringb03bfa22012-10-04 08:19:42 -0400146* deal with sendmail/postfix exclusivity
147
Lennart Poettering935fb722012-10-17 21:51:04 +0200148* systemctl enable: improve the success messages (i.e. more human readable, less shell-like)
Lennart Poetteringb03bfa22012-10-04 08:19:42 -0400149
150* systemctl enable: fail if target to alias into doesn't exist? maybe show how many units are enabled afterwards?
151
Lennart Poettering935fb722012-10-17 21:51:04 +0200152* on shutdown: move utmp, wall, audit logic all into PID 1 itself, get rid of systemd-update-utmp-runlevel
Lennart Poettering08f95882012-10-03 11:37:06 -0400153
Kay Sievers7d8197d2012-10-02 19:09:09 +0200154* add "provisioning" instructions to setup an empty /etc + /var
155 - used to setup a new container from a shared /usr
156 - superset of tmpfiles model
157 - instructions shipped by packages and stored in /usr/lib/
158 - compose /etc/passwd and /etc/group, copy files
159 - able to create uid + gid used by packages, for file ownership
160
Kay Sievers9ee58bd2012-10-02 18:18:41 +0200161* make repeated alt-ctrl-del presses printing a dump, or even force a reboot without
162 waiting for the timeout
Lennart Poetteringdcfc4b22012-08-03 21:49:06 +0200163
Lennart Poettering71ef24d2012-10-02 13:11:26 -0400164* high level net_prio setting in execution context
165
166* Introduce journalctl -b <nr> to show journal messages of a previous boot
167
Lennart Poettering71ef24d2012-10-02 13:11:26 -0400168* hostnamed: before returning information from /etc/machine-info.conf check the modification data and reread. Similar for localed, ...
169
Lennart Poettering1b898842012-09-27 17:18:13 +0200170* currently x-systemd.timeout is lost in the initrd, since crypttab is copied into dracut, but fstab isn't
171
Lennart Poettering1920e372012-09-24 22:46:22 +0200172* WorkingDirectory: support env var replacements like in ExecStart= so that people can use $HOME
173
Lennart Poettering15abdb92012-12-23 11:56:22 +0100174* refuse boot if /etc/machine-id is not useful (or set taint?)
Lennart Poettering1920e372012-09-24 22:46:22 +0200175
176* nspawn: consider changing users for -u with su, so that NSS resolving works correctly
177
178* nspawn: implement personality changes a la linux32(8)
179
Lennart Poetteringa07fdfa2012-09-24 11:35:51 +0200180* cryptsetup-generator: warn if the password files are world-readable
181
182* cryptsetup-generator: add RequiresMountsFor= to cryptseup service files referencing a file, similar for devices
183
184* cryptsetup-generator: allow specification of passwords in crypttab itself
185
Lennart Poetteringf8019682012-09-21 20:52:23 +0200186* document that deps in [Unit] sections ignore Alias= fileds in
187 [Install] units of other units, unless those units are disabled
188
Lennart Poettering409133b2012-09-21 11:57:48 +0200189* systemctl: when powering down/suspending check for inhibitors, and warn.
190
Lennart Poettering41f91722012-09-18 11:27:56 +0200191* instantiated [Install] for target units
192 https://bugs.freedesktop.org/show_bug.cgi?id=54377
Lennart Poettering178cc772012-09-17 23:59:26 +0200193
Lennart Poetteringde34a422012-09-17 13:24:35 +0200194* move debug shell to tty6 and make sure this doesn't break the gettys on tty6
195
Lennart Poettering98a77df2012-09-17 12:39:16 +0200196* move cryptsetup key caching into kernel keyctl?
Lennart Poettering41f91722012-09-18 11:27:56 +0200197 https://bugs.freedesktop.org/show_bug.cgi?id=54982
Lennart Poettering98a77df2012-09-17 12:39:16 +0200198
Lennart Poettering424a19f2012-09-14 20:02:52 +0200199* hw watchdog: optionally try to use the preset watchdog timeout instead of always overriding it
Lennart Poettering41f91722012-09-18 11:27:56 +0200200 https://bugs.freedesktop.org/show_bug.cgi?id=54712
Lennart Poettering424a19f2012-09-14 20:02:52 +0200201
202* after deserializing sockets in socket.c we should reapply sockopts and things
203
Lennart Poetteringa1cccad2012-09-13 17:11:10 +0200204* make timer units go away after they elapsed
205
Lennart Poettering85568792012-09-12 04:46:38 +0200206* http://lists.freedesktop.org/archives/systemd-devel/2012-September/006502.html
Zbigniew Jędrzejewski-Szmekd05c5562013-01-06 13:52:38 -0500207 (network and remote-fs on shutdown)
Lennart Poettering85568792012-09-12 04:46:38 +0200208
Lennart Poettering85568792012-09-12 04:46:38 +0200209* come up with a nice way to write queue/read_ahead_kb for a block device without interfering with readahead
210
211* journald: add kernel cmdline option to disable ratelimiting for debug purposes
212
Lennart Poettering4a308472012-09-11 01:45:27 +0200213* move PID 1 segfaults to /var/lib/systemd/coredump?
214
Lennart Poetteringb5b46d52012-09-11 01:11:32 +0200215* Document word splitting syntax for ExecStart= and friends
216
Lennart Poettering5e8b2882012-09-10 22:45:20 +0200217* create /sbin/init symlinks from the build system
218
Lennart Poetteringd87be9b2012-09-05 16:23:41 -0700219* Query Paul Moore about relabelling socket fds while they are open
220
Lennart Poettering438bacd2012-09-04 13:39:18 -0700221* move keymaps to /usr/lib/... rather than /usr/lib/udev/...
222
Lennart Poettering88f89a92012-09-03 18:58:18 -0700223* journald: check whether it is OK if the client can still modify delivered journal entries
224
Lennart Poetteringcb7ed9d2012-09-05 23:39:55 -0700225* journal live copy, based on libneon (client) and libmicrohttpd
Lennart Poettering88f89a92012-09-03 18:58:18 -0700226
Lennart Poettering88f89a92012-09-03 18:58:18 -0700227* system-wide seccomp filter
228
Lennart Poettering88f89a92012-09-03 18:58:18 -0700229* system.conf should have controls for cgroups
230
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100231* bind mount read-only the cgroup tree higher than nspawn
Lennart Poettering88f89a92012-09-03 18:58:18 -0700232
Lennart Poettering38a60d72012-08-23 02:46:22 +0200233* allow writing multiple conditions in unit files on one line
234
Lennart Poetteringd8b78262012-08-21 17:38:29 +0200235* explore multiple service instances per listening socket idea
236
237* testing tool for socket activation: some binary that listens on a socket and passes it on using the usual socket activation protocol to some server.
238
Lennart Poettering7560fff2012-08-13 20:31:10 +0200239* shutdown: don't read-only mount anything when running in container
240
Lennart Poettering5a7e9592012-08-13 16:27:17 +0200241* nspawn: --read-only is not applied recursively to submounts
242
Lennart Poettering68f16002012-08-13 15:39:25 +0200243* MountFlags=shared acts as MountFlags=slave right now.
244
Lennart Poettering5a7e9592012-08-13 16:27:17 +0200245* ReadOnlyDirectories= is not applied recursively to submounts
246
Lennart Poettering68f16002012-08-13 15:39:25 +0200247* drop PID 1 reloading, only do reexecing (difficult: Reload()
248 currently is properly synchronous, Reexec() is weird, because we
249 can't delay the response properly until we are back, so instead of
250 being properly synchronous we just keep open the fd and close it
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100251 when done. That means clients don't get a successful method reply,
Lennart Poettering68f16002012-08-13 15:39:25 +0200252 but much rather a disconnect on success.
Lennart Poettering0790b9f2012-08-09 12:52:49 +0200253
254* document that service reload may be implemented as service reexec
255
Lennart Poettering5aea9322012-08-08 19:19:45 +0200256* remember which condition failed for services, not just the fact that something failed
257
Lennart Poettering918943c2012-08-08 19:09:59 +0200258* use opterr = 0 for all getopt tools
259
Lennart Poetteringfd4d89b2012-08-08 18:10:35 +0200260* properly handle loop back mounts via fstab, especially regards to fsck/passno
261
Lennart Poettering8230e262012-08-06 16:35:44 +0200262* allow services with no ExecStart= but with an ExecStop=
263
Lennart Poetteringdcfc4b22012-08-03 21:49:06 +0200264* add proper journal support to "systemctl --user status ..."
265
266* add _SYSTEMD_USER_UNIT= field to journal entries
267
Lennart Poettering4d9909c2012-07-31 14:35:42 +0200268* dracut-shutdown needs to be ordered before unmounting /boot
269
Lennart Poettering47ae7202012-07-27 12:21:39 +0200270* initialize the hostname from the fs label of /, if /etc/hostname does not exist?
271
Kay Sievers88a6c582012-07-25 11:40:14 +0200272* rename "userspace" to "core-os"
Lennart Poettering8351cea2012-07-17 04:17:53 +0200273
Lennart Poettering6a735362012-07-20 16:55:34 +0200274* systemctl: "Journal has been rotated since unit was started." message is misleading
275
Lennart Poettering6b78f9b2012-07-18 01:46:52 +0200276* syscall filter: add knowledge about compat syscalls
277
Lennart Poettering9f8d2982012-07-19 02:03:22 +0200278* syscall filter: don't enforce no new privs?
279
280* syscall filter: option to return EPERM rather than SIGSYS?
281
Lennart Poettering68f16002012-08-13 15:39:25 +0200282* syscall filter: port to libseccomp
283
Lennart Poetteringb7def682012-07-13 13:41:01 +0200284* logind: wakelock/opportunistic suspend support
285
Lennart Poetteringc66d36e2012-07-10 16:46:15 +0200286* systemd-analyze post-boot is broken for initrd
287
David Straussc649f722012-11-23 03:51:41 -0600288* systemd-analyze: data collection tools should be lightweight (few dependencies); data analysis tools can be heavyweight
289
Lennart Poetteringc66d36e2012-07-10 16:46:15 +0200290* man: clarify that time-sync.target is not only sysv compat but also useful otherwise. Same for similar targets
291
Lennart Poetteringbe0aa782012-07-10 00:32:22 +0200292* .device aliases need to be implemented with the "following" logic, probably.
293
Lennart Poettering461b1822012-07-09 17:30:22 +0200294* refuse taking lower-case variable names in sd_journal_send() and friends.
295
Lennart Poettering99469962012-07-03 16:09:36 +0200296* load-fragment: when loading a unit file via a chain of symlinks
297 verify that it isn't masked via any of the names traversed.
298
Lennart Poetteringd1970642012-07-03 02:01:56 +0200299* journald: we currently rotate only after MaxUse+MaxFilesize has been reached.
300
Lennart Poetteringb4efdf92012-06-29 16:14:01 +0200301* Document:
302 - PID 1 D-Bus API
Lennart Poetteringb4efdf92012-06-29 16:14:01 +0200303
Lennart Poettering3471bed2012-06-27 22:38:35 +0200304* introduce Type=pid-file
305
Lennart Poetteringeeb87512012-06-27 15:35:05 +0200306* maybe allow services with ExecStop= set, but no ExecStart=?
307
Lennart Poetteringa32f2242012-06-27 00:37:36 +0200308* efi: implement /forcefsck as uefi variables thus not requiring file system altering to trigger a file system check
309
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100310* efi: honor language efi variables for default language selection
Lennart Poetteringa32f2242012-06-27 00:37:36 +0200311
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100312* efi: honor timezone efi variables for default timezone selection
Lennart Poetteringa32f2242012-06-27 00:37:36 +0200313
Kay Sievers347e1b62012-07-11 03:32:28 +0200314* efi: automatically mount EFI partition to /boot if no such entry exists in /etc/fstab and /boot is empty
315 gummiboot exports the EFI system partion (ESP) device:
316 /sys/firmware/efi/vars/LoaderDeviceIdentifier-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
317 Acpi(PNP0A03,0)/Pci(1F|2)/?/HD(Part1,Sig1FCBC57F-4BFC-4C2B-91A3-9C84FBCD9AF1)
318 '/' is the separator for the device path list
319 HD(Part1,Sig1FCBC57F-4BFC-4C2B-91A3-9C84FBCD9AF1) contains the GPT UUID of the ESP
320
321* read the bootloader performance data (raw TSC) in systemd-analyze
322 /sys/firmware/efi/vars/LoaderTicksExec-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
323 19066159288
324 /sys/firmware/efi/vars/LoaderTicksInit-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
325 17442940316
326 /sys/firmware/efi/vars/LoaderTicksStartMenu-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
327 (only set if the menu was active)
Lennart Poettering166503d2012-07-10 19:44:19 +0200328
Lennart Poettering59cea262012-07-01 18:47:40 +0200329* change Requires=basic.target to RequisiteOverride=basic.target
Lennart Poettering35eb6b12012-06-25 20:16:15 +0200330
Lennart Poettering94734142012-06-22 10:27:05 +0200331* support rd.luks.allow-discards= kernel cmdline params in cryptsetup generator
Lennart Poetteringf1a8e222012-06-21 13:48:01 +0200332
Zbigniew Jędrzejewski-Szmekd05c5562013-01-06 13:52:38 -0500333* nspawn: make use of device cgroup controller by default
Lennart Poettering069cfc82012-05-30 15:01:51 +0200334
Lennart Poettering7b63bde2012-05-23 03:51:55 +0200335* drop accountsservice's StandardOutput=syslog and Type=dbus fields
336
Lennart Poettering5b40d332012-05-21 17:55:54 +0200337* when breaking cycles drop sysv services first, then services from /run, then from /etc, then from /usr
338
Lennart Poetteringf7f21d32012-05-21 17:22:36 +0200339* readahead: when bumping /sys readahead variable save mtime and compare later to detect changes
340
Lennart Poettering27b54822012-05-16 03:23:28 +0200341* (attempt to) make Debianites happy:
342 - implement .d/ auto includes for unit files
343 - add syntax to reset ExecStart= lists (and similar)
344
Lennart Poetteringb86fa932012-05-21 15:28:07 +0200345* move passno parsing to fstab generator
346
Kay Sieversa26336d2012-05-04 19:06:07 +0200347* improve !/proc/*/loginuid situation: make /proc/*/loginuid less dependent on CONFIG_AUDIT,
348 or use the users cgroup information when /proc/*/loginuid is not available.
Lennart Poetteringe85647f2012-05-03 02:25:49 +0200349
Lennart Poetteringeecd1362012-05-05 00:34:48 +0200350* pam_systemd: try to get old session id from cgroup, if audit sessionid cannot be determined
351
Lennart Poettering14038c22012-05-07 22:20:08 +0200352* pam: when leaving a session explicitly exclude the ReleaseSession() caller process from the killing spree
353
Lennart Poettering465349c2012-05-07 17:16:50 +0200354* maybe introduce ~/.config/locale.conf and apply it within PAM
355
356* readahead: make use of EXT4_IOC_MOVE_EXT, as used by http://e4rat.sourceforge.net/
357
358* automount: implement expire
359
Lennart Poettering06dab8e2012-05-03 22:53:25 +0200360* services which create their own subcgroups break cgroup-empty notification (needs to be fixed in the kernel)
361
Lennart Poettering7e2668c2012-05-03 14:42:49 +0200362* don't delete /tmp/systemd-namespace-* before a process is gone down
363
Lennart Poetteringe85647f2012-05-03 02:25:49 +0200364* vconsole: implement setterm -store -foreground xxx --background zzz
365
Kay Sieverse01a15b2012-04-26 02:03:31 +0200366* ExecOnFailure=/usr/bin/foo
Lennart Poetteringa888b352012-04-24 14:59:49 +0200367
Lennart Poettering3b2d5b02012-04-24 13:12:29 +0200368* fedora: make sshd and pam_loginuid work in nspawn containers
369
Lennart Poettering0f0dbc42012-04-22 13:37:24 +0200370* fix utmp for console logins in containers
371
Lennart Poettering3d9a4122012-04-22 01:59:11 +0200372* Add pretty name for seats in logind
373
Lennart Poettering98ef27d2012-11-21 03:10:26 +0100374* ConditionSecurity= should learn about IMA and SMACK
Lennart Poetteringa0a38442012-04-20 12:37:57 +0200375
Lennart Poettering9efaf382012-04-22 00:32:27 +0200376* Auke: merge Auke's bootchart
377
Kay Sievers4ee71782012-04-30 00:46:38 +0200378* udev: move to LGPL
379
Kay Sievers5ba2dc22012-04-17 22:25:24 +0200380* udev systemd unify:
381 - strpcpy(), strpcpyl(), strscpy(), strscpyl()
382 - utf8 validator code
Kay Sievers20ffc4c2012-04-17 18:47:49 +0200383
Kay Sieversb45f7702012-04-14 21:53:26 +0200384* udev: scsi_id -> sg3_utils -> kill scsi_id
385
386* udev: add trigger --subsystem-match=usb/usb_device device
Kay Sieversb8217b72012-04-04 14:57:36 +0200387
Lennart Poettering08f23fd2012-04-03 14:25:51 +0200388* allow configuration of console width/height in vconsole.conf
389
Kay Sievers18b754d2012-03-30 23:18:33 +0200390* cleanup syslog 'priority' vs. 'level' wording
Lennart Poettering068665b2012-02-15 02:39:52 +0100391
Lennart Poettering231931f2012-03-27 17:04:22 +0200392* dbus upstream still refers to dbus.target and shouldn't
393
Lennart Poettering169c4f62012-03-26 20:58:47 +0200394* 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
395
Lennart Poetteringbd08f242012-03-20 15:28:35 +0100396* support container_ttys=
397
Lennart Poetteringfb0864e2012-03-15 00:43:47 +0100398* introduce mix of BindTo and Requisite
399
Lennart Poettering18da4952012-03-14 19:10:29 +0100400* journalctl: show multiline log messages sanely, expand tabs, and show all valid utf8 messages
401
Lennart Poettering9586cdf2012-03-14 03:01:27 +0100402* add DeleteSocketsOnStop=yes|no option to socket units
403
Lennart Poettering9586cdf2012-03-14 03:01:27 +0100404* journal: store euid in journal if it differs from uid
405
Lennart Poettering7f110ff2012-03-12 22:22:16 +0100406* There's currently no way to cancel fsck (used to be possible via C-c or c on the console)
407
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100408* journal: sanely deal with entries which are larger than the individual file size, but where the components would fit
Lennart Poettering101f0772012-03-05 14:09:16 +0100409
Lennart Poetteringf7f964e2012-02-20 15:54:28 +0100410* add command to systemctl to plot dependency graph as tree (see rhbz 795365)
411
Lennart Poetteringd0e5a332012-02-20 19:56:14 +0100412* add option to sockets to avoid activation. Instead just drop packets/connections, see http://cyberelk.net/tim/2012/02/15/portreserve-systemd-solution/
413
Lennart Poetteringd0e5a332012-02-20 19:56:14 +0100414* default unix qlen is too small (10). bump sysctl? add sockopt?
415
Lennart Poettering53ed2ee2012-02-11 01:18:03 +0100416* figure out whether we should leave dbus around during shutdown
417
Lennart Poettering680a1db2012-02-02 02:21:59 +0100418* dbus: in fedora, make the machine a symlink to /etc/machine-id
419
Lennart Poetteringa6e87e92012-09-05 15:25:32 -0700420* dbus: move dbus to early boot
Lennart Poettering88f89a92012-09-03 18:58:18 -0700421
Lennart Poetteringc4aa65e2012-02-01 19:04:54 +0100422* logind: add equivalent to sd_pid_get_owner_uid() to the D-Bus API
Lennart Poettering7e64c732012-01-31 23:13:16 +0100423
Lennart Poetteringa558d002012-01-23 22:01:29 +0100424* journal: deal nicely with byte-by-byte copied files, especially regards header
425
426* journal: local deserializer of export mode, http server
427
Lennart Poettering05aa9ed2012-01-21 02:51:13 +0100428* document the exit codes when services fail before they are exec()ed
429
Lennart Poettering87a8baa2012-01-17 13:30:58 +0100430* save coredump in Windows/Mozilla minidump format
431
432* support crash reporting operation modes (https://live.gnome.org/GnomeOS/Design/Whiteboards/ProblemReporting)
433
Lennart Poettering5ba081b2012-01-12 04:34:31 +0100434* clean up session cgroups that remain after logout (think sshd), but eventually run empty
435
Lennart Poetteringb3fa47e2012-01-11 02:51:40 +0100436* support "systemctl stop foobar@.service" to stop all units matching a certain template
437
Lennart Poettering7f3e6252011-12-17 00:56:34 +0100438* logind: allow showing logout dialog from system
439
440* document that %% can be used to write % in a string that is specifier extended
441
Lennart Poettering4cbd9ec2011-11-03 19:55:36 +0100442* when an instanced service exits, remove its parent cgroup too if possible.
443
Lennart Poettering65c0cf72011-10-10 22:22:47 +0200444* default to actual 32bit PIDs, via /proc/sys/kernel/pid_max
445
Kay Sieversf9576322011-09-21 19:33:52 +0200446* be able to specify a forced restart of service A where service B depends on, in case B
447 needs to be auto-respawned?
448
Lennart Poetteringa2f56662011-09-21 03:56:07 +0200449* Something is wrong with symlink handling of "autovt@.service" in "systemctl list-unit-files"
450
Lennart Poetteringad740102011-09-03 03:26:58 +0200451* when a bus name of a service disappears from the bus make sure to queue further activation requests
452
Lennart Poetteringc821bd22011-08-24 21:22:26 +0200453* something like ConditionExec= or ExecStartPre= without failure state
454
Lennart Poetteringde6c78f2011-08-30 22:57:55 +0200455* tmpfiles: apply "x" on "D" too (see patch from William Douglas)
Lennart Poettering7d441dd2011-08-24 21:14:28 +0200456
Lennart Poettering14e639a2011-08-21 19:07:31 +0200457* don't set $HOME in services unless requested
458
Lennart Poetteringff01d042011-08-02 05:24:58 +0200459* hide PAM/TCPWrap options in fragment parser when compile time disabled
460
Kay Sieversd3c7d7d2012-03-15 12:43:53 +0100461* when we automatically restart a service, ensure we restart its rdeps, too.
Lennart Poettering72b9ed82011-08-02 01:41:36 +0200462
Lennart Poettering1d6702e2011-08-01 22:42:07 +0200463* allow Type=simple with PIDFile=
464 https://bugzilla.redhat.com/show_bug.cgi?id=723942
465
Lennart Poettering034a2a52011-07-22 21:01:15 +0200466* move PAM code into its own binary
467
Lennart Poettering97f73ff2011-07-12 03:42:44 +0200468* logind: spawn user@..service on login
469
Lennart Poettering85f248b2011-07-13 22:05:35 +0200470* logind: non-local X11 server handling
471
Lennart Poettering12580972011-07-11 21:10:48 +0200472* implement Register= switch in .socket units to enable registration
473 in Avahi, RPC and other socket registration services.
474
Lennart Poetteringa4c279f2011-07-08 21:39:10 +0200475* make sure systemd-ask-password-wall does not shutdown systemd-ask-password-console too early
476
Lennart Poetteringd3fc81b2011-06-15 15:39:10 +0200477* readahead: use BTRFS_IOC_DEFRAG_RANGE instead of BTRFS_IOC_DEFRAG ioctl, with START_IO
478
Lennart Poettering7c697162012-01-23 21:56:55 +0100479* support sd_notify() style notification when reload begins (RELOADING=1), reload is finished (READY=1), and add ReloadSignal= then to use in combination
Lennart Poettering253ee272011-07-23 04:15:38 +0200480
Lennart Poettering71092d72011-07-29 05:01:47 +0200481* support sd_notify() style notification when shutting down, to make auto-exit bus services work (STOPPING=1)
Lennart Poettering8d0e38a2011-06-15 15:31:54 +0200482
Lennart Poetteringf28f1da2011-05-20 01:57:20 +0200483* verify that the AF_UNIX sockets of a service in the fs still exist
484 when we start a service in order to avoid confusion when a user
485 assumes starting a service is enough to make it accessible
486
Lennart Poettering88a07672011-05-12 16:14:44 +0200487* Make it possible to set the keymap independently from the font on
488 the kernel cmdline. Right now setting one resets also the other.
489
Lennart Poettering916abb22011-05-17 19:37:03 +0200490* move nss-myhostname into systemd
491
Lennart Poettering71092d72011-07-29 05:01:47 +0200492* and a dbus call to generate target from current state
Lennart Poettering916abb22011-05-17 19:37:03 +0200493
Lennart Poetteringb23de6a2011-04-28 22:07:01 +0200494* drop /.readahead on bigger upgrades with yum
495
Lennart Poettering21bdae12011-07-02 01:44:49 +0200496* add support for /bin/mount -s
497
Lennart Poettering9534ce52011-04-20 03:34:58 +0200498* GC unreferenced jobs (such as .device jobs)
499
Lennart Poettering68c7d002011-04-05 00:24:00 +0200500* write blog stories about:
Kay Sievers796b06c2012-10-22 18:23:08 +0200501 - hwdb: what belongs into it, lsusb
Lennart Poettering68c7d002011-04-05 00:24:00 +0200502 - enabling dbus services
503 - status update
Lennart Poettering7a2a0b92011-07-12 03:36:17 +0200504 - how to make changes to sysctl and sysfs attributes
Lennart Poettering253ee272011-07-23 04:15:38 +0200505 - remote access
Lennart Poettering5d0fcd72011-07-27 20:47:50 +0200506 - how to pass throw-away units to systemd, or dynamically change properties of existing units
507 - how to integrate cgconfig and suchlike with systemd
Lennart Poettering8bbabc42012-05-24 17:04:04 +0200508 - testing with Harald's awesome test kit
Lennart Poetteringf5303712012-10-16 01:01:55 +0200509 - auto-restart
Lennart Poetteringe707c492012-10-26 03:51:10 +0200510 - how to develop against journal browsing APIs
Lennart Poetteringa19554e2012-10-24 01:05:40 +0200511 - the journal HTTP iface
Lennart Poetteringa73d88f2012-10-25 01:20:18 +0200512 - non-cgroup resource management
Lennart Poettering30407282012-11-20 19:11:55 +0100513 - refreshed, longer missions statement
Lennart Poettering59659842012-11-22 20:16:15 +0100514 - using detect-virt
Lennart Poettering73090dc2011-04-19 06:06:41 +0200515
Kay Sievers44143302011-04-28 23:51:24 +0200516* allow port=0 in .socket units
Lennart Poettering3d57c6a2011-04-04 18:15:13 +0200517
Lennart Poettering935fb722012-10-17 21:51:04 +0200518* move readahead files into /var (look for them with .path units?)
Lennart Poetteringb9a2a362011-04-10 01:42:48 +0200519
Lennart Poetteringba1a5512011-03-31 04:40:02 +0200520* teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
521
Lennart Poettering71092d72011-07-29 05:01:47 +0200522* support systemd.mask= on the kernel command line.
Kay Sievers3f7a8c42011-03-31 02:36:32 +0200523
Lennart Poetteringf9276852011-03-28 21:36:13 +0200524* when key file cannot be found, read it from kbd in cryptsetup
525
Lennart Poettering260abb72011-03-18 03:13:15 +0100526* reuse mkdtemp namespace dirs in /tmp?
527
Lennart Poettering260abb72011-03-18 03:13:15 +0100528* recreate systemd's D-Bus private socket file on SIGUSR2
Kay Sievers7d9e57d2011-03-17 14:03:17 +0100529
Lennart Poetteringa8f11322011-03-12 01:03:13 +0100530* Support --test based on current system state
531
Lennart Poettering21bdae12011-07-02 01:44:49 +0200532* investigate whether the gnome pty helper should be moved into systemd, to provide cgroup support.
533
Lennart Poetteringc32e0c42011-01-18 23:51:06 +0100534* maybe introduce ExecRestartPre=
535
Lennart Poettering35f10fc2011-01-06 18:54:10 +0100536* configurable jitter for timer events
537
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200538* timer events with system resume
539
Lennart Poettering59fee422010-09-28 21:49:26 +0200540* dot output for --test showing the 'initial transaction'
541
Lennart Poettering71092d72011-07-29 05:01:47 +0200542* writable cgroups dbus properties for live changes
Lennart Poettering75787bb2010-01-26 04:19:18 +0100543
Lennart Poettering129126f2010-05-16 01:49:45 +0200544* port over to LISTEN_FDS/LISTEN_PID:
Kay Sievers7d9e57d2011-03-17 14:03:17 +0100545 - rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
546 - cups HAVEPATCH
Lennart Poetteringa625ac12010-02-05 01:11:01 +0100547 - postfix, saslauthd
Lennart Poetteringa625ac12010-02-05 01:11:01 +0100548 - apache/samba
549 - libvirtd (/var/run/libvirt/libvirt-sock-ro)
550 - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
Lennart Poetteringa625ac12010-02-05 01:11:01 +0100551 - distccd
552
Lennart Poettering71092d72011-07-29 05:01:47 +0200553* fingerprint.target, wireless.target, gps.target, netdevice.target
Lennart Poettering246756c2010-07-18 01:33:05 +0200554
Lennart Poettering50f2a902010-07-21 20:26:44 +0200555* io priority during initialization
Lennart Poettering8fe914e2010-07-20 20:33:19 +0200556
Lennart Poettering71092d72011-07-29 05:01:47 +0200557* systemctl list-jobs - show dependencies
Lennart Poettering20604eb2010-08-25 03:10:13 +0200558
Lennart Poettering20604eb2010-08-25 03:10:13 +0200559* add systemctl switch to dump transaction without executing it
560
Lennart Poettering9534ce52011-04-20 03:34:58 +0200561* drop cap bounding set in readahead and other services
562
Lennart Poettering2f8cd172010-11-18 02:16:36 +0100563External:
Lennart Poettering74fe1fe2010-11-17 20:22:07 +0100564
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200565* dbus:
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200566 - dbus --user
Lennart Poettering3377af32011-08-29 13:44:12 +0200567 - natively watch for dbus-*.service symlinks (PENDING)
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200568 - allow specification of socket mode/umask when allocating DBusServer
569 - allow disabling of fd passing when connecting a AF_UNIX connection
Lennart Poettering3377af32011-08-29 13:44:12 +0200570 - allow disabling of UID passing for AUTH EXTERNAL
Lennart Poetteringb69d29c2012-04-16 18:56:18 +0200571 - always pass cred data along each message
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200572
Lennart Poettering71092d72011-07-29 05:01:47 +0200573* fix alsa mixer restore to not print error when no config is stored
574
Kay Sievers7d9e57d2011-03-17 14:03:17 +0100575* gnome-shell python script/glxinfo/is-accelerated must die
Lennart Poetteringf959c5e2011-02-15 13:09:00 +0100576
Lennart Poettering74fe1fe2010-11-17 20:22:07 +0100577* make cryptsetup lower --iter-time
578
Kay Sievers44143302011-04-28 23:51:24 +0200579* patch kernel for xattr support in /dev, /proc/, /sys and /sys/fs/cgroup?
Lennart Poettering06ae4bf2010-10-12 04:04:22 +0200580
Kay Sievers69b1c672011-12-29 14:09:04 +0100581* NTP: the kernel's 11-minutes-mode syncs the system time to the RTC, but only
582 in an ~30 minutes window. It does not adjust larger differences. Find a way
583 to tell the kernel, to always do a full time sync when the RTC is in UTC and
584 we are in 11-minutes-mode. When we trust the system time to NTP we also want
585 the RTC to sync up.
586
Lennart Poettering71092d72011-07-29 05:01:47 +0200587* kernel: add device_type = "fb", "fbcon" to class "graphics"
Lennart Poettering14bd37f2010-07-14 15:13:34 +0200588
Lennart Poettering129126f2010-05-16 01:49:45 +0200589Regularly:
Lennart Poettering5021be22010-02-14 22:47:08 +0100590
Lennart Poettering129126f2010-05-16 01:49:45 +0200591* look for close() vs. close_nointr() vs. close_nointr_nofail()
592
593* check for strerror(r) instead of strerror(-r)
Lennart Poettering5b6319d2010-06-16 21:54:17 +0200594
595* Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
Lennart Poettering8c6db832010-06-21 23:27:18 +0200596
Shawn Landden14212112012-08-03 17:22:09 -0700597* %m in printf() instead of strerror(errno);
Lennart Poettering444a79d2010-08-11 23:19:28 +0200598
599* pahole
600
Lennart Poettering71092d72011-07-29 05:01:47 +0200601* set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
Lennart Poetteringa3a3e5b2012-06-22 16:18:47 +0200602
Zbigniew Jędrzejewski-Szmek4db17f22012-09-17 00:21:25 +0200603* use secure_getenv() instead of getenv() where appropriate
Lennart Poettering88fae6e2012-08-23 18:47:01 +0200604
Zbigniew Jędrzejewski-Szmekd05c5562013-01-06 13:52:38 -0500605* link up selected blog stories from man pages and unit files Documentation= fields
606
Lennart Poettering9e5f3db2012-09-20 20:52:19 +0200607Scheduled for removal or fixing:
Lennart Poetteringa3a3e5b2012-06-22 16:18:47 +0200608
Lennart Poettering9e5f3db2012-09-20 20:52:19 +0200609* xxxOverridable dependencies (probably: fix)
610
611* support for early-boot SysV services (definitely: remove)
Lennart Poetteringe65d8c32012-10-30 23:57:50 +0100612
613* insserv support (definitely: remove)