INFORMANT(1)
π INFORMANT(1) β the informant manual, but make it cute π
okay so bestie, you know how Arch Linux drops News items and you're supposed to read them before you pacman -Syu and break your whole system? yeah. this is the girl who handles that for you. it's informant, the Arch Linux News reader and pacman hook, and she's literally the main character of your update routine π
β¨ SYNOPSIS β¨
informant [options] check
informant [options] list [--reverse --unread]
informant [options] read [<item> | --all]
π¦ DESCRIPTION π¦
informant has three modes of operation, and they're giving very much "three moods, one icon": check, list and read. that's it, that's the vibe.
π COMMANDS π
checkβ checks for unread Arch Linux News items and bails out with an exit status code, and ngl the code is equal to the number of unread items. so zero unread = zero exit = slay. πlistβ prints out the headlines of the most recent news items (regardless of whether or not they've been read, no judgment). andlisthas two little options of its own, because she contains multitudes:--reverseβ prints the headlines oldest to newest, instead of the default newest to oldest. chronological queen π°οΈ--unreadβ prints the headlines of only the unread items. filtering out the noise, we love to see it.
read [<item>|--all]β prints the given news item and marks it as read. <item> can be handed to her as an index (the kind printed by thelistcommand when you don't use the--unreador--reverseoptions) or as a string matching part of the headline of a news item. and heads up:readwill exit with status code255if it doesn't have permission to write to the save file. π
when you run it with neither <item> nor --all, read goes interactive β it prints all the unread news items from oldest to newest and prompts you about whether you want to keep reading. like a little storytime, but for package news π§
--allβ marks all the most recent news items as read without printing them. efficient. no notes.
πΈ OPTIONS πΈ
these are the global options, and the way they're global is that they can be applied to any of the subcommands. universal icon behavior.
-c<cfile>,--config=<cfile>β read configuration from <file>. the configuration and its syntax live down below in CONFIGURATION, keep scrolling bestie π-d,--debugβ prints the debug messages and, key detail, doesn't make changes to the save file. so you can snoop without consequences π-r,--rawβ when printing items, doesn't replace any markup β items get printed exactly as returned by the RSS feed. unfiltered, unbothered, in her raw form β¨-f<file>,--file=<file>β uses <file> as the save location for marking items as read. this is a binary file, fyi.
NOTE: changing the file will not change the file read by the pacman hook, because the pacman hook runs as root. if you want to change that, you gotta do it manually by editing /usr/share/libalpm/hooks/00-informant.hook π
-p<pager>,--pager=<pager>β uses <pager> to display news items. this option overrides the$INFORMANT_PAGERenvironment variable. she said my choice, actually π--no-cacheβ doesn't consider the cache (/var/cache/informant/) when fetching feeds (this could likely result in slower feed fetching but more up to date results). using this may be helpful to verify issues runninginformantdue to the cache. slower but fresher, the tradeoff is real π--clear-cacheβ empties the cache directory (/var/cache/informant/) before fetching the feed(s). clean slate energy π«§--clear-readlistβ empties the save file of read news items (/var/lib/informant.datby default), which means any previously read news items returned in the feed will need to be read again. the news feed only returns a set amount of files, and over time there may end up being items in the save file that are no longer returned when fetching the feed β this option can be used to clean up the save file. basically it's a little reset button π
and like, by clearing the save file and then marking everything as read, you effectively remove all the old items from the save file:
informant --clear-readlist read --all
-h,--helpβ prints the help and exits. your safety net π«Ά-V,--versionβ prints the version information and exits. identity check β
π ENVIRONMENT π
INFORMANT_PAGERβ if$INFORMANT_PAGERis set, its value will be used as the name of the program used to display news items. she'll respect it, but--pageroverrides it (that's a global-option thing up above, iykyk).
π CONFIGURATION π
so informant can be configured to check multiple feeds instead of just the Arch Linux News feed β whether having it do so is actually useful or not is left up to the user π. informant will check for an informantrc.json file in a few places. it checks in this order:
- CLI provided option (
cfile) $HOME/.informantrc.json$XDG_CONFIG_HOME/informantrc.json/etc/informantrc.json- for each directory
$din$XDG_CONFIG_DIRSit will look for$d/informantrc.json
NOTE: IF you want the configuration file to be used in the pacman hook, make sure to use a save location that will be accessible to informant when running as root/sudo. π₯
π§ Configuration Syntax π§
the syntax of informantrc.json is a JSON object containing one key: feeds, which is a list describing the feeds you want informant to check. each feed is represented as a JSON object with the following keys:
name(optional) β used to show which feed each news item is from. a little label, a little name tag π·οΈurl(required) β the feed URL. no url, no feed, them's the rules.title-key(optional) β defaults totitle, the key used to reference the news item title in the feedbody-key(optional) β defaults tosummary, the key used to reference the news item body in the feedtimestamp-key(optional) β defaults topublished, the key used to reference the news item date in the feed
for example, the below informantrc.json will configure informant to check the Arch Linux News feed as well as the Arch Linux 32 News Feed:
{
"feeds": [
{
"name": "Arch News",
"url": "https://archlinux.org/feeds/news",
"title-key": "title",
"body-key": "summary",
"timestamp-key": "published"
},
{
"name": "Arch32 News",
"url": "https://bbs.archlinux32.org/extern.php?action=feed&fid=12&type=atom",
"title-key": "title",
"body-key": "summary",
"timestamp-key": "updated"
}
]
}
β AUTHOR β
Bradford Smith <https://github.com/bradford-smith94> β the icon who built her π
π LICENSE π
MIT. periodt.
π BUGS π
please report bugs at: <https://github.com/bradford-smith94/informant/issues>. she's not perfect, she's just iconic β help her out π«Ά
πΈ SEE ALSO πΈ
alpm-hooks(5) β go read the sister page, she's also important
and that's the whole manual, bestie!! this version is informant-v0.6.0, dated 02 SEPTEMBER 2024, and it ate, no cap πβ¨ mwah π
π¦ where this page comes from
- arch rolling: informant 0.6.0-3 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms