Skip to content

Commit

Permalink
ATTENTION DO NOT USE THESE: new binaries in the Downloads section
Browse files Browse the repository at this point in the history
placed fake binaries that update themselves where old versions updating will search for the new version
  • Loading branch information
FiloSottile committed Dec 8, 2012
1 parent 5a304a7 commit c7287a3
Show file tree
Hide file tree
Showing 6 changed files with 142 additions and 0 deletions.
1 change: 1 addition & 0 deletions LATEST_VERSION
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
9999.99.99
40 changes: 40 additions & 0 deletions devscripts/transition_helper.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
#!/usr/bin/env python

import sys, os

try:
import urllib.request as compat_urllib_request
except ImportError: # Python 2
import urllib2 as compat_urllib_request

sys.stderr.write(u'Hi! We changed distribution method and now youtube-dl needs to update itself one more time.\n')
sys.stderr.write(u'This will only happen once. Simply press enter to go on. Sorry for the trouble!\n')
sys.stderr.write(u'The new location of the binaries is https://github.com/rg3/youtube-dl/downloads, not the git repository.\n\n')

try:
raw_input()
except NameError: # Python 3
input()

filename = sys.argv[0]

API_URL = "https://api.github.com/repos/rg3/youtube-dl/downloads"
BIN_URL = "https://github.com/downloads/rg3/youtube-dl/youtube-dl"

if not os.access(filename, os.W_OK):
sys.exit('ERROR: no write permissions on %s' % filename)

try:
urlh = compat_urllib_request.urlopen(BIN_URL)
newcontent = urlh.read()
urlh.close()
except (IOError, OSError) as err:
sys.exit('ERROR: unable to download latest version')

try:
with open(filename, 'wb') as outf:
outf.write(newcontent)
except (IOError, OSError) as err:
sys.exit('ERROR: unable to overwrite current version')

sys.stderr.write(u'Done! Now you can run youtube-dl.\n')
12 changes: 12 additions & 0 deletions devscripts/transition_helper_exe/setup.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
from distutils.core import setup
import py2exe

py2exe_options = {
"bundle_files": 1,
"compressed": 1,
"optimize": 2,
"dist_dir": '.',
"dll_excludes": ['w9xpopen.exe']
}

setup(console=['youtube-dl.py'], options={ "py2exe": py2exe_options }, zipfile=None)
49 changes: 49 additions & 0 deletions devscripts/transition_helper_exe/youtube-dl.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#!/usr/bin/env python

import sys, os
import urllib2

sys.stderr.write(u'Hi! We changed distribution method and now youtube-dl needs to update itself one more time.\n')
sys.stderr.write(u'This will only happen once. Simply press enter to go on. Sorry for the trouble!\n')
sys.stderr.write(u'The new location of the binaries is https://github.com/rg3/youtube-dl/downloads, not the git repository.\n\n')

raw_input()

filename = sys.argv[0]

API_URL = "https://api.github.com/repos/rg3/youtube-dl/downloads"
EXE_URL = "https://github.com/downloads/rg3/youtube-dl/youtube-dl.exe"

if not os.access(filename, os.W_OK):
sys.exit('ERROR: no write permissions on %s' % filename)

exe = os.path.abspath(filename)
directory = os.path.dirname(exe)
if not os.access(directory, os.W_OK):
sys.exit('ERROR: no write permissions on %s' % directory)

try:
urlh = urllib2.urlopen(EXE_URL)
newcontent = urlh.read()
urlh.close()
with open(exe + '.new', 'wb') as outf:
outf.write(newcontent)
except (IOError, OSError) as err:
sys.exit('ERROR: unable to download latest version')

try:
bat = os.path.join(directory, 'youtube-dl-updater.bat')
b = open(bat, 'w')
b.write("""
echo Updating youtube-dl...
ping 127.0.0.1 -n 5 -w 1000 > NUL
move /Y "%s.new" "%s"
del "%s"
\n""" %(exe, exe, bat))
b.close()

os.startfile(bat)
except (IOError, OSError) as err:
sys.exit('ERROR: unable to overwrite current version')

sys.stderr.write(u'Done! Now you can run youtube-dl.\n')
40 changes: 40 additions & 0 deletions youtube-dl
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
#!/usr/bin/env python

import sys, os

try:
import urllib.request as compat_urllib_request
except ImportError: # Python 2
import urllib2 as compat_urllib_request

sys.stderr.write(u'Hi! We changed distribution method and now youtube-dl needs to update itself one more time.\n')
sys.stderr.write(u'This will only happen once. Simply press enter to go on. Sorry for the trouble!\n')
sys.stderr.write(u'The new location of the binaries is https://github.com/rg3/youtube-dl/downloads, not the git repository.\n\n')

try:
raw_input()
except NameError: # Python 3
input()

filename = sys.argv[0]

API_URL = "https://api.github.com/repos/rg3/youtube-dl/downloads"
BIN_URL = "https://github.com/downloads/rg3/youtube-dl/youtube-dl"

if not os.access(filename, os.W_OK):
sys.exit('ERROR: no write permissions on %s' % filename)

try:
urlh = compat_urllib_request.urlopen(BIN_URL)
newcontent = urlh.read()
urlh.close()
except (IOError, OSError) as err:
sys.exit('ERROR: unable to download latest version')

try:
with open(filename, 'wb') as outf:
outf.write(newcontent)
except (IOError, OSError) as err:
sys.exit('ERROR: unable to overwrite current version')

sys.stderr.write(u'Done! Now you can run youtube-dl.\n')
Binary file added youtube-dl.exe
Binary file not shown.

0 comments on commit c7287a3

Please sign in to comment.