Snap works on one machine but not on another

Yeah I got that fixed, thanks! But now, as you’ll see I’ve got a new problem…a good one IMO.

As requested by @popey, I have included the output (and a video demonstrating the snap actually starting up and “running”) but with a segmentation fault in --devmode

(clementine:25730): GStreamer-CRITICAL **: gst_object_unref: assertion 'object != NULL' failed
21:07:14.159 ERROR logging:56                       g_object_set: assertion 'G_IS_OBJECT (object)' failed 
Segmentation fault (core dumped)

Here’s a link to my YouTube video: https://youtu.be/UDw9wVsbR4U?t=6m47s

Thanks. Can you please post your latest yaml and we can take a look.

After adding gstreamer1.0-plugins-bad to support my m4a audio and compiling the snap from the yaml in your github it worked fine for me

name: clementine-snap # check to see if it's available
version: '1.3.1.22' # check the version number of clementine's packages
summary: Clementine is a modern music player. # 79 char long summary
description: |
  Clementine is a modern music player and library organizer for Windows, Linux and Mac OS X.
grade: devel # must be 'stable' to release into candidate/stable channels
confinement: devmode # use 'strict' once you have the right plugs

apps:
  clementine:
    command: desktop-launch $SNAP/bin/clementine 
    desktop: share/applications/clementine.desktop
    plugs:
      - network
      - home
      - pulseaudio
      - unity7
      - x11
      - gsettings
      - optical-drive
      - removable-media
      - screen-inhibit-control
      - alsa
  
parts:
  my-part:
    # See 'snapcraft plugins'
    build-packages:

       [liblastfm-dev,libtag1-dev,gettext,libboost-dev,libboost-serialization-dev,libqt4-dev,qt4-dev-tools,libqt4-opengl-dev,cmake,libgstreamer1.0-dev,libgstreamer-plugins-base1.0-dev,libglew1.5-dev,libqjson-dev,libgpod-dev,libplist-dev,libusbmuxd-dev,libmtp-dev,libcdio-dev,protobuf-compiler,libprotobuf-dev,libcrypto++-dev,libfftw3-dev,libsparsehash-dev,libsqlite3-dev,libpulse-dev,libqtwebkit-dev,libechonest-dev,libchromaprint-dev,libqca2-dev]
  
    stage-packages: 
      - libc6
      - libcdio13
      - libchromaprint0
      - libcrypto++9v5
      - libechonest2.3
      - libfftw3-double3
      - libgcc1 
      - libgl1-mesa-glx
      - libgl1
      - libglew1.13
      - libglib2.0-0
      - libgpod4
      - libgstreamer-plugins-base1.0-0
      - libgstreamer1.0-0
      - liblastfm1
      - libmtp9
      - libprotobuf9v5
      - libpulse0
      - libqjson0
      - libqt4-dbus
      - libqt4-network
      - libqt4-opengl
      - libqt4-sql
      - libqtcore4
      - libqtgui4
      - libsqlite3-0
      - libstdc++6
      - libtag1v5
      - libx11-6
      - zlib1g
      - gstreamer1.0-plugins-base
      - gstreamer1.0-plugins-good
      - gstreamer1.0-plugins-ugly
      - gstreamer1.0-plugins-bad 
      - gstreamer1.0-pulseaudio
      - libprojectm2v5
      - projectm-data

    source-type: git
    source: https://github.com/clementine-player/Clementine
    after: [desktop-qt4] 
    plugin: cmake

As you can see, I’ve added the suggested package to staging (thanks @lucyllewy). I’m building now and will post results.

Yep! It’s working fine in --devmode .

I’m building v23 now and will upload it to the --edge channel.

Thanks all of you for your help! I think this is nearing a finished product.

Please consider renaming the snap to “clementine” and not “clementine-snap”. There’s no real reason to add the -snap now you can register official names.

1 Like

I would, but it’s been reserved by someone else.

EDIT: I have requested the name anyway. I don’t know if it’s going to work.

BTW, I accidentally replied to the wrong thread. I’ve provided a link to that thread’s comments as they are relevant here.

THREAD: Review of build-packages vs stage-packages for mumble snap

This is the current YAML:

name: clementine-snap # check to see if it's available
version: '1.3.1.25' # check the version number of clementine's packages
summary: Clementine is a modern music player. # 79 char long summary
description: |
  Clementine is a modern music player and library organizer for Windows, Linux and Mac OS X.
grade: stable # must be 'stable' to release into candidate/stable channels
confinement: strict # use 'strict' once you have the right plugs

apps:
  clementine:
    command: desktop-launch $SNAP/bin/clementine 
    desktop: share/applications/clementine.desktop
    plugs:
      - network
      - network-bind
      - home
      - pulseaudio
      - unity7
      - x11
      - gsettings
      - optical-drive
      - removable-media
      - screen-inhibit-control
      - alsa
      - raw-usb
  
parts:
  my-part:
    # See 'snapcraft plugins'
    build-packages:

       [liblastfm-dev,libtag1-dev,gettext,libboost-dev,libboost-serialization-dev,libqt4-dev,qt4-dev-tools,libqt4-opengl-dev,cmake,libgstreamer1.0-dev,libgstreamer-plugins-base1.0-dev,libglew1.5-dev,libqjson-dev,libgpod-dev,libplist-dev,libusbmuxd-dev,libmtp-dev,libcdio-dev,protobuf-compiler,libprotobuf-dev,libcrypto++-dev,libfftw3-dev,libsparsehash-dev,libsqlite3-dev,libpulse-dev,libqtwebkit-dev,libechonest-dev,libchromaprint-dev,libqca2-dev]
  
    stage-packages: 
      - libc6
      - libcdio13
      - libchromaprint0
      - libcrypto++9v5
      - libechonest2.3
      - libfftw3-double3
      - libgcc1 
      - libgl1-mesa-glx
      - libgl1
      - libglew1.13
      - libglib2.0-0
      - libgpod4
      - libgstreamer-plugins-base1.0-0
      - libgstreamer1.0-0
      - liblastfm1
      - libmtp9
      - libprotobuf9v5
      - libpulse0
      - libqjson0
      - libqt4-dbus
      - libqt4-network
      - libqt4-opengl
      - libqt4-sql
      - libqtcore4
      - libqtgui4
      - libsqlite3-0
      - libstdc++6
      - libtag1v5
      - libx11-6
      - zlib1g
      - gstreamer1.0-plugins-base
      - gstreamer1.0-plugins-good
      - gstreamer1.0-plugins-ugly
      - gstreamer1.0-plugins-bad 
      - gstreamer1.0-pulseaudio
      - libprojectm2v5
      - projectm-data

    source-type: git
    source: https://github.com/clementine-player/Clementine
    after: [desktop-qt4] 
    plugin: cmake

Thank you very much

The player is running fine !!!

A lot of work !!!

1 Like

For anyone interested in the final outcome and how this was resolved, you may have to infer from your reading here.

For reference, what I’ve learned in the process of building this snap, was that you really have to “build it and see” as @popey once mentioned in another place.

As you may gather, the last piece of the puzzle was one stage-package (gstreamer1.0-plugins-bad).

Just in case it may help you, please see my current/ongoing yaml on Github: