[opensuse-factory] Plymouth status update
Hi Listmates, It has been a while since the last status update around Plymouth and it's usability, but during this period we have been working hard to get the issues resolved. At the moment we have the latest version of Plymouth (0.8.4) in openSUSE:Factory, which resolves the issue with not showing a splash upon shutdown/reboot. This package should also take care of any necessary changes to the kernel option line in both grub and grub2. With the help of Bruno (tigerfoot) we managed to tackle the support for LUKS and now we have a nice plymouth dialog box asking for the passphrase. Unfortunately without any text as that the openSUSE initrd does not contain any fonts, etc. I am still looking into this to get at least some basic support. The cryptsetup package was updated with the necessary changes and was submitted to it's devel project (security). I would like to ask those in charge of that repo to have a look at my SR (#112036) and if accepted to forward it Factory so that we have the latest Plymouth status in Factory. The only package remaining is suspend to get plymouth support during suspend to disk. I have this package ready with the necessary patch, but at the moment it either supports bootsplash or plymouth. The wiki page around plymouth has been updated with this latest status and I would like anybody interested in plymouth to test the packages and report any issues on either the wiki-page or through bugzilla. Once the packages are confirmed to be working in all situations we can start with the artwork and to initiate the discussion whether to make plymouth default or not for 12.2 Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Le lundi 02 avril 2012 à 10:08 +0200, Raymond Wooninck a écrit :
Hi Listmates,
It has been a while since the last status update around Plymouth and it's usability, but during this period we have been working hard to get the issues resolved.
At the moment we have the latest version of Plymouth (0.8.4) in openSUSE:Factory, which resolves the issue with not showing a splash upon shutdown/reboot. This package should also take care of any necessary changes to the kernel option line in both grub and grub2.
Congrats for your work.
With the help of Bruno (tigerfoot) we managed to tackle the support for LUKS and now we have a nice plymouth dialog box asking for the passphrase. Unfortunately without any text as that the openSUSE initrd does not contain any fonts, etc. I am still looking into this to get at least some basic support. The cryptsetup package was updated with the necessary changes and was submitted to it's devel project (security). I would like to ask those in charge of that repo to have a look at my SR (#112036) and if accepted to forward it Factory so that we have the latest Plymouth status in Factory.
Don't bother supporting text for cryptsetup in initrd plymouth : it won't work because you would need to pull pango and so on in initrd, which make it huge. Best would be to have a different splash (usually with a lock before the text field).
The only package remaining is suspend to get plymouth support during suspend to disk. I have this package ready with the necessary patch, but at the moment it either supports bootsplash or plymouth.
You mean it can't support both at the same time ? I don't remember
exactly if my patch was supposed to support both or just one. I guess we
could rework to support both.
--
Frederic Crozat
Frederic Crozat wrote:
[...] Don't bother supporting text for cryptsetup in initrd plymouth : it won't work because you would need to pull pango and so on in initrd, which make it huge. Best would be to have a different splash (usually with a lock before the text field).
Uhm, how does the user know which volume the prompt refers to then? Maybe the text could be pre-rendered at mkinitrd time? cu Ludwig -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Le lundi 02 avril 2012 à 11:19 +0200, Ludwig Nussel a écrit :
Frederic Crozat wrote:
[...] Don't bother supporting text for cryptsetup in initrd plymouth : it won't work because you would need to pull pango and so on in initrd, which make it huge. Best would be to have a different splash (usually with a lock before the text field).
Uhm, how does the user know which volume the prompt refers to then?
This is only for initrd, not for all volumes.
Maybe the text could be pre-rendered at mkinitrd time?
I don't think plymouth supports such a thing (but I guess it could be
done).
--
Frederic Crozat
Hi Ludwig,
On Monday, April 02, 2012, Ludwig Nussel
Frederic Crozat wrote:
[...] Don't bother supporting text for cryptsetup in initrd plymouth : it won't work because you would need to pull pango and so on in initrd, which make it huge. Best would be to have a different splash (usually with a lock before the text field).
Uhm, how does the user know which volume the prompt refers to then? Maybe the text could be pre-rendered at mkinitrd time?
The current setup will show messages as soon as /usr has been mounted. I have made a small script that asks for a truecrypt password to mount an encrypted partition. This works fine with the plymouth display-text functionality. I am wondering if all information regarding the LUKS disks is present at the moment that the initrd file is generated. Also the system has to be able to generate png files for this. An alternative could be is to somehow force that the LUKS passwords are asked before plymouth is started. This can then be done on a normal console which can display text. My question would be how many users of openSUSE do we have that are using LUKS ? Regards Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Raymond Wooninck wrote:
I am wondering if all information regarding the LUKS disks is present at the moment that the initrd file is generated.
Yes.
Also the system has to be able to generate png files for this. An alternative could be is to somehow force that the LUKS passwords are asked before plymouth is started. This can then be done on a normal console which can display text.
All the shiny splash tech and then a prompt in text mode? That would be a shame.
My question would be how many users of openSUSE do we have that are using LUKS ?
Many :-) cu Ludwig -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Monday 02 April 2012 14.14:34 Raymond Wooninck wrote:
Hi Ludwig,
On Monday, April 02, 2012, Ludwig Nussel
wrote: Frederic Crozat wrote:
[...] Don't bother supporting text for cryptsetup in initrd plymouth : it won't work because you would need to pull pango and so on in initrd, which make it huge. Best would be to have a different splash (usually with a lock before the text field).
Uhm, how does the user know which volume the prompt refers to then? Maybe the text could be pre-rendered at mkinitrd time?
The current setup will show messages as soon as /usr has been mounted. I have made a small script that asks for a truecrypt password to mount an encrypted partition. This works fine with the plymouth display-text functionality.
It also show which volume on the text-mode, and so I assume all necessary informations are around. volume by volume.
I am wondering if all information regarding the LUKS disks is present at the moment that the initrd file is generated. Also the system has to be able to generate png files for this. An alternative could be is to somehow force that the LUKS passwords are asked before plymouth is started. This can then be done on a normal console which can display text. My question would be how many users of openSUSE do we have that are using LUKS ?
bilions for sure, nobody using a laptop use an unencrypted / did they? :D
Regards
Raymond
One crazy idea, can't plymouth reuse the font needed by grub/grub2 ? those are available before any unlocking
-- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
-- Bruno Friedmann Ioda-Net Sàrl www.ioda-net.ch openSUSE Member & Ambassador GPG KEY : D5C9B751C4653227 irc: tigerfoot -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Le lundi 02 avril 2012 à 17:33 +0200, Bruno Friedmann a écrit :
One crazy idea, can't plymouth reuse the font needed by grub/grub2 ? those are available before any unlocking
The problem is not the font itself but the entire pango framework, which
is not that small.
--
Frederic Crozat
Frederic Crozat wrote:
Le lundi 02 avril 2012 à 17:33 +0200, Bruno Friedmann a écrit :
One crazy idea, can't plymouth reuse the font needed by grub/grub2 ? those are available before any unlocking
The problem is not the font itself but the entire pango framework, which is not that small.
I wonder why though. We don't need to render fancy articles and layouts, especially not in initrd. We are talking about a single (english) sentence at most here. So for that simply using freetype directly to render the text into a buffer should suffice, right? There is no need for any full featured layout engine like pango. cu Ludwig -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Le lundi 16 avril 2012 à 16:35 +0200, Ludwig Nussel a écrit :
Frederic Crozat wrote:
Le lundi 02 avril 2012 à 17:33 +0200, Bruno Friedmann a écrit :
One crazy idea, can't plymouth reuse the font needed by grub/grub2 ? those are available before any unlocking
The problem is not the font itself but the entire pango framework, which is not that small.
I wonder why though. We don't need to render fancy articles and layouts, especially not in initrd. We are talking about a single (english) sentence at most here. So for that simply using freetype directly to render the text into a buffer should suffice, right? There is no need for any full featured layout engine like pango.
This shouldn't be english only output (which is why plymouth is using
pango + cairo).
--
Frederic Crozat
Frederic Crozat wrote:
Le lundi 16 avril 2012 à 16:35 +0200, Ludwig Nussel a écrit :
Frederic Crozat wrote:
Le lundi 02 avril 2012 à 17:33 +0200, Bruno Friedmann a écrit :
One crazy idea, can't plymouth reuse the font needed by grub/grub2 ? those are available before any unlocking
The problem is not the font itself but the entire pango framework, which is not that small.
I wonder why though. We don't need to render fancy articles and layouts, especially not in initrd. We are talking about a single (english) sentence at most here. So for that simply using freetype directly to render the text into a buffer should suffice, right? There is no need for any full featured layout engine like pango.
This shouldn't be english only output (which is why plymouth is using pango + cairo).
Well, nice in theory. As a matter of fact we only need a few ascii characters in practice though. SUSE never had any translated boot messages. So the fancy pango stuff only results in bloat for no gain or nothing displayed and user completely left in the dark atm. cu Ludwig -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Le lundi 16 avril 2012 à 17:38 +0200, Ludwig Nussel a écrit :
Frederic Crozat wrote:
Le lundi 16 avril 2012 à 16:35 +0200, Ludwig Nussel a écrit :
Frederic Crozat wrote:
Le lundi 02 avril 2012 à 17:33 +0200, Bruno Friedmann a écrit :
One crazy idea, can't plymouth reuse the font needed by grub/grub2 ? those are available before any unlocking
The problem is not the font itself but the entire pango framework, which is not that small.
I wonder why though. We don't need to render fancy articles and layouts, especially not in initrd. We are talking about a single (english) sentence at most here. So for that simply using freetype directly to render the text into a buffer should suffice, right? There is no need for any full featured layout engine like pango.
This shouldn't be english only output (which is why plymouth is using pango + cairo).
Well, nice in theory. As a matter of fact we only need a few ascii characters in practice though. SUSE never had any translated boot messages. So the fancy pango stuff only results in bloat for no gain or nothing displayed and user completely left in the dark atm.
I don't agree with you, since I worked on another distro who had
translated boot messages for years and I think it is important and just
because SUSE didn't support it shouldn't mean it will never support
it ;) And after all, we could drop to text mode if some people don't
want to see pango in initrd but really want text printed..
--
Frederic Crozat
On Monday 16 of April 2012 17:51EN, Frederic Crozat wrote:
I don't agree with you, since I worked on another distro who had translated boot messages for years and I think it is important and just because SUSE didn't support it shouldn't mean it will never support it ;)
And I thought having Czech keyboard layout as default in bootmenu (without any apparent method to switch) was the worst that could happen to me when booting a linux system. :-( Michal Kubeček (OK, until I've seen 12.1 milestones, at least.) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Frederic Crozat wrote:
Le lundi 16 avril 2012 à 17:38 +0200, Ludwig Nussel a écrit :
Frederic Crozat wrote:
Le lundi 16 avril 2012 à 16:35 +0200, Ludwig Nussel a écrit :
Frederic Crozat wrote:
Le lundi 02 avril 2012 à 17:33 +0200, Bruno Friedmann a écrit :
One crazy idea, can't plymouth reuse the font needed by grub/grub2 ? those are available before any unlocking
The problem is not the font itself but the entire pango framework, which is not that small.
I wonder why though. We don't need to render fancy articles and layouts, especially not in initrd. We are talking about a single (english) sentence at most here. So for that simply using freetype directly to render the text into a buffer should suffice, right? There is no need for any full featured layout engine like pango.
This shouldn't be english only output (which is why plymouth is using pango + cairo).
Well, nice in theory. As a matter of fact we only need a few ascii characters in practice though. SUSE never had any translated boot messages. So the fancy pango stuff only results in bloat for no gain or nothing displayed and user completely left in the dark atm.
I don't agree with you, since I worked on another distro who had translated boot messages for years and I think it is important and just because SUSE didn't support it shouldn't mean it will never support it ;) And after all, we could drop to text mode if some people don't want to see pango in initrd but really want text printed..
I don't exactly understand what you are not agreeing with as I was just stating facts. Also, it was you who said "the entire pango framework ... is not that small". So let me repeat the facts: - plymouth is supposed to 1. hide boot messages 2. provide flicker free boot - initrd may need to prompt for a passphrase and give the user hints about it (like US keyboard layout, wrong password) - plymouth can only display text using pango so we have the choice between a) enlarging the initrd by including pango b) not display any text or hint at all c) use text mode for prompts d) use an alternative label.so that uses freetype directly instead of pango a) seems undesirable bloat esp since there is no localization at all in initrd and I doubt that will change until 12.2 (feel free to prove me wrong) b) is currently implemented and not satisfactory IMO c) fails 1. and 2. and doesn't provide localization either d) would fullfil 1. and 2. but would need someone to actually write C code ... cu Ludwig -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
It seems that my reply from yesterday didn't arrived in the mailing list.
Therefore please see my reply below.
On Tuesday, April 17, 2012, Ludwig Nussel
so we have the choice between a) enlarging the initrd by including pango b) not display any text or hint at all c) use text mode for prompts d) use an alternative label.so that uses freetype directly instead of pango
a) seems undesirable bloat esp since there is no localization at all in initrd and I doubt that will change until 12.2 (feel free to prove me wrong) b) is currently implemented and not satisfactory IMO c) fails 1. and 2. and doesn't provide localization either d) would fullfil 1. and 2. but would need someone to actually write C code ...
The current state of Plymouth in Factory is that option A was implemented. I have added the necessary files to have text support during the boot process. The initrd (on my system) grew with about 700Kb and this was also confirmed by other people. The whole Pango framework is not required and the only additions are: usr/share/fonts/truetype/DejaVuSans.ttf usr/share/fonts/truetype/DejaVuSerif.ttf usr/lib64/libpangoft2-1.0.so.0.3000.0 (176Kb) usr/lib64/libpangoft2-1.0.so.0 usr/lib64/libpangocairo-1.0.so.0.3000.0 (52Kb) usr/lib64/libpangocairo-1.0.so.0 usr/lib64/libpango-1.0.so.0.3000.0 (308Kb) usr/lib64/libpango-1.0.so.0 usr/lib64/pango/1.6.0/modules/pango-basic-fc.so (11Kb) etc/pango/pango64.modules (3Kb) etc/fonts/conf.d/60-latin.conf etc/fonts/fonts.conf (5Kb) As indicated once they are in the compressed initrd, then the total additional space requires is about 700Kb. And most of it is taken by the two font files. For me the biggest question mark is that even if we write a new label.so to support FreeType, do we still need fonts inside the initrd ? If so, what would be the actual different with using FreeType instead of the indicated pango libraries. As the current maintainer of Plymouth, I will not accept option C (use text mode) and this was also a clear indication from the people on this mailing list. Most of them indicated that they would like to see Text support inside the boot process and I feel that this would be our opportunity to enhance the current openSUSE boot process with more feedback towards the user behind the screen. Regards Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Raymond Wooninck wrote:
It seems that my reply from yesterday didn't arrived in the mailing list. Therefore please see my reply below.
On Tuesday, April 17, 2012, Ludwig Nussel
wrote: so we have the choice between a) enlarging the initrd by including pango b) not display any text or hint at all c) use text mode for prompts d) use an alternative label.so that uses freetype directly instead of pango
a) seems undesirable bloat esp since there is no localization at all in initrd and I doubt that will change until 12.2 (feel free to prove me wrong) b) is currently implemented and not satisfactory IMO c) fails 1. and 2. and doesn't provide localization either d) would fullfil 1. and 2. but would need someone to actually write C code ...
The current state of Plymouth in Factory is that option A was implemented. I have added the necessary files to have text support during the boot process. The initrd (on my system) grew with about 700Kb and this was also confirmed by other people. The whole Pango framework is not required and the only additions are:
usr/share/fonts/truetype/DejaVuSans.ttf usr/share/fonts/truetype/DejaVuSerif.ttf usr/lib64/libpangoft2-1.0.so.0.3000.0 (176Kb) usr/lib64/libpangoft2-1.0.so.0 usr/lib64/libpangocairo-1.0.so.0.3000.0 (52Kb) usr/lib64/libpangocairo-1.0.so.0 usr/lib64/libpango-1.0.so.0.3000.0 (308Kb) usr/lib64/libpango-1.0.so.0 usr/lib64/pango/1.6.0/modules/pango-basic-fc.so (11Kb) etc/pango/pango64.modules (3Kb) etc/fonts/conf.d/60-latin.conf etc/fonts/fonts.conf (5Kb)
As indicated once they are in the compressed initrd, then the total additional space requires is about 700Kb. And most of it is taken by the two font files.
For me the biggest question mark is that even if we write a new label.so to support FreeType, do we still need fonts inside the initrd ? If so, what would be the actual different with using FreeType instead of the indicated pango libraries.
Of course you need a font. Your list above does not include freetype itself, fontconfig, glib and other libraries that are required by the pango libraries. So I guess those are already the costs of plymouth itself. I had assumed that the plugin architecture of label.so was done to avoid excessive deps. Apparently that assumption was wrong and something else already requires excessive libraries. In that case the few extra kb for pango don't matter indeed. Using freetype directly instead of pango to save space would only make sense if that also avoids having glib etc in initrd. cu Ludwig -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Ludwig Nussel wrote:
Raymond Wooninck wrote:
It seems that my reply from yesterday didn't arrived in the mailing list. Therefore please see my reply below.
On Tuesday, April 17, 2012, Ludwig Nussel
wrote: so we have the choice between a) enlarging the initrd by including pango b) not display any text or hint at all c) use text mode for prompts d) use an alternative label.so that uses freetype directly instead of pango
a) seems undesirable bloat esp since there is no localization at all in initrd and I doubt that will change until 12.2 (feel free to prove me wrong) b) is currently implemented and not satisfactory IMO c) fails 1. and 2. and doesn't provide localization either d) would fullfil 1. and 2. but would need someone to actually write C code ...
The current state of Plymouth in Factory is that option A was implemented. I have added the necessary files to have text support during the boot process. The initrd (on my system) grew with about 700Kb and this was also confirmed by other people. The whole Pango framework is not required and the only additions are:
usr/share/fonts/truetype/DejaVuSans.ttf usr/share/fonts/truetype/DejaVuSerif.ttf usr/lib64/libpangoft2-1.0.so.0.3000.0 (176Kb) usr/lib64/libpangoft2-1.0.so.0 usr/lib64/libpangocairo-1.0.so.0.3000.0 (52Kb) usr/lib64/libpangocairo-1.0.so.0 usr/lib64/libpango-1.0.so.0.3000.0 (308Kb) usr/lib64/libpango-1.0.so.0 usr/lib64/pango/1.6.0/modules/pango-basic-fc.so (11Kb) etc/pango/pango64.modules (3Kb) etc/fonts/conf.d/60-latin.conf etc/fonts/fonts.conf (5Kb)
As indicated once they are in the compressed initrd, then the total additional space requires is about 700Kb. And most of it is taken by the two font files.
For me the biggest question mark is that even if we write a new label.so to support FreeType, do we still need fonts inside the initrd ? If so, what would be the actual different with using FreeType instead of the indicated pango libraries.
Of course you need a font. Your list above does not include freetype itself, fontconfig, glib and other libraries that are required by the pango libraries. So I guess those are already the costs of plymouth itself. I had assumed that the plugin architecture of label.so was done to avoid excessive deps. Apparently that assumption was wrong and something else already requires excessive libraries. In that case the few extra kb for pango don't matter indeed. Using freetype directly instead of pango to save space would only make sense if that also avoids having glib etc in initrd.
Ok, so I modified cp_bin of mkinitrd to not copy binaries that depend on glib. initrd size went down to 5.8MB The culprit is udev. mkinitrd blindly copies anything in /lib/udev including dependencies to initrd which doubles the size. With that hack after installing plymouth the initrd has 8.9MB After forcefully removing suspend and splashy while keeping plymouth the initrd has 6.6MB. So that should be the basis for your measurements. The superfluous dependencies added by udev and splashy need to be addressed. cu Ludwig -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hi Ludwig,
On Tuesday, April 17, 2012, Ludwig Nussel
Ok, so I modified cp_bin of mkinitrd to not copy binaries that depend on glib. initrd size went down to 5.8MB The culprit is udev. mkinitrd blindly copies anything in /lib/udev including dependencies to initrd which doubles the size. With that hack after installing plymouth the initrd has 8.9MB After forcefully removing suspend and splashy while keeping plymouth the initrd has 6.6MB. So that should be the basis for your measurements. The superfluous dependencies added by udev and splashy need to be addressed.
Is this with the latest plymouth from Factory ? If so, then this should have the text support already in it. However could you send me your modified copy of cp_bin, so that I can make some tests here to see if things are working and what the size increase would be. Thanks Regards Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Raymond Wooninck wrote:
On Tuesday, April 17, 2012, Ludwig Nussel
wrote: Ok, so I modified cp_bin of mkinitrd to not copy binaries that depend on glib. initrd size went down to 5.8MB The culprit is udev. mkinitrd blindly copies anything in /lib/udev including dependencies to initrd which doubles the size. With that hack after installing plymouth the initrd has 8.9MB After forcefully removing suspend and splashy while keeping plymouth the initrd has 6.6MB. So that should be the basis for your measurements. The superfluous dependencies added by udev and splashy need to be addressed.
Is this with the latest plymouth from Factory ? If so, then this should have the text support already in it.
It's milestone 3
However could you send me your modified copy of cp_bin, so that I can make some tests here to see if things are working and what the size increase would be.
Just add the following lines in cp_bin in /lib/mkinitrd/scripts/setup-prepare.sh: if grep -q libglib -- "$1"; then echo "skipping $1, requires glib" return 0 fi cu Ludwig PS: initrd down to 5.5MB by not including halt and reboot from systemd which require systemd libs and libdbus ... -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hi Ludwig,
On Tuesday, April 17, 2012, Ludwig Nussel
Is this with the latest plymouth from Factory ? If so, then this should have the text support already in it.
It's milestone 3
Milestone 3 doesn't include the openSUSE theme nor the pango libs.
PS: initrd down to 5.5MB by not including halt and reboot from systemd which require systemd libs and libdbus ...
From there on, the inclusion of pango (and glib as a dependency) is just about
Based on your indications I managed to get the following initrd's : without plymouth/splash/glib/etc 5.4Mb With plymouth and openSUSE theme 9.7Mb With pango & glib 10.3Mb It seems that the plymouth package itself is already pulling in some additional libraries and increases the initrd with about 4 Mb. A certain part of this is also due to the theme that gets loaded inside the initrd. the indicated 0.6Mb. So the discussion whether or not to support text is not really worth discussion. It would be more interesting to discuss the dependencies of plymouth itself and if we could do something there. With your indications I managed to remove around 6 - 7 Mb from the initrd itself and the initrd works fine including plymouth text support on boot. So it is definitely worth to follow up on how the initrd is created as that it seems to copy useless dependencies. Of course Splashy would become obsolete at the moment that we would choose Plymouth as default. Regards Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hello, Am Dienstag, 17. April 2012 schrieb Raymond Wooninck:
The whole Pango framework is not required and the only additions are:
usr/share/fonts/truetype/DejaVuSans.ttf usr/share/fonts/truetype/DejaVuSerif.ttf [...] As indicated once they are in the compressed initrd, then the total additional space requires is about 700Kb. And most of it is taken by the two font files.
This results in an interesting question: Do we really need _two_ fonts in the initrd? Regards, Christian Boltz -- Machen wir einen Club "utf-8 geplagte Perl-Programmierer" auf? [Bernhard Walle in suse-programming] -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Le mercredi 18 avril 2012 à 01:02 +0200, Christian Boltz a écrit :
Hello,
Am Dienstag, 17. April 2012 schrieb Raymond Wooninck:
The whole Pango framework is not required and the only additions are:
usr/share/fonts/truetype/DejaVuSans.ttf usr/share/fonts/truetype/DejaVuSerif.ttf [...] As indicated once they are in the compressed initrd, then the total additional space requires is about 700Kb. And most of it is taken by the two font files.
This results in an interesting question: Do we really need _two_ fonts in the initrd?
One should be enough (Sans).
--
Frederic Crozat
On Wednesday, April 18, 2012, Frederic Crozat
This results in an interesting question: Do we really need _two_ fonts in the initrd?
One should be enough (Sans).
I will test this. I added both fonts as that this was indicated on a chat with another plymouth maintainer. But I will do some testing and adjust the package correctly. Regards Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Wed, Apr 18, 2012 at 09:55:08AM +0200, Raymond Wooninck wrote:
On Wednesday, April 18, 2012, Frederic Crozat
wrote: This results in an interesting question: Do we really need _two_ fonts in the initrd?
One should be enough (Sans).
I will test this. I added both fonts as that this was indicated on a chat with another plymouth maintainer. But I will do some testing and adjust the package correctly.
And this font contains all the glyphs needed for the languages we need pango for, like chinese, hangul, thai etc ? :) Ciao, Marcus -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Wednesday 18 April 2012 09:57:35 Marcus Meissner wrote:
I will test this. I added both fonts as that this was indicated on a chat with another plymouth maintainer. But I will do some testing and adjust the package correctly.
And this font contains all the glyphs needed for the languages we need pango for, like chinese, hangul, thai etc ? :)
Does the font have to be hardcoded? Wouldn't it be easier to select it dynamically (perhaps even let the user choose, at least through a sysconfig file) and provide multi-language support that way? Anders -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hi Marcus, On 04/18/2012 09:57 AM, Marcus Meissner wrote:
And this font contains all the glyphs needed for the languages we need pango for, like chinese, hangul, thai etc ? :)
It seems that we are free in selecting the font. On my system I changed the font to be equal to the font that I am using for the Grub2 Graphical menu and this is the unicode font from the gnu-unifont-bitmap-fonts package. At lot of other distro are using the same font and it seems to support almost all languages. I will check with Michael Chang with regards to his work on Grub2 and what font he will choose for Grub2. I think it would be good to have the same font for Grub2 and Plymouth. Regards Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Ok, let's summarize the discussion. At the moment Plymouth shows only a dialog box to enter a password. Question is if we can indicate to the user for what he/she needs to enter the password. Whatever solution we come up with, we have to keep in mind that actually the Plymouth theme is the one that communicates with the user. This in mind, I see four possible solutions: 1) When a mkinitrd is created, we create PNG files with the name of the encrypted volumes for which LUKS will ask for the passphrase. This however means that the openSUSE users no longer will have the freedom to change Plymouth themes, as that would eliminate above setup and the theme will just show a dialog box for the password. 2) We add the required fonts and the Pango framework to the initrd, so that plymouth can show text messages while the /usr partition is not available yet. This would increate the size of the initrd. 3) We make sure that the boot-luks script is run before plymouth becomes active. This means that from the Graphical grub menu, we would jump to a text screen where the password can be entered and after LUKS has unlocked the drives, plymouth is started and used as a bootsplash. 4) We utilize exactly the same setup as that currently is in place with splashy. We start plymouth as soon as possible and when LUKS requires a password, then we switch to the detail screen where we then can use the standard commands to show text and ask for the password. Once we have the passwords, we then switch back to the graphical splash screen. I still have to test option 4, but in my opinion this would be the best method to move forward with. As indicated this is also the current method with splashy. I don't like the idea to create something where people are stuck with and no longer have the option to have the freedom to choose any theme they want. Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Monday 02 April 2012 18.52:42 Raymond Wooninck wrote:
Ok, let's summarize the discussion.
At the moment Plymouth shows only a dialog box to enter a password. Question is if we can indicate to the user for what he/she needs to enter the password.
Whatever solution we come up with, we have to keep in mind that actually the Plymouth theme is the one that communicates with the user. This in mind, I see four possible solutions:
1) When a mkinitrd is created, we create PNG files with the name of the encrypted volumes for which LUKS will ask for the passphrase. This however means that the openSUSE users no longer will have the freedom to change Plymouth themes, as that would eliminate above setup and the theme will just show a dialog box for the password.
2) We add the required fonts and the Pango framework to the initrd, so that plymouth can show text messages while the /usr partition is not available yet. This would increate the size of the initrd.
3) We make sure that the boot-luks script is run before plymouth becomes active. This means that from the Graphical grub menu, we would jump to a text screen where the password can be entered and after LUKS has unlocked the drives, plymouth is started and used as a bootsplash.
4) We utilize exactly the same setup as that currently is in place with splashy. We start plymouth as soon as possible and when LUKS requires a password, then we switch to the detail screen where we then can use the standard commands to show text and ask for the password. Once we have the passwords, we then switch back to the graphical splash screen.
I still have to test option 4, but in my opinion this would be the best method to move forward with. As indicated this is also the current method with splashy. I don't like the idea to create something where people are stuck with and no longer have the option to have the freedom to choose any theme they want.
Raymond
3 or 4+ are good approaches ... -- Bruno Friedmann Ioda-Net Sàrl www.ioda-net.ch openSUSE Member & Ambassador GPG KEY : D5C9B751C4653227 irc: tigerfoot -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hello, Am Montag, 2. April 2012 schrieb Raymond Wooninck:
1) When a mkinitrd is created, we create PNG files with the name of the encrypted volumes for which LUKS will ask for the passphrase. This however means that the openSUSE users no longer will have the freedom to change Plymouth themes, as that would eliminate above setup and the theme will just show a dialog box for the password.
I know nothing about the plymouth internals - sorry if the following question sounds silly or has an obvious answer ;-) Why does this option make it impossible to change the plymough theme? My guess would be that changing the theme would "just" require to run mkinitrd...
2) We add the required fonts and the Pango framework to the initrd, so that plymouth can show text messages while the /usr partition is not available yet. This would increate the size of the initrd.
"bigger initrd" is a relative term - are you talking about 50kB or 10 MB here? (Besides that: does a bigger initrd do any harm?)
3) We make sure that the boot-luks script is run before plymouth
4) We utilize exactly the same setup as that currently is in place
Those two options will of course work, but as Ludwig already said: All the shiny splash tech and then a prompt in text mode? That would be a shame. For now, all options are OK for me (in other words: don't let the passphrase dialog block everything regarding plymouth), but on the long term I'd like to see option 1 or 2 implemented ;-) Regards, Christian Boltz -- Such mal im Archiv dieser Liste nach 'reiserfs', oder genauer, nach 'rasierfs' und 'reisswolffs'. Reiserfs reagiert auf Fehler (diverser Art) wie ne Diva... [David Haller in suse-linux] -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Monday, April 02, 2012, Christian Boltz
Why does this option make it impossible to change the plymough theme? My guess would be that changing the theme would "just" require to run mkinitrd...
It depends on how the option is implemented. If we want to do it correctly and still have the freedom to change plymouth themes, then plymouth itself has to support this option. Currently this is not the case and therefore the quick and dirty solution would impact theme switching as that the theme itself has to handle these PNG files.
2) We add the required fonts and the Pango framework to the initrd, so that plymouth can show text messages while the /usr partition is not available yet. This would increate the size of the initrd.
"bigger initrd" is a relative term - are you talking about 50kB or 10 MB here? (Besides that: does a bigger initrd do any harm?)
I have never tried to build such a initrd. However I got indications that the Pango/Cairo libraries are required together with the required fonts and that this seemed not desirable.
For now, all options are OK for me (in other words: don't let the passphrase dialog block everything regarding plymouth), but on the long term I'd like to see option 1 or 2 implemented ;-)
I agree with you that plymouth is all about increasing the boot experience for the user and this should not create a disappointment. There is a fifth option where only a password dialog box is shown with a "lock" symbol. This is what is currently implemented, but this of course does not indicate why the system is asking for a password, nor for which LUKS device it is asking the passphrase. Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Raymond Wooninck wrote:
I agree with you that plymouth is all about increasing the boot experience for the user and this should not create a disappointment. There is a fifth option where only a password dialog box is shown with a "lock" symbol. This is what is currently implemented, but this of course does not indicate why the system is asking for a password, nor for which LUKS device it is asking the passphrase.
How does the lock icon get there? Is it part of any plymouth theme? What is displayed when using the arbitrary 3rd party themes you are concerned about? cu Ludwig -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On 04/03/2012 09:24 AM, Ludwig Nussel wrote:
How does the lock icon get there? Is it part of any plymouth theme? What is displayed when using the arbitrary 3rd party themes you are concerned about?
The lock icon is indeed part of the plymouth theme. If the theme does not have a password dialog, then nothing will be displayed for the user. As indicated the whole interaction with the user is driven by the plymouth theme. So all graphical elements are part of the theme. The only action that are theme-independent are the text messages one can generate in the upper left corner of the screen. However to do this early in the boot process, it is required to have some additional libraries copied into the initrd. I have updated the plymouth package in my own repo with this font support and the result is that the initrd grew with approximately 775Kbytes additionally. Regards Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Tuesday 03 April 2012 12.04:54 Raymond Wooninck wrote:
On 04/03/2012 09:24 AM, Ludwig Nussel wrote:
How does the lock icon get there? Is it part of any plymouth theme? What is displayed when using the arbitrary 3rd party themes you are concerned about?
The lock icon is indeed part of the plymouth theme. If the theme does not have a password dialog, then nothing will be displayed for the user.
As indicated the whole interaction with the user is driven by the plymouth theme. So all graphical elements are part of the theme. The only action that are theme-independent are the text messages one can generate in the upper left corner of the screen. However to do this early in the boot process, it is required to have some additional libraries copied into the initrd.
I have updated the plymouth package in my own repo with this font support and the result is that the initrd grew with approximately 775Kbytes additionally.
Regards
Raymond
Will try this one this evening and report back the result. +0.7MB on a almost 11MB initrd is not that impressive at first look -- Bruno Friedmann Ioda-Net Sàrl www.ioda-net.ch openSUSE Member & Ambassador GPG KEY : D5C9B751C4653227 irc: tigerfoot -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Tuesday, April 03, 2012, Bruno Friedmann
Will try this one this evening and report back the result. +0.7MB on a almost 11MB initrd is not that impressive at first look
Does that 11Mb contains already the plymouth splash ? If I look on my system, then I had an initrd of around 15Mb and that got increased with 0.7Mb once I added the fonts and libpango. I know that the size is depending on the plymouth theme as well, but it would be good if you could confirm that the 11Mb contains also plymouth. Thanks Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Tuesday 03 April 2012 14.55:31 Raymond Wooninck wrote:
On Tuesday, April 03, 2012, Bruno Friedmann
wrote: Will try this one this evening and report back the result. +0.7MB on a almost 11MB initrd is not that impressive at first look
Does that 11Mb contains already the plymouth splash ? If I look on my system, then I had an initrd of around 15Mb and that got increased with 0.7Mb once I added the fonts and libpango.
I know that the size is depending on the plymouth theme as well, but it would be good if you could confirm that the 11Mb contains also plymouth.
Thanks
Raymond
The full content of the last initrd I remade after upgrading to your last package is here http://susepaste.org/63969594 11MB was the side of initrd on 12.1, 12.2 has ~19MB The excellent news is now, with the last update there the device id shown (text) in the upper left part of the screen so you know which device you are unlocking. !!! Excellent !!! ps : now I can't remove splashy, it's hard coded as require to plymouth/suspend ... but pm-hibernate doesn't work, nor s2disk (bus error) -- Bruno Friedmann Ioda-Net Sàrl www.ioda-net.ch openSUSE Member & Ambassador GPG KEY : D5C9B751C4653227 irc: tigerfoot -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Christian Boltz wrote:
"bigger initrd" is a relative term - are you talking about 50kB or 10 MB here? (Besides that: does a bigger initrd do any harm?)
It takes longer to load it, otherwise I see no harm in that. -- Per Jessen, Zürich (11.4°C) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hi Christian, Am 02.04.2012 20:42, schrieb Christian Boltz:
"bigger initrd" is a relative term - are you talking about 50kB or 10 MB here? (Besides that: does a bigger initrd do any harm?)
I have no clue about plymouth, but to answer the second question: The kernel and initrd are loaded by grub via plain old BIOS interfaces, which can be sssssllllllllooooooowwwwwwww. So yes, every extra byte of initrd does hurt badly if you happen to have a machine that is affected. -- Stefan Seyfried "Dispatch war rocket Ajax to bring back his body!" -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Just one question: How does Fedora handle this with dracut? Andreas -- Andreas Jaeger aj@{suse.com,opensuse.org} Twitter/Identica: jaegerandi SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn,Jennifer Guild,Felix Imendörffer,HRB16746 (AG Nürnberg) GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126 -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On 04/03/2012 10:39 AM, Andreas Jaeger wrote:
Just one question: How does Fedora handle this with dracut?
Andreas
Fedora does not display any text, but just the password dialog box. Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Tuesday 03 April 2012 11.51:46 Raymond Wooninck wrote:
On 04/03/2012 10:39 AM, Andreas Jaeger wrote:
Just one question: How does Fedora handle this with dracut?
Andreas
Fedora does not display any text, but just the password dialog box.
Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
They're waiting our excellent patches? :-) -- Bruno Friedmann Ioda-Net Sàrl www.ioda-net.ch openSUSE Member & Ambassador GPG KEY : D5C9B751C4653227 irc: tigerfoot -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hi Ludwig,
On Monday, April 02, 2012, Ludwig Nussel
Uhm, how does the user know which volume the prompt refers to then? Maybe the text could be pre-rendered at mkinitrd time?
I just checked the boot-luks.sh script that is run by initrd, but that one also doesn't indicate for which volume it is requesting the passphrase. The only indicated information to the user is "Enter LUKS passphrase". Nothing more. This would be something that I can hardcode as an image to display within plymouth. Initially I thought that you wanted to see the devices, which is done with plymouth but not displayed due to the missing fonts in the initrd. If the above is the only thing you would like to see, then we can do this easily. Regards Raymond -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Raymond Wooninck wrote:
On Monday, April 02, 2012, Ludwig Nussel
wrote: Uhm, how does the user know which volume the prompt refers to then? Maybe the text could be pre-rendered at mkinitrd time?
I just checked the boot-luks.sh script that is run by initrd, but that one also doesn't indicate for which volume it is requesting the passphrase. The only indicated information to the user is "Enter LUKS passphrase". Nothing more.
Depends. If all volumes that are unlocked by initrd have the same passphrase then this is all you will see indeed. If different passphrases are needed the prompt will include the device name. Weird feature, I know. Maybe those who use initrd to unlock multiple volumes deserve to suffer :-) cu Ludwig cu Ludwig -- (o_ Ludwig Nussel //\ V_/_ http://www.suse.de/ SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
participants (12)
-
Anders Johansson
-
Andreas Jaeger
-
Bruno Friedmann
-
Christian Boltz
-
Frederic Crozat
-
Ludwig Nussel
-
Marcus Meissner
-
Michal Kubeček
-
Per Jessen
-
Raymond Wooninck
-
Raymond Wooninck
-
Stefan Seyfried