Files
dsh-desktop/setup/gen-files.py
T

27 lines
1.2 KiB
Python

# Generate per-file [Files] entries for node_modules into setup-offline.iss
import io, os
base = r'C:\Users\VanuSystems-Mu\AppData\Roaming\reasonix\global-workspace\dsh-app-staging\setup-offline'
nm_src = os.path.join(base, 'runtime', 'dsh', 'node_modules')
iss = os.path.join(base, 'setup-offline.iss')
lines = []
count = 0
for r, _, fs in os.walk(nm_src):
for f in fs:
full = os.path.join(r, f)
rel = os.path.relpath(full, nm_src).replace('\\', '/')
destdir = '{app}/runtime/dsh/node_modules/' + os.path.dirname(rel).replace('\\', '/')
if destdir.endswith('/'):
destdir = destdir[:-1]
lines.append('Source: "runtime/dsh/node_modules/' + rel + '"; DestDir: "' + destdir + '"; Flags: ignoreversion nocompression')
count += 1
print('generated', count, 'entries')
s = io.open(iss, encoding='utf-8').read()
old = 'Source: "runtime/dsh/node_modules/*.*"; DestDir: "{app}/runtime/dsh/node_modules"; Flags: ignoreversion recursesubdirs createallsubdirs nocompression'
assert old in s, 'old line not found'
s = s.replace(old, '\n'.join(lines))
io.open(iss, 'w', encoding='utf-8').write(s)
print('iss updated, lines:', len(s.splitlines()))