Add project infrastructure and core application files
Add .gitignore, GitLab CI pipeline with test/lint/build/release stages, project documentation (README, LICENSE, CHANGELOG, CONTRIBUTING, SECURITY), PyInstaller packaging configuration with icon and version info, Python project configuration with dependencies, and complete application source including battery provider, device discovery, settings management, UI components, startup control, and comprehensive test suite
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 40 KiB |
@@ -0,0 +1,6 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256" viewBox="0 0 256 256">
|
||||
<rect width="256" height="256" rx="52" fill="#17191f"/>
|
||||
<rect x="42" y="69" width="156" height="118" rx="24" fill="#f5f7fa"/>
|
||||
<rect x="198" y="105" width="20" height="46" rx="8" fill="#f5f7fa"/>
|
||||
<rect x="58" y="85" width="105" height="86" rx="14" fill="#2cc970"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 367 B |
@@ -0,0 +1,6 @@
|
||||
"""Absolute-import launcher used by PyInstaller."""
|
||||
|
||||
from logitech_battery_widget.main import main
|
||||
|
||||
if __name__ == "__main__":
|
||||
raise SystemExit(main())
|
||||
@@ -0,0 +1,39 @@
|
||||
# -*- mode: python ; coding: utf-8 -*-
|
||||
from pathlib import Path
|
||||
|
||||
root = Path(SPECPATH).parent
|
||||
|
||||
a = Analysis(
|
||||
[str(root / "packaging" / "launcher.py")],
|
||||
pathex=[str(root / "src")],
|
||||
binaries=[],
|
||||
datas=[],
|
||||
hiddenimports=[
|
||||
"PyQt6.QtCore",
|
||||
"PyQt6.QtGui",
|
||||
"PyQt6.QtWidgets",
|
||||
"hid",
|
||||
"logitech_battery_widget.battery.windows_hid",
|
||||
],
|
||||
hookspath=[],
|
||||
runtime_hooks=[],
|
||||
excludes=[],
|
||||
noarchive=False,
|
||||
optimize=1,
|
||||
)
|
||||
pyz = PYZ(a.pure)
|
||||
exe = EXE(
|
||||
pyz,
|
||||
a.scripts,
|
||||
a.binaries,
|
||||
a.datas,
|
||||
[],
|
||||
name="LogitechBatteryWidget",
|
||||
debug=False,
|
||||
bootloader_ignore_signals=False,
|
||||
strip=False,
|
||||
upx=False,
|
||||
console=False,
|
||||
icon=str(root / "packaging" / "icon.ico"),
|
||||
version=str(root / "packaging" / "version_info.txt"),
|
||||
)
|
||||
@@ -0,0 +1,12 @@
|
||||
VSVersionInfo(
|
||||
ffi=FixedFileInfo(filevers=(0, 1, 0, 0), prodvers=(0, 1, 0, 0),
|
||||
mask=0x3f, flags=0x0, OS=0x40004, fileType=0x1, subtype=0x0, date=(0, 0)),
|
||||
kids=[StringFileInfo([StringTable('040904B0', [
|
||||
StringStruct('CompanyName', 'Logitech Battery Widget contributors'),
|
||||
StringStruct('FileDescription', 'Offline Logitech battery status widget'),
|
||||
StringStruct('FileVersion', '0.1.0'),
|
||||
StringStruct('InternalName', 'LogitechBatteryWidget'),
|
||||
StringStruct('LegalCopyright', 'Copyright (c) 2026 contributors'),
|
||||
StringStruct('OriginalFilename', 'LogitechBatteryWidget.exe'),
|
||||
StringStruct('ProductName', 'Logitech Battery Widget'),
|
||||
StringStruct('ProductVersion', '0.1.0')])]), VarFileInfo([VarStruct('Translation', [1033, 1200])])])
|
||||
Reference in New Issue
Block a user