From Fedora Project Wiki
(→‎Change Proposal Name: remote systemd-netword subpackage part)
Line 21: Line 21:


<!-- The actual name of your proposed change page should look something like: Changes/Your_Change_Proposal_Name.  This keeps all change proposals in the same namespace -->
<!-- The actual name of your proposed change page should look something like: Changes/Your_Change_Proposal_Name.  This keeps all change proposals in the same namespace -->
= Change Proposal Name <!-- The name of your change proposal --> =
= Systemd Package Split =


== Summary ==
== Summary ==
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release. -->
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release. -->
Split systemd-units and systemd-network subpackages out of the main systemd package
Split systemd-units out of the main systemd package


== Owner ==
== Owner ==
Line 61: Line 61:
Systemd contains many binaries and depends on a fairly large number of libraries. Packages which carry systemd units currently have to depend on systemd (through %post, %preun, %postun macros used to install and uninstall systemd units), which grows the dependency tree and increases the size of minimal installs.
Systemd contains many binaries and depends on a fairly large number of libraries. Packages which carry systemd units currently have to depend on systemd (through %post, %preun, %postun macros used to install and uninstall systemd units), which grows the dependency tree and increases the size of minimal installs.


With this proposal, two new subpackages will be split out:
With this proposal systemd-units subpackages will be split out again:


=== systemd-units ===
=== systemd-units ===
Line 69: Line 69:


Systemd previously had a -units subpackage and ~150 packages still depend on it. Those packages would start using the reduced subpackage immediately. Other packages wishing to use the reduced dependency, would have to change the BuildRequires and Requires to systemd-units.
Systemd previously had a -units subpackage and ~150 packages still depend on it. Those packages would start using the reduced subpackage immediately. Other packages wishing to use the reduced dependency, would have to change the BuildRequires and Requires to systemd-units.
=== systemd-network ===
This subpackage will contain the new network-related daemons being developed as part of systemd upstream, which are not yet the default and are not widely used: systemd-networkd, systemd-timesyncd, systemd-resolved.
libnss_resolve would also be included in this package, since it is useless without resolved.
The main systemd package would *not* require this package. Users of systemd-networkd, systemd-timesyncd, systemd-resolved would have to install it manually. This mirrors the systemd-journal-gateway subpackage.


== Benefit to Fedora ==
== Benefit to Fedora ==
Line 95: Line 89:


== Upgrade/compatibility impact ==
== Upgrade/compatibility impact ==
For users of systemd-networkd, systemd-timesyncd, systemd-networkd: need to install additional package.
Should not result in visible changes.


== How To Test ==
== How To Test ==

Revision as of 15:24, 20 January 2015


Systemd Package Split

Summary

Split systemd-units out of the main systemd package

Owner

Current status

  • Targeted release: Fedora 22
  • Last updated: 2015/1/19
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

Systemd contains many binaries and depends on a fairly large number of libraries. Packages which carry systemd units currently have to depend on systemd (through %post, %preun, %postun macros used to install and uninstall systemd units), which grows the dependency tree and increases the size of minimal installs.

With this proposal systemd-units subpackages will be split out again:

systemd-units

This subpackage will contain the directories and binaries necessary to satisfy %post, %preun, %postun macros for packages containing systemd units (systemctl, systemd-escape, systemd-sysusers, udevadm, journalctl), and config information (pkg-config files).

The main systemd package would require this package so it will be pulled in on all existing systems. All packages which have BuildRequires:systemd will also pull it in transitively.

Systemd previously had a -units subpackage and ~150 packages still depend on it. Those packages would start using the reduced subpackage immediately. Other packages wishing to use the reduced dependency, would have to change the BuildRequires and Requires to systemd-units.

Benefit to Fedora

Smaller installation footprint in minimal chroot installations and in mock build roots.

For some previous discussions, see:

Scope

  • Proposal owners: Create the subpackage, test that macros work as expected.
  • Other developers: Change the BuildRequires and Requires to systemd-units if wanted.
  • Release engineering: None
  • Policies and guidelines: s/systemd/systemd-units/ in the appropriate places.

Upgrade/compatibility impact

Should not result in visible changes.

How To Test

Check that packages build and install properly. Macros for packages with systemd units should produce the same result when run without systemd installed or running, as with.

User Experience

N/A (not a System Wide Change)

Dependencies

N/A (not a System Wide Change)

Contingency Plan

Revert the packaging change and rebuild systemd. Main systemd package would provide systemd-units, as it does now, so no other changes should be necessary.

  • Contingency deadline: should be possible at any time.
  • Blocks release? No.
  • Blocks product? No.

Documentation

Packaging guidelines for systemd should be updated.

Release Notes

Parts of the systemd that are not necessary in minimal environments became optional.