summary refs log tree commit diff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-04-29 23:50:26 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-05-31 14:53:42 -0400
commitedac21bfc78ffea85f4dac7206e5e7cd621bba19 (patch)
tree6985981ed25a3a9807c59a1b5b040d76feaeb0a7
parentbbbfe095fb167cb56b1fd9a20bf50bf53a0cdaf5 (diff)
downloadguix-edac21bfc78ffea85f4dac7206e5e7cd621bba19.tar.gz
gnu: Remove wicd.
The last release is from 2017, stuck on Python 2.

* gnu/packages/wicd.scm: Delete file.
* gnu/packages/patches/wicd-bitrate-none-fix.patch: Delete file.
* gnu/packages/patches/wicd-get-selected-profile-fix.patch: Likewise.
* gnu/packages/patches/wicd-urwid-1.3.patch: Likewise.
* gnu/packages/patches/wicd-wpa2-ttls.patch: Likewise.
* gnu/local.mk: De-register them.
* gnu/services/networking.scm: Remove wicd service...
* doc/guix.texi: ... and its documentation.
* gnu/system/linux-container.scm (containerized-operating-system)
<services-to-drop>: Remove wicd-service-type.
-rw-r--r--doc/guix.texi14
-rw-r--r--gnu/local.mk5
-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/patches/wicd-urwid-1.3.patch18
-rw-r--r--gnu/packages/patches/wicd-wpa2-ttls.patch38
-rw-r--r--gnu/packages/wicd.scm197
-rw-r--r--gnu/services/networking.scm62
-rw-r--r--gnu/system/linux-container.scm3
9 files changed, 1 insertions, 376 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 88e009fe7c..2bfff7c2ff 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -18659,20 +18659,6 @@ List of additional command-line arguments to pass to the daemon.
 @end table
 @end deftp
 
-@cindex wicd
-@cindex wireless
-@cindex WiFi
-@cindex network management
-@deffn {Scheme Procedure} wicd-service [#:wicd @var{wicd}]
-Return a service that runs @url{https://launchpad.net/wicd,Wicd}, a network
-management daemon that aims to simplify wired and wireless networking.
-
-This service adds the @var{wicd} package to the global profile, providing
-several commands to interact with the daemon and configure networking:
-@command{wicd-client}, a graphical user interface, and the @command{wicd-cli}
-and @command{wicd-curses} user interfaces.
-@end deffn
-
 @cindex ModemManager
 Some networking devices such as modems require special care, and this is
 what the services below focus on.
diff --git a/gnu/local.mk b/gnu/local.mk
index a4d5235be6..7a030283a7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -612,7 +612,6 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/web-browsers.scm			\
   %D%/packages/webkit.scm			\
   %D%/packages/wget.scm				\
-  %D%/packages/wicd.scm				\
   %D%/packages/wine.scm				\
   %D%/packages/wireservice.scm				\
   %D%/packages/wm.scm				\
@@ -1941,10 +1940,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/webkitgtk-adjust-bubblewrap-paths.patch	\
   %D%/packages/patches/webrtc-audio-processing-big-endian.patch	\
   %D%/packages/patches/websocketpp-fix-for-cmake-3.15.patch	\
-  %D%/packages/patches/wicd-bitrate-none-fix.patch		\
-  %D%/packages/patches/wicd-get-selected-profile-fix.patch	\
-  %D%/packages/patches/wicd-urwid-1.3.patch			\
-  %D%/packages/patches/wicd-wpa2-ttls.patch			\
   %D%/packages/patches/widelands-add-missing-map-include.patch	\
   %D%/packages/patches/widelands-system-wide_minizip.patch	\
   %D%/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
deleted file mode 100644
index 1809b7217d..0000000000
--- a/gnu/packages/patches/wicd-bitrate-none-fix.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-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
deleted file mode 100644
index 3042a87308..0000000000
--- a/gnu/packages/patches/wicd-get-selected-profile-fix.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-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/patches/wicd-urwid-1.3.patch b/gnu/packages/patches/wicd-urwid-1.3.patch
deleted file mode 100644
index 1dc47f869b..0000000000
--- a/gnu/packages/patches/wicd-urwid-1.3.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Update the wicd-curses client to work with urwid-1.3.  Based on a patch from:
-http://technik.blogbasis.net/wicd-curses-fix-fuer-attributeerror-screen-object-no-attribute-get_input_nonblocking-04-12-2014
-
---- wicd-1.7.3/curses/wicd-curses.py.orig	2014-12-21 14:40:46.000000000 -0500
-+++ wicd-1.7.3/curses/wicd-curses.py	2015-02-05 23:41:17.530901204 -0500
-@@ -1153,9 +1153,10 @@
-         if not ui._started:
-             return False
- 
--        input_data = ui.get_input_nonblocking()
-+        ui.set_input_timeouts(max_wait=0)
-+        input_data = ui.get_input()
-         # Resolve any "alarms" in the waiting
--        self.handle_keys(input_data[1])
-+        self.handle_keys(input_data)
- 
-         # Update the screen
-         canvas = self.frame.render((self.size), True)
diff --git a/gnu/packages/patches/wicd-wpa2-ttls.patch b/gnu/packages/patches/wicd-wpa2-ttls.patch
deleted file mode 100644
index 9d80ee7ed2..0000000000
--- a/gnu/packages/patches/wicd-wpa2-ttls.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Add a template for WPA2-TTLS, which is notably used by Eduroam.
-
---- a/encryption/templates/active
-+++ b/encryption/templates/active
-@@ -4,6 +4,7 @@ wpa-psk
- wpa-psk-hex
- wpa2-leap
- wpa2-peap
-+wpa2-ttls
- wep-hex
- wep-passphrase
- wep-shared
-diff --git a/encryption/templates/wpa2-ttls b/encryption/templates/wpa2-ttls
-new file mode 100644
-index 0000000..4f66a1e
---- /dev/null
-+++ b/encryption/templates/wpa2-ttls
-@@ -0,0 +1,20 @@
-+name = WPA2-TTLS (used notably by Eduroam)
-+author = various contributors
-+version = 1
-+require identity *Identity anonymous_identity *Anonymous_identity password *Password ca_cert *Path_to_CA_Cert
-+protected password *Password
-+-----
-+ctrl_interface=/var/run/wpa_supplicant
-+network={
-+        ssid="$_ESSID"
-+        scan_ssid=$_SCAN
-+        proto=WPA2
-+        key_mgmt=WPA-EAP
-+        group=CCMP TKIP
-+        eap=TTLS
-+        identity="$_IDENTITY"
-+        password="$_PASSWORD"
-+        anonymous_identity="$_ANONYMOUS_IDENTITY"
-+        ca_cert="$_CA_CERT"
-+        phase2="auth=PAP"
-+}
diff --git a/gnu/packages/wicd.scm b/gnu/packages/wicd.scm
deleted file mode 100644
index 073d440479..0000000000
--- a/gnu/packages/wicd.scm
+++ /dev/null
@@ -1,197 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2015 Pierre-Antoine Rault <par@rigelk.eu>
-;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
-;;;
-;;; This file is part of GNU Guix.
-;;;
-;;; GNU Guix is free software; you can redistribute it and/or modify it
-;;; under the terms of the GNU General Public License as published by
-;;; the Free Software Foundation; either version 3 of the License, or (at
-;;; your option) any later version.
-;;;
-;;; GNU Guix is distributed in the hope that it will be useful, but
-;;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;;; GNU General Public License for more details.
-;;;
-;;; You should have received a copy of the GNU General Public License
-;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
-
-(define-module (gnu packages wicd)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system python)
-  #:use-module (guix licenses)
-  #:use-module (guix utils)
-  #:use-module (gnu packages)
-  #:use-module (gnu packages glib)
-  #:use-module (gnu packages gtk)
-  #:use-module (gnu packages gnome)
-  #:use-module (gnu packages gettext)
-  #:use-module (gnu packages linux)
-  #:use-module (gnu packages admin)
-  #:use-module (gnu packages python)
-  #:use-module (gnu packages python-xyz))
-
-(define-public wicd
-  (package
-    (name "wicd")
-    (version "1.7.4")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (string-append "https://launchpad.net/wicd/"
-                           (version-major+minor version) "/" version
-                           "/+download/wicd-" version ".tar.gz"))
-       (sha256
-        (base32 "0qpbwwsrqdp40mm3a8djpn2d055rxxspdhwijwsdnws700a9d637"))
-       (patches (search-patches
-                 "wicd-bitrate-none-fix.patch"
-                 "wicd-get-selected-profile-fix.patch"
-                 "wicd-urwid-1.3.patch"
-                 "wicd-wpa2-ttls.patch"))))
-    (build-system python-build-system)
-    (native-inputs `(("gettext" ,gettext-minimal)))
-    (inputs `(("dbus-glib" ,dbus-glib)
-              ("python2-dbus" ,python2-dbus)
-              ("python2-pygtk" ,python2-pygtk)
-              ("python2-urwid" ,python2-urwid)
-              ("python2-babel" ,python2-babel)
-              ("wireless-tools" ,wireless-tools)
-              ("wpa-supplicant" ,wpa-supplicant)
-              ("net-tools" ,net-tools)
-              ("isc-dhcp" ,isc-dhcp)
-              ("iproute" ,iproute)
-              ("hicolor-icon-theme" ,hicolor-icon-theme)))
-    (arguments
-     `(#:python ,python-2
-       #:tests? #f                      ; test suite requires networking
-       ;; wicd directly extends distutils command classes,
-       ;; we can't easily make setup.py use setuptools.
-       #:use-setuptools? #f
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'build 'configure
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (let ((out (assoc-ref outputs "out"))
-                   (python (assoc-ref inputs "python")))
-               (define (which* cmd)
-                 (cond ((string=? cmd "ping")
-                        "/run/setuid-programs/ping")
-                       ((which cmd)
-                        => identity)
-                       (else
-                        (format (current-error-port)
-                                "WARNING: Unable to find absolute path for ~s~%"
-                                cmd)
-                        #f)))
-               (substitute* "setup.py"
-                 ;; The handling of unrecognized distros in setup.py is
-                 ;; broken.  Work around the problem.
-                 (("\\('init=', " all)
-                  (string-append "#" all))
-                 ;; Inhibit attempts to install in /var or /etc.
-                 (("\\(wpath\\.(log|etc|networks|.*scripts), " all)
-                  (string-append "#" all)))
-
-               ;; Patch references to subprograms with absolute pathnames.
-               (substitute* "wicd/wnettools.py"
-                 (("(misc\\.Run\\(\\[?[\"'])([^\"' ]*)" all pre cmd)
-                  (string-append pre (which* cmd)))
-                 (("(self\\._find_program_path|misc\\.find_path)\\([\"']([^\"']*)[\"']\\)"
-                   all dummy cmd)
-                  (let ((pathname (which* cmd)))
-                    (if pathname
-                        (string-append "'" pathname "'")
-                        "None")))
-                 (("([\"'])(ifconfig|route|wpa_cli|wpa_supplicant|iwconfig|iwpriv|iwlist|ping)"
-                   all open-quote cmd)
-                  (string-append open-quote (which* cmd))))
-
-               ;; setup.py cannot cope without LANG
-               (setenv "LANG" "C")
-
-               (let ((params
-                      (list
-                       (string-append "--python=" python "/bin/python")
-                       "--no-install-init"
-                       "--no-install-docs"
-                       "--no-install-acpi"
-                       "--no-install-pmutils"
-                       "--no-install-kde"
-                       "--no-install-gnome-shell-extensions"
-
-                       ;; Don't pass --distro= despite setup.py's complaints.
-                       ;; Guix isn't recognised, and if it ever would be we'd
-                       ;; rather ask upstream to follow standards instead.
-
-                       "--wicdgroup=netdev"
-                       "--loggroup=root"
-                       "--logperms=0640"
-
-                       ;; XXX setup.py configure asks us to pass --init=,
-                       ;; but if we do it says "no such option 'init'".
-                       ;; (string-append "--init=" out "/etc/init.d")
-
-                       (string-append "--initfile=" out "/etc/init.d/wicd")
-                       (string-append "--lib=" out "/lib/wicd")
-                       (string-append "--share=" out "/share/wicd")
-
-                       "--etc=/etc/wicd"
-                       "--scripts=/etc/wicd/scripts"
-                       "--pmutils=/etc/pm-utils/sleep.d"
-
-                       (string-append "--encryption="
-                                      out "/etc/encryption/templates")
-                       (string-append "--bin=" out "/bin")
-                       (string-append "--sbin=" out "/sbin")
-                       (string-append "--daemon=" out "/share/wicd/daemon")
-                       (string-append "--backends=" out "/share/wicd/backends")
-                       (string-append "--curses=" out "/share/wicd/curses")
-                       (string-append "--gtk=" out "/share/wicd/gtk")
-                       (string-append "--cli=" out "/share/wicd/cli")
-                       (string-append "--gnome-shell-extensions="
-                                      out "/share/gnome-shell-extensions")
-                       (string-append "--icons=" out "/share/icons/hicolor")
-                       (string-append "--pixmaps=" out "/share/pixmaps")
-                       (string-append "--images=" out "/share/icons")
-                       (string-append "--dbus=" out "/etc/dbus-1/system.d")
-                       (string-append "--dbus-service="
-                                      out "/share/dbus-1/system-services")
-                       (string-append "--systemd=" out "/lib/systemd/system")
-                       (string-append "--logrotate=" out "/etc/logrotate.d")
-                       (string-append "--desktop=" out "/share/applications")
-                       (string-append "--translations=" out "/share/locale")
-                       (string-append "--autostart=" out "/etc/xdg/autostart")
-                       (string-append "--docdir=" out "/share/doc/wicd")
-                       (string-append "--mandir=" out "/share/man")
-                       (string-append "--kdedir=" out "/share/autostart"))))
-                 (format #t
-                         "running ~s with command ~s and parameters ~s~%"
-                         "python setup.py" "configure" params)
-                 (apply invoke "python" "setup.py" "configure" params)))))
-         (add-after 'install 'post-install
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (let ((out (assoc-ref outputs "out")))
-               ;; wicd's installer tries to put dhclient.conf.template.default
-               ;; in /etc/wicd/other, which is not available in the build
-               ;; environment, so here we install it manually in the output
-               ;; directory.
-               (let ((dest-dir (string-append out "/etc/wicd"))
-                     (name "dhclient.conf.template.default"))
-                 (install-file (string-append "other/" name) dest-dir))
-
-               ;; Copy index.theme from hicolor-icon-theme.  This is needed to
-               ;; allow wicd-gtk to find its icons.
-               (let ((hicolor (assoc-ref inputs "hicolor-icon-theme"))
-                     (name "/share/icons/hicolor/index.theme"))
-                 (install-file (string-append hicolor name)
-                               (string-append out "/share/icons/hicolor")))
-               #t))))))
-    (synopsis "Network connection manager")
-    (description "Wicd is a network manager that aims to simplify wired and
-wireless networking.")
-    (home-page "https://launchpad.net/wicd")
-    (license gpl2+)))
diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm
index d8fe638940..90b9317510 100644
--- a/gnu/services/networking.scm
+++ b/gnu/services/networking.scm
@@ -57,7 +57,6 @@
   #:use-module (gnu packages messaging)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages ntp)
-  #:use-module (gnu packages wicd)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages ipfs)
   #:use-module (gnu build linux-container)
@@ -130,9 +129,6 @@
             tor-hidden-service
             tor-service-type
 
-            wicd-service-type
-            wicd-service
-
             network-manager-configuration
             network-manager-configuration?
             network-manager-configuration-dns
@@ -1094,64 +1090,6 @@ project's documentation} for more information."
 
 
 ;;;
-;;; Wicd.
-;;;
-
-(define %wicd-activation
-  ;; Activation gexp for Wicd.
-  #~(begin
-      (use-modules (guix build utils))
-
-      (mkdir-p "/etc/wicd")
-      (let ((file-name "/etc/wicd/dhclient.conf.template.default"))
-        (unless (file-exists? file-name)
-          (copy-file (string-append #$wicd file-name)
-                     file-name)))
-
-      ;; Wicd invokes 'wpa_supplicant', which needs this directory for its
-      ;; named socket files.
-      (mkdir-p "/var/run/wpa_supplicant")
-      (chmod "/var/run/wpa_supplicant" #o750)))
-
-(define (wicd-shepherd-service wicd)
-  "Return a shepherd service for WICD."
-  (list (shepherd-service
-         (documentation "Run the Wicd network manager.")
-         (provision '(networking))
-         (requirement '(user-processes dbus-system loopback))
-         (start #~(make-forkexec-constructor
-                   (list (string-append #$wicd "/sbin/wicd")
-                         "--no-daemon")))
-         (stop #~(make-kill-destructor)))))
-
-(define wicd-service-type
-  (service-type (name 'wicd)
-                (extensions
-                 (list (service-extension shepherd-root-service-type
-                                          wicd-shepherd-service)
-                       (service-extension dbus-root-service-type
-                                          list)
-                       (service-extension activation-service-type
-                                          (const %wicd-activation))
-
-                       ;; Add Wicd to the global profile.
-                       (service-extension profile-service-type list)))
-                (description
-                 "Run @url{https://launchpad.net/wicd,Wicd}, a network
-management daemon that aims to simplify wired and wireless networking.")))
-
-(define* (wicd-service #:key (wicd wicd))
-  "Return a service that runs @url{https://launchpad.net/wicd,Wicd}, a network
-management daemon that aims to simplify wired and wireless networking.
-
-This service adds the @var{wicd} package to the global profile, providing
-several commands to interact with the daemon and configure networking:
-@command{wicd-client}, a graphical user interface, and the @command{wicd-cli}
-and @command{wicd-curses} user interfaces."
-  (service wicd-service-type wicd))
-
-
-;;;
 ;;; ModemManager
 ;;;
 
diff --git a/gnu/system/linux-container.scm b/gnu/system/linux-container.scm
index eeb0f68c02..24077e347a 100644
--- a/gnu/system/linux-container.scm
+++ b/gnu/system/linux-container.scm
@@ -129,8 +129,7 @@ containerized OS.  EXTRA-FILE-SYSTEMS is a list of file systems to add to OS."
                  static-networking-service-type
                  dhcp-client-service-type
                  network-manager-service-type
-                 connman-service-type
-                 wicd-service-type)
+                 connman-service-type)
                 (list))))
 
   (define services-to-add