blob: e1c6eb051faa262d687bd981a8e569594f6a4612 [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 Poettering373d8fc2012-12-21 22:20:46 +010027* rewrite #!/usr/bin/python line in python scripts to use @PYTHON@ instead
28
Lennart Poettering499519c2012-12-19 20:50:42 +010029* exec: when deinitializating a tty device fix the perms and group, too, not only when initializing. Set access mode/gid to 0620/tty.
30
Lennart Poettering490b7e42012-12-19 15:27:27 +010031* DeviceAllow/DeviceDeny: disallow everything by default, but whitelist /dev/zero, /dev/null and friends
32
33* service: watchdog logic: for testing purposes allow ping, but do not require pong
34
Lennart Poettering8403cbb2012-11-25 00:33:38 +010035* kill insserv code, people should really use a generator for this
Lennart Poettering2eb8ca32012-11-23 18:35:09 +010036
Lennart Poettering59659842012-11-22 20:16:15 +010037* journald: when dropping msgs due to ratelimit make sure to write
38 "dropped %u messages" not only when we are about to print the next
39 message that works, but alraedy after a short tiemout
40
Lennart Poetteringe4181482012-11-20 21:33:49 +010041* journald: also get thread ID from client, plus thread name
42
Lennart Poetteringe9fd44b2012-11-20 19:13:54 +010043* check if we can make journalctl by default use --follow mode inside of less if called without args?
44
Lennart Poettering15abdb92012-12-23 11:56:22 +010045* 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 +010046
Lennart Poettering30407282012-11-20 19:11:55 +010047* journal is not closed properly at shutdown when run in a container?
48
Lennart Poettering78db35f2012-11-20 00:18:22 +010049* All log messages generated from socket.c, service.c, ... should
50 include _SYSTEMD_UNIT= fields so that "systemctl status" can show
51 them along with the unit
52
Lennart Poettering15abdb92012-12-23 11:56:22 +010053* 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 +010054
Lennart Poetteringe6c6e7a2012-11-16 01:36:29 +010055* When shutdown.target is queued begin with an asynchronous sync()?
56
Lennart Poetteringe673ad02012-11-14 22:20:51 +010057* add API to close/reopen/get fd for journal client fd in libsystemd-journal.
58
59* maybe add API to send pairs of iovecs via sd_journal_send
60
61* fallback to /dev/log based logging in libsystemd-journal, if we can't log natively?
62
63* declare the local journal protocol stable in the wiki interface chart
64
Lennart Poettering7361c3b2012-11-14 22:14:17 +010065* journal: reuse XZ context
Lennart Poettering8b04b922012-11-21 00:33:37 +010066
Lennart Poettering7361c3b2012-11-14 22:14:17 +010067* sd-journal: speed up sd_journal_get_data() with transparent hash table in bg
68
Lennart Poetteringe673ad02012-11-14 22:20:51 +010069* introduce ntp.service (or suchlike) as symlink that is used to arbitrate between various NTP implementations
70
Kay Sieversd2e83c22012-11-04 15:47:08 +010071* timer units should get the ability to trigger when:
72 - CLOCK_REALTIME makes jumps (TFD_TIMER_CANCEL_ON_SET)
73 - DST changes
74
75* update the kernel's TZ (sys_tz) when DST changes
76
77* sync down the system time to the RTC when:
Kay Sieversf6113d42012-11-07 13:59:50 +010078 - CLOCK_REALTIME makes jumps (the user explicitely requested a time set)
79 - DST/timezone changes && ntp is active && RTC-in-localtime (never do it without ntp)
Kay Sieversd2e83c22012-11-04 15:47:08 +010080 This takes care of syncing ntpdate updates to the RTC, and DST updates for localtime
Kay Sievers7a43e912012-11-05 02:17:23 +010081 mode, it will never touch the RTC if the no reliable time source is active or the
Kay Sieversd2e83c22012-11-04 15:47:08 +010082 user did not request anything like it.
Lennart Poetteringc55b1b52012-10-31 00:04:59 +010083
Lennart Poettering822e5dd2012-10-30 18:29:35 +010084* When we begin with system shutdown all kind of suspend/hibernation should be prohibited until shutdown/reboot
85
86* When we update the kernel all kind of hibernation should be prohibited until shutdown/reboot
87
Kay Sievers6c1703c2012-10-29 20:54:19 +010088* hwdb:
89 - implement conditional properties (dmi matches)
90 - hwdb --filter=ID_DRIVE_*
91 - find out what to do for blockdevs and skipping scsi modaliases
92 - move writing code to src/libudev/libudev-hwdb-private.c
Lennart Poettering08f95882012-10-03 11:37:06 -040093
Lennart Poettering9ec82de2012-10-28 00:49:49 +020094* if booted in "quiet" mode, and an error happens, turn on status output again, so that the emergency mode isn't totally surprising
95
Lennart Poetteringe707c492012-10-26 03:51:10 +020096* localectl: add listing support for X11 keymaps, by parsing /usr/share/X11/xkb/rules/xorg.lst
97
98* libunwind support for coredump pattern hook, and includes this in
99 the message for coredumps. After all, libunwind is now capable to
100 unwind coredumps since a few weeks ago. This probably requires that
101 we have nice support for multi-line messages on display in logs-show.c.
102
Lennart Poetteringe707c492012-10-26 03:51:10 +0200103* figure out relation of --all and --full in the various tools
104
105* journal: when writing journal auto-rotate if time jumps backwards
106
Lennart Poettering220369c2012-10-26 01:06:50 +0200107* introduce new "journal" group in place of adm? introduce groups for the various mini daemons?
108
109* journal: add a setgid "adm" utility to invoke from libsystemd-journal, which passes fds via STDOUT and does PK access
110
Lennart Poettering54728c32012-11-20 20:30:30 +0100111* link up selected blog stories from man pages and unit files Documentation= fields?
Lennart Poetteringa73d88f2012-10-25 01:20:18 +0200112
Zbigniew Jędrzejewski-Szmekf2d433e2012-10-28 00:43:44 +0200113* journactl: support negative filtering, i.e. FOOBAR!="waldo",
114 and !FOOBAR for events without FOOBAR.
Lennart Poetteringa19554e2012-10-24 01:05:40 +0200115
Zbigniew Jędrzejewski-Szmekf2d433e2012-10-28 00:43:44 +0200116* 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 +0200117
118* add libsystemd-password or so to query passwords during boot using the password agent logic
119
120* journal: when rotating, copy over old acls/access mode
121
122* journal: document why we do not give ownership to journal files to the user that created them but use FS ACLs for that
123
124* journal: send out marker messages every now and then, and immediately sync with fdatasync() afterwards, in order to have hourly guaranteed syncs.
125
126* 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
127
128* 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.
129
Lennart Poettering1cb88f22012-10-23 17:13:01 +0200130* 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().
131
132* fedup: add --unit to systemctl switch-root somehow
133* fedup: don't delete initrd on switch-root
134* fedup: generator
Lennart Poettering603cd8f2012-10-23 01:53:23 +0200135
Lennart Poettering06bf4612012-10-22 23:24:09 +0200136* journal: find a way to allow dropping history early, based on priority, other rules
137
Lennart Poettering936d6fc2012-10-20 17:00:29 +0200138* journal: When used on NFS, check payload hashes
139
140* journal: When used on NFS make sure wake up sd_journal_wait() every 2s, to handle missing inotify
141
Lennart Poettering936d6fc2012-10-20 17:00:29 +0200142* document that people can use file system ACLs to manage access to journal files, with example
143
Lennart Poettering6d0274f2012-10-17 02:50:09 +0200144* timedated: export boolean that clarifies whether NTP is even available
145
146* timedated: refuse time changes when NTP is on
147
Lennart Poetteringa7a3f282012-10-15 16:28:04 +0200148* clean up date formatting and parsing so that all absolute/relative timestamps we format can also be parsed
149
Lennart Poettering9a526a02012-10-10 22:23:06 +0200150* document unit_name_mangle()
151
Lennart Poetteringa8985ba2012-10-08 20:07:50 +0200152* add new command to systemctl: "systemctl system-reexec" which reexecs as many daemons as virtually possible
153
Lennart Poettering9b279102012-10-04 14:10:02 -0400154* introduce generic AUGMENT_PID=, AUGMENT_DEVICE= fields
155
Lennart Poetteringb03bfa22012-10-04 08:19:42 -0400156* deal with sendmail/postfix exclusivity
157
Lennart Poettering935fb722012-10-17 21:51:04 +0200158* systemctl enable: improve the success messages (i.e. more human readable, less shell-like)
Lennart Poetteringb03bfa22012-10-04 08:19:42 -0400159
160* systemctl enable: fail if target to alias into doesn't exist? maybe show how many units are enabled afterwards?
161
Lennart Poettering935fb722012-10-17 21:51:04 +0200162* 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 -0400163
Kay Sievers7d8197d2012-10-02 19:09:09 +0200164* add "provisioning" instructions to setup an empty /etc + /var
165 - used to setup a new container from a shared /usr
166 - superset of tmpfiles model
167 - instructions shipped by packages and stored in /usr/lib/
168 - compose /etc/passwd and /etc/group, copy files
169 - able to create uid + gid used by packages, for file ownership
170
Kay Sievers9ee58bd2012-10-02 18:18:41 +0200171* make repeated alt-ctrl-del presses printing a dump, or even force a reboot without
172 waiting for the timeout
Lennart Poetteringdcfc4b22012-08-03 21:49:06 +0200173
Lennart Poettering71ef24d2012-10-02 13:11:26 -0400174* high level net_prio setting in execution context
175
176* Introduce journalctl -b <nr> to show journal messages of a previous boot
177
Lennart Poettering71ef24d2012-10-02 13:11:26 -0400178* hostnamed: before returning information from /etc/machine-info.conf check the modification data and reread. Similar for localed, ...
179
Lennart Poettering1b898842012-09-27 17:18:13 +0200180* currently x-systemd.timeout is lost in the initrd, since crypttab is copied into dracut, but fstab isn't
181
Lennart Poettering1920e372012-09-24 22:46:22 +0200182* WorkingDirectory: support env var replacements like in ExecStart= so that people can use $HOME
183
Lennart Poettering15abdb92012-12-23 11:56:22 +0100184* refuse boot if /etc/machine-id is not useful (or set taint?)
Lennart Poettering1920e372012-09-24 22:46:22 +0200185
186* nspawn: consider changing users for -u with su, so that NSS resolving works correctly
187
188* nspawn: implement personality changes a la linux32(8)
189
Lennart Poetteringa07fdfa2012-09-24 11:35:51 +0200190* cryptsetup-generator: warn if the password files are world-readable
191
192* cryptsetup-generator: add RequiresMountsFor= to cryptseup service files referencing a file, similar for devices
193
194* cryptsetup-generator: allow specification of passwords in crypttab itself
195
Lennart Poetteringf8019682012-09-21 20:52:23 +0200196* document that deps in [Unit] sections ignore Alias= fileds in
197 [Install] units of other units, unless those units are disabled
198
Lennart Poettering409133b2012-09-21 11:57:48 +0200199* systemctl: when powering down/suspending check for inhibitors, and warn.
200
Lennart Poettering41f91722012-09-18 11:27:56 +0200201* instantiated [Install] for target units
202 https://bugs.freedesktop.org/show_bug.cgi?id=54377
Lennart Poettering178cc772012-09-17 23:59:26 +0200203
Lennart Poetteringde34a422012-09-17 13:24:35 +0200204* move debug shell to tty6 and make sure this doesn't break the gettys on tty6
205
Lennart Poettering98a77df2012-09-17 12:39:16 +0200206* move cryptsetup key caching into kernel keyctl?
Lennart Poettering41f91722012-09-18 11:27:56 +0200207 https://bugs.freedesktop.org/show_bug.cgi?id=54982
Lennart Poettering98a77df2012-09-17 12:39:16 +0200208
Lennart Poettering424a19f2012-09-14 20:02:52 +0200209* hw watchdog: optionally try to use the preset watchdog timeout instead of always overriding it
Lennart Poettering41f91722012-09-18 11:27:56 +0200210 https://bugs.freedesktop.org/show_bug.cgi?id=54712
Lennart Poettering424a19f2012-09-14 20:02:52 +0200211
212* after deserializing sockets in socket.c we should reapply sockopts and things
213
Lennart Poetteringa1cccad2012-09-13 17:11:10 +0200214* make timer units go away after they elapsed
215
Lennart Poettering85568792012-09-12 04:46:38 +0200216* http://lists.freedesktop.org/archives/systemd-devel/2012-September/006502.html
217
Lennart Poettering85568792012-09-12 04:46:38 +0200218* come up with a nice way to write queue/read_ahead_kb for a block device without interfering with readahead
219
220* journald: add kernel cmdline option to disable ratelimiting for debug purposes
221
Lennart Poettering4a308472012-09-11 01:45:27 +0200222* move PID 1 segfaults to /var/lib/systemd/coredump?
223
Lennart Poetteringb5b46d52012-09-11 01:11:32 +0200224* Document word splitting syntax for ExecStart= and friends
225
Lennart Poettering5e8b2882012-09-10 22:45:20 +0200226* create /sbin/init symlinks from the build system
227
Lennart Poetteringd87be9b2012-09-05 16:23:41 -0700228* Query Paul Moore about relabelling socket fds while they are open
229
Lennart Poettering438bacd2012-09-04 13:39:18 -0700230* move keymaps to /usr/lib/... rather than /usr/lib/udev/...
231
Lennart Poettering88f89a92012-09-03 18:58:18 -0700232* journald: check whether it is OK if the client can still modify delivered journal entries
233
Lennart Poetteringcb7ed9d2012-09-05 23:39:55 -0700234* journal live copy, based on libneon (client) and libmicrohttpd
Lennart Poettering88f89a92012-09-03 18:58:18 -0700235
Lennart Poettering88f89a92012-09-03 18:58:18 -0700236* system-wide seccomp filter
237
Lennart Poettering88f89a92012-09-03 18:58:18 -0700238* system.conf should have controls for cgroups
239
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100240* bind mount read-only the cgroup tree higher than nspawn
Lennart Poettering88f89a92012-09-03 18:58:18 -0700241
Lennart Poettering38a60d72012-08-23 02:46:22 +0200242* allow writing multiple conditions in unit files on one line
243
Lennart Poetteringd8b78262012-08-21 17:38:29 +0200244* explore multiple service instances per listening socket idea
245
246* 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.
247
Lennart Poettering7560fff2012-08-13 20:31:10 +0200248* shutdown: don't read-only mount anything when running in container
249
Lennart Poettering5a7e9592012-08-13 16:27:17 +0200250* nspawn: --read-only is not applied recursively to submounts
251
Lennart Poettering68f16002012-08-13 15:39:25 +0200252* MountFlags=shared acts as MountFlags=slave right now.
253
Lennart Poettering5a7e9592012-08-13 16:27:17 +0200254* ReadOnlyDirectories= is not applied recursively to submounts
255
Lennart Poettering68f16002012-08-13 15:39:25 +0200256* drop PID 1 reloading, only do reexecing (difficult: Reload()
257 currently is properly synchronous, Reexec() is weird, because we
258 can't delay the response properly until we are back, so instead of
259 being properly synchronous we just keep open the fd and close it
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100260 when done. That means clients don't get a successful method reply,
Lennart Poettering68f16002012-08-13 15:39:25 +0200261 but much rather a disconnect on success.
Lennart Poettering0790b9f2012-08-09 12:52:49 +0200262
263* document that service reload may be implemented as service reexec
264
Lennart Poettering5aea9322012-08-08 19:19:45 +0200265* remember which condition failed for services, not just the fact that something failed
266
Lennart Poettering918943c2012-08-08 19:09:59 +0200267* use opterr = 0 for all getopt tools
268
Lennart Poetteringfd4d89b2012-08-08 18:10:35 +0200269* properly handle loop back mounts via fstab, especially regards to fsck/passno
270
Lennart Poettering8230e262012-08-06 16:35:44 +0200271* allow services with no ExecStart= but with an ExecStop=
272
Lennart Poetteringdcfc4b22012-08-03 21:49:06 +0200273* add proper journal support to "systemctl --user status ..."
274
275* add _SYSTEMD_USER_UNIT= field to journal entries
276
Lennart Poettering4d9909c2012-07-31 14:35:42 +0200277* dracut-shutdown needs to be ordered before unmounting /boot
278
Lennart Poettering47ae7202012-07-27 12:21:39 +0200279* initialize the hostname from the fs label of /, if /etc/hostname does not exist?
280
Kay Sievers88a6c582012-07-25 11:40:14 +0200281* rename "userspace" to "core-os"
Lennart Poettering8351cea2012-07-17 04:17:53 +0200282
Lennart Poettering6a735362012-07-20 16:55:34 +0200283* systemctl: "Journal has been rotated since unit was started." message is misleading
284
Lennart Poettering6b78f9b2012-07-18 01:46:52 +0200285* syscall filter: add knowledge about compat syscalls
286
Lennart Poettering9f8d2982012-07-19 02:03:22 +0200287* syscall filter: don't enforce no new privs?
288
289* syscall filter: option to return EPERM rather than SIGSYS?
290
Lennart Poettering68f16002012-08-13 15:39:25 +0200291* syscall filter: port to libseccomp
292
Lennart Poetteringb7def682012-07-13 13:41:01 +0200293* logind: wakelock/opportunistic suspend support
294
Lennart Poetteringc66d36e2012-07-10 16:46:15 +0200295* systemd-analyze post-boot is broken for initrd
296
David Straussc649f722012-11-23 03:51:41 -0600297* systemd-analyze: data collection tools should be lightweight (few dependencies); data analysis tools can be heavyweight
298
Lennart Poetteringc66d36e2012-07-10 16:46:15 +0200299* man: clarify that time-sync.target is not only sysv compat but also useful otherwise. Same for similar targets
300
Lennart Poetteringbe0aa782012-07-10 00:32:22 +0200301* .device aliases need to be implemented with the "following" logic, probably.
302
Lennart Poettering461b1822012-07-09 17:30:22 +0200303* refuse taking lower-case variable names in sd_journal_send() and friends.
304
Lennart Poettering99469962012-07-03 16:09:36 +0200305* load-fragment: when loading a unit file via a chain of symlinks
306 verify that it isn't masked via any of the names traversed.
307
Lennart Poetteringd1970642012-07-03 02:01:56 +0200308* journald: we currently rotate only after MaxUse+MaxFilesize has been reached.
309
Lennart Poetteringb4efdf92012-06-29 16:14:01 +0200310* Document:
311 - PID 1 D-Bus API
Lennart Poetteringb4efdf92012-06-29 16:14:01 +0200312
Lennart Poettering3471bed2012-06-27 22:38:35 +0200313* introduce Type=pid-file
314
Lennart Poetteringeeb87512012-06-27 15:35:05 +0200315* maybe allow services with ExecStop= set, but no ExecStart=?
316
Lennart Poetteringa32f2242012-06-27 00:37:36 +0200317* efi: implement /forcefsck as uefi variables thus not requiring file system altering to trigger a file system check
318
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100319* efi: honor language efi variables for default language selection
Lennart Poetteringa32f2242012-06-27 00:37:36 +0200320
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100321* efi: honor timezone efi variables for default timezone selection
Lennart Poetteringa32f2242012-06-27 00:37:36 +0200322
Kay Sievers347e1b62012-07-11 03:32:28 +0200323* efi: automatically mount EFI partition to /boot if no such entry exists in /etc/fstab and /boot is empty
324 gummiboot exports the EFI system partion (ESP) device:
325 /sys/firmware/efi/vars/LoaderDeviceIdentifier-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
326 Acpi(PNP0A03,0)/Pci(1F|2)/?/HD(Part1,Sig1FCBC57F-4BFC-4C2B-91A3-9C84FBCD9AF1)
327 '/' is the separator for the device path list
328 HD(Part1,Sig1FCBC57F-4BFC-4C2B-91A3-9C84FBCD9AF1) contains the GPT UUID of the ESP
329
330* read the bootloader performance data (raw TSC) in systemd-analyze
331 /sys/firmware/efi/vars/LoaderTicksExec-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
332 19066159288
333 /sys/firmware/efi/vars/LoaderTicksInit-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
334 17442940316
335 /sys/firmware/efi/vars/LoaderTicksStartMenu-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
336 (only set if the menu was active)
Lennart Poettering166503d2012-07-10 19:44:19 +0200337
Lennart Poettering59cea262012-07-01 18:47:40 +0200338* change Requires=basic.target to RequisiteOverride=basic.target
Lennart Poettering35eb6b12012-06-25 20:16:15 +0200339
Lennart Poettering94734142012-06-22 10:27:05 +0200340* support rd.luks.allow-discards= kernel cmdline params in cryptsetup generator
Lennart Poetteringf1a8e222012-06-21 13:48:01 +0200341
Lennart Poettering069cfc82012-05-30 15:01:51 +0200342* nspawn: make use of device cgroup contrller by default
343
Lennart Poettering7b63bde2012-05-23 03:51:55 +0200344* drop accountsservice's StandardOutput=syslog and Type=dbus fields
345
Lennart Poettering5b40d332012-05-21 17:55:54 +0200346* when breaking cycles drop sysv services first, then services from /run, then from /etc, then from /usr
347
Lennart Poetteringf7f21d32012-05-21 17:22:36 +0200348* readahead: when bumping /sys readahead variable save mtime and compare later to detect changes
349
Lennart Poettering27b54822012-05-16 03:23:28 +0200350* (attempt to) make Debianites happy:
351 - implement .d/ auto includes for unit files
352 - add syntax to reset ExecStart= lists (and similar)
353
Lennart Poetteringb86fa932012-05-21 15:28:07 +0200354* move passno parsing to fstab generator
355
Kay Sieversa26336d2012-05-04 19:06:07 +0200356* improve !/proc/*/loginuid situation: make /proc/*/loginuid less dependent on CONFIG_AUDIT,
357 or use the users cgroup information when /proc/*/loginuid is not available.
Lennart Poetteringe85647f2012-05-03 02:25:49 +0200358
Lennart Poetteringeecd1362012-05-05 00:34:48 +0200359* pam_systemd: try to get old session id from cgroup, if audit sessionid cannot be determined
360
Lennart Poettering14038c22012-05-07 22:20:08 +0200361* pam: when leaving a session explicitly exclude the ReleaseSession() caller process from the killing spree
362
Lennart Poettering465349c2012-05-07 17:16:50 +0200363* maybe introduce ~/.config/locale.conf and apply it within PAM
364
365* readahead: make use of EXT4_IOC_MOVE_EXT, as used by http://e4rat.sourceforge.net/
366
367* automount: implement expire
368
Lennart Poettering06dab8e2012-05-03 22:53:25 +0200369* services which create their own subcgroups break cgroup-empty notification (needs to be fixed in the kernel)
370
Lennart Poettering7e2668c2012-05-03 14:42:49 +0200371* don't delete /tmp/systemd-namespace-* before a process is gone down
372
Lennart Poetteringe85647f2012-05-03 02:25:49 +0200373* vconsole: implement setterm -store -foreground xxx --background zzz
374
Kay Sieverse01a15b2012-04-26 02:03:31 +0200375* ExecOnFailure=/usr/bin/foo
Lennart Poetteringa888b352012-04-24 14:59:49 +0200376
Lennart Poettering3b2d5b02012-04-24 13:12:29 +0200377* fedora: make sshd and pam_loginuid work in nspawn containers
378
Lennart Poettering0f0dbc42012-04-22 13:37:24 +0200379* fix utmp for console logins in containers
380
Lennart Poettering3d9a4122012-04-22 01:59:11 +0200381* Add pretty name for seats in logind
382
Lennart Poettering98ef27d2012-11-21 03:10:26 +0100383* ConditionSecurity= should learn about IMA and SMACK
Lennart Poetteringa0a38442012-04-20 12:37:57 +0200384
Lennart Poettering9efaf382012-04-22 00:32:27 +0200385* Auke: merge Auke's bootchart
386
Kay Sievers4ee71782012-04-30 00:46:38 +0200387* udev: move to LGPL
388
Kay Sievers5ba2dc22012-04-17 22:25:24 +0200389* udev systemd unify:
390 - strpcpy(), strpcpyl(), strscpy(), strscpyl()
391 - utf8 validator code
Kay Sievers20ffc4c2012-04-17 18:47:49 +0200392
Kay Sieversb45f7702012-04-14 21:53:26 +0200393* udev: scsi_id -> sg3_utils -> kill scsi_id
394
395* udev: add trigger --subsystem-match=usb/usb_device device
Kay Sieversb8217b72012-04-04 14:57:36 +0200396
Lennart Poettering08f23fd2012-04-03 14:25:51 +0200397* allow configuration of console width/height in vconsole.conf
398
Kay Sievers18b754d2012-03-30 23:18:33 +0200399* cleanup syslog 'priority' vs. 'level' wording
Lennart Poettering068665b2012-02-15 02:39:52 +0100400
Lennart Poettering231931f2012-03-27 17:04:22 +0200401* dbus upstream still refers to dbus.target and shouldn't
402
Lennart Poettering169c4f62012-03-26 20:58:47 +0200403* 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
404
Lennart Poetteringbd08f242012-03-20 15:28:35 +0100405* support container_ttys=
406
Lennart Poetteringfb0864e2012-03-15 00:43:47 +0100407* introduce mix of BindTo and Requisite
408
Lennart Poettering18da4952012-03-14 19:10:29 +0100409* journalctl: show multiline log messages sanely, expand tabs, and show all valid utf8 messages
410
Lennart Poettering9586cdf2012-03-14 03:01:27 +0100411* add DeleteSocketsOnStop=yes|no option to socket units
412
Lennart Poettering9586cdf2012-03-14 03:01:27 +0100413* journal: store euid in journal if it differs from uid
414
Lennart Poettering7f110ff2012-03-12 22:22:16 +0100415* There's currently no way to cancel fsck (used to be possible via C-c or c on the console)
416
Thomas Hindoe Paaboel Andersenedca2e22012-11-05 21:13:28 +0100417* 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 +0100418
Lennart Poetteringf7f964e2012-02-20 15:54:28 +0100419* add command to systemctl to plot dependency graph as tree (see rhbz 795365)
420
Lennart Poetteringd0e5a332012-02-20 19:56:14 +0100421* add option to sockets to avoid activation. Instead just drop packets/connections, see http://cyberelk.net/tim/2012/02/15/portreserve-systemd-solution/
422
Lennart Poetteringd0e5a332012-02-20 19:56:14 +0100423* default unix qlen is too small (10). bump sysctl? add sockopt?
424
Lennart Poettering53ed2ee2012-02-11 01:18:03 +0100425* figure out whether we should leave dbus around during shutdown
426
Lennart Poettering680a1db2012-02-02 02:21:59 +0100427* dbus: in fedora, make the machine a symlink to /etc/machine-id
428
Lennart Poetteringa6e87e92012-09-05 15:25:32 -0700429* dbus: move dbus to early boot
Lennart Poettering88f89a92012-09-03 18:58:18 -0700430
Lennart Poetteringc4aa65e2012-02-01 19:04:54 +0100431* logind: add equivalent to sd_pid_get_owner_uid() to the D-Bus API
Lennart Poettering7e64c732012-01-31 23:13:16 +0100432
Lennart Poetteringa558d002012-01-23 22:01:29 +0100433* journal: deal nicely with byte-by-byte copied files, especially regards header
434
435* journal: local deserializer of export mode, http server
436
Lennart Poettering05aa9ed2012-01-21 02:51:13 +0100437* document the exit codes when services fail before they are exec()ed
438
Lennart Poettering87a8baa2012-01-17 13:30:58 +0100439* save coredump in Windows/Mozilla minidump format
440
441* support crash reporting operation modes (https://live.gnome.org/GnomeOS/Design/Whiteboards/ProblemReporting)
442
Lennart Poettering5ba081b2012-01-12 04:34:31 +0100443* clean up session cgroups that remain after logout (think sshd), but eventually run empty
444
Lennart Poetteringb3fa47e2012-01-11 02:51:40 +0100445* support "systemctl stop foobar@.service" to stop all units matching a certain template
446
Lennart Poettering7f3e6252011-12-17 00:56:34 +0100447* logind: allow showing logout dialog from system
448
449* document that %% can be used to write % in a string that is specifier extended
450
Lennart Poettering4cbd9ec2011-11-03 19:55:36 +0100451* when an instanced service exits, remove its parent cgroup too if possible.
452
Lennart Poettering65c0cf72011-10-10 22:22:47 +0200453* default to actual 32bit PIDs, via /proc/sys/kernel/pid_max
454
Kay Sieversf9576322011-09-21 19:33:52 +0200455* be able to specify a forced restart of service A where service B depends on, in case B
456 needs to be auto-respawned?
457
Lennart Poetteringa2f56662011-09-21 03:56:07 +0200458* Something is wrong with symlink handling of "autovt@.service" in "systemctl list-unit-files"
459
Lennart Poetteringad740102011-09-03 03:26:58 +0200460* when a bus name of a service disappears from the bus make sure to queue further activation requests
461
Lennart Poetteringc821bd22011-08-24 21:22:26 +0200462* something like ConditionExec= or ExecStartPre= without failure state
463
Lennart Poetteringde6c78f2011-08-30 22:57:55 +0200464* tmpfiles: apply "x" on "D" too (see patch from William Douglas)
Lennart Poettering7d441dd2011-08-24 21:14:28 +0200465
Lennart Poettering14e639a2011-08-21 19:07:31 +0200466* don't set $HOME in services unless requested
467
Lennart Poetteringff01d042011-08-02 05:24:58 +0200468* hide PAM/TCPWrap options in fragment parser when compile time disabled
469
Kay Sieversd3c7d7d2012-03-15 12:43:53 +0100470* when we automatically restart a service, ensure we restart its rdeps, too.
Lennart Poettering72b9ed82011-08-02 01:41:36 +0200471
Lennart Poettering1d6702e2011-08-01 22:42:07 +0200472* allow Type=simple with PIDFile=
473 https://bugzilla.redhat.com/show_bug.cgi?id=723942
474
Lennart Poettering034a2a52011-07-22 21:01:15 +0200475* move PAM code into its own binary
476
Lennart Poettering97f73ff2011-07-12 03:42:44 +0200477* logind: spawn user@..service on login
478
Lennart Poettering85f248b2011-07-13 22:05:35 +0200479* logind: non-local X11 server handling
480
Lennart Poettering12580972011-07-11 21:10:48 +0200481* implement Register= switch in .socket units to enable registration
482 in Avahi, RPC and other socket registration services.
483
Lennart Poetteringa4c279f2011-07-08 21:39:10 +0200484* make sure systemd-ask-password-wall does not shutdown systemd-ask-password-console too early
485
Lennart Poetteringd3fc81b2011-06-15 15:39:10 +0200486* readahead: use BTRFS_IOC_DEFRAG_RANGE instead of BTRFS_IOC_DEFRAG ioctl, with START_IO
487
Lennart Poettering7c697162012-01-23 21:56:55 +0100488* 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 +0200489
Lennart Poettering71092d72011-07-29 05:01:47 +0200490* support sd_notify() style notification when shutting down, to make auto-exit bus services work (STOPPING=1)
Lennart Poettering8d0e38a2011-06-15 15:31:54 +0200491
Lennart Poetteringf28f1da2011-05-20 01:57:20 +0200492* verify that the AF_UNIX sockets of a service in the fs still exist
493 when we start a service in order to avoid confusion when a user
494 assumes starting a service is enough to make it accessible
495
Lennart Poettering88a07672011-05-12 16:14:44 +0200496* Make it possible to set the keymap independently from the font on
497 the kernel cmdline. Right now setting one resets also the other.
498
Lennart Poettering916abb22011-05-17 19:37:03 +0200499* move nss-myhostname into systemd
500
Lennart Poettering71092d72011-07-29 05:01:47 +0200501* and a dbus call to generate target from current state
Lennart Poettering916abb22011-05-17 19:37:03 +0200502
Lennart Poetteringb23de6a2011-04-28 22:07:01 +0200503* drop /.readahead on bigger upgrades with yum
504
Lennart Poettering21bdae12011-07-02 01:44:49 +0200505* add support for /bin/mount -s
506
Lennart Poettering9534ce52011-04-20 03:34:58 +0200507* GC unreferenced jobs (such as .device jobs)
508
Lennart Poettering68c7d002011-04-05 00:24:00 +0200509* write blog stories about:
Kay Sievers796b06c2012-10-22 18:23:08 +0200510 - hwdb: what belongs into it, lsusb
Lennart Poettering68c7d002011-04-05 00:24:00 +0200511 - enabling dbus services
512 - status update
Lennart Poettering7a2a0b92011-07-12 03:36:17 +0200513 - how to make changes to sysctl and sysfs attributes
Lennart Poettering253ee272011-07-23 04:15:38 +0200514 - remote access
Lennart Poettering5d0fcd72011-07-27 20:47:50 +0200515 - how to pass throw-away units to systemd, or dynamically change properties of existing units
516 - how to integrate cgconfig and suchlike with systemd
Lennart Poettering8bbabc42012-05-24 17:04:04 +0200517 - testing with Harald's awesome test kit
Lennart Poetteringf5303712012-10-16 01:01:55 +0200518 - auto-restart
Lennart Poetteringe707c492012-10-26 03:51:10 +0200519 - how to develop against journal browsing APIs
Lennart Poetteringa19554e2012-10-24 01:05:40 +0200520 - the journal HTTP iface
Lennart Poetteringa73d88f2012-10-25 01:20:18 +0200521 - non-cgroup resource management
Lennart Poettering30407282012-11-20 19:11:55 +0100522 - refreshed, longer missions statement
Lennart Poettering59659842012-11-22 20:16:15 +0100523 - using detect-virt
Lennart Poettering73090dc2011-04-19 06:06:41 +0200524
Kay Sievers44143302011-04-28 23:51:24 +0200525* allow port=0 in .socket units
Lennart Poettering3d57c6a2011-04-04 18:15:13 +0200526
Lennart Poettering935fb722012-10-17 21:51:04 +0200527* move readahead files into /var (look for them with .path units?)
Lennart Poetteringb9a2a362011-04-10 01:42:48 +0200528
Lennart Poetteringba1a5512011-03-31 04:40:02 +0200529* teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
530
Lennart Poettering71092d72011-07-29 05:01:47 +0200531* support systemd.mask= on the kernel command line.
Kay Sievers3f7a8c42011-03-31 02:36:32 +0200532
Lennart Poetteringf9276852011-03-28 21:36:13 +0200533* when key file cannot be found, read it from kbd in cryptsetup
534
Lennart Poettering260abb72011-03-18 03:13:15 +0100535* reuse mkdtemp namespace dirs in /tmp?
536
Lennart Poettering260abb72011-03-18 03:13:15 +0100537* recreate systemd's D-Bus private socket file on SIGUSR2
Kay Sievers7d9e57d2011-03-17 14:03:17 +0100538
Lennart Poetteringa8f11322011-03-12 01:03:13 +0100539* Support --test based on current system state
540
Lennart Poettering21bdae12011-07-02 01:44:49 +0200541* investigate whether the gnome pty helper should be moved into systemd, to provide cgroup support.
542
Lennart Poetteringc32e0c42011-01-18 23:51:06 +0100543* maybe introduce ExecRestartPre=
544
Lennart Poettering35f10fc2011-01-06 18:54:10 +0100545* configurable jitter for timer events
546
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200547* timer events with system resume
548
Lennart Poettering59fee422010-09-28 21:49:26 +0200549* dot output for --test showing the 'initial transaction'
550
Lennart Poettering71092d72011-07-29 05:01:47 +0200551* writable cgroups dbus properties for live changes
Lennart Poettering75787bb2010-01-26 04:19:18 +0100552
Lennart Poettering129126f2010-05-16 01:49:45 +0200553* port over to LISTEN_FDS/LISTEN_PID:
Kay Sievers7d9e57d2011-03-17 14:03:17 +0100554 - rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
555 - cups HAVEPATCH
Lennart Poetteringa625ac12010-02-05 01:11:01 +0100556 - postfix, saslauthd
Lennart Poetteringa625ac12010-02-05 01:11:01 +0100557 - apache/samba
558 - libvirtd (/var/run/libvirt/libvirt-sock-ro)
559 - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
Lennart Poetteringa625ac12010-02-05 01:11:01 +0100560 - distccd
561
Lennart Poettering71092d72011-07-29 05:01:47 +0200562* fingerprint.target, wireless.target, gps.target, netdevice.target
Lennart Poettering246756c2010-07-18 01:33:05 +0200563
Lennart Poettering50f2a902010-07-21 20:26:44 +0200564* io priority during initialization
Lennart Poettering8fe914e2010-07-20 20:33:19 +0200565
Lennart Poettering71092d72011-07-29 05:01:47 +0200566* systemctl list-jobs - show dependencies
Lennart Poettering20604eb2010-08-25 03:10:13 +0200567
Lennart Poettering20604eb2010-08-25 03:10:13 +0200568* add systemctl switch to dump transaction without executing it
569
Lennart Poettering9534ce52011-04-20 03:34:58 +0200570* drop cap bounding set in readahead and other services
571
Lennart Poettering2f8cd172010-11-18 02:16:36 +0100572External:
Lennart Poettering74fe1fe2010-11-17 20:22:07 +0100573
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200574* dbus:
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200575 - dbus --user
Lennart Poettering3377af32011-08-29 13:44:12 +0200576 - natively watch for dbus-*.service symlinks (PENDING)
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200577 - allow specification of socket mode/umask when allocating DBusServer
578 - allow disabling of fd passing when connecting a AF_UNIX connection
Lennart Poettering3377af32011-08-29 13:44:12 +0200579 - allow disabling of UID passing for AUTH EXTERNAL
Lennart Poetteringb69d29c2012-04-16 18:56:18 +0200580 - always pass cred data along each message
Lennart Poetteringcc9784c2011-08-01 23:16:20 +0200581
Lennart Poettering71092d72011-07-29 05:01:47 +0200582* fix alsa mixer restore to not print error when no config is stored
583
Kay Sievers7d9e57d2011-03-17 14:03:17 +0100584* gnome-shell python script/glxinfo/is-accelerated must die
Lennart Poetteringf959c5e2011-02-15 13:09:00 +0100585
Lennart Poettering74fe1fe2010-11-17 20:22:07 +0100586* make cryptsetup lower --iter-time
587
Kay Sievers44143302011-04-28 23:51:24 +0200588* patch kernel for xattr support in /dev, /proc/, /sys and /sys/fs/cgroup?
Lennart Poettering06ae4bf2010-10-12 04:04:22 +0200589
Kay Sievers69b1c672011-12-29 14:09:04 +0100590* NTP: the kernel's 11-minutes-mode syncs the system time to the RTC, but only
591 in an ~30 minutes window. It does not adjust larger differences. Find a way
592 to tell the kernel, to always do a full time sync when the RTC is in UTC and
593 we are in 11-minutes-mode. When we trust the system time to NTP we also want
594 the RTC to sync up.
595
Lennart Poettering71092d72011-07-29 05:01:47 +0200596* kernel: add device_type = "fb", "fbcon" to class "graphics"
Lennart Poettering14bd37f2010-07-14 15:13:34 +0200597
Lennart Poettering129126f2010-05-16 01:49:45 +0200598Regularly:
Lennart Poettering5021be22010-02-14 22:47:08 +0100599
Lennart Poettering129126f2010-05-16 01:49:45 +0200600* look for close() vs. close_nointr() vs. close_nointr_nofail()
601
602* check for strerror(r) instead of strerror(-r)
Lennart Poettering5b6319d2010-06-16 21:54:17 +0200603
604* Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
Lennart Poettering8c6db832010-06-21 23:27:18 +0200605
Shawn Landden14212112012-08-03 17:22:09 -0700606* %m in printf() instead of strerror(errno);
Lennart Poettering444a79d2010-08-11 23:19:28 +0200607
608* pahole
609
Lennart Poettering71092d72011-07-29 05:01:47 +0200610* set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
Lennart Poetteringa3a3e5b2012-06-22 16:18:47 +0200611
Zbigniew Jędrzejewski-Szmek4db17f22012-09-17 00:21:25 +0200612* use secure_getenv() instead of getenv() where appropriate
Lennart Poettering88fae6e2012-08-23 18:47:01 +0200613
Lennart Poettering9e5f3db2012-09-20 20:52:19 +0200614Scheduled for removal or fixing:
Lennart Poetteringa3a3e5b2012-06-22 16:18:47 +0200615
Lennart Poettering9e5f3db2012-09-20 20:52:19 +0200616* xxxOverridable dependencies (probably: fix)
617
618* support for early-boot SysV services (definitely: remove)
Lennart Poetteringe65d8c32012-10-30 23:57:50 +0100619
620* insserv support (definitely: remove)