Subject: [bug#39142] [PATCH 1/2] gnu: USB_ModeSwitch: Update to 2.6.0.

From: Florian Pelz <[email-masked]>
Date: Wed, 15 Jan 2020 13:50:31 +0100

* gnu/packages/usb-modeswitch.scm (usb-modeswitch): Update to 2.6.0.
[source]: Remove snippet that deletes jimtcl, which is no longer bundled.
Remove patch.  Use HTTPS.
[arguments]: Adapt to changed file names.
[home-page] Use HTTPS.
[license]: Fix missing BSD-2 license.
* gnu/packages/patches/usb-modeswitch-accept-config-arg.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
---
 gnu/local.mk                                  |  1 -
 .../usb-modeswitch-accept-config-arg.patch    | 42 -------------------
 gnu/packages/usb-modeswitch.scm               | 23 ++++------
 3 files changed, 8 insertions(+), 58 deletions(-)
 delete mode 100644 gnu/packages/patches/usb-modeswitch-accept-config-arg.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 32ef715bb5..cca5765a56 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1444,7 +1444,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/util-linux-tests.patch			\
   %D%/packages/patches/upower-builddir.patch			\
   %D%/packages/patches/upx-fix-CVE-2017-15056.patch		\
-  %D%/packages/patches/usb-modeswitch-accept-config-arg.patch	\
   %D%/packages/patches/valgrind-enable-arm.patch		\
   %D%/packages/patches/vboot-utils-fix-format-load-address.patch	\
   %D%/packages/patches/vboot-utils-fix-tests-show-contents.patch	\
diff --git a/gnu/packages/patches/usb-modeswitch-accept-config-arg.patch b/gnu/packages/patches/usb-modeswitch-accept-config-arg.patch
deleted file mode 100644
index 9c050f7ee6..0000000000
--- a/gnu/packages/patches/usb-modeswitch-accept-config-arg.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- old/usb_modeswitch.tcl	1970-01-01 01:00:00.000000000 +0100
-+++ usb_modeswitch.tcl	2019-06-12 08:39:42.140000000 +0200
-@@ -41,7 +41,7 @@
- global scsi usb config match device flags setup devdir loginit
- 
- set flags(config) ""
--Log "[ParseGlobalConfig]"
-+Log "[ParseGlobalConfig $argv]"
- 
- if {$flags(stordelay) > 0} {
- 	SetStorageDelay $flags(stordelay)
-@@ -496,9 +496,21 @@
- # end of proc {MatchDevice}
- 
- 
--proc {ParseGlobalConfig} {} {
-+proc {ParseGlobalConfig} {argv} {
- 
- global flags
-+
-+set configFileParam ""
-+for {set i 0} {$i < [llength $argv]} {incr i} {
-+	switch -glob -- [set v [lindex $argv $i]] {
-+		--config-file=* {
-+			set configFileParam $v
-+		}
-+	}
-+}
-+if {$configFileParam != ""} {
-+	set configFile [string range $configFileParam [string length "--config-file="] end]
-+} else {
- set configFile ""
- set places [list /etc/usb_modeswitch.conf /etc/sysconfig/usb_modeswitch /etc/default/usb_modeswitch]
- foreach cfg $places {
-@@ -507,6 +519,7 @@
- 		break
- 	}
- }
-+}
- if {$configFile == ""} {return}
- 
- set rc [open $configFile r]
diff --git a/gnu/packages/usb-modeswitch.scm b/gnu/packages/usb-modeswitch.scm
index 7e4526ae46..8f3edc7f43 100644
--- a/gnu/packages/usb-modeswitch.scm
+++ b/gnu/packages/usb-modeswitch.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2019 Florian Pelz <[email-masked]>
+;;; Copyright © 2019, 2020 Florian Pelz <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -76,23 +76,15 @@ file for use with USB_ModeSwitch.")
 (define-public usb-modeswitch
   (package
     (name "usb-modeswitch")
-    (version "2.5.2")
+    (version "2.6.0")
     (source (origin
               (method url-fetch)
               (uri (string-append
-                    "http://www.draisberghof.de/usb_modeswitch/"
+                    "https://www.draisberghof.de/usb_modeswitch/"
                     "usb-modeswitch-" version ".tar.bz2"))
               (sha256
                (base32
-                "19ifi80g9ns5dmspchjvfj4ykxssq9yrci8m227dgb3yr04srzxb"))
-              (modules '((guix build utils)))
-              (snippet
-               ;; Remove bundled jimtcl.
-               '(begin
-                  (delete-file-recursively "jim")
-                  #t))
-              (patches
-               (search-patches "usb-modeswitch-accept-config-arg.patch"))))
+                "18wbbxc5cfsmikba0msdvd5qlaga27b32nhrzicyd9mdddp265f2"))))
     (native-inputs `(("pkg-config" ,pkg-config)))
     (inputs `(("libusb" ,libusb)
               ("jimtcl" ,jimtcl)
@@ -145,7 +137,7 @@ file for use with USB_ModeSwitch.")
                  (rename-file "usb_modeswitch.sh" "usb_modeswitch")
                  (install-file "usb_modeswitch" udev)
 
-                 (rename-file "usb_modeswitch.tcl" "usb_modeswitch_dispatcher")
+                 (rename-file "usb_modeswitch_dispatcher.tcl" "usb_modeswitch_dispatcher")
                  (substitute* "usb_modeswitch_dispatcher"
                    (("/usr/bin/tclsh")
                     (string-append jimtcl "/bin/jimsh"))
@@ -155,7 +147,7 @@ file for use with USB_ModeSwitch.")
                  (install-file "usb_modeswitch_dispatcher"
                                dispatcher-bin)
                  #t)))))))
-    (home-page "http://www.draisberghof.de/usb_modeswitch/")
+    (home-page "https://www.draisberghof.de/usb_modeswitch/")
     (synopsis "Mode switching tool for controlling `multi-mode' USB devices")
     (description "USB_ModeSwitch is a mode switching tool for controlling USB
 devices with multiple @dfn{modes}.  When plugged in for the first time many
@@ -163,4 +155,5 @@ USB devices (primarily high-speed WAN modems) act like a flash storage
 containing installers for Windows drivers.  USB_ModeSwitch replays the
 sequence the Windows drivers would send to switch their mode from storage to
 modem (or whatever the thing is supposed to do).")
-    (license license:gpl2+)))
+    (license (list license:gpl2+ ;"this program" according to home page
+                   license:bsd-2)))) ;dispatcher.c
-- 
2.24.1