summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO24
-rw-r--r--PKGBUILD30
-rw-r--r--fix-defaultconfig-search.patch68
-rw-r--r--fix-tkcon.patch55
-rw-r--r--fix-wavebar.patch18
-rw-r--r--prefs.patch19
-rw-r--r--snack-callbacks.patch8
-rw-r--r--vtcanvas.patch16
8 files changed, 186 insertions, 52 deletions
diff --git a/.SRCINFO b/.SRCINFO
index f63fbbb0faa7..2a438369c1f6 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,25 +1,29 @@
pkgbase = wavesurfer
pkgdesc = Open source tool for sound visualization and manipulation
- pkgver = 1.8.8p4
- pkgrel = 3
+ pkgver = 1.8.8p5
+ pkgrel = 4
url = http://sourceforge.net/projects/wavesurfer/
arch = any
license = custom
depends = tcl>=8.4
depends = tk>=8.4
depends = snack>=2.2
- source = http://downloads.sourceforge.net/wavesurfer/wavesurfer-1.8.8p4-src.tgz
+ source = http://downloads.sourceforge.net/wavesurfer/wavesurfer-1.8.8p5-src.tgz
source = wavesurfer
source = wavesurfer.desktop
- source = vtcanvas.patch
source = prefs.patch
+ source = fix-wavebar.patch
source = snack-callbacks.patch
- md5sums = 446f16aecff9cc283cf82636e84feeee
- md5sums = f875d9c0fcef785ccdf7f4a64e19c52d
- md5sums = 8a081185545f22d37f34d9de7e0cf303
- md5sums = b19c250f1fdb5bfb51122e805f612695
- md5sums = de89341e031a230cfe4387d5bf2b18f7
- md5sums = a270da18afc012a1e431466f2afef5a8
+ source = fix-defaultconfig-search.patch
+ source = fix-tkcon.patch
+ sha256sums = ae56061147dd1170f7485dc9c19db7a45dd157050ac3946662c7fc79cffb611a
+ sha256sums = 6fd71453d7d29828ccf7062001679b24899b8866fbfdc2eecb5c0e71d25ed885
+ sha256sums = 99caf2c9150cd27dc00dfe05403d2ca0d2d0ef9364b43b53a904508911d8e941
+ sha256sums = 83a952e3d10f24d078db295ac0716601bc9da54aafff697dd539f35823721985
+ sha256sums = 974c027de15de7848843c4e35adc1c7c9e23f147457e10f0a8df19b3bf182f68
+ sha256sums = f476146ab13b535c16a48e5a82e3b99377deba9dcef0c40bfd15660be674b1b8
+ sha256sums = 08263324c0af3f82b3f3868068b268dd873a2338bb884756213781271bc11cb2
+ sha256sums = d15323cc7d96a6ed34a30484e6345898bff70c8180f0ae7c9ef1effdea73ace5
pkgname = wavesurfer
diff --git a/PKGBUILD b/PKGBUILD
index 074ae1f17126..983928c3c67e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,8 +2,8 @@
# Contributor: Christoph Drexler <chrdr [at] gmx [dot] at>
pkgname=wavesurfer
-pkgver=1.8.8p4
-pkgrel=3
+pkgver=1.8.8p5
+pkgrel=4
pkgdesc="Open source tool for sound visualization and manipulation"
arch=('any')
url="http://sourceforge.net/projects/wavesurfer/"
@@ -12,24 +12,30 @@ depends=('tcl>=8.4' 'tk>=8.4' 'snack>=2.2')
source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver-src.tgz"
wavesurfer
wavesurfer.desktop
- vtcanvas.patch
prefs.patch
- snack-callbacks.patch)
-md5sums=('446f16aecff9cc283cf82636e84feeee'
- 'f875d9c0fcef785ccdf7f4a64e19c52d'
- '8a081185545f22d37f34d9de7e0cf303'
- 'b19c250f1fdb5bfb51122e805f612695'
- 'de89341e031a230cfe4387d5bf2b18f7'
- 'a270da18afc012a1e431466f2afef5a8')
+ fix-wavebar.patch
+ snack-callbacks.patch
+ fix-defaultconfig-search.patch
+ fix-tkcon.patch)
+sha256sums=('ae56061147dd1170f7485dc9c19db7a45dd157050ac3946662c7fc79cffb611a'
+ '6fd71453d7d29828ccf7062001679b24899b8866fbfdc2eecb5c0e71d25ed885'
+ '99caf2c9150cd27dc00dfe05403d2ca0d2d0ef9364b43b53a904508911d8e941'
+ '83a952e3d10f24d078db295ac0716601bc9da54aafff697dd539f35823721985'
+ '974c027de15de7848843c4e35adc1c7c9e23f147457e10f0a8df19b3bf182f68'
+ 'f476146ab13b535c16a48e5a82e3b99377deba9dcef0c40bfd15660be674b1b8'
+ '08263324c0af3f82b3f3868068b268dd873a2338bb884756213781271bc11cb2'
+ 'd15323cc7d96a6ed34a30484e6345898bff70c8180f0ae7c9ef1effdea73ace5')
build() {
cd $pkgname-$pkgver
patch -p0 -i ../prefs.patch
- patch -p0 -i ../vtcanvas.patch
+ patch -p0 -i ../fix-wavebar.patch
# if you have a snack version that is compatible with tcl 8.6
# you should leave out the following patch
patch -p0 -i ../snack-callbacks.patch
+ patch -p0 -i ../fix-defaultconfig-search.patch
+ patch -p0 -i ../fix-tkcon.patch
}
package() {
@@ -41,6 +47,4 @@ package() {
install -Dm755 $srcdir/wavesurfer $pkgdir/usr/bin/wavesurfer
install -Dm644 $srcdir/wavesurfer.desktop $pkgdir/usr/share/applications/wavesurfer.desktop
install $srcdir/$pkgname-$pkgver/LICENSE.txt $pkgdir/usr/share/licenses/wavesurfer/LICENSE.txt
-
- sed -i -e 's|wish8.5|wish|' $pkgdir/usr/lib/wavesurfer/src/app-wavesurfer/wavesurfer.tcl
}
diff --git a/fix-defaultconfig-search.patch b/fix-defaultconfig-search.patch
new file mode 100644
index 000000000000..c1819e9eee06
--- /dev/null
+++ b/fix-defaultconfig-search.patch
@@ -0,0 +1,68 @@
+--- src/app-wavesurfer/wavesurfer__orig.tcl 2018-09-08 19:58:23.463734379 +0200
++++ src/app-wavesurfer/wavesurfer.tcl 2018-09-08 20:19:48.386838554 +0200
+@@ -461,6 +461,20 @@
+ }
+ }
+
++proc getConfigPath {name} {
++ set l [::wsurf::GetConfigurations]
++ # quote regexp sensible characters
++ set config [string map {+ \\+} $name]
++ set ind [lsearch -regexp $l ".*${config}\[\\w\\s\]*.conf"]
++ if {$ind != -1} {
++ set conf [lindex $l $ind]
++ } else {
++ set conf ""
++ }
++ return $conf
++}
++
++
+ proc OpenFile {args} {
+
+ puts [info level 0]
+@@ -507,13 +521,7 @@
+ ::SavePreferences
+ }
+ } else {
+- set l [::wsurf::GetConfigurations]
+- set ind [lsearch -regexp $l ".*$::wsurf::Info(Prefs,defaultConfig)\[\\w\\s\]*.conf"]
+- if {$ind != -1} {
+- set conf [lindex $l $ind]
+- } else {
+- set conf ""
+- }
++ set conf [getConfigPath $::wsurf::Info(Prefs,defaultConfig)]
+ }
+ if {$conf == "standard"} {
+ set conf ""
+@@ -907,13 +915,7 @@
+ ::SavePreferences
+ }
+ } else {
+- set l [::wsurf::GetConfigurations]
+- set ind [lsearch -regexp $l ".*$::wsurf::Info(Prefs,defaultConfig)\[\\w\\s\]*.conf"]
+- if {$ind != -1} {
+- set conf [lindex $l $ind]
+- } else {
+- set conf ""
+- }
++ set conf [getConfigPath $::wsurf::Info(Prefs,defaultConfig)]
+ }
+ if {$conf == ""} return
+ if {$conf == "standard"} {
+@@ -3439,11 +3441,10 @@
+ update idletasks
+
+ if {$surf(conf) == "unspecified" && $::wsurf::Info(Prefs,defaultConfig) != ""} {
+- set l [::wsurf::GetConfigurations]
+- set ind [lsearch -regexp $l ".*$::wsurf::Info(Prefs,defaultConfig)\[\\w\\s\]*.conf"]
+- if {$ind != -1} {
++ set conf [getConfigPath $::wsurf::Info(Prefs,defaultConfig)]
++ if {$conf ne ""} {
+ set surf(conf) {}
+- lappend surf(conf) [lindex $l $ind]
++ lappend surf(conf) $conf
+ } else {
+ set surf(conf) [list "unspecified"]
+ }
diff --git a/fix-tkcon.patch b/fix-tkcon.patch
new file mode 100644
index 000000000000..657fa27f3ede
--- /dev/null
+++ b/fix-tkcon.patch
@@ -0,0 +1,55 @@
+--- src/wsurf/tkcon__orig.tcl 2018-09-08 19:34:55.690958645 +0200
++++ src/wsurf/tkcon.tcl 2018-09-08 19:38:27.694351281 +0200
+@@ -765,9 +765,9 @@
+ set tag [UniqueTag $w]
+ $w insert output $res [list stderr $tag] \n stderr
+ $w tag bind $tag <Enter> \
+- [list $w tag configure $tag -under 1]
++ [list $w tag configure $tag -underline 1]
+ $w tag bind $tag <Leave> \
+- [list $w tag configure $tag -under 0]
++ [list $w tag configure $tag -underline 0]
+ $w tag bind $tag <ButtonRelease-1> \
+ "if {!\[info exists tkPriv(mouseMoved)\] || !\$tkPriv(mouseMoved)} \
+ {[list $OPT(edit) -attach [Attach] -type error -- $PRIV(errorInfo)]}"
+@@ -2526,8 +2526,8 @@
+ set tag [UniqueTag $w]
+ $w tag add $tag $start+${c0}c $start+1c+${c1}c
+ $w tag configure $tag -foreground $COLOR(stdout)
+- $w tag bind $tag <Enter> [list $w tag configure $tag -under 1]
+- $w tag bind $tag <Leave> [list $w tag configure $tag -under 0]
++ $w tag bind $tag <Enter> [list $w tag configure $tag -underline 1]
++ $w tag bind $tag <Leave> [list $w tag configure $tag -underline 0]
+ $w tag bind $tag <ButtonRelease-1> "if {!\$tkPriv(mouseMoved)} \
+ {[list $OPT(edit) -attach $app -type proc -find $what -- $cmd]}"
+ }
+@@ -2555,8 +2555,8 @@
+ set tag [UniqueTag $w]
+ $w tag add $tag $ix+1c $start
+ $w tag configure $tag -foreground $COLOR(proc)
+- $w tag bind $tag <Enter> [list $w tag configure $tag -under 1]
+- $w tag bind $tag <Leave> [list $w tag configure $tag -under 0]
++ $w tag bind $tag <Enter> [list $w tag configure $tag -underline 1]
++ $w tag bind $tag <Leave> [list $w tag configure $tag -underline 0]
+ $w tag bind $tag <ButtonRelease-1> "if {!\$tkPriv(mouseMoved)} \
+ {[list $OPT(edit) -attach $app -type proc -- $cmd]}"
+ }
+@@ -3022,14 +3022,14 @@
+ ##
+ set text $w.text
+ set m [menu [::tkcon::MenuButton $menu Edit edit]]
+- $m add command -label "Cut" -under 2 \
++ $m add command -label "Cut" -underline 2 \
+ -command [list tk_textCut $text]
+- $m add command -label "Copy" -under 0 \
++ $m add command -label "Copy" -underline 0 \
+ -command [list tk_textCopy $text]
+- $m add command -label "Paste" -under 0 \
++ $m add command -label "Paste" -underline 0 \
+ -command [list tk_textPaste $text]
+ $m add separator
+- $m add command -label "Find" -under 0 \
++ $m add command -label "Find" -underline 0 \
+ -command [list ::tkcon::FindBox $text]
+
+ ## Send To Menu
diff --git a/fix-wavebar.patch b/fix-wavebar.patch
new file mode 100644
index 000000000000..aea8093579f6
--- /dev/null
+++ b/fix-wavebar.patch
@@ -0,0 +1,18 @@
+Add fix from commit r58 "fixed subtle bug related to opening file in
+untouched widget":
+https://sourceforge.net/p/wavesurfer/code/58/#diff-2
+
+--- src/wsurf/wavebar__orig.tcl 2018-09-08 18:34:58.049674304 +0200
++++ src/wsurf/wavebar.tcl 2018-09-08 18:27:15.450901639 +0200
+@@ -747,6 +747,11 @@
+
+ proc wavebar::_update {w {width -1} {height -1}} {
+ upvar [namespace current]::${w}::data d
++
++ if {![winfo exists $w]} {
++ return
++ }
++
+ if {$width>0} {set d(c0width) $width}
+ if {$height>0} {set d(c0height) $height}
+ if {$d(c0width)<=0} return
diff --git a/prefs.patch b/prefs.patch
index 788a113f07c4..d7a61cc61e07 100644
--- a/prefs.patch
+++ b/prefs.patch
@@ -1,15 +1,16 @@
---- wsurf-orig.tcl 2014-03-16 03:00:12.607411989 +0100
-+++ src/wsurf/wsurf.tcl 2014-03-16 02:49:27.807185395 +0100
-@@ -3121,7 +3121,12 @@
+--- src/wsurf/wsurf.tcl.orig 2017-01-26 14:20:05.000000000 +0100
++++ src/wsurf/wsurf.tcl 2018-09-08 17:40:50.695124440 +0200
+@@ -3126,7 +3126,12 @@
foreach var [list inDev outDev PrintCmd PrintPVCmd linkFile tmpDir \
defRate defEncoding defChannels recordLimit showLevel] {
-+ if {[info exists Info(Prefs,$var)]} {
- set Info(Prefs,t,$var) $Info(Prefs,$var)
-+ } else {
-+ puts "Missing Info(Prefs,$var)"
-+ set Info(Prefs,t,$var) {}
-+ }
+- set Info(Prefs,t,$var) $Info(Prefs,$var)
++ if {[info exists Info(Prefs,$var)]} {
++ set Info(Prefs,t,$var) $Info(Prefs,$var)
++ } else {
++ puts "Missing Info(Prefs,$var)"
++ set Info(Prefs,t,$var) {}
++ }
}
if {$Info(Prefs,linkFile)} {
diff --git a/snack-callbacks.patch b/snack-callbacks.patch
index 3fd70488a81b..56c83fa1e231 100644
--- a/snack-callbacks.patch
+++ b/snack-callbacks.patch
@@ -1,8 +1,8 @@
---- src/app-wavesurfer/wavesurfer_orig.tcl 2014-04-19 01:41:31.272298432 +0200
-+++ src/app-wavesurfer/wavesurfer.tcl 2014-04-19 02:09:47.186988595 +0200
+--- src/app-wavesurfer/wavesurfer.tcl.orig 2018-09-08 17:44:19.358636647 +0200
++++ src/app-wavesurfer/wavesurfer.tcl 2018-09-08 17:47:50.028750684 +0200
@@ -2,6 +2,28 @@
# the next line restarts using wish \
- exec wish8.5 "$0" "$@"
+ exec wish "$0" "$@"
+# ----------------------------------------------------------
+# fix the wrong behaviour of snack callbacks for tcl >= 8.6
@@ -26,6 +26,6 @@
+}
+# ----------------------------------------------------------
+
- set RELEASE 1.8.8p4
+ set RELEASE 1.8.8p5
set BUILD @BUILD@
#
diff --git a/vtcanvas.patch b/vtcanvas.patch
deleted file mode 100644
index 8528b2839c32..000000000000
--- a/vtcanvas.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-see: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=720397
- * Catch the error thrown from 'canvas lower top topmost' when no items with
- that tag exist yet, that tk versions after 8.5.11-2 now want to barf up.
- Closes: #720397 Hopefully even correctly, there's been no other feedback.
-
---- vtcanvas-orig.tcl 2014-03-16 02:59:45.661711286 +0100
-+++ src/wsurf/vtcanvas.tcl 2014-03-16 02:55:30.197534490 +0100
-@@ -471,7 +471,7 @@
- $c coords leftbar $x0 0 $x0 $height
- $c coords rightbar $x1 0 $x1 $height
- $c raise top
-- $c lower top topmost
-+ catch {$c lower top topmost}
- $c raise selbg
- $c raise sellen
- $c lower bottom