Public bug reported:

When running wavesurfer in Ubuntu 16.04 I get:
Error in startup script: can't find package snack 2.2
    while executing
"package require snack 2.2"
    (file "/usr/share/tcltk/wavesurfer/wsurf/wsurf.tcl" line 9)
    invoked from within
"_source /usr/share/tcltk/wavesurfer/wsurf/wsurf.tcl"
    ("uplevel" body line 1)
    invoked from within
"uplevel _source $args"
    (procedure "source" line 5)
    invoked from within
"source /usr/share/tcltk/wavesurfer/wsurf/wsurf.tcl"
    ("package ifneeded wsurf 1.8" script)
    invoked from within
"package require -exact wsurf $version"
    (file "/usr/share/tcltk/wavesurfer/app-wavesurfer/wavesurfer.tcl" line 2578)

The problem: 
The package wavesurfer depends on version 8.5 of tcl-tk and on snack. On Ubuntu 
16.04 the default version of tcl-tk (and wish) is 8.6. Version 8.5 can be 
installed manually with 

sudo apt-get install tcl8.5

Unfortunately, libsnack will only work in tcl-tk (and wish) version 8.6.

Example:
> wish
% puts $tcl_version
8.6
% packa req snack
2.2

> wish8.5
% puts $tcl_version
8.5
% packa req snack
can't find package snack

Same is also valid for tclsh and tclsh8.5.

Easy fix for wavesurfer:
Add the following line to the start-up script (/usr/bin/wavesurfer):

-------------
#!/bin/sh

export TCLLIBPATH=/usr/lib/tcltk/snack2.2
exec /usr/share/tcltk/wavesurfer/app-wavesurfer/wavesurfer.tcl "$@"
-------------

Better solution:
Modify the snack package so that snack works regardless what version of tcl-tk 
is used.

Another better solution:
make the wavesurfer package depend on tcl-tk 8.6 instead of 8.5 (this avoids 
installing two versions of tcl-tk)

Affected packages:
- wavesurfer
- tcl-snack
- tcl8.5

> lsb_release -rd
Description:    Ubuntu 16.04.1 LTS
Release:        16.04

> apt-cache policy wavesurfer
wavesurfer:
  Installed: 1.8.8p4-3ubuntu1
  Candidate: 1.8.8p4-3ubuntu1
  Version table:
 *** 1.8.8p4-3ubuntu1 500
        500 http://se.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
        500 http://se.archive.ubuntu.com/ubuntu xenial/universe i386 Packages
        100 /var/lib/dpkg/status

> apt-cache policy tcl-snack
tcl-snack:
  Installed: 2.2.10.20090623-dfsg-6
  Candidate: 2.2.10.20090623-dfsg-6
  Version table:
 *** 2.2.10.20090623-dfsg-6 500
        500 http://se.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
        100 /var/lib/dpkg/status

> apt-cache policy tcl8.5
tcl8.5:
  Installed: 8.5.19-1
  Candidate: 8.5.19-1
  Version table:
 *** 8.5.19-1 500
        500 http://se.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
        100 /var/lib/dpkg/status

** Affects: wavesurfer (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1630367

Title:
  snack does not work on tcl-tk 8.5 required by wavesurfer

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/wavesurfer/+bug/1630367/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to