~ruther/guix-local

4fb7e0de197a44cbf9aeacc6131128559d72caf3 — Mark H Weaver 11 years ago 6987615
gnu: wpa-supplicant: Add dbus support; add wpa-supplicant-light.

* gnu/packages/admin.scm (wpa-supplicant-light): New variable containing the
  previous dbus-free package, but renamed.  Remove outdated TODO comments.
  (wpa-supplicant): Now inherits from wpa-supplicant-light but adds dbus
  support.
* gnu/system/install.scm (installation-os): Use wpa-supplicant-light.
2 files changed, 24 insertions(+), 11 deletions(-)

M gnu/packages/admin.scm
M gnu/system/install.scm
M gnu/packages/admin.scm => gnu/packages/admin.scm +23 -10
@@ 22,6 22,7 @@
(define-module (gnu packages admin)
  #:use-module (guix licenses)
  #:use-module (guix packages)
  #:use-module (guix utils)
  #:use-module (guix download)
  #:use-module (guix git-download)
  #:use-module (guix build-system cmake)


@@ 677,9 678,9 @@ commands and their arguments.")
    ;; See <http://www.sudo.ws/sudo/license.html>.
    (license x11)))

(define-public wpa-supplicant
(define-public wpa-supplicant-light
  (package
    (name "wpa-supplicant")
    (name "wpa-supplicant-light")
    (version "2.3")
    (source (origin
              (method url-fetch)


@@ 704,11 705,6 @@ commands and their arguments.")
      # Choose GnuTLS (the default is OpenSSL.)
      CONFIG_TLS=gnutls

      # TODO: Add a variant of this package with DBus support.
      #CONFIG_CTRL_IFACE_DBUS=y
      #CONFIG_CTRL_IFACE_DBUS_NEW=y
      #CONFIG_CTRL_IFACE_DBUS_INTRO=y

      CONFIG_DRIVER_NL80211=y
      CFLAGS += $(shell pkg-config libnl-3.0 --cflags)
      CONFIG_LIBNL32=y


@@ 745,9 741,6 @@ commands and their arguments.")
    (inputs
     `(("readline" ,readline)
       ("libnl" ,libnl)
       ;; TODO: Add a variant with DBus support.  This significantly increases
       ;; the size of its closure since DBus depends on libx11.
       ;; ("dbus" ,dbus)
       ("gnutls" ,gnutls)
       ("libgcrypt" ,libgcrypt)))                 ;needed by crypto_gnutls.c
    (native-inputs


@@ 766,6 759,26 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.")
    ;; In practice, this is linked against Readline, which makes it GPLv3+.
    (license bsd-3)))

(define-public wpa-supplicant
  (package (inherit wpa-supplicant-light)
    (name "wpa-supplicant")
    (inputs `(("dbus" ,dbus)
              ,@(package-inputs wpa-supplicant-light)))
    (arguments
     (substitute-keyword-arguments (package-arguments wpa-supplicant-light)
       ((#:phases phases)
        `(alist-cons-after
          'configure 'configure-for-dbus
          (lambda _
            (let ((port (open-file ".config" "al")))
              (display "
      CONFIG_CTRL_IFACE_DBUS=y
      CONFIG_CTRL_IFACE_DBUS_NEW=y
      CONFIG_CTRL_IFACE_DBUS_INTRO=y\n" port)
              (close-port port))
            #t)
          ,phases))))))

(define-public wakelan
  (package
    (name "wakelan")

M gnu/system/install.scm => gnu/system/install.scm +1 -1
@@ 274,7 274,7 @@ Use Alt-F2 for documentation.
                     parted ddrescue
                     grub                  ;mostly so xrefs to its manual work
                     cryptsetup
                     wireless-tools iw wpa-supplicant
                     wireless-tools iw wpa-supplicant-light
                     ;; XXX: We used to have GNU fdisk here, but as of version
                     ;; 2.0.0a, that pulls Guile 1.8, which takes unreasonable
                     ;; space; furthermore util-linux's fdisk is already