]> git.ipfire.org Git - thirdparty/systemd.git/blame - TODO
man: add man page for ask-password
[thirdparty/systemd.git] / TODO
CommitLineData
b7ff1e47
LP
1F15:
2
c904f64d
LP
3* swap units that are activated by one name but shown in the kernel under another are semi-broken
4
7d640cdf 5* NFS, networkmanager ordering issue (PENDING)
62170515 6
f80781ea
LP
7* NM should pull in network.target (PENDING)
8 https://bugzilla.redhat.com/show_bug.cgi?id=692008
9
4466194c 10* ntpd should pull in time-sync.target. (PENDING)
f80781ea 11
222ae6a8
LP
12* bluetooth should be possible to disable (PENDING)
13
c904f64d
LP
14* add fstab fields to add wait timeouts, change Wants to Requires by local-fs.target
15
222ae6a8 16* hook emergency.target into local-fs.target in some way as OnFailure with isolate, add warning log message
c904f64d 17
099663ff 18* bind mounts are ignored
cebe0d41 19 https://bugzilla.redhat.com/show_bug.cgi?id=682662
099663ff 20
099663ff 21* 0595f9a1c182a84581749823ef47c5f292e545f9 is borked, freezes shutdown
a49408ec 22 (path: after installing inotify watches, recheck file again to fix race)
b925e726 23
f1d19aa4
LP
24* active_enter timestamps borked?
25
222ae6a8 26Features:
7d76f312 27
ba1a5515 28* fix alsa mixer restore to not print error when no config is stored
18a5d7ff 29
67370238
LP
30* don't trim empty cgroups
31 https://bugzilla.redhat.com/show_bug.cgi?id=678555
32
abf96c87
LP
33* show enablement status in systemctl status
34
68c7d001
LP
35* write blog stories about:
36 - chroot, nspawn and friends
37 - the blame game: systemd-analyze
38 - enabling dbus services
39 - status update
40
3d57c6ab
LP
41* allow port = 0 in .socket units
42
9d8677da
LP
43* rename systemd-logger to systemd-stdio-syslog-bridge
44
45* introduce /usr/lib/binfmt.d/, /usr/lib/tmpfiles.d/
46
222ae6a8 47* in pam_systemd: don't rely on /proc/self/loginuid in a container (check if audit caps are there)
d7cc2987 48
cca4aeee
LP
49* take BSD file lock on tty devices when using them?
50
7ebdfc93
LP
51* tmpfiles should allow two identical lines
52 https://bugzilla.redhat.com/show_bug.cgi?id=690253
53
16b879e3
KS
54* avoid any flag files, or readahead files in /, we need to support r/o /
55 or / on tmpfs like Android setups.
56
ba1a5515 57* teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
9408a2d2 58
68c7d001
LP
59* get process transport into dbus for systemctl -P/-H
60
ba1a5515 61* document default dependencies
9408a2d2 62
d7cc2987
LP
63* support systemd.whitelist=/systemd.blacklist= on the kernel command
64 line.
65
3f7a8c4e
KS
66* Find a way to replace /var/run, /var/lock directories with
67 symlinks during an RPM package upgrade (filesystem.rpm or systemd.rpm).
68 We soon want to get rid of var-run.mount var-lock.mount units.
69
f9276855
LP
70* when key file cannot be found, read it from kbd in cryptsetup
71
260abb78
LP
72* add switch to systemctl to show enabled but not running services. Or
73 another switch that shows service that have been running since
74 booting but aren't running anymore.
75
76* reuse mkdtemp namespace dirs in /tmp?
77
3f7a8c4e 78* don't strip facility from kmsg log messages as soon as that is possible:
a49408ec 79 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=9d90c8d9cde929cbc575098e825d7c29d9f45054
7d9e57d2 80
260abb78 81* recreate systemd's D-Bus private socket file on SIGUSR2
2791a8f8 82
7d9e57d2 83* be more specific what failed:
3f7a8c4e 84 ...
7d9e57d2
KS
85 Unmounting file systems.
86 Not all file systems unmounted, 1 left.
87 Disabling swaps.
88 Detaching loop devices.
89 Detaching DM devices.
90 Cannot finalize remaining file systems and devices, trying to kill remaining processes.
91 Unmounting file systems.
92 Not all file systems unmounted, 1 left.
93 Cannot finalize remaining file systems and devices, giving up.
3f7a8c4e 94 ...
2791a8f8 95
a49408ec
KS
96* check for compiled-in, but not active selinux, and don't print any warnings
97 about policy loading. Probably check for available selinux in /proc/filesystems,
98 and check for active selinux with getcon_raw() == "kernel"
99
099663ff
LP
100* optionally create watched directories in .path units
101
a8f11321
LP
102* Support --test based on current system state
103
81253930
LP
104* consider services with no [Install] section and stored in /lib enabled by "systemctl is-enabled"
105
106* consider services with any kind of link in /etc/systemd/system enabled
7fc7012b 107
430c18ed 108* show failure error string in "systemctl status"
1a6f4df6
LP
109
110* make sure timeouts are applied to Type=oneshot services.
111
a49408ec 112* Maybe implement "systemctl mask" and "systemctl unmask", but not
3db48a78
LP
113 document it? When doing that add switch to make this temporary by
114 placing mask links in /dev.
a49408ec
KS
115 Consider moving the actual fs operations into systemd behind a D-Bus
116 interface, to make namespaces/containers/remote connections work properly.
3db48a78 117
2e0d98fa
LP
118* detect LXC environment
119
62170515 120* invoke vhangup() before and after invoking getty
a49408ec 121 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=3c95c985fa91ecf6a0e29622bbdd13dcfc5ce9f1
62170515 122
b5c6cf87
LP
123* support "auto" and "comment=systemd.automount" at the same time for an fstab entry
124
3185a36b 125* Maybe store in unit files whether a service should be enabled by default on package installation
7d9e57d2 126 (belongs into a distro pattern though, not in an upstream package's service file)
3185a36b 127
b8bb3e8f
LP
128* perhaps add "systemctl reenable" as combination of "systemctl disable" and "systemctl enable"
129
f959c5e6
LP
130* need a way to apply mount options of api vfs from systemd unit files
131 (or some other modern source?) instead of fstab
7f6d6135 132
c32e0c40
LP
133* maybe introduce ExecRestartPre=
134
47ae6e67
LP
135* figure out what happened to bluez patch
136
487a15bb
LP
137* Patch systemd-fsck to use -C and pass console fd to it
138
ba1a5515 139* support remote/ssh systemctl/systemadm, and local privileged access → dbus patches need to be merged
2c4b304e 140
35f10fcc
LP
141* configurable jitter for timer events
142
bf5bb531 143* Support ProcessNeededForShutdown=true to allow stuff like mdmon
f959c5e6 144 to be killed very late after the rootfs is read only (?)
bf5bb531
KS
145
146* Integrate "mdadm --wait-clean". Maybe just let SIGTERM to mdmon trigger the
147 needed action
148
59fee421
LP
149* dot output for --test showing the 'initial transaction'
150
8c6db833 151* calendar time support in timer, iCalendar semantics for the timer stuff (RFC2445)
351c7e74
KS
152 - check timerfd() patch: http://lkml.org/lkml/2010/11/23/290
153
154* systemd --user
155 - get PR_SET_ANCHOR merged: http://lkml.org/lkml/2010/2/2/165
156
157* add VT tracking:
a49408ec
KS
158 - provide CK functionality
159 - start getty only when actual vt switch happens (same model as
160 socket on-demand activation). allocate the next free tty and
161 start a getty there. this way, pressing alt-f[1-12] will switch
162 through running X and getty sessions, and any unallocated
163 activated tty will start a new getty. the hardcoding of
164 getty[1-6] will entirely go away.
165 - http://git.kernel.org/?p=linux/kernel/git/gregkh/tty-2.6.git;a=commitdiff;h=fbc92a3455577ab17615cbcb91826399061bd789
75787bb7 166
129126f3 167* implicitly import "defaults" settings file into all types
75787bb7 168
129126f3 169* port over to LISTEN_FDS/LISTEN_PID:
7d9e57d2
KS
170 - uuidd HAVEPATCH
171 - rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
172 - cups HAVEPATCH
a625ac1a 173 - postfix, saslauthd
a625ac1a
LP
174 - apache/samba
175 - libvirtd (/var/run/libvirt/libvirt-sock-ro)
176 - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
a625ac1a
LP
177 - distccd
178
68c7d001 179* fingerprint.target, wireless.target, gps.target, netdevice.target
0ff3dea7 180
647703fe 181* set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
246756ca 182
50f2a90d 183* io priority during initialization
8fe914ec 184
74ac3cbd 185* if a service fails too often, make the service enter failed mode, and the socket, too.
ea4a240d 186
647703fe 187* systemctl list-jobs - show dependencies
63090775 188
313ed05b 189* accountsservice is borked
63090775 190
20604ebc
LP
191* auditd service files
192
20604ebc
LP
193* add systemctl switch to dump transaction without executing it
194
7d9e57d2 195* suspend, resume support?
da726a4d 196
1a34d367
LP
197* readahead: btrfs/LVM SSD detection
198
ed1c99fc 199* add separate man page for [Install] settings
98e1f931 200
42e8a0a8
LP
201* allow runtime changing of log level and target
202
2f8cd170 203External:
74fe1fe3 204
f959c5e6
LP
205* udisks should not use udisks-part-id, instead use blkid. also not probe /dev/loopxxx
206
207* snd-seq should go, https://bugzilla.redhat.com/show_bug.cgi?id=676095
208
7d9e57d2 209* gnome-shell python script/glxinfo/is-accelerated must die
f959c5e6 210
74fe1fe3
LP
211* make cryptsetup lower --iter-time
212
06ae4bfe
LP
213* patch kernel for xattr support in /dev, /proc/, /sys and /sys/fs/cgroup.
214
6f3f9deb 215* patch kernel for cpu feature modalias for autoloading aes/kvm/...
fc84026d 216 http://git.kernel.org/?p=linux/kernel/git/ak/linux-misc-2.6.git;a=shortlog;h=refs/heads/cpuid-match
7d9e57d2 217 (Rafael J. Wysocki's sysdev rework is on the way. After that CPUs can be exported a proper bus.)
6f3f9deb 218
26192dfc
LP
219* procps, psmisc, sysvinit-tools, hostname → util-linux-ng
220
50f2a90d
LP
221https://bugzilla.redhat.com/show_bug.cgi?id=614245 -- plymouth
222https://bugzilla.redhat.com/show_bug.cgi?id=612789 -- umount /cgroup on halt
223https://bugzilla.redhat.com/show_bug.cgi?id=612728 -- /etc/rc.d/init.d/functions
224https://bugzilla.redhat.com/show_bug.cgi?id=612712 -- pam_systemd
225https://bugs.freedesktop.org/show_bug.cgi?id=29193 -- accountsservice
226https://bugs.freedesktop.org/show_bug.cgi?id=29194 -- ConsoleKit
5e5c6cd7
LP
227https://bugs.freedesktop.org/show_bug.cgi?id=29205 -- udisks
228http://article.gmane.org/gmane.linux.bluez.kernel/6479 -- bluez
50f2a90d 229http://www.spinics.net/lists/linux-nfs/msg14371.html -- rpcbind
b5e9dba8
LP
230https://bugzilla.redhat.com/show_bug.cgi?id=617328 -- ntp
231https://bugzilla.redhat.com/show_bug.cgi?id=617320 -- at
232https://bugzilla.redhat.com/show_bug.cgi?id=617326 -- fprintd
233https://bugzilla.redhat.com/show_bug.cgi?id=617333 -- yum
234https://bugzilla.redhat.com/show_bug.cgi?id=617317 -- acpid
235https://bugzilla.redhat.com/show_bug.cgi?id=617327 -- gpm
236https://bugzilla.redhat.com/show_bug.cgi?id=617330 -- pcsc-lite
237https://bugzilla.redhat.com/show_bug.cgi?id=617321 -- audit
02ee865a 238https://bugzilla.redhat.com/show_bug.cgi?id=617316 -- abrt
14bd37fe 239
129126f3 240Regularly:
874aa2cc 241
129126f3 242* look for close() vs. close_nointr() vs. close_nointr_nofail()
5021be21 243
129126f3 244* check for strerror(r) instead of strerror(-r)
5b6319dc
LP
245
246* Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
8c6db833
LP
247
248* %m in printf() instead of strerror();
444a79d3
LP
249
250* pahole
251
252* CFLAGS="-Wl,--gc-sections -Wl,--print-gc-sections -ffunction-sections -fdata-sections"