Bug 2229623 - Problem with requirement of `/usr/libexec/gcr-ssh-askpass`
Summary: Problem with requirement of `/usr/libexec/gcr-ssh-askpass`
Keywords:
Status: CLOSED DUPLICATE of bug 2188431
Alias: None
Product: Fedora
Classification: Fedora
Component: gnome-keyring
Version: 38
Hardware: Unspecified
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Matthias Clasen
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2180842
TreeView+ depends on / blocked
 
Reported: 2023-08-07 06:14 UTC by Jaroslav Mracek
Modified: 2024-02-12 12:49 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2024-02-12 12:49:10 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Jaroslav Mracek 2023-08-07 06:14:41 UTC
Package gnome-keyring requires: /usr/libexec/gcr-ssh-askpass. 

Why this is a problem:
1. DNF5 stops to download filelists as a default therefore `gnome-keyring` will be not installable
2. It is against Fedora packaging guidelines to require files outside of `/etc`, `/usr/(s)bin`.


Possible solution:
1. use only file provides from  `/etc`, `/usr/(s)bin` (follow packaging guidelines please)
2. Create explicit provider of `/usr/libexec/gcr-ssh-askpass` in `gcr3`
`Provides: /usr/libexec/gcr-ssh-askpass`. This might be required as a temporal solution

Original issue: https://github.com/rpm-software-management/microdnf/issues/135

 

This issue will appear after DNF5 adoption, because DNF5 does not download filelists by default. Packages that requires files are not following Fedora packaging guidelines therefore we should not handle the issue as DNF5 problem. I think we need to do something with the issue to improve an efficiency of Fedora distribution.

Reproducible: Always

Comment 1 Debarshi Ray 2023-08-07 13:38:03 UTC
I took a quick look at this and noticed that the gcr3 RPM 'provides' an empty 'application()':

[rishi@topinka ~]$ rpm --provides -q gcr3
application()
application(gcr-prompter.desktop)
application(gcr-viewer.desktop)
gcr3 = 3.41.1-5.fc38
gcr3(x86-64) = 3.41.1-5.fc38
libgcr-ui-3.so.1()(64bit)

Is that because /usr/libexec/gcr-ssh-askpass doesn't have a matching *.desktop file?

I see that /usr/libexec/gcr-prompter has a matching /usr/share/applications/gcr-prompter.desktop that was added in https://gitlab.gnome.org/GNOME/gcr/-/commit/84999b2e50c9bfe86a1d6b7a56df3ac2299fd4a0 :

commit 84999b2e50c9bfe86a1d6b7a56df3ac2299fd4a0
Author:     Stef Walter <stefw>
AuthorDate: Tue Feb 28 22:02:52 2012 +0100
Commit:     Stef Walter <stefw>
CommitDate: Tue Feb 28 22:06:21 2012 +0100

    Add a desktop file for gcr-prompter
    
     * So that it shows up in the shell correctly
    
    https://bugzilla.gnome.org/show_bug.cgi?id=668535

I wonder if we should do the same for /usr/libexec/gcr-ssh-askpass and depend on 'application(gcr-ssh-askpass)'?

Comment 2 Zbigniew Jędrzejewski-Szmek 2024-02-12 12:49:10 UTC
I think that this is just a misunderstanding, the check must have been done using old data, because the issue was fixed early last year (and the packages in F39 and rawhide do not have the filepath dependency).

*** This bug has been marked as a duplicate of bug 2188431 ***


Note You need to log in before you can comment on or make changes to this bug.