DevHeads.net

Postings by Adam Samalik

Minimization Objective report

This is the Minimization Objective [0] update.

Status: Discovery phase

== systemd-sysusers ==

Many packages pull in Systemd because of systemd-sysusers to create new
users. This is fine in traditional setups where there already is Systemd,
but for containers, that means pulling additional 60MB just to create a new
user.

This is being discussed.

Minimization Team Meeting notes 2019-09-18

<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-18/minimization.2019-09-18-15.01.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-18/minimization.2019-09-18-15.01.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-18/minimizati...</a>
Minutes (text):
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-18/minimization.2019-09-18-15.01.txt" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-18/minimization.2019-09-18-15.01.txt">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-18/minimizati...</a>
Log:
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-18/minimization.2019-09-18-15.01.log.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-18/minimization.2019-09-18-15.01.log.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-18/minimizati...</a>

============================================
#fedora-meeting-1: Minimization Team Meeting
============================================

Meeting started by asamalik at 15:01:28 UTC.

Reminder meeting : Minimization Team Meeting

Dear all,

You are kindly invited to the meeting:
Minimization Team Meeting on 2019-09-18 from 15:00:00 to 16:00:00 GMT
At <a href="mailto:fedora-meeting- ... at irc dot freenode.net">fedora-meeting- ... at irc dot freenode.net</a>

The meeting will be about:
Meeting of the Fedora Minimization Team

Source: <a href="https://apps.fedoraproject.org/calendar/meeting/9598/" title="https://apps.fedoraproject.org/calendar/meeting/9598/">https://apps.fedoraproject.org/calendar/meeting/9598/</a>

Minimization Objective report

This is the Minimization Objective [0] update.

Status: Discovery phase

== Use case analysis ==

Removing Systemd dependency from container use cases:

* Pull request to drop systemd as a runtime requirement [1]

* Pull request to drop systemd as a runtime requirement [2]
* They have one binary that requires systemd, will have a further
discussion with them to figure out how to shrink the container/runtime size

* Pull request to move flatpack-libs from anaconda-core to anaconda-gui [3]
* Determined that flatpack-libs was in the correct space

-- mariadb

Minimization Team Meeting notes 2019-09-11

<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-11/minimization.2019-09-11-15.00.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-11/minimization.2019-09-11-15.00.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-11/minimizati...</a>
Minutes (text):
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-11/minimization.2019-09-11-15.00.txt" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-11/minimization.2019-09-11-15.00.txt">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-11/minimizati...</a>
Log:
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-11/minimization.2019-09-11-15.00.log.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-11/minimization.2019-09-11-15.00.log.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-11/minimizati...</a>

============================================
#fedora-meeting-1: Minimization Team Meeting
============================================

Meeting started by asamalik at 15:00:27 UTC.

Reminder meeting : Minimization Team Meeting

Dear all,

You are kindly invited to the meeting:
Minimization Team Meeting on 2019-09-11 from 15:00:00 to 16:00:00 GMT
At <a href="mailto:fedora-meeting- ... at irc dot freenode.net">fedora-meeting- ... at irc dot freenode.net</a>

The meeting will be about:
Meeting of the Fedora Minimization Team

Source: <a href="https://apps.fedoraproject.org/calendar/meeting/9598/" title="https://apps.fedoraproject.org/calendar/meeting/9598/">https://apps.fedoraproject.org/calendar/meeting/9598/</a>

Minimization Objective report

This is the Minimization Objective [0] update.

Status: Discovery phase

== Feedback Pipeline ==

A prototype is live [1]!

It shows packages and an overall size of use cases we are focusing on,
installed on top of various Fedora bases.

In addition to showing the current status, it will be also pushing package
lists into git.

Minimization Team Meeting notes 2019-09-04

<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-04/minimization.2019-09-04-15.00.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-04/minimization.2019-09-04-15.00.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-04/minimizati...</a>
Minutes (text):
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-04/minimization.2019-09-04-15.00.txt" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-04/minimization.2019-09-04-15.00.txt">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-04/minimizati...</a>
Log:
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-04/minimization.2019-09-04-15.00.log.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-04/minimization.2019-09-04-15.00.log.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-09-04/minimizati...</a>

============================================
#fedora-meeting-1: Minimization Team Meeting
============================================

Meeting started by asamalik at 15:00:33 UTC.

Reminder meeting : Minimization Team Meeting

Dear all,

You are kindly invited to the meeting:
Minimization Team Meeting on 2019-09-04 from 15:00:00 to 16:00:00 GMT
At <a href="mailto:fedora-meeting- ... at irc dot freenode.net">fedora-meeting- ... at irc dot freenode.net</a>

The meeting will be about:
Meeting of the Fedora Minimization Team

Source: <a href="https://apps.fedoraproject.org/calendar/meeting/9598/" title="https://apps.fedoraproject.org/calendar/meeting/9598/">https://apps.fedoraproject.org/calendar/meeting/9598/</a>

Minimization Team Meeting notes 2019-08-28

<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-28/minimization.2019-08-28-15.00.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-28/minimization.2019-08-28-15.00.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-28/minimizati...</a>
Minutes (text):
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-28/minimization.2019-08-28-15.00.txt" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-28/minimization.2019-08-28-15.00.txt">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-28/minimizati...</a>
Log:
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-28/minimization.2019-08-28-15.00.log.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-28/minimization.2019-08-28-15.00.log.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-28/minimizati...</a>

============================================
#fedora-meeting-1: Minimization Team Meeting
============================================

Meeting started by asamalik at 15:00:40 UTC.

Minimization Objective report

This is the Minimization Objective [0] update.

Status: Discovery phase

== Toolbox ==

The 'showme' tool got renamed to 'rpm-showme' to make it more discoverable.
It has been also moved to a new repository of the same name [1].

New features:

* report — generates an html report [2] [3] comparing multiple installations
* list — simply lists all packages of a given installation
* size — prints the total size of all packages in a given installation

See the README in the repository [1] for more details.

== Feedback Pipeline ==

Prototyping Feedback Pipeline — active monitoring and reporting of

Reminder meeting : Minimization Team Meeting

Dear all,

You are kindly invited to the meeting:
Minimization Team Meeting on 2019-08-28 from 15:00:00 to 16:00:00 GMT
At <a href="mailto:fedora-meeting- ... at irc dot freenode.net">fedora-meeting- ... at irc dot freenode.net</a>

The meeting will be about:
Meeting of the Fedora Minimization Team

Source: <a href="https://apps.fedoraproject.org/calendar/meeting/9598/" title="https://apps.fedoraproject.org/calendar/meeting/9598/">https://apps.fedoraproject.org/calendar/meeting/9598/</a>

Minimization Team Meeting notes 2019-08-21

<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-21/minimization.2019-08-21-15.00.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-21/minimization.2019-08-21-15.00.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-21/minimizati...</a>
Minutes (text):
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-21/minimization.2019-08-21-15.00.txt" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-21/minimization.2019-08-21-15.00.txt">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-21/minimizati...</a>
Log:
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-21/minimization.2019-08-21-15.00.log.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-21/minimization.2019-08-21-15.00.log.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-21/minimizati...</a>

============================================
#fedora-meeting-1: Minimization Team Meeting
============================================

Meeting started by asamalik at 15:00:27 UTC.

Minimization Team Meeting notes 2019-08-14

<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-14/minimization.2019-08-14-15.00.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-14/minimization.2019-08-14-15.00.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-14/minimizati...</a>
Minutes (text):
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-14/minimization.2019-08-14-15.00.txt" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-14/minimization.2019-08-14-15.00.txt">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-14/minimizati...</a>
Log:
<a href="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-14/minimization.2019-08-14-15.00.log.html" title="https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-14/minimization.2019-08-14-15.00.log.html">https://meetbot.fedoraproject.org/fedora-meeting-1/2019-08-14/minimizati...</a>

============================================
#fedora-meeting-1: Minimization Team Meeting
============================================

Meeting started by asamalik at 15:00:03 UTC.

Minimization Objective report

This is the Minimization Objective [0] update.

== Regular meeting ==

Team meeting every Wednesday 15:00 GMT (find it in the SIGs calendar [1]).

== Discoveries ==

A new discoveries page [2] created that will contain random useful
discoveries.

Reminder meeting : Minimization Team Meeting

Dear all,

You are kindly invited to the meeting:
Minimization Team Meeting on 2019-08-21 from 15:00:00 to 16:00:00 GMT
At <a href="mailto:fedora-meeting- ... at irc dot freenode.net">fedora-meeting- ... at irc dot freenode.net</a>

The meeting will be about:
Meeting of the Fedora Minimization Team

Source: <a href="https://apps.fedoraproject.org/calendar/meeting/9598/" title="https://apps.fedoraproject.org/calendar/meeting/9598/">https://apps.fedoraproject.org/calendar/meeting/9598/</a>

Reminder meeting : Minimization Team Meeting

Dear all,

You are kindly invited to the meeting:
Minimization Team Meeting on 2019-08-14 from 15:00:00 to 16:00:00 GMT
At <a href="mailto:fedora-meeting- ... at irc dot freenode.net">fedora-meeting- ... at irc dot freenode.net</a>

The meeting will be about:
Meeting of the Fedora Minimization Team

<a href="https://docs.fedoraproject.org/en-US/minimization/team/" title="https://docs.fedoraproject.org/en-US/minimization/team/">https://docs.fedoraproject.org/en-US/minimization/team/</a>

Source: <a href="https://apps.fedoraproject.org/calendar/meeting/9596/" title="https://apps.fedoraproject.org/calendar/meeting/9596/">https://apps.fedoraproject.org/calendar/meeting/9596/</a>

New graphical dependency visualiser prototype

I wrote a script to visualise dependencies of RPM installations [1]. It
supports file paths and container images as an input.

The script generates a graph of packages and their relations including
sizes of all individual packages and some basic clustering. Clicking on a
package highlights its relations to other packages. [2]

Hopefully this will be useful for the Minimization objective [3].

[1] <a href="https://pagure.io/minimization/dependency-visualiser" title="https://pagure.io/minimization/dependency-visualiser">https://pagure.io/minimization/dependency-visualiser</a>
[2] <a href="https://asamalik.fedorapeople.org/showme/fedora-base-image.svg" title="https://asamalik.fedorapeople.org/showme/fedora-base-image.svg">https://asamalik.fedorapeople.org/showme/fedora-base-image.svg</a>
[3] <a href="https://docs.fedoraproject.org/en-US/minimization/" title="https://docs.fedoraproject.org/en-US/minimization/">https://docs.fedoraproject.org/en-US/minimization/</a>

Minimization Objective report

Congratulations!

Join the new Minimization Team

Hi everyone!

I'm starting a Minimization Objective [1] focusing on minimising the
installation size of some of the popular apps, runtimes, and other pieces
of software in Fedora.

And there is a new Minimization Team [2] forming. Members of the team will
consult and work with Fedora maintainers, develop tooling and services,
generate reports showing the status of the Fedora ecosystem and a
comparison with other ecosystems, etc. The goal is to build an environment
where it's easy for our maintainers to keep things small over time, it's
not just a one-off effort.

Modularity vs. libgit

So, I'd like to discuss the libgit issue [1] [2] we're experiencing. With a
help of a few people, I've put together this post to get us on common
ground: <a href="https://communityblog.fedoraproject.org/modularity-vs-libgit/" title="https://communityblog.fedoraproject.org/modularity-vs-libgit/">https://communityblog.fedoraproject.org/modularity-vs-libgit/</a>

There are few ideas about solving the issue right now. But we might be able
to think about better ways to deal with similar issues long-term. Let's do
this!

[1] <a href="https://bugzilla.redhat.com/show_bug.cgi?id=1717117" title="https://bugzilla.redhat.com/show_bug.cgi?id=1717117">https://bugzilla.redhat.com/show_bug.cgi?id=1717117</a>
[2] <a href="https://pagure.io/fesco/issue/2146#comment-575852" title="https://pagure.io/fesco/issue/2146#comment-575852">https://pagure.io/fesco/issue/2146#comment-575852</a>

Modularity question for packagers about rolling/latest/stable/master streams

Some modules now use "latest", "stable", or "master" as stream names for
various different things.

Bringing order to the confusing module stream and profile names

There are module streams named 'latest', 'stable', or 'master', but it's
not quite clear what exactly those mean. Some modules even have the
'master' and the 'latest' streams at the same time which feels quite
confusing.

In a similar manner, there are various unclear profile names, too.
Especially the one called 'default', not always being the default profile.
I see a module having three profiles called 'default', 'client' and
'server', and the 'server' is the default.

Policy change: module defaults changes & Fedora Changes

The Modularity Team has published an updated policy regarding changing
module defaults and submitting Fedora Changes [1].

Simplified summary:
instead of: "Packagers must submit a Fedora Change when changing module
defaults."
it now says: "Packagers should submit a Fedora Change when changing module
defaults based on their best judgement."

That brings it much closer to how we handle major changes in traditional
packages.

Cheers!
Adam

[1]
<a href="https://docs.fedoraproject.org/en-US/modularity/making-modules/managing-defaults/" title="https://docs.fedoraproject.org/en-US/modularity/making-modules/managing-defaults/">https://docs.fedoraproject.org/en-US/modularity/making-modules/managing-...</a>

Querying modular content — workaround

I've just published a blog post about querying modular content [1] which
might be useful if you maintain modules.

It should help you, at least partly, in the following example scenarios:

Rebuilding dependencies after major changes
* A new version of an interpreted language lands in Fedora as a set of
standalone packages.

Topics for the Modularity WG meeting today

Sorry for the last-minute email. There are two things I'd like to discuss
today in the Modularity WG meeting [0]:

I'd like to get the "Stream default changes & Fedora Changes" [1] issue
voted on and hopefully off the table — there are already two +1s in the
ticket, and it doesn't introduce any significant changes.

The next would be "Module streams and defaults during distro upgrades" [2]
— see if we can move this forward.

Contribute to Modularity architecture discussions

Just to make sure this reaches all interested parties, we have some
important discussions about Modularity going on in Pagure tickets:

Distribution Upgrades (reaching decision) — Handling modules, streams, and
defaults during major distribution upgrades.
* Tracker: <a href="https://tree.taiga.io/project/modularity-wg/epic/27" title="https://tree.taiga.io/project/modularity-wg/epic/27">https://tree.taiga.io/project/modularity-wg/epic/27</a>
* Discussion: <a href="https://pagure.io/modularity/issue/108" title="https://pagure.io/modularity/issue/108">https://pagure.io/modularity/issue/108</a>

Module Lifecycles in General (proposal) — The general concept of defining
and managing module lifecycles.
* Tracker: <a href="https://tree.taiga.io/project/modularity-wg/epic/3" title="https://tree.taiga.io/project/modularity-wg/epic/3">https://tree.taiga.io/project/modularity-wg/epic/3</a>
* Discussion: <a href="https://pagure.io/modularity/issue/112" title="https://pagure.io/modularity/issue/112">https://pagure.io/modularity/issue/112</a>

Defau

Fedora Modularity Classroom for packagers next Tuesday

Hey all,

I'll be hosting a Fedora Modularity Classroom targeted at packagers who
want to build multiple versions of software on independent lifecycles for
Fedora.

When: Tuesday, October 09 at 1400 UTC
How: Bluejeans <a href="https://bluejeans.com/6638527489" title="https://bluejeans.com/6638527489">https://bluejeans.com/6638527489</a> (or simply dial MODULARITY)

More details:
<a href="https://fedoramagazine.org/fedora-classroom-session-fedora-modularity-101/" title="https://fedoramagazine.org/fedora-classroom-session-fedora-modularity-101/">https://fedoramagazine.org/fedora-classroom-session-fedora-modularity-101/</a>

Recording will be available on YouTube.

Cheers!
Adam

Removing obsolete github repositories with module definitions

We have some obsolete github repositories [1] from the f26 and f27 period
we are no longer using. I feel like it might be confusing to people. So I'd
like to remove them all. Any objections?

[1] <a href="https://github.com/modularity-modules/" title="https://github.com/modularity-modules/">https://github.com/modularity-modules/</a>

Managing stream (arbitrary) branch and module lifecycles

This is a summary of a recent thread [1].

Traditional branches (such as "f29") have their EOL (end of life) encoded
in the name. But what about stream branches [2] (such as "2.4" or "latest")?

Stream branches of RPM packages would always have an EOL associated with
them.