1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- from PyInstaller.utils.win32.versioninfo import (
- VarStruct, VarFileInfo, StringStruct, StringTable,
- StringFileInfo, FixedFileInfo, VSVersionInfo, SetVersion,
- )
- import PyInstaller.__main__
- from datetime import datetime
- FILE_DESCRIPTION = 'Media Downloader'
- exec(compile(open('youtube_dlc/version.py').read(), 'youtube_dlc/version.py', 'exec'))
- _LATEST_VERSION = locals()['__version__']
- _OLD_VERSION = _LATEST_VERSION.rsplit("-", 1)
- if len(_OLD_VERSION) > 0:
- old_ver = _OLD_VERSION[0]
- old_rev = ''
- if len(_OLD_VERSION) > 1:
- old_rev = _OLD_VERSION[1]
- ver = f'{datetime.today():%Y.%m.%d}'
- rev = ''
- if old_ver == ver:
- if old_rev:
- rev = int(old_rev) + 1
- else:
- rev = 1
- _SEPARATOR = '-'
- version = _SEPARATOR.join(filter(None, [ver, str(rev)]))
- print(version)
- version_list = ver.split(".")
- _year, _month, _day = [int(value) for value in version_list]
- _rev = 0
- if rev:
- _rev = rev
- _ver_tuple = _year, _month, _day, _rev
- version_file = VSVersionInfo(
- ffi=FixedFileInfo(
- filevers=_ver_tuple,
- prodvers=_ver_tuple,
- mask=0x3F,
- flags=0x0,
- OS=0x4,
- fileType=0x1,
- subtype=0x0,
- date=(0, 0),
- ),
- kids=[
- StringFileInfo(
- [
- StringTable(
- "040904B0",
- [
- StringStruct("Comments", "Youtube-dlc Command Line Interface."),
- StringStruct("CompanyName", "theidel@uni-bremen.de"),
- StringStruct("FileDescription", FILE_DESCRIPTION),
- StringStruct("FileVersion", version),
- StringStruct("InternalName", "youtube-dlc"),
- StringStruct(
- "LegalCopyright",
- "theidel@uni-bremen.de | UNLICENSE",
- ),
- StringStruct("OriginalFilename", "youtube-dlc.exe"),
- StringStruct("ProductName", "Youtube-dlc"),
- StringStruct("ProductVersion", version + " | git.io/JUGsM"),
- ],
- )
- ]
- ),
- VarFileInfo([VarStruct("Translation", [0, 1200])])
- ]
- )
- PyInstaller.__main__.run([
- '--name=youtube-dlc',
- '--onefile',
- '--icon=win/icon/cloud.ico',
- 'youtube_dlc/__main__.py',
- ])
- SetVersion('dist/youtube-dlc.exe', version_file)
|