Bug 54009

Summary: [patch] clarify the location of the splash image in the splash(4) man page
Product: Documentation Reporter: Siegbert.Baude <Siegbert.Baude>
Component: Books & ArticlesAssignee: Tom Rhodes <trhodes>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
file.diff
none
file.dat none

Description Siegbert.Baude 2003-07-02 13:10:18 UTC
The splash.4 man page is not clear, where the actual splash image should be
placed. After having read the man page, I thought it should go to /boot, when
in fact it should go to /boot/kernel.
I added this information to the man page.

Fix: Apply the following patch to the man page splash.4:
Comment 1 Tom Rhodes freebsd_committer freebsd_triage 2003-07-02 15:02:29 UTC
On Wed, 2 Jul 2003 14:09:44 +0200 (CEST)
Siegbert.Baude@lilith.wh-wurm.uni-ulm.de wrote:

> >Description:
> The splash.4 man page is not clear, where the actual splash image should be
> placed. After having read the man page, I thought it should go to /boot, when
> in fact it should go to /boot/kernel.
> I added this information to the man page.

I have my image in /boot.  Perhaps just changing it to read /boot
where the image is shown?

--
Tom Rhodes
Comment 2 Tom Rhodes freebsd_committer freebsd_triage 2003-07-03 17:10:18 UTC
From the loader.conf(5) manual page:

bitmap_load
                     (``NO'') If set to ``YES'', a bitmap will be loaded to be
                     displayed on screen while booting.

bitmap_name
                     (``/boot/splash.bmp'') Name of the bitmap to be loaded.
                     Any other name can be used.

I think that is quite explicit on using splash images.  If we read down
a little further, we come across:

FILES
     /boot/defaults/loader.conf  default settings -- do not change this file.
     /boot/loader.4th            defines the commands used by loader to read
                                 and process loader.conf.
     /boot/loader.conf           user defined settings.
     /boot/loader.conf.local     machine-specific settings for sites with a
                                 common loader.conf.
     /boot/loader.rc             contains the instructions to automatically
                                 process loader.conf.

The one I'm interested in is /boot/loader.conf which is described as 'user defined
settings.', which I think is self explainatory.  Now, loader.conf works similar
to rc.conf and a few other files in FreeBSD where the user defined settings
should exist in another file which overrides the default.  My personal feeling
here is that the proper method would be to:

Create the /boot/loader.conf file if it does not exist.  Put in the custom
splash information with what is defined above.  That is how I did it on my
system.  Now, if you do not define a splash image, then yes I'm sure it
would look in the module path (without looking at the code nor any other
manual page/documentation besides loader.conf(5)).  Try my suggestion
above and let me know if that fixes your problem.  Thanks.

--
Tom Rhodes


On Thu, 3 Jul 2003 09:19:00 -0700
Michael Smith <msmith@freebsd.org> wrote:

> 
> Don't screw with the module path.  Either fix the documentation to 
> reflect
> reality, or change the code to search for the splash elsewhere.
> 
>   = Mike
> 
> On Thursday, July 3, 2003, at 9:16 AM, Siegbert Baude wrote:
> 
> > Tom, but you have an absolute path to the image in your loader.conf, 
> > right?
> >
> > I checked the docu now once again, and every piece of it including the 
> > splash
> > mini-FAQ says, the splash image should go into /boot. I found the 
> > solution in
> > /boot/defaults/loader.conf, where it is said that the image must be 
> > located
> > somewhere in the module_path. The default for this however is
> > "/boot/kernel;/boot/modules/" so a splash image in /boot isn't found.
> >
> > I think there are two solutions:
> >
> > 1) Add /boot to the module_path in /boot/defaults/loader.conf like
> > "/boot/kernel;/boot/modules/;/boot"
> >
> > 2) Remove all examples of images in the documentation, which use 
> > relative
> > paths and substitute the absolute paths.
> >
> > Mike, do you think there might be some problems with solution #1? It 
> > would be
> > easier to correct, but maybe #2 is the cleaner way. I would create the 
> > diffs
> > for the man pages and conf-files, so you only had to commit them.
> >
> > Ciao
> > Siegbert
> >
> >
> >
> --
> Where am I, and what am I doing in this handbasket?
>
Comment 3 siegbert.baude 2003-07-03 17:16:32 UTC
Tom, but you have an absolute path to the image in your loader.conf, right?

I checked the docu now once again, and every piece of it including the splash 
mini-FAQ says, the splash image should go into /boot. I found the solution in 
/boot/defaults/loader.conf, where it is said that the image must be located 
somewhere in the module_path. The default for this however is 
"/boot/kernel;/boot/modules/" so a splash image in /boot isn't found.

I think there are two solutions:

1) Add /boot to the module_path in /boot/defaults/loader.conf like
"/boot/kernel;/boot/modules/;/boot"

2) Remove all examples of images in the documentation, which use relative 
paths and substitute the absolute paths.

Mike, do you think there might be some problems with solution #1? It would be 
easier to correct, but maybe #2 is the cleaner way. I would create the diffs 
for the man pages and conf-files, so you only had to commit them.

Ciao
Siegbert
Comment 4 msmith freebsd_committer freebsd_triage 2003-07-03 17:19:00 UTC
Don't screw with the module path.  Either fix the documentation to 
reflect
reality, or change the code to search for the splash elsewhere.

  = Mike

On Thursday, July 3, 2003, at 9:16 AM, Siegbert Baude wrote:

> Tom, but you have an absolute path to the image in your loader.conf, 
> right?
>
> I checked the docu now once again, and every piece of it including the 
> splash
> mini-FAQ says, the splash image should go into /boot. I found the 
> solution in
> /boot/defaults/loader.conf, where it is said that the image must be 
> located
> somewhere in the module_path. The default for this however is
> "/boot/kernel;/boot/modules/" so a splash image in /boot isn't found.
>
> I think there are two solutions:
>
> 1) Add /boot to the module_path in /boot/defaults/loader.conf like
> "/boot/kernel;/boot/modules/;/boot"
>
> 2) Remove all examples of images in the documentation, which use 
> relative
> paths and substitute the absolute paths.
>
> Mike, do you think there might be some problems with solution #1? It 
> would be
> easier to correct, but maybe #2 is the cleaner way. I would create the 
> diffs
> for the man pages and conf-files, so you only had to commit them.
>
> Ciao
> Siegbert
>
>
>
--
Where am I, and what am I doing in this handbasket?
Comment 5 siegbert.baude 2003-07-06 19:56:47 UTC
> Create the /boot/loader.conf file if it does not exist.  Put in the custom
> splash information with what is defined above.  That is how I did it on my
> system.  Now, if you do not define a splash image, then yes I'm sure it
> would look in the module path (without looking at the code nor any other
> manual page/documentation besides loader.conf(5)).  Try my suggestion
> above and let me know if that fixes your problem.  Thanks.

The problem is not, that the splash screen doesn't work; actually it does, either with absolute paths or the image file 
in the module path. But the splash.4 man page and /boot/defaults/loader.conf don't use absolute paths in their example 
sections, which is misleading. Look into my diffs, I think they make things clearer.


--- splash.4.orig       Sun Jul  6 19:31:28 2003
+++ splash.4    Sun Jul  6 20:05:51 2003
@@ -192,11 +192,11 @@
  .Bd -literal -offset indent
  splash_bmp_load="YES"
  bitmap_load="YES"
-bitmap_name="chuck.bmp"
+bitmap_name="/boot/chuck.bmp"
  .Ed
  .Pp
  In the above example, the file
-.Pa chuck.bmp
+.Pa /boot/chuck.bmp
  is loaded.
  In the following example, the VESA module
  is loaded so that a bitmap file which cannot be displayed in standard
@@ -205,7 +205,7 @@
  splash_pcx_load="YES"
  vesa_load="YES"
  bitmap_load="YES"
-bitmap_name="chuck.pcx"
+bitmap_name="/boot/chuck.pcx"
  .Ed
  .Pp
  If the VESA support is statically linked to the kernel, it is not
@@ -219,6 +219,13 @@
  only.
  They are not available for the alternative console driver
  .Xr pcvt 4 .
+.Pp
+The loader looks for the bitmap file in the kernel module folders as
+defined by the module_path variable in
+.Pa /boot/defaults/loader.conf .
+These folders however are no sensible place for the bitmap file, as
+they will be renamed by "make world". For the location of the bitmap
+file absolute paths are therefore recommended.
  .Sh BUGS
  If you load a screen saver while another screen saver has already
  been loaded, the first screen saver will not be automatically unloaded



--- loader.conf.orig    Sun Jul  6 20:09:26 2003
+++ loader.conf Sun Jul  6 20:12:45 2003
@@ -37,8 +37,8 @@
  splash_pcx_load="NO"           # Set this to YES for pcx splash screen!
  vesa_load="NO"                 # Set this to YES to load the vesa module
  bitmap_load="NO"               # Set this to YES if you want splash screen!
-bitmap_name="splash.bmp"       # Set this to the name of the bmp or pcx file
-bitmap_type="splash_image_data" # and place it on the module_path
+bitmap_name="/boot/splash.bmp" # Set this to the name of the bmp or pcx file
+bitmap_type="splash_image_data"        # Tells loader the image is no kernel module


  ##############################################################
Comment 6 Tom Rhodes freebsd_committer freebsd_triage 2003-08-09 20:28:52 UTC
Responsible Changed
From-To: freebsd-doc->trhodes

I engaged in most of the conversation in regards to this PR, therefor assign it 
to me.
Comment 7 Tom Rhodes freebsd_committer freebsd_triage 2006-10-08 01:07:40 UTC
State Changed
From-To: open->closed

Issues in PR already resolved in 6.X and CURRENT.