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-11-01 00:21:48 | Low | 2 |
| 2026-10-31 00:07:41 | Low | 2 |
| 2026-10-30 00:29:30 | Low | 2 |
| 2026-10-29 00:13:55 | Low | 2 |
| 2026-10-28 00:06:54 | Low | 2 |
| 2026-10-27 00:23:28 | Low | 2 |
| 2026-10-26 00:12:40 | Low | 2 |
| 2026-10-25 00:20:48 | Low | 2 |
| 2026-10-24 00:14:55 | Low | 2 |
| 2026-10-23 00:02:19 | Low | 2 |
| 2026-10-22 00:13:10 | Low | 2 |
| 2026-10-21 00:12:50 | Low | 2 |
| 2026-10-20 00:10:31 | Low | 2 |
| 2026-10-19 00:03:55 | Low | 2 |
| 2026-10-18 00:06:55 | Low | 2 |
| 2026-10-17 00:21:55 | Low | 2 |
| 2026-10-16 00:12:47 | Low | 2 |
| 2026-10-15 00:28:05 | Low | 2 |
| 2026-10-14 00:06:47 | Low | 2 |
| 2026-10-13 00:23:45 | Low | 2 |