That's the weird part, and sorry for not being clearer. It is a terminal login - tty1 must exist, unless I've totally lost it now? Grabbing the whole error is going to be hard, it runs off the screen and I can't find where it's being logged (if anywhere), but I'll see what I can do. I agree that it's probably unrelated to dbus, and it appears unrelated to Wayland to me as well - the constant among the errors are the complaints about /dev/tty.
This was the state of dinit services, bash files, and window manager init prior to the start of this thread.
dinitctl list
[[+] ] boot
[{+} ] getty
[{+} ] loginready (has console)
[{+} ] setup
[{+} ] cleanup
[{+} ] fsck
[{+} ] binfmt
[{+} ] pseudofs
[{+} ] locale
[{+} ] root-rw
[{+} ] mount-all
[{+} ] udevd (pid: 1103)
[{+} ] udevd-early
[{+} ] tmpfs
[{+} ] cgroups
[{+} ] tmpfiles-dev
[{+} ] kmod-static-nodes
[{+} ] udev-settle
[{+} ] udev-trigger
[{+} ] cryptsetup
[{+} ] hwclock
[{+} ] net-lo
[{+} ] random-seed
[{+} ] swap
[{+} ] sysctl
[{+} ] sysusers
[{+} ] tmpfiles-setup
[{+} ] vconsole
[{+} ] hostname
[{+} ] mount
[{+} ] misc
[{+} ] modules
[{+} ] network
[{+} ] network-pre
[{+} ] rclocal
[{+} ] logind
[{+} ] elogind (pid: 1169)
[{+} ] dbus (pid: 1167)
[{+} ] dbus-pre
[{+} ] connmand (pid: 1168)
[{+} ] firewalld (pid: 1171)
[{+} ] syslog-ng (pid: 1156)
[{+} ] dmeventd (pid: 9864)
[{+} ] haveged (pid: 1163)
[{+} ] ntpd (pid: 1170)
[{+} ] cronie (pid: 1172)
[{+} ] tty1 (pid: 3778)
[{+} ] tty2 (pid: 1195)
[{+} ] tty3 (pid: 1196)
[{+} ] tty4 (pid: 1198)
[{+} ] tty5 (pid: 1197)
[{+} ] tty6 (pid: 1199)
.bashrc
#
# ~/.bashrc
#
# Return if non-interactive
[[ $- != *i* ]] && return
# Prompt
PS1='[\[\e[38;5;107m\]\u\[\e[0m\]@\h \[\e[38;5;74m\]\w\[\e[0m\]]\$ '
# Aliases
alias diff='diff --color=auto'
alias grep='grep --color=auto'
alias ip='ip -color=auto'
alias ls='ls --color=auto'
alias vim=nvim
alias kssh='/usr/bin/kitty +kitten ssh'
alias wget='wget --hsts-file="${XDG_STATE_HOME}/wget-hsts"'
alias zigup='zigup --install-dir "${XDG_DATA_HOME}/zigup" --path-link "${HOME}/.local/bin/zig"'
alias pacman-rm-unused='pacman -Qtdq | sudo pacman -Rns -'
alias checkupdates='checkupdates && paru -Qua'
.bash_profile
#
# ~/.bash_profile
#
# Default text editors
export EDITOR=nvim
export VISUAL=emacs
# Add ~/.local/bin to $PATH
export PATH="${HOME}/.local/bin:${PATH}"
# XDG Base Directories
export XDG_CACHE_HOME="${HOME}/.cache"
export XDG_CONFIG_HOME="${HOME}/.config"
export XDG_DATA_HOME="${HOME}/.local/share"
export XDG_STATE_HOME="${HOME}/.local/state"
# Force Java to behave when not using a DE
export _JAVA_AWT_WM_NONREPARENTING=1
# GPG passphrase prompt
export GPG_TTY=$(tty)
# Mozilla + Wayland
export MOZ_ENABLE_WAYLAND=1
## No littering in $HOME!
# bash
export HISTFILE="${XDG_STATE_HOME}/bash_history"
# cargo
export CARGO_HOME="${XDG_DATA_HOME}/cargo"
# dotnet
export DOTNET_BUNDLE_EXTRACT_BASE_DIR="${XDG_CACHE_HOME}/dotnet_bundle_extract"
export DOTNET_CLI_HOME="${XDG_DATA_HOME}/dotnet/cli"
export DOTNET_CLI_TELEMETRY_OPTOUT=true
export DOTNET_TOOLS_PATH="${XDG_DATA_HOME}/dotnet/tools"
export PATH="${DOTNET_TOOLS_PATH}:${PATH}"
# go
export GOPATH="${XDG_DATA_HOME}/go"
export GOMODCACHE="${XDG_CACHE_HOME}/go/mod"
# gpg
export GNUPGHOME="${XDG_DATA_HOME}/gnupg"
# gtk2
export GTK2_RC_FILES="${XDG_CONFIG_HOME}/gtk-2.0/gtkrc"
# node
export NPM_CONFIG_USERCONFIG="${XDG_CONFIG_HOME}/npm/npmrc"
# python
export PYTHONSTARTUP="${XDG_CONFIG_HOME}/python/pythonrc"
export PYTHONPYCACHEPREFIX="${XDG_CACHE_HOME}/python"
export PYTHONUSERBASE="${XDG_DATA_HOME}/python"
# wine
export WINEPREFIX="${XDG_DATA_HOME}/wine"
# Xorg
export XINITRC="${XDG_CONFIG_HOME}/X11/xinitrc"
export XAUTHORITY="${XDG_RUNTIME_DIR}/Xauthority"
# Source other dotfiles
[[ -f ~/.profile ]] && . ~/.profile
[[ -f ~/.bashrc ]] && . ~/.bashrc
# start river
[[ -z "${DISPLAY}" && "${XDG_VTNR}" -eq 1 ]] && exec dbus-run-session river
.bash_logout
#
# ~/.bash_logout
#
reset
.config/river/init
#!/bin/bash
# Do some logging
#exec 3>&1 4>&2
#trap 'exec 2>&4 1>&3' 0 1 2 3 RETURN
#exec 1>"${XDG_STATE_HOME}"/river.log 2>&1
# Start kitty
riverctl map normal Super Return spawn kitty
# Start fuzzel
riverctl map normal Super Space spawn fuzzel
# Lock screen
riverctl map normal Control+Alt L spawn 'waylock-launcher'
# Logout
riverctl map normal Super End spawn 'wleave -p layer-shell'
riverctl map locked Super+Alt+Control End spawn 'loginctl kill-session $XDG_SESSION_ID'
# Screenshot entire display to clipboard
riverctl map normal Control Print spawn 'grim -t png - | wl-copy -t image/png'
# Screenshot entire display and save to file
riverctl map normal Super+Control Print spawn 'grim -t png ~/Pictures/screenshot-$(date +%Y-%m-%d_%T).png'
# Screenshot selection to clipboard
riverctl map normal Alt Print spawn 'grim -t png -g "$(slurp -d)" - | wl-copy -t image/png'
# Screenshot selection and save to file
riverctl map normal Super+Alt Print spawn 'grim -t png -g "$(slurp -d)" ~/Pictures/screenshot-$(date +%Y-%m-%d_%T).png'
# Close the focused view
riverctl map normal Super Q close
# Exit river
riverctl map normal Super+Shift E exit
# Focus the next/previous view in the layout stack
riverctl map normal Super N focus-view next
riverctl map normal Super P focus-view previous
# Swap the focused view with the next/previous view in the layout stack
riverctl map normal Super+Alt N swap next
riverctl map normal Super+Alt P swap previous
# Focus the next/previous output
riverctl map normal Super V focus-output next
riverctl map normal Super+Alt V focus-output previous
# Send the focused view to the next/previous output
riverctl map normal Super+Shift Grave send-to-output next
riverctl map normal Super Grave send-to-output previous
# Bump the focused view to the top of the layout stack
riverctl map normal Super+Shift Return zoom
# Increase/decrease the main ratio of rivertile(1)
riverctl map normal Super B send-layout-cmd rivertile "main-ratio -0.05"
riverctl map normal Super F send-layout-cmd rivertile "main-ratio +0.05"
# Increment/decrement the main count of rivertile(1)
riverctl map normal Super+Alt F send-layout-cmd rivertile "main-count +1"
riverctl map normal Super+Alt B send-layout-cmd rivertile "main-count -1"
# Snap views to screen edges
riverctl map normal Super+Alt+Control B snap left
riverctl map normal Super+Alt+Control F snap right
riverctl map normal Super+Alt+Control P snap up
riverctl map normal Super+Alt+Control N snap down
# Resize views
riverctl map normal Super+Alt+Shift B resize horizontal -100
riverctl map normal Super+Alt+Shift F resize horizontal 100
riverctl map normal Super+Alt+Shift P resize vertical -100
riverctl map normal Super+Alt+Shift N resize vertical 100
# Move views
riverctl map normal Super+Alt+Control+Shift B move left 100
riverctl map normal Super+Alt+Control+Shift F move right 100
riverctl map normal Super+Alt+Control+Shift P move up 100
riverctl map normal Super+Alt+Control+Shift N move down 100
# Change layout
riverctl map normal Super+Shift B send-layout-cmd rivertile "main-location left"
riverctl map normal Super+Shift F send-layout-cmd rivertile "main-location right"
riverctl map normal Super+Shift P send-layout-cmd rivertile "main-location top"
riverctl map normal Super+Shift N send-layout-cmd rivertile "main-location bottom"
# Move views with mouse
riverctl map-pointer normal Super BTN_LEFT move-view
# Resize views with mouse
riverctl map-pointer normal Super BTN_RIGHT resize-view
# Toggle float with mouse
riverctl map-pointer normal Super BTN_MIDDLE toggle-float
for i in $(seq 1 9)
do
tags=$((1 << ($i - 1)))
# Super+[1-9] to focus tag [0-8]
riverctl map normal Super $i set-focused-tags $tags
# Super+Shift+[1-9] to tag focused view with tag [0-8]
riverctl map normal Super+Shift $i set-view-tags $tags
# Super+Control+[1-9] to toggle focus of tag [0-8]
riverctl map normal Super+Control $i toggle-focused-tags $tags
# Super+Shift+Control+[1-9] to toggle tag [0-8] of focused view
riverctl map normal Super+Shift+Control $i toggle-view-tags $tags
done
# Super+0 to focus all tags
# Super+Shift+0 to tag focused view with all tags
all_tags=$(((1 << 32) - 1))
riverctl map normal Super 0 set-focused-tags $all_tags
riverctl map normal Super+Shift 0 set-view-tags $all_tags
# Toggle float
riverctl map normal Super S toggle-float
# Toggle fullscreen
riverctl map normal Super T toggle-fullscreen
# Declare a passthrough mode. This mode has only a single mapping to return to
# normal mode. This makes it useful for testing a nested wayland compositor
riverctl declare-mode passthrough
# Enter passthrough mode
riverctl map normal Super F11 enter-mode passthrough
# Return to normal mode
riverctl map passthrough Super F11 enter-mode normal
# Set background and border
riverctl background-color 0x323d43
riverctl border-color-focused 0xd8caac
riverctl border-color-unfocused 0x525c62
riverctl border-color-urgent 0xe68183
riverctl border-width 1
# Keyboard repeat rate
riverctl set-repeat 50 300
# Focus on 1st display at login
riverctl focus-output DP-1
# -app-id and title -"foo" start floating
riverctl rule-add -app-id 'Bitwarden' float
riverctl rule-add -app-id 'Blueman-manager' float
riverctl rule-add -add-id 'connman-gtk' float
riverctl rule-add -app-id 'galculator' float
riverctl rule-add -app-id '*KeePassXC' float
riverctl rule-add -app-id 'lutris' float
riverctl rule-add -app-id 'mousepad' float
riverctl rule-add -app-id 'Steam' float
riverctl rule-add -app-id 'vlc' float
# -app-id "bar" and any title use client-side decorations
riverctl rule-add -app-id 'emacs' csd
# Default layout generator - rivertile(1)
riverctl default-layout rivertile
rivertile -view-padding 4 -outer-padding 4 -main-ratio .55 &
# Autostart
dbus-update-activation-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=river &
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
#/usr/lib/at-spi-bus-launcher --launch-immediately &
#gnome-keyring-daemon --start --components=pkcs11,secrets,ssh &
kanshi &
pipewire-launcher &
swayidle-launcher &
yambar-launcher &
dunst &
gammastep -r &
river-tag-overlay &
swaybg -m fill -i "${HOME}/Pictures/Wallpapers/dark-forest-path.jpg" &
nextcloud --background &
pacman -Qqe
amd-ucode
arkenfox-user.js
artix-archlinux-support
base
base-devel
bat
bitwarden
bluez-dinit
bluez-utils
btrfs-du
btrfs-progs
ccache
chezmoi
clang
connman-dinit
connman-gtk
cronie-dinit
cryptsetup
cryptsetup-dinit
cups-dinit
device-mapper-dinit
dhcpcd-dinit
dinit
dunst
eddie-ui
efibootmgr
efistub-standalone
elogind-dinit
emacs-wayland
everforest-gtk-theme-git
evince
file-roller
firefox
firefox-developer-edition
firewalld-dinit
flake8
fuzzel
fwupd
galculator
gamemode
gammastep
gdb
gimp
git
gnome-keyring
grim
haveged-dinit
htop
hunspell-en_us
hyphen-en
kanshi
keepassxc
kitty
lib32-gamemode
lib32-vkd3d
lib32-vulkan-icd-loader
lib32-vulkan-mesa-layers
lib32-vulkan-radeon
libreoffice-fresh
linux
linux-firmware
linux-headers
linux-zen
linux-zen-headers
logrotate
lutris
man-db
mousepad
mtr
mythes-en
ncdu
neofetch
neovim
nextcloud-client
noto-fonts-cjk
noto-fonts-emoji
openntpd-dinit
openresolv
openssh-dinit
orchis-theme-git
otf-font-awesome
p7zip
pacman-contrib
pamixer
paru-bin
pavucontrol
pipewire
pipewire-pulse
polkit-gnome
prettier
pulseaudio-control
pyright
python-black
python-debugpy
python-protobuf
qogir-gtk-theme-git
qogir-icon-theme
qt5-wayland
qt6-wayland
ristretto
river-git
river-tag-overlay-git
rsync
seahorse
simple-scan
slurp
smartmontools
snapper
spotify
st
strace
swaybg
swayidle
syslog-ng-dinit
thunar
thunar-archive-plugin
thunar-media-tags-plugin
thunar-volman
thunderbird
tmux
tor-browser
ttf-dejavu
ttf-fira-code
ttf-hack
ttf-liberation
ttf-nerd-fonts-symbols
ttf-nerd-fonts-symbols-mono
tutanota-desktop-bin
unrar
valgrind
vim
vimix-gtk-themes-git
vivaldi
vivaldi-ffmpeg-codecs
vkd3d
vlc
vulkan-mesa-layers
vulkan-radeon
vulkan-tools
waybar
waylock
wget
wine
wireplumber
wl-clipboard
wleave-git
wlr-randr
wlroots0.16
wpa_supplicant-dinit
wtype
xdg-desktop-portal-wlr
xdg-ninja
xdg-user-dirs
yambar-wayland
zigup-bin
zls-git
My other Wayland dotfiles are here: https://codeberg.org/andyscott/dotfiles/src/branch/wayland, but I manage them with chezmoi so it can be a little difficult to read where I've done templating. If you need anything else let me know. Thanks.