aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-08-12 00:20:16 -0400
committerMark H Weaver <mhw@netris.org>2015-08-12 00:22:02 -0400
commitae4784af544a9d667c95cae6af5b6e5d146af66b (patch)
tree8a75658d052f482010ab3c00cc0d6d09bd551e93
parent1e738fc8a59580c1fb7fd2d437ce78f8a70412db (diff)
downloadgnu-guix-ae4784af544a9d667c95cae6af5b6e5d146af66b.tar
gnu-guix-ae4784af544a9d667c95cae6af5b6e5d146af66b.tar.gz
gnu: wicd: Fix bugs in curses interface program.
* gnu/packages/patches/wicd-bitrate-none-fix.patch, gnu/packages/patches/wicd-get-selected-profile-fix.patch: New files. * gnu-system.am (dist_patch_DATA): Add them. * gnu/packages/wicd.scm (wicd)[source]: Add patches.
-rw-r--r--gnu-system.am2
-rw-r--r--gnu/packages/patches/wicd-bitrate-none-fix.patch24
-rw-r--r--gnu/packages/patches/wicd-get-selected-profile-fix.patch16
-rw-r--r--gnu/packages/wicd.scm4
4 files changed, 45 insertions, 1 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 43ea021536..dc945c9b96 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -659,6 +659,8 @@ dist_patch_DATA = \
gnu/packages/patches/vtk-mesa-10.patch \
gnu/packages/patches/w3m-fix-compile.patch \
gnu/packages/patches/weex-vacopy.patch \
+ gnu/packages/patches/wicd-bitrate-none-fix.patch \
+ gnu/packages/patches/wicd-get-selected-profile-fix.patch \
gnu/packages/patches/wicd-template-instantiation.patch \
gnu/packages/patches/wicd-urwid-1.3.patch \
gnu/packages/patches/wmctrl-64-fix.patch \
diff --git a/gnu/packages/patches/wicd-bitrate-none-fix.patch b/gnu/packages/patches/wicd-bitrate-none-fix.patch
new file mode 100644
index 0000000000..1809b7217d
--- /dev/null
+++ b/gnu/packages/patches/wicd-bitrate-none-fix.patch
@@ -0,0 +1,24 @@
+Fix copied from https://bugs.launchpad.net/wicd/+bug/1432423/comments/1
+
+--- wicd-1.7.3/curses/netentry_curses.py 1969-12-31 19:00:00.000000000 -0500
++++ wicd-1.7.3/curses/netentry_curses.py 2015-08-11 23:26:19.999999649 -0400
+@@ -538,11 +538,16 @@
+ self.bitrates = wireless.GetAvailableBitrates()
+ self.bitrates.append('auto')
+ self.bitrate_combo.set_list(self.bitrates)
++
++ # bitrate property is sometimes None
++ chosen_bitrate = wireless.GetWirelessProperty(networkID, 'bitrate')
++ if chosen_bitrate not in self.bitrates:
++ chosen_bitrate = 'auto'
++
+ self.bitrate_combo.set_focus(
+- self.bitrates.index(
+- wireless.GetWirelessProperty(networkID, 'bitrate')
+- )
++ self.bitrates.index(chosen_bitrate)
+ )
++
+ self.allow_lower_bitrates_chkbox.set_state(
+ to_bool(self.format_entry(networkID, 'allow_lower_bitrates'))
+ )
diff --git a/gnu/packages/patches/wicd-get-selected-profile-fix.patch b/gnu/packages/patches/wicd-get-selected-profile-fix.patch
new file mode 100644
index 0000000000..3042a87308
--- /dev/null
+++ b/gnu/packages/patches/wicd-get-selected-profile-fix.patch
@@ -0,0 +1,16 @@
+Fix copied from https://bugs.launchpad.net/wicd/+bug/1421918/comments/2
+
+--- wicd-1.7.3/curses/wicd-curses.py 2014-12-21 16:57:33 +0000
++++ wicd-1.7.3/curses/wicd-curses.py 2015-02-24 23:41:01 +0000
+@@ -532,7 +532,10 @@
+ def get_selected_profile(self):
+ """Get the selected wired profile"""
+ loc = self.get_focus()[1]
+- return self.theList[loc]
++ if len(self.theList) > loc:
++ return self.theList[loc]
++ else:
++ return self.theList[-1]
+
+
+ class AdHocDialog(Dialog2):
diff --git a/gnu/packages/wicd.scm b/gnu/packages/wicd.scm
index 908b15e30b..26b1c7d3f9 100644
--- a/gnu/packages/wicd.scm
+++ b/gnu/packages/wicd.scm
@@ -46,7 +46,9 @@
(sha256
(base32 "00c4rq753bhg64rv1v9yl834ssq7igyy7cz3swp287b5n5bqiqwi"))
(patches (map search-patch
- '("wicd-urwid-1.3.patch"
+ '("wicd-bitrate-none-fix.patch"
+ "wicd-get-selected-profile-fix.patch"
+ "wicd-urwid-1.3.patch"
"wicd-template-instantiation.patch")))))
(build-system python-build-system)
(native-inputs `(("gettext" ,gnu-gettext)))