CHECKUPDATES(8)

πŸ“¦ version 1.13.1, in arch rolling

πŸ’… CHECKUPDATES(8) β€” the checkupdates page, but make it make sense πŸŽ€

okay so bestie, this is the manual for checkupdates, and it lives in the Pacman-contrib Manual section 8 (system administration commands, iykyk). grab a strawberry drink πŸ“ and let's go.


✨ NAME ✨

checkupdates β€” safely print a list of pending updates 🫢

like, it goes and looks for updates without wrecking your real setup, and then tells you what's pending. iconic behaviour honestly.


🌸 SYNOPSIS 🌸

checkupdates [options]

that's it. that's the whole vibe check. no subcommands, no drama.


πŸ¦‹ DESCRIPTION πŸ¦‹

so here's the tea β˜•: checkupdates checks for pending updates by using a separate pacman database β€” a little temporary one, not your real one β€” and then outputs a list of updates showing the old and new version side by side. cute, informative, no cap.

where does that separate database live? it's in TMPDIR, unless CHECKUPDATES_DB is set, in which case that wins. periodt.

the whole point is the "safely" in the NAME section β€” it's using its own temporary db, not touching your actual system db. very main character energy of it to be honest.

πŸ’– OPTIONS πŸ’–

  • -c, --change β€” check for new available updates only, and print the list of available updates only if it differs from the last time checkupdates was run with that option. so like, it remembers what it told you last time and only speaks up if something changed. lowkey the most useful one ngl.
  • -d, --download β€” download any pending updates to the pacman cache πŸ”₯. it just pulls 'em down, that's the whole job.
  • -h, --help β€” display syntax and command-line options. the classic "what does this do again" button ✨.
  • --nocolor β€” do not colorize output. but heads up bestie: color has to be enabled in pacman.conf for the listing to be colored to begin with, so this one only matters if colors were even on 🌈.
  • -n, --nosync β€” do not sync the temporary database. works best when the temporary database is updated regularly through some other means, such as a cronjob or systemd timer. i.e. if something else already keeps that db fresh, this stops the double work πŸ’œ.
  • -V, --version β€” display version information. πŸŽ€
note: those are two separate short flags β€” -V (capital, version) and -n (lowercase, nosync). not the same letter, don't mix them up πŸ™ˆ.

🧚 ENVIRONMENT 🧚

  • CHECKUPDATES_DB β€” override the default ${TMPDIR:-/tmp}/checkup-db-${UID} temporary database location. yes, the literal default is ${TMPDIR:-/tmp}/checkup-db-${UID} β€” copy it exactly if you're scripting, fr fr.
  • CHECKUPDATES_CHANGE β€” the state file location for the -c/--change option. that's where it remembers what it last showed you πŸ‘‘.
  • TMPDIR β€” override the default /tmp temporary directory.
  • XDG_STATE_HOME β€” override the default $HOME/.local/state state directory.

πŸ’€ ERRORS πŸ’€

on exit, checkupdates will return one of the following error codes. write these down bestie, scripts care about them:

  • 0 β€” normal exit condition. slay, everything's fine ✨.
  • 1 β€” unknown cause of failure. 😭 the vibes are off and we don't know why.
  • 2 β€” no updates are available. not a crash! it's just saying there's nothing to install. go touch grass 🌸.

⭐ SEE ALSO ⭐

pacman(8), pacman.conf(5)

go read those if you want the full lore πŸ¦‹.


πŸ™ˆ BUGS πŸ™ˆ

bugs? you must be kidding; there are no bugs in this software. πŸ’…

but if we happen to be wrong, file an issue with as much detail as possible at:

https://gitlab.archlinux.org/pacman/pacman-contrib/-/issues/new

like, actual detail. logs. steps. the whole thing. we're not psychic 🫢.


πŸ‘‘ AUTHORS πŸ‘‘

current maintainers:

  • Johannes LΓΆthberg <johannes@kyriasis.com>
  • Daniel M. Capella <polyzen@archlinux.org>

for additional contributors, use git shortlog -s on the pacman-contrib.git repository. go give them their flowers 🌸.


btw the em dashes and quotes and everything above? keep the flags and paths exactly as written when you script around this β€” --nocolor has no short form, -V is capital, and that ${TMPDIR:-/tmp}/checkup-db-${UID} default is literally the default, not a placeholder for you to improvise on. iykyk πŸ’œ

and that's the page!! this was Pacman-contrib 1.13.1, dated 2025-12-11, down here in CHECKUPDATES(8) β€” tysm for reading, go update your system responsibly, mwah πŸŽ€πŸ’–βœ¨

πŸ“¦ where this page comes from