diff --git a/deploy/.gitignore b/deploy/.gitignore new file mode 100644 index 0000000..90aa52e --- /dev/null +++ b/deploy/.gitignore @@ -0,0 +1,5 @@ +/V*-* +/V*-*/ +/32/ +/64/ +/client/ \ No newline at end of file diff --git a/deploy/README.md b/deploy/README.md new file mode 100644 index 0000000..a0f116b --- /dev/null +++ b/deploy/README.md @@ -0,0 +1,3 @@ +# Deploy helper +Just for generating Github release +Useless for general users \ No newline at end of file diff --git a/deploy/deploy.py b/deploy/deploy.py new file mode 100644 index 0000000..e527060 --- /dev/null +++ b/deploy/deploy.py @@ -0,0 +1,98 @@ +import os, sys, shutil +from win32api import GetFileVersionInfo +from json import load +from re import fullmatch, IGNORECASE + + +def getPEVersion(fname): + try: + fileInfo = GetFileVersionInfo(fname, '\\') + version = "V%d.%d.%d" % (fileInfo['FileVersionMS'] / 65536, + fileInfo['FileVersionMS'] % 65536, + fileInfo['FileVersionLS'] / 65536) + except Exception: + print("Cannot get version number of", fname) + return version + + +os.chdir(sys.path[0]) +print("Current Directory:", os.getcwd()) +targetName = os.path.abspath(os.getcwd()).split('\\')[-2] +print("Target Name", targetName) + +src32Dir = "" +src64Dir = "" +dirList = os.listdir("../") + +for i in dirList: + if not os.path.isdir("../" + i): + continue + if not i.startswith("build"): + continue + + if i.endswith("32_bit-Release"): + src32Dir = "../" + i + elif i.endswith("64_bit-Release"): + src64Dir = "../" + i + +src32Path = src32Dir + "/release/" + targetName + ".exe" +src64Path = src64Dir + "/release/" + targetName + ".exe" +print("Target Files:") +print(src32Path) +print(src64Path) + +ver32 = getPEVersion(src32Path) +ver64 = getPEVersion(src64Path) +print("Versions:") +print("win32:", ver32) +print("win64:", ver64) +if ver32 != ver64: + print("WARNING!") + print("Version names are not the same!") +dst32Dir = "./" + ver32 + "-win32" +dst64Dir = "./" + ver64 + "-win64" +dst32Path = dst32Dir + "/" + targetName + ".exe" +dst64Path = dst64Dir + "/" + targetName + ".exe" + +if os.path.exists(dst32Dir) and os.path.exists(dst32Path): + print(dst32Path, "exists, replacing...") + os.remove(dst32Path) +elif not os.path.exists(dst32Dir): + print(dst32Dir, "doesn't exist, creating...") + shutil.copytree("./32", dst32Dir) +shutil.copyfile(src32Path, dst32Path) +configPath = dst32Dir + "/config" +if os.path.exists(configPath): + print(configPath, "exists, replacing...") + shutil.rmtree(configPath) +shutil.copytree("../config", configPath) + +if os.path.exists(dst64Dir) and os.path.exists(dst64Path): + print(dst64Path, "exists, replacing...") + os.remove(dst64Path) +elif not os.path.exists(dst64Dir): + print(dst64Dir, "doesn't exist, creating...") + shutil.copytree("./64", dst64Dir) +shutil.copyfile(src64Path, dst64Path) +configPath = dst64Dir + "/config" +if os.path.exists(configPath): + print(configPath, "exists, replacing...") + shutil.rmtree(configPath) +shutil.copytree("../config", configPath) + +# TODO: GUI+client + +use7z = input("Compress?(y/N)") +if fullmatch("yes|y", use7z, IGNORECASE): + archive32Path = dst32Dir + ".7z" + archive64Path = dst64Dir + ".7z" + + if os.path.exists(archive32Path): + print(archive32Path, "exists, replacing...") + os.remove(archive32Path) + os.system("7z a -t7z -mmt8 -mx9 " + archive32Path + " " + dst32Dir) + + if os.path.exists(archive64Path): + print(archive64Path, "exists, replacing...") + os.remove(archive64Path) + os.system("7z a -t7z -mmt8 -mx9 " + archive64Path + " " + dst64Dir) diff --git a/doc/tutorial/Quickstart/quickstart.md b/doc/tutorial/Quickstart/quickstart.md index 7e83d61..fea9610 100644 --- a/doc/tutorial/Quickstart/quickstart.md +++ b/doc/tutorial/Quickstart/quickstart.md @@ -27,10 +27,10 @@ (4) Go to "Settings" panel. Input the config file path which matching the client you use. ![](configpath.png) -(5) If setup.bat is required, input the script path in the "Preload script path" editbox. +(5) If setup.bat is required, input the script path in the "Preload script path" editbox. ![](preloadpath.png) -(6) If using RRG/Iceman repo, input "-p \ -f" in the "Start arguments" editbox. +(6) If using RRG/Iceman repo, input "-p \ -f" in the "Start arguments" editbox. ![](args.png) *** diff --git a/src/ui/mainwindow.cpp b/src/ui/mainwindow.cpp index 35584ea..d2e338b 100644 --- a/src/ui/mainwindow.cpp +++ b/src/ui/mainwindow.cpp @@ -715,7 +715,7 @@ void MainWindow::on_MF_File_clearButton_clicked() mifare->data_clearKey(); mifare->data_syncWithKeyWidget(); } - else if(ui->MF_File_keyButton->isChecked()) + else if(ui->MF_File_dataButton->isChecked()) { mifare->data_clearData(); mifare->data_syncWithDataWidget();