Hello,
I’m having kind of a scary issue. I tried installing
gdm-s6. After doing so (and uninstalling/removing the service for sddm), I touched a file called
gdm in
/etc/s6/adminsv/contents.d/, and then ran
s6-db-reload. Everything compiled, and I restarted. Nothing booted, and s6 was complaining about something to do with
gdm/type needing to be longrun or whatever. OK, no problem. I uninstalled gdm-s6 and gdm, and tried to reload the db again. It was still upset about gdm as a service, so I manually removed it from the
sv directory. Reloaded db, it worked, and I restart.
Now I get an error:
s6-rc-init: fatal: invalid database size in /etc/s6/rc/compiled
I’ve been clearing the
rc folder, reloading the database, and then trying to update to the new compiled database, but the locks wont come off. I’m kind of stuck here.
The scary thing is that in tty7 where I’ve been working, it no longer sees my home folder and
ls /home/ is completely empty.
Please help me out!
Crap. So the gdm-s6 package had an old hack for upgrading from an old version when the s6 backend was way different. sddm-s6 had a similar hack too. I completely forgot to remove those (which should have been done like last year some time) and somehow it has never broken anyone's machine until just now. I've just upgraded both packages to remove that junk.
That just means your /home isn't mounted. No need to panic. You probably need to manually make/update the database at this point to recover. Try these sets of commands (root of course). Make sure you do not have any gdm/sddm folders or files lying around in /etc/s6/sv or /etc/s6/adminsv.
TIMESTAMP=$(date +%s%N)
s6-rc-compile /etc/s6/rc/compiled-${TIMESTAMP} /etc/s6/sv /etc/s6/adminsv
ln -sf /etc/s6/rc/compiled-${TIMESTAMP} /etc/s6/rc/compiled && mv -f /etc/s6/rc/compiled/compiled /etc/s6/rc
Hopefully, nothing goes wrong there. After that, give the machine a reboot and it should back up again.
Thank you for this. I tried the given set of commands and it doesn’t seem to help. Same error when I boot. I also tried moving /etc/s6/rc/compiled/compiled-${TIMESTAMP} instead and it doesn’t seem to change anything; in any case, when I run the last command I get a message from mv saying the files are the same.
Any other ideas?
Hmm maybe just try nuking all your databases. I'd say chroot into the system to be on the safe side so s6-rc isn't currently running. Once you've done the artix-chroot
rm -r /etc/s6/rc/*
TIMESTAMP=$(date +%s%N)
s6-rc-compile /etc/s6/rc/compiled-${TIMESTAMP} /etc/s6/sv /etc/s6/adminsv
ln -sf /etc/s6/rc/compiled-${TIMESTAMP} /etc/s6/rc/compiled
Should be OK after a reboot provided that your service definitions are all good and s6-rc-compile doesn't error on you.
Gotcha, I’ll try this on Monday and let you know if it goes alright.