unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCHES] Add wicd and wicd-service
@ 2015-02-04  8:59 Mark H Weaver
  2015-02-04  9:05 ` Mark H Weaver
                   ` (3 more replies)
  0 siblings, 4 replies; 20+ messages in thread
From: Mark H Weaver @ 2015-02-04  8:59 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1648 bytes --]

Hello Guix,

This preliminary patch set adds wicd and wicd-service.

The first patch adds dbus support to wpa-supplicant, while preserving
the lightweight wpa-supplicant without dbus under a different name:
wpa-supplicant-light.

The second patch adds the wicd package, although there are still some
issues with it (see below).

The third patch adds wicd-service.

It mostly works, and I'm using it right now, but there are still some
remaining issues:

* Unless run as root, the user interfaces to configure wicd via dbus
  always fail.  The wicd dbus configuration file is supposed to allow
  anyone in the 'netdev' group to access and configure the daemon, but
  this doesn't work.  I could use some help debugging this.

* The curses client always fails with the error "AttributeError:
  'Screen' object has no attribute 'get_input_nonblocking'", which I
  guess indicates some problem or incompatibility with our python2-urwid
  package.

I was pleased to discover that our xfce already includes a panel applet
to configure wicd, but it fails due to the same permissions problem that
affects all the other wicd clients.

Anyway, if you want to try this out, here's what you need to change in
your OS configuration:

* (use-modules (gnu packages wicd)
               (gnu services networking))
* Add wicd to the list passed to 'dbus-service'.
* Add (wicd-service) to 'services'.
* Add wicd to 'packages' (optional but recommended).

Special thanks to Pierre-Antoine Rault <par@rigelk.eu> for packaging
python-dbus and for the initial attempt at the 'wicd' package.

Comments, suggestions, and (most importantly) debugging welcome!

      Mark


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: [PATCH 1/3] gnu: wpa-supplicant: Add dbus support; add wpa-supplicant-light --]
[-- Type: text/x-patch, Size: 3875 bytes --]

From 42884490782c9956912e1239f9cc71f72b921ba9 Mon Sep 17 00:00:00 2001
From: Mark H Weaver <mhw@netris.org>
Date: Tue, 3 Feb 2015 23:35:42 -0500
Subject: [PATCH 1/3] 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.
---
 gnu/packages/admin.scm | 33 +++++++++++++++++++++++----------
 gnu/system/install.scm |  2 +-
 2 files changed, 24 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index cadd3c4..0b3cc02 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -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)
@@ -675,9 +676,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)
@@ -699,11 +700,6 @@ commands and their arguments.")
                      (display "
       CONFIG_DEBUG_SYSLOG=y
 
-      # 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
@@ -720,9 +716,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)
        ("openssl" ,o:openssl)))
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -740,6 +733,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")
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index 5b6dabe..2e7e4ea 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -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
-- 
2.2.1


[-- Attachment #3: [PATCH 2/3] gnu: Add wicd --]
[-- Type: text/x-patch, Size: 9510 bytes --]

From b61226176112a5b5a99482a3f102d9e35ae6f87e Mon Sep 17 00:00:00 2001
From: Mark H Weaver <mhw@netris.org>
Date: Tue, 3 Feb 2015 23:03:04 -0500
Subject: [PATCH 2/3] gnu: Add wicd.

Based on preliminary work by Pierre-Antoine Rault <par@rigelk.eu>

* gnu/packages/wicd.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
---
 gnu-system.am         |   1 +
 gnu/packages/wicd.scm | 175 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 176 insertions(+)
 create mode 100644 gnu/packages/wicd.scm

diff --git a/gnu-system.am b/gnu-system.am
index f9abc97..9a8a377 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -284,6 +284,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/weechat.scm			\
   gnu/packages/wget.scm				\
   gnu/packages/which.scm			\
+  gnu/packages/wicd.scm				\
   gnu/packages/wine.scm				\
   gnu/packages/wordnet.scm			\
   gnu/packages/wv.scm				\
diff --git a/gnu/packages/wicd.scm b/gnu/packages/wicd.scm
new file mode 100644
index 0000000..72b8003
--- /dev/null
+++ b/gnu/packages/wicd.scm
@@ -0,0 +1,175 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2015 Pierre-Antoine Rault <par@rigelk.eu>
+;;;
+;;; 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 (gnu packages glib)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages admin)
+  #:use-module (gnu packages python))
+
+(define-public wicd
+  (package
+    (name "wicd")
+    (version "1.7.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://launchpad.net/wicd/1.7/" version
+                           "/+download/wicd-" version ".tar.gz"))
+       (sha256
+        (base32 "00c4rq753bhg64rv1v9yl834ssq7igyy7cz3swp287b5n5bqiqwi"))))
+    (build-system python-build-system)
+    (native-inputs `(("gettext" ,gnu-gettext)))
+    (inputs `(("dbus" ,dbus)
+              ("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)))
+    (arguments
+     `(#:python ,python-2
+       #:tests? #f                      ; test suite requires networking
+       #:phases
+       (alist-cons-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=', ")          "#('init=', ")
+              ;; 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"
+
+                    "--distro=guixsd"
+                    "--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/wicd/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)
+              (zero? (apply system* "python" "setup.py" "configure" params)))))
+        (alist-cons-after
+         'install 'install-dhclient.conf.template.default
+         (lambda* (#:key outputs #:allow-other-keys)
+           ;; 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* ((out (assoc-ref outputs "out"))
+                  (dest-dir (string-append out "/etc/wicd"))
+                  (name "dhclient.conf.template.default"))
+             (mkdir-p dest-dir)
+             (copy-file (string-append "other/" name)
+                        (string-append dest-dir "/" name))
+             #t))
+         %standard-phases))))
+    (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+)))
-- 
2.2.1


[-- Attachment #4: [PATCH 3/3] services: Add wicd service --]
[-- Type: text/x-patch, Size: 3176 bytes --]

From cfe983f263e3c08a332c96d295aa5743b2b4ccfe Mon Sep 17 00:00:00 2001
From: Mark H Weaver <mhw@netris.org>
Date: Wed, 4 Feb 2015 03:39:48 -0500
Subject: [PATCH 3/3] services: Add wicd service.

* gnu/services/networking.scm (wicd-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
---
 doc/guix.texi               |  6 ++++++
 gnu/services/networking.scm | 27 ++++++++++++++++++++++++++-
 2 files changed, 32 insertions(+), 1 deletion(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index fa3aa6d..4edcf58 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -4443,6 +4443,12 @@ Return a service that starts @var{interface} with address @var{ip}.  If
 gateway.
 @end deffn
 
+@cindex wicd
+@deffn {Monadic Procedure} wicd-service [#:wicd @var{wicd}]
+Return a service that runs @url{https://launchpad.net/wicd,Wicd}, a
+network manager that aims to simplify wired and wireless networking.
+@end deffn
+
 @deffn {Monadic Procedure} ntp-service [#:ntp @var{ntp}] @
   [#:name-service @var{%ntp-servers}]
 Return a service that runs the daemon from @var{ntp}, the
diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm
index f0c3538..a2d8e3a 100644
--- a/gnu/services/networking.scm
+++ b/gnu/services/networking.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -24,6 +25,7 @@
   #:use-module (gnu packages tor)
   #:use-module (gnu packages messaging)
   #:use-module (gnu packages ntp)
+  #:use-module (gnu packages wicd)
   #:use-module (guix gexp)
   #:use-module (guix store)
   #:use-module (guix monads)
@@ -34,7 +36,8 @@
             %ntp-servers
             ntp-service
             tor-service
-            bitlbee-service))
+            bitlbee-service
+            wicd-service))
 
 ;;; Commentary:
 ;;;
@@ -297,4 +300,26 @@ configuration file."
                             (shell #~(string-append #$shadow
                                                     "/sbin/nologin")))))))))
 
+(define* (wicd-service #:key (wicd wicd))
+  "Return a service that runs @url{https://launchpad.net/wicd,Wicd}, a network
+manager that aims to simplify wired and wireless networking."
+  (with-monad %store-monad
+    (return
+     (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))
+      (activate
+       #~(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)))))))))
+
 ;;; networking.scm ends here
-- 
2.2.1


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-04  8:59 [PATCHES] Add wicd and wicd-service Mark H Weaver
@ 2015-02-04  9:05 ` Mark H Weaver
  2015-02-04 22:15   ` Ludovic Courtès
  2015-02-04 22:13 ` Ludovic Courtès
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 20+ messages in thread
From: Mark H Weaver @ 2015-02-04  9:05 UTC (permalink / raw)
  To: guix-devel

Mark H Weaver <mhw@netris.org> writes:

> It mostly works, and I'm using it right now, but there are still some
> remaining issues:
>
> * Unless run as root, the user interfaces to configure wicd via dbus
>   always fail.  The wicd dbus configuration file is supposed to allow
>   anyone in the 'netdev' group to access and configure the daemon, but
>   this doesn't work.  I could use some help debugging this.

I should have given more details.  Here's the error I get:

--8<---------------cut here---------------start------------->8---
mhw@jojen:~$ wicd-cli -y -l
#	BSSID			Channel	ESSID
ERROR:dbus.proxies:Introspect error on :1.2:/org/wicd/daemon/wireless: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 1 matched rules; type="method_call", sender=":1.12" (uid=1000 pid=2445 comm="/gnu/store/y4v8psklnvp5il65dlwbd0w161k67r3p-python") interface="org.freedesktop.DBus.Introspectable" member="Introspect" error name="(unset)" requested_reply="0" destination=":1.2" (uid=0 pid=143 comm="/gnu/store/y4v8psklnvp5il65dlwbd0w161k67r3p-python")
Traceback (most recent call last):
  File "/gnu/store/bj26lsibzw8ls53mvag7nkgfizzzckvw-wicd-1.7.3/share/wicd/cli/wicd-cli.py", line 165, in <module>
    for network_id in range(0, wireless.GetNumberOfNetworks()):
  File "/gnu/store/2gqvnhy7lzrbapkh59kfmlky6ynak9fk-python2-dbus-1.2.0/lib/python2.7/site-packages/dbus/proxies.py", line 70, in __call__
    return self._proxy_method(*args, **keywords)
  File "/gnu/store/2gqvnhy7lzrbapkh59kfmlky6ynak9fk-python2-dbus-1.2.0/lib/python2.7/site-packages/dbus/proxies.py", line 145, in __call__
    **keywords)
  File "/gnu/store/2gqvnhy7lzrbapkh59kfmlky6ynak9fk-python2-dbus-1.2.0/lib/python2.7/site-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 1 matched rules; type="method_call", sender=":1.12" (uid=1000 pid=2445 comm="/gnu/store/y4v8psklnvp5il65dlwbd0w161k67r3p-python") interface="org.wicd.daemon.wireless" member="GetNumberOfNetworks" error name="(unset)" requested_reply="0" destination=":1.2" (uid=0 pid=143 comm="/gnu/store/y4v8psklnvp5il65dlwbd0w161k67r3p-python")
--8<---------------cut here---------------end--------------->8---

I get similar errors from all of the other clients.

> * The curses client always fails with the error "AttributeError:
>   'Screen' object has no attribute 'get_input_nonblocking'", which I
>   guess indicates some problem or incompatibility with our python2-urwid
>   package.

For now, the nicest way to configure this is to run 'wicd-gtk' as root.

      Mark

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-04  8:59 [PATCHES] Add wicd and wicd-service Mark H Weaver
  2015-02-04  9:05 ` Mark H Weaver
@ 2015-02-04 22:13 ` Ludovic Courtès
  2015-02-04 23:39 ` Mark H Weaver
  2015-02-05  1:22 ` Mark H Weaver
  3 siblings, 0 replies; 20+ messages in thread
From: Ludovic Courtès @ 2015-02-04 22:13 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

Mark H Weaver <mhw@netris.org> skribis:

> This preliminary patch set adds wicd and wicd-service.

Yay!

[...]

> From 42884490782c9956912e1239f9cc71f72b921ba9 Mon Sep 17 00:00:00 2001
> From: Mark H Weaver <mhw@netris.org>
> Date: Tue, 3 Feb 2015 23:35:42 -0500
> Subject: [PATCH 1/3] 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.

LGTM!  I apologize for modifying it in the meantime; this will have to
be slightly adjusted.

> From b61226176112a5b5a99482a3f102d9e35ae6f87e Mon Sep 17 00:00:00 2001
> From: Mark H Weaver <mhw@netris.org>
> Date: Tue, 3 Feb 2015 23:03:04 -0500
> Subject: [PATCH 2/3] gnu: Add wicd.
>
> Based on preliminary work by Pierre-Antoine Rault <par@rigelk.eu>
>
> * gnu/packages/wicd.scm: New file.
> * gnu-system.am (GNU_SYSTEM_MODULES): Add it.

OK!

> From cfe983f263e3c08a332c96d295aa5743b2b4ccfe Mon Sep 17 00:00:00 2001
> From: Mark H Weaver <mhw@netris.org>
> Date: Wed, 4 Feb 2015 03:39:48 -0500
> Subject: [PATCH 3/3] services: Add wicd service.
>
> * gnu/services/networking.scm (wicd-service): New procedure.
> * doc/guix.texi (Networking Services): Document it.

LGTM.

I guess this is going to make my daily use brighter, so thanks!

Ludo’.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-04  9:05 ` Mark H Weaver
@ 2015-02-04 22:15   ` Ludovic Courtès
  0 siblings, 0 replies; 20+ messages in thread
From: Ludovic Courtès @ 2015-02-04 22:15 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

Mark H Weaver <mhw@netris.org> skribis:

> Mark H Weaver <mhw@netris.org> writes:
>
>> It mostly works, and I'm using it right now, but there are still some
>> remaining issues:
>>
>> * Unless run as root, the user interfaces to configure wicd via dbus
>>   always fail.  The wicd dbus configuration file is supposed to allow
>>   anyone in the 'netdev' group to access and configure the daemon, but
>>   this doesn't work.  I could use some help debugging this.
>
> I should have given more details.  Here's the error I get:
>
> mhw@jojen:~$ wicd-cli -y -l
> #	BSSID			Channel	ESSID
> ERROR:dbus.proxies:Introspect error on :1.2:/org/wicd/daemon/wireless: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 1 matched rules; type="method_call", sender=":1.12" (uid=1000 pid=2445 comm="/gnu/store/y4v8psklnvp5il65dlwbd0w161k67r3p-python") interface="org.freedesktop.DBus.Introspectable" member="Introspect" error name="(unset)" requested_reply="0" destination=":1.2" (uid=0 pid=143 comm="/gnu/store/y4v8psklnvp5il65dlwbd0w161k67r3p-python")

I suspect we need to feed our system dbus with policy files or something
like that.

Ludo’.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-04  8:59 [PATCHES] Add wicd and wicd-service Mark H Weaver
  2015-02-04  9:05 ` Mark H Weaver
  2015-02-04 22:13 ` Ludovic Courtès
@ 2015-02-04 23:39 ` Mark H Weaver
  2015-02-05  1:22 ` Mark H Weaver
  3 siblings, 0 replies; 20+ messages in thread
From: Mark H Weaver @ 2015-02-04 23:39 UTC (permalink / raw)
  To: guix-devel

I've pushed these to master.

Mark H Weaver <mhw@netris.org> writes:

> Anyway, if you want to try this out, here's what you need to change in
> your OS configuration:
>
> * (use-modules (gnu packages wicd)
>                (gnu services networking))
> * Add wicd to the list passed to 'dbus-service'.
> * Add (wicd-service) to 'services'.
> * Add wicd to 'packages' (optional but recommended).

One more thing: you should remove (dhcp-client-service) if it's already
there.  wicd starts dhclient on its own, and I suspect it would cause
problems if two are running on the same interfaces.

      Mark

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-04  8:59 [PATCHES] Add wicd and wicd-service Mark H Weaver
                   ` (2 preceding siblings ...)
  2015-02-04 23:39 ` Mark H Weaver
@ 2015-02-05  1:22 ` Mark H Weaver
  2015-02-05 14:05   ` Daniel Pimentel
                     ` (2 more replies)
  3 siblings, 3 replies; 20+ messages in thread
From: Mark H Weaver @ 2015-02-05  1:22 UTC (permalink / raw)
  To: guix-devel

Mark H Weaver <mhw@netris.org> writes:

> * Unless run as root, the user interfaces to configure wicd via dbus
>   always fail.  The wicd dbus configuration file is supposed to allow
>   anyone in the 'netdev' group to access and configure the daemon, but
>   this doesn't work.  I could use some help debugging this.

This all works now, without running the clients as root! :)
I'm not sure which change in my configuration made things start working.

* I added my user to the 'netdev' group in my os-configuration for the
  first time, whereas earlier I simply edited /etc/group by hand and
  rebooted.

* I just added Ludovic's new suggested 'name-service-switch'
  configuration with nss-mdns support.

* I'm now running on current 'master', and there have been some changes
  there since my earlier testing.

> I was pleased to discover that our xfce already includes a panel applet
> to configure wicd

And this is working as well, although it seems unable to find some of
the icons.  Anyway, it's a step in the right direction :)

     Enjoy!
       Mark

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-05  1:22 ` Mark H Weaver
@ 2015-02-05 14:05   ` Daniel Pimentel
  2015-02-12 12:47   ` Daniel Pimentel
  2015-02-12 20:05   ` [PATCHES] Add wicd and wicd-service Ludovic Courtès
  2 siblings, 0 replies; 20+ messages in thread
From: Daniel Pimentel @ 2015-02-05 14:05 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel, guix-devel-bounces+d4n1=opmbx.org

On 2015-02-04 22:22, Mark H Weaver wrote:
> Mark H Weaver <mhw@netris.org> writes:
> 
>> * Unless run as root, the user interfaces to configure wicd via dbus
>>   always fail.  The wicd dbus configuration file is supposed to allow
>>   anyone in the 'netdev' group to access and configure the daemon, but
>>   this doesn't work.  I could use some help debugging this.
> 
> This all works now, without running the clients as root! :)
> I'm not sure which change in my configuration made things start 
> working.
> 
> * I added my user to the 'netdev' group in my os-configuration for the
>   first time, whereas earlier I simply edited /etc/group by hand and
>   rebooted.
> 
> * I just added Ludovic's new suggested 'name-service-switch'
>   configuration with nss-mdns support.
> 
> * I'm now running on current 'master', and there have been some changes
>   there since my earlier testing.
> 
>> I was pleased to discover that our xfce already includes a panel 
>> applet
>> to configure wicd
> 
> And this is working as well, although it seems unable to find some of
> the icons.  Anyway, it's a step in the right direction :)
> 
>      Enjoy!
>        Mark
Great news! Thanks,
-- 
Daniel Pimentel (d4n1)

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-05  1:22 ` Mark H Weaver
  2015-02-05 14:05   ` Daniel Pimentel
@ 2015-02-12 12:47   ` Daniel Pimentel
  2015-02-12 13:44     ` Mark H Weaver
  2015-02-12 20:05   ` [PATCHES] Add wicd and wicd-service Ludovic Courtès
  2 siblings, 1 reply; 20+ messages in thread
From: Daniel Pimentel @ 2015-02-12 12:47 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel, guix-devel-bounces+d4n1=opmbx.org

On 2015-02-04 22:22, Mark H Weaver wrote:
> Mark H Weaver <mhw@netris.org> writes:
> 
>> * Unless run as root, the user interfaces to configure wicd via dbus
>>   always fail.  The wicd dbus configuration file is supposed to allow
>>   anyone in the 'netdev' group to access and configure the daemon, but
>>   this doesn't work.  I could use some help debugging this.
> 
> This all works now, without running the clients as root! :)
> I'm not sure which change in my configuration made things start 
> working.
> 
> * I added my user to the 'netdev' group in my os-configuration for the
>   first time, whereas earlier I simply edited /etc/group by hand and
>   rebooted.
> 
> * I just added Ludovic's new suggested 'name-service-switch'
>   configuration with nss-mdns support.
> 
> * I'm now running on current 'master', and there have been some changes
>   there since my earlier testing.
> 
>> I was pleased to discover that our xfce already includes a panel 
>> applet
>> to configure wicd
> 
> And this is working as well, although it seems unable to find some of
> the icons.  Anyway, it's a step in the right direction :)
> 
>      Enjoy!
>        Mark
Guixs, I reconfigured my system with wicd. My config.scm (in 
/etc/config.scm):
(use-modules (gnu))
(use-service-modules xorg networking dbus avahi)
(use-package-modules avahi wicd)
...
(service (cons* (slim-service)
                  (wicd-service)
                  (dbus-service (list wicd))
...

But, whem there is error when use wicd-gtk with my normal user or with 
root:
Failed to connect to socket /var/run/dbus/system_dbus_socket: Connection 
refused

Help me please, thanks.
-- 
Daniel Pimentel (d4n1)

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-12 12:47   ` Daniel Pimentel
@ 2015-02-12 13:44     ` Mark H Weaver
  2015-02-23 14:32       ` Daniel Pimentel
  0 siblings, 1 reply; 20+ messages in thread
From: Mark H Weaver @ 2015-02-12 13:44 UTC (permalink / raw)
  To: Daniel Pimentel; +Cc: guix-devel

Daniel Pimentel <d4n1@openmailbox.org> writes:

> Guixs, I reconfigured my system with wicd. My config.scm (in
> /etc/config.scm):
> (use-modules (gnu))
> (use-service-modules xorg networking dbus avahi)
> (use-package-modules avahi wicd)
> ...
> (service (cons* (slim-service)
>                  (wicd-service)
>                  (dbus-service (list wicd))
> ...
>
> But, whem there is error when use wicd-gtk with my normal user or with
> root:
> Failed to connect to socket /var/run/dbus/system_dbus_socket:
> Connection refused

The most likely cause of this is that dbus-system was unable to start
because of a stale /var/run/dbus/pid file left over from a system crash
or improper shutdown.  IMO, we should add a service or two that clears
out /tmp and /var/run at early boot time as is normally done on other
systems.

For now, the solution is to run (as root):

  rm /var/run/dbus/pid
  deco enable dbus-system
  deco start dbus-system

I guess that 'wicd' should then start automatically, but if not you
could start it with "deco enable wicd" and "deco start wicd" as well.

     Mark

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-05  1:22 ` Mark H Weaver
  2015-02-05 14:05   ` Daniel Pimentel
  2015-02-12 12:47   ` Daniel Pimentel
@ 2015-02-12 20:05   ` Ludovic Courtès
  2 siblings, 0 replies; 20+ messages in thread
From: Ludovic Courtès @ 2015-02-12 20:05 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

Mark H Weaver <mhw@netris.org> skribis:

> * I added my user to the 'netdev' group in my os-configuration for the
>   first time

I confirm that doing this allows said user to run wicd-gtk & co.

Ludo’.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-12 13:44     ` Mark H Weaver
@ 2015-02-23 14:32       ` Daniel Pimentel
  2015-03-08 23:57         ` 白熊
  0 siblings, 1 reply; 20+ messages in thread
From: Daniel Pimentel @ 2015-02-23 14:32 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel, guix-devel-bounces+d4n1=opmbx.org

On 2015-02-12 10:44, Mark H Weaver wrote:
> Daniel Pimentel <d4n1@openmailbox.org> writes:
> 
>> Guixs, I reconfigured my system with wicd. My config.scm (in
>> /etc/config.scm):
>> (use-modules (gnu))
>> (use-service-modules xorg networking dbus avahi)
>> (use-package-modules avahi wicd)
>> ...
>> (service (cons* (slim-service)
>>                  (wicd-service)
>>                  (dbus-service (list wicd))
>> ...
>> 
>> But, whem there is error when use wicd-gtk with my normal user or with
>> root:
>> Failed to connect to socket /var/run/dbus/system_dbus_socket:
>> Connection refused
> 
> The most likely cause of this is that dbus-system was unable to start
> because of a stale /var/run/dbus/pid file left over from a system crash
> or improper shutdown.  IMO, we should add a service or two that clears
> out /tmp and /var/run at early boot time as is normally done on other
> systems.
> 
> For now, the solution is to run (as root):
> 
>   rm /var/run/dbus/pid
>   deco enable dbus-system
>   deco start dbus-system
> 
> I guess that 'wicd' should then start automatically, but if not you
> could start it with "deco enable wicd" and "deco start wicd" as well.
> 
>      Mark
It's works. I add my user to netdev group too.

Thanks,
-- 
Daniel Pimentel (d4n1)

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-02-23 14:32       ` Daniel Pimentel
@ 2015-03-08 23:57         ` 白熊
  2015-03-09  2:04           ` Mark H Weaver
  0 siblings, 1 reply; 20+ messages in thread
From: 白熊 @ 2015-03-08 23:57 UTC (permalink / raw)
  To: guix-devel



On 2015年2月23日 15:32:44 CET, Daniel Pimentel <d4n1@openmailbox.org> wrote:
>On 2015-02-12 10:44, Mark H Weaver wrote:
>> Daniel Pimentel <d4n1@openmailbox.org> writes:
>> 
>>> Guixs, I reconfigured my system with wicd. My config.scm (in
>>> /etc/config.scm):
>>> (use-modules (gnu))
>>> (use-service-modules xorg networking dbus avahi)
>>> (use-package-modules avahi wicd)
>>> ...
>>> (service (cons* (slim-service)
>>>                  (wicd-service)
>>>                  (dbus-service (list wicd))
> 
>It's works. I add my user to netdev group too.

It doesn't (the config.scm) seem to be working for me. 

When running `sudo guix system reconfigure /etc/sysconfig.scm' I get: 

guix system: error: failed to load operating system file '/etc/sysconfig.scm':
ERROR: no code for module (gnu packages wicd)

This after a `guix pull'.

What could be the problem?
--
白い熊

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-03-08 23:57         ` 白熊
@ 2015-03-09  2:04           ` Mark H Weaver
  2015-03-09  6:23             ` 白い熊 @相撲道
  0 siblings, 1 reply; 20+ messages in thread
From: Mark H Weaver @ 2015-03-09  2:04 UTC (permalink / raw)
  To: 白熊; +Cc: guix-devel

白熊 <guix-devel_gnu.org@sumou.com> writes:

> On 2015年2月23日 15:32:44 CET, Daniel Pimentel <d4n1@openmailbox.org> wrote:
>>On 2015-02-12 10:44, Mark H Weaver wrote:
>>> Daniel Pimentel <d4n1@openmailbox.org> writes:
>>> 
>>>> Guixs, I reconfigured my system with wicd. My config.scm (in
>>>> /etc/config.scm):
>>>> (use-modules (gnu))
>>>> (use-service-modules xorg networking dbus avahi)
>>>> (use-package-modules avahi wicd)
>>>> ...
>>>> (service (cons* (slim-service)
>>>>                  (wicd-service)
>>>>                  (dbus-service (list wicd))
>> 
>>It's works. I add my user to netdev group too.
>
> It doesn't (the config.scm) seem to be working for me. 
>
> When running `sudo guix system reconfigure /etc/sysconfig.scm' I get: 
>
> guix system: error: failed to load operating system file '/etc/sysconfig.scm':
> ERROR: no code for module (gnu packages wicd)
>
> This after a `guix pull'.
>
> What could be the problem?

"guix pull" puts the updates in $HOME/.config/guix/latest, so it will
only affect calls to 'guix' by the user who ran "guix pull".  When you
run 'guix' as some other user (root in this case), then it won't see
those updates.

So I guess you should run "sudo guix pull" and then try again.

      Mark

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-03-09  2:04           ` Mark H Weaver
@ 2015-03-09  6:23             ` 白い熊 @相撲道
  2015-03-09  8:50               ` Ludovic Courtès
  2015-03-09 10:46               ` Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd 白い熊 @相撲道
  0 siblings, 2 replies; 20+ messages in thread
From: 白い熊 @相撲道 @ 2015-03-09  6:23 UTC (permalink / raw)
  To: guix-devel



On 2015年3月9日 3:04:55 CET, Mark H Weaver <mhw@netris.org> wrote:
>> When running `sudo guix system reconfigure /etc/sysconfig.scm' I get:
>
>>
>> guix system: error: failed to load operating system file
>'/etc/sysconfig.scm':
>> ERROR: no code for module (gnu packages wicd)
>>
>> This after a `guix pull'.
>>
>> What could be the problem?
>
>"guix pull" puts the updates in $HOME/.config/guix/latest, so it will
>only affect calls to 'guix' by the user who ran "guix pull".  When you
>run 'guix' as some other user (root in this case), then it won't see
>those updates.
>
>So I guess you should run "sudo guix pull" and then try again.

OK, did this, was able to reconfigure the system then and now I get a kernel panic on boot, same issue as in http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00757.html

I have a Gluglug X200 too, so it's something related to it I guess. 

I'll try to collect more meaningful error messages than reported in the other thread and will follow up there shortly, also with the summary of changes (just wicd related) in the sysconfig.scm that caused this. 
--
白い熊 @相撲道

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCHES] Add wicd and wicd-service
  2015-03-09  6:23             ` 白い熊 @相撲道
@ 2015-03-09  8:50               ` Ludovic Courtès
  2015-03-09 10:46               ` Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd 白い熊 @相撲道
  1 sibling, 0 replies; 20+ messages in thread
From: Ludovic Courtès @ 2015-03-09  8:50 UTC (permalink / raw)
  To: 白い熊 @相撲道; +Cc: guix-devel

"白い熊 @相撲道" <guix-devel_gnu.org@sumou.com> skribis:

> On 2015年3月9日 3:04:55 CET, Mark H Weaver <mhw@netris.org> wrote:
>>> When running `sudo guix system reconfigure /etc/sysconfig.scm' I get:
>>
>>>
>>> guix system: error: failed to load operating system file
>>'/etc/sysconfig.scm':
>>> ERROR: no code for module (gnu packages wicd)
>>>
>>> This after a `guix pull'.
>>>
>>> What could be the problem?
>>
>>"guix pull" puts the updates in $HOME/.config/guix/latest, so it will
>>only affect calls to 'guix' by the user who ran "guix pull".  When you
>>run 'guix' as some other user (root in this case), then it won't see
>>those updates.
>>
>>So I guess you should run "sudo guix pull" and then try again.
>
> OK, did this, was able to reconfigure the system then and now I get a kernel panic on boot, same issue as in http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00757.html

If you choose one of the previous configurations in the GRUB menu, does
it boot?

This might be due to a failure to mount the root file system, for
instance due to a missing module in the initrd.  Would be good if you
could check in the running system what modules are used for the root
device.

Once you’ve identified the problem, we must also arrange for the boot
code to provide better error handling.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd
  2015-03-09  6:23             ` 白い熊 @相撲道
  2015-03-09  8:50               ` Ludovic Courtès
@ 2015-03-09 10:46               ` 白い熊 @相撲道
  2015-03-09 11:14                 ` Daniel Pimentel
                                   ` (2 more replies)
  1 sibling, 3 replies; 20+ messages in thread
From: 白い熊 @相撲道 @ 2015-03-09 10:46 UTC (permalink / raw)
  To: guix-devel

I've installed GuixSD on the Gluglug X200 without a problem, using instructions for the X60. [1]

Did `# guix pull' and reconfigured the system to enable the wicd service. [2]

However on the Gluglug X200 the system freezes upon reboot with a kernel panic if “(wicd-service)” is included in services in sysconfig.scm, same symptoms upon boot crash as another user has experienced with the X200. [3]

The current kernel is 3.18.9.

If sysconfig.scm contains: 

(use modules (gnu))
(use-service-modules xorg networking dbus avahi)
(use-package-modules avahi wicd)
...
(services (cons* (slim-service)
                 (dbus-service (list wicd))
                 (dhcp-client-service)
                 (avahi-service)
                 %base-services))

the system boots no problem after reconfigure. However wicd can't be started even with the dbus-enable hack [4], as the “wicd-service” is logically not present, and thus “sudo deco enable wicd” fails with “No service at all providing wicd.”

Now when just “(wicd-service)” is added to services, this being the only change compared with the above, the system will hang on boot.

There are no error messages on boot up to dmd start. Then it fails with:

setting up setuid programs in '/run/setuid-programs'...
making '/gnu/store/h5s1apxpmg8cgdwj9x3yzyxj8f6zizzr-system' the current system...
[    2.915986] random: nonblocking pool is initialized
Service dmd has been started.
Assertion (null? (lookup-services (canonical-name new))) failed.
assertion-failed()
[    4.706625] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100
[    4.706625]
[    4.708661] CPU: 1 PID: 1 Comm: dmd Tainted: G         I    3.18.9-gnu #1
[    4.709216] Hardware name: LENOVO 7459ED2/7459ED2, BIOS CBET4000 4.0 12/31/2014
[    4.709216]  ffff88023310f100 ffff880234097e28 ffffffff8175e8cb 000000000000542a
[    4.709216]  ffffffff81a7aad0 ffff880234097ea8 ffffffff817599be ffff880234140000
[    4.709216]  ffffffff00000010 ffff880234097eb8 ffff880234097e58 ffffffff81c5ea80
[    4.709216] Call Trace:
[    4.709216]  [<ffffffff8175e8cb>] dump_stack+0x46/0x58
[    4.709216]  [<ffffffff817599be>] panic+0xc1/0x1f5
[    4.709216]  [<ffffffff81074507>] do_exit+0xa67/0xa70
[    4.709216]  [<ffffffff8109cee0>] ? wake_up_state+0x10/0x20
[    4.709216]  [<ffffffff8107de52>] ? signal_wake_up_state+0x22/0x40
[    4.709216]  [<ffffffff8107459f>] do_group_exit+0x3f/0xa0
[    4.709216]  [<ffffffff81074614>] SyS_exit_group+0x14/0x20
[    4.709216]  [<ffffffff81766c6d>] system_call_fastpath+0x16/0x1b
[    4.709216] Kernel Offset: 0x0 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
[    4.709216] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100
[    4.709216]

I'll be much obliged for help in getting wicd working on the Gluglug X200. 

Best regards, 
--
白い熊 @相撲道

[1] http://glean.eu/guix-gluglug.html
[2] http://lists.gnu.org/archive/html/guix-devel/2015-03/msg00250.html
[3] http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00757.html
[4] http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00338.html

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd
  2015-03-09 10:46               ` Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd 白い熊 @相撲道
@ 2015-03-09 11:14                 ` Daniel Pimentel
  2015-03-09 12:04                 ` 白い熊 @相撲道
  2015-03-09 19:55                 ` Ludovic Courtès
  2 siblings, 0 replies; 20+ messages in thread
From: Daniel Pimentel @ 2015-03-09 11:14 UTC (permalink / raw)
  To: 白い熊 @相撲道
  Cc: guix-devel, guix-devel-bounces+d4n1=opmbx.org

On 2015-03-09 07:46, 白い熊 @相撲道 wrote:
> I've installed GuixSD on the Gluglug X200 without a problem, using
> instructions for the X60. [1]
> 
> Did `# guix pull' and reconfigured the system to enable the wicd 
> service. [2]
> 
> However on the Gluglug X200 the system freezes upon reboot with a
> kernel panic if “(wicd-service)” is included in services in
> sysconfig.scm, same symptoms upon boot crash as another user has
> experienced with the X200. [3]
> 
> The current kernel is 3.18.9.
> 
> If sysconfig.scm contains:
> 
> (use modules (gnu))
> (use-service-modules xorg networking dbus avahi)
> (use-package-modules avahi wicd)
> ...
> (services (cons* (slim-service)
>                  (dbus-service (list wicd))
>                  (dhcp-client-service)
>                  (avahi-service)
>                  %base-services))
> 
> the system boots no problem after reconfigure. However wicd can't be
> started even with the dbus-enable hack [4], as the “wicd-service” is
> logically not present, and thus “sudo deco enable wicd” fails with “No
> service at all providing wicd.”
> 
> Now when just “(wicd-service)” is added to services, this being the
> only change compared with the above, the system will hang on boot.
> 
> There are no error messages on boot up to dmd start. Then it fails 
> with:
> 
> setting up setuid programs in '/run/setuid-programs'...
> making '/gnu/store/h5s1apxpmg8cgdwj9x3yzyxj8f6zizzr-system' the
> current system...
> [    2.915986] random: nonblocking pool is initialized
> Service dmd has been started.
> Assertion (null? (lookup-services (canonical-name new))) failed.
> assertion-failed()
> [    4.706625] Kernel panic - not syncing: Attempted to kill init!
> exitcode=0x00000100
> [    4.706625]
> [    4.708661] CPU: 1 PID: 1 Comm: dmd Tainted: G         I    
> 3.18.9-gnu #1
> [    4.709216] Hardware name: LENOVO 7459ED2/7459ED2, BIOS CBET4000
> 4.0 12/31/2014
> [    4.709216]  ffff88023310f100 ffff880234097e28 ffffffff8175e8cb
> 000000000000542a
> [    4.709216]  ffffffff81a7aad0 ffff880234097ea8 ffffffff817599be
> ffff880234140000
> [    4.709216]  ffffffff00000010 ffff880234097eb8 ffff880234097e58
> ffffffff81c5ea80
> [    4.709216] Call Trace:
> [    4.709216]  [<ffffffff8175e8cb>] dump_stack+0x46/0x58
> [    4.709216]  [<ffffffff817599be>] panic+0xc1/0x1f5
> [    4.709216]  [<ffffffff81074507>] do_exit+0xa67/0xa70
> [    4.709216]  [<ffffffff8109cee0>] ? wake_up_state+0x10/0x20
> [    4.709216]  [<ffffffff8107de52>] ? signal_wake_up_state+0x22/0x40
> [    4.709216]  [<ffffffff8107459f>] do_group_exit+0x3f/0xa0
> [    4.709216]  [<ffffffff81074614>] SyS_exit_group+0x14/0x20
> [    4.709216]  [<ffffffff81766c6d>] system_call_fastpath+0x16/0x1b
> [    4.709216] Kernel Offset: 0x0 from 0xffffffff81000000 (relocation
> range: 0xffffffff80000000-0xffffffffbfffffff)
> [    4.709216] ---[ end Kernel panic - not syncing: Attempted to kill
> init! exitcode=0x00000100
> [    4.709216]
> 
> I'll be much obliged for help in getting wicd working on the Gluglug 
> X200.
> 
> Best regards,
> --
> 白い熊 @相撲道
> 
> [1] http://glean.eu/guix-gluglug.html
> [2] http://lists.gnu.org/archive/html/guix-devel/2015-03/msg00250.html
> [3] http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00757.html
> [4] http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00338.html
I have a similar error on x200 tablet, but there's kernel panic after 
upgrade system, probalily was a configuration in my system. I'll 
debuging for solution and help the community.
-- 
Daniel Pimentel (d4n1)

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd
  2015-03-09 10:46               ` Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd 白い熊 @相撲道
  2015-03-09 11:14                 ` Daniel Pimentel
@ 2015-03-09 12:04                 ` 白い熊 @相撲道
  2015-03-09 19:55                 ` Ludovic Courtès
  2 siblings, 0 replies; 20+ messages in thread
From: 白い熊 @相撲道 @ 2015-03-09 12:04 UTC (permalink / raw)
  To: guix-devel

On 2015年3月9日 9:50:28 CET, ludo@gnu.org wrote:
>"白い熊 @相撲道" <guix-devel_gnu.org@sumou.com> skribis:
>
>> OK, did this, was able to reconfigure the system then and now I get a
>kernel panic on boot, same issue as in
>http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00757.html
>
>If you choose one of the previous configurations in the GRUB menu, does
>it boot?
>
>This might be due to a failure to mount the root file system, for
>instance due to a missing module in the initrd.  Would be good if you
>could check in the running system what modules are used for the root
>device.

I think it mounts root. It seems to me to be associated with the assertion failed: 

On 2015年3月9日 11:46:11 CET, "白い熊 @相撲道" <guix-devel_gnu.org@sumou.com> wrote:
>Service dmd has been started.
>Assertion (null? (lookup-services (canonical-name new))) failed.
>assertion-failed()
>[    4.706625] Kernel panic - not syncing: Attempted to kill init!

Anyhow without “wicd-service” it boots fine and `lsmod': 

Module                  Size  Used by
snd_hda_codec_conexant    23064  1 
snd_hda_codec_generic    68898  1 snd_hda_codec_conexant
arc4                   12608  2 
ath9k                 151646  0 
mac80211              662232  1 ath9k
iTCO_wdt               13480  0 
iTCO_vendor_support    13718  1 iTCO_wdt
snd_hda_intel          30569  0 
ath9k_common           25638  1 ath9k
snd_hda_controller     31921  1 snd_hda_intel
snd_hda_codec         139428  4 snd_hda_codec_conexant,snd_hda_codec_generic,snd_hda_intel,snd_hda_controller
ath9k_hw              450978  2 ath9k_common,ath9k
coretemp               13441  0 
snd_hwdep              17698  1 snd_hda_codec
snd_pcm               105335  3 snd_hda_codec,snd_hda_intel,snd_hda_controller
thinkpad_acpi          80930  0 
ath                    29006  3 ath9k_common,ath9k,ath9k_hw
kvm_intel             148271  0 
cfg80211              493057  4 ath,ath9k_common,ath9k,mac80211
i915                  989654  2 
kvm                   462421  1 kvm_intel
snd_timer              29507  1 snd_pcm
snd                    83564  8 snd_hwdep,snd_timer,snd_hda_codec_conexant,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,thinkpad_acpi
uvcvideo               81117  0 
soundcore              15047  2 snd,snd_hda_codec
psmouse               111537  0 
videobuf2_core         51175  1 uvcvideo
drm_kms_helper         98431  1 i915
v4l2_common            15681  1 videobuf2_core
drm                   317496  4 i915,drm_kms_helper
pcspkr                 12718  0 
lpc_ich                21093  0 
serio_raw              13483  0 
e1000e                226556  0 
i2c_i801               22454  0 
nvram                  14411  1 thinkpad_acpi
shpchp                 37047  0 
videodev              158681  3 uvcvideo,v4l2_common,videobuf2_core
btusb                  32385  0 
media                  21903  2 uvcvideo,videodev
videobuf2_vmalloc      13216  1 uvcvideo
i2c_algo_bit           13413  1 i915
videobuf2_memops       13362  1 videobuf2_vmalloc
bluetooth             457848  2 btusb
ptp                    19395  1 e1000e
video                  20205  1 i915
pps_core               19382  1 ptp
mac_hid                13227  0 
usbhid                 52615  0 
hid                   110066  1 usbhid
usbkbd                 12926  0 
uas                    22414  0 
usb_storage            66545  1 uas
isci                  137637  0 
libsas                 83521  1 isci
scsi_transport_sas     41034  2 isci,libsas
pata_atiixp            13279  0 
pata_acpi              13053  0 
ahci                   34019  2 
libahci                32190  1 ahci

--
白い熊 @相撲道

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd
  2015-03-09 10:46               ` Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd 白い熊 @相撲道
  2015-03-09 11:14                 ` Daniel Pimentel
  2015-03-09 12:04                 ` 白い熊 @相撲道
@ 2015-03-09 19:55                 ` Ludovic Courtès
  2015-03-09 22:53                   ` Ludovic Courtès
  2 siblings, 1 reply; 20+ messages in thread
From: Ludovic Courtès @ 2015-03-09 19:55 UTC (permalink / raw)
  To: 白い熊 @相撲道; +Cc: guix-devel

"白い熊 @相撲道" <guix-devel_gnu.org@sumou.com> skribis:

> If sysconfig.scm contains: 
>
> (use modules (gnu))
> (use-service-modules xorg networking dbus avahi)
> (use-package-modules avahi wicd)
> ...
> (services (cons* (slim-service)
>                  (dbus-service (list wicd))
>                  (dhcp-client-service)
>                  (avahi-service)
>                  %base-services))

[...]

> setting up setuid programs in '/run/setuid-programs'...
> making '/gnu/store/h5s1apxpmg8cgdwj9x3yzyxj8f6zizzr-system' the current system...
> [    2.915986] random: nonblocking pool is initialized
> Service dmd has been started.
> Assertion (null? (lookup-services (canonical-name new))) failed.

This is the problem: the configuration specifies two services providing
the same symbol, ‘networking.’  This causes a dmd error that is
gracelessly handled, at boot time.

The solution is twofold: first, keep either ‘dhcp-client-service’ or
‘wicd-service’ in the configuration, but not both.  That should solve
the problem.

Second, I’ll improve service handling so that such errors are reported
at configuration time.

dmd should also have improved error handling, though I’m not sure
exactly what it should do here.

Thanks for the detailed report!

Ludo’.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd
  2015-03-09 19:55                 ` Ludovic Courtès
@ 2015-03-09 22:53                   ` Ludovic Courtès
  0 siblings, 0 replies; 20+ messages in thread
From: Ludovic Courtès @ 2015-03-09 22:53 UTC (permalink / raw)
  To: 白い熊 @相撲道; +Cc: guix-devel

With commit 116244d, if you have, say, both ‘dhcp-client-service’ and
‘wicd-service’ in the config, you get a hard error:

  $ guix system build gnu/system/os-config.tmpl -n
  guix system: error: service 'networking' provided more than once

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2015-03-09 22:53 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-04  8:59 [PATCHES] Add wicd and wicd-service Mark H Weaver
2015-02-04  9:05 ` Mark H Weaver
2015-02-04 22:15   ` Ludovic Courtès
2015-02-04 22:13 ` Ludovic Courtès
2015-02-04 23:39 ` Mark H Weaver
2015-02-05  1:22 ` Mark H Weaver
2015-02-05 14:05   ` Daniel Pimentel
2015-02-12 12:47   ` Daniel Pimentel
2015-02-12 13:44     ` Mark H Weaver
2015-02-23 14:32       ` Daniel Pimentel
2015-03-08 23:57         ` 白熊
2015-03-09  2:04           ` Mark H Weaver
2015-03-09  6:23             ` 白い熊 @相撲道
2015-03-09  8:50               ` Ludovic Courtès
2015-03-09 10:46               ` Gluglug X200 hangs on boot after `# guix system reconfigure /etc/sysconfig.scm', right after starting dmd 白い熊 @相撲道
2015-03-09 11:14                 ` Daniel Pimentel
2015-03-09 12:04                 ` 白い熊 @相撲道
2015-03-09 19:55                 ` Ludovic Courtès
2015-03-09 22:53                   ` Ludovic Courtès
2015-02-12 20:05   ` [PATCHES] Add wicd and wicd-service Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).