TODO revision 823f4a91ebd8942a2c1ff31050dc55eaa60f6ffc
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeckBugfixes:
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* Should systemctl status \* work on all unit types, not just .service?
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* Dangling symlinks of .automount unit files in .wants/ directories, set up
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck automount points even when the original .automount file did not exist
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck anymore. Only the .mount unit was still around.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* ExecStart with unicode characters fails in strv_split_quoted:
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck [Service]
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck Environment=ONE='one' "TWO='two two' too" THREE=
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck ExecStart=/bin/python3 -c 'import sys;print(sys.argv)' $ONE $TWO $THREE
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* MEMORY return code is overloaded for syntax errors in the command line.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck str_split_quoted() should return a real return code, so spawn_child can
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck report the failure properly.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* When systemctl --host is used, underlying ssh connection can remain open.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck bus_close does not kill children?
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeckExternal:
f6da83d4178694e7113b71d1e452f15b296f73d8Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* Fedora: add an rpmlint check that verifies that all unit files in the RPM are listed in %systemd_post macros.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* Fedora: move kernel image to /usr/lib/modules/, kernel-install will take care of populating /boot
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* Fedora: remove /etc/resolv.conf tmpfiles hack
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* wiki: update journal format documentation for lz4 additions
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* When lz4 gets an API for lz4 command output, make use of it to
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck compress coredumps in a way compatible with /usr/bin/lz4.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. MaskeyFeatures:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* When runlevel3.target is used to define dependencies on other units,
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey then we don't pick it up currently, since nothing ever references
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey runlevel3.target, and never figure out it actually is just an alias
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey for multi-user.target. A hackish fix could be to add a .wants link
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey from multi-user.target to runlevel3.target, if it is a symlink to
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey it. Best would be to create this .wants/ symlink from
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey sysv-generator. systemd would then load the referenced unit, figure
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck out it is just an alias and that the dependency would be on itself
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck and suppress it. Thus the alias and its deps would be loaded as
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck desired.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* PID 1: when invoking systemctl preset-all on first boots, operate in
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck an exclusively additive way, i.e. never remove any pre-existing
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck symlinks, only add new ones.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* Introduce $LISTEN_NAMES to complement $LISTEN_FDS, containing a
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey colon separated list of identifiers for the fds passed.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* networkd: implement BindCarrier= logic to .network units that binds
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck application of the file to the carrier sense on another interface,
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey in order to implement uplink/downlink logic.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* make networkd subscribe to PrepareForSleep(false) and refresh all
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck DHCP leases then.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* when the fstab-generator runs in the initrd, it should create a /dev/null mask for systemd-fsck-root.service, to avoid that the the root fs is fsck'ed twice.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* maybe introduce WantsMountsFor=? Usecase:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey http://lists.freedesktop.org/archives/systemd-devel/2015-January/027729.html
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* rework kexec logic to use new kexec_file_load() syscall, so that we
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey don't have to call kexec tool anymore.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* The udev blkid built-in should expose a property that reflects
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey whether media was sensed in USB CF/SD card readers. This should then
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey be used to control SYSTEMD_READY=1/0 so that USB card readers aren't
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey picked up by systemd unless they contain a medium. This would mirror
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey the behaviour we already have for CD drives.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* We should remove really old cruft from cdrom_id
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* nspawn: emulate /dev/kmsg using CUSE and turn off the syslog syscall
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey with seccomp. That should provide us with a useful log buffer that
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey systemd can log to during early boot, and disconnect container logs
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck from the kernel's logs.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* networkd/udev: implement SR_IOV configuration in .link files:
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter http://lists.freedesktop.org/archives/systemd-devel/2015-January/027451.html
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* When RLIMIT_NPROC is set from a unit file it currently always is set
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter for root, not for the user set in User=, which makes it
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter useless. After fixing this, set RLIMIT_NPROC for
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter systemd-journal-xyz, and all other of our services that run under
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey their own user ids, and use User= (but only in a world where userns
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey is ubiquitous since otherwise we cannot invoke those daemons on the
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey host AND in a container anymore). Also, if LimitNPROC= is used
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey without User= we should warn and refuse operation.
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* logind: maybe allow configuration of the StopTimeout for session scopes
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* Set NoNewPriviliges= on all of our own services, where that makes sense
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* Rework systemctl's GetAll property parsing to use the generic bus_map_all_properties() API
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* rework journald sigbus stuff to use mutex
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* import-dkr: support tarsum checksum verification, if it becomes reality one day...
b00044a2eb43864b8718585d21949611a2ee59efJames Carlson
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* import-dkr: convert json bits to nspawn configuration
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
3773ed2d24481549fc50fa942cc59d7ba81c6e71Anurag S. Maskey* import: support import from local files, and export to local files
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* core/cgroup: support net_cls modules, and support automatically allocating class ids, then add support for making firewall changes depending on it, to implement a per-service firewall
3773ed2d24481549fc50fa942cc59d7ba81c6e71Anurag S. Maskey
3773ed2d24481549fc50fa942cc59d7ba81c6e71Anurag S. Maskey* introduce systemd-nspawn-ephemeral@.service, and hook it into "machinectl start" with a new --ephemeral switch
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* logind,machined: add generic catch-all polkit verbs for most privileged operations, similar to systemd itself
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* "machinectl status" should also show internal logs of the container in question
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* "machinectl list-images" should show os-release data, as well as machine-info data (including deployment level)
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* nspawn: when start a container "foobar" look for its configuration in a file "foobar.nspawn" in /etc/systemd/nspawn/ as well as next to the actualy directory or image to boot
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* Port various tools to make use of verbs.[ch], where applicable
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* "machinectl history"
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* "machinectl diff"
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* "machinectl commit" that takes a writable snapshot of a tree, invokes a shell in it, and marks it read-only after use
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* "machinectl status" should show 10 most recent log lines of both the host logs of the unit of the machine, plus the logs generated in the machine
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* add transparent btrfs pool in a loopback file in /var if btrfs operations (such as systemd-import pull-dkr) are used and /var is not a btrfs file system
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* systemd-nspawn -x should support ephemeral instances of gpt images
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* move machinectl's mount and copy commands into machined
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* hostnamectl: show root image uuid
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* sysfs set api in libudev is not const
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* Find a solution for SMACK capabilities stuff:
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter http://lists.freedesktop.org/archives/systemd-devel/2014-December/026188.html
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* port libmount hookup to use API's own inotify interface, as soon as that is table in libmount
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* "systemctl preset-all" should probably order the unit files it
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter operates on lexicographically before starting to work, in order to
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter ensure deterministic behaviour if two unit files conflict (like DMs
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter do, for example)
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* resolved should optionally register additional per-interface LLMNR
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter names, so that for the container case we can establish the same name
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter (maybe "host") for referencing the server, everywhere.
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* systemd-journal-upload (or a new, related tool): allow pushing out
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter journal messages onto the network in BSD syslog protocol,
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter continuously. Default to some link-local IP mcast group, to make this
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter useful as a one-stop debugging tool.
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter* synchronize console access with BSD locks:
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter http://lists.freedesktop.org/archives/systemd-devel/2014-October/024582.html
38f140aaa4a32508dc5318744dd8d51ab84b23a5Michael Hunter
3773ed2d24481549fc50fa942cc59d7ba81c6e71Anurag S. Maskey* as soon as we have kdbus, and sender timestamps, revisit coalescing multiple parallel daemon reloads:
3773ed2d24481549fc50fa942cc59d7ba81c6e71Anurag S. Maskey http://lists.freedesktop.org/archives/systemd-devel/2014-December/025862.html
3773ed2d24481549fc50fa942cc59d7ba81c6e71Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* set $REMOTE_IP (or $REMOTE_ADDR/$REMOTE_PORT) environment variable when doing per-connection socket activation. use format introduced by xinetd or CGI for this
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
b00044a2eb43864b8718585d21949611a2ee59efJames Carlson* the install state probably shouldn't get confused by generated units, think dbus1/kdbus compat!
b00044a2eb43864b8718585d21949611a2ee59efJames Carlson
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* in systemctl list-unit-files: show the install value the presets would suggest for a service in a third column
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* we should try harder to collapse start jobs for swaps that end up being the same:
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck http://lists.freedesktop.org/archives/systemd-devel/2014-November/025359.html
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* timedated should compensate on SetTime for the time spent in polkit
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* figure out when we can use the coarse timers
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* sd-resolve: drop res_query wrapping, people should call via the bus to resolved instead
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* add "systemctl start -v foobar.service" that shows logs of a service
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck while the start command runs. This is non-trivial to do without
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey races though, since we should flush out all journal messages before
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck returning from the "systemctl stop".
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* firstboot: make it useful to be run immediately after yum --installroot to set up a machine. (most specifically, make --copy-root-password work even if /etc/passwd already exists
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* timesyncd + resolved: add ugly bus calls to set NTP and DNS servers per-interface, for usage by NM
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* add infrastructure to allocate dynamic/transient users and UID ranges, for use in user-namespaced containers, per-seat gdm login screens and gdm guest sessions
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* machined: add an API so that libvirt-lxc can inform us about network interfaces being removed or added to an existing machine
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* maybe add support for specifier expansion in user.conf, specifically DefaultEnvironment=
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* code cleanup: retire FOREACH_WORD_QUOTED, port to unquote_first_word() loops instead
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* introduce systemd-timesync-wait.service or so to sync on an NTP fix?
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* systemd --user should issue sd_notify() upon reaching basic.target, not on becoming idle
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* consider showing the unit names during boot up in the status output, not just the unit descriptions
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* dhcp: do we allow configuring dhcp routes on interfaces that are not the one we got the dhcp info from?
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* maybe allow timer units with an empty Units= setting, so that they
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey can be used for resuming the system but nothing else.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* what to do about udev db binary stability for apps? (raw access is not an option)
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* maybe provide an API to allow migration of foreign PIDs into existing scopes.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* maybe support a new very "soft" reboot mode, that simply kills all processes, disassembles everything, flushes /run and sysvipc, and then reexecs systemd again
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* man: document that corrupted journal files is nothing to act on
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* man: maybe use the word "inspect" rather than "introspect"?
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* "machinectl list" should probably show columns for OS version and IP addresses
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* systemctl: if some operation fails, show log output?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* systemctl edit:
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck- allow creation of units from scratch
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck- use equvalent of cat() to insert existing config as a comment, prepended with #.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck Upon editor exit, lines with one # are removed, lines with two # are left with one #, etc.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* refcounting in sd-resolve is borked
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* exponential backoff in timesyncd and resolved when we cannot reach a server
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* tmpfiles: port to unquote_many_words(), similar to sysusers
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* unquote_many_words() should probably be used by a lot of code that
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey currently uses FOREACH_WORD and friends. For example, most conf
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck parsing callbacks should use it.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* merge ~/.local/share and ~/.local/lib into one similar /usr/lib and /usr/share....
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* systemd.show_status= should probably have a mode where only failed
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck units are shown.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* networkd:
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck - add LLDP client side support
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck - the DHCP lease data (such as NTP/DNS) is still made available when
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey a carrier is lost on a link. It should be removed instantly.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - .network setting that allows overriding of the hostname to send to the dhcp server
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey http://lists.freedesktop.org/archives/systemd-devel/2014-July/021550.html
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - expose in the API the following bits:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - option 15, domain name and/or option 119, search list
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - option 12, host name and/or option 81, fqdn
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - option 100, 101, timezone
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - option 123, 144, geolocation
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - option 252, configure http proxy (PAC/wpad)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - networkd's dhcp server should transparently pass on the DNS and
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck NTP server list it got from user configuration and its dhcp client
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey to clients. It should also pass on its own timezone information.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - provide a way to define a per-network interface default metric value
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey for all routes to it. possibly a second default for DHCP routes.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - allow Name= to be specified repeatedly in the [Match] section. Maybe also
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey support Name=foo*|bar*|baz ?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - duplicate address check for static IPs (like ARPCHECK in network-scripts)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* resolved:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - put networkd events and rtnl events at a higher priority, so that
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey we always process them before we process client requests
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - DNSSEC
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - use base64 for key presentation?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add display of private key types (http://tools.ietf.org/html/rfc4034#appendix-A.1.1)?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add nice formatting of DNS timestamps
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - DNS
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - search paths
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - mDNS/DNS-SD
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - avahi compat
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - DNS-SD service registration from socket units
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - edns0
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - dname
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - cname on PTR (?)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - maybe randomize DNS UDP source ports
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - maybe compare query section of DNS replies
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* Allow multiple ExecStart= for all Type= settings, so that we can cover rescue.service nicely
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* Add a new verb "systemctl top"
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* add new gpt type for btrfs volumes
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* support empty /etc boots nicely:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - nspawn/gpt-generator: introduce new gpt partition type for /usr
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - fstab-generator: support systemd.volatile=yes|no|state on the kernel cmdline, too, similar to nspawn's --volatile=
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* generator that automatically discovers btrfs subvolumes, identifies their purpose based on some xattr on them.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* timer units: actually add extra delays to timer units with high AccuracySec values, don't start them already when we are awake...
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* a way for container managers to turn off getty starting via $container_headless= or so...
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* figure out a nice way how we can let the admin know what child/sibling unit causes cgroup membership for a specific unit
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* mount_cgroup_controllers(): symlinks need to get the label applied
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* For timer units: add some mechanisms so that timer units that trigger immediately on boot do not have the services
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey they run added to the initial transaction and thus confuse Type=idle.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* Run most system services with cgroupfs read-only and procfs with a more secure mode (doesn't work, since the hidepid= option is per-pid-namespace, not per-mount)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* sd-event: generate a failure of a default event loop is executed out-of-thread
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* add bus api to query unit file's X fields.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* consider adding RuntimeDirectoryUser= + RuntimeDirectoryGroup=
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* sd-event: define more intervals where we will shift wakeup intervals around in, 1h, 6h, 24h, ...
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* gpt-auto-generator:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - Support LUKS for root devices
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - Define new partition type for encrypted swap? Support probed LUKS for encrypted swap?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - Make /home automount rather than mount?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* add generator that pulls in systemd-network from containers when
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey CAP_NET_ADMIN is set, more than the loopback device is defined, even
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey when it is otherwise off
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* MessageQueueMessageSize= and RLimitFSIZE= (and suchlike) should use parse_iec_size().
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* "busctl status" works only as root on dbus1, since we cannot read
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey /proc/$PID/exe
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* implement Distribute= in socket units to allow running multiple
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey service instances processing the listening socket, and open this up
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey for ReusePort=
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* socket units: support creating sockets in different namespace,
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey opening it up for JoinsNamespaceOf=. This would require to fork off
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey a tiny process that joins the namespace and creates/binds the socket
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey and passes this back to PID1 via SCM_RIGHTS. This also could be used
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey to allow Chown/chgrp on sockets without requiring NSS in PID 1.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* New service property: maximum CPU and wallclock runtime for a service
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* introduce bus call FreezeUnit(s, b), as well as "systemctl freeze
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey $UNIT" and "systemctl thaw $UNIT" as wrappers around this. The calls
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey should SIGSTOP all unit processes in a loop until all processes of
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey it are fully stopped. This can later be used for app management by
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey desktop UIs such as gnome-shell to freeze apps that are not visible
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey on screen, not unlike how job control works on the shell
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* cgroups:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - implement per-slice CPUFairScheduling=1 switch
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - handle jointly mounted controllers correctly
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - introduce high-level settings for RT budget, swappiness
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - how to reset dynamically changed unit cgroup attributes sanely?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - when reloading configuration, apply new cgroup configuration
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - when recursively showing the cgroup hierarchy, optionally also show
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey the hierarchies of child processes
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* transient units:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - allow creating auxiliary units with the same call
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add field to transient units that indicate whether systemd or somebody else saves/restores its settings, for integration with libvirt
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - ensure scope units may be started only a single time
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* Automatically configure swap partition to use for hibernation by looking for largest swap partition on the root disk?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* when we detect low battery and no AC on boot, show pretty splash and refuse boot
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* machined, localed: when we try to kill an empty cgroup, generate an ESRCH error over the bus
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* libsystemd-journal, libsystemd-login, libudev: add calls to easily attach these objects to sd-event event loops
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* be more careful what we export on the bus as (usec_t) 0 and (usec_t) -1
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* unify dispatch table in systemctl_main() and friends
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* rfkill,backlight: we probably should run the load tools inside of the udev rules so that the state is properly initialized by the time other software sees it
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* After coming back from hibernation reset hibernation swap partition using the /dev/snapshot ioctl APIs
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* If we try to find a unit via a dangling symlink, generate a clean
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey error. Currently, we just ignore it and read the unit from the search
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey path anyway.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* refuse boot if /etc/os-release is missing or /etc/machine-id cannot be set up
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* btrfs raid assembly: some .device jobs stay stuck in the queue
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* make sure gdm does not use multi-user-x but the new default X configuration file, and then remove multi-user-x from systemd
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* man: the documentation of Restart= currently is very misleading and suggests the tools from ExecStartPre= might get restarted.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* load .d/*.conf dropins for device units
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* allow implementation of InaccessibleDirectories=/ plus
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey ReadOnlyDirectories=... for whitelisting files for a service.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* sd-bus:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - GetAllProperties() on a non-existing object does not result in a failure currently
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - kdbus: process fd=-1 for incoming msgs
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - port to sd-resolve for connecting to TCP dbus servers
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - kdbus: maybe add controlling tty metadata fields
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - see if we can introduce a new sd_bus_get_owner_machine_id() call to retrieve the machine ID of the machine of the bus itself
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck - when kdbus does not take our message without memfds, try again with memfds
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - see if we can drop more message validation on the sending side
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add API to clone sd_bus_message objects
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - make AddMatch calls on dbus1 transports async?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - kdbus: matches against source or destination pids for an "strace -p"-like feel. Problem: The PID info needs to be available in userspace too...
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - longer term: priority inheritance
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - dbus spec updates:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - kdbus mapping
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - NameLost/NameAcquired obsolete
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - GVariant
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - path escaping
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - update systemd.special(7) to mention that dbus.socket is only about the compatibility socket now
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - test bloom filter generation indexes
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - bus-proxy: when passing messages from kdbus, make sure we properly
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey handle the case where a large number of fds is appended that we
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck cannot pass into sendmsg() of the AF_UNIX sokcet (which only accepts
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey 253 messages)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - kdbus: introduce a concept of "send-only" connections
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - kdbus: add counter for refused unicast messages that is passed out via the RECV ioctl. SImilar to the counter for dropped multicast messages we already have.
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* sd-event
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - allow multiple signal handlers per signal?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - document chaining of signal handler for SIGCHLD and child handlers
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* in the final killing spree, detect processes from the root directory, and
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey complain loudly if they have argv[0][0] == '@' set.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey https://bugzilla.redhat.com/show_bug.cgi?id=961044
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* investigate endianness issues of UUID vs. GUID
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* dbus: when a unit failed to load (i.e. is in UNIT_ERROR state), we
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey should be able to safely try another attempt when the bus call LoadUnit() is invoked.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* add a pam module that passes the hdd passphrase into the PAM stack and then expires it, for usage by gdm auto-login.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* add a pam module that on password changes updates any LUKS slot where the password matches
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* maybe add a generator that looks for "systemd.run=" on the kernel cmdline for container usercases...
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* cgtop: make cgtop useful in a container
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* test/:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add 'set -e' to scripts in test/
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - make stuff in test/ work with separate output dir
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* seems that when we follow symlinks to units we prefer the symlink
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey destination path over /etc and /usr. We should not do that. Instead
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey /etc should always override /run+/usr and also any symlink
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey destination.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* when isolating, try to figure out a way how we implicitly can order
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey all units we stop before the isolating unit...
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* teach ConditionKernelCommandLine= globs or regexes (in order to match foobar={no,0,off})
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* BootLoaderSpec: Clarify that the kernel has to be in $BOOT. Clarify
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey that the boot loader should be installed to the ESP. Define a way
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey how an installer can figure out whether a BLS compliant boot loader
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey is installed.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* think about requeuing jobs when daemon-reload is issued? usecase:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey the initrd issues a reload after fstab from the host is accessible
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey and we might want to requeue the mounts local-fs acquired through
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey that automatically.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* systemd-inhibit: make taking delay locks useful: support sending SIGINT or SIGTERM on PrepareForSleep()
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* journal-or-kmsg is currently broken? See reverted commit 4a01181e460686d8b4a543b1dfa7f77c9e3c5ab8.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* remove any syslog support from log.c -- we probably cannot do this before split-off udev is gone for good
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* shutdown logging: store to EFI var, and store to USB stick?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* write UI tool that pops up emergency messages from the journal as notification
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* think about window-manager-run-as-user-service problem: exit 0 → activate shutdown.target; exit != 0 → restart service
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* merge unit_kill_common() and unit_kill_context()
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* introduce ExecCondition= in services
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* EFI:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - honor language efi variables for default language selection (if there are any?)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - honor timezone efi variables for default timezone selection (if there are any?)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - change bootctl to be backed by systemd-bootd to control temporary and persistent default boot goal plus efi variables
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* maybe do not install getty@tty1.service symlink in /etc but in /usr?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* re-enable "make check" for gtk-doc (broken for unknown reason)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* fstab: add new mount option x-systemd-after=/foobar/waldo to allow manual dependencies to other mount points
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey https://bugzilla.redhat.com/show_bug.cgi?id=812826
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* print a nicer explanation if people use variable/specifier expansion in ExecStart= for the first word
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* mount: turn dependency information from /proc/self/mountinfo into dependency information between systemd units.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* logind:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - logind: optionally, ignore idle-hint logic for autosuspend, block suspend as long as a session is around
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - When we update the kernel all kind of hibernation should be prohibited until shutdown/reboot
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - logind: wakelock/opportunistic suspend support
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - Add pretty name for seats in logind
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - logind: allow showing logout dialog from system?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - we should probably handle SIGTERM/SIGINT to not leave dot files around, just in case
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - session scopes/user unit: add RequiresMountsFor for the home directory of the user
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add Suspend() bus calls which take timestamps to fix double suspend issues when somebody hits suspend and closes laptop quickly.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - if pam_systemd is invoked by su from a process that is outside of a
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey any session we should probably just become a NOP, since that's
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck usually not a real user session but just some system code that just
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey needs setuid().
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - logind: make the Suspend()/Hibernate() bus calls wait for the for
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey the job to be completed. before returning, so that clients can wait
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey for "systemctl suspend" to finish to know when the suspending is
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey complete.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - logind: when the power button is pressed short, just popup a
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey logout dialog. If it is pressed for 1s, do the usual
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey shutdown. Inspiration are Macs here.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - logind: allow users to kill or lock their own sessions
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - expose "Locked" property on logind sesison objects
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - given that logind now lets PID 1 do all nasty work, we can
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey probably reduce the capability set it retains substantially.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey (we need CAP_SYS_ADMIN for drmSetMaster(), so maybe not worth it)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - expose orientation sensors and tablet mode through logind
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* exec: when deinitializating a tty device fix the perms and group, too, not only when initializing. Set access mode/gid to 0620/tty.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* service: watchdog logic: for testing purposes allow ping, but do not require pong
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* journal:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - consider introducing implicit _TTY= + _PPID= + _EUID= + _EGID= + _FSUID= + _FSGID= fields
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - import and delete pstore filesystem content at startup
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journald: also get thread ID from client, plus thread name
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journal: when waiting for journal additions in the client always sleep at least 1s or so, in order to minimize wakeups
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add API to close/reopen/get fd for journal client fd in libsystemd-journal.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - fallback to /dev/log based logging in libsystemd-journal, if we cannot log natively?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - declare the local journal protocol stable in the wiki interface chart
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journal: reuse XZ context
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - sd-journal: speed up sd_journal_get_data() with transparent hash table in bg
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journald: when dropping msgs due to ratelimit make sure to write
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey "dropped %u messages" not only when we are about to print the next
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey message that works, but alraedy after a short tiemout
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - check if we can make journalctl by default use --follow mode inside of less if called without args?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - maybe add API to send pairs of iovecs via sd_journal_send
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journal: when writing journal auto-rotate if time jumps backwards
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journal: add a setgid "systemd-journal" utility to invoke from libsystemd-journal, which passes fds via STDOUT and does PK access
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journactl: support negative filtering, i.e. FOOBAR!="waldo",
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey and !FOOBAR for events without FOOBAR.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journal: store timestamp of journal_file_set_offline() int he header,
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey so it is possible to display when the file was last synced.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - 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.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journal: find a way to allow dropping history early, based on priority, other rules
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journal: When used on NFS, check payload hashes
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journald: add kernel cmdline option to disable ratelimiting for debug purposes
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - refuse taking lower-case variable names in sd_journal_send() and friends.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journald: we currently rotate only after MaxUse+MaxFilesize has been reached.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journal: deal nicely with byte-by-byte copied files, especially regards header
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journal: sanely deal with entries which are larger than the individual file size, but where the components would fit
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - Replace utmp, wtmp, btmp, and lastlog completely with journal
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journalctl: instead --after-cursor= maybe have a --cursor=XYZ+1 syntax?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - when a kernel driver logs in a tight loop, we should ratelimit that too.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journald: optionally, log debug messages to /run but everything else to /var
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journald: when we drop syslog messages because the syslog socket is
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey full, make sure to write how many messages are lost as first thing
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey to syslog when it works again.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journald: make sure ratelimit is actually really per-service with the new cgroup changes
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - change systemd-journal-flush into a service that stays around during
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey boot, and causes the journal to be moved back to /run on shutdown,
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey so that we do not keep /var busy. This needs to happen synchronously,
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey hence doing this via signals is not going to work.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - optionally support running journald from the command line for testing purposes in external projects
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journald: allow per-priority and per-service retention times when rotating/vacuuming
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journald: make use of uid-range.h to managed uid ranges to split
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey journals in.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - journalctl: add the ability to look for the most recent process of a binary. journalctl /usr/bin/X11 --pid=-1 or so...
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - improve journalctl performance by loading journal files
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey lazily. Encode just enough information in the file name, so that we
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey do not have to open it to know that it is not interesting for us, for
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey the most common operations.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* document:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - document that deps in [Unit] sections ignore Alias= fields in
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey [Install] units of other units, unless those units are disabled
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - man: clarify that time-sync.target is not only sysv compat but also useful otherwise. Same for similar targets
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - document the exit codes when services fail before they are exec()ed
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - document that service reload may be implemented as service reexec
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - document in wiki how to map ical recurrence events to systemd timer unit calendar specifications
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add a man page containing packaging guidelines and recommending usage of things like Documentation=, PrivateTmp=, PrivateNetwork= and ReadOnlyDirectories=/etc /usr.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - document systemd-journal-flush.service properly
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - documentation: recommend to connect the timer units of a service to the service via Also= in [Install]
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - man: document the very specific env the shutdown drop-in tools live in
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - man: extend runlevel(8) to mention that runlevels suck, and are dead. Maybe add runlevel(7) with a note about that too
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - man: add more examples to man pages
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - man: maybe sort directives in man pages, and take sections from --help and apply them to man too
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* systemctl:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - systemctl list-jobs - show dependencies
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add systemctl switch to dump transaction without executing it
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - Add a verbose mode to "systemctl start" and friends that explains what is being done or not done
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - "systemctl disable" on a static unit prints no message and does
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey nothing. "systemctl enable" does nothing, and gives a bad message
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey about it. Should fix both to print nice actionable messages.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - print nice message from systemctl --failed if there are no entries shown, and hook that into ExecStartPre of rescue.service/emergency.service
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add new command to systemctl: "systemctl system-reexec" which reexecs as many daemons as virtually possible
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - systemctl enable: fail if target to alias into does not exist? maybe show how many units are enabled afterwards?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - systemctl: "Journal has been rotated since unit was started." message is misleading
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - support "systemctl stop foobar@.service" to stop all units matching a certain template
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - Something is wrong with symlink handling of "autovt@.service" in "systemctl list-unit-files"
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - better error message if you run systemctl without systemd running
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - systemctl status output should should include list of triggering units and their status
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* unit install:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - "systemctl mask" should find all names by which a unit is accessible
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey (i.e. by scanning for symlinks to it) and link them all to /dev/null
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - systemctl list-unit-files should list generated files (and probably with a new state "generated" for them, or so)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* timer units:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - timer units should get the ability to trigger when:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey o CLOCK_REALTIME makes jumps (TFD_TIMER_CANCEL_ON_SET)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey o DST changes
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - Support 2012-02~4 as syntax for specifying the fourth to last day of the month.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - calendarspec: support value ranges with ".." notation. Example: 2013-4..8-1
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - when parsing calendar timestamps support the UTC timezone (even if we will not support arbitrary timezone specs, support UTC itself certainly makes sense), also support syntaxes such as +0200
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - Modulate timer frequency based on battery state
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* add libsystemd-password or so to query passwords during boot using the password agent logic
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* 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().
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* fedup: add --unit to systemctl switch-root somehow
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* fedup: do not delete initrd on switch-root
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* fedup: generator
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* clean up date formatting and parsing so that all absolute/relative timestamps we format can also be parsed
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* on shutdown: move utmp, wall, audit logic all into PID 1 (or logind?), get rid of systemd-update-utmp-runlevel
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* make repeated alt-ctrl-del presses printing a dump, or even force a reboot without
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey waiting for the timeout
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* hostnamed: before returning information from /etc/machine-info.conf check the modification data and reread. Similar for localed, ...
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* currently x-systemd.timeout is lost in the initrd, since crypttab is copied into dracut, but fstab is not
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* nspawn:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - refuses to boot containers without /etc/machine-id (OK?), and with empty /etc/machine-id (not OK).
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* cryptsetup:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - cryptsetup-generator: allow specification of passwords in crypttab itself
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - move cryptsetup key caching into kernel keyctl?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey https://bugs.freedesktop.org/show_bug.cgi?id=54982
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - support rd.luks.allow-discards= kernel cmdline params in cryptsetup generator
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* hw watchdog: optionally try to use the preset watchdog timeout instead of always overriding it
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey https://bugs.freedesktop.org/show_bug.cgi?id=54712
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* after deserializing sockets in socket.c we should reapply sockopts and things
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* make timer units go away after they elapsed
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* move PID 1 segfaults to /var/lib/systemd/coredump?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* create /sbin/init symlinks from the build system
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* allow writing multiple conditions in unit files on one line
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* MountFlags=shared acts as MountFlags=slave right now.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* drop PID 1 reloading, only do reexecing (difficult: Reload()
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey currently is properly synchronous, Reexec() is weird, because we
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey cannot delay the response properly until we are back, so instead of
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey being properly synchronous we just keep open the fd and close it
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey when done. That means clients do not get a successful method reply,
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey but much rather a disconnect on success.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* properly handle loop back mounts via fstab, especially regards to fsck/passno
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* initialize the hostname from the fs label of /, if /etc/hostname does not exist?
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* rename "userspace" to "core-os"
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* load-fragment: when loading a unit file via a chain of symlinks
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey verify that it is not masked via any of the names traversed.
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* introduce Type=pid-file
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* change Requires=basic.target to RequisiteOverride=basic.target
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* when breaking cycles drop sysv services first, then services from /run, then from /etc, then from /usr
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* automount: implement expire:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - set superblock timeout AUTOFS_DEV_IOCTL_TIMEOUT_CMD
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - periodically run AUTOFS_DEV_IOCTL_EXPIRE_CMD
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - every timeout/4 (original autofs logic)
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - blocking, needs a thread
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - run until -EAGAIN
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - receive expire packet on pipe if kernel tells the timeout is over
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - call umount
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - answer expire packet on pipe with AUTOFS_DEV_IOCTL_{READY,FAIL}_CMD
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - AUTOFS_DEV_IOCTL_EXPIRE_CMD returns
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* ExecOnFailure=/usr/bin/foo
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey* udev:
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - move to LGPL
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - kill scsi_id
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - add trigger --subsystem-match=usb/usb_device device
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey - reimport udev db after MOVE events for devices without dev_t
6ba597c56d749c61b4f783157f63196d7b2445f0Anurag S. Maskey
d71dbb732372504daff1f1783bc0d8864ce9bd50jbeck* 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
* introduce mix of BindTo and Requisite
* There's currently no way to cancel fsck (used to be possible via C-c or c on the console)
* 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?
* save coredump in Windows/Mozilla minidump format
* support crash reporting operation modes (https://live.gnome.org/GnomeOS/Design/Whiteboards/ProblemReporting)
* default to actual 32-bit 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?
* when a bus name of a service disappears from the bus make sure to queue further activation requests
* tmpfiles:
- apply "x" on "D" too (see patch from William Douglas)
- replace F with f+.
- instead of ignoring unknown fields, reject them.
* for services: do not set $HOME in services unless requested
* hide PAM 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
* 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
* add ReloadSignal= for configuring a reload signal to use
* 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
* 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
- testing with Harald's awesome test kit
- auto-restart
- how to develop against journal browsing APIs
- the journal HTTP iface
- non-cgroup resource management
- dynamic resource management with cgroups
- refreshed, longer missions statement
- calendar time events
- init=/bin/sh vs. "emergency" mode, vs. "rescue" mode, vs. "multi-user" mode, vs. "graphical" mode, and the debug shell
- how to create your own target
- instantiated apache, dovecot and so on
- hooking a script into various stages of shutdown/rearly booot
* allow port=0 in .socket units
* 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=
* dot output for --test showing the 'initial transaction'
* fingerprint.target, wireless.target, gps.target, netdevice.target
* systemd-python:
- figure out a simple way to wait for journal events in a way that
works with ^C
- add documentation to systemd.daemon
* bootchart:
- plot per-process IO utilization
- group processes based on service association (cgroups)
- document initcall_debug
- kernel cmdline "bootchart" option for simplicity?
* udev-link-config:
- Make sure ID_PATH is always exported and complete for
network devices where possible, so we can safely rely
on Path= matching
- check MTUBytes parsing (expecting size_t but we are using unsigned)
* sd-rtnl:
- add support for more attribute types
- inbuilt piping support (essentially degenerate async)? see loopback-setup.c and other places
* networkd:
- add more keys to [Route] and [Address] sections
- add support for more DHCPv4 options (and, longer term, other kinds of dynamic config)
- add proper initrd support (in particular generate .network/.link files based on /proc/cmdline)
- add reduced [Link] support to .network files
- add Scope= parsing option for [Network]
- properly handle routerless dhcp leases
- add more attribute support for SIT tunnel
- work with non-ethernet devices
- add support for more bond options
* networkd-wait-online:
- make operstates to wait for configurable?
* dhcp:
- figure out how much we can increase Maximum Message Size
- export timezone information
- support RFC4702 (pass FQDN)
* dhcp6:
- add functions to set previously stored IPv6 addresses on startup and get
them at shutdown; store them in client->ia_na
- write more test cases
- implement and do duplicate address detection, see rfc 4862, 5.4.
- implement reconfigure support, see 5.3., 15.11. and 22.20.
- implement support for temporary adressess (IA_TA)
- implement dhcpv6 authentication
- investigate the usefulness of Confirm messages; i.e. are there any
situations where the link changes without any loss in carrier detection
or interface down
- some servers don't do rapid commit without a filled in IA_NA, verify
this behavior
External:
* dbus:
- natively watch for dbus-*.service symlinks (PENDING)
- teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
* fix alsa mixer restore to not print error when no config is stored
* make cryptsetup lower --iter-time
* patch kernel for xattr support in /dev, /proc/, /sys?
* kernel: add device_type = "fb", "fbcon" to class "graphics"
* drop accountsservice's StandardOutput=syslog and Type=dbus fields
* dbus upstream still refers to dbus.target and should not
* dbus: in fedora, make /var/lib/dbus/machine-id a symlink to /etc/machine-id
* add "# export SYSTEMD_PAGER=" to bash login
* /usr/bin/service should actually show the new command line
* fedora: suggest auto-restart on failure, but not on success and not on coredump. also, ask people to think about changing the start limit logic. Also point people to RestartPreventExitStatus=, SuccessExitStatus=
* fedora: F20: go timer units all the way, leave cron.daily for cron
* neither pkexec nor sudo initialize environ[] from the PAM environment?
* fedora: update policy to declare access mode and ownership of unit files to root:root 0644, and add an rpmlint check for it
* register catalog database signature as file magic
* zsh shell completion:
- <command> <verb> -<TAB> should complete options, but currently does not
- systemctl add-wants,add-requires
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
* pahole
* set_put(), hashmap_put() return values check. i.e. == 0 does not 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)