TITLE: Using Linux Logo to Spruce Up Your Login Prompt LFS VERSION: 4.0 (should work with earlier versions without much hassle) AUTHOR: Robert Park SYNOPSIS: How to get an attractive login prompt using the Linux Logo utility. HINT: Changelog --------- Revision 1.8 2002/12/24 08:39:20 feztaa Fixed stupid typo ;) Revision 1.7 2002/12/24 08:02:23 feztaa Updated to version 4.06 Revision 1.6 2002/09/15 05:40:33 feztaa Changed email address, among other misc fixes. Revision 1.5 2002/06/09 03:56:36 feztaa Added some initial notes, and changed the style of the code blocks so they'd (hopefully) be easier to read. Revision 1.4 2002/05/05 04:30:07 feztaa Removed references to the logo I created, in favor of a better logo that comes with linux_logo Revision 1.3 2002/05/05 03:17:36 feztaa Misc changes to improve readability. Revision 1.2 2002/04/27 20:26:52 feztaa Updated to LFS 3.3, LinuxLogo 4.02. Intro ----- If you've used mandrake, and seen it boot into runlevel 3, you've probably noticed the cute ANSI/ASCII-art Tux that precedes the login prompt. This hint will tell you how to create the same effect on your LFS system. Notes ----- In an attempt to make this easier to read, all "code blocks" that you should execute on the commandline start and end with "##--CODE--##". Feel free to copy that onto the commandline along with the code itself, it won't hurt anything. Requirements ------------ All you need is the source code to linux logo, which can be found here: http://www.deater.net/weave/vmwprod/linux_logo I used version 4.06 to write this hint, but other versions will work as well. This hint uses SysVInit bootscripts, though it's not hard at all to implement this with BSD-style bootscripts. Instructions ------------ 1. Unpack linux_logo, and compile it like this: ##--CODE--## make logos-all && make install ##--CODE--## 2. I advise you to read the README and configure linuxlogo to the way you want it to display the logo when you are logging in. I configured mine like this: ##--CODE--## echo -n '-L 13 -F "\n\nFeztux GNU/#O #V on #H.\nCompiled #C.' > /etc/linux_logo.conf echo '\n#N #M #X #T #P.\n#R RAM, #B Bogomips Total. \n#E"' >> /etc/linux_logo.conf ##--CODE--## Explanation: we are creating the config file for the program, which really is just a file that contains commandline options for it. The -L option tells it to use the 13th logo, which is the one I happen to like the most, but keep in mind that you might be compiling with a different set of logos, so your numbers may vary. (try "linux_logo -L list" to see a list of available logos, and then pick the one you want). The -F option configures how the system information is formatted (read the readme on how to set this option). If you want to have linux_logo clear the screen before printing the logo, and thus hiding the output of your bootscripts after everything finishes loading, add the -f option to this file. This also has the added benefit of clearing the screen whenever you log out; so if other people use your computer, they won't be able to see what you were doing before you logged out. 3. Now we'll make the bootscript for it: ##--CODE--## cat > /etc/rc.d/init.d/issue << "EOF" #!/bin/bash # Begin $rc_base/init.d/issue source /etc/sysconfig/rc source $rc_functions case "$1" in start|stop) echo "Setting /etc/issue..." linux_logo -t "Console: \l" >/etc/issue 2>&1 evaluate_retval ;; *) echo "Usage: $0 {start|stop}" exit 1 ;; esac # End $rc_base/init.d/issue EOF chmod 755 /etc/rc.d/init.d/issue ##--CODE--## The -t option here simply specifies some custom text that we want to display in the issue file, but that we wouldn't want to display when linux_logo is run normally (which is why we don't put it in the config file). When you boot, certain codes in the /etc/issue file are interpreted and replaced with some information. In this case, the '\l' is being replaced with your current tty. 5. Finally, make the symlinks to the script. You can run the script while your computer boots and shuts down if you wish, but it really only makes sense to run it while the computer is booting. So, only make the symlink in /etc/rc3.d, assuming you boot to runlevel 3: ##--CODE--## cd /etc/rc.d/rc3.d && ln -s ../init.d/issue S35issue ##--CODE--## The End ------- You're done! Reboot your computer and enjoy the new logo. ;) If you have any questions, do not hesitate to ask!