X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=NEWS;h=b04f1b5bc7db2eacbbbb9f8767dc79bc294fca1e;hp=ec563888115a699d58cf2e989807da5cf8be7d11;hb=bf6dcfa6a79a459239799a21bdcba115d696a006;hpb=aad803af990f7c88e94427b9278d88afe3a12d38 diff --git a/NEWS b/NEWS index ec5638881..b04f1b5bc 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,446 @@ systemd System and Service Manager +CHANGES WITH 197: + + * Timer units now support calendar time events in addition to + monotonic time events. That means you can now trigger a unit + based on a calendar time specification such as "Thu,Fri + 2013-*-1,5 11:12:13" which refers to 11:12:13 of the first + or fifth day of any month of the year 2013, given that it is + a thursday or friday. This brings timer event support + considerably closer to cron's capabilities. For details on + the supported calendar time specification language see + systemd.time(7). + + * udev now supports a number of different naming policies for + network interfaces for predictable names, and a combination + of these policies is now the default. Please see this wiki + document for details: + + http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames + + * Auke Kok's bootchart implementation has been added to the + systemd tree. It's an optional component that can graph the + boot in quite some detail. It's one of the best bootchart + implementations around and minimal in its code and + dependencies. + + * nss-myhostname has been integrated into the systemd source + tree. nss-myhostname guarantees that the local hostname + always stays resolvable via NSS. It has been a weak + requirement of systemd-hostnamed since a long time, and + since its code is actually trivial we decided to just + include it in systemd's source tree. It can be turned off + with a configure switch. + + * The read-ahead logic is now capable of properly detecting + whether a btrfs file system is on SSD or rotating media, in + order to optimize the read-ahead scheme. Previously, it was + only capable of detecting this on traditional file systems + such as ext4. + + * In udev, additional device properties are now read from the + IAB in addition to the OUI database. Also, Bluetooth company + identities are attached to the devices as well. + + * In service files %U may be used as specifier that is + replaced by the configured user name of the service. + + * nspawn may now be invoked without a controlling TTY. This + makes it suitable for invocation as its own service. This + may be used to set up a simple containerized server system + using only core OS tools. + + * systemd and nspawn can now accept socket file descriptors + when they are started for socket activation. This enables + implementation of socket activated nspawn + containers. i.e. think about autospawning an entire OS image + when the first SSH or HTTP connection is received. We expect + that similar functionality will also be added to libvirt-lxc + eventually. + + * journalctl will now suppress ANSI color codes when + presenting log data. + + * systemctl will no longer show control group information for + a unit if a the control group is empty anyway. + + * logind can now automatically suspend/hibernate/shutdown the + system on idle. + + * /etc/machine-info and hostnamed now also expose the chassis + type of the system. This can be used to determine whether + the local system is a laptop, desktop, handset or + tablet. This information may either be configured by the + user/vendor or is automatically determined from ACPI and DMI + information if possible. + + * A number of PolicyKit actions are now bound together with + "imply" rules. This should simplify creating UIs because + many actions will now authenticate similar ones as well. + + * Unit files learnt a new condition ConditionACPower= which + may be used to conditionalize a unit depending on whether an + AC power source is connected or not, of whether the system + is running on battery power. + + * systemctl gained a new "is-failed" verb that may be used in + shell scripts and suchlike to check whether a specific unit + is in the "failed" state. + + * The EnvironmentFile= setting in unit files now supports file + globbing, and can hence be used to easily read a number of + environment files at once. + + * systemd will no longer detect and recognize specific + distributions. All distribution-specific #ifdeffery has been + removed, systemd is now fully generic and + distribution-agnostic. Effectively, not too much is lost as + a lot of the code is still accessible via explicit configure + switches. However, support for some distribution specific + legacy configuration file formats has been dropped. We + recommend distributions to simply adopt the configuration + files everybody else uses now and convert the old + configuration from packaging scripts. Most distributions + already did that. If that's not possible or desirable, + distributions are welcome to forward port the specific + pieces of code locally from the git history. + + * When logging a message about a unit systemd will now always + log the unit name in the message meta data. + + * localectl will now also discover system locale data that is + not stored in locale archives, but directly unpacked. + + * logind will no longer unconditionally use framebuffer + devices as seat masters, i.e. as devices that are required + to be existing before a seat is considered preset. Instead, + it will now look for all devices that are tagged as + "seat-master" in udev. By default framebuffer devices will + be marked as such, but depending on local systems other + devices might be marked as well. This may be used to + integrate graphics cards using closed source drivers (such + as NVidia ones) more nicely into logind. Note however, that + we recommend using the open source NVidia drivers instead, + and no udev rules for the closed-source drivers will be + shipped from us upstream. + + Contributions from: Adam Williamson, Alessandro Crismani, Auke + Kok, Colin Walters, Daniel Wallace, Dave Reisner, David + Herrmann, David Strauss, Dimitrios Apostolou, Eelco Dolstra, + Eric Benoit, Giovanni Campagna, Hannes Reinecke, Henrik + Grindal Bakken, Hermann Gausterer, Kay Sievers, Lennart + Poettering, Lukas Nykryn, Mantas Mikulėnas, Marcel Holtmann, + Martin Pitt, Matthew Monaco, Michael Biebl, Michael Terry, + Michal Schmidt, Michal Sekletar, Michał Bartoszkiewicz, Oleg + Samarin, Pekka Lundstrom, Philip Nilsson, Ramkumar + Ramachandra, Richard Yao, Robert Millan, Sami Kerola, Shawn + Landden, Thomas Hindoe Paaboel Andersen, Thomas Jarosch, + Tollef Fog Heen, Tom Gundersen, Umut Tezduyar, Zbigniew + Jędrzejewski-Szmek + +CHANGES WITH 196: + + * udev gained support for loading additional device properties + from an indexed database that is keyed by vendor/product IDs + and similar device identifiers. For the beginning this + "hwdb" is populated with data from the well-known PCI and + USB database, but also includes PNP, ACPI and OID data. In + the longer run this indexed database shall grow into + becoming the one central database for non-essential + userspace device metadata. Previously, data from the PCI/USB + database was only attached to select devices, since the + lookup was a relatively expensive operation due to O(n) time + complexity (with n being the number of entries in the + database). Since this is now O(1), we decided to add in this + data for all devices where this is available, by + default. Note that the indexed database needs to be rebuilt + when new data files are installed. To achieve this you need + to update your packaging scripts to invoke "udevadm hwdb + --update" after installation of hwdb data files. For + RPM-based distributions we introduced the new + %udev_hwdb_update macro for this purpose. + + * The Journal gained support for the "Message Catalog", an + indexed database to link up additional information with + journal entries. For further details please check: + + http://www.freedesktop.org/wiki/Software/systemd/catalog + + The indexed message catalog database also needs to be + rebuilt after installation of message catalog files. Use + "journalctl --update-catalog" for this. For RPM-based + distributions we introduced the %journal_catalog_update + macro for this purpose. + + * The Python Journal bindings gained support for the standard + Python logging framework. + + * The Journal API gained new functions for checking whether + the underlying file system of a journal file is capable of + properly reporting file change notifications, or whether + applications that want to reflect journal changes "live" + need to recheck journal files continously in appropriate + time intervals. + + * It is now possible to set the "age" field for tmpfiles + entries to 0, indicating that files matching this entry + shall always be removed when the directories are cleaned up. + + * coredumpctl gained a new "gdb" verb which invokes gdb + right-away on the selected coredump. + + * There's now support for "hybrid sleep" on kernels that + support this, in addition to "suspend" and "hibernate". Use + "systemctl hybrid-sleep" to make use of this. + + * logind's HandleSuspendKey= setting (and related settings) + now gained support for a new "lock" setting to simply + request the screen lock on all local sessions, instead of + actually executing a suspend or hibernation. + + * systemd will now mount the EFI variables file system by + default. + + * Socket units now gained support for configuration of the + SMACK security label. + + * timedatectl will now output the time of the last and next + daylight saving change. + + * We dropped support for various legacy and distro-specific + concepts, such as insserv, early-boot SysV services + (i.e. those for non-standard runlevels such as 'b' or 'S') + or ArchLinux /etc/rc.conf support. We recommend the + distributions who still need support this to either continue + to maintain the necessary patches downstream, or find a + different solution. (Talk to us if you have questions!) + + * Various systemd components will now bypass PolicyKit checks + for root and otherwise handle properly if PolicyKit is not + found to be around. This should fix most issues for + PolicyKit-less systems. Quite frankly this should have been + this way since day one. It is absolutely our intention to + make systemd work fine on PolicyKit-less systems, and we + consider it a bug if something doesn't work as it should if + PolicyKit is not around. + + * For embedded systems it is now possible to build udev and + systemd without blkid and/or kmod support. + + * "systemctl switch-root" is now capable of switching root + more than once. I.e. in addition to transitions from the + initrd to the host OS it is now possible to transition to + further OS images from the host. This is useful to implement + offline updating tools. + + * Various other additions have been made to the RPM macros + shipped with systemd. Use %udev_rules_update() after + installing new udev rules files. %_udevhwdbdir, + %_udevrulesdir, %_journalcatalogdir, %_tmpfilesdir, + %_sysctldir are now available which resolve to the right + directories for packages to place various data files in. + + * journalctl gained the new --full switch (in addition to + --all, to disable ellipsation for long messages. + + Contributions from: Anders Olofsson, Auke Kok, Ben Boeckel, + Colin Walters, Cosimo Cecchi, Daniel Wallace, Dave Reisner, + Eelco Dolstra, Holger Hans Peter Freyther, Kay Sievers, + Chun-Yi Lee, Lekensteyn, Lennart Poettering, Mantas Mikulėnas, + Marti Raudsepp, Martin Pitt, Mauro Dreissig, Michael Biebl, + Michal Schmidt, Michal Sekletar, Miklos Vajna, Nis Martensen, + Oleksii Shevchuk, Olivier Brunel, Ramkumar Ramachandra, Thomas + Bächler, Thomas Hindoe Paaboel Andersen, Tom Gundersen, Tony + Camuso, Umut Tezduyar, Zbigniew Jędrzejewski-Szmek + +CHANGES WITH 195: + + * journalctl gained new --since= and --until= switches to + filter by time. It also now supports nice filtering for + units via --unit=/-u. + + * Type=oneshot services may use ExecReload= and do the + right thing. + + * The journal daemon now supports time-based rotation and + vacuuming, in addition to the usual disk-space based + rotation. + + * The journal will now index the available field values for + each field name. This enables clients to show pretty drop + downs of available match values when filtering. The bash + completion of journalctl has been updated + accordingly. journalctl gained a new switch -F to list all + values a certain field takes in the journal database. + + * More service events are now written as structured messages + to the journal, and made recognizable via message IDs. + + * The timedated, localed and hostnamed mini-services which + previously only provided support for changing time, locale + and hostname settings from graphical DEs such as GNOME now + also have a minimal (but very useful) text-based client + utility each. This is probably the nicest way to changing + these settings from the command line now, especially since + it lists available options and is fully integrated with bash + completion. + + * There's now a new tool "systemd-coredumpctl" to list and + extract coredumps from the journal. + + * We now install a README each in /var/log/ and + /etc/rc.d/init.d explaining where the system logs and init + scripts went. This hopefully should help folks who go to + that dirs and look into the otherwise now empty void and + scratch their heads. + + * When user-services are invoked (by systemd --user) the + $MANAGERPID env var is set to the PID of systemd. + + * SIGRTMIN+24 when sent to a --user instance will now result + in immediate termination of systemd. + + * gatewayd received numerous feature additions such as a + "follow" mode, for live syncing and filtering. + + * browse.html now allows filtering and showing detailed + information on specific entries. Keyboard navigation and + mouse screen support has been added. + + * gatewayd/journalctl now supports HTML5/JSON + Server-Sent-Events as output. + + * The SysV init script compatibility logic will now + heuristically determine whether a script supports the + "reload" verb, and only then make this available as + "systemctl reload". + + * "systemctl status --follow" has been removed, use "journalctl + -u" instead. + + * journald.conf's RuntimeMinSize=, PersistentMinSize= settings + have been removed since they are hardly useful to be + configured. + + * And I'd like to take the opportunity to specifically mention + Zbigniew for his great contributions. Zbigniew, you rock! + + Contributions from: Andrew Eikum, Christian Hesse, Colin + Guthrie, Daniel J Walsh, Dave Reisner, Eelco Dolstra, Ferenc + Wágner, Kay Sievers, Lennart Poettering, Lukas Nykryn, Mantas + Mikulėnas, Martin Mikkelsen, Martin Pitt, Michael Olbrich, + Michael Stapelberg, Michal Schmidt, Sebastian Ott, Thomas + Bächler, Umut Tezduyar, Will Woods, Wulf C. Krueger, Zbigniew + Jędrzejewski-Szmek, Сковорода Никита Андреевич + +CHANGES WITH 194: + + * If /etc/vconsole.conf is non-existent or empty we will no + longer load any console font or key map at boot by + default. Instead the kernel defaults will be left + intact. This is definitely the right thing to do, as no + configuration should mean no configuration, and hard-coding + font names that are different on all archs is probably a bad + idea. Also, the kernel default key map and font should be + good enough for most cases anyway, and mostly identical to + the userspace fonts/key maps we previously overloaded them + with. If distributions want to continue to default to a + non-kernel font or key map they should ship a default + /etc/vconsole.conf with the appropriate contents. + + Contributions from: Colin Walters, Daniel J Walsh, Dave + Reisner, Kay Sievers, Lennart Poettering, Lukas Nykryn, Tollef + Fog Heen, Tom Gundersen, Zbigniew Jędrzejewski-Szmek + +CHANGES WITH 193: + + * journalctl gained a new --cursor= switch to show entries + starting from the specified location in the journal. + + * We now enforce a size limit on journal entry fields exported + with "-o json" in journalctl. Fields larger than 4K will be + assigned null. This can be turned off with --all. + + * An (optional) journal gateway daemon is now available as + "systemd-journal-gatewayd.service". This service provides + access to the journal via HTTP and JSON. This functionality + will be used to implement live log synchronization in both + pull and push modes, but has various other users too, such + as easy log access for debugging of embedded devices. Right + now it is already useful to retrieve the journal via HTTP: + + # systemctl start systemd-journal-gatewayd.service + # wget http://localhost:19531/entries + + This will download the journal contents in a + /var/log/messages compatible format. The same as JSON: + + # curl -H"Accept: application/json" http://localhost:19531/entries + + This service is also accessible via a web browser where a + single static HTML5 app is served that uses the JSON logic + to enable the user to do some basic browsing of the + journal. This will be extended later on. Here's an example + screenshot of this app in its current state: + + http://0pointer.de/public/journal-gatewayd + + Contributions from: Kay Sievers, Lennart Poettering, Robert + Milasan, Tom Gundersen + +CHANGES WITH 192: + + * The bash completion logic is now available for journalctl + too. + + * We don't mount the "cpuset" controller anymore together with + "cpu" and "cpuacct", as "cpuset" groups generally cannot be + started if no parameters are assigned to it. "cpuset" hence + broke code that assumed it it could create "cpu" groups and + just start them. + + * journalctl -f will now subscribe to terminal size changes, + and line break accordingly. + + Contributions from: Dave Reisner, Kay Sievers, Lennart + Poettering, Lukas Nykrynm, Mirco Tischler, Václav Pavlín + +CHANGES WITH 191: + + * nspawn will now create a symlink /etc/localtime in the + container environment, copying the host's timezone + setting. Previously this has been done via a bind mount, but + since symlinks cannot be bind mounted this has now been + changed to create/update the appropriate symlink. + + * journalctl -n's line number argument is now optional, and + will default to 10 if omitted. + + * journald will now log the maximum size the journal files may + take up on disk. This is particularly useful if the default + built-in logic of determining this parameter from the file + system size is used. Use "systemctl status + systemd-journald.service" to see this information. + + * The multi-seat X wrapper tool has been stripped down. As X + is now capable of enumerating graphics devices via udev in a + seat-aware way the wrapper is not strictly necessary + anymore. A stripped down temporary stop-gap is still shipped + until the upstream display managers have been updated to + fully support the new X logic. Expect this wrapper to be + removed entirely in one of the next releases. + + * HandleSleepKey= in logind.conf has been split up into + HandleSuspendKey= and HandleHibernateKey=. The old setting + is not available anymore. X11 and the kernel are + distuingishing between these keys and we should too. This + also means the inhibition lock for these keys has been split + into two. + + Contributions from: Dave Airlie, Eelco Dolstra, Lennart + Poettering, Lukas Nykryn, Václav Pavlín + CHANGES WITH 190: * Whenever a unit changes state we'll now log this to the @@ -8,7 +449,7 @@ CHANGES WITH 190: * ConditionPathIsMountPoint= can now properly detect bind mount points too. (Previously, a bind mount of one file - system to another place in the file system could not be + system to another place in the same file system could not be detected as mount, since they shared struct stat's st_dev field.) @@ -65,9 +506,9 @@ CHANGES WITH 190: various projects outside of systemd that provide bindings for languages such as PHP or Lua. - * Many conditions will not resolve specifiers such as %i. They - are also available in PathChanged= and related directives of - .path units. + * Many conditions will now resolve specifiers such as %i. In + addition, PathChanged= and related directives of .path units + now support specifiers as well. * There's now a new RPM macro definition for the system preset dir: %_presetdir. @@ -81,7 +522,7 @@ CHANGES WITH 190: and hence the information in /etc/timezone is not necessary anymore. - * logind will now always resolve one VT for a text getty (VT6 + * logind will now always reserve one VT for a text getty (VT6 by default). Previously if more than 6 X sessions where started they took up all the VTs with auto-spawned gettys, so that no text gettys were available anymore. @@ -119,7 +560,7 @@ CHANGES WITH 190: for the host name (%H), the machine ID (%m) and the boot ID (%b). - Contributions from Allin Cottrell, Auke Kok, Brandon Philips, + Contributions from: Allin Cottrell, Auke Kok, Brandon Philips, Colin Guthrie, Colin Walters, Daniel J Walsh, Dave Reisner, Eelco Dolstra, Jan Engelhardt, Kay Sievers, Lennart Poettering, Lucas De Marchi, Lukas Nykryn, Mantas Mikulėnas, @@ -183,7 +624,7 @@ CHANGES WITH 189: * Services which hit the restart limit will now be placed in a failure state. - Contributions from Bertram Poettering, Dave Reisner, Huang + Contributions from: Bertram Poettering, Dave Reisner, Huang Hang, Kay Sievers, Lennart Poettering, Lukas Nykryn, Martin Pitt, Simon Peeters, Zbigniew Jędrzejewski-Szmek @@ -462,6 +903,7 @@ CHANGES WITH 186: Shawn Landden, Tom Gundersen CHANGES WITH 185: + * "systemctl help " now shows the man page if one is available. @@ -480,6 +922,7 @@ CHANGES WITH 185: Matthias Clasen CHANGES WITH 184: + * logind is now capable of (optionally) handling power and sleep keys as well as the lid switch. @@ -496,6 +939,7 @@ CHANGES WITH 184: Menzel, Shawn Landden, Tero Roponen, Tom Gundersen CHANGES WITH 183: + * Note that we skipped 139 releases here in order to set the new version to something that is greater than both udev's and systemd's most recent version number. @@ -683,6 +1127,7 @@ CHANGES WITH 183: Gundersen CHANGES WITH 44: + * This is mostly a bugfix release * Support optional initialization of the machine ID from the @@ -728,6 +1173,7 @@ CHANGES WITH 44: Reding CHANGES WITH 43: + * This is mostly a bugfix release * systems lacking /etc/os-release are no longer supported. @@ -741,6 +1187,7 @@ CHANGES WITH 43: Biebl CHANGES WITH 42: + * This is an important bugfix release for v41. * Building man pages is now optional which should be useful @@ -762,6 +1209,7 @@ CHANGES WITH 42: Schmidt, Michał Górny, Piotr Drąg CHANGES WITH 41: + * The systemd binary is installed /usr/lib/systemd/systemd now; An existing /sbin/init symlink needs to be adapted with the package update. @@ -789,6 +1237,7 @@ CHANGES WITH 41: William Douglas CHANGES WITH 40: + * This is mostly a bugfix release * We now expose the reason why a service failed in the @@ -807,6 +1256,7 @@ CHANGES WITH 40: Mike Kazantsev, Ray Strode CHANGES WITH 39: + * This is mostly a test release, but incorporates many bugfixes. @@ -864,6 +1314,7 @@ CHANGES WITH 39: Poettering, Michal Schmidt CHANGES WITH 38: + * This is mostly a test release, but incorporates many bugfixes.