diff --git a/.gitmodules b/.gitmodules index ce53276..5de02e7 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "pe"] path = pe url = https://github.com/QuasarApp/pe-parse.git +[submodule "installer"] + path = installer + url = git@github.com:QuasarApp/DesktopInstaller.git diff --git a/CQtDeployer.pro b/CQtDeployer.pro index 1a2590b..b55bf7f 100644 --- a/CQtDeployer.pro +++ b/CQtDeployer.pro @@ -31,7 +31,7 @@ CQtDeployer.depends=Deploy QuasarAppLib.file = $$PWD/QuasarAppLib/QuasarApp.pro Pe.file = $$PWD/pe/pe-parser-library/pe-parser-library.pro -include('$$PWD/installer/installer.pri') +include('$$PWD/installer/installerCQtDeployer.pri') include($$PWD/test.pri) DISTFILES += \ diff --git a/installer b/installer new file mode 160000 index 0000000..4effe4f --- /dev/null +++ b/installer @@ -0,0 +1 @@ +Subproject commit 4effe4f04c6f780f3f996708b28275337b0959c5 diff --git a/installer/config/banner.png b/installer/config/banner.png deleted file mode 100644 index 732ab31..0000000 Binary files a/installer/config/banner.png and /dev/null differ diff --git a/installer/config/configLinux.xml b/installer/config/configLinux.xml deleted file mode 100644 index c426d95..0000000 --- a/installer/config/configLinux.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - 640px - 400px - CQtDeployer - 1.2.3.1 - CQtDeployer - QuasarApp - CQtDeployer - @HomeDir@/CQtDeployer - true - true - controlScript.js - CQtDeployerTool - Classic - style.css - banner.png - logo.png - - - - http://178.124.160.6:3030/CQtDeployer/Linux - 1 - QuasarApp - - - diff --git a/installer/config/configWin.xml b/installer/config/configWin.xml deleted file mode 100644 index ed71ca9..0000000 --- a/installer/config/configWin.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - 640px - 400px - CQtDeployer - 1.2.3.1 - CQtDeployer - QuasarApp - CQtDeployer - @HomeDir@/CQtDeployer - true - true - controlScript.js - CQtDeployerTool - Classic - style.css - banner.png - logo.png - - - - http://178.124.160.6:3030/CQtDeployer/Windows - 1 - QuasarApp - - - diff --git a/installer/config/controlScript.js b/installer/config/controlScript.js deleted file mode 100644 index ab907d1..0000000 --- a/installer/config/controlScript.js +++ /dev/null @@ -1,79 +0,0 @@ -function Controller() -{ - generateTr(); - - installer.setMessageBoxAutomaticAnswer("OverwriteTargetDirectory", QMessageBox.Yes); - installer.uninstallationFinished.connect(this, Controller.prototype.uninstallationFinished); - installer.installationFinished.connect(this, Controller.prototype.installationFinished); -} - -function generateTr() { - console.log("generate tr start ") - - installer.setValue("Name", qsTr("CQtDeployer")); - installer.setValue("Title", qsTr("Install CQtDeployer")); -} - -Controller.prototype.uninstallationFinished = function() -{ - homeDir = installer.value("HomeDir", ""); - - console.log("hometDir " + homeDir) - - if (systemInfo.kernelType === "winnt") { - if (!installer.gainAdminRights()) { - QMessageBox["warning"](qsTr("install in system"), qsTr("Installer"), - qsTr("To uninstall cqtdeployer on your system, you need administrator rights!. "), QMessageBox.Ok); - - return; - } - - installer.execute("DELETE", ["C:\Windows\system32\cqtdeployer.exe"]) - - installer.dropAdminRights(); - - } else { - installer.execute("rm", ["-f", homeDir + "/.local/bin/cqtdeployer"]) - } - -} - - -Controller.prototype.installationFinished = function() -{ - - targetDir = installer.value("TargetDir", ""); - homeDir = installer.value("HomeDir", ""); - - console.log("targetDir " + targetDir) - console.log("hometDir " + homeDir) - - if (systemInfo.kernelType === "winnt") { - - installer.execute("SETX", [ "cqtdeployer", targetDir + "/cqtdeployer.exe"]) - - QMessageBox["information"](qsTr("install in system"), qsTr("Installer"), - qsTr("CQtDeployer successfully installed on your computer to use the call \"%cqtdeployer%\"."), - QMessageBox.Ok); - - } else { - - if (!installer.fileExists(homeDir + "/.local/bin")) { - installer.execute("mkpath", ["-p", homeDir + "/.local/bin"]); - - QMessageBox["warning"](qsTr("install in system"), qsTr("Installer"), - qsTr("The \"~/local/bin\" folder was not initialized, you may need to reboot to work correctly!"), - QMessageBox.Ok); - - } - - installer.execute("ln", ["-sf", targetDir + "/cqtdeployer.sh", - homeDir + "/.local/bin/cqtdeployer"]) - - QMessageBox["information"](qsTr("install in system"), qsTr("Installer"), - qsTr("CQtDeployer successfully installed on your computer to use the call \"cqtdeployer\"."), - QMessageBox.Ok); - } - - -} diff --git a/installer/config/icon.ico b/installer/config/icon.ico deleted file mode 100644 index 8bee168..0000000 Binary files a/installer/config/icon.ico and /dev/null differ diff --git a/installer/config/logo.png b/installer/config/logo.png deleted file mode 100644 index 732ab31..0000000 Binary files a/installer/config/logo.png and /dev/null differ diff --git a/installer/config/ru.ts b/installer/config/ru.ts deleted file mode 100644 index 0e07db4..0000000 --- a/installer/config/ru.ts +++ /dev/null @@ -1,67 +0,0 @@ - - - - - controlScript - - - CQtDeployer - CQtDeployer - - - - Install CQtDeployer - Install Snake - Установка CQtDeployer - - - - - - - install in system - Установка в систему - - - - - - - Installer - Установщик - - - - To uninstall cqtdeployer on your system, you need administrator rights!. - Чтобы удалить cqtdeployer в вашей системе, вам нужны права администратора !. - - - - The "~/local/bin" folder was not initialized, you may need to reboot to work correctly! - - - - To install cqtdeployer on your system, you need administrator rights!. - Чтобы установить cqtdeployer в вашей системе, вам нужны права администратора!. - - - The installation was successful, but cqtdeployer will not be available from the console. - Установка прошла успешно, но cqtdeployer не будет доступен из консоли. - - - - CQtDeployer successfully installed on your computer to use the call "%cqtdeployer%". - To take advantage of this program you will need to enter the full path to it. - Чтобы воспользоваться этой программой, вам нужно будет ввести полный путь к ней. - - - Example: - Пример: - - - - CQtDeployer successfully installed on your computer to use the call "cqtdeployer". - CQtDeployer успешно установлен на вашем компьютере, чтобы запустить напишите "cqtdeployer" в консоли. - - - diff --git a/installer/config/style.css b/installer/config/style.css deleted file mode 100644 index f5282ce..0000000 --- a/installer/config/style.css +++ /dev/null @@ -1,62 +0,0 @@ -.QWidget { - background-color: rgb(255, 255, 255); - min-width: 640px; -} - -.QLabel { - color: #000000; -} - -.QPushButton { - background-color: transparent; - border: 2px solid #ffffff; - border-radius: 3px; - height: 30px; - min-width: 100px; - padding: 0 15px; -} - -.QPushButton:pressed, -.QPushButton:checked { - background-color: #2ed3ed; -} - -.QPushButton:focus { - background-color: #aaf2ff; -} - -.QPushButton:hover { - border: 2px solid #2ed3ed; -} - - -.QProgressBar { - background: #b1dbcc; - border: 1px solid #cdcdcd; - border-radius: 2px; - padding: 0; - margin: 0; - color: #ffffff; - height: 30px; - text-align: center; -} - -.QProgressBar::chunk { - background: #16dbcc; - border-radius: 2px; - margin: 0; -} - -.QProgressBar:hover { - border-color: #2ed3ed; -} - -.QLineEdit { - background-color: transparent; - border-color: #cdcdcd; - height: 30px; -} - -.QLineEdit:hover { - border-color: #2ed3ed; -} diff --git a/installer/install_prefix.pri b/installer/install_prefix.pri deleted file mode 100644 index db34b97..0000000 --- a/installer/install_prefix.pri +++ /dev/null @@ -1,33 +0,0 @@ -!isEmpty(INSTALL_REFIX_PRI_INCLUDED):error("install_prefix.pri already included") -INSTALL_REFIX_PRI_INCLUDED = 1 - -unix:libfiletype=*.so* -win32:libfiletype=*.dll -unix:runfiletype=* -win32:runfiletype=*.exe - -isEmpty(PREFIX_BIN) { - isEmpty(PREFIX) { - PREFIX_BIN = $$PWD/distro - } else { - unix:PREFIX_BIN = $$PREFIX/bin - win32:PREFIX_BIN = $$PREFIX - } -} - -isEmpty(PREFIX_LIB) { - isEmpty(PREFIX) { - PREFIX_LIB = $$PWD/distro - } else { - unix:PREFIX_LIB = $$PREFIX/lib - win32:PREFIX_LIB = $$PREFIX - } -} - -target_bin.path = $$PREFIX_BIN -target_bin.CONFIG += no_check_exist -target_lib.path = $$PREFIX_LIB -target_lib.CONFIG += no_check_exist - -INSTALLS += target_bin target_lib - diff --git a/installer/installer.pri b/installer/installer.pri deleted file mode 100644 index fb22c3f..0000000 --- a/installer/installer.pri +++ /dev/null @@ -1,162 +0,0 @@ -QT_DIR= $$[QT_HOST_BINS] - -win32:QMAKE_BIN= $$QT_DIR/qmake.exe - -#QML_DIR = $$PWD/../Snake/ -DEPLOY_TARGET = $$PWD/../CQtDeployer/build/release - -win32:LUPDATE = $$QT_DIR/lupdate.exe -win32:LRELEASE = $$QT_DIR/lrelease.exe - -win32:DEPLOYER = %cqtdeployer% - -win32:OUT_FILE = CQtDeployerInstaller.exe - -contains(QMAKE_HOST.os, Linux):{ - LUPDATE = $$QT_DIR/lupdate - LRELEASE = $$QT_DIR/lrelease - QMAKE_BIN= $$QT_DIR/qmake - - DEPLOYER = cqtdeployer - - OUT_FILE = CQtDeployerInstaller - -} - -BINARY_LIST -REPO_LIST - -sopprted_versions = 3.1 3.0 2.0 -for(val, sopprted_versions) { - - exists( $$QT_DIR/../../../Tools/QtInstallerFramework/$$val/bin/ ) { - message( "QtInstallerFramework v$$val: yes" ) - BINARY_LIST += $$QT_DIR/../../../Tools/QtInstallerFramework/$$val/bin/binarycreator - REPO_LIST += $$QT_DIR/../../../Tools/QtInstallerFramework/$$val/bin/repogen - } -} - -isEmpty (BINARY_LIST) { - error( "QtInstallerFramework not found!" ) -} - -win32:EXEC=$$first(BINARY_LIST).exe - -win32:REPOGEN=$$first(REPO_LIST).exe - -contains(QMAKE_HOST.os, Linux):{ - unix:EXEC=$$first(BINARY_LIST) - win32:EXEC=wine $$first(BINARY_LIST).exe - - REPOGEN=$$first(REPO_LIST) -} - -message( selected $$EXEC and $$REPOGEN) - - -SUPPORT_LANGS = ru - -defineReplace(findFiles) { - patern = $$1 - path = $$2 - - all_files = $$files(*$${patern}, true) - win32:all_files ~= s|\\\\|/|g - win32:path ~= s|\\\\|/|g - - for(file, all_files) { - result += $$find(file, $$path) - } - - return($$result) -} - -XML_FILES = $$files(*.xml, true) - -for(LANG, SUPPORT_LANGS) { - for(XML, XML_FILES) { - FILE_PATH = $$dirname(XML) - - JS_FILES = $$findFiles(".js", $$FILE_PATH) - UI_FILES = $$findFiles(".ui", $$FILE_PATH) - - commands += "$$LUPDATE $$JS_FILES $$UI_FILES -ts $$FILE_PATH/$${LANG}.ts" - TS_FILES += $$FILE_PATH/$${LANG}.ts - - } - - for(TS, TS_FILES) { - commands += "$$LRELEASE $$TS" - } -} - -for(command, commands) { - system($$command)|error("Failed to run: $$command") -} - -BASE_DEPLOY_FLAGS = clear -qmake $$QMAKE_BIN -libDir $$PWD/../ -recursiveDepth 4 -BASE_DEPLOY_FLAGS_SNAKE = $$BASE_DEPLOY_FLAGS -targetDir $$PWD/packages/cqtdeployer/data - -deploy_dep.commands += $$DEPLOYER -bin $$DEPLOY_TARGET $$BASE_DEPLOY_FLAGS_SNAKE - -mkpath( $$PWD/../Distro) - -win32:CONFIG_FILE = $$PWD/config/configWin.xml -unix:CONFIG_FILE = $$PWD/config/configLinux.xml - -deploy.commands = $$EXEC \ - --offline-only \ - -c $$CONFIG_FILE \ - -p $$PWD/packages \ - $$PWD/../Distro/$$OUT_FILE - -deploy.depends = deploy_dep - -win32:ONLINE_REPO_DIR = $$ONLINE/CQtDeployer/Windows -unix:ONLINE_REPO_DIR = $$ONLINE/CQtDeployer/Linux - -create_repo.commands = $$REPOGEN \ - --update-new-components \ - -p $$PWD/packages \ - $$ONLINE_REPO_DIR - -chmodSnap.commands = chmod 777 -R $$PWD/packages/cqtdeployer/data -unix:release.depends += chmodSnap - - -message( ONLINE_REPO_DIR $$ONLINE_REPO_DIR) -!isEmpty( ONLINE ) { - - message(online) - - release.depends = create_repo - - deploy.commands = $$EXEC \ - --online-only \ - -c $$CONFIG_FILE \ - -p $$PWD/packages \ - $$PWD/../Distro/$$OUT_FILE -} - -releaseSnap.commands = rm *.snap -rdf && chmod 777 -R $$PWD/../prime && snapcraft && snapcraft push *.snap # bad patern -buildSnap.commands = snapcraft -clearSnap.commands = rm parts prime stage *.snap -rdf - -unix:release.depends += clearSnap -unix:release.depends += buildSnap -unix:release.depends += releaseSnap - -OTHER_FILES += \ - $$PWD/config/*.* \ - $$PWD/packages/cqtdeployer/meta/* \ - - -QMAKE_EXTRA_TARGETS += \ - deploy_dep \ - deploy \ - create_repo \ - release \ - clearSnap \ - releaseSnap \ - buildSnap \ - chmodSnap diff --git a/installer/packages/cqtdeployer/meta/installscript.js b/installer/packages/cqtdeployer/meta/installscript.js deleted file mode 100644 index 652dc4f..0000000 --- a/installer/packages/cqtdeployer/meta/installscript.js +++ /dev/null @@ -1,17 +0,0 @@ -function Component() -{ - generateTr(); -} - -function generateTr() { - component.setValue("DisplayName", qsTr("CQtDeployer")); - component.setValue("Description", qsTr("This package contains CQtDeployer")); -} - - -Component.prototype.createOperations = function() -{ -// // call default implementation to actually install README.txt! - component.createOperations(); - -} diff --git a/installer/packages/cqtdeployer/meta/package.xml b/installer/packages/cqtdeployer/meta/package.xml deleted file mode 100644 index bc6e9c7..0000000 --- a/installer/packages/cqtdeployer/meta/package.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - CQtDeployer - CQtDeployer - 1.2.3.1 - true - false - - 2019-05-14 - 200 - - ru.qm - - diff --git a/installer/packages/cqtdeployer/meta/ru.ts b/installer/packages/cqtdeployer/meta/ru.ts deleted file mode 100644 index 1960c9b..0000000 --- a/installer/packages/cqtdeployer/meta/ru.ts +++ /dev/null @@ -1,50 +0,0 @@ - - - - - installscript - - - CQtDeployer - CQtDeployer - - - - This package contains CQtDeployer - This package contains Snake - Этот пакет содержит CQtDeployer - - - install in system - Установка в систему - - - Installer - Установщик - - - To uninstall cqtdeployer on your system, you need administrator rights!. - Чтобы удалить cqtdeployer в вашей системе, вам нужны права администратора !. - - - To install cqtdeployer on your system, you need administrator rights!. - Чтобы установить cqtdeployer в вашей системе, вам нужны права администратора!. - - - The installation was successful, but cqtdeployer will not be available from the console. - Установка прошла успешно, но cqtdeployer не будет доступен из консоли. - - - To take advantage of this program you will need to enter the full path to it. - Чтобы воспользоваться этой программой, вам нужно будет ввести полный путь к ней. - - - Example: - Пример: - - - CQtDeployer successfully installed on your computer to use the call "cqtdeployer". - CQtDeployer успешно установлен на вашем компьютере, чтобы использоваться введите в консоле "cqtdeployer". - - - diff --git a/res/icon (snapAlpha).png b/res/icon (snapAlpha).png new file mode 100644 index 0000000..9d9935d Binary files /dev/null and b/res/icon (snapAlpha).png differ