diff options
author | yjun123 | 2020-08-01 21:23:30 +0800 |
---|---|---|
committer | yjun123 | 2020-08-01 21:23:30 +0800 |
commit | 310bf7b6b0e033de51c2a4a655209a8a1bf5faca (patch) | |
tree | 570f3f1590ef70a8def7aaa63cb82071a255dc5e | |
download | aur-310bf7b6b0e033de51c2a4a655209a8a1bf5faca.tar.gz |
initial commit
-rw-r--r-- | .INSTALL | 6 | ||||
-rw-r--r-- | .SRCINFO | 29 | ||||
-rw-r--r-- | PKGBUILD | 71 | ||||
-rwxr-xr-x | openmv-ide.desktop | 11 | ||||
-rw-r--r-- | openmv-ide.png | bin | 0 -> 10082 bytes | |||
-rw-r--r-- | openmv-ide.qs | 81 |
6 files changed, 198 insertions, 0 deletions
diff --git a/.INSTALL b/.INSTALL new file mode 100644 index 000000000000..00c8ac855473 --- /dev/null +++ b/.INSTALL @@ -0,0 +1,6 @@ +post_install() { + udevadm control --reload-rules +} +post_upgrade() { + udevadm control --reload-rules +} diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..0c4faa2c2888 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,29 @@ +pkgbase = openmv-ide-bin + pkgdesc = QtCreator based OpenMV IDE. + pkgver = 2.6.0 + pkgrel = 1 + url = https://github.com/openmv/openmv-ide + install = .INSTALL + arch = x86_64 + arch = i686 + license = MIT + depends = libpng + depends = libusb + provides = openmv-ide + conflicts = openmv-ide + options = !strip + source = https://raw.githubusercontent.com/openmv/openmv-ide/master/LICENSE + source = openmv-ide.qs + source = openmv-ide.desktop + source = openmv-ide.png + sha256sums = 46f06683b87cff5215e8dd427142983f84474b6a383c96d51e9d0592c5f1b0ed + sha256sums = f88d7948cd07a7a7c8e9cc7030eff7eccd348880d68c6846454e7473d4bafd11 + sha256sums = c3b6bc073a98169ce988424663d14ca802d38726db7aea14b3c18e31216e23a5 + sha256sums = 11b3fe3f7de494aa7e45050327c3a5300596e5f03717fd3f469f6b8b8e1e7f55 + source_x86_64 = openmv-ide-2.6.0-x86_64.run::https://github.com/openmv/openmv-ide/releases/download/v2.6.0/openmv-ide-linux-x86_64-2.6.0.run + sha256sums_x86_64 = 4e9faa8478623347151f0d844e46c601c43afe0a5930f995d37c15fd298b46c6 + source_i686 = openmv-ide-2.6.0-i686.run::https://github.com/openmv/openmv-ide/releases/download/v2.6.0/openmv-ide-linux-x86-2.6.0.run + sha256sums_i686 = ebdcdd45e5d70f836b8d622ece17aee1b01dda0dc6e7a44e97736f9cf73f18f9 + +pkgname = openmv-ide-bin + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..047b65873f63 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,71 @@ +# Maintainer: yjun <jerrysteve1101@gmail.com> + +pkgname=openmv-ide-bin +_pkgname=${pkgname%-bin} +pkgver=2.6.0 +pkgrel=1 +pkgdesc="QtCreator based OpenMV IDE." +arch=('x86_64' 'i686') +url="https://github.com/openmv/openmv-ide" +license=('MIT') +depends=('libpng' 'libusb') +provides=("$_pkgname") +conflicts=("$_pkgname") +options=('!strip') +install='.INSTALL' +source=('https://raw.githubusercontent.com/openmv/openmv-ide/master/LICENSE' + "${_pkgname}.qs" + "${_pkgname}.desktop" + "${_pkgname}.png") +source_x86_64=("${_pkgname}-${pkgver}-x86_64.run::https://github.com/openmv/openmv-ide/releases/download/v${pkgver}/${_pkgname}-linux-x86_64-${pkgver}.run") +source_i686=("${_pkgname}-${pkgver}-i686.run::https://github.com/openmv/openmv-ide/releases/download/v${pkgver}/${_pkgname}-linux-x86-${pkgver}.run") +sha256sums=('46f06683b87cff5215e8dd427142983f84474b6a383c96d51e9d0592c5f1b0ed' + 'f88d7948cd07a7a7c8e9cc7030eff7eccd348880d68c6846454e7473d4bafd11' + 'c3b6bc073a98169ce988424663d14ca802d38726db7aea14b3c18e31216e23a5' + '11b3fe3f7de494aa7e45050327c3a5300596e5f03717fd3f469f6b8b8e1e7f55') +sha256sums_x86_64=('4e9faa8478623347151f0d844e46c601c43afe0a5930f995d37c15fd298b46c6') +sha256sums_i686=('ebdcdd45e5d70f836b8d622ece17aee1b01dda0dc6e7a44e97736f9cf73f18f9') + +prepare() { + sed -i "s|/tmp/QT|$srcdir/$_pkgname|g" ${_pkgname}.qs + rm -rf ${srcdir}/${_pkgname} + chmod u+x ${_pkgname}-${pkgver}-$CARCH.run + ./${_pkgname}-${pkgver}-$CARCH.run -platform minimal --script ${_pkgname}.qs > /dev/null 2>&1 +} + +package() { + #binary + install -Dm755 ${srcdir}/${_pkgname}/bin/${_pkgname/-} ${pkgdir}/opt/${_pkgname}/bin/${_pkgname/-} + install -Dm644 ${srcdir}/${_pkgname}/bin/qt.conf ${pkgdir}/opt/${_pkgname}/bin/qt.conf + + # lib + install -dm755 ${pkgdir}/opt/${_pkgname}/lib + mv ${srcdir}/${_pkgname}/lib/qtcreator ${pkgdir}/opt/${_pkgname}/lib + mv ${srcdir}/${_pkgname}/lib/Qt ${pkgdir}/opt/${_pkgname}/lib/Qt + + # doc + install -Dm644 -t ${pkgdir}/usr/share/doc/${_pkgname}/ ${srcdir}/${_pkgname}/README.txt + + # share + install -dm755 ${pkgdir}/opt/${_pkgname}/share + mv ${srcdir}/${_pkgname}/share/qtcreator ${pkgdir}/opt/${_pkgname}/share + + # desktop + install -Dm644 ${srcdir}/${_pkgname}.desktop ${pkgdir}/usr/share/applications/${_pkgname}.desktop + + # icon + install -Dm644 ${srcdir}/${_pkgname}.png ${pkgdir}/usr/share/pixmaps/${_pkgname}.png + + # license + install -Dm644 ${srcdir}/LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + + # soft link + install -dm755 ${pkgdir}/usr/bin + ln -s /opt/${_pkgname}/bin/${_pkgname/-} ${pkgdir}/usr/bin/${_pkgname/-} + + # udev + install -Dm644 ${pkgdir}/opt/${_pkgname}/share/qtcreator/pydfu/50-openmv.rules ${pkgdir}/etc/udev/rules.d/50-openmv.rules +} + + +# vim: set sw=2 ts=2 et: diff --git a/openmv-ide.desktop b/openmv-ide.desktop new file mode 100755 index 000000000000..31c4cb991747 --- /dev/null +++ b/openmv-ide.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Type=Application +Exec=openmvide +Path=/opt/openmv-ide +Icon=openmv-ide +Name=OpenMV IDE +GenericName=The IDE of choice for OpenMV Cam Development. +GenericName[de]=Die IDE der Wahl zur OpenMV Cam Entwicklung +Terminal=false +Categories=Development;IDE; +MimeType=text/x-python; diff --git a/openmv-ide.png b/openmv-ide.png Binary files differnew file mode 100644 index 000000000000..d732a923a73a --- /dev/null +++ b/openmv-ide.png diff --git a/openmv-ide.qs b/openmv-ide.qs new file mode 100644 index 000000000000..9af4bd48fc2f --- /dev/null +++ b/openmv-ide.qs @@ -0,0 +1,81 @@ +function Controller() { + installer.autoRejectMessageBoxes(); + installer.setMessageBoxAutomaticAnswer("installationError", QMessageBox.Retry); + installer.setMessageBoxAutomaticAnswer("installationErrorWithRetry", QMessageBox.Retry); + installer.setMessageBoxAutomaticAnswer("DownloadError", QMessageBox.Retry); + installer.setMessageBoxAutomaticAnswer("archiveDownloadError", QMessageBox.Retry); + installer.installationFinished.connect(function() { + gui.clickButton(buttons.NextButton); + }) +} + +Controller.prototype.WelcomePageCallback = function() { + // click delay here because the next button is initially disabled for ~1 second + gui.clickButton(buttons.NextButton, 3000); +} + +Controller.prototype.CredentialsPageCallback = function() { + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.IntroductionPageCallback = function() { + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.TargetDirectoryPageCallback = function() +{ + //dev is the user in our docker image + gui.currentPageWidget().TargetDirectoryLineEdit.setText("/tmp/QT"); + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.PerformInstallationPageCallback = function() { + gui.clickButton(buttons.CommitButton); +} + +Controller.prototype.ComponentSelectionPageCallback = function() { + function list_packages() { + var components = installer.components(); + console.log("Available components: " + components.length); + var packages = ["Packages: "]; + for (var i = 0 ; i < components.length ;i++) { + packages.push(components[i].name); + } + console.log(packages.join(" ")); + } + + list_packages(); + + var widget = gui.currentPageWidget(); + + console.log(widget); + + widget.deselectAll(); + widget.selectComponent("qt.qt5.5130"); + widget.selectComponent("qt.qt5.5130.gcc_64"); + // widget.deselectComponent(""); + + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.LicenseAgreementPageCallback = function() { + gui.currentPageWidget().AcceptLicenseRadioButton.setChecked(true); + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.StartMenuDirectoryPageCallback = function() { + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.ReadyForInstallationPageCallback = function() +{ + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.FinishedPageCallback = function() { + var checkBoxForm = gui.currentPageWidget().LaunchQtCreatorCheckBoxForm; + if (checkBoxForm && checkBoxForm.launchQtCreatorCheckBox) { + checkBoxForm.launchQtCreatorCheckBox.checked = false; + } + gui.clickButton(buttons.FinishButton); +} |