Merge lp:~didrocks/ubiquity/minimal-package-list into lp:ubiquity

Proposed by Didier Roche-Tolomelli
Status: Rejected
Rejected by: Iain Lane
Proposed branch: lp:~didrocks/ubiquity/minimal-package-list
Merge into: lp:ubiquity
Prerequisite: lp:~didrocks/ubiquity/minimal-install
Diff against target: 121 lines (+103/-0)
3 files modified
debian/control (+8/-0)
debian/ubiquity-ubuntu-desktop-minimal.install (+1/-0)
debian/ubuntu-desktop/minimal_install_removal (+94/-0)
To merge this branch: bzr merge lp:~didrocks/ubiquity/minimal-package-list
Reviewer Review Type Date Requested Status
Adam Conrad (community) Disapprove
Review via email: mp+337700@code.launchpad.net

Description of the change

New minimal installation for ubuntu desktop

Add a new ubiquity-ubuntu-desktop-minimal package to offer a minimal installation option in ubuntu desktop.

Note that we need, as a workaround, listing principal rdepends and l10n
packages related to the ones we are removing to not have to relax their
dependencies pulling them back on finale installation.
This is until we move to subiquity and multiple layered rootfs.

As of today, normal installation is 4.1G and minimal is 3.5G.

Note: we'll need then to seed in live for ubuntu.bionic ubiquity-ubuntu-desktop-minimal. This way and the fact this is an additional package, only the ubuntu desktop flavor is impacted and present the minimal install option.

To post a comment you must log in.
Revision history for this message
Will Cooke (willcooke) wrote :

Could you add simple-scan to the list as well?

Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

Are you sure? I saw it more as an utility itself (like printing), that people may want even on a minimal install. Can add otherwise.

Revision history for this message
Will Cooke (willcooke) wrote :

> Are you sure? I saw it more as an utility itself (like printing), that people
> may want even on a minimal install. Can add otherwise.

It's easy to install if people want it. Scanning is enough of an edge case to not need by default. I agree printing is a requirement, but not scanning.

6591. By Didier Roche-Tolomelli

Adding simple-scan to the list

Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

I added simple scan. There are other utilities like disk I guess to remove as well.

Revision history for this message
Adam Conrad (adconrad) wrote :

This doesn't belong in ubiquity, but in livecd-rootfs, where all the other package lists come from, which also allows you to generate it on the fly instead of having a static list. There's zero reason for this to be a package.

review: Disapprove
Revision history for this message
Adam Conrad (adconrad) wrote :

FWIW, when I say "there's zero reason for this to be a package", what I mean is that you should just be shipping a minimal-remove list on the ISO, the same as we do for, well, exactly how we already do removal of the live task. This should just be a second pass after live removal, using exactly the same mechanism.

Revision history for this message
Sebastien Bacher (seb128) wrote :

Adam, we went with that "alternative" way because we were asked to look at doing something this cycle and we don't currently have the resources in our team to do things the way you consider the proper one.

Didier who looked at that knows the details better but he's on holidays until feature freeze now but from what he said generating on the flight would requiring splitting the seeds and changing more projects to get the diff generated during the iso build and then used in casper. Is that approximatively right? Doing things this way would also make more difficult to remove libreoffice/thunderbird because they would be pulled back by their translations packages (but we could probably workaround that by making the translations depends on the softwares)

Would it be acceptable to keep the current solution if the list is moved to another package that ubiquity? If not would somebody from the installer team be able to help us to get the seed split and the diff generated and made available to the installer?

Revision history for this message
Dimitri John Ledkov (xnox) wrote :

On 21 February 2018 at 15:42, Sebastien Bacher <email address hidden> wrote:
> Adam, we went with that "alternative" way because we were asked to look at doing something this cycle and we don't currently have the resources in our team to do things the way you consider the proper one.
>
> Didier who looked at that knows the details better but he's on holidays until feature freeze now but from what he said generating on the flight would requiring splitting the seeds and changing more projects to get the diff generated during the iso build and then used in casper. Is that approximatively right? Doing things this way would also make more difficult to remove libreoffice/thunderbird because they would be pulled back by their translations packages (but we could probably workaround that by making the translations depends on the softwares)
>
> Would it be acceptable to keep the current solution if the list is moved to another package that ubiquity? If not would somebody from the installer team be able to help us to get the seed split and the diff generated and made available to the installer?

I believe adam is asking for the "list" to be a file that is dropped
on the .iso by livecd-rootfs, similar to how .disk-info/ is injected,
instead of packaged in the archive as a package. Such that there is no
need to rebuild ubiquity, or any packages in the archive, to update
the list of things to remove, cause a simple iso respin alone will be
enough. (without even rebuilding squashfs).

I don't believe adam is asking for dynamically generating the static
list, but to simply move this static list into ubuntu-cdimage branch
which is code that is used to build desktop-live.iso. No need to
package the static list into a .deb.

--
Regards,

Dimitri.

Revision history for this message
Iain Lane (laney) wrote :

> I don't believe adam is asking for dynamically generating the static
> list, but to simply move this static list into ubuntu-cdimage branch
> which is code that is used to build desktop-live.iso. No need to
> package the static list into a .deb.

It's live-build + livecd-rootfs. I don't think moving it into ubuntu-cdimage would be helpful, unless we did something weird like pass it into the livefs build as extra metadata. I don't think we'd want to do that.

If we're going for short term solutions, maybe we can maintain this as a file on archive-team.internal/seeds / people.c.c/~ubuntu-archive/seeds that livecd-rootfs grabs during the build. AIUI those directories are clones of the appropriate seed branches, so we could stuff a file in there and grab it during live-build/auto/config or so.

Revision history for this message
Iain Lane (laney) wrote :

> If we're going for short term solutions, maybe we can maintain this as a file
> on archive-team.internal/seeds / people.c.c/~ubuntu-archive/seeds that livecd-
> rootfs grabs during the build. AIUI those directories are clones of the
> appropriate seed branches, so we could stuff a file in there and grab it
> during live-build/auto/config or so.

I'm going to try this in -proposed, so that I can get a test:

livecd-rootfs grabs SEEDMIRROR/SEED/BASE_SEED.minimal-remove if it exists, strips all comments from it and stuffs it in a file "filesystem.manifest-minimal-remove" which is outputted by the build.

ubuntu-cdimage downloads the file from the livefs build, and debian-cd includes it in the ISO. AFAICS this is what's needed. I'll make both of those changes and deploy the branches to nusakan.

Assuming that works, I'll get an ISO with the file in /casper and then I'll test on that ISO and change Didier's ubiquity branch to use the new file.

Revision history for this message
Iain Lane (laney) wrote :

Current livefs builds produce that file, and ISOs have it in the right place. e.g.:

https://launchpad.net/~ubuntu-cdimage/+livefs/ubuntu/bionic/ubuntu/+build/125165

Revision history for this message
Iain Lane (laney) wrote :

I guess this is "Rejected", but the actual list that didrocks came up with is in ubuntu-seeds/ubuntu.bionic now.

Unmerged revisions

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/control'
2--- debian/control 2018-02-06 11:37:06 +0000
3+++ debian/control 2018-02-15 10:42:50 +0000
4@@ -146,3 +146,11 @@
5 Description: Remaster a CD with additional oem-config functionality
6 This script remasters a CD with additional packages and optional oem-config
7 preseed data.
8+
9+Package: ubiquity-ubuntu-desktop-minimal
10+Architecture: all
11+Depends: ${misc:Depends},
12+ ubiquity (= ${binary:Version}),
13+Description: Packages to remove for minimal ubuntu desktop
14+ This package ships a list of packages to be removed to create a minimal
15+ Ubuntu Desktop installation.
16
17=== added file 'debian/ubiquity-ubuntu-desktop-minimal.install'
18--- debian/ubiquity-ubuntu-desktop-minimal.install 1970-01-01 00:00:00 +0000
19+++ debian/ubiquity-ubuntu-desktop-minimal.install 2018-02-15 10:42:50 +0000
20@@ -0,0 +1,1 @@
21+debian/ubuntu-desktop/minimal_install_removal usr/share/ubiquity/manifests/
22
23=== added directory 'debian/ubuntu-desktop'
24=== added file 'debian/ubuntu-desktop/minimal_install_removal'
25--- debian/ubuntu-desktop/minimal_install_removal 1970-01-01 00:00:00 +0000
26+++ debian/ubuntu-desktop/minimal_install_removal 2018-02-15 10:42:50 +0000
27@@ -0,0 +1,94 @@
28+# Desktop apps
29+thunderbird
30+transmission-gtk
31+gnome-todo
32+baobab
33+rhythmbox
34+cheese
35+vino
36+shotwell
37+usb-creator-gtk
38+deja-dup
39+gnome-calendar
40+remmina
41+simple-scan
42+
43+# Desktop experience
44+thunderbird-gnome-support
45+
46+# Games
47+aisleriot
48+gnome-mahjongg
49+gnome-mines
50+gnome-sudoku
51+branding-ubuntu
52+
53+# Libreoffice
54+libreoffice-style-breeze
55+libreoffice-gnome
56+libreoffice-writer
57+libreoffice-calc
58+libreoffice-impress
59+libreoffice-math
60+libreoffice-ogltrans
61+libreoffice-pdfimport
62+
63+# Others
64+example-content
65+
66+# Langpacks (keeping libreoffice and thunderbird installed otherwise)
67+libreoffice-l10n-en-gb
68+libreoffice-l10n-es
69+libreoffice-l10n-zh-cn
70+libreoffice-l10n-zh-tw
71+libreoffice-l10n-pt
72+libreoffice-l10n-pt-br
73+libreoffice-l10n-de
74+libreoffice-l10n-fr
75+libreoffice-l10n-it
76+libreoffice-l10n-ru
77+libreoffice-l10n-en-za
78+libreoffice-help-en-gb
79+libreoffice-help-es
80+libreoffice-help-zh-cn
81+libreoffice-help-zh-tw
82+libreoffice-help-pt
83+libreoffice-help-pt-br
84+libreoffice-help-de
85+libreoffice-help-fr
86+libreoffice-help-it
87+libreoffice-help-ru
88+libreoffice-help-en-us
89+thunderbird-locale-en
90+thunderbird-locale-en-gb
91+thunderbird-locale-en-us
92+thunderbird-locale-es
93+thunderbird-locale-es-ar
94+thunderbird-locale-es-es
95+thunderbird-locale-zh-cn
96+thunderbird-locale-zh-hans
97+thunderbird-locale-zh-tw
98+thunderbird-locale-pt
99+thunderbird-locale-pt-br
100+thunderbird-locale-pt-pt
101+thunderbird-locale-de
102+thunderbird-locale-fr
103+thunderbird-locale-it
104+thunderbird-locale-ru
105+
106+# Unused rdepends
107+libreoffice-avmedia-backend-gstreamer
108+libreoffice-base-core
109+libreoffice-common
110+libreoffice-core
111+libreoffice-draw
112+libreoffice-gtk3
113+libreoffice-style-elementary
114+libreoffice-style-galaxy
115+libreoffice-style-tango
116+python3-uno
117+rhythmbox-data
118+rhythmbox-plugin-alternative-toolbar
119+rhythmbox-plugins
120+remmina-plugin-rdp
121+remmina-plugin-vnc

Subscribers

People subscribed via source and target branches

to status/vote changes: