New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create and upload a few templates for the user to choose from #828

Closed
marmarek opened this Issue Mar 8, 2015 · 15 comments

Comments

Projects
None yet
1 participant
@marmarek
Member

marmarek commented Mar 8, 2015

Reported by joanna on 19 Apr 2014 09:26 UTC
As we introduced template repositories in R2rc1 (backed by sf.net storage) we can now easily offer a few templates to the user to download.

Propositions:

  1. qubes-template-fedora-20-x64-minimal (minimal Xorg only, perhaps just xterm)
  2. qubes-template-fedora-20-x64-standard (what we have currently, minus the Adobe flash plugin, also without LibreOffice installed)
  3. qubes-template-fedora-20-x64-fullyloaded (what we have currently, plus rpmfusion and goole-chrome/etc repos installed?)

Migrated-From: https://wiki.qubes-os.org/ticket/828

@marmarek marmarek added this to the Release 2 milestone Mar 8, 2015

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by marmarek on 13 May 2014 02:26 UTC
Regarding minimal template - qubes-manager calls gpk-update-viewer for installing updates. Does this template can have it installed (and all its dependencies)? Alternative the user can call yum update manually from xterm (but the button in qubes-manager will not work).

There are also other packages with large chain of dependencies, for example qubes-core-vm -> nautilus-actions -> nautilus -> some GNOME packages, or mimeopen -> set of perl modules.

Anyway "minimal" template with all the above crap have 1.6GB root.img and about 400 packages installed.

Member

marmarek commented Mar 8, 2015

Comment by marmarek on 13 May 2014 02:26 UTC
Regarding minimal template - qubes-manager calls gpk-update-viewer for installing updates. Does this template can have it installed (and all its dependencies)? Alternative the user can call yum update manually from xterm (but the button in qubes-manager will not work).

There are also other packages with large chain of dependencies, for example qubes-core-vm -> nautilus-actions -> nautilus -> some GNOME packages, or mimeopen -> set of perl modules.

Anyway "minimal" template with all the above crap have 1.6GB root.img and about 400 packages installed.

@marmarek marmarek self-assigned this Mar 8, 2015

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by joanna on 13 May 2014 11:49 UTC
I think we can afford to break those deps in the "minimal" template. It's not gonna be a default one anyway, and if the user want to use it, then some tinkering would be required anyway. So, I think the minimal template should only have the necessary deps to have X and xterm -- I wonder how large would that make it?

Member

marmarek commented Mar 8, 2015

Comment by joanna on 13 May 2014 11:49 UTC
I think we can afford to break those deps in the "minimal" template. It's not gonna be a default one anyway, and if the user want to use it, then some tinkering would be required anyway. So, I think the minimal template should only have the necessary deps to have X and xterm -- I wonder how large would that make it?

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by marmarek on 14 May 2014 02:52 UTC
I've temporary split qubes-core-vm-meta out of qubes-core-vm to carry all the dependencies required for some Qubes RPC services, but not VM itself. This covers all above examples.
With this change, minimal template have about 200 packages, root.img have ~800MB, template rpm (which is compressed) - 163MB. Haven't checked yet if this template is working...

Member

marmarek commented Mar 8, 2015

Comment by marmarek on 14 May 2014 02:52 UTC
I've temporary split qubes-core-vm-meta out of qubes-core-vm to carry all the dependencies required for some Qubes RPC services, but not VM itself. This covers all above examples.
With this change, minimal template have about 200 packages, root.img have ~800MB, template rpm (which is compressed) - 163MB. Haven't checked yet if this template is working...

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by marmarek on 15 May 2014 20:54 UTC
What about an audio? Not installing pulseaudio saves next 20 pkgs. But of course sound will not work.
Similar for NetworkManager - without it, the template will be useless for NetVM, but will work just fine as standard AppVM (or ProxyVM). It also saves about 20-30 pkgs.

Member

marmarek commented Mar 8, 2015

Comment by marmarek on 15 May 2014 20:54 UTC
What about an audio? Not installing pulseaudio saves next 20 pkgs. But of course sound will not work.
Similar for NetworkManager - without it, the template will be useless for NetVM, but will work just fine as standard AppVM (or ProxyVM). It also saves about 20-30 pkgs.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by marmarek on 15 May 2014 20:58 UTC
Replying to marmarek:

What about an audio? Not installing pulseaudio saves next 20 pkgs. But of course sound will not work.
Similar for NetworkManager - without it, the template will be useless for NetVM, but will work just fine as standard AppVM (or ProxyVM). It also saves about 20-30 pkgs.

Without above mentioned packages, root.img is 580MB, rpm - 130MB.

Member

marmarek commented Mar 8, 2015

Comment by marmarek on 15 May 2014 20:58 UTC
Replying to marmarek:

What about an audio? Not installing pulseaudio saves next 20 pkgs. But of course sound will not work.
Similar for NetworkManager - without it, the template will be useless for NetVM, but will work just fine as standard AppVM (or ProxyVM). It also saves about 20-30 pkgs.

Without above mentioned packages, root.img is 580MB, rpm - 130MB.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by joanna on 19 May 2014 11:03 UTC
Can you still manage all those modifications as just another branch in linux-template?

Member

marmarek commented Mar 8, 2015

Comment by joanna on 19 May 2014 11:03 UTC
Can you still manage all those modifications as just another branch in linux-template?

@marmarek marmarek added enhancement and removed bug labels Mar 8, 2015

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by marmarek on 19 May 2014 11:50 UTC
Not even separate branch required:
http://git.qubes-os.org/?p=marmarek/linux-template-builder.git;a=commit;h=a77a635016e0ed5bf8b3d5a10123404f6f58cf41

What about audio support in minimal template?

Member

marmarek commented Mar 8, 2015

Comment by marmarek on 19 May 2014 11:50 UTC
Not even separate branch required:
http://git.qubes-os.org/?p=marmarek/linux-template-builder.git;a=commit;h=a77a635016e0ed5bf8b3d5a10123404f6f58cf41

What about audio support in minimal template?

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by joanna on 19 May 2014 13:29 UTC
No audio, no NM, no anything beyond X and xterm -- everything beyond that should be left to the user who decided to use this minimal template as a start for some specific task.

Member

marmarek commented Mar 8, 2015

Comment by joanna on 19 May 2014 13:29 UTC
No audio, no NM, no anything beyond X and xterm -- everything beyond that should be left to the user who decided to use this minimal template as a start for some specific task.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by marmarek on 22 May 2014 00:32 UTC
Minimal template done, it can be built with:

make template TEMPLATE_FLAVOR=minimal

Some package installation is suppressed by stub package qubes-template-minimal-stub, which have only dummy provides. List of them:

Provides:   /usr/bin/mimeopen
Provides:   nautilus-actions
Provides:   gnome-packagekit-updater
Provides:   ImageMagick
Provides:   notification-daemon
Provides:   tinyproxy
Provides:   NetworkManager = 0.9.9.0-38
Provides:   pulseaudio = 4.0
Provides:   /usr/bin/pulseaudio

One can always manually install above packages (for example NetworkManager will be required to use that template for netvm). Perhaps it even worth a wiki page - how to use a minimal template.

Other templates should be much easier to implement. But I wonder what is sense of "fullyloaded" one? Installation of rpmfusion/chrome repos is really simple task and there are plenty of instructions for that (hey, people somehow manage to install them on baremetal Fedora!). IMO it don't worth separate template package.

For the "standard" template, IMO the name can be misleading - what is the difference between "qubes-template-fedora-20-x64" and "qubes-template-fedora-20-x64-standard". It isn't even obvious which one is installed by default. Perhaps "small" suffix (removing LibreOffice saves ~350MB)?

Member

marmarek commented Mar 8, 2015

Comment by marmarek on 22 May 2014 00:32 UTC
Minimal template done, it can be built with:

make template TEMPLATE_FLAVOR=minimal

Some package installation is suppressed by stub package qubes-template-minimal-stub, which have only dummy provides. List of them:

Provides:   /usr/bin/mimeopen
Provides:   nautilus-actions
Provides:   gnome-packagekit-updater
Provides:   ImageMagick
Provides:   notification-daemon
Provides:   tinyproxy
Provides:   NetworkManager = 0.9.9.0-38
Provides:   pulseaudio = 4.0
Provides:   /usr/bin/pulseaudio

One can always manually install above packages (for example NetworkManager will be required to use that template for netvm). Perhaps it even worth a wiki page - how to use a minimal template.

Other templates should be much easier to implement. But I wonder what is sense of "fullyloaded" one? Installation of rpmfusion/chrome repos is really simple task and there are plenty of instructions for that (hey, people somehow manage to install them on baremetal Fedora!). IMO it don't worth separate template package.

For the "standard" template, IMO the name can be misleading - what is the difference between "qubes-template-fedora-20-x64" and "qubes-template-fedora-20-x64-standard". It isn't even obvious which one is installed by default. Perhaps "small" suffix (removing LibreOffice saves ~350MB)?

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by joanna on 30 Jun 2014 11:27 UTC
The mini template built and uploaded to templates-itl. It is installable via:

sudo qubes-dom0-update qubes-template-fedora-20-x64-minimal

... and even works :)

Although it takes a very long time to shutdown -- probably something is missing. But that's not such a big problem IMHO ATM.

Member

marmarek commented Mar 8, 2015

Comment by joanna on 30 Jun 2014 11:27 UTC
The mini template built and uploaded to templates-itl. It is installable via:

sudo qubes-dom0-update qubes-template-fedora-20-x64-minimal

... and even works :)

Although it takes a very long time to shutdown -- probably something is missing. But that's not such a big problem IMHO ATM.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by joanna on 30 Jun 2014 11:28 UTC
What is left is to disable the adobe repo in the default template, then build it and upload as well to templates-itl.

Member

marmarek commented Mar 8, 2015

Comment by joanna on 30 Jun 2014 11:28 UTC
What is left is to disable the adobe repo in the default template, then build it and upload as well to templates-itl.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by marmarek on 1 Jul 2014 15:41 UTC
Ok, adobe-release package itself (this carrying adobe .repo file) have BSD license, indeed it is enough do just disable the repo. Should I remove LibreOffice as well from "standard" template? Which template flavor should be the default one (on installation ISO)?

Member

marmarek commented Mar 8, 2015

Comment by marmarek on 1 Jul 2014 15:41 UTC
Ok, adobe-release package itself (this carrying adobe .repo file) have BSD license, indeed it is enough do just disable the repo. Should I remove LibreOffice as well from "standard" template? Which template flavor should be the default one (on installation ISO)?

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by joanna on 1 Jul 2014 18:06 UTC
No, we want only to disable the Adobe repo in the default install because of the license. LibreOffice is part of Fedora, so no reason to disable it other than disk space. I'd leave it on the default template.

Do we want to include also rpmfusion repo definitions in the default template for user's convince? Of course they would be disabled by default.

Member

marmarek commented Mar 8, 2015

Comment by joanna on 1 Jul 2014 18:06 UTC
No, we want only to disable the Adobe repo in the default install because of the license. LibreOffice is part of Fedora, so no reason to disable it other than disk space. I'd leave it on the default template.

Do we want to include also rpmfusion repo definitions in the default template for user's convince? Of course they would be disabled by default.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Comment by marmarek on 1 Jul 2014 23:19 UTC
Adobe repo disabled in default template. IMHO it doesn't worth to install rpmfusion repo by default - it's really simple and well documented, also its standard procedure on other distros.

You can build the template using simple "make template TEMPLATE_FLAVOR=default", which will result in package qubes-template-fedora-20-x64-default. So can be installed on Qubes and will not conflict with already present fedora-20-x64 template.

Member

marmarek commented Mar 8, 2015

Comment by marmarek on 1 Jul 2014 23:19 UTC
Adobe repo disabled in default template. IMHO it doesn't worth to install rpmfusion repo by default - it's really simple and well documented, also its standard procedure on other distros.

You can build the template using simple "make template TEMPLATE_FLAVOR=default", which will result in package qubes-template-fedora-20-x64-default. So can be installed on Qubes and will not conflict with already present fedora-20-x64 template.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Mar 8, 2015

Member

Modified by joanna on 6 Jul 2014 11:49 UTC

Member

marmarek commented Mar 8, 2015

Modified by joanna on 6 Jul 2014 11:49 UTC

@marmarek marmarek closed this Mar 8, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment