]> git.ipfire.org Git - thirdparty/systemd.git/blame - TODO
build-sys: Add i18n support through intltool
[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
7b3afbac
LP
23* Remove kill_mode parameter to kill bus calls
24
a4c279f8
LP
25* Fix nspawn to not read-only mount /selinux on the host system
26
27* make sure people don't leave processes around after ExecStartPre=
28
29* make sure systemd-ask-password-wall does not shutdown systemd-ask-password-console too early
30
8092a428 31* add loginctl, i.e. a systemctl for logind introspection
4e002583 32
8092a428 33* support presets
5db35d06 34
0a31730e
LP
35* kernel: add /proc/sys file exposing CAP_LAST_CAP?
36
359306df
KS
37* kernel: add device_type = "fb", "fbcon" to class "graphics"
38
b5ef5549
LP
39* understand https://bugzilla.redhat.com/show_bug.cgi?id=672194
40
d3fc81bd
LP
41* readahead: use BTRFS_IOC_DEFRAG_RANGE instead of BTRFS_IOC_DEFRAG ioctl, with START_IO
42
43* readahead: check whether a btrfs volume includes ssd by checking mount flag "ssd"
44
8d0e38a2
LP
45* support sd_notify() style notificatio when reload is finished (RELOADED=1)
46
f28f1daf
LP
47* verify that the AF_UNIX sockets of a service in the fs still exist
48 when we start a service in order to avoid confusion when a user
49 assumes starting a service is enough to make it accessible
50
88a07670
LP
51* Make it possible to set the keymap independently from the font on
52 the kernel cmdline. Right now setting one resets also the other.
53
6ea832a2 54* add dbus call to convert snapshot into target
c2a14cf0 55
916abb21
LP
56* move nss-myhostname into systemd
57
58* figure out a standard place to configure timezone name, inform myllynen@redhat.com
59
31a5f880 60* add dbus call to convert snapshot into target, and a dbus call to generate target from current state
916abb21 61
4ecda405
LP
62* detect LXC with $container=lxc
63
fb389e05
LP
64* add prefix match to sysctl, tmpfiles, ...
65
b23de6af
LP
66* drop /.readahead on bigger upgrades with yum
67
24a73f51 68* add inode stat() check to readahead to suppress preloading changed files
b4bd5144 69
6ea832a2 70* allow list of paths in config_parse_condition_path()
adf70c5e 71
ecb963cc
LP
72* introduce dbus calls for enabling/disabling a service
73
74* support notifications for services being enabled/disabled
75
31a5f880
LP
76* show enablement status in systemctl status
77
78* consider services with any kind of link in /etc/systemd/system enabled
79
80* teach systemctl to enable unit files in arbitrary directories
81
82* In systemctl make sure both is-enabled and is-active print a string, or neither.
83
84* Implement:
85 systemctl mask <unit>
86 systemctl unmask <unit>
87 Also support --temp to make this temporary by placing mask links in /run.
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
8003c705
LP
103* fix upstart reboot compat call
104
c798c40e
LP
105* when failing to start a service due to ratelimiting, try again later, if restart=always is set
106
68c7d001 107* write blog stories about:
68c7d001
LP
108 - enabling dbus services
109 - status update
2121dcdd 110 - /etc/sysconfig and /etc/default
73090dc8 111
44143309 112* allow port=0 in .socket units
3d57c6ab 113
9d8677da
LP
114* rename systemd-logger to systemd-stdio-syslog-bridge
115
cca4aeee
LP
116* take BSD file lock on tty devices when using them?
117
16b879e3
KS
118* avoid any flag files, or readahead files in /, we need to support r/o /
119 or / on tmpfs like Android setups.
120
b9a2a36b
LP
121* move readahead files into /var, look for them with .path units
122
ba1a5515 123* teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
9408a2d2 124
68c7d001
LP
125* get process transport into dbus for systemctl -P/-H
126
ba1a5515 127* document default dependencies
9408a2d2 128
d7cc2987
LP
129* support systemd.whitelist=/systemd.blacklist= on the kernel command
130 line.
131
3f7a8c4e
KS
132* Find a way to replace /var/run, /var/lock directories with
133 symlinks during an RPM package upgrade (filesystem.rpm or systemd.rpm).
619c2581 134 (lua code to create symlinks right away for new installations is in filesytem.rpm now)
b9a2a36b 135 We soon want to get rid of var-run.mount var-lock.mount units:
619c2581
KS
136 if mountpoint /run ; then
137 umount /var/run || :
138 else
139 mount --move /var/run /run || mount --bind /var/run /run
140 fi
141 mv /var/run /var/.run.save
142 ln -s /run /var/run
143 echo "R /var/.run.save" > /etc/tmpfiles.d/remove-run-save.conf
3f7a8c4e 144
f9276855
LP
145* when key file cannot be found, read it from kbd in cryptsetup
146
260abb78
LP
147* add switch to systemctl to show enabled but not running services. Or
148 another switch that shows service that have been running since
149 booting but aren't running anymore.
150
151* reuse mkdtemp namespace dirs in /tmp?
152
260abb78 153* recreate systemd's D-Bus private socket file on SIGUSR2
2791a8f8 154
7d9e57d2 155* be more specific what failed:
3f7a8c4e 156 ...
7d9e57d2
KS
157 Unmounting file systems.
158 Not all file systems unmounted, 1 left.
159 Disabling swaps.
160 Detaching loop devices.
161 Detaching DM devices.
162 Cannot finalize remaining file systems and devices, trying to kill remaining processes.
163 Unmounting file systems.
164 Not all file systems unmounted, 1 left.
165 Cannot finalize remaining file systems and devices, giving up.
3f7a8c4e 166 ...
2791a8f8 167
a49408ec
KS
168* check for compiled-in, but not active selinux, and don't print any warnings
169 about policy loading. Probably check for available selinux in /proc/filesystems,
170 and check for active selinux with getcon_raw() == "kernel"
171
a8f11321
LP
172* Support --test based on current system state
173
430c18ed 174* show failure error string in "systemctl status"
1a6f4df6
LP
175
176* make sure timeouts are applied to Type=oneshot services.
177
2e0d98fa
LP
178* detect LXC environment
179
21bdae12
LP
180* investigate whether the gnome pty helper should be moved into systemd, to provide cgroup support.
181
b8bb3e8f
LP
182* perhaps add "systemctl reenable" as combination of "systemctl disable" and "systemctl enable"
183
f959c5e6 184* need a way to apply mount options of api vfs from systemd unit files
b9a2a36b 185 (or some other modern source?) instead of fstab?
7f6d6135 186
c32e0c40
LP
187* maybe introduce ExecRestartPre=
188
47ae6e67
LP
189* figure out what happened to bluez patch
190
487a15bb
LP
191* Patch systemd-fsck to use -C and pass console fd to it
192
35f10fcc
LP
193* configurable jitter for timer events
194
3d3961f2
LP
195* Support ProcessNeededForShutdown=true to allow stuff like mdmon to
196 be killed very late after the rootfs is read only? If implement pass
197 this to shutdown binary via command line argument.
bf5bb531 198
0ecb9427
KS
199* use pivot_root on shutdown so that we can unmount the root directory.
200 - copy binaries to, and pivot_root() to the "shutdown tmpfs"
201 - solve "mdadm --wait-clean" problem that way
bf5bb531 202
59fee421
LP
203* dot output for --test showing the 'initial transaction'
204
8c6db833 205* calendar time support in timer, iCalendar semantics for the timer stuff (RFC2445)
8bf7fea5 206 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=99ee5315dac6211e972fa3f23bcc9a0343ff58c4
351c7e74
KS
207
208* systemd --user
209 - get PR_SET_ANCHOR merged: http://lkml.org/lkml/2010/2/2/165
210
211* add VT tracking:
a49408ec
KS
212 - provide CK functionality
213 - start getty only when actual vt switch happens (same model as
214 socket on-demand activation). allocate the next free tty and
215 start a getty there. this way, pressing alt-f[1-12] will switch
216 through running X and getty sessions, and any unallocated
217 activated tty will start a new getty. the hardcoding of
218 getty[1-6] will entirely go away.
8bf7fea5 219 - http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fbc92a3455577ab17615cbcb91826399061bd789
75787bb7 220
129126f3 221* implicitly import "defaults" settings file into all types
75787bb7 222
129126f3 223* port over to LISTEN_FDS/LISTEN_PID:
7d9e57d2
KS
224 - uuidd HAVEPATCH
225 - rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
226 - cups HAVEPATCH
a625ac1a 227 - postfix, saslauthd
a625ac1a
LP
228 - apache/samba
229 - libvirtd (/var/run/libvirt/libvirt-sock-ro)
230 - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
a625ac1a
LP
231 - distccd
232
68c7d001 233* fingerprint.target, wireless.target, gps.target, netdevice.target
0ff3dea7 234
647703fe 235* set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
246756ca 236
50f2a90d 237* io priority during initialization
8fe914ec 238
74ac3cbd 239* if a service fails too often, make the service enter failed mode, and the socket, too.
ea4a240d 240
647703fe 241* systemctl list-jobs - show dependencies
63090775 242
20604ebc
LP
243* auditd service files
244
20604ebc
LP
245* add systemctl switch to dump transaction without executing it
246
7d9e57d2 247* suspend, resume support?
da726a4d 248
1a34d367
LP
249* readahead: btrfs/LVM SSD detection
250
ed1c99fc 251* add separate man page for [Install] settings
98e1f931 252
42e8a0a8
LP
253* allow runtime changing of log level and target
254
9534ce54
LP
255* drop cap bounding set in readahead and other services
256
2f8cd170 257External:
74fe1fe3 258
f959c5e6
LP
259* udisks should not use udisks-part-id, instead use blkid. also not probe /dev/loopxxx
260
261* snd-seq should go, https://bugzilla.redhat.com/show_bug.cgi?id=676095
262
7d9e57d2 263* gnome-shell python script/glxinfo/is-accelerated must die
f959c5e6 264
74fe1fe3
LP
265* make cryptsetup lower --iter-time
266
44143309 267* patch kernel for xattr support in /dev, /proc/, /sys and /sys/fs/cgroup?
06ae4bfe 268
6f3f9deb 269* patch kernel for cpu feature modalias for autoloading aes/kvm/...
fc84026d 270 http://git.kernel.org/?p=linux/kernel/git/ak/linux-misc-2.6.git;a=shortlog;h=refs/heads/cpuid-match
7d9e57d2 271 (Rafael J. Wysocki's sysdev rework is on the way. After that CPUs can be exported a proper bus.)
6f3f9deb 272
26192dfc
LP
273* procps, psmisc, sysvinit-tools, hostname → util-linux-ng
274
50f2a90d
LP
275https://bugzilla.redhat.com/show_bug.cgi?id=614245 -- plymouth
276https://bugzilla.redhat.com/show_bug.cgi?id=612789 -- umount /cgroup on halt
277https://bugzilla.redhat.com/show_bug.cgi?id=612728 -- /etc/rc.d/init.d/functions
278https://bugzilla.redhat.com/show_bug.cgi?id=612712 -- pam_systemd
279https://bugs.freedesktop.org/show_bug.cgi?id=29193 -- accountsservice
280https://bugs.freedesktop.org/show_bug.cgi?id=29194 -- ConsoleKit
5e5c6cd7
LP
281https://bugs.freedesktop.org/show_bug.cgi?id=29205 -- udisks
282http://article.gmane.org/gmane.linux.bluez.kernel/6479 -- bluez
50f2a90d 283http://www.spinics.net/lists/linux-nfs/msg14371.html -- rpcbind
b5e9dba8
LP
284https://bugzilla.redhat.com/show_bug.cgi?id=617328 -- ntp
285https://bugzilla.redhat.com/show_bug.cgi?id=617320 -- at
286https://bugzilla.redhat.com/show_bug.cgi?id=617326 -- fprintd
287https://bugzilla.redhat.com/show_bug.cgi?id=617333 -- yum
288https://bugzilla.redhat.com/show_bug.cgi?id=617317 -- acpid
289https://bugzilla.redhat.com/show_bug.cgi?id=617327 -- gpm
290https://bugzilla.redhat.com/show_bug.cgi?id=617330 -- pcsc-lite
291https://bugzilla.redhat.com/show_bug.cgi?id=617321 -- audit
02ee865a 292https://bugzilla.redhat.com/show_bug.cgi?id=617316 -- abrt
14bd37fe 293
129126f3 294Regularly:
874aa2cc 295
129126f3 296* look for close() vs. close_nointr() vs. close_nointr_nofail()
5021be21 297
129126f3 298* check for strerror(r) instead of strerror(-r)
5b6319dc
LP
299
300* Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
8c6db833
LP
301
302* %m in printf() instead of strerror();
444a79d3
LP
303
304* pahole
305
306* CFLAGS="-Wl,--gc-sections -Wl,--print-gc-sections -ffunction-sections -fdata-sections"