firmware_list_generator.py
676 bytes
1#!/usr/bin/env python3
2
3import os
4import json
5from pathlib import Path
6from time import gmtime, strftime
7
8DATETIME_FORMAT = '%Y-%m-%d %H:%M:%S %Z'
9
10
11def current_datetime():
12 return strftime(DATETIME_FORMAT, gmtime())
13
14
15qmk_firmware_dir = Path(os.path.realpath(__file__)).parents[2]
16
17binaries = []
18binaries.extend(qmk_firmware_dir.glob("*.bin"))
19binaries.extend(qmk_firmware_dir.glob("*.hex"))
20binaries.extend(qmk_firmware_dir.glob("*.uf2"))
21binaries = list(sorted(binaries))
22
23data = []
24for binary in binaries:
25 data.append(binary.name)
26
27keyboard_all_json = json.dumps({'last_updated': current_datetime(), 'files': data}, separators=(',', ':'))
28
29print(keyboard_all_json)