• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Paketnamen unter SuSE 9.3 (gnome)

The_Eye

Member
Hi,

Ich versuche ein kleines applet unter Gnome SuSE 9.3 in Betrieb zu nehmen, so daß man über das Panel auf die Bookmarks zugreifen kann ohne den Browser starten zu müssen. Zu finden hier:
http://www.gnomefiles.org/app.php?soft_id=745

Die Installation funktioniert soweit. Das Applet erscheint im Auswahl-Dialog. Ziehe ich es jedoch in das Panel kommt die Fehlermeldung:

Das Panel ist beim Laden von "OAFIID:Brwoser_Bookmarks_Menu" auf eine Problem gestoßen.

Auf der Konsole gestartet kommt diese Meldung:

"theeye@linux:/usr/lib/browser-bookmarks-menu> ./browser-bookmarks-menu.py
Traceback (most recent call last):
File "./browser-bookmarks-menu.py", line 11, in ?
import gnomeapplet
ImportError: No module named gnomeapplet

In der README werden folgende Abhängigkeiten angegeben:

1. gnome-python2
2. gnome-python2-applet
3. gnome-python2-bonobo
4. gnome-python2-gconf

or

1. python-gnome2
2. python-gnome2-extras

Nun besteht das Problem darin, dass das Applet unter Ubuntu und Red Hat getestet wurde und ich diese Pakete unter SuSE nicht finden kann.
Hat jemand eine Idee, unter welchem Namen diese unter SuSE laufen?

Grüße
 

eidde

Newbie
Hi!

Schon mit Yast -> Software installieren oder löschen -> Suche : Python versucht?
Ich hätte alle Pakete mit Python nachinstalliert und noch mall probiert mit deinem Applet
 
Bei SuSE ist der ganze Kram in nur zwei Paketen, die beiden heißen "python-gtk" und "python-gnome". Falls Du die Pakete nicht in YaST findest, musst Du den FTP-Server als Installationsquelle einbinden. Es kann übrigens passieren, dass Du das Applet nach der Installation dieser beiden Pakete neu installieren musst.

EDIT: Die Version 0.5 scheint auch python-xml zu benötigen. Ich habe leider SuSE 9.2, deswegen läuft bei mir nur die Version 0.1, deswegen kann ich es leider nicht genauer testen. Gibt es bei der 9.3 ein Paket python-pango? Ich weiß es nicht, falls ja, wird das auch benötigt.

Speicher am besten mal diesen Text hier als Textdatei unter dem Namen "browser-bookmarks-menu.spec" ab:
Code:
#
# spec file for package browser-bookmarks-menu (Version 0.5)
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#

BuildRequires: sed

%define _prefix /opt/gnome

Name:         browser-bookmarks-menu
License:      GPL
Group:        System/GUI/GNOME
URL:          http://browserbookapp.sourceforge.net/
Summary:      Browser Bookmarks Menu
Version:      0.5
Release:      0
Source:       %{name}-%{version}.tar.gz
BuildRoot:    %{_tmppath}/%{name}-%{version}-build
BuildArch:    noarch
Requires:     gnome-desktop python python-gnome python-gtk python-xml

%description
This is a small Gnome applet to allow easy access to your browser's bookmarks,
even when your browser is not open. 



Authors:
--------
    Nigel Tao <nigeltao@users.sourceforge.net>

%prep
%setup

%build
sed 's|/usr/lib/browser-bookmarks-menu|%{_libdir}/gnome-applets|' \
       BrowserBookmarksMenu.server > BrowserBookmarksMenu.server.tmp && \
       mv BrowserBookmarksMenu.server.tmp BrowserBookmarksMenu.server
sed 's|/usr/share/pixmaps/epiphany-bookmarks.png|%{_datadir}/pixmaps/gnome-favorites.png|' \
       BrowserBookmarksMenu.server > BrowserBookmarksMenu.server.tmp && \
       mv BrowserBookmarksMenu.server.tmp BrowserBookmarksMenu.server
sed 's|epiphany-bookmarks.png|gnome-favorites.png|' \
       browser-bookmarks-menu.py > browser-bookmarks-menu.py.tmp && \
       mv browser-bookmarks-menu.py.tmp browser-bookmarks-menu.py

%install
rm -rf %{buildroot}
install -d -m 755 %{buildroot}%{_libdir}/bonobo/servers
install -m 644 BrowserBookmarksMenu.server %{buildroot}%{_libdir}/bonobo/servers
install -d -m 755 %{buildroot}%{_libdir}/gnome-applets
install -m 755 browser-bookmarks-menu.py %{buildroot}%{_libdir}/gnome-applets

%clean
rm -rf %{buildroot}

%files
%defattr(-,root,root)
%doc CHANGELOG LICENCE README
%{_libdir}/bonobo/servers/BrowserBookmarksMenu.server
%{_libdir}/gnome-applets/browser-bookmarks-menu.py

%changelog -n browser-bookmarks-menu
* Thu Jun 16 2005 - root@localhost
- initial package created (Version 0.5)
Dann noch den Download "browser-bookmarks-menu-0.5.tar.gz" nach "/usr/src/packages/SOURCES" kopieren und "rpmbuild -ba browser-bookmarks-menu.spec" ausführen.

Vorteil dieser Geschichte: Du bekommst ein RPM, das Du normal installieren und deinstallieren kannst und außerdem werden die Pfade für die SuSE-Dateihierarchie angepasst. Das RPM wie gewohnt mit "rpm -Uvh /usr/src/packages/RPMS/browser-bookmarks-menu-0.5-0.noarch.rpm" installieren.
 
OP
T

The_Eye

Member
Hi @traffic,

Das ist ja super nett!

Also, es gibt unter SuSE 9.3:
pango 1.8.1-4
python 2.4-14
python-gnome 2.10.0-1 (guru.suse93)
python-gtk2.6.1-1 (guru.suse93)
libxml2-python 2.6.17.1 (guru.suse93)

Alles hatte ich installiert, bevor ich begann das Applet zu installieren.

Die manuelle Installation vom Applet habe ich gelöscht und dann getan, wie Du es beschrieben hast. Mein erstes rpm :D

Alles läuft sauber durch. Wieder kann ich das Applet im Auswahldialog anwählen. Jedoch die Fehlermeldung bleibt die gleiche!

Irgendwie stimmen da, denke ich, die Abhängigkeiten nicht. Bonobo läuft ja und zeigt das Applet ja auch an. Bleibt Python als Fehlerquelle oder das Script selber.

Herzliche Grüße und danke!!!
 
Dann probier mal frühere Versionen:

http://prdownloads.sourceforge.net/browserbookapp/

Auf meiner SuSE 9.2 läuft, wie gesagt, nur die 0.0.1, weil bei den neueren zwar alle Abhängigkeiten erfüllt sind, aber mit zu alten Versionen.

Allerdings funktioniert meine RPM-Anleitung mit denen nicht mehr, weil bei den älteren Versionen die Pfade anders waren. Ich kann aber, wenn Du mir sagst, welche Version bei Dir von Hand zum Laufen zu bringen ist, eine neue RPM-Anleitung machen.

Die jetzige Version musst Du natürlich löschen, bevor Du eine ältere ausprobierst, mit YaST oder als root in der Konsole mit "rpm -e browser-bookmarks-menu".
 
OP
T

The_Eye

Member
Bin jetzt alle Versionen von 5 bis runter zur 1 durchgegangen. Immer bleibt das gleiche Problem. Werde jetzt wirklich mal dem Vorschlag von eidde folgen und alles wor irgendwie Python mit drinsteckt installieren, auch wenn ich solche Lösungen nicht so gerne hab. Aber langsam wirds persönlich ;-)

Und Dir traffic noch einmal ein dickens DANKEfür Deine Hilfe und Mühe!!!
 
Hast Du daran gedacht, dass die Versionen unterschiedliche Pfade haben? Die BrowserBookmarksMenu.server enthält eine Pfadangabe, die auf die browser-bookmarks-menu.py zeigt sowie eine Pfadangabe, die auf ein Icon zeigt. Die browser-bookmarks-menu.py enthält wiederum auch eine Pfadangabe zu diesem Icon.

Alle diese Pfadangaben müssen zusammenpassen, Du kannst sie direkt in den Dateien editieren. Genau das macht normalerweise dieses "./configure"-Skript, aber das gibt es bei einem so kleinen Programm natürlich nicht. Übrigens: Das Icon, das der Autor verwendet, gibt es gar nicht, wenn Epiphany nicht installiert ist, deswegen habe ich es durch ein neutrales ersetzt.

Der Entwickler schreibt, dass er mitten in der Entwicklung die Distribution gewechselt hat, deswegen haben sich die Pfadangaben geändert. Und SuSE macht es auch wiederum anders. Hinzu kommt, dass Du Pakete von suser-guru hast. Vielleicht wäre es nicht verkehrt, es erst mit den Paketen von SuSE zu versuchen.
 
OP
T

The_Eye

Member
Und der Kampf geht weiter ;-)

Also, ich habe nun die Pakete von guru durch die von SuSE ersetzt. Du wirst es ahnen. Keine Veränderung. Sowohl bei Manueller Installation, als auch bei Deinem rpm.

Habe mich nun noch an die 1. Version gesetzt und auf die Pfade von SuSE umgeändert.

Den Server:



<oaf_info>

<oaf_server iid="OAFIID:Browser_Bookmarks_Menu_Factory"
type="exe"
location="/usr/lib/browser-bookmarks-menu/browser-bookmarks-menu.py">

<oaf_attribute name="repo_ids" type="stringv">
<item value="IDL:Bonobo/GenericFactory:1.0"/>
<item value="IDL:Bonobo/Unknown:1.0"/>
</oaf_attribute>
<oaf_attribute name="name" type="string" value="Browser Bookmarks Menu Factory"/>
<oaf_attribute name="description" type="string" value="Browser Bookmarks Menu Factory"/>
</oaf_server>

<oaf_server iid="OAFIID:Browser_Bookmarks_Menu"
type="factory"
location="OAFIID:Browser_Bookmarks_Menu_Factory">

<oaf_attribute name="repo_ids" type="stringv">
<item value="IDL:GNOME/Vertigo/PanelAppletShell:1.0"/>
<item value="IDL:Bonobo/Control:1.0"/>
<item value="IDL:Bonobo/Unknown:1.0"/>
</oaf_attribute>
<oaf_attribute name="name" type="string" value="Browser Bookmarks Menu"/>
<oaf_attribute name="description" type="string" value="A menu to access your browser's bookmarks"/>
<oaf_attribute name="panel:category" type="string" value="Utility"/>
<oaf_attribute name="panel:icon" type="string" value="/opt/gnome/share/pixmaps/favourite-folders.png"/>
</oaf_server>

</oaf_info>


Und die Python Datei:

def on_about(component, verb, applet):
icon = gtk.Image()
icon.set_from_file("/opt/gnome/share/pixmaps/favourite-folders.png")

fullname = "Browser Bookmarks Menu"
version = "0.1"
copyright = "Copyright (C) 2004 Nigel Tao"
description = "A menu for your web bookmarks."
authors = ["Nigel Tao <nigel.tao@myrealbox.com>"]
translators = []


Aber das Teil läuft einfach nicht. Bekommst Du denn die 1. Version zum Laufen? Mit dem Entwickler habe ich schon bevor ich hier gepostet habe kurz gemailt - bevor es persönlich wurde - nur um ihm kurz zu berichten. Aber mit SuSE kennt er sich einfach nicht aus ...

Liebe Grüße
 
Tut mir leid, ich habe SuSE 9.2, deswegen sind meine Ergebnisse nicht übertragbar, weil bei SuSE 9.3 andere, neuere Pakete drauf sind. Bei mir läuft nur die Version 0.1, die Pfade sind egal, sie müssen nur zusammenpassen.

Genauer gesagt: Der Pfad für den Bonobo-Server ist von SuSE vorgegeben, darin muss der Pfad zum eigentlichen Skript zeigen, ist aber egal. Der Pfad kann also auch nach /var/schlagmichtot zeigen, solange das eigentliche Skript tatsächlich dort ist, geht es.

Der Pfad zum Icon ist nicht so wichtig, das Programm läuft auch ohne Icon. Ein sinnvoller Pfad zum eigentlichen Skript wäre /opt/gnome/lib/gnome-panel.

Zur Information, ich habe folgende Pakete installiert:
Code:
rpm -qa | grep bonobo
libbonobo-2.6.2-3
bonobo-1.0.22-271
libbonoboui-2.6.1-3

rpm -qa | grep python
libxslt-python-1.1.9-2.1
python-orbit-2.0.0-177
python-xml-2.3.4-3.1
python-gtk-2.2.0-3.1
python-gnome-2.0.3-2
libxml2-python-2.6.12-3.4
python-2.3.4-3.2
Du musst natürlich die entsprechenden zu SuSE 9.3 passenden Pakete nehmen, sonst passt das ganze System hinten und vorne nicht mehr zusammen.
 
OP
T

The_Eye

Member
Hi traffic,

Hier wieder ich aber mit der immer gleichen Meldung. Habe nun so ziemlich alle Varianten durch gespielt aber alles ohne Erfolg.

Auch bei den Abhängigkeiten kann ich nichts finden:

rpm -qa | grep bonobo
mozilla-bonobo-0.4.1-4
bonobo-devel-1.0.22-276
libbonobo-devel-2.8.1-4
libbonobo-2.8.1-4
libbonoboui-2.8.1-9
bonobo-1.0.22-276
libbonoboui-devel-2.8.1-9

rpm -qa | grep python
python-egenix-mx-base-2.0.6-3
python-xml-2.4-14
python-wxGTK-2.5.3.1-5
python-xmldiff-0.6.4-97
python-gtk-2.5.3-3
kdebindings3-python-3.4.0-6
python-2.4-14
python-pyx-0.7.1-4
python-curses-2.4-14
python-pygame-1.6.2-4
python-orbit-2.0.1-4
dbus-1-python-0.23.4-7
python-devel-2.4-14
python-mad-0.5.1-95
python-tk-2.4-14
python-ao-0.82-121
python-ldap-2.0.6-3
libxml2-python-2.6.17-4
python-numeric-23.7-3
libxslt-python-1.1.12-5
python-imaging-1.1.4-297
python-dialog-2.7-3
python-gnome-2.9.4-3
david@linux:~>

Denke wir brauchen ein Python-Experten oder wir müssen uns geschlagen geben :(
 
Oben