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
68
69
70
71
72
|
#!/usr/bin/env python
import distutils
import distutils.sysconfig
from distutils.command.build import build
from distutils.core import setup
from DistUtilsExtra.command import *
from string import Template
from recent_notifications.Globals import VERSION, WEBSITE
class update_prefix(distutils.cmd.Command):
description = "substitute $PREFIX with the current prefix"
user_options = [
("files=", None, ".in files that should be updated")
]
def initialize_options(self):
self.files = "[]"
def finalize_options(self):
pass
def run(self):
try:
file_set = eval(self.files)
except:
raise Exception("Invalid files option: " + self.files)
for file in file_set:
if file.endswith(".in"):
output_file = file[:-3]
else:
raise Exception("Invalid file: " + file)
print "updating PREFIX in file", output_file
with open(file, "r") as f:
server_data = f.read()
with open(output_file, "w") as f:
f.write(Template(server_data).safe_substitute(PREFIX=distutils.sysconfig.PREFIX))
build.sub_commands.append(("update_prefix", None))
setup(
name="recent-notifications",
version=VERSION,
author="Jason Conti",
author_email="jason.conti@gmail.com",
url=WEBSITE,
license="GNU General Public License (GPL)",
packages=["recent_notifications"],
data_files=[
("lib/recent-notifications", ["recent-notifications"]),
("share/icons/hicolor/scalable/apps", ["icons/recent-notifications.svg"]),
("share/icons/hicolor/scalable/status", [
"icons/notification-critical.svg",
"icons/notification-low.svg",
"icons/notification-normal.svg",
"icons/humanity-notification-read.svg",
"icons/humanity-notification-unread.svg"])
],
cmdclass={
"build": build_extra.build_extra,
"build_i18n": build_i18n.build_i18n,
"update_prefix": update_prefix
}
)
|