Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 2 additions & 7 deletions .SRCINFO
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
pkgbase = coolerdash
pkgdesc = Monitor telemetry data on an AIO liquid cooler with an integrated LCD display
pkgver = 2.2.6
pkgdesc = Plug-in for CoolerControl that extends the LCD functionality with additional features
pkgver = 3.0.0
pkgrel = 1
url = https://github.com/damachine/coolerdash
install = coolerdash.install
Expand All @@ -10,11 +10,6 @@ pkgbase = coolerdash
makedepends = make
makedepends = pkg-config
makedepends = git
depends = cairo
depends = coolercontrol
depends = jansson
depends = libcurl-gnutls
depends = ttf-roboto
provides = coolerdash-git
conflicts = coolerdash-git
replaces = coolerdash-git
Expand Down
46 changes: 7 additions & 39 deletions .github/workflows/install.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,35 +23,35 @@ jobs:
- distro: "ubuntu:24.04"
name: "Ubuntu 24.04 LTS"
pre_install: "apt-get update"
install_deps: "apt-get install -y sudo systemd libcairo2-dev libcurl4-openssl-dev build-essential pkg-config libjansson-dev fonts-roboto file"
install_deps: "apt-get install -y sudo systemd libcairo2-dev libcurl4-openssl-dev build-essential pkg-config libjansson-dev libsodium-dev fonts-roboto file"

- distro: "debian:13"
name: "Debian 13 (Trixie)"
pre_install: "apt-get update"
install_deps: "apt-get install -y sudo systemd libcairo2-dev libcurl4-openssl-dev build-essential pkg-config libjansson-dev fonts-roboto file"
install_deps: "apt-get install -y sudo systemd libcairo2-dev libcurl4-openssl-dev build-essential pkg-config libjansson-dev libsodium-dev fonts-roboto file"

# Fedora family (independent from RHEL)
- distro: "fedora:42"
name: "Fedora 42"
pre_install: "dnf update -y"
install_deps: "dnf install -y sudo systemd cairo-devel libcurl-devel gcc make pkg-config jansson-devel google-roboto-fonts file"
install_deps: "dnf install -y sudo systemd cairo-devel libcurl-devel gcc make pkg-config jansson-devel libsodium-devel google-roboto-fonts file"

# RHEL/CentOS family (RHEL-compatible)
- distro: "quay.io/centos/centos:stream9"
name: "CentOS Stream 9 (RHEL 9 compatible)"
pre_install: "dnf update -y && dnf install -y epel-release && dnf config-manager --set-enabled crb && dnf makecache"
install_deps: "dnf install -y sudo systemd cairo-devel libcurl-devel gcc make pkg-config jansson-devel google-roboto-fonts file"
install_deps: "dnf install -y sudo systemd cairo-devel libcurl-devel gcc make pkg-config jansson-devel libsodium-devel google-roboto-fonts file"

# openSUSE family
- distro: "opensuse/tumbleweed"
name: "openSUSE Tumbleweed"
pre_install: "zypper refresh"
install_deps: "zypper install -y tar sudo systemd cairo-devel libcurl-devel gcc make pkg-config libjansson-devel google-roboto-fonts file"
install_deps: "zypper install -y tar sudo systemd cairo-devel libcurl-devel gcc make pkg-config libjansson-devel libsodium-devel google-roboto-fonts file"

- distro: "opensuse/leap:16.0"
name: "openSUSE Leap 16.0"
pre_install: "zypper refresh"
install_deps: "zypper install -y sudo systemd cairo-devel libcurl-devel gcc make pkg-config libjansson-devel google-roboto-fonts file"
install_deps: "zypper install -y sudo systemd cairo-devel libcurl-devel gcc make pkg-config libjansson-devel libsodium-devel google-roboto-fonts file"

container:
image: ${{ matrix.distro }}
Expand Down Expand Up @@ -156,22 +156,6 @@ jobs:
echo "⚠️ Manual page not found"
fi

# Check systemd helperd service
if [ -f "/tmp/install-test/usr/lib/systemd/system/coolerdash-helperd.service" ]; then
echo "βœ… Systemd helperd service installed"
else
echo "❌ Systemd helperd service not found"
exit 1
fi

# Check systemd startup-delay drop-in
if [ -f "/tmp/install-test/etc/systemd/system/cc-plugin-coolerdash.service.d/startup-delay.conf" ]; then
echo "βœ… Systemd startup-delay drop-in installed"
else
echo "❌ Systemd startup-delay drop-in not found"
exit 1
fi

# Check udev rules
if [ -f "/tmp/install-test/usr/lib/udev/rules.d/99-coolerdash.rules" ]; then
echo "βœ… Udev rules installed"
Expand Down Expand Up @@ -205,7 +189,7 @@ jobs:
- name: Setup Arch Linux
run: |
pacman -Syu --noconfirm
pacman -S --noconfirm cairo libcurl-gnutls gcc make pkg-config jansson ttf-roboto sudo systemd file
pacman -S --noconfirm cairo libcurl-gnutls gcc make pkg-config jansson libsodium ttf-roboto sudo systemd file

- name: Test make install on Arch
run: |
Expand Down Expand Up @@ -233,22 +217,6 @@ jobs:
exit 1
fi

# Check systemd helperd service
if [ -f "/tmp/install-test/usr/lib/systemd/system/coolerdash-helperd.service" ]; then
echo "βœ… Systemd helperd service installed"
else
echo "❌ Systemd helperd service not found"
exit 1
fi

# Check systemd startup-delay drop-in
if [ -f "/tmp/install-test/etc/systemd/system/cc-plugin-coolerdash.service.d/startup-delay.conf" ]; then
echo "βœ… Systemd startup-delay drop-in installed"
else
echo "❌ Systemd startup-delay drop-in not found"
exit 1
fi

# Check udev rules
if [ -f "/tmp/install-test/usr/lib/udev/rules.d/99-coolerdash.rules" ]; then
echo "βœ… Udev rules installed"
Expand Down
29 changes: 14 additions & 15 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -110,41 +110,41 @@ install-deps:
case $$DISTRO in \
arch) \
printf "$(GREEN)Installing dependencies for Arch Linux/Manjaro...$(RESET)\n"; \
$(SUDO) pacman -S --needed cairo libcurl-gnutls gcc make pkg-config ttf-roboto jansson || { \
$(SUDO) pacman -S --needed cairo libcurl-gnutls gcc make pkg-config ttf-roboto jansson || { \
printf "$(RED)Error installing dependencies!$(RESET)\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) pacman -S cairo libcurl-gnutls gcc make pkg-config ttf-roboto jansson\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) pacman -S cairo libcurl-gnutls gcc make pkg-config ttf-roboto jansson\n"; \
exit 1; \
}; \
;; \
debian) \
printf "$(GREEN)Installing dependencies for Ubuntu/Debian...$(RESET)\n"; \
$(SUDO) apt update && $(SUDO) apt install -y libcairo2-dev libcurl4-openssl-dev gcc make pkg-config fonts-roboto libjansson-dev || { \
$(SUDO) apt update && $(SUDO) apt install -y libcairo2-dev libcurl4-openssl-dev gcc make pkg-config fonts-roboto libjansson-dev || { \
printf "$(RED)Error installing dependencies!$(RESET)\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) apt install libcairo2-dev libcurl4-openssl-dev gcc make pkg-config fonts-roboto libjansson-dev\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) apt install libcairo2-dev libcurl4-openssl-dev gcc make pkg-config fonts-roboto libjansson-dev\n"; \
exit 1; \
}; \
;; \
fedora) \
printf "$(GREEN)Installing dependencies for Fedora...$(RESET)\n"; \
$(SUDO) dnf install -y cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts jansson-devel || { \
$(SUDO) dnf install -y cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts jansson-devel || { \
printf "$(RED)Error installing dependencies!$(RESET)\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) dnf install cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts jansson-devel\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) dnf install cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts jansson-devel\n"; \
exit 1; \
}; \
;; \
rhel) \
printf "$(GREEN)Installing dependencies for RHEL/CentOS...$(RESET)\n"; \
$(SUDO) yum install -y cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts jansson-devel || { \
$(SUDO) yum install -y cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts jansson-devel || { \
printf "$(RED)Error installing dependencies!$(RESET)\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) yum install cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts jansson-devel\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) yum install cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts jansson-devel\n"; \
exit 1; \
}; \
;; \
opensuse) \
printf "$(GREEN)Installing dependencies for openSUSE...$(RESET)\n"; \
$(SUDO) zypper install -y cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts libjansson-devel || { \
$(SUDO) zypper install -y cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts libjansson-devel || { \
printf "$(RED)Error installing dependencies!$(RESET)\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) zypper install cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts libjansson-devel\n"; \
printf "$(YELLOW)Please run manually:$(RESET) $(SUDO) zypper install cairo-devel libcurl-devel gcc make pkg-config google-roboto-fonts libjansson-devel\n"; \
exit 1; \
}; \
;; \
Expand Down Expand Up @@ -284,10 +284,6 @@ install: check-deps $(TARGET)
@install -m644 $(MANIFEST) "$(DESTDIR)/etc/coolercontrol/plugins/coolerdash/manifest.toml"
@sed -i 's/{{VERSION}}/$(VERSION)/g' "$(DESTDIR)/etc/coolercontrol/plugins/coolerdash/manifest.toml"
@sed -i 's/{{VERSION}}/$(VERSION)/g' "$(DESTDIR)/etc/coolercontrol/plugins/coolerdash/ui/index.html"
@install -Dm644 etc/systemd/cc-plugin-coolerdash.service.d/startup-delay.conf "$(DESTDIR)/etc/systemd/system/cc-plugin-coolerdash.service.d/startup-delay.conf"
@install -Dm644 etc/systemd/coolerdash-helperd.service "$(DESTDIR)/usr/lib/systemd/system/coolerdash-helperd.service"
@printf " $(GREEN)Drop-in:$(RESET) $(DESTDIR)/etc/systemd/system/cc-plugin-coolerdash.service.d/startup-delay.conf\n"
@printf " $(GREEN)Service:$(RESET) $(DESTDIR)/usr/lib/systemd/system/coolerdash-helperd.service\n"
@printf " $(GREEN)Binary:$(RESET) $(DESTDIR)/usr/libexec/coolerdash/coolerdash\n"
@printf " $(GREEN)Config JSON:$(RESET) $(DESTDIR)/etc/coolercontrol/plugins/coolerdash/config.json\n"
@printf " $(GREEN)Web UI:$(RESET) $(DESTDIR)/etc/coolercontrol/plugins/coolerdash/ui/index.html\n"
Expand Down Expand Up @@ -324,8 +320,11 @@ install: check-deps $(TARGET)
@printf "$(YELLOW)Next steps:$(RESET)\n"
@if [ "$(REALOS)" = "yes" ]; then \
$(SUDO) systemctl daemon-reload 2>/dev/null || true; \
$(SUDO) systemctl enable --now coolerdash-helperd.service 2>/dev/null || true; \
$(SUDO) systemctl restart coolercontrold.service 2>/dev/null || true; \
$(SUDO) systemctl restart cc-plugin-coolerdash.service 2>/dev/null || true; \
$(SUDO) systemctl stop coolerdash-helperd.service 2>/dev/null || true; \
$(SUDO) systemctl disable coolerdash-helperd.service 2>/dev/null || true; \
$(SUDO) rm -f /usr/lib/systemd/system/coolerdash-helperd.service; \
fi
@printf " $(PURPLE)Reload systemd:$(RESET) systemctl daemon-reload\n"
@printf " $(PURPLE)Restart CoolerControl:$(RESET) systemctl restart coolercontrold.service\n"
Expand Down
11 changes: 2 additions & 9 deletions PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,20 +1,18 @@
# Maintainer: damachin3 (damachine3 at proton dot me)
# Website: https://github.com/damachine/coolerdash

# This PKGBUILD is for building the coolerdash package from local source.
# It assumes the source code is already present in the current directory.

pkgname=coolerdash
pkgver=$(cat VERSION)
pkgrel=1
provides=('coolerdash-git')
replaces=('coolerdash-git')
conflicts=('coolerdash-git')
pkgdesc="Monitor telemetry data on an AIO liquid cooler with an integrated LCD display"
pkgdesc="Plug-in for CoolerControl that extends the LCD functionality with additional features"
arch=('x86_64')
url="https://github.com/damachine/coolerdash"
license=('MIT')
depends=('cairo' 'coolercontrol' 'jansson' 'libcurl-gnutls' 'ttf-roboto')
depends=()
makedepends=('gcc' 'make' 'pkg-config' 'git')
optdepends=()
backup=('etc/coolercontrol/plugins/coolerdash/config.json')
Expand Down Expand Up @@ -56,9 +54,6 @@ build() {
cp -a etc/applications/coolerdash.desktop "${srcdir}/etc/applications/"
cp -a etc/icons/coolerdash.svg "${srcdir}/etc/icons/"
cp -a etc/udev/rules.d/99-coolerdash.rules "${srcdir}/etc/udev/rules.d/"
mkdir -p "${srcdir}/etc/systemd/cc-plugin-coolerdash.service.d"
cp -a etc/systemd/coolerdash-helperd.service "${srcdir}/etc/systemd/"
cp -a etc/systemd/cc-plugin-coolerdash.service.d/startup-delay.conf "${srcdir}/etc/systemd/cc-plugin-coolerdash.service.d/"
}

check() {
Expand Down Expand Up @@ -96,8 +91,6 @@ package() {
install -Dm644 "${srcdir}/etc/applications/coolerdash.desktop" "${pkgdir}/usr/share/applications/coolerdash.desktop"
install -Dm644 "${srcdir}/etc/udev/rules.d/99-coolerdash.rules" "${pkgdir}/usr/lib/udev/rules.d/99-coolerdash.rules"
install -Dm644 "${srcdir}/etc/icons/coolerdash.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/coolerdash.svg"
install -Dm644 "${srcdir}/etc/systemd/coolerdash-helperd.service" "${pkgdir}/usr/lib/systemd/system/coolerdash-helperd.service"
install -Dm644 "${srcdir}/etc/systemd/cc-plugin-coolerdash.service.d/startup-delay.conf" "${pkgdir}/etc/systemd/system/cc-plugin-coolerdash.service.d/startup-delay.conf"

install -Dm644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.2.6
3.0.0
4 changes: 2 additions & 2 deletions aur/.SRCINFO
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
pkgbase = coolerdash-git
pkgdesc = Monitor telemetry data on an AIO liquid cooler with an integrated LCD display
pkgver =
pkgdesc = Plug-in for CoolerControl that extends the LCD functionality with additional features
pkgver =
pkgrel = 1
url = https://github.com/damachine/coolerdash
install = coolerdash.install
Expand Down
5 changes: 1 addition & 4 deletions aur/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
# Maintainer: damachin3 (damachine3 at proton dot me)
# Website: https://github.com/damachine/coolerdash

pkgname=coolerdash-git
pkgver=
pkgrel=1
provides=('coolerdash')
replaces=('coolerdash')
conflicts=('coolerdash')
pkgdesc="Monitor telemetry data on an AIO liquid cooler with an integrated LCD display"
pkgdesc="Plug-in for CoolerControl that extends the LCD functionality with additional features"
arch=('x86_64')
url="https://github.com/damachine/coolerdash"
license=('MIT')
Expand Down Expand Up @@ -77,8 +76,6 @@ package() {
install -Dm644 "${srcdir}/${pkgname}/etc/applications/coolerdash.desktop" "${pkgdir}/usr/share/applications/coolerdash.desktop"
install -Dm644 "${srcdir}/${pkgname}/etc/udev/rules.d/99-coolerdash.rules" "${pkgdir}/usr/lib/udev/rules.d/99-coolerdash.rules"
install -Dm644 "${srcdir}/${pkgname}/etc/icons/coolerdash.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/coolerdash.svg"
install -Dm644 "${srcdir}/${pkgname}/etc/systemd/coolerdash-helperd.service" "${pkgdir}/usr/lib/systemd/system/coolerdash-helperd.service"
install -Dm644 "${srcdir}/${pkgname}/etc/systemd/cc-plugin-coolerdash.service.d/startup-delay.conf" "${pkgdir}/etc/systemd/system/cc-plugin-coolerdash.service.d/startup-delay.conf"

install -Dm644 "${srcdir}/${pkgname}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
21 changes: 9 additions & 12 deletions aur/coolerdash.install
Original file line number Diff line number Diff line change
Expand Up @@ -40,39 +40,36 @@ post_install() {
udevadm trigger --subsystem-match=usb
fi

# Migrate helperd from /etc to /usr/lib
# Remove legacy helperd service (no longer part of this project)
rm -f /etc/systemd/system/multi-user.target.wants/coolerdash-helperd.service
rm -f /etc/systemd/system/coolerdash-helperd.service
rm -f /usr/lib/systemd/system/coolerdash-helperd.service

systemctl daemon-reload

# Enable helperd
if systemctl list-unit-files coolerdash-helperd.service | grep -q coolerdash-helperd; then
systemctl enable --now coolerdash-helperd.service || echo "Note: coolerdash-helperd.service failed. Enable manually."
fi

# Restart CoolerControl
if systemctl list-unit-files coolercontrold.service | grep -q coolercontrold; then
systemctl restart coolercontrold.service || echo "Note: CoolerControl restart failed."
fi

# Restart plugin service
if systemctl list-unit-files cc-plugin-coolerdash.service | grep -q cc-plugin-coolerdash; then
systemctl restart cc-plugin-coolerdash.service || echo "Note: Plugin restart failed."
fi

echo "================================================================"
echo "CoolerDash installed successfully."
echo "================================================================"
}

post_upgrade() {
# Migrate helperd from /etc to /usr/lib
# Remove legacy helperd service (no longer part of this project)
rm -f /etc/systemd/system/multi-user.target.wants/coolerdash-helperd.service
rm -f /etc/systemd/system/coolerdash-helperd.service
rm -f /usr/lib/systemd/system/coolerdash-helperd.service

systemctl daemon-reload

# Enable helperd
if systemctl list-unit-files coolerdash-helperd.service | grep -q coolerdash-helperd; then
systemctl enable --now coolerdash-helperd.service || echo "Note: coolerdash-helperd.service failed. Enable manually."
fi

# Restart plugin
if systemctl list-unit-files cc-plugin-coolerdash.service | grep -q cc-plugin-coolerdash; then
systemctl restart cc-plugin-coolerdash.service || echo "Note: Plugin restart failed."
Expand Down
21 changes: 9 additions & 12 deletions coolerdash.install
Original file line number Diff line number Diff line change
Expand Up @@ -40,39 +40,36 @@ post_install() {
udevadm trigger --subsystem-match=usb
fi

# Migrate helperd from /etc to /usr/lib
# Remove legacy helperd service (no longer part of this project)
rm -f /etc/systemd/system/multi-user.target.wants/coolerdash-helperd.service
rm -f /etc/systemd/system/coolerdash-helperd.service
rm -f /usr/lib/systemd/system/coolerdash-helperd.service

systemctl daemon-reload

# Enable helperd
if systemctl list-unit-files coolerdash-helperd.service | grep -q coolerdash-helperd; then
systemctl enable --now coolerdash-helperd.service || echo "Note: coolerdash-helperd.service failed. Enable manually."
fi

# Restart CoolerControl
if systemctl list-unit-files coolercontrold.service | grep -q coolercontrold; then
systemctl restart coolercontrold.service || echo "Note: CoolerControl restart failed."
fi

# Restart plugin service
if systemctl list-unit-files cc-plugin-coolerdash.service | grep -q cc-plugin-coolerdash; then
systemctl restart cc-plugin-coolerdash.service || echo "Note: Plugin restart failed."
fi

echo "================================================================"
echo "CoolerDash installed successfully."
echo "================================================================"
}

post_upgrade() {
# Migrate helperd from /etc to /usr/lib
# Remove legacy helperd service (no longer part of this project)
rm -f /etc/systemd/system/multi-user.target.wants/coolerdash-helperd.service
rm -f /etc/systemd/system/coolerdash-helperd.service
rm -f /usr/lib/systemd/system/coolerdash-helperd.service

systemctl daemon-reload

# Enable helperd
if systemctl list-unit-files coolerdash-helperd.service | grep -q coolerdash-helperd; then
systemctl enable --now coolerdash-helperd.service || echo "Note: coolerdash-helperd.service failed. Enable manually."
fi

# Restart plugin
if systemctl list-unit-files cc-plugin-coolerdash.service | grep -q cc-plugin-coolerdash; then
systemctl restart cc-plugin-coolerdash.service || echo "Note: Plugin restart failed."
Expand Down
Loading