bug#70605: greetd-wlgreet-session: invalid G-expression input

2024-04-27 Thread Franz Geffke

Hello everyone,

I'm seeing some issues with greetd-wlgreet-session.

According to the docs 
https://guix.gnu.org/manual/en/html_node/Base-Services.html I would assume that 
greetd-wlgreet-session and greetd-agreety-session are easily exchangeable, but 
greetd-wlgreet-session leads to an error, whereas greetd-agreety-session does not.


Here's the error:

```
guix system: error: #< wlgreet: #wlgreet@0.4.1-1.7e79d60 gnu/packages/admin.scm:5602 7f90a2f8e9a0> command: 
# 
"/bin/sway"> command-args: () output-mode: "all" scale: 1 background: (0 0 0 
0.9) headline: (1 1 1 1) prompt: (1 1 1 1) prompt-error: (1 1 1 1) border: (1 1 
1 1) extra-env: ()>: invalid G-expression input

```

Here's what my service looks like:

```
(service greetd-service-type
  (greetd-configuration
(greeter-supplementary-groups (list "video" "input"))
(terminals
  (list

;; working
(greetd-terminal-configuration
  (terminal-vt "1")
  (default-session-command
   (greetd-agreety-session)))

;; working
(greetd-terminal-configuration
  (terminal-vt "1")
  (default-session-command
   (greetd-wlgreet-sway-session)))

;; not working
(greetd-terminal-configuration
  (terminal-vt "1")
  (default-session-command
   (greetd-wlgreet-session)))

(greetd-terminal-configuration
  (terminal-vt "2"))
  (greetd-terminal-configuration
  (terminal-vt "3"))
  (greetd-terminal-configuration
  (terminal-vt "4"))
  (greetd-terminal-configuration
  (terminal-vt "5"))
  (greetd-terminal-configuration
  (terminal-vt "6"))
```

Either I'm doing something wrong, or greetd-wlgreet-session does not work by 
itself. When I have time, I'll dig a little deeper.


Cheers,
Franz





bug#70480: Guix bios installation: Grub error: unknown filesystem

2024-04-21 Thread Franz Geffke

Hi Timotej,

> tune2fs -O ^metadata_csum_seed /dev/sda1

That's exactly what I needed; Thanks so much!
Works great on MBR, GPT and with encrypted disk too.

Cheers,
Franz





bug#70480: Guix bios installation: Grub error: unknown filesystem

2024-04-20 Thread Franz Geffke

Hi,

I'm having trouble installing guix in qemu, using a "fresh" guix ISO.

```
building /gnu/store/byjlc85abyjc3fjj9z982677skmda7ib-module-import 
compiled.drv...
building 
/gnu/store/psw8xn9qpsjjnrqmjrfv0v3jj9fphq5m-module-import-compiled.drv...
building 
/gnu/store/a1zcrrcdwhb4wb2g4r0ph8mqclq7f5xn-install-bootloader.scm.drv...
guix system: error: 
'/gnu/store/li1ic17hz460vp1sg0cx2dwgw8q7i8pj-grub-2.06/sbin/grub-install 
--no-floppy --target=i386-pc --boot-directory /mnt/boot /dev/sda' exited with 
status 1; output follows:


  Installing for i386-pc platform.
  /gnu/store/li1ic17hz460vp1sg0cx2dwgw8q7i8pj-grub-2.06/sbin/grub-install: 
error: unknown filesystem.

```

Here's what I've tried so far:
1. The ISO from 2022 
https://ftpmirror.gnu.org/gnu/guix/guix-system-install-1.4.0.x86_64-linux.iso: 
Success

2. Generated a new ISO today: Failure

These are the channels, on the booted ISO:

```
guix describe
  guix 65e8472
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 65e8472a4b6fc6f66871ba0dad518b7d4c63595e
```

Steps I used to install (1) and (2):

```
parted -s /dev/sda -- mklabel msdos mkpart primary ext4 1MiB 100%
parted /dev/sda set 1 boot on
mkfs.ext4 -L my-root /dev/sda1
mount LABEL=my-root /mnt
cp /etc/configuration/lightweight-desktop.scm /mnt/etc/config.scm
# adjust disk, bootloader
herd start cow-store /mnt
guix system init /mnt/etc/config.scm /mnt
```

Findings:

I didn't really dig too deeply yet; Only noticed that this command produces a 
different result, depending on whether the install succeeds, or not `grub-probe 
--target=fs --device /dev/sda`


- Success: `ext2`
- Failure: `grub-probe: error: unknown filesystem.`

I also tried using GPT instead of MBR, but it makes no difference.

Cheers,
Franz

PS: I send this (incorrectly?) to guix-de...@gnu.org yesterday and never got a 
confirmation of some sort; So I'll submit again here.






bug#69828: greetd-wlgreet-sway-session unable to login (Respawning term-tty1)

2024-04-10 Thread Franz Geffke
Looks like the issue has been fixed as of 
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=edfb05e16d409ab71f5cc5c91747b693f0054d59. 
Thank you!


This can be closed now.





bug#69828: greetd-wlgreet-sway-session unable to login (Respawning term-tty1)

2024-03-18 Thread Franz Geffke
New information always turns up, the minute after you submit the report. Thanks 
to a kind soul, I also found the greeter logs:


```
00:02:17.018 [INFO] [sway/commands.c:261] Handling command 'exec 
"/gnu/store/w6ify3cx17hnq8wd6qf6swkwdj37l6wj-wlgreet-0.4.1/bin/wlgreet --config 
/gnu/store/73ay0x7ngh7zz34r50hvbin2csgj0dac-wlgreet.toml; 
/gnu/store/1kzi74isam7q5z8bsrm8h642hgx8pdq8-sway-1.9/bin/swaymsg exit"'
00:02:17.018 [DEBUG] [sway/commands/exec_always.c:58] Executing 
/gnu/store/w6ify3cx17hnq8wd6qf6swkwdj37l6wj-wlgreet-0.4.1/bin/wlgreet --config 
/gnu/store/73ay0x7ngh7zz34r50hvbin2csgj0dac-wlgreet.toml; 
/gnu/store/1kzi74isam7q5z8bsrm8h642hgx8pdq8-sway-1.9/bin/swaymsg exit
00:02:17.038 [DEBUG] [sway/commands/exec_always.c:111] Child process created 
with pid 929
00:02:17.039 [DEBUG] [sway/commands/exec_always.c:113] Recording workspace for 
process 929
00:02:17.041 [INFO] [sway/server.c:396] Running compositor on wayland display 
'wayland-1'
00:02:17.044 [ERROR] [wlr] [libseat] [libseat/backend/logind.c:83] Ping failed: 
org.freedesktop.DBus.Error.NoReply: Method call timed out
00:02:17.047 [ERROR] [wlr] [libseat] [libseat/backend/logind.c:83] Ping failed: 
org.freedesktop.DBus.Error.NoReply: Method call timed out

00:02:17.050 [DEBUG] [wlr] [render/swapchain.c:106] Allocating new swapchain 
buffer
00:02:17.061 [DEBUG] [wlr] [render/allocator/drm_dumb.c:106] Allocated 1280x800 
DRM dumb buffer
00:02:17.063 [DEBUG] [wlr] [render/pixman/renderer.c:152] Created pixman buffer 
1280x800
00:02:17.390 [DEBUG] [wlr] [types/wlr_compositor.c:692] New wlr_surface 0x72e830 
(res 0x6d1730)
00:02:17.392 [DEBUG] [wlr] [types/wlr_layer_shell_v1.c:458] new layer_surface 
0x6ab630 (res 0x6d28f0)
00:02:17.393 [DEBUG] [sway/desktop/layer_shell.c:646] new layer surface: 
namespace  layer 3 anchor 0 size 1x1 margin 0,0,0,0,

thread 'main' panicked at src/app.rs:473:48:
internal error: entered unreachable code
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[wayland-client error] A handler for wl_surface panicked.
00:02:17.425 [DEBUG] [sway/desktop/layer_shell.c:386] Layer surface destroyed ()
00:02:17.446 [DEBUG] [sway/ipc-server.c:197] New client: fd 33
00:02:17.448 [INFO] [sway/commands.c:261] Handling command 'exit'
00:02:17.451 [INFO] [sway/main.c:418] Shutting down sway
```

This is on:
- Libre kernel
- using logind
- Sway 1.9

Apparently this is a known issue: 
https://lists.sr.ht/~kennylevinsen/greetd/%3CCZEH2PTZ98MU.3UTOFBLK0R755%40pwned.life%3E


Reverting Sway to 1.8.1 works.





bug#69828: greetd-wlgreet-sway-session unable to login (Respawning term-tty1)

2024-03-18 Thread Franz Geffke
It seems like `greetd-wlgreet-sway-session` broke for me, sometime in the last 
10 days. Initially I suspected it's related to my hardware, or a newer kernel, 
but I was able to rule these out with a clean config in the VM.
- It's working as of `3da49b1472919a62df1fe399638f23a246aa325d` (05.03) but does 
not anymore.

- On my working setup (05.03), I use logind; but I also tried seatd, without 
change.
- I suspected maybe Sway 1.9, but using the previous 1.8.1 did not help.
- Maybe https://issues.guix.gnu.org/65769 is related, but looks like a hardware 
issue?


```
(define-public sway-legacy
  (package
(inherit sway)
(name "sway")
(version "1.8.1")
...))


(service greetd-service-type
  (greetd-configuration
  (greeter-supplementary-groups (list "video" "input" "seat"))
  (terminals
  (list
(greetd-terminal-configuration
  (terminal-vt "1")
  (terminal-switch #t)
  (default-session-command
(greetd-wlgreet-sway-session
  (sway sway-legacy)
  (wlgreet-session
  (greetd-wlgreet-session
(command (file-append sway-legacy "/bin/sway")))

(greetd-terminal-configuration
  (terminal-vt "2"))
(greetd-terminal-configuration
  (terminal-vt "3"))
(greetd-terminal-configuration
  (terminal-vt "4"))
(greetd-terminal-configuration
  (terminal-vt "5"))
(greetd-terminal-configuration
  (terminal-vt "6"))
```

Here's a bunch of logs:

```
tail -f /var/log/messages
Mar 16 09:49:33 localhost shepherd[1]: Respawning term-tty1.
Mar 16 09:49:33 localhost shepherd[1]: Starting service term-tty1...
Mar 16 09:49:33 localhost shepherd[1]: Service term-tty1 has been started.
Mar 16 09:49:33 localhost shepherd[1]: Service term-tty1 started.
Mar 16 09:49:33 localhost shepherd[1]: Service term-tty1 running with value 
1382.
Mar 16 09:49:36 localhost shepherd[1]: Respawning term-tty1.
Mar 16 09:49:36 localhost shepherd[1]: Starting service term-tty1...
Mar 16 09:49:36 localhost shepherd[1]: Service term-tty1 has been started.
Mar 16 09:49:36 localhost shepherd[1]: Service term-tty1 started.
Mar 16 09:49:36 localhost shepherd[1]: Service term-tty1 running with value 
1396.
```

dmesg

```
dmesg | greo greetd
[   31.025881] shepherd[1]: Starting service 
file-system-/run/greetd/pam_mount...
[   31.01] shepherd[1]: Service file-system-/run/greetd/pam_mount started.
[   31.118389] shepherd[1]: Service file-system-/run/greetd/pam_mount running 
with value #t.
[   31.131180] shepherd[1]: Service file-system-/run/greetd/pam_mount has been 
started.

```

greetd-1.log

```
tail greetd-1.log
2024-03-16 10:00:13 error: check_children: greeter exited without creating a 
session
2024-03-16 10:00:16 error: check_children: greeter exited without creating a 
session
2024-03-16 10:00:19 error: check_children: greeter exited without creating a 
session
2024-03-16 10:00:22 error: check_children: greeter exited without creating a 
session
```

seatd-1.log

```
2024-03-16 09:59:58 00:14:15.066 [INFO] [seatd/seat.c:170] Added client 1 to 
seat0
2024-03-16 09:59:58 00:14:15.066 [INFO] [seatd/seat.c:480] Opened client 1 on 
seat0
2024-03-16 09:59:58 00:14:15.385 [INFO] [seatd/client.c:471] Client disconnected
2024-03-16 09:59:58 00:14:15.387 [INFO] [seatd/seat.c:418] No clients on seat0 
to activate

2024-03-16 09:59:58 00:14:15.404 [INFO] [seatd/seat.c:524] Closed client 1 on 
seat0
2024-03-16 09:59:58 00:14:15.404 [INFO] [seatd/seat.c:192] Removed client 1 from 
seat0
2024-03-16 10:00:01 00:14:18.072 [INFO] [seatd/server.c:145] New client 
connected (pid: 3919, uid: 999, gid: 982)

2024-03-16 10:00:01 00:14:18.072 [INFO] [seatd/seat.c:170] Added client 1 to 
seat0
2024-03-16 10:00:01 00:14:18.073 [INFO] [seatd/seat.c:480] Opened client 1 on 
seat0
2024-03-16 10:00:02 00:14:18.405 [INFO] [seatd/client.c:471] Client disconnected
```

secure

```
Mar 16 09:56:45 localhost greetd: pam_unix(greetd:session): session closed for 
user greeter
Mar 16 09:56:46 localhost greetd: pam_unix(greetd:session): session opened for 
user greeter(uid=999) by (uid=0)

Mar 16 09:56:46 localhost greetd: gkr-pam: unable to locate daemon control file
Mar 16 09:56:46 localhost greetd: gkr-pam: gnome-keyring-daemon started properly
Mar 16 09:56:48 localhost greetd: pam_unix(greetd:session): session closed for 
user greeter
Mar 16 09:56:49 localhost greetd: pam_unix(greetd:session): session opened for 
user greeter(uid=999) by (uid=0)

```

And files;

```
ls /run/
avahi-daemon/  blkid/  booted-system  containerd/  current-system  docker/ 
greetd/  greetd-1423.sock  greetd-208.sock	greetd-214.sock  greetd-219.sock 
greetd-225.sock  greetd-228.sock  greetd.run	pcscd/	seatd.sock  setuid-programs/ 
 tlp/  udev/  xtables.lock

```

I'm a bit at 

bug#50977: digital-ocean-environment-type fails

2021-10-18 Thread Franz Geffke
I've done some more digging. There are various issues with the script
that actually converts the Debian 9 Droplet to Guix.

1. The SSL certificates of gnu.org fail on Debian 9 (since end of Sep).
This appears to be related to a change in LetsEncrypt root certificates
2. The guix binary used is rather old

I don't have time to submit a merge request now. I have adapted the
included script to work on Debian 9 (uncomment 1x line), 11 and Ubuntu
21.04. This should be good until the bug has been resolved.

```
#!/bin/bash

# Guix 1.3.0 on DigitalOcean
# Convert Debian 11 or Ubuntu 21.04

## MODIFY

TIMEZONE="Europe/Berlin"
LOCALE="en_US.utf8"
USERNAME="guix"
USER_COMMENT="guix's account"
USER_PASSWORD="Gq2M6JqNS2W6mgkY"

## MODIFY END

CONFIG=/etc/bootstrap-config.scm
CRYPT='$6$abc'

apt-get update -y
apt-get install curl xz-utils -y
# Uncomment this for Debian 9
# sed -i '/^mozilla\/DST_Root_CA_X3/s/^/!/' /etc/ca-certificates.conf
&& update-ca-certificates -f wget
https://ftp.gnu.org/gnu/guix/guix-binary-1.3.0.x86_64-linux.tar.xz cd
/tmp tar --warning=no-timestamp -xf
~/guix-binary-1.3.0.x86_64-linux.tar.xz mv var/guix /var/ && mv gnu /
mkdir -p ~root/.config/guix
ln -sf /var/guix/profiles/per-user/root/current-guix
~root/.config/guix/current export GUIX_PROFILE="`echo
~root`/.config/guix/current" ; source $GUIX_PROFILE/etc/profile
groupadd --system guixbuild
for i in `seq -w 1 10`;
do
   useradd -g guixbuild -G guixbuild \
   -d /var/empty -s `which nologin`  \
   -c "Guix build user $i" --system  \
   guixbuilder$i;
done;

cp ~root/.config/guix/current/lib/systemd/system/guix-daemon.service
/etc/systemd/system/ systemctl start guix-daemon && systemctl enable
guix-daemon mkdir -p /usr/local/bin
cd /usr/local/bin
ln -s /var/guix/profiles/per-user/root/current-guix/bin/guix
mkdir -p /usr/local/share/info
cd /usr/local/share/info
for i in /var/guix/profiles/per-user/root/current-guix/share/info/*; do
ln -s $i; done
guix archive --authorize <
~root/.config/guix/current/share/guix/ci.guix.gnu.org.pub # guix pull
guix package -i glibc-utf8-locales
export GUIX_LOCPATH="$HOME/.guix-profile/lib/locale"
guix package -i openssl

HOSTNAME=$(curl -s http://169.254.169.254/metadata/v1/hostname)
PUBLIC_IPV4=$(curl -s
http://169.254.169.254/metadata/v1/interfaces/public/0/ipv4/address)
NETMASK=$(curl -s
http://169.254.169.254/metadata/v1/interfaces/public/0/ipv4/netmask)
GATEWAY=$(curl -s
http://169.254.169.254/metadata/v1/interfaces/public/0/ipv4/gateway)

function write_server_config() {
cat >> $CONFIG <

bug#50977: digital-ocean-environment-type fails

2021-10-18 Thread Franz Geffke
I just ran into the same issue on a droplet in a different region.

The only detail that stands out is that 'private_networking' as seen
here [1] has been depreciated on the DO API [2]. I doubt that is the
reason this is failing though.

> This parameter has been deprecated. Use vpc_uuid instead to specify a
> VPC network for the Droplet. If no vpc_uuid is provided, the Droplet
> will be placed in your account's default VPC for the region.

[1]
https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/machine/digital-ocean.scm#n339
[2]
https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/machine/digital-ocean.scm#n339

Here's the related config:

(list (machine
(operating-system %system)
(environment digital-ocean-environment-type)
(configuration (digital-ocean-configuration
  (region "fra1")
  (size "s-1vcpu-1gp")
  (ssh-key "/home/franz/.ssh/do_staging")
  (tags (list "pantherx" "staging"))
  (enable-ipv6? #f)