phw / peek

Simple animated GIF screen recorder with an easy to use interface
GNU General Public License v3.0
10.3k stars 320 forks source link

Startup error on non-GNOME environment #539

Closed tim77 closed 4 years ago

tim77 commented 4 years ago

Hello. Would be nice if we add information and a reason why Peek won't start on non-GNOME DE and when ffmpeg is not installed. For example Fedora users complain that app is broken and not working if they run under Cinnamon DE, see this issue. Easiest way to fix this is adding gnome-shell as hard dependency, but in same time this will annoy non-GNOME users even more since they forced to install many packages and whole GNOME session.

Since silver bullet doesn't exist, would be nice to show some kind of error or information dialog saying why it wouldn't work in the places it wouldn't work and suggesting users install whatever to make it work.

gort818 commented 4 years ago

adding gnome-shell as hard dependency

why? Here it lists ffmpeg which would be needed for non Gnome DE https://github.com/phw/peek#runtime

tim77 commented 4 years ago

why?

Some distros have strictly politics about patented software and ffmpeg no allowed in official repos. In this case Peek is somewhat unique app which can do it job without ffpmeg and and it would be a pity to lose an opportunity installing it from official repos in Fedora for example. Many users don't enable RPM Fusion and against it at all.

mattiaverga commented 4 years ago

adding gnome-shell as hard dependency

why?

As a simple Fedora user, I would expect that a dnf install peek installs peek and every dependency needed to make it work. But, as said, ffmpeg is not allowed to be packaged in Fedora repos, so if I'm running a DE other than Gnome and I only have official Fedora repos enabled, I will end up in clicking the peek icon in my menu and nothing happens. Even running it from CLI it returns a cryptic message Unable to create default screen recorder.

It would be nice to have a check at startup that shows a message dialog if neither gnome-shell or ffmpeg are installed in system.

phw commented 4 years ago

Gnome shell as a dependency does not make sense, since it is not enough for gnomr shell to be installed. This only is used if actually running on gnome shell.

Currently ffmpeg is really a hard requirement. Even when recording on gnome shell ffmpeg will be used for post processing the files for GIF (unless gifski is available) and APNG creation. If you ship peek without ffmpeg you deliver a very reduced product which is unusable in many circumstances.

I can add a message for it and disable GIF / APNG output, but given that Peek is primarily an animated GIF creation tool this is kind of bad.

To be honest I would prefer Fedora not to include peek in their repositories if they can't satisfy a core dependency.

tim77 commented 4 years ago

I can add a message for it and disable GIF / APNG output, but given that Peek is primarily an animated GIF creation tool this is kind of bad.

This could be very useful.

To be honest I would prefer Fedora not to include peek in their repositories if they can't satisfy a core dependency.

What i can suggest is:

phw commented 4 years ago

Peek now will show a dialog if not on gnome-shell and ffmpeg is unavailable.

tim77 commented 4 years ago

@phw this great! Not dialog says:

Unable to initialize default recording backend: no suitable screen recorder found.

Would be nice to add:

Peek requires FFmpeg or running GNOME Shell session.

phw commented 4 years ago

Fair point, I updated the message.