commit 9d862b3c58a957f8118a3f4f43fad7ced320511a Author: Aleksandr Proklov Date: Tue Nov 7 20:08:33 2023 +0900 Imported from SRPM diff --git a/.abf.yml b/.abf.yml new file mode 100644 index 0000000..ded52fe --- /dev/null +++ b/.abf.yml @@ -0,0 +1,2 @@ +sources: + IMSProg-1.0.27.tar: 1afc9ab1bf5deb0eb2984193be608ae99739a8fe diff --git a/IMSProg-1.0.27-alt1.patch b/IMSProg-1.0.27-alt1.patch new file mode 100644 index 0000000..44393bc --- /dev/null +++ b/IMSProg-1.0.27-alt1.patch @@ -0,0 +1,285 @@ + .gear/IMSProg.spec | 101 ++++++++++++++++++++++++++++ + .gear/rules | 3 + + .gear/tags/list | 1 + + .gear/upstream/remotes | 3 + + IMSProg_editor/CMakeLists.txt | 15 ++--- + IMSProg_editor/main.cpp | 2 +- + IMSProg_editor/other/IMSProg_editor.desktop | 7 +- + IMSProg_programmer/CMakeLists.txt | 17 +++-- + IMSProg_programmer/main.cpp | 2 +- + IMSProg_programmer/mainwindow.cpp | 11 +-- + IMSProg_programmer/other/IMSProg.desktop | 5 +- + 11 files changed, 132 insertions(+), 35 deletions(-) + +diff --git a/.gear/IMSProg.spec b/.gear/IMSProg.spec +new file mode 100644 +index 0000000..0a33fd2 +--- /dev/null ++++ b/.gear/IMSProg.spec +@@ -0,0 +1,101 @@ ++# Unpackaged files in buildroot should terminate build ++%define _unpackaged_files_terminate_build 1 ++ ++Name: IMSProg ++Version: 1.0.27 ++Release: alt1 ++ ++Summary: I2C, SPI and MicroWire EEPROM/Flash chip programmer for CH341a devices ++Summary(ru_RU.UTF-8): I2C, SPI and MicroWire EEPROM/Flash программатор для CH341a устройств ++License: GPL-3.0-or-later ++Group: Engineering ++ ++Url: https://github.com/bigbigmdm/IMSProg ++Source: %name-%version.tar ++Patch: %name-%version-%release.patch ++ ++BuildRequires(pre): rpm-macros-cmake ++BuildRequires: cmake gcc-c++ ++BuildRequires: qt5-base-devel ++BuildRequires: qt5-tools ++BuildRequires: pkgconfig(libusb-1.0) ++ ++%description ++IMSProg - Linux IMSProg - I2C, SPI and MicroWire EEPROM/Flash chip programmer ++for CH341a devices. The IMSProm is a free I2C EEPROM programmer tool for ++CH341A device based on QhexEdit2 and modify SNANDer programmer. ++ ++This is a GUI program used widget QhexEditor. For setting the SPI chip ++parameters you can use the Detect button for reading chip parameters ++(JEDEC information reading) or manually setting it. The I2C and MicroWire ++EEPROM only manually selected. ++ ++The chip database format is clone with EZP2019, EZP2020, EZP2023, Minpro I, ++XP866+ programmers. You can edit the database use the EZP Chip data Editor. ++ ++%description -l ru_RU.UTF-8 ++IMSProg - Linux IMSProg - I2C, SPI and MicroWire EEPROM/Flash программатор ++для CH341a устройств. IMSProm является бесплатной утилитой для ++использования CH341A устройств в качестве программатора микросхем. Основана на ++QhexEdit2 и модифицированном программаторе SNANDer. ++ ++Графический интерфейс программы использует виджеты QhexEditor. Для настройки ++параметров чипа SPI вы можете использовать кнопку «Поиск» для чтения параметров ++чипа (считывание информации JEDEC) или настроить его вручную. I2C и MicroWire ++EEPROM выбираются только вручную. ++ ++Формат базы данных чипов клонируется программаторами EZP2019, EZP2020, EZP2023, ++Minpro I, XP866+. Вы можете редактировать базу данных с помощью редактора данных ++EZP Chip. ++ ++%prep ++%setup ++%patch -p1 ++ ++# update translations ++lrelease-qt5 IMSProg_editor/language/*.ts ++lrelease-qt5 IMSProg_programmer/language/*.ts ++ ++%build ++pushd IMSProg_editor ++%cmake ++%cmake_build ++popd ++ ++pushd IMSProg_programmer ++%cmake ++%cmake_build ++popd ++ ++%install ++pushd IMSProg_editor ++%cmake_install ++popd ++ ++pushd IMSProg_programmer ++%cmake_install ++popd ++ ++# move udev rules to %_udevrulesdir ++mkdir -p %buildroot%_udevrulesdir ++mv %buildroot%_sysconfdir/udev/rules.d/99-CH341.rules \ ++ %buildroot%_udevrulesdir/99-CH341.rules ++ ++# rename README ++cp IMSProg_editor/README.md IMSProg_editor.md ++cp IMSProg_programmer/README.md IMSProg_programmer.md ++ ++%files ++%doc README.md IMSProg_editor.md IMSProg_programmer.md ++%_bindir/%name ++%_bindir/%{name}_editor ++%_datadir/%name ++%_desktopdir/%name.desktop ++%_desktopdir/%{name}_editor.desktop ++%_udevrulesdir/99-CH341.rules ++%_iconsdir/hicolor/64x64/apps/%{name}_editor.png ++%_iconsdir/hicolor/64x64/apps/%name.png ++ ++%changelog ++* Fri Oct 13 2023 Anton Midyukov 1.0.27-alt1 ++- initial build (Closes: 47993) +diff --git a/.gear/rules b/.gear/rules +new file mode 100644 +index 0000000..05e5dc2 +--- /dev/null ++++ b/.gear/rules +@@ -0,0 +1,3 @@ ++tar: upstream:. exclude=release exclude=img ++diff: upstream:. . exclude=release exclude=img ++spec: .gear/IMSProg.spec +diff --git a/.gear/tags/list b/.gear/tags/list +new file mode 100644 +index 0000000..57c5b79 +--- /dev/null ++++ b/.gear/tags/list +@@ -0,0 +1 @@ ++5699c8c134d175bbadbdb0c88ac495b6546fb2dc upstream +diff --git a/.gear/upstream/remotes b/.gear/upstream/remotes +new file mode 100644 +index 0000000..3f0dc3e +--- /dev/null ++++ b/.gear/upstream/remotes +@@ -0,0 +1,3 @@ ++[remote "upstream"] ++ url = https://github.com/bigbigmdm/IMSProg ++ fetch = +refs/heads/*:refs/remotes/upstream/* +diff --git a/IMSProg_editor/CMakeLists.txt b/IMSProg_editor/CMakeLists.txt +index 426fb2b..54163cd 100644 +--- a/IMSProg_editor/CMakeLists.txt ++++ b/IMSProg_editor/CMakeLists.txt +@@ -32,13 +32,12 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) + target_link_libraries(${PROJECT_NAME} Qt5::Core) + target_link_libraries(${PROJECT_NAME} Qt5::Widgets) + +-install(TARGETS ${PROJECT_NAME} DESTINATION /opt/IMSProg) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/other/IMSProg_editor.desktop" DESTINATION /opt/IMSProg) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/other/IMSProg_editor.desktop" DESTINATION /usr/share/applications) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/img/chipEdit64.png" DESTINATION /opt/IMSProg) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipEditor_ru_RU.qm" DESTINATION /opt/IMSProg/language) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipEditor_de_DE.qm" DESTINATION /opt/IMSProg/language) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipEditor_es_ES.qm" DESTINATION /opt/IMSProg/language) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipEditor_zn_CH.qm" DESTINATION /opt/IMSProg/language) ++install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/other/IMSProg_editor.desktop" DESTINATION ${SHARE_INSTALL_PREFIX}/applications) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/img/chipEdit64.png" DESTINATION ${SHARE_INSTALL_PREFIX}/icons/hicolor/64x64/apps RENAME IMSProg_editor.png) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipEditor_ru_RU.qm" DESTINATION ${SHARE_INSTALL_PREFIX}/IMSProg/language) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipEditor_de_DE.qm" DESTINATION ${SHARE_INSTALL_PREFIX}/IMSProg/language) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipEditor_es_ES.qm" DESTINATION ${SHARE_INSTALL_PREFIX}/IMSProg/language) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipEditor_zn_CH.qm" DESTINATION ${SHARE_INSTALL_PREFIX}/IMSProg/language) + + +diff --git a/IMSProg_editor/main.cpp b/IMSProg_editor/main.cpp +index d05d6ec..25c6d7d 100644 +--- a/IMSProg_editor/main.cpp ++++ b/IMSProg_editor/main.cpp +@@ -8,7 +8,7 @@ int main(int argc, char *argv[]) + QApplication a(argc, argv); + QTranslator translator; + QString translateName = "chipEditor_" + QLocale::system().name(); +- if(translator.load(translateName, "language/")) a.installTranslator(&translator); ++ if(translator.load(translateName, "/usr/share/IMSProg/language/")) a.installTranslator(&translator); + a.installTranslator(&translator); + MainWindow w; + w.show(); +diff --git a/IMSProg_editor/other/IMSProg_editor.desktop b/IMSProg_editor/other/IMSProg_editor.desktop +index 6e9c120..6ac235e 100644 +--- a/IMSProg_editor/other/IMSProg_editor.desktop ++++ b/IMSProg_editor/other/IMSProg_editor.desktop +@@ -2,10 +2,9 @@ + Version=1.0 + Type=Application + Name=IMSProg_editor +-Comment=Chip Database Editor +-Exec=/opt/IMSProg/IMSProg_editor +-Icon=/opt/IMSProg/chipEdit64.png +-Path=/opt/IMSProg ++Comment=Chip Database Editor ++Exec=IMSProg_editor ++Icon=IMSProg_editor + Terminal=false + Encoding=UTF-8 + Categories=Electronics;Development; +diff --git a/IMSProg_programmer/CMakeLists.txt b/IMSProg_programmer/CMakeLists.txt +index 6eb9b00..5f6a0ed 100644 +--- a/IMSProg_programmer/CMakeLists.txt ++++ b/IMSProg_programmer/CMakeLists.txt +@@ -82,13 +82,12 @@ target_link_libraries(${PROJECT_NAME} Qt5::Core) + #target_link_libraries(${PROJECT_NAME} Qt5::Widgets) + target_link_libraries(${PROJECT_NAME} Qt5::Widgets ${LibUSB_LIBRARIES}) + +-install(TARGETS ${PROJECT_NAME} DESTINATION /opt/IMSProg) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/other/IMSProg.desktop" DESTINATION /opt/IMSProg) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/other/IMSProg.desktop" DESTINATION /usr/share/applications) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/img/write64.png" DESTINATION /opt/IMSProg) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/database/IMSProg.Dat" DESTINATION /opt/IMSProg) ++install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/other/IMSProg.desktop" DESTINATION ${SHARE_INSTALL_PREFIX}/applications) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/img/write64.png" DESTINATION ${SHARE_INSTALL_PREFIX}/icons/hicolor/64x64/apps RENAME IMSProg.png) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/database/IMSProg.Dat" DESTINATION ${SHARE_INSTALL_PREFIX}/IMSProg) + install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/other/99-CH341.rules" DESTINATION /etc/udev/rules.d) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipProgrammer_ru_RU.qm" DESTINATION /opt/IMSProg/language) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipProgrammer_es_ES.qm" DESTINATION /opt/IMSProg/language) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipProgrammer_de_DE.qm" DESTINATION /opt/IMSProg/language) +-install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipProgrammer_zn_CH.qm" DESTINATION /opt/IMSProg/language) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipProgrammer_ru_RU.qm" DESTINATION ${SHARE_INSTALL_PREFIX}/IMSProg/language) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipProgrammer_es_ES.qm" DESTINATION ${SHARE_INSTALL_PREFIX}/IMSProg/language) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipProgrammer_de_DE.qm" DESTINATION ${SHARE_INSTALL_PREFIX}/IMSProg/language) ++install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/language/chipProgrammer_zn_CH.qm" DESTINATION ${SHARE_INSTALL_PREFIX}/IMSProg/language) +diff --git a/IMSProg_programmer/main.cpp b/IMSProg_programmer/main.cpp +index 4addf5c..c5db922 100644 +--- a/IMSProg_programmer/main.cpp ++++ b/IMSProg_programmer/main.cpp +@@ -25,7 +25,7 @@ int main(int argc, char *argv[]) + QApplication a(argc, argv); + QTranslator translator; + QString translateName = "chipProgrammer_" + QLocale::system().name(); +- if(translator.load(translateName, "language/")) a.installTranslator(&translator); ++ if(translator.load(translateName, "/usr/share/IMSProg/language/")) a.installTranslator(&translator); + a.installTranslator(&translator); + MainWindow w; + w.show(); +diff --git a/IMSProg_programmer/mainwindow.cpp b/IMSProg_programmer/mainwindow.cpp +index fc87a7d..084be24 100644 +--- a/IMSProg_programmer/mainwindow.cpp ++++ b/IMSProg_programmer/mainwindow.cpp +@@ -126,7 +126,7 @@ MainWindow::MainWindow(QWidget *parent) : + hexEdit->setHexFontColor(defaultTextColor); + //opening chip database file + ui->statusBar->showMessage(tr("Opening DAT file")); +- QFile datfile("IMSProg.Dat"); ++ QFile datfile("/usr/share/IMSProg/IMSProg.Dat"); + QByteArray dataChips; + if (!datfile.open(QIODevice::ReadOnly)) + { +@@ -1223,14 +1223,7 @@ void MainWindow::on_actionChecksum_calculate_triggered() + + void MainWindow::on_actionEdit_chips_Database_triggered() + { +- if(QFileInfo::exists("IMSProg_editor") && !QDir("IMSProg_editor").exists()){ +- //The file exists and is not a folder +- QProcess::execute("IMSProg_editor"); +- } +- else { +- //The file doesn't exist, either the path doesn't exist or is the path of a folder +- QMessageBox::about(this, tr("Error"), tr("Not found file `IMSProg_editor`!")); +- } ++ QProcess::execute("IMSProg_editor"); + } + + void MainWindow::doNotDisturb() +diff --git a/IMSProg_programmer/other/IMSProg.desktop b/IMSProg_programmer/other/IMSProg.desktop +index df1a761..d192d0b 100644 +--- a/IMSProg_programmer/other/IMSProg.desktop ++++ b/IMSProg_programmer/other/IMSProg.desktop +@@ -2,9 +2,8 @@ + Version=1.0 + Type=Application + Name=IMSProg +-Icon=/opt/IMSProg/write64.png +-Exec=/opt/IMSProg/IMSProg +-Path=/opt/IMSProg/ ++Icon=IMSProg ++Exec=IMSProg + NoDisplay=false + Categories=Electronics;Development; + StartupNotify=true diff --git a/IMSProg.spec b/IMSProg.spec new file mode 100644 index 0000000..0a33fd2 --- /dev/null +++ b/IMSProg.spec @@ -0,0 +1,101 @@ +# Unpackaged files in buildroot should terminate build +%define _unpackaged_files_terminate_build 1 + +Name: IMSProg +Version: 1.0.27 +Release: alt1 + +Summary: I2C, SPI and MicroWire EEPROM/Flash chip programmer for CH341a devices +Summary(ru_RU.UTF-8): I2C, SPI and MicroWire EEPROM/Flash программатор для CH341a устройств +License: GPL-3.0-or-later +Group: Engineering + +Url: https://github.com/bigbigmdm/IMSProg +Source: %name-%version.tar +Patch: %name-%version-%release.patch + +BuildRequires(pre): rpm-macros-cmake +BuildRequires: cmake gcc-c++ +BuildRequires: qt5-base-devel +BuildRequires: qt5-tools +BuildRequires: pkgconfig(libusb-1.0) + +%description +IMSProg - Linux IMSProg - I2C, SPI and MicroWire EEPROM/Flash chip programmer +for CH341a devices. The IMSProm is a free I2C EEPROM programmer tool for +CH341A device based on QhexEdit2 and modify SNANDer programmer. + +This is a GUI program used widget QhexEditor. For setting the SPI chip +parameters you can use the Detect button for reading chip parameters +(JEDEC information reading) or manually setting it. The I2C and MicroWire +EEPROM only manually selected. + +The chip database format is clone with EZP2019, EZP2020, EZP2023, Minpro I, +XP866+ programmers. You can edit the database use the EZP Chip data Editor. + +%description -l ru_RU.UTF-8 +IMSProg - Linux IMSProg - I2C, SPI and MicroWire EEPROM/Flash программатор +для CH341a устройств. IMSProm является бесплатной утилитой для +использования CH341A устройств в качестве программатора микросхем. Основана на +QhexEdit2 и модифицированном программаторе SNANDer. + +Графический интерфейс программы использует виджеты QhexEditor. Для настройки +параметров чипа SPI вы можете использовать кнопку «Поиск» для чтения параметров +чипа (считывание информации JEDEC) или настроить его вручную. I2C и MicroWire +EEPROM выбираются только вручную. + +Формат базы данных чипов клонируется программаторами EZP2019, EZP2020, EZP2023, +Minpro I, XP866+. Вы можете редактировать базу данных с помощью редактора данных +EZP Chip. + +%prep +%setup +%patch -p1 + +# update translations +lrelease-qt5 IMSProg_editor/language/*.ts +lrelease-qt5 IMSProg_programmer/language/*.ts + +%build +pushd IMSProg_editor +%cmake +%cmake_build +popd + +pushd IMSProg_programmer +%cmake +%cmake_build +popd + +%install +pushd IMSProg_editor +%cmake_install +popd + +pushd IMSProg_programmer +%cmake_install +popd + +# move udev rules to %_udevrulesdir +mkdir -p %buildroot%_udevrulesdir +mv %buildroot%_sysconfdir/udev/rules.d/99-CH341.rules \ + %buildroot%_udevrulesdir/99-CH341.rules + +# rename README +cp IMSProg_editor/README.md IMSProg_editor.md +cp IMSProg_programmer/README.md IMSProg_programmer.md + +%files +%doc README.md IMSProg_editor.md IMSProg_programmer.md +%_bindir/%name +%_bindir/%{name}_editor +%_datadir/%name +%_desktopdir/%name.desktop +%_desktopdir/%{name}_editor.desktop +%_udevrulesdir/99-CH341.rules +%_iconsdir/hicolor/64x64/apps/%{name}_editor.png +%_iconsdir/hicolor/64x64/apps/%name.png + +%changelog +* Fri Oct 13 2023 Anton Midyukov 1.0.27-alt1 +- initial build (Closes: 47993)