gnome-mode-shift-git
Package builds from its own GitHub repo, installs systemd user units and shell scripts to standard system paths, and the .install hook only prints informational messages; the flagged 'privileged install' is just placing a NetworkManager dispatcher script (normal for such utilities) with no actual sudo/setuid/self-update logic present.
Triggered rules
llm_review
The static rules flagged this MEDIUM, but an AI model (anthropic/claude-sonnet-4.6) reviewed the full PKGBUILD and judged it LOW (confidence 70%): Package builds from its own GitHub repo, installs systemd user units and shell scripts to standard system paths, and the .install hook only prints informational messages; the flagged 'privileged install' is just placing a NetworkManager dispatcher script (normal for such utilities) with no actual sudo/setuid/self-update logic present.
1 higher static finding superseded - not the current verdict (shown for transparency)
privileged_install
The package grants elevated privileges or installs an update path outside pacman: a /etc/sudoers.d rule (often passwordless), a setuid/setgid binary, or a self-update script/service that can fetch and run future code with no checksum verification. The initial install may be verified, but the ongoing privilege + update surface is a real supply-chain / privilege-escalation risk.
-
PKGBUILD:30
install -Dm644 $srcdir/$pkgname/app/home/config/systemd/user/auto-update-gnome-theme.path "$pkgdir/usr/lib/systemd/user/auto-update-gnome-theme.path" -
PKGBUILD:31
install -Dm644 $srcdir/$pkgname/app/home/config/systemd/user/auto-update-gnome-theme.service "$pkgdir/usr/lib/systemd/user/auto-update-gnome-theme.service" -
PKGBUILD:39
install -Dm755 $srcdir/$pkgname/app/home/local/bin/auto-update-gnome-theme.sh "$pkgdir/usr/lib/gnome-mode-shift/bin/auto-update-gnome-theme.sh" -
.install:4
echo -e "\`systemctl --user enable --now gnome-mode-shift.service gnome-mode-shift.timer auto-update-gnome-theme.path auto-update-gnome-theme.service stop-mode-shift-timer.service\`"
PKGBUILD
3 offending line(s) highlighted# Maintainer: Christopher McAdams <mca.christopher@gmail.com>
pkgname="gnome-mode-shift-git"
pkgver=r14.6d27b63
pkgrel=1
pkgdesc="::Rolling release:: A Small utility to switch the selected preferred mode."
arch=('any')
url="https://github.com/christophermca/gnome-mode-shift/"
license=('GPL-1.0-or-later')
makedepends=('git')
provides=('gnome-mode-shift.service' 'auto-update-gnome-theme.path' 'auto-update-gnome-theme.service' 'stop-mode-shift-timer.service')
conflicts=( 'alacritty-use-theme-with-redshift'
'alacritty-use-theme-with-redshift-git')
source=("$pkgname::git+https://github.com/christophermca/gnome-mode-shift.git/")
sha256sums=('SKIP')
depends=( 'bash'
'redshift')
pkgver() {
cd "$pkgname"
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
}
package() {
cd "$pkgname"
# options and directives that can be overridden
pkgdesc="::Rolling release:: Changes gnomes perferred mode based on sunrise/sunset"
install=gnome-mode-shift-git.install
# systemd units
install -Dm644 $srcdir/$pkgname/app/home/config/systemd/user/auto-update-gnome-theme.path "$pkgdir/usr/lib/systemd/user/auto-update-gnome-theme.path"
install -Dm644 $srcdir/$pkgname/app/home/config/systemd/user/auto-update-gnome-theme.service "$pkgdir/usr/lib/systemd/user/auto-update-gnome-theme.service"
install -Dm644 $srcdir/$pkgname/app/home/config/systemd/user/gnome-mode-shift.service "$pkgdir/usr/lib/systemd/user/gnome-mode-shift.service"
install -Dm644 $srcdir/$pkgname/app/home/config/systemd/user/gnome-mode-shift.timer "$pkgdir/usr/lib/systemd/user/gnome-mode-shift.timer"
install -Dm644 $srcdir/$pkgname/app/home/config/systemd/user/stop-mode-shift-timer.service "$pkgdir/usr/lib/systemd/user/stop-mode-shift-timer.service"
# scripts
install -Dm755 $srcdir/$pkgname/app/home/local/bin/get-sunrise-sunset.sh "$pkgdir/usr/lib/gnome-mode-shift/bin/get-sunrise-sunset.sh"
install -Dm755 $srcdir/$pkgname/app/home/local/bin/test-network-connection.sh "$pkgdir/usr/lib/gnome-mode-shift/bin/test-network-connection.sh"
install -Dm755 $srcdir/$pkgname/app/home/local/bin/auto-update-gnome-theme.sh "$pkgdir/usr/lib/gnome-mode-shift/bin/auto-update-gnome-theme.sh"
# NetworkManager requires all dispatcher scripts to be owned by root
install -Dm755 $srcdir/$pkgname/app/home/local/bin/revive-gnome-mode-shift.sh "$pkgdir/usr/lib/NetworkManager/dispatcher.d/revivie-gnome-mode-shift.sh"
# vars
install -Dm644 $srcdir/$pkgname/app/home/local/gnome-mode-shift/shared-variables.sh "$pkgdir/usr/lib/gnome-mode-shift/shared-variables.sh"
# Create directory with 755 permissins
# Includes vars file
# install -Dm755 -o $USER $srcdir/$pkgname/app/home/local/gnome-mode-shift/is-day-or-night "$pkgdir/$XDG_STATE_HOME/gnome-mode-shift/is-day-or-night"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 00:19:22 | Low | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 00:04:09 | Low | 2 |
| 2026-09-08 00:18:08 | Low | 2 |
| 2026-09-07 00:30:15 | Low | 2 |
| 2026-09-06 00:17:06 | Low | 2 |
| 2026-09-05 00:16:27 | Low | 2 |
| 2026-09-04 00:03:13 | Low | 2 |
| 2026-09-03 00:15:47 | Low | 2 |
| 2026-09-02 00:02:31 | Low | 2 |
| 2026-09-01 00:11:19 | Low | 2 |
| 2026-08-31 00:19:57 | Low | 2 |
| 2026-08-30 00:04:14 | Low | 2 |
| 2026-08-29 00:29:17 | Low | 2 |