saving space on the Xfce Spin

Charlie Kravetz cjk at teamcharliesangels.com
Sun Oct 7 12:54:21 UTC 2012


On Sun, 7 Oct 2012 14:29:44 +0200
"tim.lauridsen at gmail.com" <tim.lauridsen at gmail.com> wrote:

> On Sun, Oct 7, 2012 at 3:30 AM, Christoph Wickert <
> christoph.wickert at gmail.com> wrote:
> 
> > Hi,
> >
> > currently the Xfce spin is overweight, at least for x86_64. It's 726M,
> > that is 30M more than i686, but this seems normal. That means that we
> > need to find a way to save 26M.
> >
> > First thing that comes to my mind are the gnome packages we ship:
> > # rpm -qa --qf %{NAME}-%{VERSION}-%{VERSION}\\n| grep gnome | sort
> > desktop-backgrounds-gnome-18.0.0-18.0.0
> > gnome-bluetooth-libs-3.6.0-3.6.0
> > gnome-desktop3-3.6.0.1-3.6.0.1
> > gnome-icon-theme-3.6.0-3.6.0
> > gnome-icon-theme-legacy-3.6.0-3.6.0
> > gnome-icon-theme-symbolic-3.6.0-3.6.0
> > gnome-keyring-3.6.0-3.6.0
> > gnome-python2-2.28.1-2.28.1
> > gnome-python2-bonobo-2.28.1-2.28.1
> > gnome-python2-canvas-2.28.1-2.28.1
> > gnome-python2-desktop-2.32.0-2.32.0
> > gnome-python2-gconf-2.28.1-2.28.1
> > gnome-python2-gnome-2.28.1-2.28.1
> > gnome-python2-gnomekeyring-2.32.0-2.32.0
> > gnome-python2-gnomevfs-2.28.1-2.28.1
> > gnome-session-3.6.0-3.6.0
> > gnome-themes-2.32.0-2.32.0
> > gnome-themes-standard-3.6.0.2-3.6.0.2
> > gnome-vfs2-2.24.4-2.24.4
> > gnome-video-effects-0.4.0-0.4.0
> > imsettings-gnome-1.3.1-1.3.1
> > libgnome-2.32.1-2.32.1
> > libgnomecanvas-2.30.3-2.30.3
> > libgnomekbd-3.6.0-3.6.0
> > libgnome-keyring-3.6.0-3.6.0
> > libgnomeui-2.24.5-2.24.5
> > libopenraw-gnome-0.0.8-0.0.8
> > polkit-gnome-0.105-0.105
> > spherical-cow-backgrounds-gnome-17.92.0-17.92.0
> >
> > Next I investigated their dependencies. First is the package name and
> > then what pulls it in. Dependencies are marked with -> while a colon
> > indicates a new package or dependency chain:
> >       * desktop-backgrounds-gnome: system-backgrounds-gnome (virtual
> >         provides of spherical-cow-backgrounds-gnome) -> gnome-desktop3
> >         -> cheese
> >       * gnome-bluetooth-libs: nm-connection-editor -> anaconda and
> >         NetworkManager
> >       * gnome-desktop3: cheese (it only requires libgnome-desktop3)
> >       * gnome-icon-theme: system-config-printer, gnome-themes-standard
> >         -> gnome-desktop3 -> cheese, nm-connection-editor,
> >         network-manager-applet, gnome-themes
> >       * gnome-icon-theme-legacy: libxfcegui4, ibus-gtk2
> >       * gnome-icon-theme-symbolic: anaconda-18.8-2.fc18.i686
> >       * gnome-keyring
> >       * gnome-python2: gnome-python2-*
> >       * gnome-python2-bonobo: blueman -> dbus-bluez-pin-helper (virtual
> >         provides) -> bluez
> >       * gnome-python2-canvas: gnome-python2-bonobo -> blueman,
> >         system-config-date -> firstboot, gnome-python2-gnome ->
> >         gnome-python2-desktop -> gnome-python2-gnomekeyring ->
> >         system-config-printer
> >       * gnome-python2-desktop: ... (see above) -> system-config-printer
> >       * gnome-python2-gconf: blueman
> >       * gnome-python2-gnome: blueman
> >       * gnome-python2-gnomekeyring: system-config-printer
> >       * gnome-python2-gnomevfs: gnome-python2-gnome -> blueman
> >       * gnome-session: blueman (update without this dep is pending)
> >       * gnome-themes: fedora-icon-theme
> >       * gnome-themes-standard: gnome-desktop3 -> cheese
> >       * gnome-vfs2: gnome-python2-gnomevfs -> blueman
> >       * gnome-video-effects: cheese
> >       * imsettings-gnome: ibus
> >       * libgnome: gnome-python2-bonobo, gnome-python2-gnome, libgnomeui,
> >         libbonoboui -> blueman, bluez
> >       * libgnomecanvas: gnome-python2-canvas (see above)
> >       * libgnomekbd: ibus, anaconda
> >       * libgnome-keyring: gnome-python2-gnomekeyring ->
> >         system-config-printer
> >       * libgnomeui: gnome-python2-gnome -> blueman
> >       * libopenraw-gnome: ristretto and tumbler
> >       * polkit-gnome: we use this one
> >       * spherical-cow-backgrounds-gnome: gnome-desktop3 -> cheese
> >
> > Observations:
> >       * As for the libraries, there is nothing we can do. They are not
> >         big either.
> >       * Same goes for the gnome-python2-* packages. Most of them are
> >         required by blueman or by system-config-* stuff. blueman adds
> >         ~23M (installed size, not iso size), but compared to
> >         gnome-bluetooth and it's dependencies, it is still good (~130M!)
> >       * gnome-desktop3 is big and has a lot of deps (themes!), while we
> >         only need the libgnome-desktop-3 for cheese. That's why I filed
> >         https://bugzilla.redhat.com/show_bug.cgi?id=693545 but I don't
> >         think it will be fixed, at least not in time for F18.
> >       * libxfcegui4 depdends on gnome-icon-theme-legacy. This is a
> >         workaround to prevent missing icons (#647734 and #650504). The
> >         legacy package depends on gnome-icon-theme and only provides
> >         symlinks from the old icon names to new freedesktop.org names.
> >         Unfortunately Xfce still hardcodes a lot of old names, even in
> >         4.10. We need to work with the Xfce developers to fix this for
> >         Xfce 4.12 and then we can remove this ugly dependency. It's
> >         definitely too late to do this for F18 now - unless somebody has
> >         time to look into this.
> >       * We only have gnome-themes in the spin because it is a dependency
> >         of fedora-icon-theme. And this is weird: The Fedora theme
> >         inherits the 'Mist', which is part of gnome-themes. We could
> >         make two separate packages mist-icon-theme and crux-icon-theme,
> >         but I wonder if fedora-icon-theme should inherit 'Mist' in first
> >         place. AFAIK GNOME now now uses gnome-icon-theme.
> >
> > Next I looked how much space we could save if we remove packages. I
> > tested this with 'yum remove --remove-leaves foo' on the live system, so
> > again, this is installed size, not iso size:
> >  78M cheese (gnome-desktop3 and wallpapers, gstreamer1)
> >  61M firefox (xulrunner)
> >  45M midori and liferea (webkitgtk)
> >  33M claws-mail and plugins
> >  33M pidgin
> >  33M gnumeric
> >  32M abiword
> >  23M blueman
> >  14M claws-mail-plugins-bogofilter (bogofilter, gsl, atlas)
> >  14M abrt-desktop
> >  12M geany
> > 8.3M xfce4-icon-theme
> > 7.8M pavucontrol
> > 6.3M seahorse
> > 6.3M transmission
> > 5.3M xfburn
> > 5.1M orage
> >   4M midori
> > 4.1M system-config-printer
> > 3.5M remmina
> > 2.7M lifearea
> > 2.5M xfce4-screenshooter
> > 2.2M parole
> > 1.6M gnome-session (will be gone when the blueman update is stable)
> > 1.5M asunder
> > 1.5M xarchiver
> > 1.4M xfce4-clipman-plugin
> > 1.3M iok
> > 1.1M ristretto
> > 955k pragha
> > 690k galcultor
> > 529K xfce4-dict + -plugin
> > 518k xfce4-notes-plugin
> > 466k xfce4-mixer (we would need to package the panel plugin separate and
> >      make it launch pavucontrol)
> > 396k epdfview
> > 226k setroubleshoot
> > 187k catfish
> >
> > Conclusion:
> >       * Xfce components are small, it does not make sense to remove any
> >         of them. The only exception is xfce4-icon-theme.
> >       * The killer is cheese. It's not only the the gnome-desktop3
> >         problem I explained earlier, but also that it uses gstreamer
> >         1.0. This means we would install two complete gstreamer stacks
> >         or we would have to build xfce4-mixer, pragha and parole and
> >         with gstreamer 1.0, too. Not sure if this is already possible.
> >       * Removing midori or lifearea doesn't save much space, but
> >         removing both of them makes a huge difference because we don't
> >         need webkitgtk.
> >
> > Suggestions:
> >      1. Drop xfce4-icon-theme, it's broken anyway. I suggest to mark it
> >         as "optional" in comps so it no longer gets installed by default
> >         (and on the spin).
> >      2. Drop claws-mail-plugins-bogofilter, people will hardly notice
> >         it.
> >      3. Drop cheese, at least if we cannot get gnome-desktop3 split up.
> >         xfce4-icon-theme and claws-mail-plugins-bogofilter will not help
> >         us much, but cheese alone could do the trick.
> >      4. Get rid of one browser, either firefox or midori. midori only
> >         makes sense if we also remove lifearea.
> >
> > Additional packages:
> > There are two more packages I'd like to see in the spin.
> >      1. For some reason, net-tools doesn't get installed, so there is no
> >         ifconfig. It's only 294k.
> >      2. I's like to see the new mousepad version in the spin, but
> >         unfortunately it adds another 4.1 through it's dependency to
> >         gtksourceview2. leafpad on the other hand is only 322k.
> >
> > I suggest to first discuss this a little here on this list and once we
> > have agreed on something, we'll move forward with the bug at
> > https://bugzilla.redhat.com/show_bug.cgi?id=853590
> >
> > Best regards,
> > Christoph
> >
> > _______________________________________________
> > xfce mailing list
> > xfce at lists.fedoraproject.org
> > https://admin.fedoraproject.org/mailman/listinfo/xfce
> >
> 
> 
> The following packages sould go IMHO.
> 
>  78M cheese
>  61M firefox (xulrunner)
>  14M claws-mail-plugins-bogofilter (bogofilter, gsl, atlas)
> 6.3M transmission
> 1.3M iok
> 
> Midori should fulfill the browser need on a livecd, after installation
> people can install firefox or chrome, if they want another browser.
> cheese is just to big for a livecd, for a a webcam app, if people do an
> installation, they can add it if they want to.
> At bittorrent client is not very usefull on live cd :)
> An onscreen keyboard is not used very often .
> 
> Tim

An onscreen keyboard is an absolute requirement for those who need it.
If the individual trying to see what's new can't access the cd, what
good is it? Doesn't that say to that individual "go find a cd you can
use, and forget using fedora".

-- 
Charlie Kravetz 
Linux Registered User Number 425914          [http://counter.li.org/]
Never let anyone steal your DREAM.           [http://keepingdreams.com]


More information about the xfce mailing list