| 
									
										
										
										
											2010-10-31 23:50:48 +01:00
										 |  |  | #!/usr/bin/env python | 
					
						
							|  |  |  | import hashlib | 
					
						
							| 
									
										
										
										
											2011-09-13 23:06:09 +02:00
										 |  |  | import os.path | 
					
						
							| 
									
										
										
										
											2011-09-27 20:50:03 +02:00
										 |  |  | 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: | 
					
						
							| 
									
										
										
										
											2011-09-27 21:44:02 +02:00
										 |  |  | 			raise subprocess.CalledProcessError(p.returncode, args) | 
					
						
							| 
									
										
										
										
											2011-09-27 20:50:03 +02:00
										 |  |  | 		return out | 
					
						
							| 
									
										
										
										
											2010-10-31 23:50:48 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-13 23:06:09 +02:00
										 |  |  | youtubeDlDir = os.path.join(os.path.dirname(__file__), '..', 'youtube-dl') | 
					
						
							| 
									
										
										
										
											2010-10-31 23:50:48 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Read template page | 
					
						
							| 
									
										
										
										
											2010-11-19 18:19:41 +01:00
										 |  |  | template = file('download.html.in', 'r').read() | 
					
						
							| 
									
										
										
										
											2010-10-31 23:50:48 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Build replacement strings | 
					
						
							| 
									
										
										
										
											2011-09-27 20:50:03 +02:00
										 |  |  | version = check_output([os.path.join(youtubeDlDir, 'youtube-dl'), '--version']).strip() | 
					
						
							|  |  |  | data = check_output(['git', 'show', '%s:youtube-dl' % version], cwd=youtubeDlDir) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-11-06 11:25:37 +01:00
										 |  |  | url = 'https://github.com/rg3/youtube-dl/raw/%s/youtube-dl' % version | 
					
						
							| 
									
										
										
										
											2010-10-31 23:50:48 +01:00
										 |  |  | 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) | 
					
						
							| 
									
										
										
										
											2010-11-19 18:19:41 +01:00
										 |  |  | file('download.html', 'w').write(template) |