linuxmint / nemo-extensions

A set of extensions for Nemo
409 stars 150 forks source link

[nemo-preview] Not working on Arch Linux #435

Open imsamuka opened 2 years ago

imsamuka commented 2 years ago

Hello, since #203 is closed, and it apparently is about another issue, I decided to open another. I couldn't make nemo-preview to work, using community/nemo-preview, nor the last version from the repo.

I got this result running nemo-preview from the terminal ``` ~ $ nemo-preview Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/mxf Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/ogg Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/ram Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/sdp Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/vnd.apple.mpegurl Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/vnd.ms-wpl Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/vnd.rn-realmedia Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/x-extension-m4a Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/x-extension-mp4 Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/x-flash-video Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/x-matroska Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/x-netshow-channel Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/x-ogg Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/x-quicktimeplayer Cjs-Message: 00:15:48.227: JS LOG: Register mimetype application/x-shorten Cjs-Message: 00:15:48.228: JS LOG: Register mimetype image/vnd.rn-realpix Cjs-Message: 00:15:48.228: JS LOG: Register mimetype image/x-pict Cjs-Message: 00:15:48.228: JS LOG: Register mimetype misc/ultravox Cjs-Message: 00:15:48.228: JS LOG: Register mimetype text/x-google-video-pointer Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/3gp Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/3gpp Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/dv Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/divx Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/fli Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/flv Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/mp2t Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/mp4 Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/mp4v-es Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/mpeg Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/msvideo Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/ogg Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/quicktime Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/vivo Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/vnd.divx Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/vnd.mpegurl Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/vnd.rn-realvideo Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/vnd.vivo Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/webm Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-anim Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-avi Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-flc Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-fli Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-flic Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-flv Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-m4v Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-matroska Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-mpeg Cjs-Message: 00:15:48.228: JS LOG: Register mimetype video/x-mpeg2 Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-ms-asf Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-ms-asx Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-msvideo Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-ms-wm Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-ms-wmv Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-ms-wmx Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-ms-wvx Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-nsv Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-ogm+ogg Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-theora+ogg Cjs-Message: 00:15:48.229: JS LOG: Register mimetype video/x-totem-stream Cjs-Message: 00:15:48.229: JS LOG: Register mimetype audio/x-pn-realaudio Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/3gpp Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/ac3 Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/AMR Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/AMR-WB Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/basic Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/flac Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/midi Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/mp2 Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/mp4 Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/mpeg Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/ogg Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/prs.sid Cjs-Message: 00:15:48.230: JS LOG: Register mimetype audio/vnd.rn-realaudio Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-aiff Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-ape Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-flac Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-gsm Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-it Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-m4a Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-matroska Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-mod Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-mp3 Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-mpeg Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-ms-asf Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-ms-asx Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-ms-wax Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-ms-wma Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-musepack Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-pn-aiff Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-pn-au Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-pn-wav Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-pn-windows-acm Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-realaudio Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-real-audio Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-s3m Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-sbc Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-speex Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-stm Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-tta Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-wav Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-wavpack Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-vorbis Cjs-Message: 00:15:48.231: JS LOG: Register mimetype audio/x-vorbis+ogg Cjs-Message: 00:15:48.232: JS LOG: Register mimetype audio/x-xm Cjs-Message: 00:15:48.232: JS LOG: Register mimetype application/x-flac Cjs-Message: 00:15:48.232: JS LOG: Register mimetype text/html Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/postscript Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-bzpostscript Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-gzpostscript Cjs-Message: 00:15:48.418: JS LOG: Register mimetype image/x-eps Cjs-Message: 00:15:48.418: JS LOG: Register mimetype image/x-bzeps Cjs-Message: 00:15:48.418: JS LOG: Register mimetype image/x-gzeps Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/oxps Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/vnd.ms-xpsdocument Cjs-Message: 00:15:48.418: JS LOG: Register mimetype image/tiff Cjs-Message: 00:15:48.418: JS LOG: Register mimetype image/vnd.djvu Cjs-Message: 00:15:48.418: JS LOG: Register mimetype image/vnd.djvu+multipage Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/pdf Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-bzpdf Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-gzpdf Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-xzpdf Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-ext-pdf Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-cbr Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-cbz Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-cb7 Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/x-cbt Cjs-Message: 00:15:48.418: JS LOG: Register mimetype application/vnd.comicbook+zip Cjs-Message: 00:15:48.419: JS LOG: Register mimetype image/* Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/x-dvi Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/x-bzdvi Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/x-gzdvi Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/vnd.oasis.opendocument.text Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/vnd.oasis.opendocument.presentation Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/vnd.oasis.opendocument.spreadsheet Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/vnd.openxmlformats-officedocument.wordprocessingml.document Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/vnd.openxmlformats-officedocument.spreadsheetml.sheet Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/vnd.openxmlformats-officedocument.presentationml.presentation Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/msword Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/vnd.ms-excel Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/vnd.ms-powerpoint Cjs-Message: 00:15:48.419: JS LOG: Register mimetype application/rtf Cjs-Message: 00:15:48.421: JS LOG: Register mimetype application/x-navi-animation Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/png Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/bmp Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/x-bmp Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/x-MS-bmp Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/gif Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/x-icon Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/x-ico Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/x-win-bitmap Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/vnd.microsoft.icon Cjs-Message: 00:15:48.421: JS LOG: Register mimetype application/ico Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/ico Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/icon Cjs-Message: 00:15:48.421: JS LOG: Register mimetype text/ico Cjs-Message: 00:15:48.421: JS LOG: Register mimetype image/jpeg Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-portable-anymap Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-portable-bitmap Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-portable-graymap Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-portable-pixmap Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/tiff Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-xpixmap Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-xbitmap Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-tga Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-icns Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-quicktime Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/qtif Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-wmf Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-adobe-dng Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-canon-cr2 Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-canon-crw Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-nikon-nef Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-olympus-orf Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-pentax-pef Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-sony-arw Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-epson-erf Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-minolta-mrw Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/x-fuji-raf Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/avif Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/heif Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/heic Cjs-Message: 00:15:48.422: JS LOG: Register mimetype image/avif Cjs-Message: 00:15:48.423: JS LOG: Register mimetype image/svg+xml Cjs-Message: 00:15:48.423: JS LOG: Register mimetype image/svg Cjs-Message: 00:15:48.423: JS LOG: Register mimetype image/svg-xml Cjs-Message: 00:15:48.423: JS LOG: Register mimetype image/vnd.adobe.svg+xml Cjs-Message: 00:15:48.423: JS LOG: Register mimetype text/xml-svg Cjs-Message: 00:15:48.423: JS LOG: Register mimetype image/svg+xml-compressed Cjs-Message: 00:15:48.424: JS LOG: Register mimetype text/plain Cjs-Message: 00:15:48.424: JS LOG: Register mimetype application/x-font-ttf Cjs-Message: 00:15:48.424: JS LOG: Register mimetype application/x-font-otf Cjs-Message: 00:15:48.424: JS LOG: Register mimetype application/x-font-pcf Cjs-Message: 00:15:48.424: JS LOG: Register mimetype application/x-font-type1 ```

It is apparently running as intended, but i can only preview something once (selecting a file and pressing SPACEBAR), then nemo-preview returns. As the way it is now, while true; do nemo-preview; done is a quick and dirty workaround, but I think the original solution don't need to reload EVERY mimetype, EVERY single time someone preview something, right?

I am at a loss here, I don't know where to search for more information to solve this. I am assuming nemo is supposed to autostart nemo-preview at some point, "like" nemo-desktop.

What i can do to solve this?

Installed nemo packages ``` ~ $ pacman -Qs nemo local/nemo 5.0.5-1 Cinnamon file manager (Nautilus fork) local/nemo-audio-tab 5.0.0-2 View audio tag information in Nemo properties tab local/nemo-compare 5.0.0-1 (nemo-extensions) Context menu comparison extension for Nemo file manager local/nemo-engrampa 5.0.0-1 Archive management plugin for Nemo using engrampa local/nemo-python 5.0.0-2 Python3 binding for Nemo components local/nemo-share 5.0.0-2 Samba extension for Nemo ```
kikislater commented 2 years ago

It seems to be solved with nemo-preview 5.2.0-2 It works for me ...

imsamuka commented 2 years ago

Sorry for don't keeping this clear, but I already tested the version 5.2.1 and 5.2.0-2, as it didn't update for at least 4 months now.

@kikislater you did something to make it work? In my nemo, it doesn't even show in the plugins preferences page (I also don't know if it is supposed to...). What's your current setup?

kikislater commented 2 years ago

Just moving from mate to nemo then cinamon

imsamuka commented 2 years ago

@kikislater I didn't understand...

kikislater commented 2 years ago

Sorry ! I was on mate since 2019 on this laptop. I just change my Desktop environment from mate to cinamon but before I tried nemo inside mate. So may be it has an influence but I doubt ... (And I will be back in mate as cinamon consumes too much power on battery in comparison to mate, but I will try keeping nemo ... )

imsamuka commented 2 years ago

I see, i guess there's something in Mate and Cinnamon that allow nemo-preview to work properly. I will install some of Mate software to test it.

kikislater commented 2 years ago

I have completely removed it so it should be a preference in dconf

imsamuka commented 2 years ago

I didn't found any dconf preference related. Do you have any services, or programs, always loaded, related to it?

mtwebster commented 2 years ago

Can you try running nemo-preview from a terminal and see if it gives an error? Maybe try previewing a file while doing so.

imsamuka commented 2 years ago

Can you try running nemo-preview from a terminal and see if it gives an error? Maybe try previewing a file while doing so.

On the original post you can see the terminal log. After previewing just one file, it closes. Seems to need something else to work like on Mate/Cinnamon.

mtwebster commented 2 years ago

You don't run nemo-preview on its own. It is a (dbus) service. When you press spacebar on a selected file in nemo, it gets launched in the background and displays a preview of that file. When you close the preview via the window control, or pressing spacebar again, the preview process exits.

So, you can run nemo-preview like you did, then hit spacebar in nemo, like you did, and it'll open a preview window, and once you close the window, the nemo-preview process will exit. This is all normal. It's useful for debugging, but this is not how it's intended to be used.

Just use nemo like normal, and hit spacebar when you want to preview something. That's it. Don't think about the actual nemo-preview process.

imsamuka commented 2 years ago

Just use nemo like normal, and hit spacebar when you want to preview something. That's it. Don't think about the actual nemo-preview process.

@mtwebster It only works when I start the process on my own, that's the problem...

It is a (dbus) service.

I didn't know this. How can I start this dbus service? It works like systemctl enable xxxx.service on systemd?

mtwebster commented 2 years ago

You should have a file org.nemo.Preview.service in /usr/share/dbus-1/services. That should be all that's necessary.

If it's there already (but not working) you can install a program called d-feet - it allows you to debug services like this. Start it from the menu, select 'Session Bus', and search for 'preview': image That entry should appear.

If that service file isn't there, create it:

[D-BUS Service]
Name=org.nemo.Preview
Exec=/usr/bin/nemo-preview
imsamuka commented 2 years ago
$ cat /usr/share/dbus-1/services/org.nemo.Preview.service 
[D-BUS Service] 
Name=org.nemo.Preview 
Exec=/usr/bin/nemo-preview

/usr/bin/nemo-preview is a valid binary. When trying to run through d-feet, i get this:

image

mtwebster commented 2 years ago

I wonder if you're running into https://github.com/linuxmint/nemo-extensions/issues/449

What throws me off is you're saying it doesn't actually crash if you run it from a terminal.

leigh123linux commented 2 years ago

I wonder if you're running into #449

What throws me off is you're saying it doesn't actually crash if you run it from a terminal.

nemo-preview works fine here with 3 gtk versions installed. Is nemo-preview expected to work on other DE's as I thought it required cinnamon or gnome-shell to run?

mtwebster commented 2 years ago

It works ok on ubuntu 22.04 as well. It'll only work with nemo, as it operates with a nemo-specific dbus name. The desktop shouldn't matter as far as I know. Arch may have been updated with something ubuntu or fedora don't have yet which breaks this. It wouldn't be the first time.

imsamuka commented 2 years ago

I tested the newest commit, I have the same problem. But now, how do i uninstall it? :P

Also, there's any way to get more detailed log messages from d-feet? I installed d-spy hoping to get more information, but got a message with even worse details.

mtwebster commented 2 years ago

You can probably uninstall and reinstall with your package manager - it shouldn't care that the files it's uninstalling aren't the same as the ones it originally installed.

You can use dbus-monitor, but it's quite a bit more complicated to filter out info you don't want.

TophC7 commented 1 year ago

This is a fair bit old but mine isn't working either on Arch preview never opens on nemo but the service is there and it also doesn't crash in terminal or anything in fact it shows nothing. Running it in terminal and trying to preview and image does nothing either, so yeah its basically doing nothing 😢 Running on wayland with hyprland

imsamuka commented 1 year ago

It still doesn't work for me, and in the mean time I already reinstalled my arch once. Running X11 with Openbox

imsamuka commented 1 year ago

Actually, i forgot to install nemo-preview again in the new arch, it't working now! About what changed between installs, mostly:

$ paru -Qsq nemo
nemo
nemo-audio-tab
nemo-compare
nemo-engrampa
nemo-ext-git-git
nemo-mediainfo-tab
nemo-preview
nemo-python
nemo-share

But i guess it's something else though. I won't close this yet for @TophC7