De laatste consumenten-versies van RedHat en Fedore gebruiken het theme Bluecurve. Het theme en artwork is uitgebracht onder de GPL. Daardoor is het ook geport naar andere distro's, zoals Gentoo.
Ook voor FreeBSD is een port. Deze kent echter de volgende nadelen:
1. Alleen het GTK-theme wordt geport. De icoontjes in bv. Gnome-stock en Nautilus blijven ongewijzigd. Ook de vensters veranderen niet omdat het metacity-theme niet wordt meegenomen
2. Belangrijkste nadeel: De port is al een tijdje niet ge-update. Hierdoor werkt deze niet goed met Gnome 2.6. Onder andere de geselecteerde items in menu's zijn wit in plaats van blauw.
Na wat stoeien bleek het echter heel eenvoudig te zijn om Gnome onder FreeBSD volledig te voorzien van het nieuwste Bluecurve theme. Hoe zet ik hieronder neer, zodat ook andere FreeBSD-users gebruik kunnen maken van Bluecurve. Ik vind het een fijn theme om mee te werken.
De stappen die hiervoor gezet moeten worden:
!!! Voor al deze stappen, behalve stap 5, moet je ingelogd zijn als root.
Stap 1. Download de nieuwste versie.
Download de nieuwste (werkende) versie, zowel de RPM en SRPM.
Ik heb de huidige development versie gebruikt, te vinden in http://download.fedora.re...lopment/i386/Fedora/RPMS/ en http://download.fedora.re...x/core/development/SRPMS/
Onthoud de versie en de RedHat-subversie.
Ik heb gedownload redhat-artwork-0.97-2. Het gaat in dit geval om versie 0.97 en RedHat-subversie 2.
Plaats de SRPM in de directory waar de sources van de ports in komen, standaard is dit /usr/ports/distfiles/. De RPM kun je daar ook neerzetten, maar dat hoeft niet perse. De RPM is voor de handmatige installatie van bestanden, de SRPM zal gebruikt worden door de portscollection.
Stap 2. Pas de port aan.
De meest recente port is op dit moment versie 0.73. Deze port voert echter geen patches uit op de source, stelt alleen de nodige omgevingsvariabelen en parameters in. Omdat bluecurve van zich zelf al goed portable is geschreven, kan de post (op dit moment) op nieuwste versie toegepast worden. Hiervoor moet je de post wel aanpassen.
!!! Voordat je dit doet is het verstandig om je ports-collection te updaten, bv. dmv. cvsup.
!!! Als je de port al hebt geinstalleerd, de-installeer deze dan eerst.
De port is x11-themes/gtk-bluecurve-theme, standaard te vinden in de directory /usr/ports/x11-themes/gtk-bluecurve-theme/. In deze directory staan een aantal files. Twee moeten er aangepast worden, 'Makefile' en 'distinfo'.
Makefile:
Er moeten drie aanpassingen gedaan worden:
- Achter 'PORTVERSION=' staat de versie van de port, momenteel is dat 0.73. Pas deze aan, aan de versie van de gedownloade versie van Redhat-artwork. In deze howto is dat versie 0.97. De regel wordt dan dus: 'PORTVERSION= 0.97'.
- Achter 'PORTREVISION=' moet '1' komen te staan. Kans is groot dat dit al is ingesteld. Deze regel staat direct onder 'PORTVERSION'.
- Iets verder naar beneden staat de regel 'RH_SUBVERSION='. Stel deze in op de RedHat-subversion van de gedownloade versie van RedHat-artwork. In deze howto is dat subversie 2. De regel wordt dan dus 'RH_SUBVERSION=2'.
distinfo:
In distinfo staat info over de source-files. Deze moet aangepast worden aan je huidige sourcefile. Er staan 2 regels in, eentje voor de checksum (MD5=...) en eentje voor de grootte (SIZE=...). Tussen haakjes staat de bestandsnaam.
Drie aanpassingen:
- Pas de bestandsnaam tussen haakjes aan, zodat deze overeenkomt met de gedownloade source, die je in distfiles hebt geplaatst. In dit geval is dat het bestand redhat-artwork-0.97-2.src.rpm.
- Pas de checksum aan. De checksum kun je nagaan met het commando 'md5 <bestandsnaam>', in dit geval is dat dus:
Zet het grote hexadecimale getal dat je krijgt op de plaats waar de checksum van de oude versie staat.
- Pas de grootte aan. Omvang van het bestand is gemakkelijk na te gaan met 'ls -l <bestand>', in dit geval is dat dus:
Zet de omvang van de nieuwe versie op de plaats van de omvang van de oude versie.
Als je de stappen goed hebt gedaan, krijg je in het geval van deze voorbeeld-situatie de volgende inhoud in de file 'distinfo':
Stap 3. Installeer de port.
Ga vanuit een shell naar de directory van de port voor zover je daar nog niet in zat, en type 'make install clean' (zoals bij elke port gebruikelijk is, niets nieuws dus)
!!! Voordat je de port installeert, moet je nog ff aangeven dat je het theme ook voor GTK2 wilt gebruiken door middel van de commando-regel: 'export WITH_GTK2=yes'.
Als je de Makefile en distinfo goed hebt aangepast, dan wordt de gedownloade SRPM geaccepteerd en wordt de port gecompiled. Als dit zonder foutmeldingen gebeurt, is alles goed gegaan
Het kan ook fout gaan. Als de SRPM niet in source-directory van de ports staat, probeert de port deze te downloaden op de plaats waar de oude versie staat. Het is echter niet zeker of de gedownloade versie daar aanwezig is, dus bestaat de kans dat het bestand niet wordt gevonden. Vandaar het handmatige downloaden van de SRPM in stap 1. Verder.. als de Makefile en distinfo niet goed zijn aangepast, dan wordt naar de verkeerde SRPM gezocht, is de omvang niet juist of de checksum is niet ok. Als dit het geval is, ga dan opnieuw stap 2 na.
Stap 4. Installeer de rest
Tot nu toe is alleen het gtk-theme geinstalleerd. Nu nog de rest, zoals icoontjes en vensters. Daar is de RPM voor nodig.
Eerst moet de RPM uitgepakt worden. Dit kan met rpm2cpio en cpio. Als rpm2cpio nog niet op je systeem aanwezig is, moet je deze installeren. Kan met behulp van de portscollection, staat in de rubriek 'archivers'. De commando-regel hiervoor is 'rpm2cpio <bestandsnaam> | cpio -c --extract'.
Je kunt per category artwork handmatig gaan installeren, bijvoorbeeld alleen de icoontjes. In deze howto leg ik uit hoe je alles in een keer installeert, zodat je Gnome helemaal van Bluecurve kunt voorzien.
De bestanden die je nodig hebt, staan in usr/share van de RPM. Ga naar deze directory toe. Daar staan weer directories in. De directory 'apps' is niet nodig, deze kun je verwijderen dmv. 'rm -rf apps'. Vervolgens kopieer je de rest naar share die je X11-installatie gebruikt, dus 'cp -R * /usr/X11R6/share/'. De uitgepakte RPM-bestanden heb je niet meer nodig en kun je verwijderen.
De commando's die in het geval van deze howto gebruikt worden in deze stap om het te verhelderen:
Om BlueCurve in GDM te kunnen gebruiken, moet je nog wat extra doen:
Verplaats de inhoud van /usr/X11R6/share/gdm/themes naar /usr/X11R6/share/gnome/gdm/themes.
Het theme zal niet werken wegens het ontbreken van het Redhat-logo, bestand 'rh_logo-header.png'. Je kunt echter een Gnome of BSD logo neerzetten met deze naam om het werkend te krijgen. Het theme 'happygnome' heeft een geschikt GnomeLogo. Als je happygnome hebt geinstalleerd, is het een kwestie van een kopie maken:
[code]
[root@a:/usr/X11R6/share/gnome/gdm/themes]# cd Bluecurve/
[root@a:/usr/X11R6/share/gnome/gdm/themes/Bluecurve]# cp ../happygnome/gnome-logo.png rh_logo-header.png
[root@a:/usr/X11R6/share/gnome/gdm/themes/Bluecurve]#
[code]
Stap 5. Instellen en testen
(her)start Gnome, ga naar het venster 'Theme-voorkeuren'. Als het goed is, staat Bluecurve in de lijst. Selecteer deze. Herstart Gnome. Eventueel GDM instellen. Als alles is gelukt, zie je nu Bluecurve vensters, widgets en iconen.
Er zal nog wat gefinetuned moeten worden omdat FreeBSD ook spul in share/gnome/ heeft staan wat bij RedHat in share heeft staan, zoals de GDM-themes.
Ook voor FreeBSD is een port. Deze kent echter de volgende nadelen:
1. Alleen het GTK-theme wordt geport. De icoontjes in bv. Gnome-stock en Nautilus blijven ongewijzigd. Ook de vensters veranderen niet omdat het metacity-theme niet wordt meegenomen
2. Belangrijkste nadeel: De port is al een tijdje niet ge-update. Hierdoor werkt deze niet goed met Gnome 2.6. Onder andere de geselecteerde items in menu's zijn wit in plaats van blauw.
Na wat stoeien bleek het echter heel eenvoudig te zijn om Gnome onder FreeBSD volledig te voorzien van het nieuwste Bluecurve theme. Hoe zet ik hieronder neer, zodat ook andere FreeBSD-users gebruik kunnen maken van Bluecurve. Ik vind het een fijn theme om mee te werken.
De stappen die hiervoor gezet moeten worden:
!!! Voor al deze stappen, behalve stap 5, moet je ingelogd zijn als root.
Stap 1. Download de nieuwste versie.
Download de nieuwste (werkende) versie, zowel de RPM en SRPM.
Ik heb de huidige development versie gebruikt, te vinden in http://download.fedora.re...lopment/i386/Fedora/RPMS/ en http://download.fedora.re...x/core/development/SRPMS/
Onthoud de versie en de RedHat-subversie.
Ik heb gedownload redhat-artwork-0.97-2. Het gaat in dit geval om versie 0.97 en RedHat-subversie 2.
Plaats de SRPM in de directory waar de sources van de ports in komen, standaard is dit /usr/ports/distfiles/. De RPM kun je daar ook neerzetten, maar dat hoeft niet perse. De RPM is voor de handmatige installatie van bestanden, de SRPM zal gebruikt worden door de portscollection.
Stap 2. Pas de port aan.
De meest recente port is op dit moment versie 0.73. Deze port voert echter geen patches uit op de source, stelt alleen de nodige omgevingsvariabelen en parameters in. Omdat bluecurve van zich zelf al goed portable is geschreven, kan de post (op dit moment) op nieuwste versie toegepast worden. Hiervoor moet je de post wel aanpassen.
!!! Voordat je dit doet is het verstandig om je ports-collection te updaten, bv. dmv. cvsup.
!!! Als je de port al hebt geinstalleerd, de-installeer deze dan eerst.
De port is x11-themes/gtk-bluecurve-theme, standaard te vinden in de directory /usr/ports/x11-themes/gtk-bluecurve-theme/. In deze directory staan een aantal files. Twee moeten er aangepast worden, 'Makefile' en 'distinfo'.
Makefile:
Er moeten drie aanpassingen gedaan worden:
- Achter 'PORTVERSION=' staat de versie van de port, momenteel is dat 0.73. Pas deze aan, aan de versie van de gedownloade versie van Redhat-artwork. In deze howto is dat versie 0.97. De regel wordt dan dus: 'PORTVERSION= 0.97'.
- Achter 'PORTREVISION=' moet '1' komen te staan. Kans is groot dat dit al is ingesteld. Deze regel staat direct onder 'PORTVERSION'.
- Iets verder naar beneden staat de regel 'RH_SUBVERSION='. Stel deze in op de RedHat-subversion van de gedownloade versie van RedHat-artwork. In deze howto is dat subversie 2. De regel wordt dan dus 'RH_SUBVERSION=2'.
distinfo:
In distinfo staat info over de source-files. Deze moet aangepast worden aan je huidige sourcefile. Er staan 2 regels in, eentje voor de checksum (MD5=...) en eentje voor de grootte (SIZE=...). Tussen haakjes staat de bestandsnaam.
Drie aanpassingen:
- Pas de bestandsnaam tussen haakjes aan, zodat deze overeenkomt met de gedownloade source, die je in distfiles hebt geplaatst. In dit geval is dat het bestand redhat-artwork-0.97-2.src.rpm.
- Pas de checksum aan. De checksum kun je nagaan met het commando 'md5 <bestandsnaam>', in dit geval is dat dus:
code:
1
2
| [root@a:/usr/ports/x11-themes/gtk-bluecurve-theme]# md5 /usr/ports/distfiles/redhat-artwork-0.97-2.src.rpm MD5 (/usr/ports/distfiles/redhat-artwork-0.97-2.src.rpm) = d0dbbba49a9d8745ebcb991a51eb606c |
Zet het grote hexadecimale getal dat je krijgt op de plaats waar de checksum van de oude versie staat.
- Pas de grootte aan. Omvang van het bestand is gemakkelijk na te gaan met 'ls -l <bestand>', in dit geval is dat dus:
code:
1
2
| [root@a:/usr/ports/x11-themes/gtk-bluecurve-theme]# ls -l /usr/ports/distfiles/redhat-artwork-0.97-2.src.rpm -rw-r--r-- 1 root wheel 8336482 26 jun 02:12 /usr/ports/distfiles/redhat-artwork-0.97-2.src.rpm |
Zet de omvang van de nieuwe versie op de plaats van de omvang van de oude versie.
Als je de stappen goed hebt gedaan, krijg je in het geval van deze voorbeeld-situatie de volgende inhoud in de file 'distinfo':
code:
1
2
| MD5 (redhat-artwork-0.97-2.src.rpm) = d0dbbba49a9d8745ebcb991a51eb606c SIZE (redhat-artwork-0.97-2.src.rpm) = 8336482 |
Stap 3. Installeer de port.
Ga vanuit een shell naar de directory van de port voor zover je daar nog niet in zat, en type 'make install clean' (zoals bij elke port gebruikelijk is, niets nieuws dus)
!!! Voordat je de port installeert, moet je nog ff aangeven dat je het theme ook voor GTK2 wilt gebruiken door middel van de commando-regel: 'export WITH_GTK2=yes'.
Als je de Makefile en distinfo goed hebt aangepast, dan wordt de gedownloade SRPM geaccepteerd en wordt de port gecompiled. Als dit zonder foutmeldingen gebeurt, is alles goed gegaan
Het kan ook fout gaan. Als de SRPM niet in source-directory van de ports staat, probeert de port deze te downloaden op de plaats waar de oude versie staat. Het is echter niet zeker of de gedownloade versie daar aanwezig is, dus bestaat de kans dat het bestand niet wordt gevonden. Vandaar het handmatige downloaden van de SRPM in stap 1. Verder.. als de Makefile en distinfo niet goed zijn aangepast, dan wordt naar de verkeerde SRPM gezocht, is de omvang niet juist of de checksum is niet ok. Als dit het geval is, ga dan opnieuw stap 2 na.
Stap 4. Installeer de rest
Tot nu toe is alleen het gtk-theme geinstalleerd. Nu nog de rest, zoals icoontjes en vensters. Daar is de RPM voor nodig.
Eerst moet de RPM uitgepakt worden. Dit kan met rpm2cpio en cpio. Als rpm2cpio nog niet op je systeem aanwezig is, moet je deze installeren. Kan met behulp van de portscollection, staat in de rubriek 'archivers'. De commando-regel hiervoor is 'rpm2cpio <bestandsnaam> | cpio -c --extract'.
Je kunt per category artwork handmatig gaan installeren, bijvoorbeeld alleen de icoontjes. In deze howto leg ik uit hoe je alles in een keer installeert, zodat je Gnome helemaal van Bluecurve kunt voorzien.
De bestanden die je nodig hebt, staan in usr/share van de RPM. Ga naar deze directory toe. Daar staan weer directories in. De directory 'apps' is niet nodig, deze kun je verwijderen dmv. 'rm -rf apps'. Vervolgens kopieer je de rest naar share die je X11-installatie gebruikt, dus 'cp -R * /usr/X11R6/share/'. De uitgepakte RPM-bestanden heb je niet meer nodig en kun je verwijderen.
De commando's die in het geval van deze howto gebruikt worden in deze stap om het te verhelderen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| [root@a:~]# mkdir bluecurve [root@a:~]# cd bluecurve/ [root@a:~/bluecurve]# rpm2cpio /usr/ports/distfiles/redhat-artwork-0.97-2.i386.rpm | cpio --extract -d 12794 blocks [root@a:~/bluecurve]# cd usr/share/ [root@a:~/bluecurve/usr/share]# ls apps doc gdm icons locale pixmaps themes xmms [root@a:~/bluecurve/usr/share]# rm -rf apps/ [root@a:~/bluecurve/usr/share]# cp -R * /usr/X11R6/share/ cp: symlink: ../icons/Bluecurve/48x48/apps/redhat-main-menu.png: File exists [root@a:~/bluecurve/usr/share]# cd ../../.. [root@a:~]# rm -rf bluecurve/ [root@a:~]# |
Om BlueCurve in GDM te kunnen gebruiken, moet je nog wat extra doen:
Verplaats de inhoud van /usr/X11R6/share/gdm/themes naar /usr/X11R6/share/gnome/gdm/themes.
code:
1
2
| [root@a:/usr/X11R6/share]# cd gnome/gdm/themes/ [root@a:/usr/X11R6/share/gnome/gdm/themes]# mv ../../../gdm/themes/* . |
Het theme zal niet werken wegens het ontbreken van het Redhat-logo, bestand 'rh_logo-header.png'. Je kunt echter een Gnome of BSD logo neerzetten met deze naam om het werkend te krijgen. Het theme 'happygnome' heeft een geschikt GnomeLogo. Als je happygnome hebt geinstalleerd, is het een kwestie van een kopie maken:
[code]
[root@a:/usr/X11R6/share/gnome/gdm/themes]# cd Bluecurve/
[root@a:/usr/X11R6/share/gnome/gdm/themes/Bluecurve]# cp ../happygnome/gnome-logo.png rh_logo-header.png
[root@a:/usr/X11R6/share/gnome/gdm/themes/Bluecurve]#
[code]
Stap 5. Instellen en testen
(her)start Gnome, ga naar het venster 'Theme-voorkeuren'. Als het goed is, staat Bluecurve in de lijst. Selecteer deze. Herstart Gnome. Eventueel GDM instellen. Als alles is gelukt, zie je nu Bluecurve vensters, widgets en iconen.
Er zal nog wat gefinetuned moeten worden omdat FreeBSD ook spul in share/gnome/ heeft staan wat bij RedHat in share heeft staan, zoals de GDM-themes.
[ Voor 3% gewijzigd door SvMp op 26-06-2004 13:38 ]