chiark / gitweb /
units: make sure that killall does not wait for the tty
[elogind.git] / fixme
1 * dot output for --test for 'initial description'
2
3 * check 'disable'
4   <Viking-Ice>    "Warning: Unit file changed in disk, 'systemctl --system daemon-reload' recomended
5   <kay>           when does it do that?
6   <Viking-Ice>    if you disable the service
7
8 * fixup var-run/var-lock tmpfs mounts. we need:
9     touch /var/run/utmp
10     chown root:utmp /var/run/utmp
11     mkdir -p /var/lock/subsys
12
13 * downgrade warnings for non-existent services pulled-in
14   by soft dependencies, like:
15     init[1]: Failed to load configuration for isdn.service: No such file or directory
16
17 * somehow fix the start of getty on tty1, which clears the screen, and mixes
18   its output with systemd bootup messages
19
20 * have a simple syslog bridge providing /dev/log and forward messages
21   to /dev/kmsg. at the moment the real syslog can be started, the bridge
22   is stopped and the open /dev/log fd to the real syslog. that way we
23   don't lose any early log message, and simple systems have full syslog
24   support in the kernel ringbuffer, without any syslog service or disk
25   access
26
27 * calendar time support in timer, iCalendar semantics for the timer stuff (RFC2445)
28
29 * implicitly import "defaults" settings file into all types
30
31 * add #ifdefs for non-sysv builds
32
33 * reinvestigate random seed, hwclock
34
35 * "disabled" load state?
36
37 * ability to kill services? i.e. in contrast to stopping them, go directly
38   into killing mode?
39
40 * port over to LISTEN_FDS/LISTEN_PID:
41
42    - uuidd    DONE
43    - dbus     DONE
44    - rsyslog  DONE
45    - rpcbind (/var/run/rpcbind.sock!) DONE
46    - cups     DONE
47    - avahi-daemon (/var/run/avahi-daemon/socket) DONE
48    - ssh      CLASSIC
49    - postfix, saslauthd
50    - apache/samba
51    - libvirtd (/var/run/libvirt/libvirt-sock-ro)
52    - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
53    - distccd
54
55 * write utmp record a la upstart for processes
56
57 * follow property change dbus spec
58
59 * selinux policy loading/socket stuff
60
61 * systemctl status $PID, systemctl stop $PID!
62
63 * place /etc/inittab with explaining blurb.
64
65 * vielleicht implizit immer auf syslog dependen?
66
67 * debian deadlock when partition set to noauto
68
69 * fingerprint.target, wireless.target, gps.target
70
71 * set_put(), hashmap_put() return values checken. i.e. == 0 macht kein free()!
72
73 * fix merging in .swap units
74
75 * pahole
76
77 * chkconfig/systemd-install glue
78
79 * io priority during initialization
80
81 * if a service fails too often, make the service enter maintainence mode, and the socket, too.
82
83 * don't show file not found msgs for irrelevant units
84
85 External:
86
87 * sysv functions should color when stdout is tty, not stdin
88
89 * agetty should not modify baudrate
90
91 * ck logging, ssh readahead
92
93 * pam: fix double sudo session cleanup:
94   http://www.gratisoft.us/bugzilla/show_bug.cgi?id=421
95
96 * patch /etc/init.d/functions with:
97
98   if [ $PPID -ne 1 && mountpoint /cgroup/systemd ] ; then echo "You suck!" ; fi
99
100 https://bugzilla.redhat.com/show_bug.cgi?id=614245 -- plymouth
101 https://bugzilla.redhat.com/show_bug.cgi?id=612789 -- umount /cgroup on halt
102 https://bugzilla.redhat.com/show_bug.cgi?id=612728 -- /etc/rc.d/init.d/functions
103 https://bugzilla.redhat.com/show_bug.cgi?id=612712 -- pam_systemd
104 https://bugs.freedesktop.org/show_bug.cgi?id=29193 -- accountsservice
105 https://bugs.freedesktop.org/show_bug.cgi?id=29194 -- ConsoleKit
106 https://bugs.freedesktop.org/show_bug.cgi?id=29205 -- udisks
107 http://article.gmane.org/gmane.linux.bluez.kernel/6479 -- bluez
108 http://www.spinics.net/lists/linux-nfs/msg14371.html -- rpcbind
109
110 Regularly:
111
112 * look for close() vs. close_nointr() vs. close_nointr_nofail()
113
114 * check for strerror(r) instead of strerror(-r)
115
116 * Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
117
118 * %m in printf() instead of strerror();