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