Omahub
← All plugins
Q

Reboot Pending

by qadram

Warns when the running kernel no longer matches the installed package and a reboot is recommended.

Security review

No obvious issues detected

Deterministic scan — not a security guarantee

None
Risk level
None
Analyzed commit
ca21687
Scanned
1 month ago

No potentially dangerous behavior detected in the analyzed commit.

Automated analysis only — not a security guarantee.

AI advisory review

No obvious issues detected

Language-model assessment · ~deepseek/deepseek-v4-flash-latest — advisory only

Low
AI risk level
Low
Recommendation
install
Model
~deepseek/deepseek-v4-flash-latest
Analyzed commit
ca21687
Reviewed
1 month ago

The plugin is a bar widget that checks for pending kernel updates and can reboot on user request. It uses safe shell and Python scripts with proper validation. No malicious behavior detected.

How this check works

This review combines the deterministic scan (the rule-based results above) with an independent look at the plugin's code by a language model. The model reads a trimmed sample of the repository's files, the manifest, and the README, then gives a plain-language risk level and a recommendation: install (no notable danger), review (look closer first), or avoid (clearly dangerous).

It runs on the same analyzed commit as the deterministic scan and is strictly advisory — it is not a security guarantee and never blocks a plugin by itself. A human moderator still reviews plugins before they are listed.

AI advisory only — automated analysis, not a security guarantee.

Install
$ omarchy plugin add https://github.com/qadram/omarchy-reboot-pending --enable
System #bar #quickshell #system

Reboot Pending

Reboot Pending panel on Omarchy

Warns when the running Linux kernel no longer matches the package installed by pacman — the classic Arch “you updated linux but have not rebooted yet” case.

Install

From a local checkout:

PLUGIN_ID=io.github.qadram.reboot-pending
PLUGIN_DIR="$HOME/.config/omarchy/plugins/$PLUGIN_ID"
mkdir -p "$PLUGIN_DIR"
cp -a manifest.json BarWidget.qml Panel.qml RebootCheck.js check.sh state.py "$PLUGIN_DIR/"
chmod +x "$PLUGIN_DIR/check.sh" "$PLUGIN_DIR/state.py"
omarchy plugin validate "$PLUGIN_DIR"
omarchy-shell shell rescanPlugins
omarchy plugin enable "$PLUGIN_ID" --section right

When published:

omarchy plugin add https://github.com/qadram/omarchy-reboot-pending.git --enable

Usage

  • Hidden when the running kernel matches the installed one (default).
  • Accent / amber when pacman installed a newer kernel and modules for the running release still exist.
  • Urgent / red when /usr/lib/modules/$(uname -r) is missing.
  • Left click: open the panel (running vs installed, snooze, reboot).
  • Middle click / R: refresh.

Reboot uses systemctl reboot after an in-panel confirmation (session polkit/logind; may prompt depending on your policy).

Configure

Optional settings on the widget entry in ~/.config/omarchy/shell.json:

Key Default Meaning
refreshIntervalSec 600 How often to re-check
kernelPackage "" Override (linux, linux-zen, …) when uname -r is non-standard
notifications true Edge-triggered desktop notifications
hideWhenOk true Hide the icon when no reboot is needed
snoozeHours 2 Duration for “Remind in Nh”

Detection maps uname -r suffixes to packages (-arch → linux, -zen → linux-zen, -lts → linux-lts, -hardened → linux-hardened). Unknown suffixes degrade to “detection unavailable” instead of false positives.

Snooze state lives in ~/.local/state/omarchy-reboot-pending/state.json, read and written only through state.py with O_NOFOLLOW, regular-file, ownership, and size checks (rejects symlinks/FIFOs and oversized files).

Remove

omarchy plugin remove io.github.qadram.reboot-pending
rm -rf ~/.local/state/omarchy-reboot-pending

License

MIT