]> git.ipfire.org Git - thirdparty/systemd.git/blame - TODO
Link against -lcap only where required
[thirdparty/systemd.git] / TODO
CommitLineData
8bf7fea5
KS
1* udev-kernel.socket + udev.control.socket seems not
2 to work, udevd is started but no fd is passed
3
b7ff1e47
LP
4F15:
5
c904f64d
LP
6* swap units that are activated by one name but shown in the kernel under another are semi-broken
7
b0a3f2bc
LP
8F15 External:
9
7d640cdf 10* NFS, networkmanager ordering issue (PENDING)
62170515 11
f80781ea
LP
12* NM should pull in network.target (PENDING)
13 https://bugzilla.redhat.com/show_bug.cgi?id=692008
14
222ae6a8
LP
15* bluetooth should be possible to disable (PENDING)
16
05677bb7 17* make anaconda write timeout=0 for encrypted devices
73090dc8 18
235b2826
KS
19* fix broken Sockets=syslog-ng.socket packaging
20
222ae6a8 21Features:
53907215 22
35c5c7a0
LP
23* add profiling to unit loading code
24
25* add gperf support for unit file parsing table
26
ddd88763
LP
27* fix CUPS .path unit for globbing
28
034a2a52
LP
29* move PAM code into its own binary
30
74b91131
LP
31* logind: ensure ACLs are updated on login and logout
32
576a01c8
LP
33* warn if the user stops a service but not its associated socket
34
0a55b298
LP
35* ensure we always set the facility when logging to kmsg
36
37* service: pid file reading after reload doesn't work, since we don't reset the pid variable
38
97f73ffb
LP
39* logind: spawn user@..service on login
40
85f248b2
LP
41* logind: non-local X11 server handling
42
253ee27a 43* logind: use sysfs path in device hash table instead of sysname, as soon as fb driver is fixed
85f248b2 44
1258097c
LP
45* implement Register= switch in .socket units to enable registration
46 in Avahi, RPC and other socket registration services.
47
a4c279f8
LP
48* make sure people don't leave processes around after ExecStartPre=
49
50* make sure systemd-ask-password-wall does not shutdown systemd-ask-password-console too early
51
0a31730e
LP
52* kernel: add /proc/sys file exposing CAP_LAST_CAP?
53
359306df
KS
54* kernel: add device_type = "fb", "fbcon" to class "graphics"
55
b5ef5549
LP
56* understand https://bugzilla.redhat.com/show_bug.cgi?id=672194
57
d3fc81bd
LP
58* readahead: use BTRFS_IOC_DEFRAG_RANGE instead of BTRFS_IOC_DEFRAG ioctl, with START_IO
59
60* readahead: check whether a btrfs volume includes ssd by checking mount flag "ssd"
61
253ee27a
LP
62* support sd_notify() style notification when reload is finished (RELOADED=1)
63
64* support sf_notify() style notification when shutting down, to make auto-exit bus services work
8d0e38a2 65
f28f1daf
LP
66* verify that the AF_UNIX sockets of a service in the fs still exist
67 when we start a service in order to avoid confusion when a user
68 assumes starting a service is enough to make it accessible
69
88a07670
LP
70* Make it possible to set the keymap independently from the font on
71 the kernel cmdline. Right now setting one resets also the other.
72
916abb21
LP
73* move nss-myhostname into systemd
74
75* figure out a standard place to configure timezone name, inform myllynen@redhat.com
76
31a5f880 77* add dbus call to convert snapshot into target, and a dbus call to generate target from current state
916abb21 78
4ecda405
LP
79* detect LXC with $container=lxc
80
b23de6af
LP
81* drop /.readahead on bigger upgrades with yum
82
24a73f51 83* add inode stat() check to readahead to suppress preloading changed files
b4bd5144 84
6ea832a2 85* allow list of paths in config_parse_condition_path()
adf70c5e 86
31a5f880
LP
87* show enablement status in systemctl status
88
21bdae12
LP
89* add support for /bin/mount -s
90
9534ce54
LP
91* GC unreferenced jobs (such as .device jobs)
92
2076cf88
LP
93* add JoinControllers= to system.conf to mount certain cgroup
94 controllers together in order to guarantee atomic creation/addition
95 of cgroups
96
73090dc8 97* avoid DefaultStandardOutput=syslog to have any effect on StandardInput=socket services
19bc719e
LP
98
99* cgroup_notify_empty(): recursively check groups up the tree, too
73090dc8 100
ba1a5515 101* fix alsa mixer restore to not print error when no config is stored
18a5d7ff 102
c798c40e
LP
103* when failing to start a service due to ratelimiting, try again later, if restart=always is set
104
68c7d001 105* write blog stories about:
68c7d001
LP
106 - enabling dbus services
107 - status update
7a2a0b90 108 - how to make changes to sysctl and sysfs attributes
253ee27a 109 - remote access
5d0fcd7c
LP
110 - cgroup best pratices to avoid stepping on each others toes
111 - how to pass throw-away units to systemd, or dynamically change properties of existing units
112 - how to integrate cgconfig and suchlike with systemd
73090dc8 113
44143309 114* allow port=0 in .socket units
3d57c6ab 115
9d8677da
LP
116* rename systemd-logger to systemd-stdio-syslog-bridge
117
cca4aeee
LP
118* take BSD file lock on tty devices when using them?
119
16b879e3
KS
120* avoid any flag files, or readahead files in /, we need to support r/o /
121 or / on tmpfs like Android setups.
122
b9a2a36b
LP
123* move readahead files into /var, look for them with .path units
124
ba1a5515 125* teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
9408a2d2 126
68c7d001
LP
127* get process transport into dbus for systemctl -P/-H
128
ba1a5515 129* document default dependencies
9408a2d2 130
d7cc2987
LP
131* support systemd.whitelist=/systemd.blacklist= on the kernel command
132 line.
133
3f7a8c4e
KS
134* Find a way to replace /var/run, /var/lock directories with
135 symlinks during an RPM package upgrade (filesystem.rpm or systemd.rpm).
619c2581 136 (lua code to create symlinks right away for new installations is in filesytem.rpm now)
b9a2a36b 137 We soon want to get rid of var-run.mount var-lock.mount units:
619c2581
KS
138 if mountpoint /run ; then
139 umount /var/run || :
140 else
141 mount --move /var/run /run || mount --bind /var/run /run
142 fi
143 mv /var/run /var/.run.save
144 ln -s /run /var/run
145 echo "R /var/.run.save" > /etc/tmpfiles.d/remove-run-save.conf
3f7a8c4e 146
f9276855
LP
147* when key file cannot be found, read it from kbd in cryptsetup
148
260abb78
LP
149* add switch to systemctl to show enabled but not running services. Or
150 another switch that shows service that have been running since
151 booting but aren't running anymore.
152
153* reuse mkdtemp namespace dirs in /tmp?
154
260abb78 155* recreate systemd's D-Bus private socket file on SIGUSR2
2791a8f8 156
7d9e57d2 157* be more specific what failed:
3f7a8c4e 158 ...
7d9e57d2
KS
159 Unmounting file systems.
160 Not all file systems unmounted, 1 left.
161 Disabling swaps.
162 Detaching loop devices.
163 Detaching DM devices.
164 Cannot finalize remaining file systems and devices, trying to kill remaining processes.
165 Unmounting file systems.
166 Not all file systems unmounted, 1 left.
167 Cannot finalize remaining file systems and devices, giving up.
3f7a8c4e 168 ...
2791a8f8 169
a49408ec
KS
170* check for compiled-in, but not active selinux, and don't print any warnings
171 about policy loading. Probably check for available selinux in /proc/filesystems,
172 and check for active selinux with getcon_raw() == "kernel"
173
a8f11321
LP
174* Support --test based on current system state
175
430c18ed 176* show failure error string in "systemctl status"
1a6f4df6
LP
177
178* make sure timeouts are applied to Type=oneshot services.
179
21bdae12
LP
180* investigate whether the gnome pty helper should be moved into systemd, to provide cgroup support.
181
f959c5e6 182* need a way to apply mount options of api vfs from systemd unit files
b9a2a36b 183 (or some other modern source?) instead of fstab?
7f6d6135 184
c32e0c40
LP
185* maybe introduce ExecRestartPre=
186
47ae6e67
LP
187* figure out what happened to bluez patch
188
487a15bb
LP
189* Patch systemd-fsck to use -C and pass console fd to it
190
35f10fcc
LP
191* configurable jitter for timer events
192
3d3961f2
LP
193* Support ProcessNeededForShutdown=true to allow stuff like mdmon to
194 be killed very late after the rootfs is read only? If implement pass
195 this to shutdown binary via command line argument.
bf5bb531 196
59fee421
LP
197* dot output for --test showing the 'initial transaction'
198
8c6db833 199* calendar time support in timer, iCalendar semantics for the timer stuff (RFC2445)
8bf7fea5 200 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=99ee5315dac6211e972fa3f23bcc9a0343ff58c4
351c7e74
KS
201
202* systemd --user
203 - get PR_SET_ANCHOR merged: http://lkml.org/lkml/2010/2/2/165
204
129126f3 205* implicitly import "defaults" settings file into all types
75787bb7 206
129126f3 207* port over to LISTEN_FDS/LISTEN_PID:
7d9e57d2
KS
208 - uuidd HAVEPATCH
209 - rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
210 - cups HAVEPATCH
a625ac1a 211 - postfix, saslauthd
a625ac1a
LP
212 - apache/samba
213 - libvirtd (/var/run/libvirt/libvirt-sock-ro)
214 - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
a625ac1a
LP
215 - distccd
216
68c7d001 217* fingerprint.target, wireless.target, gps.target, netdevice.target
0ff3dea7 218
647703fe 219* set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
246756ca 220
50f2a90d 221* io priority during initialization
8fe914ec 222
74ac3cbd 223* if a service fails too often, make the service enter failed mode, and the socket, too.
ea4a240d 224
647703fe 225* systemctl list-jobs - show dependencies
63090775 226
20604ebc
LP
227* auditd service files
228
20604ebc
LP
229* add systemctl switch to dump transaction without executing it
230
7d9e57d2 231* suspend, resume support?
da726a4d 232
1a34d367
LP
233* readahead: btrfs/LVM SSD detection
234
42e8a0a8
LP
235* allow runtime changing of log level and target
236
9534ce54
LP
237* drop cap bounding set in readahead and other services
238
2f8cd170 239External:
74fe1fe3 240
f959c5e6
LP
241* udisks should not use udisks-part-id, instead use blkid. also not probe /dev/loopxxx
242
243* snd-seq should go, https://bugzilla.redhat.com/show_bug.cgi?id=676095
244
7d9e57d2 245* gnome-shell python script/glxinfo/is-accelerated must die
f959c5e6 246
74fe1fe3
LP
247* make cryptsetup lower --iter-time
248
44143309 249* patch kernel for xattr support in /dev, /proc/, /sys and /sys/fs/cgroup?
06ae4bfe 250
6f3f9deb 251* patch kernel for cpu feature modalias for autoloading aes/kvm/...
fc84026d 252 http://git.kernel.org/?p=linux/kernel/git/ak/linux-misc-2.6.git;a=shortlog;h=refs/heads/cpuid-match
7d9e57d2 253 (Rafael J. Wysocki's sysdev rework is on the way. After that CPUs can be exported a proper bus.)
6f3f9deb 254
26192dfc
LP
255* procps, psmisc, sysvinit-tools, hostname → util-linux-ng
256
50f2a90d
LP
257https://bugzilla.redhat.com/show_bug.cgi?id=614245 -- plymouth
258https://bugzilla.redhat.com/show_bug.cgi?id=612789 -- umount /cgroup on halt
259https://bugzilla.redhat.com/show_bug.cgi?id=612728 -- /etc/rc.d/init.d/functions
260https://bugzilla.redhat.com/show_bug.cgi?id=612712 -- pam_systemd
261https://bugs.freedesktop.org/show_bug.cgi?id=29193 -- accountsservice
262https://bugs.freedesktop.org/show_bug.cgi?id=29194 -- ConsoleKit
5e5c6cd7
LP
263https://bugs.freedesktop.org/show_bug.cgi?id=29205 -- udisks
264http://article.gmane.org/gmane.linux.bluez.kernel/6479 -- bluez
50f2a90d 265http://www.spinics.net/lists/linux-nfs/msg14371.html -- rpcbind
b5e9dba8
LP
266https://bugzilla.redhat.com/show_bug.cgi?id=617328 -- ntp
267https://bugzilla.redhat.com/show_bug.cgi?id=617320 -- at
268https://bugzilla.redhat.com/show_bug.cgi?id=617326 -- fprintd
269https://bugzilla.redhat.com/show_bug.cgi?id=617333 -- yum
270https://bugzilla.redhat.com/show_bug.cgi?id=617317 -- acpid
271https://bugzilla.redhat.com/show_bug.cgi?id=617327 -- gpm
272https://bugzilla.redhat.com/show_bug.cgi?id=617330 -- pcsc-lite
273https://bugzilla.redhat.com/show_bug.cgi?id=617321 -- audit
02ee865a 274https://bugzilla.redhat.com/show_bug.cgi?id=617316 -- abrt
14bd37fe 275
129126f3 276Regularly:
874aa2cc 277
129126f3 278* look for close() vs. close_nointr() vs. close_nointr_nofail()
5021be21 279
129126f3 280* check for strerror(r) instead of strerror(-r)
5b6319dc
LP
281
282* Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
8c6db833
LP
283
284* %m in printf() instead of strerror();
444a79d3
LP
285
286* pahole
287
288* CFLAGS="-Wl,--gc-sections -Wl,--print-gc-sections -ffunction-sections -fdata-sections"