You are not logged in.
Hello!
I was wondering if there was a way to add a custom system-d boot boot option that launches Arch Linux, but without starting X, KWin or KDE Plasma.
I would like this because I can use a terminal workflow for some CPU intensive apps and would like the option to do this on boot.
I've looked on https://wiki.archlinux.org/title/system … figuration and it seems like I can create a new boot option, which would be the best way of implementing this, but I have no idea to make such that it makes Arch skip over running X11 (or Wayland but I always use X11).
I would rather it skip over booting into X11 or Wayland rather than taking the method of `killall x11`, since it's a bit cleaner and less hack-y.
How would I go about this? What documentation should I read first in order to get an idea of how to do this?
Note: I run KDE Plasma, I'm using systemd-boot and I installed my system using Archinstall.
Last edited by Jazztache (2024-01-02 07:18:03)
Offline
Just add a boot entry with systemd.unit=multi-user.target added to the kernel command line?
Or disable auto-starting X and manually start it when you need it.
Offline
With the first option, what does systemd.unit=multi-user.target specifically do?
As for auto-disabling the usual display stack, I usually do need it, but I want to have an alternate option to not use it for some sessions. It's like a 80 / 20 split between 'i need it this session' and 'tty is fine'.
Offline
what does systemd.unit=multi-user.target specifically do?
Read the "KERNEL COMMAND LINE" section in systemd(1), that explains the option.
Jin, Jîyan, Azadî
Offline
Sorry for the late reply!
I had a look at the systemd manual, and I couldn't find anything specifically relating to `multi-user.target`. I know that systemd.unit= lets you pick which unit to override, but I couldn't find that specific entry.
My `/multi-user` in man gave me no results...
Usually, I'm all for reading documentation, but would it be alright if someone explained it in laymans terms, please? I haven't done any systemd configuration before manually so this is new territory for me. Just want to make sure I know what I need to know in the event any boot issues arise. If an Arch Wiki article explains this much better than I would be OK with that.
Thankyou for the help!
Offline
Offline
Ah, non-graphical. I'm guessing I just use this in a systemd boot entry and I'm ready to go?
Offline
What do you think it the worst possible outcome if you just tried?
Offline
I had a look at the systemd manual, and I couldn't find anything specifically relating to `multi-user.target`
You have to read the man pages recursively. In this case the relevant information can be found in systemd.special(7).
The documentation for systemd really is first rate, comparable to OpenBSD's man pages IMO.
Jin, Jîyan, Azadî
Offline
What do you think it the worst possible outcome if you just tried?
Murphy's Law - anything that can go wrong will go wrong ![]()
If anything goes wrong I recon it's easily reversible with a live CD and chroot though, it's just a massive hassle and I want to make absolute sure that I know what I need to know. The systemd manpages have been helpful btw.
You have to read the man pages recursively.
OK. By recursively, do you mean follow the links that are in the manpages? Unsure what it would mean to read manpages *recursively* in this context.
I did find a better explanation of multi-user.target though.
I'll probably just go ahead with it later when I have some time.
Offline
Solution:
Add a file at /boot/loader/entries/yourbootnamehere.conf, and write to following to it:
title Arch Linux - TTY (linux)
linux /vmlinuz-linux
initrd /intel-ucode.img
initrd /initramfs-linux.img
options root=PARTUUID=<yourpartitionuuidforroothere> zswap.enabled=0 rw rootfstype=ext4 systemd.unit=multi-user.targetbe sure to replace yourpartitionuuidforroothere with the partition id for your root partition. I got mine by looking at the default archinstall generated one.
Feel free to mark this as solved ![]()
Offline
Mark resolved threads by editing your initial posts subject - so others will know that there's no task left, but maybe a solution to find.
Thanks.
And for posteriority and future readers:
Blindly writing random kernel commandlines is a stupid idea in any case and if your root FS isn't ext4, the above will crossfuck you badly.
Offline