mirror of
https://github.com/lutris/lutris
synced 2024-11-02 11:48:38 +00:00
f5e8e007b3
- Updated min version check in setup.py to Python 3.6 - Updated isort config file and calls to align with v5.x - Added init-hook for gi imports in .pylintrc to avoid invalid no-member issues - Makefile: added lock, show-tree, bandit, black, mypy; updated test, cover, dev, isort, autopep8, check, isort-check, flake8, pylint; removed req, requirements; - Updated .travis.yml to use poetry and make - Added my email in AUTHORS - Updated CONTRIBUTING.md - Updated lint_python.yml to use poetry and make, reorganized instructions to have all install related steps first - sorted imports: lutris, lutris-wrapper, cleanup_prefix.py and multiple files in tests dir
46 lines
1.5 KiB
Python
Executable file
46 lines
1.5 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
import os
|
|
import subprocess
|
|
import sys
|
|
|
|
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
|
from lutris.util.wine.registry import WineRegistry
|
|
|
|
PREFIXES_PATH = os.path.expanduser("~/Games/wine/prefixes")
|
|
|
|
|
|
def get_registries():
|
|
registry_list = []
|
|
directories = os.listdir(PREFIXES_PATH)
|
|
directories.append(os.path.expanduser("~/.wine"))
|
|
for prefix in directories:
|
|
for path in os.listdir(os.path.join(PREFIXES_PATH, prefix)):
|
|
if path.endswith(".reg"):
|
|
registry_list.append(os.path.join(PREFIXES_PATH, prefix, path))
|
|
return registry_list
|
|
|
|
|
|
def check_registry(registry_path):
|
|
with open(registry_path, 'r') as registry_file:
|
|
original_content = registry_file.read()
|
|
|
|
try:
|
|
wine_registry = WineRegistry(registry_path)
|
|
except:
|
|
sys.stderr.write("Error parsing {}\n".format(registry_path))
|
|
raise
|
|
content = wine_registry.render()
|
|
if content != original_content:
|
|
wrong_path = os.path.join(os.path.dirname(__file__), 'error.reg')
|
|
with open(wrong_path, 'w') as wrong_reg:
|
|
wrong_reg.write(content)
|
|
|
|
print("Content of parsed registry doesn't match: {}".format(registry_path))
|
|
subprocess.call(["meld", registry_path, wrong_path])
|
|
sys.exit(2)
|
|
|
|
|
|
registries = get_registries()
|
|
for registry in registries:
|
|
check_registry(registry)
|
|
print("All {} registry files validated!".format(len(registries)))
|