· 6 years ago · Nov 11, 2019, 05:24 PM
1import sys
2import os.path
3import re
4
5buttonFileName = 'Button/gpio-keys'
6print "Checking " + buttonFileName
7if os.path.isfile(buttonFileName):
8 try:
9 print "Setting proper permissions on " + buttonFileName
10 os.chmod(buttonFileName, 0744)
11 except:
12 pass
13
14apikeysFileName = 'Clock/ApiKeys.py'
15wuapi_re = re.compile('\\s*wuapi\\s*=')
16dsapi_re = re.compile('\\s*dsapi\\s*=')
17
18print "Checking " + apikeysFileName
19if (os.path.isfile(apikeysFileName)):
20 altered = False
21 foundds = False
22 newfile = ''
23 apikeys = open(apikeysFileName, "r")
24 for aline in apikeys:
25 if dsapi_re.match(aline):
26 foundds = True
27 if wuapi_re.match(aline):
28 print "Removing wuapi key from " + apikeysFileName
29 altered = True
30 else:
31 newfile += aline
32 apikeys.close()
33
34 if not foundds:
35 print "This version of PiClock requires a DarkSky api key."
36 print "https://darksky.net/dev"
37 print "Enter your DarkSky api key."
38 print "key:",
39 k = sys.stdin.readline()
40 k = k.strip()
41 if len(k) > 1:
42 newfile += "dsapi = '" + k + "'"
43 altered = True
44
45 if altered:
46 print "Writing Updated " + apikeysFileName
47 apikeys = open(apikeysFileName, "w")
48 apikeys.write(newfile)
49 apikeys.close()
50 else:
51 print "No changes made to " + apikeysFileName
52
53 try:
54 from rpi_ws281x import * # NOQA
55 except:
56 print "NeoAmbi.py now uses rpi-ws281x/rpi-ws281x-python"
57 print "Please install it as follows:"
58 print "sudo pip install rpi_ws281x"