Initial commit: freeze-watcher daemon, GUI, systemd unit, PKGBUILD
This commit is contained in:
commit
d41f861802
10 changed files with 655 additions and 0 deletions
39
packaging/PKGBUILD
Normal file
39
packaging/PKGBUILD
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
# Maintainer: luna <anassaeneroi@pm.me>
|
||||
pkgname=freeze-watcher
|
||||
pkgver=0.1.0
|
||||
pkgrel=1
|
||||
pkgdesc="Continuously samples system state and snapshots detailed diagnostics when freeze conditions are detected"
|
||||
arch=('any')
|
||||
url="https://github.com/luna/freeze-watcher"
|
||||
license=('MIT')
|
||||
depends=('bash' 'systemd' 'python' 'pyside6' 'sysstat' 'procps-ng' 'util-linux')
|
||||
optdepends=('xdg-utils: open log directory from GUI')
|
||||
source=("$pkgname-$pkgver.tar.gz::file://$PWD/../$pkgname-$pkgver.tar.gz")
|
||||
sha256sums=('SKIP')
|
||||
backup=('etc/systemd/system/freeze-watcher.service')
|
||||
|
||||
package() {
|
||||
cd "$srcdir/$pkgname-$pkgver"
|
||||
make DESTDIR="$pkgdir" PREFIX=/usr install
|
||||
}
|
||||
|
||||
post_install() {
|
||||
echo "==> Run 'sudo systemctl enable --now freeze-watcher.service' to start"
|
||||
echo "==> Snapshots will be written to /var/log/freeze-watcher/"
|
||||
echo "==> Launch the GUI from your app menu (Freeze Watcher) or 'freeze-monitor-gui'"
|
||||
}
|
||||
|
||||
post_upgrade() {
|
||||
systemctl daemon-reload
|
||||
if systemctl is-active --quiet freeze-watcher.service; then
|
||||
echo "==> Restart the service to pick up changes:"
|
||||
echo " sudo systemctl restart freeze-watcher.service"
|
||||
fi
|
||||
}
|
||||
|
||||
post_remove() {
|
||||
if systemctl is-enabled --quiet freeze-watcher.service 2>/dev/null; then
|
||||
systemctl disable --now freeze-watcher.service
|
||||
fi
|
||||
echo "==> Logs at /var/log/freeze-watcher/ preserved. Remove manually if desired."
|
||||
}
|
||||
26
packaging/build-package.sh
Executable file
26
packaging/build-package.sh
Executable file
|
|
@ -0,0 +1,26 @@
|
|||
#!/bin/bash
|
||||
# Build a local Arch package from the current source tree.
|
||||
# Usage: ./packaging/build-package.sh
|
||||
|
||||
set -e
|
||||
|
||||
REPO_ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
PKGNAME=freeze-watcher
|
||||
PKGVER=$(awk -F= '/^pkgver=/{print $2}' "$REPO_ROOT/packaging/PKGBUILD")
|
||||
|
||||
cd "$REPO_ROOT"
|
||||
tmp=$(mktemp -d)
|
||||
trap "rm -rf $tmp" EXIT
|
||||
|
||||
# Stage source as a tarball (PKGBUILD expects it as $pkgname-$pkgver.tar.gz)
|
||||
mkdir "$tmp/$PKGNAME-$PKGVER"
|
||||
cp -r src systemd desktop Makefile README.md LICENSE "$tmp/$PKGNAME-$PKGVER/" 2>/dev/null || true
|
||||
tar czf "$tmp/$PKGNAME-$PKGVER.tar.gz" -C "$tmp" "$PKGNAME-$PKGVER"
|
||||
|
||||
cp packaging/PKGBUILD "$tmp/PKGBUILD"
|
||||
cd "$tmp"
|
||||
makepkg -f --noconfirm
|
||||
mv "$PKGNAME-$PKGVER-"*.pkg.tar.* "$REPO_ROOT/"
|
||||
echo
|
||||
echo "Built: $REPO_ROOT/$(ls "$REPO_ROOT" | grep "^$PKGNAME-$PKGVER" | head -1)"
|
||||
echo "Install with: sudo pacman -U <path-to-pkg>"
|
||||
Loading…
Add table
Add a link
Reference in a new issue