35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
| #!/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)
 |