summaryrefslogtreecommitdiff
path: root/dev-util/dogtail/files/dogtail-0.9.10-gentoo-paths.patch
blob: 89d2be2c725a577c38d027e4b109cb4a2bae00d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
From d0dd6c6adb4edcd5147c42af14cd1016a67e84bd Mon Sep 17 00:00:00 2001
From: Gilles Dartiguelongue <eva@gentoo.org>
Date: Sat, 12 Aug 2017 00:59:44 +0200
Subject: [PATCH] Load resources from well-known location

Using __file__ does not work with Gentoo's dev-python/python-exec
wrapping. Better use hard-coded paths.

Also adds support for prefix.
---
 sniff/sniff | 29 +++++++++--------------------
 1 file changed, 9 insertions(+), 20 deletions(-)

diff --git a/sniff/sniff b/sniff/sniff
index 7ce67c7..84f7022 100755
--- a/sniff/sniff
+++ b/sniff/sniff
@@ -47,25 +47,18 @@ class SniffApp(object):
         if os.path.exists('sniff.ui'):
             self.builder.add_from_file('sniff.ui')
         else:
-            import os
-            path = os.path.abspath(
-                os.path.join(__file__, os.path.pardir, os.path.pardir))
-            if path == '/':  # in case the path is /bin/sniff
-                path = '/usr'
-            self.builder.add_from_file(path + '/share/dogtail/glade/sniff.ui')
+            self.builder.add_from_file(os.path.join(
+                @EPREFIX_USR@,
+                'share/dogtail/glade/sniff.ui')
+            )
         self.app = self.builder.get_object(self.appName)
         try:
             self.app.set_icon_from_file('../icons/dogtail-head.svg')
         except Exception:
-            import os
-            path = os.path.abspath(
-                os.path.join(__file__, os.path.pardir, os.path.pardir))
-            if path is '/':
-                path = '/usr'
-            try:
-                self.app.set_icon_from_file(os.path.join(path, 'share/icons/hicolor/scalable/apps/dogtail-head.svg'))
-            except Exception: # fallback for wierd installations, when sniff is neither in /bin or /usr/bin
-                self.app.set_icon_from_file('/usr/share/icons/hicolor/scalable/apps/dogtail-head.svg')
+            self.app.set_icon_from_file(os.path.join(
+                @EPREFIX_USR@,
+                'share/icons/hicolor/scalable/apps/dogtail-head.svg')
+            )
         self.setUpWidgets()
         self.connectSignals()
         self.app.show_all()
@@ -656,11 +649,7 @@ def loadIcon(iconName):
         pixbuf = GdkPixbuf.Pixbuf.new_from_file('icons/' + iconName)
     except GObject.GError:
         import os
-        path = os.path.abspath(
-            os.path.join(__file__, os.path.pardir, os.path.pardir))
-        if path == '/':
-                path = '/usr'
-        iconName = os.path.join(path, 'share/dogtail/icons/', iconName)
+        iconName = os.path.join(@EPREFIX_USR@, 'share/dogtail/icons/', iconName)
         pixbuf = GdkPixbuf.Pixbuf.new_from_file(iconName)
     return pixbuf
 
-- 
2.14.0