bug#46209: 46043 breaks booting with custom shepherd package

2021-01-31 Thread Oleg Pykhalov
Maxime Devos  writes:

[…]

>> It would be helpful to have a paragraph in the documentation how to
>> override the Shepherd, and if you know a proper way, please add a small
>> example of operating-system definition with overriden Shepherd and a
>> basic service like OpenSSH.
>
> Yes, would be very helpful, especially as it's easy to get wrong.
> I'm currently occupied with other things, though.  

If you don't mind I could push the following instruction:

From f94a63bb35f6f05bd429703ec3102d15cfb1e382 Mon Sep 17 00:00:00 2001
From: Oleg Pykhalov 
Date: Mon, 1 Feb 2021 01:49:00 +0300
Subject: [PATCH] doc: Explain how to set custom Shepherd package.

* doc/guix.texi (Shepherd Services): Give example on how to set custom
Shepherd package.
---
 doc/guix.texi | 18 ++
 1 file changed, 18 insertions(+)

diff --git a/doc/guix.texi b/doc/guix.texi
index aca4657d6a..76a4e55e50 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -32826,6 +32826,24 @@ mechanism instead (@pxref{Shepherd Services}).
 @end table
 @end deftp
 
+The following example specifies the Shepherd package for operating
+system:
+
+@lisp
+(operating-system
+  ;; ...
+  (services (append (list openssh-service-type))
+;; ...
+%desktop-services)
+  ;; ...
+  ;; Use own Shepherd package.
+  (essential-services
+   (modify-services (operating-system-default-essential-services this-operating-system)
+ (shepherd-root-service-type config => (shepherd-configuration
+	(inherit config)
+	(shepherd my-shepherd))
+@end lisp
+
 @defvr {Scheme Variable} %shepherd-root-service
 This service represents PID@tie{}1.
 @end defvr
-- 
2.30.0



signature.asc
Description: PGP signature


bug#46209: 46043 breaks booting with custom shepherd package

2021-01-31 Thread Oleg Pykhalov
Maxime Devos  writes:

> When using the operating system configuration
> adjusted to use this-operating-system, the VM
> boots just fine for me (adjusted configuration
> should be sent with previous e-mail).  Could
> you confirm?

Thank you!  VM boots, and my desktop machine boots with shepherd-patched
and #:supplementary-groups field

(essential-services
 (modify-services (operating-system-default-essential-services 
this-operating-system)
   (shepherd-root-service-type config => (shepherd-configuration
  (inherit config)
  (shepherd shepherd-patched)


signature.asc
Description: PGP signature


bug#41669: Cross-compiled powerpc64-linux bootstrap-tarballs not reproducible

2021-01-31 Thread Ludovic Courtès
Hi Chris & all,

Apologies for taking so long to reply!  Pinging me on IRC was the right
move.  :-)

Chris Marusich  skribis:

> I'm afraid I've hit a snag using what you've uploaded, though.  It looks
> like we'll need to extract bash, mkdir, tar, and xz from
> static-binaries-0-powerpc64le-linux-gnu.tar.xz and place a copy of each
> in the following locations:
>
> - https://alpha.gnu.org/gnu/guix/bootstrap/powerpc64le-linux/20210106/bash
> - https://alpha.gnu.org/gnu/guix/bootstrap/powerpc64le-linux/20210106/mkdir
> - https://alpha.gnu.org/gnu/guix/bootstrap/powerpc64le-linux/20210106/tar
> - https://alpha.gnu.org/gnu/guix/bootstrap/powerpc64le-linux/20210106/xz
>
> Could you do that?  The reason why it's necessary is described below.

I’ve uploaded these four files now.

> I've started making changes locally to (gnu packages bootstrap).  So
> far, with the attached patch, I'm able to do the following things on my
> POWER9 machine running ppc64le Debian (unstable).
>
> I can successfully build Guix from source using Debian packages (and a
> manually-built copy of guile-avahi and guile-gnutls).  With my patch, I
> still have to supply the "--with-courage" configure option.  Although
> "make" succeeded, "make check" failed on the following tests:
>
> - tests/build-utils.scm
> - test/challenge.scm
> - tests/containers.scm
> - tests/debug-link.scm
>
> The failures fell into two categories:
>
> - Some tests couldn't download the bootstrap bash.
> - In tests/containers.scm, call-with-container evaluated to #f when it
>   wasn't supposed to.

Perhaps we can investigate them later.

> Nevertheless, I created the necessary build users and started the
> guix-daemon via pre-inst-env.  I then tried building a simple package:
>
>   ./pre-inst-env guix build -e '(@@ (gnu packages bootstrap) 
> %bootstrap-coreutils&co)'

[...]

> Starting download of 
> /gnu/store/2phdifnfw6i989rqbav04zakxx7qb165-static-binaries-0-powerpc64le-linux-gnu.tar.xz
> From 
> https://ftp.gnu.org/gnu/guix/bootstrap/powerpc64le-linux/20210106/static-binaries-0-powerpc64le-linux-gnu.tar.xz...

> failed to download "/gnu/store/0kaj6l1ccw0qd0289hii7qhr828s71sv-bash" from 
> ("https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/powerpc64le-linux/20210106/bash";
>  "http://lilypond.org/janneke/guix/powerpc64le-linux/20210106/bash";)
> builder for `/gnu/store/ix4mpvzxfi1hrmvdmmpgqhm9x1cdh347-bash.drv' failed to 
> produce output path `/gnu/store/0kaj6l1ccw0qd0289hii7qhr828s71sv-bash'

Note that for testing purposes, you could always work around this by
adding these four files to the store with the ‘add-to-store’ RPC (I
don’t think ‘guix download’ would work because you need the executable
bit.)

> By the way, I've noticed that the other architectures don't seem to have
> "raw" binaries at all on alpha.gnu.org.  Maybe you already knew this,
> but it seems that the "raw" binaries are actually downloaded from this
> specific URL (see the bootstrap-executable-file-name procedure):
>
> https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e
>
> Is that intended?

Yes: these files used to be in version control, part of the Guix source
tarball, but now we just download them (commit
836a85da0e8609d40716581be00802ee43463038).

> I was surprised to discover that we store these four "raw" binaries in
> a totally separate place.  That seems like it would make it easy for
> someone to accidentally forget to update the "raw" binaries when they
> update an architecture's bootstrap tarballs.

They’re visible in the dependency graph though, and they don’t need to
ever change.

Ludo’.





bug#46209: 46043 breaks booting with custom shepherd package

2021-01-31 Thread Maxime Devos
On Sun, 2021-01-31 at 22:49 +0300, Oleg Pykhalov wrote:
> [...]
> First of all I want to ask did you try to override Shepherd yourself?

Yes, and I can confirm I could use #:supplementary-groups in
service definitions.  I override Shepherd with the mechanism in [1],
not with module-set!, however.

> It would be helpful to have a paragraph in the documentation how to
> override the Shepherd, and if you know a proper way, please add a small
> example of operating-system definition with overriden Shepherd and a
> basic service like OpenSSH.

Yes, would be very helpful, especially as it's easy to get wrong.
I'm currently occupied with other things, though.  As for an example:
your system configuration might do (as adjusted per previous e-mails),
with the following block ...

 (essential-services
  (modify-services
   (operating-system-default-essential-services this-operating-system)
   (shepherd-root-service-type 
config => (shepherd-configuration
  (inherit config)
  (shep
herd shepherd)
replaced by ...

 (essential-services
  (modify-services
   (operating-system-default-essential-services this-operating-system)
   (shepherd-root-service-type 
config => (shepherd-configuration
  (inherit config)
  (shep
herd shepherd-patched)

(otherwise no change in Shepherd is made), where shepherd-patched should
be defined somewhere in the beginning of the configuration file.
You could use your own shepherd-patched, or my shepherd-latest (attached):

[1] https://issues.guix.gnu.org/46043

;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019, 2020 Pierre Langlois 
;;; Copyright © 2020 Tobias Geerinckx-Rice 
;;; Copyright © 2021 Maxime Devos 
;;;
;;; 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 .

(define-module (extra-packages)
  #:use-module (guix packages)
  #:use-module (guix git-download)
  #:use-module (gnu packages autotools)
  #:use-module (gnu packages texinfo)
  #:use-module (gnu packages gettext)
  #:use-module (gnu packages admin)
  #:use-module (gnu packages man))

(define-public shepherd-latest
  (let ((commit "4c5176f5a7a5a1e7d7f258f585e8ed127a21b99a")
(revision "1"))
(package
  (inherit shepherd)
  (version (git-version "0.8.1" revision commit))
  (source
   (origin
 (method git-fetch)
 (uri (git-reference
   (url "https://git.savannah.gnu.org/git/shepherd.git";)
   (commit commit)))
 (file-name (git-file-name "shepherd" version))
 (sha256
  (base32 "0x7njnvhxmay4xz4pyh9b982bhxys089nysz95paz3vhf1253fr6"
  (arguments
   '(#:configure-flags '("--localstatedir=/var")
 #:phases
 (modify-phases %standard-phases
   ;; XXX less duplication (gpodder)
   ;; 'msgmerge' introduces non-determinism by resetting the
   ;; POT-Creation-Date in .po files.
   (add-after 'bootstrap 'do-not-run-msgmerge
 (lambda _
   (substitute* "Makefile.in"
 (("msgmerge") "true"))
   #t))
   (add-after 'unpack 'make-po-files-writable
 (lambda _
   (for-each
(lambda (f)
  (chmod f #o664))
(find-files "po"))
   #t)
  (native-inputs
   `(("autoconf" ,autoconf)
 ("automake" ,automake)
 ("gettext" ,gettext-minimal)
 ("texinfo" ,texinfo)
 ("help2man" ,help2man)
 ,@(package-native-inputs shepherd))


signature.asc
Description: This is a digitally signed message part


bug#46209: 46043 breaks booting with custom shepherd package

2021-01-31 Thread Maxime Devos
When using the operating system configuration
adjusted to use this-operating-system, the VM
boots just fine for me (adjusted configuration
should be sent with previous e-mail).  Could
you confirm?

I haven't tried using the original system
configuration yet.


signature.asc
Description: This is a digitally signed message part


bug#46209: 46043 breaks booting with custom shepherd package

2021-01-31 Thread Maxime Devos
On Sun, 2021-01-31 at 22:49 +0300, Oleg Pykhalov wrote:
>   (operating-system
> 
> (inherit base-system)
> 
> (essential-services
> 
>  (modify-services (operating-system-default-essential-services 
> base-system)
> 
>(shepherd-root-service-type config => (shepherd-configuration
> 
>   (inherit config)
> 
>   (shepherd shepherd)))

I'm currently running "guix time-machine etcetera", which hasn't completed yet,
but here's some quick speculation on what could have went wrong:

You shouldn't write (operating-system-default-essential-services base-system),
but rather (operating-system-default-essential-services this-operating-system).

The essential-services field is thunked, basically that means that the 
expression
under essential-services can refer to the operating-system definition itself,
using the macro this-operating-system.

A  potentially fixed configuration is attached, I'll try to run it in a VM.
;; Generation 120	Jan 31 2021 01:15:12	(current)
;;   guix eb6b061
;; repository URL: https://git.savannah.gnu.org/git/guix.git
;; branch: master
;; commit: eb6b061320418fdbd49ecb72c366e43ff7a38dbc
;;
;; env GUIX_PACKAGE_PATH=$PWD guix system build vm-image.tmpl
;; env GUIX_PACKAGE_PATH=$PWD guix system vm vm-image.tmpl

(use-modules (gnu) (guix) (srfi srfi-1))
(use-service-modules shepherd networking ssh)
(use-package-modules admin bootloaders certs nano)

(operating-system
 (host-name "gnu")
 (timezone "Etc/UTC")
 (locale "en_US.utf8")

 (firmware '())

 ;; Below we assume /dev/vda is the VM's hard disk.
 ;; Adjust as needed.
 (bootloader (bootloader-configuration
  (bootloader grub-bootloader)
  (target "/dev/vda")
  (terminal-outputs '(console
 (file-systems (cons (file-system
  (mount-point "/")
  (device "/dev/vda1")
  (type "ext4"))
 %base-file-systems))

 (users (cons (user-account
   (name "guest")
   (comment "GNU Guix Live")
   (password "")	;no password
   (group "users")
   (supplementary-groups '("wheel" "netdev"
   "audio" "video")))
  %base-user-accounts))

 ;; Our /etc/sudoers file.  Since 'guest' initially has an empty password,
 ;; allow for password-less sudo.
 (sudoers-file (plain-file "sudoers" "
root ALL=(ALL) ALL
%wheel ALL=NOPASSWD: ALL\n"))

 (packages (append (list nano nss-certs)
   %base-packages))

 (essential-services
  (modify-services
   (operating-system-default-essential-services this-operating-system)
   (shepherd-root-service-type config => (shepherd-configuration
	  (inherit config)
	  (shepherd shepherd)
 (services
  (append (list ;; Uncomment the line below to add an SSH server.
   ;;(service openssh-service-type)

   ;; Use the DHCP client service rather than NetworkManager.
   (service dhcp-client-service-type))

  ;; Remove GDM, ModemManager, NetworkManager, and wpa-supplicant,
  ;; which don't make sense in a VM.
  (remove (lambda (service)
		(let ((type (service-kind service)))
  (or (memq type
(list wpa-supplicant-service-type
  network-manager-service-type
  modem-manager-service-type))
  (eq? 'network-manager-applet
   (service-type-name type)
  %base-services



signature.asc
Description: This is a digitally signed message part


bug#46194: [PATCH] gnu: opendoas: Update to 6.8.1.

2021-01-31 Thread me--- via Bug reports for GNU Guix

Brice,

On 2021-01-31 20:41, Brice Waegeneire wrote:

* gnu/packages/admin.scm (opendoas): Update to 6.8.1.


Thanks for the prompt security bump!  The number of CVE fixes I've 
pushed for sudo the past year has made me reconsider its use in favour 
of this package.


As there isn't any service for this package (I'm working on it), it's 
quite

useless


Services are nice to have but always optional: I doubt there's a package 
in Guix that is 'useless' or unused because it lacks a service.


Kind regards,

T G-R

Sent from a Web browser. Excuse or enjoy my brevity.





bug#46194: [PATCH] gnu: opendoas: Update to 6.8.1.

2021-01-31 Thread Leo Famulari
On Sun, Jan 31, 2021 at 08:41:07PM +0100, Brice Waegeneire wrote:
> * gnu/packages/admin.scm (opendoas): Update to 6.8.1.
> 
> Fixes #46194.
> ---
> As there isn't any service for this package (I'm working on it), it's quite
> useless and there isn't any package depending on it.  I guess very few
> people, if any, are using it so I see no need for grafting here.

Thanks! I pushed as 9c8156507abeb15f6d3816800c077fd99f861e3d

The question of "should it be grafted" depends on how many packages
depend on it:

$ guix refresh -l opendoas
No dependents other than itself: opendoas@6.8

If `guix refresh` reports that more than 300 packages will be rebuilt,
security updates should use grafts, as specified in the manual section
Submitting Patches:

https://guix.gnu.org/manual/en/html_node/Submitting-Patches.html

We don't want to wait for a 'staging' or 'core-updates' cycle for
security updates, so grafts let us cheat and push things directly to
master, without requiring expensive recompilation of dependent packages.

I know you could have pushed this yourself, although I did it on your
behalf. Now that we've clarified the use case of grafts, please feel
free to push things like this without review :)

The manual section Commit Access offers some guidelines:

"For patches that just add a new package, and a simple one, it’s OK to
commit, if you’re confident (which means you successfully built it in a
chroot setup, and have done a reasonable copyright and license
auditing). Likewise for package upgrades, except upgrades that trigger a
lot of rebuilds (for example, upgrading GnuTLS or GLib)."





bug#46194: [PATCH] gnu: opendoas: Update to 6.8.1.

2021-01-31 Thread Brice Waegeneire
* gnu/packages/admin.scm (opendoas): Update to 6.8.1.

Fixes #46194.
---
As there isn't any service for this package (I'm working on it), it's quite
useless and there isn't any package depending on it.  I guess very few
people, if any, are using it so I see no need for grafting here.

 gnu/packages/admin.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 538e8d3eb4..1ddbea7a02 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1512,7 +1512,7 @@ commands and their arguments.")
 (define-public opendoas
   (package
 (name "opendoas")
-(version "6.8")
+(version "6.8.1")
 (source (origin
   (method git-fetch)
   (uri (git-reference
@@ -1521,7 +1521,7 @@ commands and their arguments.")
   (file-name (git-file-name name version))
   (sha256
(base32
-"1dlwnvy8r6slxcy260gfkximp1ms510wdslpfq9y6xvd2qi5izcb"
+"0gfcssm21vdfg6kcrcc7hz1h4jmhy2zv29rfqyrrj3a6r9b5ah8p"
 (build-system gnu-build-system)
 (arguments
  `(#:phases
-- 
2.29.2






bug#46209: 46043 breaks booting with custom shepherd package

2021-01-31 Thread Oleg Pykhalov
Hello,

Thank you for the fast responce.

First of all I want to ask did you try to override Shepherd yourself?

It would be helpful to have a paragraph in the documentation how to
override the Shepherd, and if you know a proper way, please add a small
example of operating-system definition with overriden Shepherd and a
basic service like OpenSSH.

Maxime Devos  writes:

> On Sun, 2021-01-31 at 15:46 +0300, Oleg Pykhalov wrote:
>> Before applied patch [1] I used a hack to override shepherd package:
>> 
>> (module-set! (resolve-module '(gnu packages admin)) 'shepherd 
>> shepherd-patched)
>> 
>> Now on Guix commit eb6b061 I cannot use the previous override, and also
>> the mentioned in [1] way overriding shepherd package doesn't work:
>> 
>> (shepherd-root-service-type config => (shepherd-configuration
>>(inherit config)
>>(shepherd shepherd-patched)))
>> 
>> I got error about undefined ‘#:supplementary-groups’ which added in
>> ‘shepherd-patched’, so I assume my ‘shepherd-patched’ package not used.
>> 
>> [1] https://issues.guix.gnu.org/46043
>
> Can you post your operating system configuration definition?
> Also, were does the error about undefined "#:supplementary-groups"
> appear? When booting, when reconfiguring a ‘live’ system, when
> guix is compiling the shepherd services to .go?

While booting (as I understand in initrd).  If I run (system "/bin/sh"),
then "ps auxwww" I got only shepherd and /bin/sh in the process list.

I can publish, but it's too big [1], so if you don't mind I prepared a
virtual-machine to reproduce the issue.  Basically I don't even need to
use a patched shepherd to break the VM (result attached as a screenshot
below).

;; Generation 120	Jan 31 2021 01:15:12	(current)
;;   guix eb6b061
;; repository URL: https://git.savannah.gnu.org/git/guix.git
;; branch: master
;; commit: eb6b061320418fdbd49ecb72c366e43ff7a38dbc
;;
;; env GUIX_PACKAGE_PATH=$PWD guix system build vm-image.tmpl
;; env GUIX_PACKAGE_PATH=$PWD guix system vm vm-image.tmpl

(use-modules (gnu) (guix) (srfi srfi-1))
(use-service-modules shepherd networking ssh)
(use-package-modules admin bootloaders certs nano)

(let ((base-system
   (operating-system
 (host-name "gnu")
 (timezone "Etc/UTC")
 (locale "en_US.utf8")

 (firmware '())

 ;; Below we assume /dev/vda is the VM's hard disk.
 ;; Adjust as needed.
 (bootloader (bootloader-configuration
  (bootloader grub-bootloader)
  (target "/dev/vda")
  (terminal-outputs '(console
 (file-systems (cons (file-system
   (mount-point "/")
   (device "/dev/vda1")
   (type "ext4"))
 %base-file-systems))

 (users (cons (user-account
   (name "guest")
   (comment "GNU Guix Live")
   (password "") ;no password
   (group "users")
   (supplementary-groups '("wheel" "netdev"
   "audio" "video")))
  %base-user-accounts))

 ;; Our /etc/sudoers file.  Since 'guest' initially has an empty password,
 ;; allow for password-less sudo.
 (sudoers-file (plain-file "sudoers" "\
root ALL=(ALL) ALL
%wheel ALL=NOPASSWD: ALL\n"))

 (packages (append (list nano nss-certs)
   %base-packages))

 (services
  (append (list ;; Uncomment the line below to add an SSH server.
   ;;(service openssh-service-type)

   ;; Use the DHCP client service rather than NetworkManager.
   (service dhcp-client-service-type))

  ;; Remove GDM, ModemManager, NetworkManager, and wpa-supplicant,
  ;; which don't make sense in a VM.
  (remove (lambda (service)
(let ((type (service-kind service)))
  (or (memq type
(list wpa-supplicant-service-type
  network-manager-service-type
  modem-manager-service-type))
  (eq? 'network-manager-applet
   (service-type-name type)
  %base-services))
  (operating-system
(inherit base-system)
(essential-services
 (modify-services (operating-system-default-essential-services base-system)
   (shepherd-root-service-type config => (shepherd-configuration
  (inherit config)
  (shepherd shepherd)))

> A pitfall to take

bug#45992: A "live" profile is missing

2021-01-31 Thread Leo Famulari
On Sun, Jan 31, 2021 at 05:40:50PM +0100, Ludovic Courtès wrote:
> We now provide a ‘gnu-store.mount’ systemd service that makes /gnu/store
> read-only, as on Guix System.  I suppose it wasn’t enabled on this
> machine, right?

Thanks for pointing that out. This installation of Guix is very old. I'm
going to make it use that gnu-store.mount service now!

> Not 100% sure, but my theory is that it’s a cache created by Fontconfig
> and its friends.  That can happen when running a Guix application as
> root.

Okay!





bug#45992: A "live" profile is missing

2021-01-31 Thread Ludovic Courtès
Hi Leo,

Leo Famulari  skribis:

> I don't think that this message is really relevant to the bug report. It
> describes some corrupted store items on my computer and might be
> interesting as examples of what goes wrong when /gnu/store is writable.
>
> This is on Debian, where /gnu/store is just a "regular directory",
> without the protection you get on Guix System.

We now provide a ‘gnu-store.mount’ systemd service that makes /gnu/store
read-only, as on Guix System.  I suppose it wasn’t enabled on this
machine, right?

[...]

> │   ├── [Dec 31  1969]  DejaVuSerif.ttf
> │   └── [Jun 17  2020]  .uuid
> └── [Jun 17  2020]  .uuid
> --
>
> What's up with those '.uuid' files?

Not 100% sure, but my theory is that it’s a cache created by Fontconfig
and its friends.  That can happen when running a Guix application as
root.

It’s in fact a relatively frequent problem and the reason why Guix and
before that NixOS made the store read-only.

HTH!

Ludo’.





bug#46209: 46043 breaks booting with custom shepherd package

2021-01-31 Thread Maxime Devos
On Sun, 2021-01-31 at 15:46 +0300, Oleg Pykhalov wrote:
> Before applied patch [1] I used a hack to override shepherd package:
> 
> (module-set! (resolve-module '(gnu packages admin)) 'shepherd 
> shepherd-patched)
> 
> Now on Guix commit eb6b061 I cannot use the previous override, and also
> the mentioned in [1] way overriding shepherd package doesn't work:
> 
> (shepherd-root-service-type config => (shepherd-configuration
>(inherit config)
>(shepherd shepherd-patched)))
> 
> I got error about undefined ‘#:supplementary-groups’ which added in
> ‘shepherd-patched’, so I assume my ‘shepherd-patched’ package not used.
> 
> [1] https://issues.guix.gnu.org/46043

Can you post your operating system configuration definition?
Also, were does the error about undefined "#:supplementary-groups"
appear? When booting, when reconfiguring a ‘live’ system, when
guix is compiling the shepherd services to .go?

A pitfall to take in mind: it's the ‘essential-services’ field
you need to modify, not the ‘services’ field of ‘operating-system’.
My original example at [1] was incorrect.  A corrected example:

(operating-system
 [...]
 (services [don't modify this])
 (essential-services
  (modify-services (operating-system-default-essential-services
this-operating-system)
(shepherd-root-service-type c =>
(shepherd-configuration
 (inherit c)
 (shepherd-patched))


Maxime
-- 
Maxime Devos 
PGP Key: C1F3 3EE2 0C52 8FDB 7DD7  011F 49E3 EE22 1917 25EE
Freenode handle: mdevos


signature.asc
Description: This is a digitally signed message part


bug#46154: Not able to get Hindi "Input Method" to add in listing of available input methods in non-gnome wm like stumpwm

2021-01-31 Thread Arun Isaac

Hi,

I don't know much about the state of ibus in Guix. When last I checked a
few years ago, I couldn't get it to work for Tamil. So, I tried uim and
it worked. Perhaps, just as an immediate workaround until this bug is
addressed, maybe you could try uim?

My uim setup is as follows. You probably need similar.

Contents of ~/.uim
--8<---cut here---start->8---
(define default-im-name 'm17n-ta-tamil99)
--8<---cut here---end--->8---

Relevant environment variables in ~/.bashrc
--8<---cut here---start->8---
export 
GUIX_GTK3_IM_MODULE_FILE=~/.guix-profile/lib/gtk-3.0/3.0.0/immodules-gtk3.cache
export 
GUIX_GTK2_IM_MODULE_FILE=~/.guix-profile/lib/gtk-2.0/2.10.0/immodules-gtk2.cache
--8<---cut here---end--->8---

Regards,
Arun


signature.asc
Description: PGP signature


bug#46212: ci.guix.gnu.org narinfos with excessive NarSize

2021-01-31 Thread Ludovic Courtès
Christopher Baines  skribis:

> /gnu/store/qln574djfgl8h9glij9id8jips7nnrlw-flightgear-2018.3.5
> NarSize: 18446744072099351584
>
> /gnu/store/qhix6afvy2a6n7hlx4qgdns461p8kdnv-repeat-masker-4.1.1
> NarSize: 18446744071612438544
>
> /gnu/store/wd9z64xpck56xzf52jwlpg8vb610b0ym-repeat-masker-4.1.1
> NarSize: 18446744071612438544

The key point here is that ‘narSize’ in the database is negative:

--8<---cut here---start->8---
sqlite> select * from validpaths where path = 
'/gnu/store/qhix6afvy2a6n7hlx4qgdns461p8kdnv-repeat-masker-4.1.1';
43262123|/gnu/store/qhix6afvy2a6n7hlx4qgdns461p8kdnv-repeat-masker-4.1.1|sha256:33328e16d8d83dcf1a6e031598dbc517aff18e6c7ccd55f7894102bab55fcdb9|1611849907|/gnu/store/rr532q5fmwj1gafdgk6nhxg9khnbsw3z-repeat-masker-4.1.1.drv|-2097113072
--8<---cut here---end--->8---

The actual nar size in this case is just above 2³¹ so most likely we’re
seeing a signed integer wrapping error.

I believe this is a very recent regression (the registration data for
the item above is Jan. 28th); we have older store items with a correct
‘narSize’, such as
.

Thoughts?

Ludo’.





bug#46212: ci.guix.gnu.org narinfos with excessive NarSize

2021-01-31 Thread Christopher Baines
I noticed through the Guix Data Service that some narinfo files from
ci.guix.gnu.org have an excessive NarSize.

These are the three that I've found, but there could be more.


/gnu/store/qln574djfgl8h9glij9id8jips7nnrlw-flightgear-2018.3.5
NarSize: 18446744072099351584

/gnu/store/qhix6afvy2a6n7hlx4qgdns461p8kdnv-repeat-masker-4.1.1
NarSize: 18446744071612438544

/gnu/store/wd9z64xpck56xzf52jwlpg8vb610b0ym-repeat-masker-4.1.1
NarSize: 18446744071612438544


There's additional information on IRC: 
http://logs.guix.gnu.org/guix/2021-01-31.log#152751

Cc'ing Mathieu in case this is related to the new offloading mechanism.


signature.asc
Description: PGP signature


bug#46209: 46043 breaks booting with custom shepherd package

2021-01-31 Thread Oleg Pykhalov
Before applied patch [1] I used a hack to override shepherd package:

(module-set! (resolve-module '(gnu packages admin)) 'shepherd 
shepherd-patched)

Now on Guix commit eb6b061 I cannot use the previous override, and also
the mentioned in [1] way overriding shepherd package doesn't work:

(shepherd-root-service-type config => (shepherd-configuration
   (inherit config)
   (shepherd shepherd-patched)))

I got error about undefined ‘#:supplementary-groups’ which added in
‘shepherd-patched’, so I assume my ‘shepherd-patched’ package not used.

[1] https://issues.guix.gnu.org/46043


signature.asc
Description: PGP signature