#182 Add ostree-counting & ostree-desktop subpackages
Merged 2 years ago by sgallagh. Opened 3 years ago by siosm.
rpms/ siosm/fedora-release rawhide  into  rawhide

file modified
+38 -5
@@ -60,7 +60,7 @@ 

  Summary:        Fedora release files

  Name:           fedora-release

  Version:        35

- Release:        0.6%{?eln:.eln%{eln}}

+ Release:        0.7%{?eln:.eln%{eln}}

  License:        MIT

  URL:            https://fedoraproject.org/

  
@@ -423,6 +423,7 @@ 

  Provides:       system-release(%{version})

  Provides:       base-module(platform:f%{version})

  Requires:       fedora-release-common = %{version}-%{release}

+ Requires:       fedora-release-ostree-counting = %{version}-%{release}

  

  # fedora-release-common Requires: fedora-release-identity, so at least one

  # package must provide it. This Recommends: pulls in
@@ -571,6 +572,8 @@ 

  Provides:       system-release(%{version})

  Provides:       base-module(platform:f%{version})

  Requires:       fedora-release-common = %{version}-%{release}

+ Requires:       fedora-release-ostree-counting = %{version}-%{release}

+ Requires:       fedora-release-ostree-desktop = %{version}-%{release}

  

  # fedora-release-common Requires: fedora-release-identity, so at least one

  # package must provide it. This Recommends: pulls in
@@ -608,6 +611,8 @@ 

  Provides:       system-release(%{version})

  Provides:       base-module(platform:f%{version})

  Requires:       fedora-release-common = %{version}-%{release}

+ Requires:       fedora-release-ostree-counting = %{version}-%{release}

+ Requires:       fedora-release-ostree-desktop = %{version}-%{release}

  

  # fedora-release-common Requires: fedora-release-identity, so at least one

  # package must provide it. This Recommends: pulls in
@@ -634,6 +639,24 @@ 

  %endif

  

  

+ %if %{with silverblue} || %{with iot} || %{with kinoite}

This should not be conditional this way. Having the packages exist isn't harmful in any way, since it only gets auto-installed if the release identity packages pull them in.

+ %package ostree-counting

+ Summary:        Configuration package for rpm-ostree variants to enable counting

+ 

+ %description ostree-counting

+ Configuration package for rpm-ostree variants to enable counting

+ %endif

+ 

+ 

+ %if %{with silverblue} || %{with kinoite}

+ %package ostree-desktop

+ Summary:        Configuration package for rpm-ostree variants to add rpm-ostree polkit rules

+ 

+ %description ostree-desktop

+ Configuration package for rpm-ostree variants to add rpm-ostree polkit rules

+ %endif

+ 

+ 

  %if %{with snappy}

  %package snappy

  Summary:        Base package for Fedora snap specific default configurations
@@ -1209,7 +1232,6 @@ 

  %{_prefix}/lib/systemd/user-preset/80-iot-user.preset

  %attr(0644,root,root) %{_swidtagdir}/org.fedoraproject.Fedora-edition.swidtag.iot

  %{_prefix}/lib/zezere-ignition-url

- %{_unitdir}/rpm-ostreed.service.wants/rpm-ostree-countme.timer

  %endif

  

  
@@ -1246,8 +1268,6 @@ 

  # Keep this in sync with workstation below

  %{_datadir}/glib-2.0/schemas/org.gnome.shell.gschema.override

  %{_prefix}/lib/systemd/system-preset/80-workstation.preset

- %attr(0644,root,root) %{_prefix}/share/polkit-1/rules.d/org.projectatomic.rpmostree1.rules

- %{_unitdir}/rpm-ostreed.service.wants/rpm-ostree-countme.timer

  %endif

  

  
@@ -1256,11 +1276,21 @@ 

  %files identity-kinoite

  %{_prefix}/lib/os-release.kinoite

  %attr(0644,root,root) %{_swidtagdir}/org.fedoraproject.Fedora-edition.swidtag.kinoite

- %attr(0644,root,root) %{_prefix}/share/polkit-1/rules.d/org.projectatomic.rpmostree1.rules

+ %endif

+ 

+ 

+ %if %{with silverblue} || %{with iot} || %{with kinoite}

+ %files ostree-counting

  %{_unitdir}/rpm-ostreed.service.wants/rpm-ostree-countme.timer

  %endif

  

  

+ %if %{with silverblue} || %{with kinoite}

+ %files ostree-desktop

+ %attr(0644,root,root) %{_prefix}/share/polkit-1/rules.d/org.projectatomic.rpmostree1.rules

+ %endif

+ 

+ 

  %if %{with snappy}

  %files snappy

  %files identity-snappy
@@ -1298,6 +1328,9 @@ 

  

  

  %changelog

+ * Tue Apr 13 2021 Timothée Ravier <travier@redhat.com> - 35-0.7

+ - Add ostree-counting & ostree-desktop subpackages

+ 

  * Thu Apr 01 2021 Stephen Gallagher <sgallagh@redhat.com> - 35-0.6

  - Enable certbot-renew.timer (bz1942011)

  

Introduce two sub packages to control:

  • counting: if we have enabled Count Me support by default.
  • desktop: if we install the polkit rule to allow privileged users to
    do most rpm-ostree operations via polkit without a password.

We need two distinct sub packages as we currently have the following
matrix of enablement for those features across our different editions
and variants:

              Counting      Desktop
IoT           F34           Never
CoreOS        Planned       Never
Silverblue    F34           Always
Kinoite       F35           F35

This also enables other unofficial / unbranded ostree/rpm-ostree based
Fedora variants to use those packages to enable those features as they
see fit.

See discussion in https://pagure.io/Fedora-Council/tickets/issue/361

Build failed. More information on how to proceed and troubleshoot errors available at https://fedoraproject.org/wiki/Zuul-based-ci

If this variant is accepted, we also need this in generic-release

I'm not going to comment on the concept as a whole (that's for the Council).

For the implementation, I don't actually see the value in creating a new identity for ostree implementations. I think it would make more sense to just create the fedora-release-ostree subpackage with the appropriate PolicyKit and CountMe timers in it and then just include that package in your comps.xml definition. (Those ostree-based deliverables like Silverblue, CoreOS and Kinoite can add a hard dependency on them in the fedora-release package.)

Oh, that's a good idea, I like it.

rebased onto cb973c956bb1319ec84c9de11eb6ad77aa406685

3 years ago

rebased onto efa098a78c13b4126dd096d7b87bf53f3fb54b3e

3 years ago

Build failed. More information on how to proceed and troubleshoot errors available at https://fedoraproject.org/wiki/Zuul-based-ci

Build failed. More information on how to proceed and troubleshoot errors available at https://fedoraproject.org/wiki/Zuul-based-ci

Updated this PR to try the suggestion from @sgallagh and that indeed makes things somewhat "simpler".

rebased onto ae5e741

3 years ago

Build failed. More information on how to proceed and troubleshoot errors available at https://fedoraproject.org/wiki/Zuul-based-ci

This should not be conditional this way. Having the packages exist isn't harmful in any way, since it only gets auto-installed if the release identity packages pull them in.

I think it needs to use conditionals for ELN support but I might have misunderstood.

Ping for review now that F34 is released. Thanks!

I think it needs to use conditionals for ELN support but I might have misunderstood.

This is correct; we use the conditionals to remove all the excess identity packages for ELN composes. You did this right.

This looks good to me, so I'll merge it.

Pull-Request has been merged by sgallagh

2 years ago
Metadata