added README.md

remove keyring import
remove FramelessWindowHint
use more granular errors in esptool exception
move banner.png to resource file
finalize setup.py
This commit is contained in:
jziolkowski
2019-12-02 11:29:51 +01:00
parent 9296495815
commit 07ffcb001a
6 changed files with 5520 additions and 6 deletions

View File

@@ -1,9 +1,8 @@
<p align="center">
<img src=https://user-images.githubusercontent.com/11555742/69891714-ec14ca00-12fe-11ea-9140-92842fa1bff9.jpg width=500>
</p>
The time has come to... Tasmotize!
THE full-featured flashing tool for Tasmota.
The full-featured flashing tool for Tasmota. With the great [ESPtool](https://github.com/espressif/esptool) from Espressif under the hood, and all required settings by default.
## Features
@@ -15,6 +14,15 @@ THE full-featured flashing tool for Tasmota.
- Dark theme: proven to increase flashing speed and reliability
## Installation and how to run
- Option 1: download and use any of our released binary versions available for Linux, Windows (thanks @Jason2866)
- Option 2: `pip3 install tasmotizer` and then simply run `tasmotizer.py` from the shell/command line
- Option 3: Clone the repo, `pip3 install PyQt5 pyserial` followed by `python3 tasmotizer.py ` and flash away!
## Screenshots
<p align="center">

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

5458
banner.py Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1 +1 @@
PyQt5>=5.12
PyQt5>=5.10

41
setup.py Normal file
View File

@@ -0,0 +1,41 @@
from setuptools import setup
import os
if os.name == "nt":
scripts = None
entry_points = {
{
'console_scripts': ['tasmotizer=tasmotizer:main'],
}
}
else:
scripts = ['tasmotizer.py']
entry_points = None
setup(
name='tasmotizer-jziolkowski',
version="1.0",
url='https://github.com/tasmota/tasmotizer',
py_modules=['tasmotizer', 'gui', 'esptool', 'banner'],
license='GPLv3',
author='jziolkowski',
author_email='jacek@ziolkowscy.com',
description='The time has come to... Tasmotize!',
long_description="Tasmotizer is a dedicated flashing tool for <a href=https://github.com/arendst/Tasmota>Tasmota</>, featuring automatic firmware backup, downlading release and development bins, and device configuration.",
python_requires='>=3.6',
install_requires=[
"pyserial>=3.0",
"PyQt5>=5.10"
],
entry_points=entry_points,
scripts=scripts,
classifiers=[
"Programming Language :: Python :: 3",
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Operating System :: OS Independent",
],
project_urls={
"Issue Tracker": "https://github.com/tasmota/tasmotizer/issues",
"Documentation": "https://github.com/tasmota/tasmotizer/wiki",
},
)

View File

@@ -1,3 +1,5 @@
#!/usr/bin/env python
import sys
import serial
@@ -14,6 +16,8 @@ from PyQt5.QtSerialPort import QSerialPortInfo, QSerialPort
from PyQt5.QtWidgets import QApplication, QDialog, QLineEdit, QPushButton, QComboBox, QWidget, QCheckBox, QRadioButton, \
QButtonGroup, QFileDialog, QProgressBar, QLabel, QMessageBox, QDialogButtonBox, QGroupBox, QFormLayout
import banner
from gui import HLayout, VLayout, GroupBoxH, GroupBoxV, SpinBox, dark_palette
modules = {"1": "Sonoff Basic", "2": "Sonoff RF", "4": "Sonoff TH", "5": "Sonoff Dual", "39": "Sonoff Dual R2",
@@ -456,7 +460,7 @@ class Tasmotizer(QDialog):
# Banner
banner = QLabel()
banner.setPixmap(QPixmap("banner.png"))
banner.setPixmap(QPixmap(":/banner.png"))
vl.addWidget(banner)
# Port groupbox
@@ -669,7 +673,7 @@ class Tasmotizer(QDialog):
self.old_pos = e.globalPos()
if __name__ == '__main__':
def main():
app = QApplication(sys.argv)
app.setAttribute(Qt.AA_DisableWindowContextHelpButton)
app.setQuitOnLastWindowClosed(True)
@@ -678,8 +682,11 @@ if __name__ == '__main__':
app.setPalette(dark_palette)
app.setStyleSheet("QToolTip { color: #ffffff; background-color: #2a82da; border: 1px solid white; }")
app.setStyle("Fusion")
mw = Tasmotizer()
mw.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()