fedora: reduce minimal template

Build stub package, which prevent some real package get installed. This
of course make some functionalities unusable, but this is a spirit of
minimal template - make it as featureless as possible.
This commit is contained in:
Marek Marczykowski-Górecki 2014-05-21 19:23:36 +02:00
parent 32ed8052bf
commit 93cea2c93f
3 changed files with 52 additions and 4 deletions

View File

@ -9,12 +9,12 @@
<packagereq type="mandatory">qubes-core-vm-systemd</packagereq>
<packagereq type="mandatory">qubes-core-vm</packagereq>
<packagereq type="mandatory">qubes-gui-vm</packagereq>
<packagereq type="mandatory">qubes-gpg-split</packagereq>
<packagereq type="mandatory">xen-libs</packagereq>
<packagereq type="mandatory">xen-qubes-vm-essentials</packagereq>
<packagereq type="default">thunderbird-qubes</packagereq>
<packagereq type="default">qubes-doc-vm</packagereq>
<packagereq type="default">qubes-pdf-converter</packagereq>
<packagereq type="optional">thunderbird-qubes</packagereq>
<packagereq type="optional">qubes-pdf-converter</packagereq>
<packagereq type="optional">qubes-gpg-split</packagereq>
</packagelist>
</group>
</comps>

View File

@ -6,7 +6,11 @@ trap "umount $PWD/mnt/proc" EXIT
export YUM0=$PWD/yum_repo_qubes
if [ "$TEMPLATE_FLAVOR" == "minimal" ]; then
YUM_OPTS="$YUM_OPTS --group_package_types=mandatory"
YUM_OPTS="$YUM_OPTS --setopt=group_package_types=mandatory"
rpmbuild -bb --define "_rpmdir $CACHEDIR" $SCRIPTSDIR/qubes-template-minimal-stub.spec || exit 1
yum install -c $PWD/yum.conf $YUM_OPTS -y --installroot=$(pwd)/mnt $CACHEDIR/*/qubes-template-minimal-stub*rpm || exit 1
else
YUM_OPTS="$YUM_OPTS --setopt=group_package_types=mandatory,default,optional"
fi
echo "--> Installing RPMs..."

View File

@ -0,0 +1,44 @@
Name: qubes-template-minimal-stub
Version: 1.0
Release: 1%{?dist}
Summary: Placeholder package to minimize installed dependencies
Group: Qubes
License: GPL
URL: http://www.qubes-os.org/
Provides: /usr/bin/mimeopen
Provides: nautilus-actions
Provides: gnome-packagekit-updater
Provides: ImageMagick
Provides: notification-daemon
Provides: tinyproxy
# Those versions needs to be updated to match target Fedora release, when introducing new one, use ifdefs on %fedora
Provides: NetworkManager = 0.9.9.0-38
Provides: pulseaudio = 4.0
Provides: /usr/bin/pulseaudio
%description
Placeholder package, which provide ghost dependencies for qubes-core-vm to
minimize number of packages installed in the minimal template. Note that each
of those dependencies is required for some functionality, so without installing
some real package (minimal replacement?) some functionality will be missing. At least those:
- graphical updates
- be a target of qvm-open-in-vm
- be a DisposableVM template
- context menu "Send to VM" entry in nautilus
- graphical notifications
- sending application icons to dom0 (no fancy icons in dom0 menu)
- will not work as netvm
%prep
%build
%install
%files
%changelog