TODO revision d3a3f22267a7dac426b07a7ed0baa1632f5daf04
2665d7759e63acff0bcd4135678f2cc6f2041d46Christian MaederBugfixes:
9658657e918981d91c8647ed8c220464f10a6235Christian Maeder* check systemd-tmpfiles for selinux context hookup for mknod(), symlink() and similar
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder
e6d40133bc9f858308654afb1262b8b483ec5922Till Mossakowski* swap units that are activated by one name but shown in the kernel under another are semi-broken
d5fe06af711a6912ae028ebf873eada4ee8733f8Christian Maeder
98890889ffb2e8f6f722b00e265a211f13b5a861Corneliu-Claudiu Prodescu* make anaconda write timeout=0 for encrypted devices
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder
3f69b6948966979163bdfe8331c38833d5d90ecdChristian Maeder* Dangling symlinks of .automount unit files in .wants/ directories, set up
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder automount points even when the original .automount file did not exist
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder anymore. Only the .mount unit was still around.
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder
e6d40133bc9f858308654afb1262b8b483ec5922Till Mossakowski* make polkit checks async
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder* properly handle .mount unit state tracking when two mount points are stacked one on top of another on the exact same mount point.
bdeddba30d29f413af1e1ae6b6bab275c017bd98Christian Maeder
b53688bfed888214b485cf76439d57262d80e0a7Christian MaederF18:
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
ae35311385999d91f812155fe99439724d54063bChristian Maeder* Retest multi-seat
46b207daf66b64930a59f3615c8b127aac0b8e43Christian Maeder
3143271856dbf456bd7acc1c07193173f886d986Christian MaederFeatures:
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder* turn unused sysv early-boot stuff like $local-fs, $syslog into a NOP. systemd does
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder no longer support sysv early-boot scripts, these facilities can be silently ignored
78e7910c3360f74f1db172d63d20bb07c64e56e3Christian Maeder
47d6bc7bc9a708427f96be8d805f712697ad3d9eChristian Maeder* re-enable "make check" for gtk-doc (broken for unknown reason)
f9e0b18852b238ddb649d341194e05d7200d1bbeChristian Maeder
697e63e30aa3c309a1ef1f9357745111f8dfc5a9Christian Maeder* logind: make PrepareForSuspend(false) an official api for notification of resumes
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder* ExecStartPre= with an empty string should reset the list of commands to invoke
ad270004874ce1d0697fb30d7309f180553bb315Christian Maeder
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder* refuse instantiation of proc.mount and mount units for all other API fs
520c5bce318eff52d9315f7c4491c3381a0c4336Christian Maeder
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder* "systemctl disable" on a static unit prints no message and does
46b1095ba983ce859e17c2a12f48b50583b7150cChristian Maeder nothing. "systemctl enable" does nothing, and gives a bad message
411392046c2ba1752cde81eaa92a95a2c28b672dChristian Maeder about it. Should fix both to print nice actionable messages.
f8cc2399c16fcda7e3bf9d901a0de0cc8a455f86Ewaryst Schulz
78e7910c3360f74f1db172d63d20bb07c64e56e3Christian Maeder* fstab: add new mount option x-systemd-after=/foobar/waldo to allow manual dependencies to other mount points
78e7910c3360f74f1db172d63d20bb07c64e56e3Christian Maeder https://bugzilla.redhat.com/show_bug.cgi?id=812826
46b207daf66b64930a59f3615c8b127aac0b8e43Christian Maeder
46b1095ba983ce859e17c2a12f48b50583b7150cChristian Maeder* add "loginctl unlock-sessions" as counterpart for "loginctl lock-sessions"
46b1095ba983ce859e17c2a12f48b50583b7150cChristian Maeder
48a98aa04f4c2c1f5f8f79c007e1ff95e699b31aFlorian Mossakowski* extend cgroup attr dbus calls to optionally make changes persistent, and retrieve current kernel values
c8a9d35be2207e0d4fbd26a2411e1ba17e3e4c96Christian Maeder
c2257f94016aeb9e5c3ff3d4d675a81f8f873f0dChristian Maeder* support high-level cgroup setting syntax in systemctl. Example: "systemctl set-cgroup-attr MemoryLimit 5K"
3986813db69106b9bb1b62faa77532af42512a0cChristian Maeder
3986813db69106b9bb1b62faa77532af42512a0cChristian Maeder* print a nicer explanation if people use variable/specifier expansion in ExecStart= for the first word
3986813db69106b9bb1b62faa77532af42512a0cChristian Maeder
596a8e9039bd2f42c09cc0da4a57c8073f96fbddChristian Maeder* kernel cmdline switch to turn off predictable network interface names
596a8e9039bd2f42c09cc0da4a57c8073f96fbddChristian Maeder
596a8e9039bd2f42c09cc0da4a57c8073f96fbddChristian Maeder* mount: turn dependency information from /proc/self/mountinfo into dependency information between systemd units.
46b1095ba983ce859e17c2a12f48b50583b7150cChristian Maeder
e982190515f83fe6615436530ebe89bb320770d6Christian Maeder* udev: remove all (misguided from day 1) userspace firmware_class handling
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettich* logind: optionally, ignore idle-hint logic for autosuspend, block suspend as long as a session is around
08d506ebb78da1e8656a73a349492e042f4c9f72Christian Maeder
d27d203b3f42f0e0ecea00e3f19f55f66045bd96Christian Maeder* service: when killing a service with SIGKILL always kill all processes, even if for SIGTERM we only killed the main process
46b1095ba983ce859e17c2a12f48b50583b7150cChristian Maeder
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder* exec: when deinitializating a tty device fix the perms and group, too, not only when initializing. Set access mode/gid to 0620/tty.
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder* DeviceAllow/DeviceDeny: disallow everything by default, but whitelist /dev/zero, /dev/null and friends
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder
56440c7ae61e7277a3494452d0165ee52e677b29Christian Maeder* service: watchdog logic: for testing purposes allow ping, but do not require pong
56440c7ae61e7277a3494452d0165ee52e677b29Christian Maeder
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder* journald: when dropping msgs due to ratelimit make sure to write
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder "dropped %u messages" not only when we are about to print the next
56440c7ae61e7277a3494452d0165ee52e677b29Christian Maeder message that works, but alraedy after a short tiemout
9603ad7198b72e812688ad7970e4eac4b553837aKlaus Luettich
1842453990fed8a1bd7a5ac792d7982c1d2bfcd5Christian Maeder* journald: also get thread ID from client, plus thread name
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder
2dcec0e101ddd4169f5323462911e988337c2deeChristian Maeder* check if we can make journalctl by default use --follow mode inside of less if called without args?
0b73fd9cab131c1b25b542007c98b5f8717b1d36Klaus Luettich
9f08800df9da91d444560875167fbf7acb8396edChristian Maeder* Add a verbose mode to "systemctl start" and friends that explains what is being done or not done
333780eae2be9f20fe46dedbf5eb46ffa0cbfd02Christian Maeder
ec25781c1180ea07f66b48c34f93cf5634e9277cChristian Maeder* journal is not closed properly at shutdown when run in a container?
46b1095ba983ce859e17c2a12f48b50583b7150cChristian Maeder
64c2422e1ba0691556a6639e959820add102315cChristian Maeder* journal: when waiting for journal additions in the client always sleep at least 1s or so, in order to minimize wakeups
938677803842b384a91fef21f58f86b8e3188b43Ewaryst Schulz
4c8d3c5a9e938633f6147b5a595b9b93bfca99e6Christian Maeder* When shutdown.target is queued begin with an asynchronous sync()?
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder
63da71bfb4226f504944b293fb77177ebcaea7d4Ewaryst Schulz* add API to close/reopen/get fd for journal client fd in libsystemd-journal.
63da71bfb4226f504944b293fb77177ebcaea7d4Ewaryst Schulz
f8cc2399c16fcda7e3bf9d901a0de0cc8a455f86Ewaryst Schulz* maybe add API to send pairs of iovecs via sd_journal_send
b83ff3749d99d03b641adee264b781039a551addChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* fallback to /dev/log based logging in libsystemd-journal, if we can't log natively?
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
520c5bce318eff52d9315f7c4491c3381a0c4336Christian Maeder* declare the local journal protocol stable in the wiki interface chart
c2257f94016aeb9e5c3ff3d4d675a81f8f873f0dChristian Maeder
0850c3e5fb6285405ebaeb5aa433985203ac892dEwaryst Schulz* journal: reuse XZ context
bdf2e01977470bedcb4425e2dadabc9e9f6ba149Ewaryst Schulz
bdf2e01977470bedcb4425e2dadabc9e9f6ba149Ewaryst Schulz* sd-journal: speed up sd_journal_get_data() with transparent hash table in bg
bdf2e01977470bedcb4425e2dadabc9e9f6ba149Ewaryst Schulz
0850c3e5fb6285405ebaeb5aa433985203ac892dEwaryst Schulz* introduce ntp.service (or suchlike) as symlink that is used to arbitrate between various NTP implementations
bdf2e01977470bedcb4425e2dadabc9e9f6ba149Ewaryst Schulz
bdf2e01977470bedcb4425e2dadabc9e9f6ba149Ewaryst Schulz* timer units should get the ability to trigger when:
938677803842b384a91fef21f58f86b8e3188b43Ewaryst Schulz - CLOCK_REALTIME makes jumps (TFD_TIMER_CANCEL_ON_SET)
0850c3e5fb6285405ebaeb5aa433985203ac892dEwaryst Schulz - DST changes
e49fd57c63845c7806860a9736ad09f6d44dbaedChristian Maeder
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder* update the kernel's TZ (sys_tz) when DST changes
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
bbba6dd86153aacb0f662b182b128df0eb09fd54Christian Maeder* sync down the system time to the RTC when:
bbba6dd86153aacb0f662b182b128df0eb09fd54Christian Maeder - CLOCK_REALTIME makes jumps (the user explicitely requested a time set)
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder - DST/timezone changes && ntp is active && RTC-in-localtime (never do it without ntp)
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder This takes care of syncing ntpdate updates to the RTC, and DST updates for localtime
a43c1a7fa08c12524415386aa13a566cc9e53a4fChristian Maeder mode, it will never touch the RTC if the no reliable time source is active or the
d864f0a0e04e61b5f87963496765eafcf646ed7bChristian Maeder user did not request anything like it.
72079df98b3cb7cc1fd82a0a24984893dcd05ecaEwaryst Schulz
5ca1fe655d7d4e35e59a082b5955b306643329d0Ewaryst Schulz* When we begin with system shutdown all kind of suspend/hibernation should be prohibited until shutdown/reboot
5f2c34b8971f9ca7e63364b69e167851d001168eEwaryst Schulz
5f2c34b8971f9ca7e63364b69e167851d001168eEwaryst Schulz* When we update the kernel all kind of hibernation should be prohibited until shutdown/reboot
bdf2e01977470bedcb4425e2dadabc9e9f6ba149Ewaryst Schulz
0850c3e5fb6285405ebaeb5aa433985203ac892dEwaryst Schulz* hwdb:
5f2c34b8971f9ca7e63364b69e167851d001168eEwaryst Schulz - implement conditional properties (dmi matches)
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder - hwdb --filter=ID_DRIVE_*
4d54e7814b18ce142359c92a5868e6dcff9219b5Christian Maeder - find out what to do for blockdevs and skipping scsi modaliases
ce900a84ed9d9882c64fccbd6300f6b0d67efa82Christian Maeder - move writing code to src/libudev/libudev-hwdb-private.c
48a98aa04f4c2c1f5f8f79c007e1ff95e699b31aFlorian Mossakowski
e49fd57c63845c7806860a9736ad09f6d44dbaedChristian Maeder* if booted in "quiet" mode, and an error happens, turn on status output again, so that the emergency mode isn't totally surprising
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* localectl: add listing support for X11 keymaps, by parsing /usr/share/X11/xkb/rules/xorg.lst
53e165a53dfa59f717588d1f8236c9a763826525Christian Maeder
53e165a53dfa59f717588d1f8236c9a763826525Christian Maeder* libunwind support for coredump pattern hook, and includes this in
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder the message for coredumps. After all, libunwind is now capable to
53e165a53dfa59f717588d1f8236c9a763826525Christian Maeder unwind coredumps since a few weeks ago. This probably requires that
53e165a53dfa59f717588d1f8236c9a763826525Christian Maeder we have nice support for multi-line messages on display in logs-show.c.
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder* figure out relation of --all and --full in the various tools
08d506ebb78da1e8656a73a349492e042f4c9f72Christian Maeder
08d506ebb78da1e8656a73a349492e042f4c9f72Christian Maeder* journal: when writing journal auto-rotate if time jumps backwards
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder
d27d203b3f42f0e0ecea00e3f19f55f66045bd96Christian Maeder* introduce new "journal" group in place of adm? introduce groups for the various mini daemons?
d27d203b3f42f0e0ecea00e3f19f55f66045bd96Christian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* journal: add a setgid "adm" utility to invoke from libsystemd-journal, which passes fds via STDOUT and does PK access
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* journactl: support negative filtering, i.e. FOOBAR!="waldo",
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder and !FOOBAR for events without FOOBAR.
e49fd57c63845c7806860a9736ad09f6d44dbaedChristian Maeder
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder* print nice message from systemctl --failed if there are no entries shown, and hook that into ExecStartPre of rescue.service/emergency.service
e6ac593966607b1da5b619e0f9492d37820eed74Christian Maeder
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder* add libsystemd-password or so to query passwords during boot using the password agent logic
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder
e6ac593966607b1da5b619e0f9492d37820eed74Christian Maeder* journal: when rotating, copy over old acls/access mode
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder* journal: document why we do not give ownership to journal files to the user that created them but use FS ACLs for that
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* journal: send out marker messages every now and then, and immediately sync with fdatasync() afterwards, in order to have hourly guaranteed syncs.
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder
e6ac593966607b1da5b619e0f9492d37820eed74Christian Maeder* journal: when we haven't written anything in a while, sync to disk and mark file as offline, in order to be more often than not in a clean state
e6ac593966607b1da5b619e0f9492d37820eed74Christian Maeder
e6ac593966607b1da5b619e0f9492d37820eed74Christian Maeder* journal-send.c, log.c: when the log socket is clogged, and we drop, count this and write a message about this when it gets unclogged again.
e6ac593966607b1da5b619e0f9492d37820eed74Christian Maeder
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder* If we show an error about a unit (such as not showing up) and it has no Description string, then show a description string generated form the reverse of unit_name_mangle().
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder* fedup: add --unit to systemctl switch-root somehow
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* fedup: don't delete initrd on switch-root
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* fedup: generator
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* journal: find a way to allow dropping history early, based on priority, other rules
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* journal: When used on NFS, check payload hashes
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* journal: When used on NFS make sure wake up sd_journal_wait() every 2s, to handle missing inotify
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder* document that people can use file system ACLs to manage access to journal files, with example
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder
e49fd57c63845c7806860a9736ad09f6d44dbaedChristian Maeder* timedated: export boolean that clarifies whether NTP is even available
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* timedated: refuse time changes when NTP is on
1bc5dccbf0083a620ae1181c717fea75e4af5e5cChristian Maeder
ab9b86500ed66416e1a7c01be54491ed72c7d633Christian Maeder* clean up date formatting and parsing so that all absolute/relative timestamps we format can also be parsed
5382091fd2a705e6f026026e8a6adcd3607bdb9fChristian Maeder
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder* document unit_name_mangle()
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
e6ac593966607b1da5b619e0f9492d37820eed74Christian Maeder* add new command to systemctl: "systemctl system-reexec" which reexecs as many daemons as virtually possible
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* introduce generic AUGMENT_PID=, AUGMENT_DEVICE= fields
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder* deal with sendmail/postfix exclusivity
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* systemctl enable: improve the success messages (i.e. more human readable, less shell-like)
25662bf82f592e3268fddcc2c86e83c203b82e53Ewaryst Schulz
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder* systemctl enable: fail if target to alias into doesn't exist? maybe show how many units are enabled afterwards?
154be5bfac61cf5b61fd1571e7bfc2572c4b546aMihai Codescu
154be5bfac61cf5b61fd1571e7bfc2572c4b546aMihai Codescu* on shutdown: move utmp, wall, audit logic all into PID 1 itself, get rid of systemd-update-utmp-runlevel
25662bf82f592e3268fddcc2c86e83c203b82e53Ewaryst Schulz
21489db35f79507a68ee6e6926e01b8e8ea60c6bChristian Maeder* add "provisioning" instructions to setup an empty /etc + /var
7fe976d9f9c4af1aa7636c568d9919859523de0aChristian Maeder - used to setup a new container from a shared /usr
7fe976d9f9c4af1aa7636c568d9919859523de0aChristian Maeder - superset of tmpfiles model
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder - instructions shipped by packages and stored in /usr/lib/
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder - compose /etc/passwd and /etc/group, copy files
25662bf82f592e3268fddcc2c86e83c203b82e53Ewaryst Schulz - able to create uid + gid used by packages, for file ownership
154be5bfac61cf5b61fd1571e7bfc2572c4b546aMihai Codescu
154be5bfac61cf5b61fd1571e7bfc2572c4b546aMihai Codescu* make repeated alt-ctrl-del presses printing a dump, or even force a reboot without
7fe976d9f9c4af1aa7636c568d9919859523de0aChristian Maeder waiting for the timeout
154be5bfac61cf5b61fd1571e7bfc2572c4b546aMihai Codescu
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder* high level net_prio setting in execution context
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder* Introduce journalctl -b <nr> to show journal messages of a previous boot
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* hostnamed: before returning information from /etc/machine-info.conf check the modification data and reread. Similar for localed, ...
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder* currently x-systemd.timeout is lost in the initrd, since crypttab is copied into dracut, but fstab isn't
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder* WorkingDirectory: support env var replacements like in ExecStart= so that people can use $HOME
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder* refuse boot if /etc/machine-id is not useful (or set taint?)
706201451843aa76b8d862de800570c9838c9910Christian Maeder
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder* nspawn: consider changing users for -u with su, so that NSS resolving works correctly
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder* nspawn: implement personality changes a la linux32(8)
56440c7ae61e7277a3494452d0165ee52e677b29Christian Maeder
56440c7ae61e7277a3494452d0165ee52e677b29Christian Maeder* cryptsetup-generator: warn if the password files are world-readable
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder* cryptsetup-generator: add RequiresMountsFor= to cryptseup service files referencing a file, similar for devices
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder* cryptsetup-generator: allow specification of passwords in crypttab itself
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder
56440c7ae61e7277a3494452d0165ee52e677b29Christian Maeder* document that deps in [Unit] sections ignore Alias= fileds in
ec351e60425e2f99448cb44e933d3828f8025dddChristian Maeder [Install] units of other units, unless those units are disabled
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder* systemctl: when powering down/suspending check for inhibitors, and warn.
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* instantiated [Install] for target units
b085709d4b69dc84724000b7b917f348edfa932eChristian Maeder https://bugs.freedesktop.org/show_bug.cgi?id=54377
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* move debug shell to tty6 and make sure this doesn't break the gettys on tty6
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* move cryptsetup key caching into kernel keyctl?
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder https://bugs.freedesktop.org/show_bug.cgi?id=54982
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder* hw watchdog: optionally try to use the preset watchdog timeout instead of always overriding it
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder https://bugs.freedesktop.org/show_bug.cgi?id=54712
b085709d4b69dc84724000b7b917f348edfa932eChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* after deserializing sockets in socket.c we should reapply sockopts and things
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder
48a98aa04f4c2c1f5f8f79c007e1ff95e699b31aFlorian Mossakowski* make timer units go away after they elapsed
8865728716566f42fa73e7e0bc080ba3225df764Christian Maeder
e49fd57c63845c7806860a9736ad09f6d44dbaedChristian Maeder* http://lists.freedesktop.org/archives/systemd-devel/2012-September/006502.html
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder (network and remote-fs on shutdown)
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder* come up with a nice way to write queue/read_ahead_kb for a block device without interfering with readahead
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder
6c08e47c4275556c18f4f89521bf21fe94c28dd5Christian Maeder* journald: add kernel cmdline option to disable ratelimiting for debug purposes
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder* move PID 1 segfaults to /var/lib/systemd/coredump?
78e7910c3360f74f1db172d63d20bb07c64e56e3Christian Maeder
78e7910c3360f74f1db172d63d20bb07c64e56e3Christian Maeder* Document word splitting syntax for ExecStart= and friends
78e7910c3360f74f1db172d63d20bb07c64e56e3Christian Maeder
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder* create /sbin/init symlinks from the build system
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder* Query Paul Moore about relabelling socket fds while they are open
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
f6b2c6c33c635279973b8f378470da7dbb8ecee8Christian Maeder* journald: check whether it is OK if the client can still modify delivered journal entries
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* journal live copy, based on libneon (client) and libmicrohttpd
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder* system-wide seccomp filter
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* system.conf should have controls for cgroups
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder* bind mount read-only the cgroup tree higher than nspawn
e49fd57c63845c7806860a9736ad09f6d44dbaedChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* allow writing multiple conditions in unit files on one line
938677803842b384a91fef21f58f86b8e3188b43Ewaryst Schulz
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder* explore multiple service instances per listening socket idea
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* testing tool for socket activation: some binary that listens on a socket and passes it on using the usual socket activation protocol to some server.
00df6fd583c19393fa141d5a0e21ac74c7bf5b19Christian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* shutdown: don't read-only mount anything when running in container
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder* nspawn: --read-only is not applied recursively to submounts
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder* MountFlags=shared acts as MountFlags=slave right now.
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder
bc263f610d20a9cd3014ddfca903026127fa0d48Christian Maeder* ReadOnlyDirectories= is not applied recursively to submounts
938677803842b384a91fef21f58f86b8e3188b43Ewaryst Schulz
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder* drop PID 1 reloading, only do reexecing (difficult: Reload()
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder currently is properly synchronous, Reexec() is weird, because we
56440c7ae61e7277a3494452d0165ee52e677b29Christian Maeder can't delay the response properly until we are back, so instead of
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder being properly synchronous we just keep open the fd and close it
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder when done. That means clients don't get a successful method reply,
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder but much rather a disconnect on success.
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder
00df6fd583c19393fa141d5a0e21ac74c7bf5b19Christian Maeder* document that service reload may be implemented as service reexec
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* remember which condition failed for services, not just the fact that something failed
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder* use opterr = 0 for all getopt tools
ef2affdc0cdf3acd5c051597c04ab9b08a346a7dChristian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* properly handle loop back mounts via fstab, especially regards to fsck/passno
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder
1937dccb04b363364f7a7de17fdaae1d70583af9Christian Maeder* allow services with no ExecStart= but with an ExecStop=
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder
4067eba4f5605d9569d78085deb1a27f08ac34e2Christian Maeder* add proper journal support to "systemctl --user status ..."
00df6fd583c19393fa141d5a0e21ac74c7bf5b19Christian Maeder
00df6fd583c19393fa141d5a0e21ac74c7bf5b19Christian Maeder* add _SYSTEMD_USER_UNIT= field to journal entries
411392046c2ba1752cde81eaa92a95a2c28b672dChristian Maeder
ef4c609cebc5260771dae6e4f3a54a8959e81ed9Christian Maeder* dracut-shutdown needs to be ordered before unmounting /boot
180ab8c3df8cb0c88f0e881bca93354df6b5d560Christian Maeder
00df6fd583c19393fa141d5a0e21ac74c7bf5b19Christian Maeder* initialize the hostname from the fs label of /, if /etc/hostname does not exist?
00df6fd583c19393fa141d5a0e21ac74c7bf5b19Christian Maeder
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder* rename "userspace" to "core-os"
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder
efb44558d78b59ea6ce8c16cb5eb1ac0a2604c84Christian Maeder* systemctl: "Journal has been rotated since unit was started." message is misleading
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder* syscall filter: add knowledge about compat syscalls
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder
ef2affdc0cdf3acd5c051597c04ab9b08a346a7dChristian Maeder* syscall filter: don't enforce no new privs?
3143271856dbf456bd7acc1c07193173f886d986Christian Maeder
63719301448519453f66383f4e583d9fd5b89ecbChristian Maeder* syscall filter: option to return EPERM rather than SIGSYS?
ce900a84ed9d9882c64fccbd6300f6b0d67efa82Christian Maeder
ce900a84ed9d9882c64fccbd6300f6b0d67efa82Christian Maeder* syscall filter: port to libseccomp
fb37a248ebad4696bbc9d9b94ce1cfc6497a9160Christian Maeder
fb37a248ebad4696bbc9d9b94ce1cfc6497a9160Christian Maeder* logind: wakelock/opportunistic suspend support
ce900a84ed9d9882c64fccbd6300f6b0d67efa82Christian Maeder
ce900a84ed9d9882c64fccbd6300f6b0d67efa82Christian Maeder* systemd-analyze post-boot is broken for initrd
ce900a84ed9d9882c64fccbd6300f6b0d67efa82Christian Maeder
ce900a84ed9d9882c64fccbd6300f6b0d67efa82Christian Maeder* systemd-analyze: data collection tools should be lightweight (few dependencies); data analysis tools can be heavyweight
* man: clarify that time-sync.target is not only sysv compat but also useful otherwise. Same for similar targets
* .device aliases need to be implemented with the "following" logic, probably.
* refuse taking lower-case variable names in sd_journal_send() and friends.
* load-fragment: when loading a unit file via a chain of symlinks
verify that it isn't masked via any of the names traversed.
* journald: we currently rotate only after MaxUse+MaxFilesize has been reached.
* Document:
- PID 1 D-Bus API
* introduce Type=pid-file
* maybe allow services with ExecStop= set, but no ExecStart=?
* efi: implement /forcefsck as uefi variables thus not requiring file system altering to trigger a file system check
* efi: honor language efi variables for default language selection
* efi: honor timezone efi variables for default timezone selection
* efi: automatically mount EFI partition to /boot if no such entry exists in /etc/fstab and /boot is empty
gummiboot exports the EFI system partion (ESP) device:
/sys/firmware/efi/vars/LoaderDeviceIdentifier-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
Acpi(PNP0A03,0)/Pci(1F|2)/?/HD(Part1,Sig1FCBC57F-4BFC-4C2B-91A3-9C84FBCD9AF1)
'/' is the separator for the device path list
HD(Part1,Sig1FCBC57F-4BFC-4C2B-91A3-9C84FBCD9AF1) contains the GPT UUID of the ESP
* read the bootloader performance data (raw TSC) in systemd-analyze
/sys/firmware/efi/vars/LoaderTicksExec-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
19066159288
/sys/firmware/efi/vars/LoaderTicksInit-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
17442940316
/sys/firmware/efi/vars/LoaderTicksStartMenu-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f/data
(only set if the menu was active)
* change Requires=basic.target to RequisiteOverride=basic.target
* support rd.luks.allow-discards= kernel cmdline params in cryptsetup generator
* nspawn: make use of device cgroup controller by default
* drop accountsservice's StandardOutput=syslog and Type=dbus fields
* when breaking cycles drop sysv services first, then services from /run, then from /etc, then from /usr
* readahead: when bumping /sys readahead variable save mtime and compare later to detect changes
* (attempt to) make Debianites happy:
- add syntax to reset ExecStart= lists (and similar)
* move passno parsing to fstab generator
* improve !/proc/*/loginuid situation: make /proc/*/loginuid less dependent on CONFIG_AUDIT,
or use the users cgroup information when /proc/*/loginuid is not available.
* pam_systemd: try to get old session id from cgroup, if audit sessionid cannot be determined
* pam: when leaving a session explicitly exclude the ReleaseSession() caller process from the killing spree
* maybe introduce ~/.config/locale.conf and apply it within PAM
* readahead: make use of EXT4_IOC_MOVE_EXT, as used by http://e4rat.sourceforge.net/
* automount: implement expire:
- set superblock timeout AUTOFS_DEV_IOCTL_TIMEOUT_CMD
- periodically run AUTOFS_DEV_IOCTL_EXPIRE_CMD
- every timeout/4 (original autofs logic)
- blocking, needs a thread
- run until -EAGAIN
- receive expire packet on pipe if kernel tells the timeout is over
- call umount
- answer expire packet on pipe with AUTOFS_DEV_IOCTL_{READY,FAIL}_CMD
- AUTOFS_DEV_IOCTL_EXPIRE_CMD returns
* services which create their own subcgroups break cgroup-empty notification (needs to be fixed in the kernel)
* don't delete /tmp/systemd-namespace-* before a process is gone down
* vconsole: implement setterm -store -foreground xxx --background zzz
* ExecOnFailure=/usr/bin/foo
* fedora: make sshd and pam_loginuid work in nspawn containers
* fix utmp for console logins in containers
* Add pretty name for seats in logind
* ConditionSecurity= should learn about IMA and SMACK
* udev: move to LGPL
* udev systemd unify:
- utf8 validator code
* udev: scsi_id -> sg3_utils -> kill scsi_id
* udev: add trigger --subsystem-match=usb/usb_device device
* allow configuration of console width/height in vconsole.conf
* cleanup syslog 'priority' vs. 'level' wording
* dbus upstream still refers to dbus.target and shouldn't
* when a service has the same env var set twice we actually store it twice and return that in systemctl show -p... We should only show the last setting
* support container_ttys=
* introduce mix of BindTo and Requisite
* journalctl: show multiline log messages sanely, expand tabs, and show all valid utf8 messages
* add DeleteSocketsOnStop=yes|no option to socket units
* journal: store euid in journal if it differs from uid
* There's currently no way to cancel fsck (used to be possible via C-c or c on the console)
* journal: sanely deal with entries which are larger than the individual file size, but where the components would fit
* add command to systemctl to plot dependency graph as tree (see rhbz 795365)
* add option to sockets to avoid activation. Instead just drop packets/connections, see http://cyberelk.net/tim/2012/02/15/portreserve-systemd-solution/
* default unix qlen is too small (10). bump sysctl? add sockopt?
* figure out whether we should leave dbus around during shutdown
* dbus: in fedora, make the machine a symlink to /etc/machine-id
* dbus: move dbus to early boot
* logind: add equivalent to sd_pid_get_owner_uid() to the D-Bus API
* journal: deal nicely with byte-by-byte copied files, especially regards header
* journal: local deserializer of export mode, http server
* document the exit codes when services fail before they are exec()ed
* save coredump in Windows/Mozilla minidump format
* support crash reporting operation modes (https://live.gnome.org/GnomeOS/Design/Whiteboards/ProblemReporting)
* clean up session cgroups that remain after logout (think sshd), but eventually run empty
* support "systemctl stop foobar@.service" to stop all units matching a certain template
* logind: allow showing logout dialog from system
* document that %% can be used to write % in a string that is specifier extended
* when an instanced service exits, remove its parent cgroup too if possible.
* default to actual 32bit PIDs, via /proc/sys/kernel/pid_max
* be able to specify a forced restart of service A where service B depends on, in case B
needs to be auto-respawned?
* Something is wrong with symlink handling of "autovt@.service" in "systemctl list-unit-files"
* when a bus name of a service disappears from the bus make sure to queue further activation requests
* something like ConditionExec= or ExecStartPre= without failure state
* tmpfiles: apply "x" on "D" too (see patch from William Douglas)
* don't set $HOME in services unless requested
* hide PAM/TCPWrap options in fragment parser when compile time disabled
* when we automatically restart a service, ensure we restart its rdeps, too.
* allow Type=simple with PIDFile=
https://bugzilla.redhat.com/show_bug.cgi?id=723942
* move PAM code into its own binary
* logind: spawn user@..service on login
* logind: non-local X11 server handling
* implement Register= switch in .socket units to enable registration
in Avahi, RPC and other socket registration services.
* make sure systemd-ask-password-wall does not shutdown systemd-ask-password-console too early
* readahead: use BTRFS_IOC_DEFRAG_RANGE instead of BTRFS_IOC_DEFRAG ioctl, with START_IO
* support sd_notify() style notification when reload begins (RELOADING=1), reload is finished (READY=1), and add ReloadSignal= then to use in combination
* support sd_notify() style notification when shutting down, to make auto-exit bus services work (STOPPING=1)
* verify that the AF_UNIX sockets of a service in the fs still exist
when we start a service in order to avoid confusion when a user
assumes starting a service is enough to make it accessible
* Make it possible to set the keymap independently from the font on
the kernel cmdline. Right now setting one resets also the other.
* and a dbus call to generate target from current state
* drop /.readahead on bigger upgrades with yum
* add support for /bin/mount -s
* GC unreferenced jobs (such as .device jobs)
* write blog stories about:
- hwdb: what belongs into it, lsusb
- enabling dbus services
- status update
- how to make changes to sysctl and sysfs attributes
- remote access
- how to pass throw-away units to systemd, or dynamically change properties of existing units
- how to integrate cgconfig and suchlike with systemd
- testing with Harald's awesome test kit
- auto-restart
- how to develop against journal browsing APIs
- the journal HTTP iface
- non-cgroup resource management
- refreshed, longer missions statement
* allow port=0 in .socket units
* move readahead files into /var (look for them with .path units?)
* teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
* support systemd.mask= on the kernel command line.
* when key file cannot be found, read it from kbd in cryptsetup
* reuse mkdtemp namespace dirs in /tmp?
* recreate systemd's D-Bus private socket file on SIGUSR2
* Support --test based on current system state
* investigate whether the gnome pty helper should be moved into systemd, to provide cgroup support.
* maybe introduce ExecRestartPre=
* configurable jitter for timer events
* timer events with system resume
* dot output for --test showing the 'initial transaction'
* writable cgroups dbus properties for live changes
* port over to LISTEN_FDS/LISTEN_PID:
- rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
- cups HAVEPATCH
- postfix, saslauthd
- apache/samba
- libvirtd (/var/run/libvirt/libvirt-sock-ro)
- bluetoothd (/var/run/sdp! @/org/bluez/audio!)
- distccd
* fingerprint.target, wireless.target, gps.target, netdevice.target
* io priority during initialization
* systemctl list-jobs - show dependencies
* add systemctl switch to dump transaction without executing it
* drop cap bounding set in readahead and other services
External:
* dbus:
- dbus --user
- natively watch for dbus-*.service symlinks (PENDING)
- allow specification of socket mode/umask when allocating DBusServer
- allow disabling of fd passing when connecting a AF_UNIX connection
- allow disabling of UID passing for AUTH EXTERNAL
- always pass cred data along each message
* fix alsa mixer restore to not print error when no config is stored
* gnome-shell python script/glxinfo/is-accelerated must die
* make cryptsetup lower --iter-time
* patch kernel for xattr support in /dev, /proc/, /sys?
* NTP: the kernel's 11-minutes-mode syncs the system time to the RTC, but only
in an ~30 minutes window. It does not adjust larger differences. Find a way
to tell the kernel, to always do a full time sync when the RTC is in UTC and
we are in 11-minutes-mode. When we trust the system time to NTP we also want
the RTC to sync up.
* kernel: add device_type = "fb", "fbcon" to class "graphics"
Regularly:
* look for close() vs. close_nointr() vs. close_nointr_nofail()
* check for strerror(r) instead of strerror(-r)
* Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
* %m in printf() instead of strerror(errno);
* pahole
* set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
* use secure_getenv() instead of getenv() where appropriate
* link up selected blog stories from man pages and unit files Documentation= fields
Scheduled for removal or fixing:
* xxxOverridable dependencies (probably: fix)