Package Details: informant 0.5.1-1

Git Clone URL: https://aur.archlinux.org/informant.git (read-only, click to copy)
Package Base: informant
Description: An Arch Linux News reader and pacman hook
Upstream URL: https://github.com/bradford-smith94/informant
Keywords: news
Licenses: MIT
Submitter: bradford-smith94
Maintainer: bradford-smith94
Last Packager: bradford-smith94
Votes: 104
Popularity: 3.87
First Submitted: 2018-02-27 18:54 (UTC)
Last Updated: 2024-04-30 01:48 (UTC)

Pinned Comments

bradford-smith94 commented on 2024-04-30 01:59 (UTC) (edited on 2024-04-30 02:01 (UTC) by bradford-smith94)

After a major Python upgrade informant will break with an error likely including something like:

importlib.metadata.PackageNotFoundError: No package metadata was found for informant

This is inconvenient and not ideal, as it will cause all following pacman commands to fail. But since the version of Python that informant was built against is no longer there, this is the way it will be.

In this case, informant simply needs to be rebuilt against the newest Python version. Please do not flag the package out of date. Since v0.4.6 and upgrade/install (rebuild) of just informant itself should not trigger the hook, so you may be able to just force a rebuild of informant. However, this will still fail if rebuilding informant requires pacman to install makedepends. In that case: informant does not block removes, so first run sudo pacman -R informant and then reinstall informant (make sure it forces a rebuilt and doesn't reinstall a cached version).

Further discussion of the Python major version update causing errors can be found at the Github issue: https://github.com/bradford-smith94/informant/issues/40.

Latest Comments

« First ‹ Previous 1 2 3 4 5 Next › Last »

bradford-smith94 commented on 2021-02-09 00:12 (UTC)

@Aphosis no problem, thanks for posting the solution. The PKGBUILD uses python to build and install, I should probably make that directly reference the system python in order to avoid virtualenv issues like you had.

Aphosis commented on 2021-02-08 23:21 (UTC)

@bradford-smith94 Thanks for the quick answer.

Found something odd when listing the files as you suggested: don't know how I managed to do that but the package was built using an old virtualenv of mine.

Had to delete it, remove the cache and reinstall, and now all works fine.

Thanks for the help !

bradford-smith94 commented on 2021-02-08 18:17 (UTC)

@Aphosis it should be in /usr/bin/informant, you can use pacman -Ql informant to show what files have been installed by the package. Did you get any error while installing it?

Aphosis commented on 2021-02-08 17:49 (UTC)

Hi,

First of all thanks for the awesome package.

It looks like informant broke for me a few updates ago, presumably since 0.4 or 0.4.1.

I didn't manage to make it work since then, it blocks pacman updates with a call to execv failed (No such file or directory).

What's weird is that the informant command itself is not available anymore. The current user is in the informant group.

Where should I look for the executable (or Python script) ?

Thanks again.

bradford-smith94 commented on 2020-10-16 14:36 (UTC)

@dslink can you provide an example of what you are trying to do and what error message you are seeing?

dslink commented on 2020-10-16 04:13 (UTC)

the read command is making everything fail even just with pacman no aur helpers

<deleted-account> commented on 2020-08-22 07:39 (UTC)

Oh okay, thanks for the explanation @bradford-smith94. I already have an alias+script in bashrc to update all system+AUR packages and clean orphaned ones etc, so I just add read and check to that before the update/upgrade commands so that it'll always succeed once pacman starts going over the hooks. And in case of install I can set up another alias, I think.

bradford-smith94 commented on 2020-08-21 23:44 (UTC)

@kortewegdevries I tried to make the hook interactive, it was my original idea and intention for the user to be able to read all unread news items and then choose to either continue or stop the transaction, but the pacman source code does not make that possible. When pacman executes a hook it closes stdin, so there is no way to get any input from the user. So doing check and read in the hook is not possible to do in a way that makes sure the user has time to actually read the news.

Since an interactive hook wasn't possible I chose to just have the hook stop updates so that you can have time to read the news before the transaction completes, especially since sometimes the news alerts you to manual intervention needed before/during the update.

In the case that there are more than 1 unread news items, you should use informant read before running an install/update. If you forget, that's fine informant will stop your update with a message like the screenshot you first posted. You can then use informant read and then re-run your update.

In the case that there is exactly 1 unread news item, the hook (check command) will print it and still fail (so you have time to read the news). This way running informant read as a second step is not required, you can just re-run your update.

<deleted-account> commented on 2020-08-19 05:32 (UTC)

Thanks @bradford-smith94. Do you mean I should do informant read on another terminal before running an install/update? Because currently the informant hook prevents pacman from completing if items are not read. And it just checks for new items, doesn't give me an option to read them in middle of a pacman transaction. To avoid this should the hook exec be check and read both?

<deleted-account> commented on 2020-08-19 05:31 (UTC)

Thanks @bradford-smith94. Do you mean I should do informant read on another terminal before running an install/update? Because currently the informant hook prevents pacman from completing if items are not read. And it just checks for new items, doesn't give me an option to read them in middle of a pacman transaction. To avoid this should the hook exec be check and read both.