View previous topic :: View next topic |
Author |
Message |
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Mon Nov 10, 2003 2:26 pm Post subject: Icone Gentoo nel bootlogo di linux-2.6.0 |
|
|
Come topic qualcuno sa' come aggiungere bootlogo al kernel 2.6.0? _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
shev Bodhisattva
Joined: 03 Feb 2003 Posts: 4084 Location: Italy
|
Posted: Mon Nov 10, 2003 2:31 pm Post subject: |
|
|
Intendi la stessa cosa chiesta in questo topic? _________________ Se per vivere ti dicono "siediti e stai zitto" tu alzati e muori combattendo |
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Mon Nov 10, 2003 2:41 pm Post subject: |
|
|
Piu' o meno, allora vediamo di chiarire io sono riuscito a ficcare il gentoo-logo dentro al kernel 2.6.0 solo che le procedure non sono proprio a portata di tutti in quanto prevedono di usare un programmillo che si chiama pngtopnm che converte un png in un pnm che e' un formato ascii che e' il solo che il kernel 2.6.0 capisce.
Il primo passo e' convertire un logo gentoo.png in un logo_gentoo_clu224.ppm che e' il nome del file che la parte logo del 2.6 cerca.
Fatto cio' bisogna smanazzare dentro la dir linux/drivers/video/logo ed aggiungere i pezzi dentro ai file logo.c Kconfig e Makefile
se volete provo a scrivere un how-to _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
silian87 Advocate
Joined: 06 Oct 2003 Posts: 2318 Location: Treviso, Italy
|
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Mon Nov 10, 2003 3:04 pm Post subject: |
|
|
Gia' il pinguino, ma se tu volessi metterci gentoo al posto del pinguino? _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
shev Bodhisattva
Joined: 03 Feb 2003 Posts: 4084 Location: Italy
|
Posted: Mon Nov 10, 2003 3:09 pm Post subject: |
|
|
DuDe wrote: |
se volete provo a scrivere un how-to |
Scrivi scrivi _________________ Se per vivere ti dicono "siediti e stai zitto" tu alzati e muori combattendo |
|
Back to top |
|
|
silian87 Advocate
Joined: 06 Oct 2003 Posts: 2318 Location: Treviso, Italy
|
Posted: Mon Nov 10, 2003 3:12 pm Post subject: |
|
|
di gentoo?
Una volta, per curiosità, ho navigato nel kernel e mi sono imbattuto in una sfilza di valori in esadecimale. Credo che sia il logo. E' un po' rischioso, ma prova a sostituirli con quelli del logo che vuoi mettere (se ce gli hai), ed in teoria (molto in teoria ) dovrebbe andare, credo.
Oppure il metodo che mi hai descritto mi sembra più veloce, facile e sicuro. _________________ Musica che ascolto: http://www.last.fm/user/silian87/
Silian87 FAQs: http://marentax.homelinux.org/~silian87/silian87-faq.txt
GTalk: silian87@gmail.com |
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Tue Nov 11, 2003 12:23 am Post subject: |
|
|
Guarda era piu' semplice cobn il kernel 2.4 , col 2.6 i file devono essere in formato ppm che puoi ottenere emergendoti netpbm ed usando il programma pngtopnm -plain nomefile.png >nomefile.ppm dopo do che devi passare lìottenuto col pnm2quant per ridurre i colori, poi devi aggiungere questo nome file ai file Kconfig Makefile e logo.c che stanno in /usr/src/linux/drivers/video/logo
Ls difficolta' per me e' fare qualche scripts che sulla base del nome del file .png patcha questi file per il kernel vedo di studiarmi il perl per fare cio' _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
cerri Bodhisattva
Joined: 05 Mar 2003 Posts: 2957 Location: # init S
|
Posted: Tue Nov 11, 2003 12:31 pm Post subject: |
|
|
Cmq non vorrei dire una stupidata ma su qualche kernel "fatto" da gentoo c'erano gia' dei loghi... _________________ Enjoy your freedom.
Sex is like hacking. You get in, you get out, and you hope you didnt leave something behind that can be traced back to you.
<----------------------->
Andrea Cerrito |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31460 Location: here
|
Posted: Tue Nov 11, 2003 12:36 pm Post subject: |
|
|
cerri wrote: | Cmq non vorrei dire una stupidata ma su qualche kernel "fatto" da gentoo c'erano gia' dei loghi... |
Si infatti si dovrebbero trovare in "Console drivers ---> Frame-buffer support ---> Frame buffer boot logo" _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Tue Nov 11, 2003 1:14 pm Post subject: |
|
|
Si, nella serie 2.4 ci sono, nei 2.6 no, in quanto di test, io sono riuscito a farli apparire ma la procedura e' un po' macchinosa e prevede l'editing dei file Kconfig, Makefile e logo.c nella cartella /usr/src/linux/drivers/video/logo e non e' proprio alla portata di tutti, stavo cercando il modo di inserire cio' che serve nei file in questione, attraverso script, ma aime' le mie conosce di scripting sono un po' scarsine, se qualcuno e' interessato a collaborare, ben venga!
Altra cosa da fare e' cpnvertire il logo da .png a .ppm tramite l'apposita utility poi bisogna abbassare il numero di colri da quello che e' a 224 tramite il programma ppmquant tutti quasti programmi sstanno nel package netpbm
se volete posso scrivere come ho fatto ma faro a manella e' nosioso _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
morellik l33t
Joined: 03 Feb 2003 Posts: 629 Location: Firenze
|
Posted: Tue Nov 11, 2003 2:05 pm Post subject: |
|
|
Se vuoi scrivere un howto, ben venga, lo pubblico volentieri su gentoo.it (cosi' oltre al
logo di gentoo possiamo mettere anche il logo dei gechi ).
Per uno script possiamo vedere di farlo non appena c'e' l'howto.
Ciauz
morellik |
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Tue Nov 11, 2003 2:21 pm Post subject: |
|
|
Ok butto giu' un'abbozzo poi magari te lo invio cosi'vedi se va' bene
apropos la tua maile? _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
shev Bodhisattva
Joined: 03 Feb 2003 Posts: 4084 Location: Italy
|
Posted: Tue Nov 11, 2003 3:04 pm Post subject: |
|
|
morellik wrote: | (cosi' oltre al
logo di gentoo possiamo mettere anche il logo dei gechi ).
|
Granderrimo, non ci avevo pensato! Al Linux/Gentoo Day di Venezia si potrebbero mettere tutte le macchine con il logo dei gechi! _________________ Se per vivere ti dicono "siediti e stai zitto" tu alzati e muori combattendo |
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Tue Nov 11, 2003 4:22 pm Post subject: |
|
|
Come Aggiungere il logo gentoo all'interno dei kernel 2.6.0
Rev 1.0 11/11/2003 By Antonio Catani dude68@tiscali.it
Abstract:
Questo documento nasce con l'intento, spero, di spiegare come sotituire il bootlogo nei kernel della serie 2.6.x
Dai kernel 2.4 ai 2.6 e' totalmente cambiata le gestione del bootlogo, nel kernel 2.4 il logo altri non era che
un file logo.h contenente i valori esadecimali del file png del logo stesso.
Nella serie 2.6 la gestione del bootlogo consiste nell'usare un file png convertito in un formato ppm ASCII
che e' specificato in http://netpbm.sourceforge.net/ tale file deve avere massimo 224 colori per via di come
il kernel gestira' il bootlogo.
Cosa ci occorre
Prima di tutto occorre emergere il pacchetto netpbm
fatto cio' abbiamo bisogno del file .png da piazzare come bootlogo
ottenuto il file il primo passo e' convertirlo in ppm supponiamo che il logo si chiami
gentoo_logo.png
posizioniamoci nella directory ove abbiamo scaricato il logo e digitiamo
Code: |
netbackup temp # pngtopnm -plain gentoo_logo.png >logo_gentoo_clut.ppm
|
fatto cio' dobbiamo ridurne il numero di colori
Code: |
netbackup temp # ppmquant -plain 224 logo_gentoo_clut.ppm >logo_gentoo_clut224.ppm
ppmquant: making histogram...
ppmquant: 10153 colors found
ppmquant: choosing 224 colors...
ppmquant: mapping image to new colors...
netbackup temp #
|
E' molto importante l'opzione -plain la quale dice al programma di conversione di usare solo caratteri ASCII stampabili.
Abbiamo cosi' ottenuto il file logo_gentoo_clut224.ppm e' molto importante che vi scriviate il nome del file ottenuto da qualche parte,
in quanto andra' messo in alcuni file del kernel.
Copiamo ora il file ottenuto nella cartella /usr/src/linux/drivers/video/logo e posizioniamoci nella medesima cartella
Code: |
netbackup temp # cp logo_gentoo_clut224.ppm /usr/src/linux/drivers/video/logo
netbackup temp # cd /usr/src/linux/drivers/video/logo
netbackup logo #
|
a questo punto viene la parte piu' "delicata" della cosa
Per prima cosa copiamo il file su cui andremo ad agire cosi' da poter tornare indietro in caso di errori
Code: |
netbackup logo # cp Kconfig Kconfig.orig
netbackup logo # cp Makefile makefile.orig
netbackup logo # cp logo.c logo.c.orig
|
non c'e' un'ordine preciso nell'editare i tre file quindi per comodita' inizieremo dal Kconfig che e' il piu' semplice
NOTA: normalmente uso come editor THE che altri non e' che un port dell'xedit del CMS IBM su linux per comodita' vostra
le schermate si riferiscono al nano che e' presente in qualunque distro gentoo
Code: |
# Logo configuration
#
menu "Logo configuration"
config LOGO
bool "Bootup logo"
depends on FB || SGI_NEWPORT_CONSOLE
config LOGO_LINUX_MONO
bool "Standard black and white Linux logo"
depends on LOGO
default y
config LOGO_LINUX_VGA16
bool "Standard 16-color Linux logo"
depends on LOGO
default y
config LOGO_LINUX_CLUT224
bool "Standard 224-color Linux logo"
depends on LOGO
default y
config LOGO_GENTOO_CLUT224
bool "Gentoo 224-color Linux logo"
depends on LOGO
default y
config LOGO_DEC_CLUT224
bool "224-color Digital Equipment Corporation Linux logo"
depends on LOGO && DECSTATION
default y
config LOGO_MAC_CLUT224
bool "224-color Macintosh Linux logo"
depends on LOGO && MAC
default y
config LOGO_PARISC_CLUT224
bool "224-color PA-RISC Linux logo"
depends on LOGO && PARISC
default y
config LOGO_SGI_CLUT224
bool "224-color SGI Linux logo"
depends on LOGO && (SGI_IP22 || SGI_IP27 || SGI_IP32 || X86_VISWS)
default y
config LOGO_SUN_CLUT224
bool "224-color Sun Linux logo"
depends on LOGO && (SPARC || SPARC64)
default y
config LOGO_SUPERH_MONO
bool "Black and white SuperH Linux logo"
depends on LOGO && SUPERH
default y
config LOGO_SUPERH_VGA16
bool "16-color SuperH Linux logo"
depends on LOGO && SUPERH
default y
config LOGO_SUPERH_CLUT224
bool "224-color SuperH Linux logo"
depends on LOGO && SUPERH
default y
endmenu
|
nel file preso in esame, e' gia presente la entry realativa al bootlogo gentoo,
tale entry se notate bene e' uguale a quella che la precede differendo solo nel nome.
la entry e' struttutrata cosi'
config NOME_OPZIONE
bool "testo libero"
depends on ALTRA_OPZIONE_KERNEL
default y|n ossia se nel menuconfig deve apparire di default a y oppure a n
accertiamoci che tutto e' apposto e salviamo.
Ora editiamo il Makefile
Code: |
# Makefile for the Linux logos
obj-$(CONFIG_LOGO) += logo.o
obj-$(CONFIG_LOGO_LINUX_MONO) += logo_linux_mono.o
obj-$(CONFIG_LOGO_LINUX_VGA16) += logo_linux_vga16.o
obj-$(CONFIG_LOGO_LINUX_CLUT224) += logo_linux_clut224.o
obj-$(CONFIG_LOGO_GENTOO_CLUT224) += logo_gentoo_clut224.o <<<<<< eccho dove va' inserita
obj-$(CONFIG_LOGO_DEC_CLUT224) += logo_dec_clut224.o
obj-$(CONFIG_LOGO_MAC_CLUT224) += logo_mac_clut224.o
obj-$(CONFIG_LOGO_PARISC_CLUT224) += logo_parisc_clut224.o
obj-$(CONFIG_LOGO_SGI_CLUT224) += logo_sgi_clut224.o
obj-$(CONFIG_LOGO_SUN_CLUT224) += logo_sun_clut224.o
obj-$(CONFIG_LOGO_SUPERH_MONO) += logo_superh_mono.o
obj-$(CONFIG_LOGO_SUPERH_VGA16) += logo_superh_vga16.o
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
# Dependencies on generated files need to be listed explicitly
$(obj)/%_mono.o: $(src)/%_mono.c
$(obj)/%_vga16.o: $(src)/%_vga16.c
$(obj)/%_clut224.o: $(src)/%_clut224.c
$(obj)/%_gray256.o: $(src)/%_gray256.c
# How to generate them
$(obj)/%_mono.c: $(src)/%_mono.pbm
$(objtree)/scripts/pnmtologo -t mono -n $*_mono -o $@ $<
$(obj)/%_vga16.c: $(src)/%_vga16.ppm
$(objtree)/scripts/pnmtologo -t vga16 -n $*_vga16 -o $@ $<
$(obj)/%_clut224.c: $(src)/%_clut224.ppm
$(objtree)/scripts/pnmtologo -t clut224 -n $*_clut224 -o $@ $<
$(obj)/%_gray256.c: $(src)/%_gray256.pgm
$(objtree)/scripts/pnmtologo -t gray256 -n $*_gray256 -o $@ $<
# Files generated that shall be removed upon make clean
clean-files := *_mono.c *_vga16.c *_clut224.c *_gray256.c
|
Anche qui si tratta di ripetere una riga cambiandone il nome
la riga e' strutturata cosi'
obj-$(CONFIG_OPZIONE_KERNEL) += nome_file_logo.o
cio' dice al makefile che se e' presente nel .config una riga CONFIG_NOME_OPZIONE_KERNEL=y di generare l'object corrispondente
nel nostro caso la riga obj-$(CONFIG_LOGO_GENTOO_CLUT224) += logo_gentoo_clut224.o
dice che se e' presente nel.config una riga CONFIG_GENTOO_LOGO_CLUT224=y di generare un file obj dal nome logo_gentoo_clut224.o
se tutto e' apposto come mostratovi, salviamo anche il Makefile
Ed ora l'ultimo file il logo.c
Code: |
/*
* Linux logo to be displayed on boot
*
* Copyright (C) 1996 Larry Ewing (lewing@isc.tamu.edu)
* Copyright (C) 1996,1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
* Copyright (C) 2001 Greg Banks <gnb@alphalink.com.au>
* Copyright (C) 2001 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* Copyright (C) 2003 Geert Uytterhoeven <geert@linux-m68k.org>
*/
#include <linux/config.h>
#include <linux/linux_logo.h>
#ifdef CONFIG_M68K
#include <asm/setup.h>
#endif
#if defined(CONFIG_MIPS) || defined(CONFIG_MIPS64)
#include <asm/bootinfo.h>
#endif
extern const struct linux_logo logo_linux_mono;
extern const struct linux_logo logo_linux_vga16;
extern const struct linux_logo logo_linux_clut224;
extern const struct linux_logo logo_gentoo_clut224; <<<<<<va inserito qui
extern const struct linux_logo logo_dec_clut224;
extern const struct linux_logo logo_mac_clut224;
extern const struct linux_logo logo_parisc_clut224;
extern const struct linux_logo logo_sgi_clut224;
extern const struct linux_logo logo_sun_clut224;
extern const struct linux_logo logo_superh_mono;
extern const struct linux_logo logo_superh_vga16;
extern const struct linux_logo logo_superh_clut224;
const struct linux_logo *fb_find_logo(int depth)
{
const struct linux_logo *logo = 0;
if (depth >= 1) {
#ifdef CONFIG_LOGO_LINUX_MONO
/* Generic Linux logo */
logo = &logo_linux_mono;
#endif
#ifdef CONFIG_LOGO_SUPERH_MONO
/* SuperH Linux logo */
logo = &logo_superh_mono;
#endif
}
if (depth >= 4) {
#ifdef CONFIG_LOGO_LINUX_VGA16
/* Generic Linux logo */
logo = &logo_linux_vga16;
#endif
#ifdef CONFIG_LOGO_SUPERH_VGA16
/* SuperH Linux logo */
logo = &logo_superh_vga16;
#endif
}
if (depth >= 8) {
#ifdef CONFIG_LOGO_LINUX_CLUT224
/* Generic Linux logo */
logo = &logo_linux_clut224;
#endif
#ifdef CONFIG_LOGO_GENTOO_CLUT224
/* Gentoo Linux logo */ <<<<<e qui
logo = &logo_gentoo_clut224;
#endif
#ifdef CONFIG_LOGO_DEC_CLUT224
/* DEC Linux logo on MIPS/MIPS64 */
if (mips_machgroup == MACH_GROUP_DEC)
logo = &logo_dec_clut224;
#endif
#ifdef CONFIG_LOGO_MAC_CLUT224
/* Macintosh Linux logo on m68k */
if (MACH_IS_MAC)
logo = &logo_mac_clut224;
#endif
#ifdef CONFIG_LOGO_PARISC_CLUT224
/* PA-RISC Linux logo */
logo = &logo_parisc_clut224;
#endif
#ifdef CONFIG_LOGO_SGI_CLUT224
/* SGI Linux logo on MIPS/MIPS64 and VISWS */
#ifndef CONFIG_X86_VISWS
if (mips_machgroup == MACH_GROUP_SGI)
#endif
logo = &logo_sgi_clut224;
#endif
#ifdef CONFIG_LOGO_SUN_CLUT224
/* Sun Linux logo */
logo = &logo_sun_clut224;
#endif
#ifdef CONFIG_LOGO_SUPERH_CLUT224
/* SuperH Linux logo */
logo = &logo_superh_clut224;
#endif
}
return logo;
}
|
Come potete vedere bisogna inserire 2 entry, la prima tra le definizioni extern const struct linux_logo
e la seconda come #ifdef #endif
Qui le mie capacita' di spiegazioni si fermano in quanto essendo C non ne capisco molto
ed onde evitare di dire castronerie mi limito a far vedere dove vanno messi i vari pezzi
Salviamo anche lui
Siamo arrivati alla fine posizioniamoci nela cartella usr/src/linux
diamo un make menuconfig e nelle opzioni del bootlogo c'e' anche gentoo, chiudiamo compiliamo installiamo il nuovo kernel.
Code: |
[*] Bootup logo
[ ] Standard black and white
[ ] Standard 16-color Linux logo
[ ] Standard 224-color Linux logo
[*] Gentoo 224-color Linux logo
|
e godiamoci il gentoo logo sul kernel 2.6.0
P.S.
Non so' per quale motivo ma nel mio kernel di bootlogo al boot ne vedo 2
quindi se capita anche a voi non e' un mio errore ne un vostro errore _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Tue Nov 11, 2003 4:22 pm Post subject: |
|
|
Come Aggiungere il logo gentoo all'interno dei kernel 2.6.0
Rev 1.0 11/11/2003 By Antonio Catani dude68@tiscali.it
Abstract:
Questo documento nasce con l'intento, spero, di spiegare come sotituire il bootlogo nei kernel della serie 2.6.x
Dai kernel 2.4 ai 2.6 e' totalmente cambiata le gestione del bootlogo, nel kernel 2.4 il logo altri non era che
un file logo.h contenente i valori esadecimali del file png del logo stesso.
Nella serie 2.6 la gestione del bootlogo consiste nell'usare un file png convertito in un formato ppm ASCII
che e' specificato in http://netpbm.sourceforge.net/ tale file deve avere massimo 224 colori per via di come
il kernel gestira' il bootlogo.
Cosa ci occorre
Prima di tutto occorre emergere il pacchetto netpbm
fatto cio' abbiamo bisogno del file .png da piazzare come bootlogo
ottenuto il file il primo passo e' convertirlo in ppm supponiamo che il logo si chiami
gentoo_logo.png
posizioniamoci nella directory ove abbiamo scaricato il logo e digitiamo
Code: |
netbackup temp # pngtopnm -plain gentoo_logo.png >logo_gentoo_clut.ppm
|
fatto cio' dobbiamo ridurne il numero di colori
Code: |
netbackup temp # ppmquant -plain 224 logo_gentoo_clut.ppm >logo_gentoo_clut224.ppm
ppmquant: making histogram...
ppmquant: 10153 colors found
ppmquant: choosing 224 colors...
ppmquant: mapping image to new colors...
netbackup temp #
|
E' molto importante l'opzione -plain la quale dice al programma di conversione di usare solo caratteri ASCII stampabili.
Abbiamo cosi' ottenuto il file logo_gentoo_clut224.ppm e' molto importante che vi scriviate il nome del file ottenuto da qualche parte,
in quanto andra' messo in alcuni file del kernel.
Copiamo ora il file ottenuto nella cartella /usr/src/linux/drivers/video/logo e posizioniamoci nella medesima cartella
Code: |
netbackup temp # cp logo_gentoo_clut224.ppm /usr/src/linux/drivers/video/logo
netbackup temp # cd /usr/src/linux/drivers/video/logo
netbackup logo #
|
a questo punto viene la parte piu' "delicata" della cosa
Per prima cosa copiamo il file su cui andremo ad agire cosi' da poter tornare indietro in caso di errori
Code: |
netbackup logo # cp Kconfig Kconfig.orig
netbackup logo # cp Makefile makefile.orig
netbackup logo # cp logo.c logo.c.orig
|
non c'e' un'ordine preciso nell'editare i tre file quindi per comodita' inizieremo dal Kconfig che e' il piu' semplice
NOTA: normalmente uso come editor THE che altri non e' che un port dell'xedit del CMS IBM su linux per comodita' vostra
le schermate si riferiscono al nano che e' presente in qualunque distro gentoo
Code: |
# Logo configuration
#
menu "Logo configuration"
config LOGO
bool "Bootup logo"
depends on FB || SGI_NEWPORT_CONSOLE
config LOGO_LINUX_MONO
bool "Standard black and white Linux logo"
depends on LOGO
default y
config LOGO_LINUX_VGA16
bool "Standard 16-color Linux logo"
depends on LOGO
default y
config LOGO_LINUX_CLUT224
bool "Standard 224-color Linux logo"
depends on LOGO
default y
config LOGO_GENTOO_CLUT224
bool "Gentoo 224-color Linux logo"
depends on LOGO
default y
config LOGO_DEC_CLUT224
bool "224-color Digital Equipment Corporation Linux logo"
depends on LOGO && DECSTATION
default y
config LOGO_MAC_CLUT224
bool "224-color Macintosh Linux logo"
depends on LOGO && MAC
default y
config LOGO_PARISC_CLUT224
bool "224-color PA-RISC Linux logo"
depends on LOGO && PARISC
default y
config LOGO_SGI_CLUT224
bool "224-color SGI Linux logo"
depends on LOGO && (SGI_IP22 || SGI_IP27 || SGI_IP32 || X86_VISWS)
default y
config LOGO_SUN_CLUT224
bool "224-color Sun Linux logo"
depends on LOGO && (SPARC || SPARC64)
default y
config LOGO_SUPERH_MONO
bool "Black and white SuperH Linux logo"
depends on LOGO && SUPERH
default y
config LOGO_SUPERH_VGA16
bool "16-color SuperH Linux logo"
depends on LOGO && SUPERH
default y
config LOGO_SUPERH_CLUT224
bool "224-color SuperH Linux logo"
depends on LOGO && SUPERH
default y
endmenu
|
nel file preso in esame, e' gia presente la entry realativa al bootlogo gentoo,
tale entry se notate bene e' uguale a quella che la precede differendo solo nel nome.
la entry e' struttutrata cosi'
config NOME_OPZIONE
bool "testo libero"
depends on ALTRA_OPZIONE_KERNEL
default y|n ossia se nel menuconfig deve apparire di default a y oppure a n
accertiamoci che tutto e' apposto e salviamo.
Ora editiamo il Makefile
Code: |
# Makefile for the Linux logos
obj-$(CONFIG_LOGO) += logo.o
obj-$(CONFIG_LOGO_LINUX_MONO) += logo_linux_mono.o
obj-$(CONFIG_LOGO_LINUX_VGA16) += logo_linux_vga16.o
obj-$(CONFIG_LOGO_LINUX_CLUT224) += logo_linux_clut224.o
obj-$(CONFIG_LOGO_GENTOO_CLUT224) += logo_gentoo_clut224.o <<<<<< eccho dove va' inserita
obj-$(CONFIG_LOGO_DEC_CLUT224) += logo_dec_clut224.o
obj-$(CONFIG_LOGO_MAC_CLUT224) += logo_mac_clut224.o
obj-$(CONFIG_LOGO_PARISC_CLUT224) += logo_parisc_clut224.o
obj-$(CONFIG_LOGO_SGI_CLUT224) += logo_sgi_clut224.o
obj-$(CONFIG_LOGO_SUN_CLUT224) += logo_sun_clut224.o
obj-$(CONFIG_LOGO_SUPERH_MONO) += logo_superh_mono.o
obj-$(CONFIG_LOGO_SUPERH_VGA16) += logo_superh_vga16.o
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
# Dependencies on generated files need to be listed explicitly
$(obj)/%_mono.o: $(src)/%_mono.c
$(obj)/%_vga16.o: $(src)/%_vga16.c
$(obj)/%_clut224.o: $(src)/%_clut224.c
$(obj)/%_gray256.o: $(src)/%_gray256.c
# How to generate them
$(obj)/%_mono.c: $(src)/%_mono.pbm
$(objtree)/scripts/pnmtologo -t mono -n $*_mono -o $@ $<
$(obj)/%_vga16.c: $(src)/%_vga16.ppm
$(objtree)/scripts/pnmtologo -t vga16 -n $*_vga16 -o $@ $<
$(obj)/%_clut224.c: $(src)/%_clut224.ppm
$(objtree)/scripts/pnmtologo -t clut224 -n $*_clut224 -o $@ $<
$(obj)/%_gray256.c: $(src)/%_gray256.pgm
$(objtree)/scripts/pnmtologo -t gray256 -n $*_gray256 -o $@ $<
# Files generated that shall be removed upon make clean
clean-files := *_mono.c *_vga16.c *_clut224.c *_gray256.c
|
Anche qui si tratta di ripetere una riga cambiandone il nome
la riga e' strutturata cosi'
obj-$(CONFIG_OPZIONE_KERNEL) += nome_file_logo.o
cio' dice al makefile che se e' presente nel .config una riga CONFIG_NOME_OPZIONE_KERNEL=y di generare l'object corrispondente
nel nostro caso la riga obj-$(CONFIG_LOGO_GENTOO_CLUT224) += logo_gentoo_clut224.o
dice che se e' presente nel.config una riga CONFIG_GENTOO_LOGO_CLUT224=y di generare un file obj dal nome logo_gentoo_clut224.o
se tutto e' apposto come mostratovi, salviamo anche il Makefile
Ed ora l'ultimo file il logo.c
Code: |
/*
* Linux logo to be displayed on boot
*
* Copyright (C) 1996 Larry Ewing (lewing@isc.tamu.edu)
* Copyright (C) 1996,1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
* Copyright (C) 2001 Greg Banks <gnb@alphalink.com.au>
* Copyright (C) 2001 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* Copyright (C) 2003 Geert Uytterhoeven <geert@linux-m68k.org>
*/
#include <linux/config.h>
#include <linux/linux_logo.h>
#ifdef CONFIG_M68K
#include <asm/setup.h>
#endif
#if defined(CONFIG_MIPS) || defined(CONFIG_MIPS64)
#include <asm/bootinfo.h>
#endif
extern const struct linux_logo logo_linux_mono;
extern const struct linux_logo logo_linux_vga16;
extern const struct linux_logo logo_linux_clut224;
extern const struct linux_logo logo_gentoo_clut224; <<<<<<va inserito qui
extern const struct linux_logo logo_dec_clut224;
extern const struct linux_logo logo_mac_clut224;
extern const struct linux_logo logo_parisc_clut224;
extern const struct linux_logo logo_sgi_clut224;
extern const struct linux_logo logo_sun_clut224;
extern const struct linux_logo logo_superh_mono;
extern const struct linux_logo logo_superh_vga16;
extern const struct linux_logo logo_superh_clut224;
const struct linux_logo *fb_find_logo(int depth)
{
const struct linux_logo *logo = 0;
if (depth >= 1) {
#ifdef CONFIG_LOGO_LINUX_MONO
/* Generic Linux logo */
logo = &logo_linux_mono;
#endif
#ifdef CONFIG_LOGO_SUPERH_MONO
/* SuperH Linux logo */
logo = &logo_superh_mono;
#endif
}
if (depth >= 4) {
#ifdef CONFIG_LOGO_LINUX_VGA16
/* Generic Linux logo */
logo = &logo_linux_vga16;
#endif
#ifdef CONFIG_LOGO_SUPERH_VGA16
/* SuperH Linux logo */
logo = &logo_superh_vga16;
#endif
}
if (depth >= 8) {
#ifdef CONFIG_LOGO_LINUX_CLUT224
/* Generic Linux logo */
logo = &logo_linux_clut224;
#endif
#ifdef CONFIG_LOGO_GENTOO_CLUT224
/* Gentoo Linux logo */ <<<<<e qui
logo = &logo_gentoo_clut224;
#endif
#ifdef CONFIG_LOGO_DEC_CLUT224
/* DEC Linux logo on MIPS/MIPS64 */
if (mips_machgroup == MACH_GROUP_DEC)
logo = &logo_dec_clut224;
#endif
#ifdef CONFIG_LOGO_MAC_CLUT224
/* Macintosh Linux logo on m68k */
if (MACH_IS_MAC)
logo = &logo_mac_clut224;
#endif
#ifdef CONFIG_LOGO_PARISC_CLUT224
/* PA-RISC Linux logo */
logo = &logo_parisc_clut224;
#endif
#ifdef CONFIG_LOGO_SGI_CLUT224
/* SGI Linux logo on MIPS/MIPS64 and VISWS */
#ifndef CONFIG_X86_VISWS
if (mips_machgroup == MACH_GROUP_SGI)
#endif
logo = &logo_sgi_clut224;
#endif
#ifdef CONFIG_LOGO_SUN_CLUT224
/* Sun Linux logo */
logo = &logo_sun_clut224;
#endif
#ifdef CONFIG_LOGO_SUPERH_CLUT224
/* SuperH Linux logo */
logo = &logo_superh_clut224;
#endif
}
return logo;
}
|
Come potete vedere bisogna inserire 2 entry, la prima tra le definizioni extern const struct linux_logo
e la seconda come #ifdef #endif
Qui le mie capacita' di spiegazioni si fermano in quanto essendo C non ne capisco molto
ed onde evitare di dire castronerie mi limito a far vedere dove vanno messi i vari pezzi
Salviamo anche lui
Siamo arrivati alla fine posizioniamoci nela cartella usr/src/linux
diamo un make menuconfig e nelle opzioni del bootlogo c'e' anche gentoo, chiudiamo compiliamo installiamo il nuovo kernel.
Code: |
[*] Bootup logo
[ ] Standard black and white
[ ] Standard 16-color Linux logo
[ ] Standard 224-color Linux logo
[*] Gentoo 224-color Linux logo
|
e godiamoci il gentoo logo sul kernel 2.6.0
P.S.
Non so' per quale motivo ma nel mio kernel di bootlogo al boot ne vedo 2
quindi se capita anche a voi non e' un mio errore ne un vostro errore _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
ares Apprentice
Joined: 13 Oct 2003 Posts: 280 Location: Savigliano (CN)
|
Posted: Tue Nov 11, 2003 4:33 pm Post subject: |
|
|
Provate anche linux_logo.....funziona benissimo...oppure date un'occhiata al kernel wolk che ha diversi loghi..... _________________ My portage and homepage |
|
Back to top |
|
|
ares Apprentice
Joined: 13 Oct 2003 Posts: 280 Location: Savigliano (CN)
|
Posted: Tue Nov 11, 2003 4:37 pm Post subject: |
|
|
Ops....fblogo......scusate.....mi sono confuso _________________ My portage and homepage |
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Tue Nov 11, 2003 4:41 pm Post subject: |
|
|
Ares, se hai letto il thread dall'inizio, noterai che si parlava di mettere il logo gentoo dentro ai kernel della serie 2.6.0 come gia' esistono nei kernel 2.4 gentoo-patched siccome ci sono notevoli differenze, ho scritto quel mini howto che vale solo per i kernel 2.6.x _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
ares Apprentice
Joined: 13 Oct 2003 Posts: 280 Location: Savigliano (CN)
|
Posted: Tue Nov 11, 2003 6:58 pm Post subject: |
|
|
Ops chiedo venia...mi ero scordato delle differenze tra le 2 v. del kernel _________________ My portage and homepage |
|
Back to top |
|
|
morellik l33t
Joined: 03 Feb 2003 Posts: 629 Location: Firenze
|
Posted: Wed Nov 12, 2003 11:12 am Post subject: |
|
|
Dude, ho pubblicato il doc e ti ho inviato via mail il file xml che ho generato dai tuoi suggerimenti in caso di prossime release.
Ciauz
morellik |
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Wed Nov 12, 2003 11:16 am Post subject: |
|
|
Grazie Morellik questo e' il mio primo HOWTO spero sia scritto in maniera comprensibile _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
MoRPh3uSz n00b
Joined: 12 Aug 2003 Posts: 69
|
Posted: Wed Nov 12, 2003 8:25 pm Post subject: |
|
|
Ho fatto una stupidissima patch che va a modificare il kernel aggiungendo la voce nel menu, esattamente come è stato scritto sopra e anche un semplice script che fa esattamente quello che bisogna fare per creare il logo vero e proprio.
Patch:
Code: |
--- linux/drivers/video/logo/Kconfig.orig 2003-11-11 18:26:01.000000000 +0100
+++ linux/drivers/video/logo/Kconfig 2003-11-11 19:02:06.000000000 +0100
@@ -23,6 +23,11 @@
depends on LOGO
default y
+config LOGO_GENTOO_CLUT224
+ bool "Modified 224-color Linux logo"
+ depends on LOGO
+ default y
+
config LOGO_DEC_CLUT224
bool "224-color Digital Equipment Corporation Linux logo"
depends on LOGO && DECSTATION
--- linux/drivers/video/logo/Makefile.orig 2003-11-11 18:26:10.000000000 +0100
+++ linux/drivers/video/logo/Makefile 2003-11-11 19:05:58.000000000 +0100
@@ -4,6 +4,7 @@
obj-$(CONFIG_LOGO_LINUX_MONO) += logo_linux_mono.o
obj-$(CONFIG_LOGO_LINUX_VGA16) += logo_linux_vga16.o
obj-$(CONFIG_LOGO_LINUX_CLUT224) += logo_linux_clut224.o
+obj-$(CONFIG_LOGO_GENTOO_CLUT224) += logo_gentoo_clut224.o
obj-$(CONFIG_LOGO_DEC_CLUT224) += logo_dec_clut224.o
obj-$(CONFIG_LOGO_MAC_CLUT224) += logo_mac_clut224.o
obj-$(CONFIG_LOGO_PARISC_CLUT224) += logo_parisc_clut224.o
--- linux/drivers/video/logo/logo.c.orig 2003-11-11 18:26:18.000000000 +0100
+++ linux/drivers/video/logo/logo.c 2003-11-11 19:03:12.000000000 +0100
@@ -23,6 +23,7 @@
extern const struct linux_logo logo_linux_mono;
extern const struct linux_logo logo_linux_vga16;
extern const struct linux_logo logo_linux_clut224;
+extern const struct linux_logo logo_gentoo_clut224;
extern const struct linux_logo logo_dec_clut224;
extern const struct linux_logo logo_mac_clut224;
extern const struct linux_logo logo_parisc_clut224;
@@ -64,6 +65,10 @@
/* Generic Linux logo */
logo = &logo_linux_clut224;
#endif
+#ifdef CONFIG_LOGO_GENTOO_CLUT224
+ /* Gentoo Linux logo */
+ logo = &logo_gentoo_clut224;
+#endif
#ifdef CONFIG_LOGO_DEC_CLUT224
/* DEC Linux logo on MIPS/MIPS64 */
if (mips_machgroup == MACH_GROUP_DEC)
|
Scriptino Bash:
Code: |
#!/bin/bash
pngtopnm -plain $1 > logo_gentoo_clut.ppm
ppmquant -plain 224 logo_gentoo_clut.ppm > logo_gentoo_clut224.ppm
cp logo_gentoo_clut224.ppm /usr/src/linux/drivers/video/logo
|
Appena ho un attimo di tempo, ti targizippo e lo uploado da qualche parte. |
|
Back to top |
|
|
cerri Bodhisattva
Joined: 05 Mar 2003 Posts: 2957 Location: # init S
|
Posted: Wed Nov 12, 2003 8:31 pm Post subject: |
|
|
Post interessante direi.... _________________ Enjoy your freedom.
Sex is like hacking. You get in, you get out, and you hope you didnt leave something behind that can be traced back to you.
<----------------------->
Andrea Cerrito |
|
Back to top |
|
|
DuDe Guru
Joined: 04 Dec 2002 Posts: 314 Location: Roma Italy
|
Posted: Thu Nov 13, 2003 12:00 am Post subject: |
|
|
Morpheus, ciao, e grazie per la patch, quello che pero' volevo fare e' fare uno script un po' piu' furbo, ossia che inserizze il logo nei file direttamente e non usando una patch, anche perche' uno potrebbe volere diversi loghi gentoo insomma volevo rendere la cosa un po' piu' automagica!
Alla patch avevo pensato, ma non avendo spazio web per pubblicarla, voglio intraprendere la strada dello script furbo! _________________ mount -t brain /dev/brain /body/skull |
|
Back to top |
|
|
|