Optional dependencies are missing for Shutter in Ubuntu 18.04

Bug #1765726 reported by Lonnie Lee Best on 2018-04-20
352
This bug affects 79 people
Affects Status Importance Assigned to Milestone
Shutter
High
Unassigned
libgoo-canvas-perl (Ubuntu)
Wishlist
Unassigned
shutter (Ubuntu)
Wishlist
Unassigned

Bug Description

The ability to edit screenshots using shutter has been broken because Ubuntu 18.04 no longer provides these packages in its repository:

1) libgoo-canvas-perl (needed for edit feature)
2) libgoocanvas-common (needed for edit feature)
3) libgoocanvas3 (needed for edit feature)
4) libgtk2-appindicator-perl (needed for AppIndicator)

To understand the usefulness of this (now missing) feature watch this video:
https://youtu.be/RPkywfQ8BRA

As you can see, Shutter has a streamlined work-flow when it comes to
1) Capturing Screen-shots
2) Editing Screen-shots
3) Sharing screen-shots with others via URL.

It is a wonderfully productive tool for communication. They say a picture is worth a thousand words. I say that a screen-shot edited in shutter is worth 2 thousand words. Plus, it is the fastest way I've seen to accomplish the work-flow shown in the video-link above.

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: ubuntu-desktop 1.417
ProcVersionSignature: Ubuntu 4.15.0-15.16-generic 4.15.15
Uname: Linux 4.15.0-15-generic x86_64
ApportVersion: 2.20.9-0ubuntu5
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
Date: Fri Apr 20 09:05:10 2018
InstallationDate: Installed on 2018-04-17 (2 days ago)
InstallationMedia: Ubuntu 18.04 LTS "Bionic Beaver" - Alpha amd64 (20180416)
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: ubuntu-meta
UpgradeStatus: No upgrade log present (probably fresh install)

A workaround for the broken editor is available and is described here: http://ubuntuhandbook.org/index.php/2018/04/fix-edit-option-disabled-shutter-ubuntu-18-04/

A workaround for the missing AppIndicator icon is to install libappindicator-dev and then do "sudo cpanm Gtk2::AppIndicator".

sudo apt-get install shutter

If you launch shutter from the command line it notifies these warnings:

WARNING: Goo::Canvas/libgoo-canvas-perl is missing --> drawing tool will be disabled!

WARNING: Image::ExifTool is missing --> writing Exif information will be disabled!

WARNING: Gtk2::AppIndicator is missing --> there will be no icon showing up in the status bar when running Unity!

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ubuntu-meta (Ubuntu):
status: New → Confirmed
affects: ubuntu-meta (Ubuntu) → ubuntu
Jeremy Bicha (jbicha) wrote :

https://launchpad.net/ubuntu/+source/libgoo-canvas-perl/+publishinghistory

Deleted on 2018-03-27
(From Debian) RoM; RoQA; unmaintained, no rdeps; https://bugs.debian.org/893757

Jeremy Bicha (jbicha) wrote :

Shutter is in rough shape and unmaintained. It has been removed from Debian Testing and will probably not be included in the next Debian release. It needs to be ported to gtk3 to re-enter Debian Testing.

See also https://bugs.debian.org/870418

affects: ubuntu → libgoo-canvas-perl (Ubuntu)
Photon (michael-kogan) wrote :

Jeremy, well, obviously it has (optional) rdeps, Shutter. :)

Photon (michael-kogan) wrote :

Jeremy, I see, looks, like a PPA for Shutter and its dependencies is a better solution. It has been dropped to AUR (the equivalent of a centralized PPA) in Arch over a year ago. If somebody feels like stepping up for this task, let me know! Can't do this myself since I have no experience with .deb packaging (didn't even manage to update Shutter's official PPA to 0.94...).

After reading Jason Straight's bug-report, perhaps the missing package is not "libgoocanvas2-perl", but "libgoocanvas" instead. He says:

"The only candidate for libgoocanvas is libgoocanvas2-perl, which is not providing necessary components."

source: https://bugs.launchpad.net/ubuntu/+source/shutter/+bug/1764937

Perhaps if we could include the "libgoocanvas" package from 16.04, in the 18.04 repositories, the editing feature would "just work"?

If that code works, "as is", who cares if it is being actively developed? Put it "as is" into the 18.04 repository. Right?

Jeremy Bicha (jbicha) wrote :

Photon, Shutter has a good chance of being removed from Ubuntu soon (perhaps for 18.10). It needs to be ported away from libgnome (ideally to gtk3 and GObject Introspection). I apologize for the inconvenience but libgnome has been deprecated for many years.

Lonnie, libgoo-canvas-perl depends on the old goocanvas (version 1) which has also been removed from Debian and Ubuntu.

Jeremy,

This is such a shame, because there nothing quite as good shutter in Linux (for screenshots).

Watch this video:
https://youtu.be/RPkywfQ8BRA

As you can see, Shutter has a streamlined work-flow when it comes to
1) Capturing Screen-shots
2) Editing Screen-shots
3) Sharing screen-shots with others via URL.

It is a wonderful productively tool for communication. They say a picture is worth a thousand words. I say that a picture edited in shutter is worth 2 thousand words.

description: updated
Photon (michael-kogan) wrote :

Jeremy, unfortunately, Shutter's only developer abandoned it several years ago. It looks like I am the only one who tries to fix it up at least a little bit (mostly by just applying patches which other people submitted, because I don't even know perl). A port to GTK3 is completely out of scope for me, unfortunately...

Photon (michael-kogan) wrote :

Lonnie, I completely agree, I also like Shutter a lot and that's why I am trying to fix it up at least a bit. I think, Shutter can survive till the big distros abandon Xorg and completely shift to Wayland. However, somebody would need to take care of packaging Shutter and its dependencies (which are quite some, unfortunately). I maintain Shutter's PKGBUILD for Arch Linux, so it will hopefully remain available for Arch as long as Xorg is alive. OpenSuse still has Shutter in its repos. Gentoo at least ships the old 0.93.1 version. Debian had Shutter in its repos so far, but now somebody would need to take care of the Debian packaging (maybe via a PPA).

Photon,

Thanks for your noble efforts over the years.

I'm not a windows OS fan, but one thing about windows that is sometimes good, is that you can often take an old exe made for Windows XP and it will often install and function in latest windows OS.

I guess, in Ubuntu, each new version requires new efforts in packaging. With shutter,(and for other dying projects), it would be nice if we could somehow combine all of those dependencies into one large package called "shutter". People will say that's inefficient, but for me, if that all-in-one package was 500MB, I'd still install it (because I have the room, and because I like shutter that much).

Without shutter, I'll have to pipe a ffmpeg screenshot to some less-simple editor, crop it, edit it, save it, and use filezilla to ftp it, and then figure out what the URL is on the ftp site, and then send the link to my recipient. With shutter, all of that could be done in 10 seconds.

I'm no perl guy either. Javascript is my programming language of choice.

In node.js there's a package call desktop-screenshot, and you can capture a screenshot like this:

var screenshot = require('desktop-screenshot');

screenshot("screenshot.png", function(error, complete) {
    if(error)
        console.log("Screenshot failed", error);
    else
        console.log("Screenshot succeeded");
});

That grabs the whole screen (multiple monitors), and saves it to a file, but then you still have to crop it, draw on it, save it, ftp it, and generated the URL.

Shutter accomplished a very quick workflow for all of that; it is not trivial to match it.

Brian Murray (brian-murray) wrote :

*** This is an automated message ***

This bug is tagged needs-packaging which identifies it as a request for a new package in Ubuntu. As a part of the managing needs-packaging bug reports specification, https://wiki.ubuntu.com/QATeam/Specs/NeedsPackagingBugs, all needs-packaging bug reports have Wishlist importance. Subsequently, I'm setting this bug's status to Wishlist.

Changed in libgoo-canvas-perl (Ubuntu):
importance: Undecided → Wishlist

Unfortunately, I've downgraded from 18.04 back to 16.04.4 due to this issue.

Everything else (I use) works in 18.04, but without shutter's edit-feature I cannot communicate as quickly and articulately as I need to for work. Plus, I was unable to find a work-around. So if anyone finds some hack to get this going in 18.04, I'll be checking back here looking for it.

Photon (michael-kogan) wrote :

One possibility to revive Shutter would be to crowdfund a professional to do the necessary development. This worked with Lazarus, a browser extension for saving web forms: https://github.com/lazarus-recovery/lazarus_addon/issues/2 In the case of Lazarus the total money required was about 500$ which was supplied by around 20 users in total. I think, properly organized, this could also be achieved for Shutter.

However, I fear that the amount of money needed for Shutter would be way higher (counting just the number of code lines, Shutter is much more work intensive than just a browser extension). Also, the tasks to do are a lot (port to GTK3, port to Wayland, etc.). Furthermore, even if all of this works out, Shutter will become unmaintained again after the work is done.

Dominique Dumont (domi-dumont) wrote :

Photon, I've done some work to port shutter from VFS to GIO (The dependency on VFS is the main trigger of shutter's removal from Debian. Using gtk2 is less a problem).

See https://github.com/dod38fr/shutter

Unfortunately, my spare time is also taken by upstream maintenance of cme and Config::Model, by packaging Perl6 for Debian, so I've don't have much bandwidth for shutter. I would appreciate if we can share our efforts.

Once shutter and its dependencies are in good shape, I can do the packaging for Debian (I'm a DD part of debian-perl team)

All the best

Photon (michael-kogan) wrote :

Dominique, I would be glad to contribute but as I wrote above (and also in https://bugs.launchpad.net/shutter/+bug/1006290) I don't really know how to help...

Jeremy Bicha (jbicha) wrote :

Dominique, note that Shutter has many other dependency problems than just libgnome2-vfs-perl

https://bugs.debian.org/870418

Sounds like shutter would be a prime candidate for someone to make a snap of? Isn't this the whole reason snaps were created?

Photon (michael-kogan) wrote :

Jason, good idea!

Lonnie, would a snap be a viable solution for you?

As long as the edit and ftp features work, I'm happy to run a snap of shutter.

Maybe a snap would be much easier to maintain too?

With a snap, aren't all the dependencies encapsulated inside on snap-package? I don't care if that snap is 500MB in size, I'd still run it (if it works).

Photon (michael-kogan) wrote :

I never used (not to mention built) snaps before but I will have a look into it in the next few days. Of course, if anybody with some snap experience volunteers to take care of it, please go ahead! :)

Jeremy Bicha (jbicha) wrote :

Photon, feel free to ask for help on the https://snapcraft.io/ forum if you need it.

Nick Anderson (nick-anders0n) wrote :

I have been using shutter for years and this got me today as well after upgrading to 18.04. I found flameshot https://github.com/lupoDharkael/flameshot and it seems to have the fundamentals. Still I prefer shutter, but I thought I would suggest an alternative.

Photon (michael-kogan) wrote :

Hi guys, I have good news and bad news. The bad news is that I still haven't found time to look into the snap thing. The good news is that there are .deb packages for libgoo-calvas-perl available: http://ubuntuhandbook.org/index.php/2018/04/fix-edit-option-disabled-shutter-ubuntu-18-04/ Check it out, does it work for you?

wentworth (pda1to8) wrote :

@Photon, I tried your link, it works for me. Great work.

http://ubuntuhandbook.org/index.php/2018/04/fix-edit-option-disabled-shutter-ubuntu-18-04/

@Lonnie Lee Best (launchpad-startport), you can upgrade back to 18.04 now.

Photon (michael-kogan) wrote :

@wentworth: All thanks goes to the author of the howto and dino99 for posting it in https://bugs.launchpad.net/ubuntu/+source/shutter/+bug/1767807/comments/2 :)

dino99 (9d9) wrote :

hey all shutter fans !!!

snap packaging is indeed something to think about, for the future, but actually system+snaps often do strange things; so better to continue with the existing ppa.

dino99 (9d9) wrote :

As Jeremy have explained the Debian/Ubuntu removal of libgoo-canvas-perl, its a no sense to request a 'packaging' for it.

But you can still download & install the package via 'sudo dpkg -i libgoo-canvas-perl' from:
https://launchpad.net/ubuntu/+source/libgoo-canvas-perl

or better use the ppa :
 https://bugs.launchpad.net/ubuntu/+source/shutter/+bug/1767807/comments/2

Changed in libgoo-canvas-perl (Ubuntu):
status: Confirmed → Invalid
dino99 (9d9) on 2018-04-30
summary: - libgoo-canvas-perl [needs-packaging]
+ Please port to GTK3 & GIO
Changed in shutter:
status: New → Confirmed
dino99 (9d9) on 2018-04-30
affects: shutter → shutter (Ubuntu)
Photon (michael-kogan) on 2018-04-30
summary: - Please port to GTK3 & GIO
+ Optional dependencies are missing for Shutter in Ubuntu 18.04
description: updated
Brian Murray (brian-murray) wrote :

*** This is an automated message ***

This bug is tagged needs-packaging which identifies it as a request for a new package in Ubuntu. As a part of the managing needs-packaging bug reports specification, https://wiki.ubuntu.com/QATeam/Specs/NeedsPackagingBugs, all needs-packaging bug reports have Wishlist importance. Subsequently, I'm setting this bug's status to Wishlist.

summary: - Optional dependencies are missing for Shutter in Ubuntu 18.04
+ [needs-packaging] Optional dependencies are missing for Shutter in
+ Ubuntu 18.04
Changed in shutter (Ubuntu):
importance: Undecided → Wishlist
dino99 (9d9) on 2018-05-01
summary: - [needs-packaging] Optional dependencies are missing for Shutter in
- Ubuntu 18.04
+ Optional dependencies are missing for Shutter in Ubuntu 18.04
description: updated
description: updated
description: updated
Jonathan Kamens (jik) wrote :

Please add libgtk2-appindicator-perl to the list of packages not being provided in Bionic that impact shutter. As described in Bug #1768032, the lack of that package means that the shutter appindicator doesn't work in Bionic.

description: updated
description: updated
tags: added: regression-release
Photon (michael-kogan) wrote :

Here is a more or less complete list of optional dependencies (package names may vary since it is from the Arch Linux PKGBUILD):

optdepends=('gnome-web-photo: web screenshot support'
  'perl-image-exiftool: read and write EXIF data'
  'nautilus-sendto: send screenshots via mail'
  'perl-goo-canvas: editing screenshots'
  'perl-gtk2-appindicator: AppIndicators support'
  'perl-path-class: Imgur and Dropbox upload support'
  'perl-lwp-protocol-https: Imgur and Dropbox upload support'
  'perl-net-oauth: Imgur and Dropbox upload support'
  'bc: 3D Rotate and 3D Reflection plugins support')

Maybe some Ubuntu user could check which of them are missing in 18.04?

description: updated

In Ubuntu 16.04 (where all of Shutter's features work after: sudo apt-get install shutter), here are the listed dependencies (revealing Ubuntu package names):

apt-cache depends shutter
shutter
  Depends: libgtk2-perl
  Depends: libglib-perl
  Depends: libgnome2-perl
  Depends: libgnome2-vfs-perl
  Depends: libgnome2-wnck-perl
  Depends: libgnome2-gconf-perl
  Depends: liblocale-gettext-perl
  Depends: libxml-simple-perl
  Depends: libwww-mechanize-perl
  Depends: libwww-perl
  Depends: perlmagick
    graphicsmagick-libmagick-dev-compat
    libimage-magick-perl
  Depends: libx11-protocol-perl
  Depends: librsvg2-common
  Depends: libfile-basedir-perl
  Depends: libfile-copy-recursive-perl
  Depends: libproc-simple-perl
  Depends: libfile-which-perl
  Depends: libsort-naturally-perl
  Depends: libgtk2-imageview-perl
  Depends: libnet-dbus-perl
  Depends: libgnome2-canvas-perl
  Depends: imagemagick
    graphicsmagick-imagemagick-compat
    imagemagick:i386
  Depends: libgtk2-unique-perl
  Depends: libproc-processtable-perl
  Depends: procps
    procps:i386
  Depends: xdg-utils
  Depends: libpath-class-perl
  Depends: libjson-perl
  Depends: libjson-xs-perl
  Depends: libnet-dropbox-api-perl
  Recommends: libgoo-canvas-perl
  Recommends: libgtk2-appindicator-perl
  Suggests: gnome-web-photo
  Suggests: nautilus-sendto
  Suggests: libimage-exiftool-perl
  Suggests: libnet-dbus-glib-perl

MankyGitt (dnadruff) wrote :

having read through all of the comments in an attempt to try fix / restore Shutter functions after a clean install of 18.04 I too feel that this application has been a cornerstone of essential function in ubuntu / debian distros for years. There does not appear to be anything even close in capability.

I am now considering rolling back to 16.04 also.

Typically when the new LTS arrives there are early teething problems while the apps catch up, but the thread around this app is that no-one loves it enough (with the skills required) to bring it forward to the new architecture.

A crowd funded option will potentially get the application overhauled. I'd support this.

Photon (michael-kogan) wrote :

@MankyGitt: Did you try the workarounds described in the initial bug report?

MankyGitt (dnadruff) wrote :

@Photon: Thank you for pointing out that workaround. I can confirm that following that procedure has resurrected the Shutter edit function.

For anyone else following through here, if you cannot get Shutter operational again, you may want to try out Flameshot. I evaluated various screen grabbing apps and this was the most functional (as far as a Shutter user is concerned). Once you figure out how to invoke it, it works pretty well. The features that it doesn't have which Shutter offers are:
- no Text markup tool
- no "redo last screenshot" which I find extremely handy in my line of work.

Jeremy Bicha (jbicha) wrote :

Photon, I fixed the title for that other bug. I intended it to be for 18.10 but that wasn't what I originally wrote. Sorry!

Photon (michael-kogan) wrote :

Thanks for clarification! Still, this is important information.

To give everybody an update: I asked for support at the snapcraft.io forums, however got no reply at some point (maybe my questions were stupid, that is, indicated lack of research effort, but I had no time to learn everything by myself back then). I will try to revive the topic now and see if I can creat a snap eventually...

That would be great Photon. I rely on Shutter as there are no good
alternatives that stand up in functionality.

On Mon, May 14, 2018 at 5:55 PM Photon <email address hidden> wrote:

> Thanks for clarification! Still, this is important information.
>
> To give everybody an update: I asked for support at the snapcraft.io
> forums, however got no reply at some point (maybe my questions were
> stupid, that is, indicated lack of research effort, but I had no time to
> learn everything by myself back then). I will try to revive the topic
> now and see if I can creat a snap eventually...
>
> --
> You received this bug notification because you are a member of Shutter
> Team, which is subscribed to shutter in Ubuntu.
> https://bugs.launchpad.net/bugs/1765726
>
> Title:
> Optional dependencies are missing for Shutter in Ubuntu 18.04
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/ubuntu/+source/libgoo-canvas-perl/+bug/1765726/+subscriptions
>

Photon (michael-kogan) wrote :

This is the thread on the snapcraft.io forums, in case anybody wants to follow it (or has some idea about snaps and can give me some support). :)

Photon (michael-kogan) on 2018-05-31
Changed in shutter:
status: New → Confirmed
importance: Undecided → High
Edmund Laugasson (ed-lau) wrote :

In Ubuntu 18.04 LTS the repository https://launchpad.net/~shutter/+archive/ubuntu/ppa cannot be used as there are newest packages already in main Ubuntu repositories (universe/graphics). The editing requirement package libgoo-canvas-perl exist in Ubuntu 16.04 LTS but not in 18.04 LTS. There in Ubuntu 18.04 LTS is already the package libgoocanvas2-perl but this did not help as Shutter 0.94 does not recognize that package and "Edit" button is greyed out. What would be the solution? E.g. here https://itsfoss.com/shutter-edit-button-disabled/ is still offered old Ubuntu 16.04 LTS packages which do not exist anymore under Ubuntu 18.04 nor Linux Mint 19.

Edmund Laugasson (ed-lau) wrote :

Have to mention that under Ubuntu 18.04 LTS that workaround still is problematic as there will be only black screen and cannot do screenshots. Editing works but useless as whole program is rendering to useless state as there will be black screen. Tested also under Linux Mint 19 MATE (based on Ubuntu 18.04 LTS) and there worked as expected and also system tray icon is there. MATE is basically GNOME2 so you need to hack the applet in order to see system tray icon under GNOME3.

Stephan (cpjack) wrote :

It's a shame ! Shutter helped me alot and everyone was really stunned by its features like blurr areas and to add self iterative stamps

MankyGitt (dnadruff) wrote :

I'm using it happily on 18.04.
I followed the work around on this forum and I have full function.

Regards

> On 12 Jul 2018, at 5:12 am, Stephan <email address hidden> wrote:
>
> It's a shame ! Shutter helped me alot and everyone was really stunned by
> its features like blurr areas and to add self iterative stamps
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (1765185).
> https://bugs.launchpad.net/bugs/1765726
>
> Title:
> Optional dependencies are missing for Shutter in Ubuntu 18.04
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/shutter/+bug/1765726/+subscriptions

ldmpub (ldmpub) wrote :

Thanks to all for these clear explanations => it's time to quit Shutter for me.
I have replace it by deepin-screenshot: it takes screenshots, allows annotations and it's very easy to use (under Xubuntu it's available in official repo).

See project is here: https://cr.deepin.io/#/admin/projects/deepin-screenshot

David Dombrowsky (davek) wrote :

I hope we can figure this one out. Shutter is simple and quite essential.

Since the libraries exist in artful, and are compatible with bionic, what's preventing them from just being recompiled and set to release in bionic?

Jeremy Bicha (jbicha) on 2018-10-13
Changed in shutter (Ubuntu):
status: Confirmed → Invalid
Jeremy Bicha (jbicha) wrote :

I am closing the Ubuntu bugs here. Shutter was removed from Ubuntu 18.10 and we don't intend to bring back the removed libraries to Ubuntu 18.04 LTS.

Well, the bright side is that 16.04.5 will be supported until 2021. I'll be where shutter works.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.