Package Details: stm32cubeprog 2.16.0-2

Git Clone URL: https://aur.archlinux.org/stm32cubeprog.git (read-only, click to copy)
Package Base: stm32cubeprog
Description: An all-in-one multi-OS software tool for programming STM32 products.
Upstream URL: https://www.st.com/en/development-tools/stm32cubeprog.html
Keywords: programmer stm32
Licenses: custom:SLA0048
Provides: stm32cubeprogrammer
Submitter: yjun
Maintainer: taotieren (GPereira, akumaexs)
Last Packager: GPereira
Votes: 8
Popularity: 0.43
First Submitted: 2021-01-15 20:39 (UTC)
Last Updated: 2024-03-24 02:35 (UTC)

Dependencies (7)

Required by (0)

Sources (2)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 Next › Last »

DCNick3 commented on 2023-01-28 12:53 (UTC)

This not running in xvfb is... unexpected

@taotieren, maybe you forgot to uncomment it?

GPereira commented on 2023-01-26 23:24 (UTC)

@akumaexs I have the same issue, I just posted how far I got but it still is not ok

akumaexs commented on 2023-01-25 09:25 (UTC) (edited on 2023-01-25 09:37 (UTC) by akumaexs)

@GPereira I tried this to create PKGBUILD, but it doesnt work when call "build()".

please wait for minutes ......

./SetupSTM32CubeProgrammer-2.12.0.linux
/home/akuma/Downloads/stm32cubeprog-1.12/src
chdir /home/akuma/Downloads/stm32cubeprog-1.12/src/.
current dir /home/akuma/Downloads/stm32cubeprog-1.12/src
Command line arguments:
icotool: /home/akuma/Downloads/stm32cubeprog-1.12/src/build/util/Programmer.ico: cannot open file

GPereira commented on 2022-12-28 13:23 (UTC)

# Maintainer: yjun <jerrysteve1101@gmail.com>
# Maintainer: Maik93 <michael.mugnai@gmail.com>
# Maintainer: GPereira <goncalo_pereira@outlook.pt>

# fork from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=stm32cubeide

pkgname=stm32cubeprog
_pkgname="STM32CubeProgrammer"
pkgver=2.12.0
pkgrel=1
pkgdesc="An all-in-one multi-OS software tool for programming STM32 products."
arch=('x86_64')
url="https://www.st.com/en/development-tools/stm32cubeprog.html"
license=('custom:SLA0048')
# libusb1.0.12 version or higher is required to run STM32CubeProgrammer.

#
# There is no need to install any Java™ SE Run Time Environment since version 2.6.0. The
# STM32CubeProgrammer runs with a bundled JRE available inside the downloaded
# package and no longer with the one installed on your machine.

# -------------------------------------------------->
# https://www.st.com/resource/en/user_manual/dm00403500-stm32cubeprogrammer-software-description-stmicroelectronics.pdf
#
# stlink provides stlink udev rules
depends=('stlink'
         'libusb')
makedepends=('xdotool'
             'xorg-server-xvfb'
             'icoutils'
             'fontconfig'
             'gsfonts')
provides=("${pkgname}rammer")
options=('!strip')
_pkg_main_name="${pkgname//prog/prg}-lin-v${pkgver//./-}"
# get New _pkg_main_url_index
# curl https://www.st.com/content/st_com_cx/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/stm32cubeprog/_jcr_content/get-software/get-software-table-body.nocache.html/st-site-cx/components/containers/product/get-software-table-body.html |& grep dlLink
_pkg_main_url_index="2c/71/de/d9/d5/2f/4f/4c"
source=("en.${_pkg_main_name}.zip::https://www.st.com/content/ccc/resource/technical/software/utility/group0/${_pkg_main_url_index}/${_pkg_main_name}/files/${_pkg_main_name}.zip/jcr:content/translations/en.${_pkg_main_name}.zip"
        "${pkgname}.xdotool")
sha256sums=('239d222424ce8d6976e9800007e04db7ba96ff2148f96730b4dd1fdc6169b9a2'
            '3194268b73572c4e0fb69e51145f989e85c0415d1c2d932d115708b0c514b005')

prepare() {
  cat > ${pkgname}.xvfb <<END
#!/usr/bin/sh

echo ' '
echo 'please wait for minutes ......'
echo ' '

./SetupSTM32CubeProgrammer-${pkgver}.linux &

# specify $srcdir/build as temporary dir
xdotool stm32cubeprog.xdotool ${srcdir}/build
END

  chmod u+x Setup${_pkgname}-${pkgver}.linux ${pkgname}.xvfb
}

build() {
  mkdir -p build

  # use xvfb-run and xdotool to cheat the Installer
  xvfb-run --auto-servernum --server-args="-screen 0 1920x1080x24" -w 5 ./${pkgname}.xvfb

  # convert ico to icon
  mkdir -p icon
  icotool -x ${srcdir}/build/util/Programmer.ico -o icon
}

package() {
  install -dm755 ${pkgdir}/opt/${pkgname}
  cp -a ${srcdir}/build/* ${pkgdir}/opt/${pkgname}

  # icon
  index=0
  for size in 256 128 64 48 32 24 16
  do
    index=$((index+1))
    install -Dm 644 ${srcdir}/icon/Programmer_${index}_${size}x${size}x32.png \
                    ${pkgdir}/usr/share/icons/hicolor/${size}x${size}/apps/${pkgname}.png
  done

  # doc
  for _doc in CLI_TREE.txt Readme.txt
  do
    install -Dm644 ${pkgdir}/opt/${pkgname}/doc/${_doc} -t ${pkgdir}/usr/share/doc/${pkgname}
  done

  # license
  install -Dm644 ${pkgdir}/opt/${pkgname}/doc/license.txt -t ${pkgdir}/usr/share/licenses/${pkgname}

  # desktop enrty
  install -Dm644 /dev/stdin "$pkgdir/usr/share/applications/${pkgname}.desktop" <<END
[Desktop Entry]
Comment=${_pkgname}-Cube ${pkgver}
Comment[en]=${_pkgname}-Cube ${pkgver}
Encoding=UTF-8
Exec=env GDK_BACKEND=x11 /opt/${pkgname}/bin/${_pkgname}
Icon=${pkgname}
Name=${_pkgname}
Name[en]=${_pkgname}
Path=/opt/${pkgname}/bin
Type=Application
END

  # soft link
  install -dm 755 ${pkgdir}/usr/bin
  for _cmd in STM32_Programmer_CLI STM32_Programmer.sh STM32MP_SigningTool_CLI STM32MP_KeyGen_CLI
  do
    ln -sf /opt/${pkgname}/bin/${_cmd} ${pkgdir}/usr/bin/${_cmd}
  done

  # Remove STM32CubePrgUpd update
  rm -rf ${pkgdir}/opt/${pkgname}/updater
}
# vim: set sw=2 ts=2 et:

goshawk22 commented on 2022-06-30 16:23 (UTC) (edited on 2022-06-30 16:24 (UTC) by goshawk22)

When I tried to update, it failed saying ==> ERROR: One or more files did not pass the validity check!

Upon further inspection, it appears that the zip file containing the source code is actually a HTML file. https://pastebin.goshawk22.uk/yezipizudo.yaml

apaulsen commented on 2022-06-30 15:02 (UTC)

The en.stm32cubeprg-lin_v2-11-0.zip that the pkgbuild downloads is failing the validity check, but the one in the Sources section on this page passes.

MacroController commented on 2022-06-22 22:20 (UTC)

@yjun thank you, it worked!

yjun commented on 2022-06-22 15:33 (UTC)

@MacroController @jb1 @mnhunter Set xorg-run launch delay to 5 seconds this commit may fix the error.

MacroController commented on 2022-06-22 15:04 (UTC)

I've got a build failure when I try to update:

            Failed creating new xdo instance
            ==> ERROR: A failure occurred in build().
                Aborting...
            Command line arguments: 
            Exception in thread "main" java.awt.AWTError: Can't connect to X11 window server using ':99' as the value of the DISPLAY variable.
                at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
                at sun.awt.X11GraphicsEnvironment.access$200(X11GraphicsEnvironment.java:65)
                at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:115)
                at java.security.AccessController.doPrivileged(Native Method)
                at sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:74)
                at java.lang.Class.forName0(Native Method)
                at java.lang.Class.forName(Class.java:264)
                at java.awt.GraphicsEnvironment.createGE(GraphicsEnvironment.java:103)
                at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:82)
                at sun.awt.X11.XToolkit.<clinit>(XToolkit.java:132)
                at java.lang.Class.forName0(Native Method)
                at java.lang.Class.forName(Class.java:264)
                at java.awt.Toolkit$2.run(Toolkit.java:860)
                at java.awt.Toolkit$2.run(Toolkit.java:855)
                at java.security.AccessController.doPrivileged(Native Method)
                at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:854)
                at javax.swing.UIManager.getSystemLookAndFeelClassName(UIManager.java:611)
                at com.izforge.izpack.installer.container.provider.GUIInstallDataProvider.loadLookAndFeel(GUIInstallDataProvider.java:168)
                at com.izforge.izpack.installer.container.provider.GUIInstallDataProvider.provide(GUIInstallDataProvider.java:96)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.picocontainer.injectors.MethodInjector.invokeMethod(MethodInjector.java:129)
                at org.picocontainer.injectors.MethodInjector.access$000(MethodInjector.java:39)
                at org.picocontainer.injectors.MethodInjector$2.run(MethodInjector.java:113)
                at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270)
                at org.picocontainer.injectors.MethodInjector.decorateComponentInstance(MethodInjector.java:120)
                at org.picocontainer.injectors.CompositeInjector.decorateComponentInstance(CompositeInjector.java:58)
                at org.picocontainer.injectors.Reinjector.reinject(Reinjector.java:142)
                at org.picocontainer.injectors.ProviderAdapter.getComponentInstance(ProviderAdapter.java:96)
                at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
                at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
                at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:699)
                at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:647)
                at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:678)
                at com.izforge.izpack.installer.container.impl.InstallerContainer.resolveComponents(InstallerContainer.java:139)
                at com.izforge.izpack.installer.container.impl.GUIInstallerContainer.resolveComponents(GUIInstallerContainer.java:88)
                at com.izforge.izpack.installer.container.impl.InstallerContainer.fillContainer(InstallerContainer.java:80)
                at com.izforge.izpack.core.container.AbstractContainer.initialise(AbstractContainer.java:304)
                at com.izforge.izpack.core.container.AbstractContainer.initialise(AbstractContainer.java:284)
                at com.izforge.izpack.installer.container.impl.GUIInstallerContainer.<init>(GUIInstallerContainer.java:38)
                at com.izforge.izpack.installer.bootstrap.InstallerGui.run(InstallerGui.java:54)
                at com.izforge.izpack.installer.bootstrap.Installer.launchInstall(Installer.java:294)
                at com.izforge.izpack.installer.bootstrap.Installer.start(Installer.java:238)
                at com.izforge.izpack.installer.bootstrap.Installer.main(Installer.java:78)

xiretza commented on 2022-06-21 05:54 (UTC)

Please add fontconfig and gsfonts as makedepends as already mentioned by @justinkb.