bug#63982: Service hangs in 'starting' with Shepherd 0.10 (was: Shepherd can crash when a user service fails to start)

2023-06-18 Thread Maxim Cournoyer
Hi Ludo,

Ludovic Courtès  writes:

> Hi,
>
> Maxim Cournoyer  skribis:
>
>>> I believe this is fixed by Shepherd commit
>>> 24c964021ebd3d63ce6e22808dd09dbe16116a6c, which introduces an additional
>>> change: loading the config file asynchronously.
>>
>> Nitpick: I'd use a git message tag for 'Reported-by', as can be inserted
>> in the commit buffer in Magit with C-c C-p.  They should be placed at
>> the bottom of the git message to be considered by tools parsing them.
>
> Neat, I didn’t know about it, I’ll do that now (I think I started using
> the “Reported by” convention before Git came into existence…).
>
>>> If you wish to test it, you can use the ‘shepherd’ channel.
>>
>> I've done so by placing in my ~/.config/guix/channels.scm file:
>>
>>(channel
>> (name 'shepherd)
>> (url "https://git.savannah.gnu.org/git/shepherd.git;)
>> (introduction
>>  (make-channel-introduction
>>   "788a6d6f1d5c170db68aa4bbfb77024fdc468ed3"  ;2022-05-21
>>   (openpgp-fingerprint
>>"3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5"
>>
>>
>> It'd be nice to have this in the Shepherd doc for easy copy & paste.
>
> I’ll add that to ‘README’.

Neat, thank you.

>>> Let me know how it goes!
>>
>> I've edited my ~/.xsession file to use
>> /gnu/store/ahzl8vxxcd5bqlljwgn8wkp4884sr72l-shepherd-0.10.99-tarball,
>> and I'm now seeing this:
>>
>> $ herd status
>> Démarrés :
>>  + root
>> Starting:
>>  ^ emacs
>> Arrêtés :
>>  - gpg-agent
>>  - ibus-daemon
>>  - jackd
>>  - workrave
>
> Uh, so it remains in “starting” state?

Yes!  Which is surprising, because it's actually running fine, and
Shepherd 0.9.3 didn't have this issue (perhaps because it only knew of a
started/stopped service).

The other surprising thing is that because it thinks that Emacs hasn't
finished starting, it doesn't even attempt to try starting the other
services; they remain stopped although they should work.


[...]

> Looks like it.  Could you share ~/.local/var/log/shepherd.log?

I have something a bit more detailed, with various versions (the logs
are under ~/.local/state/shepherd/shepherd.log by default).  If you need
to, you should be able to reproduce on your end using the attached
~/.config/shepherd/{init.scm,services.scm} files (and ensuring the
service commands are on your PATH):

--8<---cut here---start->8---
Using /gnu/store/dblbnj1yra4yrrfjbnzsa0ldcl3170ap-shepherd-0.9.1/bin/shepherd

$ herd status
Started:
 + Emacs
 + Gpg-agent
 + ibus-daemon
 + jackd
 + root
 + workrave

Using /gnu/store/cdc1gzbp3q15kdiwn2i5j3437jwx61ac-shepherd-0.9.2/bin/shepherd

$ herd status
Started:
 + emacs
 + gpg-agent
 + ibus-daemon
 + jackd
 + root
 + workrave

Using /gnu/store/a9jdd8kgckwlq97yw3pjqs6sy4lqgrfq-shepherd-0.9.3/bin/shepherd

$ herd status
Started:
 + emacs
 + gpg-agent
 + ibus-daemon
 + jackd
 + root
 + workrave

~/.local/state/shepherd/shepherd.log:

2023-06-18 21:04:47 Service root démarré.
2023-06-18 21:04:57 Service emacs démarré.
2023-06-18 21:04:57 Service jackd démarré.
2023-06-18 21:04:57 Service gpg-agent démarré.
2023-06-18 21:04:57 Service ibus-daemon démarré.
2023-06-18 21:04:57 Service workrave démarré.

Using 
/gnu/store/ahzl8vxxcd5bqlljwgn8wkp4884sr72l-shepherd-0.10.99-tarball/bin/shepherd

$ herd status
Started:
 + root
Starting:
 ^ emacs
Stopped:
 - gpg-agent
 - ibus-daemon
 - jackd
 - workrave

~/.local/state/shepherd/shepherd.log:

2023-06-18 21:06:12 Starting service root...
2023-06-18 21:06:12 Service root started.
2023-06-18 21:06:12 Service root running with value #t.
2023-06-18 21:06:12 Service root démarré.
2023-06-18 21:06:12 Starting service emacs...
2023-06-18 21:06:12 [bash] 
2023-06-18 21:06:12 [bash] Warning: due to a long standing Gtk+ bug
2023-06-18 21:06:12 [bash] https://gitlab.gnome.org/GNOME/gtk/issues/221
2023-06-18 21:06:12 [bash] Emacs might crash when run in daemon mode and the 
X11 connection is unexpectedly lost.
2023-06-18 21:06:12 [bash] Using an Emacs configured with 
--with-x-toolkit=lucid does not have this problem.
2023-06-18 21:06:13 [bash] Loading time (native compiled elisp)...
2023-06-18 21:06:13 [bash] Loading time (native compiled elisp)...done
2023-06-18 21:06:13 [bash] Loading /home/maxim/.emacs.d/recentf...
2023-06-18 21:06:13 [bash] Loading /home/maxim/.emacs.d/recentf...done
2023-06-18 21:06:13 [bash] Cleaning up the recentf list...
2023-06-18 21:06:13 [bash] Cleaning up the recentf list...done (0 removed)
2023-06-18 21:06:13 [bash] .emacs: Warning: Use keywords rather than deprecated 
positional arguments to `define-minor-mode'
2023-06-18 21:06:15 [bash] Preparing diary...
2023-06-18 21:06:15 [bash] No diary entries for Sunday, June 18, 2023: Father's 
Day
2023-06-18 21:06:15 [bash] Preparing diary...done
2023-06-18 21:06:15 [bash] Appointment reminders enabled
2023-06-18 21:06:16 [bash] Loading /home/maxim/.emacs.d/emms/cache...
2023-06-18 21:06:16 [bash] Loading 

bug#63869: [shepherd] `guix system reconfigure` forgets `herd disable mysrv`

2023-06-18 Thread Maxim Cournoyer
Hi,

Ludovic Courtès  writes:

> Hi Maxim & Attila,
>
> Maxim Cournoyer  skribis:
>
>> Ludovic Courtès  writes:
>
> [...]
>
> When a service is stopped at the time of reconfigure, it is immediately
> replaced and then started.
>
> Replacing works by unregistering the old instance from the registry and
> registering a new one.  As a side effect, you end up with an instance
> that’s enabled (see ‘service-registry’ in (shepherd services)).
>
> I never thought it could be a problem.  WDYT?

 I think it probably goes against users' expectation (i.e., systemd) that
 a disabled service stays disabled unless manually re-enabled (I think
 that's the way it is for systemd, even when the system is upgraded?).
>>>
>>> Does systemd have a notion of enabled/disabled?
>>
>> Yes!  'systemctl disable ' [0].  It does stick around until the
>> user changes it, I can confirm the behavior which I've recently seen on
>> a Debian system upgrade (the service remained disabled and the updater
>> warned it wouldn't be restarted because of that).
>>
>> [0]  
>> https://www.freedesktop.org/software/systemd/man/systemctl.html#disable%20UNIT%E2%80%A6
>>
>>> I’m fine either way.  We can also change it such that replacing a
>>> disabled service does not re-enable it; that’s probably more logical.
>>
>> I guess sticking to the established convention set by systemd would
>> cause the least friction down the road.  If we agree on this, we should
>> reopen this bug (and eventually fix it :-)).
>
> Agreed, fixed in Shepherd commit
> 52db31e5b061440cd110da4848ab230ce09f365a.

Nifty!  You rock! :-)

-- 
Thanks,
Maxim





bug#35610: Freshly installed IBus intput method is not listed as an input source

2023-06-18 Thread Luis Felipe via Bug reports for GNU Guix

Hi,

Just to mention that from December 2022 (I'm currently using guix system 
428b810), the workaround in this thread doesn't work anymore. Anthy 
doesn't get listed anymore as an input option in GNOME settings, nor in 
"ibus-setup".


I can't type Japanese anymore.



OpenPGP_0x0AB0D067012F08C3.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


bug#58251: Mesa missing patches for Vulkan shared libraries

2023-06-18 Thread Kaelyn via Bug reports for GNU Guix
The manifest files have been fixed in mesa to include the path to the vulkan 
layer shared objects in commit 02995444dbe9861c32b6e2cdbfb7a7b2affe2c2b.





bug#55449: [PATCH] gnu: recutils: Use correct bash headers.

2023-06-18 Thread Liliana Marie Prikler
Am Samstag, dem 04.06.2022 um 10:30 +0200 schrieb Liliana Marie
Prikler:
> * gnu/packages/databases.scm (recutils)[arguments]: Convert to G-
> Expressions.
> Drop gratuitous dirname.
> [native-inputs]: Drop labels.  Move bash:include...
> [inputs]: ... here.  Also add regular bash.
> ---
Hi Guix, I've pushed this now.

There's still a UX issue in that recutils doesn't put these libraries
into lib/bash, but at the very least it works as described in the
manual right now.

Cheers