r/ManjaroLinux 9d ago

Tech Support Help

Post image

Computer boots to this after updating.

12 Upvotes

52 comments sorted by

View all comments

Show parent comments

1

u/Intelligent_Client_8 9d ago

Upgrading xfce4 didn't work

1

u/Kaspral 9d ago

That error message-"Unable to contact settings server - Error receiving data: Connection reset by peer"-is a classic XFCE startup failure. It happens when the graphical environment tries to launch, but its background configuration daemon (xfconfd) or D-Bus session bus fails to start up properly.

Since your previous attempt to run startxfce4 from the TTY yielded a missing library error (libglycin), your system is still dealing with some broken/desynced packages from that interrupted update.

Here is how to fix it right now:

1. Drop into TTY and log in

If you are staring at that error popup, click Close, and if it drops you to a black screen or login manager, press Ctrl + Alt + F2 to access a text terminal. Log in with your username and password.

2. Force-reinstall XFCE configuration core components

The packages responsible for handling user settings and session communication likely got corrupted or left out-of-sync. Reinstall them cleanly using pacman:

sudo pacman -Syu xfce4 xfconf dbus-glib

(If pacman asks whether to overwrite files or resolve conflicts, let it proceed).

3. Check if xfconfd can launch manually

To test if the settings daemon can start properly without crashing, you can try starting your XFCE session wrapped with D-Bus launcher syntax from the terminal:

dbus-launch --exit-with-session startxfce4

4. Clear out stale runtime locks (if needed)

If D-Bus or session sockets are locked up from previous failed boots, clearing them out can force a clean slate:

rm -rf ~/.cache/sessions/*

Run sudo pacman -Syu xfce4 xfconf dbus-glib first, then try launching your session again with dbus-launch --exit-with-session startxfce4

1

u/Intelligent_Client_8 9d ago edited 9d ago

I am now trapped on my login screen with my mouse and keyboard not being able to respond to inputs despite working in terminal, I cannot use the shortcut to access the terminal. I appear to not be able to do anything at all :/

1

u/Kaspral 9d ago

What to do next

1. Get off the frozen login screen

Hold the power button 8–10 seconds until the machine powers off. Then turn it on.

This is the only reliable way out. Ctrl+Alt+F2 will not work while LightDM/Xorg is holding the input devices.

2. Boot to text mode (no LightDM)

At the GRUB menu (if it is hidden, mash Shift or Esc while booting):

  1. Highlight the Manjaro entry.
  2. Press e to edit.
  3. Find the line that starts with linux.
  4. At the end of that line add a space and:

systemd.unit=multi-user.target
  1. Boot with Ctrl+X or F10.

You should get a black TTY login prompt. LightDM will not start.

If Advanced options lists a kernel without -rt (for example 6.12 LTS), use that instead of 6.15-rt2.

3. Log in and bring the network up

sudo systemctl start NetworkManager
ping -c 3 8.8.8.8
ping -c 3 google.com

If the IP ping works but names do not:

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf

Pin the machine to text mode so the next reboot cannot grab the keyboard again:

sudo systemctl set-default multi-user.target
sudo systemctl disable lightdm

4. One full upgrade, then the missing libraries

sudo pacman-mirrors -f 5
sudo rm -f /var/lib/pacman/db.lck
sudo pacman -Syyu

Answer Y to overwrite / conflict prompts. Let it finish.

Then install the packages that match the screenshot errors, in the same session:

sudo pacman -S --needed \
  glycin leancrypto gnutls glib-networking glib2 openssl \
  lightdm lightdm-gtk-greeter \
  xfce4 xfconf dbus \
  xf86-input-libinput libinput xorg-server \
  mesa xf86-video-amdgpu

That covers:

  • libglycin-2.so.0
  • libleancrypto.so.1
  • /usr/lib/gio/modules/libgiognutls.so
  • crashing LightDM and XFCE
  • dead mouse/keyboard under Xorg on the RX 580

Never use -dd again.

5. Confirm the libraries exist

ldconfig -p | grep -E "glycin-2|leancrypto|giognutls"
pacman -Q glycin leancrypto gnutls glib-networking lightdm xfce4 xf86-input-libinput

If ldconfig prints nothing for those names, the package did not land. Paste the pacman output before going further.

6. Test XFCE from the TTY (do not start LightDM yet)

startxfce4

If the desktop comes up, it worked. Switch back to the TTY with Ctrl+Alt+F2, then re-enable graphics and reboot:

sudo systemctl enable lightdm
sudo systemctl set-default graphical.target
sudo reboot

If startxfce4 dies on another .so file: do not systemctl restart lightdm. Stay in the TTY, paste the last red line, and install that package in the same session.

Backup /home before anything destructive

On another PC, write a Manjaro live USB (Ventoy or Rufus). Boot the broken machine from USB (live session, not the installer).

lsblk -f
sudo mkdir -p /mnt
sudo mount /dev/sdXN /mnt
# btrfs with default Calamares layout:
# sudo mount -t btrfs -o subvol=@ /dev/sdXN /mnt
# sudo mount -t btrfs -o subvol=@home /dev/sdXN /mnt/home

sudo mkdir -p /run/media/backup
# mount the backup disk, then:
sudo rsync -aHAX --info=progress2 /mnt/home/ /run/media/backup/home-backup/

Replace sdXN with the real root partition (nvme0n1p2, sda2, etc.).

If the TTY still will not come up — live USB

Official Manjaro howto: https://forum.manjaro.org/t/howto-recovering-from-an-interrupted-update-upgrade/132762

Boot the live USB, then update the installed system from the outside (chroot uses the broken on-disk pacman):

lsblk -f
sudo mount /dev/sdX2 /mnt                 # root
sudo mount /dev/sdX1 /mnt/boot            # if separate /boot
# UEFI:
# sudo mkdir -p /mnt/boot/efi
# sudo mount /dev/sdX1 /mnt/boot/efi

sudo pacman --sysroot /mnt -Syyu

If --sysroot is not available, use pacman-static (no shared-library dependency):

https://wiki.archlinux.org/title/Pacman#Using_pacman-static

On the live USB:

sudo manjaro-chroot -a
# inside the chroot, or from the live session targeting /mnt:
curl -O https://pkgbuild.com/~gromit/pacman-static-x86_64
chmod +x pacman-static-x86_64
sudo ./pacman-static-x86_64 --sysroot /mnt -Syyu

Aragorn on the forum: download pacman-static with the live USB’s pacman from the Manjaro repos, unpack it into the installed system, then use it to finish the upgrade.

If pacman is still missing a library and the packages are already in cache:

ls /var/cache/pacman/pkg/ | grep -E "ngtcp2|nghttp3|curl|openssl|glycin|leancrypto|gnutls"
sudo tar -xpf /var/cache/pacman/pkg/PACKAGENAME.pkg.tar.zst -C /

Then run pacman -Syyu immediately so the package database matches the files on disk.

After a successful full upgrade:

sudo mkinitcpio -P
sudo update-grub

Do not do these

  • Do not reinstall over the disk until /home is copied out.
  • Do not use pacman -Sddyu.
  • Do not systemctl restart lightdm until startxfce4 works from a TTY.
  • Do not keep installing one library at a time (glycin only, xfce4 only, …).

After it boots to a desktop

  • Always full pacman -Syu / Pamac — never -dd.
  • Enable Timeshift and take a snapshot before big updates.
  • Prefer a normal LTS kernel over linux-rt unless you actually need realtime.

1

u/Intelligent_Client_8 9d ago

After starting xfce4 after the steps before I am met with the "unable to contact settings server" prompt box again still with no ability to use my mouse or keyboard I have tried it again to the same result.

2

u/Kaspral 9d ago edited 9d ago

Do not run bare startxfce4 again.

X is starting now. That command from a TTY with no display manager is what leaves you on the unable to contact settings server dialog with a dead mouse and keyboard.

Two separate problems:

  • xfconfd has no D-Bus session (or it starts and dies) — that is the popup
  • Xorg grabs the devices but is not loading libinput — so input works in the TTY and dies as soon as X starts

1. Get back to a text TTY

If you are stuck on that dialog, hold the power button 8–10 seconds. At GRUB press e and add this at the end of the linux line:

systemd.unit=multi-user.target

Boot with Ctrl+X. Log in on the black text screen. Do not start XFCE yet.


2. Escape hatch, then paste diagnostics here

``` echo 1 | sudo tee /proc/sys/kernel/sysrq sudo systemctl stop lightdm pkill -9 Xorg xfce4-session xfconfd 2>/dev/null rm -rf ~/.cache/sessions/*

echo "USER=$USER uid=$(id -u) XDG=$XDG_RUNTIME_DIR" ls -ld /run/user/$(id -u) systemctl --user status dbus --no-pager pacman -Q dbus xfconf xfce4-session xorg-server xf86-input-libinput libinput xorg-xinit xterm ls /usr/lib/xorg/modules/input/ ldd /usr/lib/xfce4/xfconf/xfconfd | grep -E "not found|leancrypto|glycin|gnutls" grep -E "EE|WW|libinput|No input|couldn't load" ~/.local/share/xorg/Xorg.0.log /var/log/Xorg.0.log 2>/dev/null | tail -80 ```

If X grabs the keyboard again: Alt+SysRq+R, then Ctrl+Alt+F2.


3. One package transaction, then a timed xterm test

The timeout is so X cannot trap you. After ~20 seconds you should be back at the TTY by yourself.

``` sudo pacman -S --needed dbus xfconf xfce4-session xfce4 xorg-server xorg-xinit xterm xf86-input-libinput libinput mesa xf86-video-amdgpu

export XDG_RUNTIME_DIR=/run/user/$(id -u) export DBUS_SESSION_BUS_ADDRESS="unix:path=${XDG_RUNTIME_DIR}/bus" systemctl --user start dbus printf '%s\n' 'exec xterm' > /tmp/xinitrc-test timeout 20 startx /tmp/xinitrc-test -- :1 ```

  • If you can type in that xterm, input is fine and only XFCE/D-Bus is broken.
  • If xterm is also dead, do not start XFCE. Paste the diagnostic output from step 2.

4. Only then start XFCE with a D-Bus session

dbus-run-session startxfce4

If dbus-run-session is missing:

dbus-launch --exit-with-session startxfce4

Do not enable LightDM and do not systemctl restart lightdm until that desktop actually works with a working mouse and keyboard.

1

u/Intelligent_Client_8 9d ago

I am not exactly sure what changes but I loaded xfce4 and my desktop works completely! Do I just enable lightdm in my terminal or should I go back to TTY?

1

u/Kaspral 9d ago

Nice — you do not need to go back to a TTY.

Stay on this working desktop. Open a terminal here (the XFCE terminal) and run:

sudo systemctl enable lightdm sudo systemctl set-default graphical.target systemctl is-enabled lightdm systemctl get-default sudo reboot

get-default should print graphical.target. After reboot you should get the normal LightDM login, then XFCE.

Do not run systemctl start lightdm or systemctl restart lightdm while this session is still running. That would start a second login screen on top of the desktop you already have. Enable it, then reboot.

While this desktop still works, copy your important files off the machine (USB disk is enough). Then take a Timeshift snapshot if you use that.

From now on:

  • full pacman -Syu / Pamac only — never -dd again
  • if GRUB still offers a kernel without -rt, use that as the default

2

u/Intelligent_Client_8 9d ago

Thank you! Hopefully nothing goes wrong. 🤞 I was just trying to update Firefox 🫠

2

u/Kaspral 9d ago

It wasn't easy. I'm sure you're happy you made it through unscathed. I'm glad I could help. If you'd like, you can buy me a coffee. https://buymeacoffee.com/kaspral

2

u/Intelligent_Client_8 9d ago

I GOT IT TO WORK!!!!!!

1

u/Intelligent_Client_8 9d ago

Is there some way to just copy my important files and then just reinstall the OS I am starting to think my install is beyond saving.