summary refs log tree commit diff
path: root/generate-download
blob: 4fb6ce004230dddb0c8d9af0c62b09abcbed6bbb (plain) (blame)
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
#!/usr/bin/env python
import hashlib
import os.path
import subprocess

try:
	from subprocess import check_output
except ImportError: # Python < 2.7
	def check_output(*args, **kwargs):
		p = subprocess.Popen(*args, stdout=subprocess.PIPE, **kwargs)
		out,err = p.communicate()
		if p.returncode != 0:
			raise subprocess.CalledProcessError(p.returncode, args)
		return out

youtubeDlDir = os.path.join(os.path.dirname(__file__), '..', 'youtube-dl')

# Read template page
template = file('download.html.in', 'r').read()

# Build replacement strings
version = check_output([os.path.join(youtubeDlDir, 'youtube-dl'), '--version']).strip()
data = check_output(['git', 'show', '%s:youtube-dl' % version], cwd=youtubeDlDir)

url = 'https://github.com/rg3/youtube-dl/raw/%s/youtube-dl' % version
md5sum = hashlib.md5(data).hexdigest()
sha1sum = hashlib.sha1(data).hexdigest()
sha256sum = hashlib.sha256(data).hexdigest()
template = template.replace('@PROGRAM_VERSION@', version)
template = template.replace('@PROGRAM_URL@', url)
template = template.replace('@PROGRAM_MD5SUM@', md5sum)
template = template.replace('@PROGRAM_SHA1SUM@', sha1sum)
template = template.replace('@PROGRAM_SHA256SUM@', sha256sum)
file('download.html', 'w').write(template)