Line6 Pocket Pod

Posted by

Le pocket Pod est un multi-effet plutôt sympathique qui peut être facilement piloté via des logiciels propriétaires. Ceux-ci s’émulent plutôt bien avec wine mais il reste le problème du pilote pour aller parler avec l’appareil en USB. Il existe bien un pilote mais celui-ci n’est plus maintenu et ne compile donc plus. En particulier le paquet Debian est plutôt cahotique. A force de ne pas profiter pleinenement de mon pocket pod du fait de la contrainte de redémarrer sous un autre OS, je me suis forcé à me fendre d’un petit patch qui sera peut être utile à d’autres. Il ne restera plus qu’à charger le pilote via un modprobe line6usb :

diff -urN line6-usb/audio.c line6-usb.new/audio.c
--- line6-usb/audio.c	2009-07-30 11:19:44.000000000 +0200
+++ line6-usb.new/audio.c	2012-02-20 22:46:34.196429934 +0100
@@ -12,7 +12,9 @@
 #include "driver.h"
 #include "audio.h"
 
+#include 
 #include 
+#include 
 
 #include 
 #include 
diff -urN line6-usb/capture.c line6-usb.new/capture.c
--- line6-usb/capture.c	2009-07-30 11:19:44.000000000 +0200
+++ line6-usb.new/capture.c	2012-02-20 22:47:18.427873871 +0100
@@ -11,6 +11,7 @@
 
 #include "driver.h"
 
+#include 
 #include 
 #include 
 #include 
diff -urN line6-usb/debian/files line6-usb.new/debian/files
--- line6-usb/debian/files	1970-01-01 01:00:00.000000000 +0100
+++ line6-usb.new/debian/files	2012-02-20 22:49:16.790385853 +0100
@@ -0,0 +1 @@
+line6-usb-source_0.8.0+svn551-1_all.deb sound optional
diff -urN line6-usb/debian/line6-usb-source/DEBIAN/control line6-usb.new/debian/line6-usb-source/DEBIAN/control
--- line6-usb/debian/line6-usb-source/DEBIAN/control	1970-01-01 01:00:00.000000000 +0100
+++ line6-usb.new/debian/line6-usb-source/DEBIAN/control	2012-02-20 22:49:16.790385853 +0100
@@ -0,0 +1,22 @@
+Package: line6-usb-source
+Source: line6-usb
+Version: 0.8.0+svn551-1
+Architecture: all
+Maintainer: Jelmer Vernooij 
+Installed-Size: 65
+Depends: module-assistant, bzip2, debhelper (>= 5)
+Section: sound
+Priority: optional
+Homepage: http://www.tanzband-scream.at/line6/
+Description: Line 6 POD driver source
+ An experimental driver for the guitar amp, cab, and effects modeller
+ PODxt Pro by Line6 (and similar devices), supporting the following features:
+ .
+  * Reading/writing individual parameters
+  * Reading/writing complete channel, effects setup, and amp setup data
+  * Channel switching
+  * Virtual MIDI interface
+  * Tuner access
+  * Playback/capture/mixer device for any ALSA-compatible
+  * PCM audio application
+  * Signal routing (record clean/processed guitar signal, re-amping)
diff -urN line6-usb/debian/line6-usb-source/DEBIAN/md5sums line6-usb.new/debian/line6-usb-source/DEBIAN/md5sums
--- line6-usb/debian/line6-usb-source/DEBIAN/md5sums	1970-01-01 01:00:00.000000000 +0100
+++ line6-usb.new/debian/line6-usb-source/DEBIAN/md5sums	2012-02-20 22:49:16.830385349 +0100
@@ -0,0 +1,3 @@
+1905aba7b8752823e5e0e218a05aef03  usr/share/doc/line6-usb-source/changelog.Debian.gz
+1e4b422012350e40e2d20bacb05ec4c5  usr/share/doc/line6-usb-source/copyright
+8556e3224d9a0e082151dd21a913d323  usr/src/line6-usb.tar.bz2
Les fichiers binaires line6-usb/debian/line6-usb-source/usr/share/doc/line6-usb-source/changelog.Debian.gz et line6-usb.new/debian/line6-usb-source/usr/share/doc/line6-usb-source/changelog.Debian.gz sont différents
diff -urN line6-usb/debian/line6-usb-source/usr/share/doc/line6-usb-source/copyright line6-usb.new/debian/line6-usb-source/usr/share/doc/line6-usb-source/copyright
--- line6-usb/debian/line6-usb-source/usr/share/doc/line6-usb-source/copyright	1970-01-01 01:00:00.000000000 +0100
+++ line6-usb.new/debian/line6-usb-source/usr/share/doc/line6-usb-source/copyright	2009-07-30 11:19:52.000000000 +0200
@@ -0,0 +1,14 @@
+This package was debianized by Jelmer Vernooij  on
+Tue, 15 Jan 2008 23:07:50 +0100.
+
+It was downloaded from http://www.tanzband-scream.at/line6/
+
+Upstream Authors:  Markus Grabner 
+
+Copyright: 2004-2007  Markus Grabner 
+
+License:
+You are free to distribute this software under the terms of the GNU General
+Public License Version 2. The full text of this license can be found in the
+file /usr/share/common-licenses/GPL-2
+
Les fichiers binaires line6-usb/debian/line6-usb-source/usr/src/line6-usb.tar.bz2 et line6-usb.new/debian/line6-usb-source/usr/src/line6-usb.tar.bz2 sont différents
diff -urN line6-usb/debian/line6-usb-source.debhelper.log line6-usb.new/debian/line6-usb-source.debhelper.log
--- line6-usb/debian/line6-usb-source.debhelper.log	1970-01-01 01:00:00.000000000 +0100
+++ line6-usb.new/debian/line6-usb-source.debhelper.log	2012-02-20 22:49:16.910384343 +0100
@@ -0,0 +1,17 @@
+dh_auto_build
+dh_auto_build
+dh_installdirs
+dh_installdirs
+dh_install
+dh_installchangelogs
+dh_installdocs
+dh_install
+dh_link
+dh_compress
+dh_fixperms
+dh_installdeb
+dh_installdeb
+dh_gencontrol
+dh_md5sums
+dh_builddeb
+dh_builddeb
diff -urN line6-usb/debian/line6-usb-source.substvars line6-usb.new/debian/line6-usb-source.substvars
--- line6-usb/debian/line6-usb-source.substvars	1970-01-01 01:00:00.000000000 +0100
+++ line6-usb.new/debian/line6-usb-source.substvars	2012-02-20 22:49:16.542388969 +0100
@@ -0,0 +1 @@
+misc:Depends=
diff -urN line6-usb/debian/rules line6-usb.new/debian/rules
--- line6-usb/debian/rules	2009-07-30 11:19:52.000000000 +0200
+++ line6-usb.new/debian/rules	2012-02-20 22:44:21.306100590 +0100
@@ -23,6 +23,8 @@
 ### Setup the stuff needed for making kernel module packages
 ### taken from /usr/share/kernel-package/sample.module.rules
 
+MODULE=line6usb.ko
+
 # prefix of the target package name
 PACKAGE=line6-usb-modules
 # modifieable for experiments or debugging m-a
@@ -62,6 +64,7 @@
 	dh_testroot
 	dh_clean -k
 
+	dh_installdirs lib/modules/$(KVERS)/
 	# Build the module
 	echo "#define DRIVER_REVISION " (Debian $(VERSION))"" > revision.h
 	$(MAKE) -f Makefile KSRC=$(KSRC) KVER=$(KVERS) -C $(KSRC) CONFIG_LINE6_USB=m SUBDIRS=$(CURDIR) modules
@@ -82,6 +85,7 @@
 
 build: 
 	./set_revision.sh
+	dh_auto_build
 
 clean: 
 	dh_testdir
@@ -113,6 +117,13 @@
 
 	dh_install
 
+	install -m 0644 $(MODULE) /lib/modules/$(shell uname -r)/kernel/sound/usb
+ifndef DESTDIR
+	-/sbin/depmod -a $(shell uname -r)
+endif
+
+
+
 binary-arch: build install
 
 binary-indep: build install
diff -urN line6-usb/driver.c line6-usb.new/driver.c
--- line6-usb/driver.c	2009-07-30 11:19:44.000000000 +0200
+++ line6-usb.new/driver.c	2012-02-20 22:47:38.031627417 +0100
@@ -13,6 +13,7 @@
 
 #include 
 #include 
+#include 
 #include 
 
 #include "audio.h"
diff -urN line6-usb/dumprequest.c line6-usb.new/dumprequest.c
--- line6-usb/dumprequest.c	2009-07-30 11:19:44.000000000 +0200
+++ line6-usb.new/dumprequest.c	2012-02-20 22:47:56.859390721 +0100
@@ -9,6 +9,8 @@
  *
  */
 
+#include 
+
 #include "driver.h"
 #include "dumprequest.h"
 
diff -urN line6-usb/makefile line6-usb.new/makefile
--- line6-usb/makefile	1970-01-01 01:00:00.000000000 +0100
+++ line6-usb.new/makefile	2012-02-20 22:44:31.953966730 +0100
@@ -0,0 +1,22 @@
+KDIR   := /lib/modules/$(shell uname -r)/build
+PWD    := $(shell pwd)
+MODDIR := $(DESTDIR)/lib/modules/$(shell uname -r)/kernel/sound/usb
+BINDIR := $(DESTDIR)/usr/bin
+
+default::
+	./set_revision.sh
+	$(MAKE) -f Makefile -C $(KDIR) CONFIG_LINE6_USB=m SUBDIRS=$(PWD) modules
+
+install-only:: default
+	mkdir -p $(MODDIR)
+	cp line6usb.ko $(MODDIR)
+	mkdir -p $(BINDIR)
+	cp *.sh *.pl $(BINDIR)
+
+install:: install-only
+	/sbin/depmod -a
+	/sbin/modprobe line6usb
+
+clean::
+	rm -f core .*.cmd *.o *.ko *.mod.c *.bak .#* *~
+	rm -rf .tmp_versions
diff -urN line6-usb/midi.c line6-usb.new/midi.c
--- line6-usb/midi.c	2009-07-30 11:19:44.000000000 +0200
+++ line6-usb.new/midi.c	2012-02-20 22:46:51.708209781 +0100
@@ -11,6 +11,7 @@
 
 #include "driver.h"
 
+#include 
 #include 
 
 #include 
diff -urN line6-usb/modules.order line6-usb.new/modules.order
--- line6-usb/modules.order	1970-01-01 01:00:00.000000000 +0100
+++ line6-usb.new/modules.order	2012-02-20 22:49:14.454415218 +0100
@@ -0,0 +1 @@
+kernel//usr/src/modules/line6-usb/line6usb.ko
diff -urN line6-usb/pcm.c line6-usb.new/pcm.c
--- line6-usb/pcm.c	2009-07-30 11:19:44.000000000 +0200
+++ line6-usb.new/pcm.c	2012-02-20 22:48:16.159148089 +0100
@@ -11,6 +11,7 @@
 
 #include "driver.h"
 
+#include 
 #include 
 #include 
 #include 
diff -urN line6-usb/playback.c line6-usb.new/playback.c
--- line6-usb/playback.c	2009-07-30 11:19:44.000000000 +0200
+++ line6-usb.new/playback.c	2012-02-20 22:48:36.958886601 +0100
@@ -11,6 +11,7 @@
 
 #include "driver.h"
 
+#include 
 #include 
 #include 
 #include 
diff -urN line6-usb/pod.c line6-usb.new/pod.c
--- line6-usb/pod.c	2009-07-30 11:19:44.000000000 +0200
+++ line6-usb.new/pod.c	2012-02-20 22:47:00.892094325 +0100
@@ -11,6 +11,7 @@
 
 #include "driver.h"
 
+#include 
 #include 
 
 #include "audio.h"
diff -urN line6-usb/set_revision.sh line6-usb.new/set_revision.sh
--- line6-usb/set_revision.sh	1970-01-01 01:00:00.000000000 +0100
+++ line6-usb.new/set_revision.sh	2012-02-20 22:44:28.274012993 +0100
@@ -0,0 +1,19 @@
+#!/bin/sh
+
+echo "#ifndef DRIVER_REVISION" > revision_new.h
+
+if test -d .svn; then
+    echo "/* current subversion revision */" >> revision_new.h
+    echo "#define DRIVER_REVISION " (revision $(svnversion))"" >> revision_new.h
+else
+    echo "/* current subversion revision not available */" >> revision_new.h
+    echo "#define DRIVER_REVISION """ >> revision_new.h
+fi
+
+echo "#endif" >> revision_new.h
+
+if diff --brief revision.h revision_new.h > /dev/null 2>&1; then
+    rm -f revision_new.h
+else
+    mv revision_new.h revision.h
+fi
diff -urN line6-usb/variax.c line6-usb.new/variax.c
--- line6-usb/variax.c	2009-07-30 11:19:44.000000000 +0200
+++ line6-usb.new/variax.c	2012-02-20 22:48:59.754600020 +0100
@@ -9,6 +9,8 @@
  *
  */
 
+#include 
+
 #include "driver.h"
 
 #include "audio.h"

2 comments

    1. Bonjour,

      Je dirais de mémoire un patch -p0 < patch.diff. Cependant, il n'est pas dit que ça fonctionne toujours, le package a été retiré de l'archive debian faute de maintenance :/

Répondre à Gilles Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.