Package Details: coolercontrol 1.2.2-2

Git Clone URL: https://aur.archlinux.org/coolercontrol.git (read-only, click to copy)
Package Base: coolercontrol
Description: A program to monitor and control your cooling devices
Upstream URL: https://gitlab.com/coolercontrol/coolercontrol
Licenses: GPL3
Conflicts: coolercontrol, coolero
Provides: coolercontrol
Submitter: codifryed
Maintainer: codifryed
Last Packager: codifryed
Votes: 16
Popularity: 0.92
First Submitted: 2023-02-07 21:45 (UTC)
Last Updated: 2024-04-29 21:17 (UTC)

Pinned Comments

codifryed commented on 2023-02-07 22:54 (UTC) (edited on 2024-01-06 23:57 (UTC) by codifryed)

Post-installation steps:

sudo systemctl enable --now coolercontrold

Then open the desktop application.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 .. 10 Next › Last »

hardfalcon commented on 2024-01-08 21:29 (UTC) (edited on 2024-01-08 21:31 (UTC) by hardfalcon)

@codifryed: Oh sorry, I wasn't aware you were actually using those files. In that case, just keeping them should be okay (though I'd still recommend removing the executable bit on both PKGBUILDs since it's not needed). Tbh, I don't know if it is possible to add a custom branch, or what implications/side effects that might have, because I've never tried that.

@thes1lv3r: You're right, for the AUR package, this should be 3 and not 2.1. I routinely use major.minor format pkgrel numbers in my private repo when I modify/update existing packages for release engineering purposed, because this makes it easier to switch back to "official" Archlinux packages when I remove packages again from my repo (for example because the desired changes have been adopted by the respective Archlinux package maintainer). I had simply forgotten to change the 2.1 to 3 before creating the diff that I posted here.

thes1lv3r commented on 2024-01-08 21:23 (UTC) (edited on 2024-01-08 21:24 (UTC) by thes1lv3r)

The release number. This is usually a positive integer number that allows to differentiate between consecutive builds of the same version of a package. As fixes and additional features are added to the PKGBUILD that influence the resulting package, the pkgrel should be incremented by 1. When a new version of the software is released, this value must be reset to 1. In exceptional cases other formats can be found in use, such as major.minor.

PKGBUILD#pkgrel

@hardfalcon Would it be more correct to use pkgrel=3 here, instead of pkgrel=2.1?

codifryed commented on 2024-01-08 20:58 (UTC) (edited on 2024-01-08 20:58 (UTC) by codifryed)

Thanks @hardfalcon !

I'll patch it up. The makefile and test-pkgbuild are very helpful for me for pre-release testing. Do you think it's ok if I move them to test branch in the repo?

hardfalcon commented on 2024-01-08 19:16 (UTC) (edited on 2024-01-08 19:22 (UTC) by hardfalcon)

I've reworked the PKGBUILD:

  1. added python-setuptools to the makedepends array to make the PKGBUILD work in a clean chroot,
  2. replaced the makedepends on the nvm AUR package with the nodejs-lts-hydrogen package from the official Archlinux repos,
  3. sorted all dependencies alphabetically,
  4. The PKGBUILD shouldn't have the executable bit set, so it should get a chmod 644. Also, the files Makefile and TEST-PKGBUILD are not needed and can be removed.

Here's the diff/patch:

diff --git a/PKGBUILD b/PKGBUILD
old mode 100755
new mode 100644
index 0aae3fb14065..8fa23a5f593a
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,44 +3,45 @@
 pkgname=coolercontrol
 _app_id="org.$pkgname.CoolerControl"
 pkgver=1.0.0
-pkgrel=2
+pkgrel=2.1
 pkgdesc="A program to monitor and control your cooling devices"
 arch=('x86_64')
 url="https://gitlab.com/coolercontrol/coolercontrol"
 license=('GPL3')
 depends=(
+  'gcc-libs'
+  'glibc'
+  'gtk3'
   'hicolor-icon-theme'
-  'python'
+  'libappindicator-gtk3'
   'liquidctl'
+  'python'
   'python-setproctitle'
   'python-fastapi'
-  'uvicorn'
-  'gcc-libs'
-  'glibc'
   'python-pydantic'
   'python-urllib3'
+  'uvicorn'
   'webkit2gtk'
-  'gtk3'
-  'libappindicator-gtk3'
 )
 makedepends=(
-  'python-build'
-  'python-wheel'
-  'python-installer'
-  'cargo'
-  'npm'
-  'nvm'
-  'webkit2gtk'
+  'appmenu-gtk-module'
   'base-devel'
+  'cargo'
   'curl'
-  'wget'
   'file'
-  'openssl'
-  'appmenu-gtk-module'
   'gtk3'
   'libappindicator-gtk3'
   'librsvg'
   'libvips'
+  'nodejs-lts-hydrogen'
+  'npm'
+  'openssl'
+  'python-build'
+  'python-installer'
+  'python-setuptools'
+  'python-wheel'
+  'webkit2gtk'
+  'wget'
 )
 checkdepends=(
   'appstream-glib'
@@ -66,29 +67,11 @@ sha256sums=(
   '3377dbd54f7d506a95e53d6d0aa323af94191067479d2eca5b45d34065a1c265'
 )

-_ensure_local_nvm() {
-  # let's be sure we are starting clean
-  which nvm >/dev/null 2>&1 && nvm deactivate && nvm unload
-
-  export NVM_DIR="${srcdir}/$pkgname-$pkgver/coolercontrol-ui/.nvm"
-  # The init script returns 3 if version specified
-  # in ./.nvrc is not (yet) installed in $NVM_DIR
-  # but nvm itself still gets loaded ok
-  source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]]
-}
-
-prepare() {
-  _ensure_local_nvm
-  cd "${srcdir}/$pkgname-$pkgver/coolercontrol-ui"
-  nvm install 18.18.2
-}
-
 build() {
   cd "${srcdir}/$pkgname-$pkgver/coolercontrol-liqctld"
   python -m build --wheel --no-isolation
   # This is the new UI in preview. The above Python coolercontrol-gui package will be removed with the next release
   cd "${srcdir}/$pkgname-$pkgver/coolercontrol-ui"
-  _ensure_local_nvm
   npm ci
   npm run build
   cp -r dist/* "${srcdir}/$pkgname-$pkgver/coolercontrold/resources/app/"

Millio commented on 2024-01-08 08:40 (UTC) (edited on 2024-01-08 08:41 (UTC) by Millio)

Failed on build with error

/usr/bin/python: No module named build

which I solved with 'pip install build'

thes1lv3r commented on 2024-01-02 11:03 (UTC)

Upgrading from 0.17.1-3 to 0.17.3-1:

error: failed to determine package fingerprint for build script for coolercontrold v0.17.3 (/home/xxxxxx/.cache/paru/clone/coolercontrol/src/coolercontrol-0.17.3/coolercontrold)

Caused by: failed to determine the most recently modified file in /home/xxxxxx/.cache/paru/clone/coolercontrol/src/coolercontrol-0.17.3/coolercontrold

Caused by: failed to determine list of files in /home/xxxxxx/.cache/paru/clone/coolercontrol/src/coolercontrol-0.17.3/coolercontrold

Caused by: failed to open git index at /home/xxxxxx/.cache/paru/clone/coolercontrol/.git/

Caused by: invalid data in index - calculated checksum does not match expected; class=Index (10)

blackhole commented on 2023-11-29 22:25 (UTC)

OK, removed the content of .npmrc and now installation is fine

codifryed commented on 2023-11-29 22:00 (UTC)

Hi @blackhole,
There is some info in this issue: https://github.com/nvm-sh/nvm/issues/2340
What I understand from that thread is that nvm and global prefixes are not compatible and really shouldn't be used.

If you don't need the prefix setting in your .npmrc, then just remove it.

I assume you get command not found because nvm is not installed. It is only a make dependency for coolercontrol so you probably have to install it before running that command, but I think you can get around it by just editing/removing the file yourself. The pkgbuild is using nvm in accordance with the Arch Wiki and seems to install fine otherwise.

blackhole commented on 2023-11-29 18:27 (UTC)

Cannot update it

Your user’s .npmrc file (${HOME}/.npmrc) has a globalconfig and/or a prefix setting, which are incompatible with nvm. Run nvm use --delete-prefix v18.18.2 to unset it. ==> ERROR: A failure occurred in prepare(). Aborting...

Using nvm use --delete-prefix v18.18.2 the result is command not found