YaST2 xfce "The following packages have not been found on the medium: %F "

hello

i google this error and i dint get a simple reply, and to prevent necro the older threads are closed so if i am lucky this will be on top of google

1 if you are using xfce

2 and click here
http://i.imgur.com/WKD3cHb.png

3 you get a ugly error like this
http://i.imgur.com/Ro8ECb2.png

4 no need to panic is just a typo in the shortcut that is there for about 2 years

5 go to application finder [alt+f2] click view mode
http://i.imgur.com/IReQhLu.png

6 in the search now type “yast”

7 go to “Install/Remove Software” right click-> edit

8 in command remove %F
http://i.imgur.com/qwoe3Vl.png

9 click save

done

(apparently emotes are considered images …and the limit 4 images per post)

It’s a known problem:
http://bugzilla.opensuse.org/show_bug.cgi?id=1087352

A fix is on the way, and actually released already for Leap 15.0. (TBH I’m actually surprised that it would not be in TW yet…)

But, if you modify the application entries yourself using the way you explain, the changes will be saved to your user’s home directory and an update will not affect them.

I just had a look, and the fix is in Tumbleweed already since snapshot 20180517 (released on Sat. May 19th):

==== yast2-packager ====
Version update (4.0.60 -> 4.0.62)

  • Fixed argument handling in the .desktop file for the
    “Install/Remove Software” item (bsc#1087352)
  • Properly process paths containing spaces or special shell
    characters
  • 4.0.62
  • Adapted /dev cleanup at upgrade to work properly with the
    registration rollback (bsc#1089643)
  • 4.0.61

https://lists.opensuse.org/opensuse-factory/2018-05/msg00240.html

So the described workaround should no longer be necessary (on an up-to-date TW installation).

my install was using

openSUSE-Tumbleweed-NET-x86_64-Snapshot20180525-Media.iso

literally 1h before this post

I’m pretty sure “NET” means network install.

You would be correct. Thus, the reason why.

i am confused, the network install dont download the last version ?

following the links posted above by @wolfi323

https://github.com/yast/yast-packager/commit/99eb1566e1c4bbb54127496607ba55a1d1e47742

Exec=/usr/lib/YaST2/bin/sw_single_wrapper **%F**

i dont code but i would say that the issue is still there

The net install should pick up the latest and since the end of the command line shown in your item 8 matches the end of the related line in the “fix” it looks like you have the fix but it doesn’t work for you :’(

According to the .desktop file specifications, %F is supposed to be replaced by the desktop environment with the list of selected files (can be empty).

A number of special field codes have been defined which will be expanded by the file manager or program launcher when encountered in the command line. Field codes consist of the percentage character ("%") followed by an alpha character. Literal percentage characters must be escaped as%%. Deprecated field codes should be removed from the command line and ignored. Field codes are expanded only once, the string that is used to replace the field code should not be checked for field codes itself.

%F A list of files. Use for apps that can open several local files at once. Each file is passed as a separate argument to the executable program.

( https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s07.html )

So having the %F there is not a bug.
The bug was that it was put inside of quotes, which is not allowed. And that has been fixed.

If XFCE does not support %F at all (I cannot tell as I don’t use it nor have it installed), it is a bug in XFCE though.
But you likely would have problems to start a lot of other applications as well in that case.

http://i.imgur.com/LGqWBSP.png

this is from thunar option to open in terminal so it should worn no ?

this is from thunar option to open in terminal so it should worn no ?

I don’t understand that question. I suppose that should read “work” instead of “worn”? :wink:

I don’t use XFCE, and I have no idea if Thunar and the application menu use the same code to handle .desktop files.
Probably not, if it works in one and not the other.

IOW, it may be a bug in the application menu.

But again, if that’s the case, you should have problems with other applications too.
From my system:

$ grep "%F" /usr/share/applications/*
/usr/share/applications/audacity.desktop:Exec=env UBUNTU_MENUPROXY=0 audacity %F
/usr/share/applications/avidemux-gtk.desktop:Exec=avidemux2_gtk %F
/usr/share/applications/avidemux-qt4.desktop:Exec=avidemux2_qt4 %F
/usr/share/applications/dia.desktop:Exec=dia %F
/usr/share/applications/emacs.desktop:Exec=emacs %F
/usr/share/applications/gcm-import.desktop:Exec=/usr/bin/gcm-import %F
/usr/share/applications/geeqie.desktop:Exec=geeqie -r %F
/usr/share/applications/ghex.desktop:Exec=ghex %F
/usr/share/applications/glade-3.desktop:Exec=glade-3 %F
/usr/share/applications/inkscape.desktop:Exec=inkscape %F
grep: /usr/share/applications/kde4: Ist ein Verzeichnis
/usr/share/applications/Kino.desktop:Exec=kino %F
/usr/share/applications/mplayer.desktop:Exec=gmplayer %F
/usr/share/applications/org.qt-project.qtcreator.desktop:Exec=qtcreator %F
/usr/share/applications/PTBatcherGUI.desktop:Exec=PTBatcherGUI %F
/usr/share/applications/pto_gen.desktop:Exec=pto_gen %F
grep: /usr/share/applications/screensavers: Ist ein Verzeichnis
/usr/share/applications/vmware-workstation.desktop:Exec=/usr/bin/vmware %F
/usr/share/applications/xv.desktop:Exec=xv %F
grep: /usr/share/applications/YaST2: Ist ein Verzeichnis
/usr/share/applications/yast2-packager.desktop:Exec=xdg-su -c "/sbin/yast2 sw_single %F"
/usr/share/applications/zenmap.desktop:Exec=zenmap %F
/usr/share/applications/zenmap-root.desktop:Exec=/usr/share/zenmap/su-to-zenmap.sh %F

And that’s without the many KDE applications I have installed… :wink:

sorry is a typo and at this point i cant edit the post

i dont have a issue with any other app

grep "%F" /usr/share/applications/*                                                                                                             
/usr/share/applications/PlayOnLinux.desktop:Exec=playonlinux %F
/usr/share/applications/pragha.desktop:Exec=pragha %F
/usr/share/applications/ristretto.desktop:Exec=ristretto %F
grep: /usr/share/applications/screensavers: Is a directory
/usr/share/applications/sublime_text.desktop:Exec=/opt/sublime_text/sublime_text %F
/usr/share/applications/Thunar-bulk-rename.desktop:Exec=/usr/lib/Thunar/ThunarBulkRename %F
/usr/share/applications/thunar.desktop:Exec=thunar %F
/usr/share/applications/Thunar-folder-handler.desktop:Exec=thunar %F
grep: /usr/share/applications/YaST2: Is a directory
/usr/share/applications/yast2-packager.desktop:# we cannot use xdg-su -c "/sbin/yast2 sw_single %F"
/usr/share/applications/yast2-packager.desktop:# directly here as %F must not be used inside a quoted argument
/usr/share/applications/yast2-packager.desktop:Exec=/usr/lib/YaST2/bin/sw_single_wrapper %F

I have found that NET installs are not guaranteed to access <all> repositories, so the default NET install might be a touch behind.

To enable access to <all> latest packages,
I’ve found that you have to “enable online sources.”

Then, you should be golden.

TSU