You are not logged in.
No, I don't autologin, and changing theme as well as clearing rc.local doesn't change anything. Also, I've tried with lxdm and the same thing is happening! Weird...
Offline
I haven't solved the problem with X starting, however, I did some modifications to this plymouth theme and my one for Arch. Here's a preview:
http://www.youtube.com/watch?v=gSK7B_0uxEE
There's some minor issues, but nevertheless, if anyone is interested I'll upload all those themes to kde-look.
Offline
Thanks for testing that sidneyk.
I have corrected the initcpio so that it does not try to include the x11 renderer.
I noticed yesterday that Gnome is coming up now on tty2 and tty1 is now just a blank, black screen with no login prompt or anything. I tried downloading fresh tarballs from the aur (gdm-plymouth, plymouth-systemd-git, and systemd-quiet) and rebuilding and reinstalling everything, but Gnome still comes up on tty2. Is this the expected behaviour now? The bootup seems to be fine otherwise. Also, when I run 'sudo plymouth-set-default-theme <theme> -R, I still get the error about mkinitcpio trying to load the x11 renderer unless I manually comment out line 33 in /lib/initcpio/install/plymouth. Then it builds the initramfs without complaint. Maybe it had something to do with the order I reinstalled everything in. Thanks.
Offline
No, I don't autologin, and changing theme as well as clearing rc.local doesn't change anything.
Also, I've tried with lxdm and the same thing is happening! Weird...
Can you post your kernel command line parameters? Maybe you have a vga=,video= parameter or maybe uvesafb installed?
zephyr wrote:Thanks for testing that sidneyk.
I have corrected the initcpio so that it does not try to include the x11 renderer.
I noticed yesterday that Gnome is coming up now on tty2 and tty1 is now just a blank, black screen with no login prompt or anything. I tried downloading fresh tarballs from the aur (gdm-plymouth, plymouth-systemd-git, and systemd-quiet) and rebuilding and reinstalling everything, but Gnome still comes up on tty2. Is this the expected behaviour now? The bootup seems to be fine otherwise. Also, when I run 'sudo plymouth-set-default-theme <theme> -R, I still get the error about mkinitcpio trying to load the x11 renderer unless I manually comment out line 33 in /lib/initcpio/install/plymouth. Then it builds the initramfs without complaint. Maybe it had something to do with the order I reinstalled everything in. Thanks.
Nope, I have changed absolutely nothing at all concerning gdm. GDM should start by default in tty1 if it finds it empty by default (arch's gdm is patched to start it on tty7).
Unfortunately gdm has no runtime configuration to force the tty it starts on unlike kdm and lxdm. So you now get a black screen between plymouth and gdm right?
Did you update something like xorg or gnome, or changed something else? Maybe you should update your xf86-video-ati-plymouth package as well?
TTY1 is expected to be blank with no getty if you are using {g,k,lx}dm-plymouth.service so that no races between X and getty@tty1 happen.
About the initcpio install script, I must have accidentally reverted when I applied the no-gtk patch. Fixed now.
Offline
Can you post your kernel command line parameters? Maybe you have a vga=,video= parameter or maybe uvesafb installed?
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="${saved_entry}"
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
insmod vbe
}
set menu_color_normal=light-blue/black
set menu_color_highlight=light-cyan/blue
insmod part_msdos
insmod ext2
set root='(hd0,msdos4)'
search --no-floppy --label --set arch
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode="800x600x32"
set gfxpayload="1280x1024x32"
insmod gfxterm
load_video
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --label --set arch
set locale_dir=($root)/locale
set lang=sr_RS
insmod gettext
fi
terminal_input console
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --label --set arch
insmod png
background_image -m stretch /gfx/splash-image.png
if sleep --interruptible 1 ; then
set timeout=0
fi
play 1000 300 1
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Arch' --class archlinux --class gnu-linux --class gnu --class os {
set root='(hd0,msdos4)'
search --no-floppy --label --set=root arch
linux /boot/vmlinuz-linux-demon root=/dev/disk/by-label/arch ro resume=/dev/disk/by-label/swap quiet splash pcie_aspm=force
initrd /boot/initramfs-linux-demon.img
}
TTY1 is expected to be blank with no getty if you are using {g,k,lx}dm-plymouth.service so that no races between X and getty@tty1 happen.
Is there any way we can achieve this without systemd?
Offline
TTY1 is expected to be blank with no getty if you are using {g,k,lx}dm-plymouth.service so that no races between X and getty@tty1 happen.
Is there any way we can achieve this without systemd?
I really don't know, I tried to find something when I originally tried all this, but came up with nothing and gave up since there were some problems.
Maybe ask one of the initscripts expert/developer?
About your grub.cfg: Is 1280x1024x32 your native panel's resolution? Is there a mode switch between grub and kernel/plymouth?
Can you try commenting GRUB_GFXPAYLOAD_LINUX=keep in /etc/default/grub , update your grub.cfg and see if it works?
Or maybe something changed recently in the repos and the ati driver has some kind of problem?
Offline
Demon wrote:No, I don't autologin, and changing theme as well as clearing rc.local doesn't change anything.
Also, I've tried with lxdm and the same thing is happening! Weird...
Can you post your kernel command line parameters? Maybe you have a vga=,video= parameter or maybe uvesafb installed?
sidneyk wrote:zephyr wrote:Thanks for testing that sidneyk.
I have corrected the initcpio so that it does not try to include the x11 renderer.
I noticed yesterday that Gnome is coming up now on tty2 and tty1 is now just a blank, black screen with no login prompt or anything. I tried downloading fresh tarballs from the aur (gdm-plymouth, plymouth-systemd-git, and systemd-quiet) and rebuilding and reinstalling everything, but Gnome still comes up on tty2. Is this the expected behaviour now? The bootup seems to be fine otherwise. Also, when I run 'sudo plymouth-set-default-theme <theme> -R, I still get the error about mkinitcpio trying to load the x11 renderer unless I manually comment out line 33 in /lib/initcpio/install/plymouth. Then it builds the initramfs without complaint. Maybe it had something to do with the order I reinstalled everything in. Thanks.
Nope, I have changed absolutely nothing at all concerning gdm. GDM should start by default in tty1 if it finds it empty by default (arch's gdm is patched to start it on tty7).
Unfortunately gdm has no runtime configuration to force the tty it starts on unlike kdm and lxdm. So you now get a black screen between plymouth and gdm right?Did you update something like xorg or gnome, or changed something else? Maybe you should update your xf86-video-ati-plymouth package as well?
TTY1 is expected to be blank with no getty if you are using {g,k,lx}dm-plymouth.service so that no races between X and getty@tty1 happen.
About the initcpio install script, I must have accidentally reverted when I applied the no-gtk patch. Fixed now.
Confirmed that the x11 renderer thing is now fixed, thanks. No, I am getting smooth transition between plymouth and GDM, it's just that GDM/Gnome is now on tty2 instead of tty1 where it had been when I first applied your patches and such. I reinstalled it all last night (although without first uninstalling) and no change. I've only made normal pacman -Syyu updates. I have an nvidia card so I don't use ATI drivers. I did try the other day to install the Gnome 3.2 beta from the unstable repo, but had to downgrade back because it didn't seem to work at all. That may have screwed something up. Anyway, thanks for the quick response. I may try a new install from the current ISO and see what happens before everything gets too loaded down.
Offline
Whoops... No, my native screen is 1024x768, I did some testing of my plymouth theme so I put that resolution (however, nothing changed). But this isn't the cause of the screen flickering and blanking when X starts, I think...
Offline
I just confirmed that my laptop which has ATI graphics is still coming up with GDM/Gnome on tty1, so it has to be something with my desktop setup. Is that xf86-video-ati-plymouth package only if using proprietary drivers or is it needed with the open source drivers as well? I don't believe I used it on the ATI machine and I'm using the open source drivers.
Offline
Confirmed that the x11 renderer thing is now fixed, thanks. No, I am getting smooth transition between plymouth and GDM, it's just that GDM/Gnome is now on tty2 instead of tty1 where it had been when I first applied your patches and such. I reinstalled it all last night (although without first uninstalling) and no change. I've only made normal pacman -Syyu updates. I have an nvidia card so I don't use ATI drivers. I did try the other day to install the Gnome 3.2 beta from the unstable repo, but had to downgrade back because it didn't seem to work at all. That may have screwed something up. Anyway, thanks for the quick response. I may try a new install from the current ISO and see what happens before everything gets too loaded down.
Sorry, I thought you were using ati drivers. Nouveau needs no patch so that's fine:)
If you do get a smooth transition however, maybe plymouth and GDM have some automagic way to negotiate, considering you also used gnome-unstable. I wouldn't worry too much.
If you want to enable getty@tty1 simply remove all references to it in gdm-plymouth.service.
Whoops...
No, my native screen is 1024x768, I did some testing of my plymouth theme so I put that resolution (however, nothing changed). But this isn't the cause of the screen flickering and blanking when X starts, I think...
You do use early KMS right? Plymouth wiki says how to do so.
It could be interfering if KMS does not play fine with grub framebuffer.
What's the output of cat /proc/fb?
Offline
I just confirmed that my laptop which has ATI graphics is still coming up with GDM/Gnome on tty1, so it has to be something with my desktop setup. Is that xf86-video-ati-plymouth package only if using proprietary drivers or is it needed with the open source drivers as well? I don't believe I used it on the ATI machine and I'm using the open source drivers.
xf86-video-ati-plymouth is the open-source radeon driver with a simple patch to enable plymouth integration.
Proprietary ATI/Nvidia drivers are not supposed to work with this.
If you do not have it installed, maybe the support has moved upstream for ati driver. I don't think so however, but I will search for that.
Offline
What's the output of cat /proc/fb?
$ cat /proc/fb
0 radeondrmfb
I did set up early KMS. (At least I think so. )
Offline
zephyr wrote:What's the output of cat /proc/fb?
$ cat /proc/fb 0 radeondrmfb
I did set up early KMS. (At least I think so.
)
Yup, you did
I saw your last video (btw nice theme ) and apparently there appears to be a mode switch (resolution change) between plymouth and KDM, while KDM appears to hold plymouth's contents correctly (meaning that the final image from plymouth appears before KDM finishes loading, I guess your KDM theme has the lower archlinux logo in the wallpaper right?).
You must make sure that the resolution is the same between X/KDM/KDE, grub and framebuffer. You could try either without GRUB_GFXPAYLOAD_LINUX=keep, or/and with GRUB_GFXPAYLOAD_LINUX=(same resolution as X).
Maybe you could force radeon KMS modeset if it isn't already forced by default? I believe it is also somewher in the wiki, radeon.modeset=1 in kernel command line or something.
Offline
Yup, you did
I saw your last video (btw nice theme
) and apparently there appears to be a mode switch (resolution change) between plymouth and KDM, while KDM appears to hold plymouth's contents correctly (meaning that the final image from plymouth appears before KDM finishes loading, I guess your KDM theme has the lower archlinux logo in the wallpaper right?).
You must make sure that the resolution is the same between X/KDM/KDE, grub and framebuffer. You could try either without GRUB_GFXPAYLOAD_LINUX=keep, or/and with GRUB_GFXPAYLOAD_LINUX=(same resolution as X).
Maybe you could force radeon KMS modeset if it isn't already forced by default? I believe it is also somewher in the wiki, radeon.modeset=1 in kernel command line or something.
Yes, that mode switch I failed to understand. I get this even without plymouth. I've tried all that I can think of in grub2 (even radeon.modeset=1). Apparently, my monitor does not work if I set set gfxmode="1024x768x24" (frequency offset), it has to be set gfxmode="1024x768x32". Yet still there's a mode switch between grub2 and plymouth.
Regarding concurency between X and agetty. With these options in kdmrc:
ServerVTs=-1
ConsoleTTYs=tty2,tty3,tty4
and commented line in /etc/inittab for agetty on tty1 X still starts on tty5. However, after I restart X it then starts on tty1, meaning that something has released tty1 in the meantime. (Perhaps something in the rc.local holds tty1, or some deamon left in the background, who knows). What matters is that I use ServerVTs=1 now and it works, so far no problem.
I'm starting to think now that isn't related to just plymouth (like I've said, even without plymouth splash I get this blank screen before kdm starts), and don't know how to debug this.
Offline
Yes, that mode switch I failed to understand. I get this even without plymouth. I've tried all that I can think of in grub2 (even radeon.modeset=1). Apparently, my monitor does not work if I set set gfxmode="1024x768x24" (frequency offset), it has to be set gfxmode="1024x768x32". Yet still there's a mode switch between grub2 and plymouth.
Regarding concurency between X and agetty. With these options in kdmrc:
ServerVTs=-1
ConsoleTTYs=tty2,tty3,tty4
and commented line in /etc/inittab for agetty on tty1 X still starts on tty5. However, after I restart X it then starts on tty1, meaning that something has released tty1 in the meantime. (Perhaps something in the rc.local holds tty1, or some deamon left in the background, who knows). What matters is that I use ServerVTs=1 now and it works, so far no problem.I'm starting to think now that isn't related to just plymouth (like I've said, even without plymouth splash I get this blank screen before kdm starts), and don't know how to debug this.
Sorry can't help you very much about that. Maybe the Refresh Rate has something to do with it? Although I don't know if that can be set in Grub. you could take a look at its manpage/wiki. Or even try another monitor if you have access to one.
The -1 in ServerVTs will use the first free VT, so yes it apparently gets freed. However, I always got problems with input crashing X when solving the getty/race issue.
Since I am don't have enough knowledge to solve these initscripts issues with plymouth and systemd works nicely, I have completely switched to systemd. The devs have done an excellent job to bring it to Arch.
Offline
zephyr, thank you for your help, I give up on this. I tried grub2 with some ubuntu patches, with systemd, upgraded to xorg from [testing] and nothing, the damned black screen is here no matter what I do. I have Fedora installed as well, and there's that black screen flickering (before X starts) too.
[rant]
Just to note, I hope that this re/*$&/%d piece of sh*/( Systemd wont get adopted by Arch.
[/rant]
Offline
I have also switched completely (or as far as I can tell) to systemd. It takes a little reading and study to see the reasoning and the differences between the init systems, but once it clicks it just makes good sense. If there isn't already a unit file somewhere for something you may need then they are simple enough to create. I look forward to the day that all linux distros use systemd completely natively. Most either are or intend to. Not enough can be said about systemd's approach to standardize the init and system control, things that all distros have to do but tended to do in slightly different ways with all their different scripts. systemd attempts to standardize and put into C code all the things that all distros must do to become a usable system and to get rid of as much of the mish-mash of bash scripts as possible. Standardization will be a GOOD thing for the Linux desktop. The distros can then concentrate on differentiating within the various desktop environments with art work and program selections, etc. Why should you have to learn 50 different variations on system init and initial configurations if you want to try out 50 different distros? Why not learn just 1 way of system init and config that can be applied to all distros? Makes sense to me.
Offline
Damn, I'm starting to see this in my logs:
fb: conflicting fb hw usage radeondrmfb vs VESA VGA - removing generic driver
Maybe this is what's causing that mode switch?
By the way, I accidentally removed linux-firmware package, and after initrd rebuild my system wouldn't start. How come the whole system depends on the damned closed firmware blob!?¢@%#&
Offline
Damn, I'm starting to see this in my logs:
fb: conflicting fb hw usage radeondrmfb vs VESA VGA - removing generic driver
Maybe this is what's causing that mode switch?
By the way, I accidentally removed linux-firmware package, and after initrd rebuild my system wouldn't start. How come the whole system depends on the damned closed firmware blob!?¢@%#&
I have a laptop with ATI graphics that I use and I know that I used to see that in my logs also, even though the open-source radeon kms driver was being initialized properly. I recently reinstalled everything due to the Gnome 3.2 upgrade and after seeing your post, thought I would check again. I don't see it there now on the laptop. On the other hand, my desktop has an nVidia card and I'm using the open-source nouveau driver there. I have also recently reinstalled everything there for the same Gnome 3.2 reason. I checked my dmesg output there and I had the same message as you only pertaining to the nouveau driver. I think you are right, this is about the point that the mode switch is occurring.
As an experiment, I tried something, because when I made these checks, my notebook hasn't been upgraded to grub2 yet, whereas my desktop has. So, on my desktop, I opened up /etc/default/grub and commented out the lines telling it to use a graphic terminal or setting any graphic modes and uncommented any lines that would allow it to use basic console. I then rebuilt my grub.cfg and rebooted and, lo and behold, that error is now gone. I'm also not seeing the quick flash of colored lines I used to see when the mode switch occurred. I think I may leave it like this, at least until I decide if to try plymouth again.
So, in my case at least, it was grub2's graphical terminal starting up some basic framebuffer driver which was then later cancelled out when the the nouveau DRM and KMS driver initialized. In any case, it doesn't harm anything, it just means that the graphical output is being handed from one driver to the next. On both machines I have either radeon or nouveau included in the modules section of mkinitcpio.conf so that they get loaded as early as possible in the boot process.
Offline
@Zephyr:
I finally got around to reinstalling all of the plymouth stuff of yours after reinstalling everything from scratch to get a successful Gnome 3.2 installation. I also changed my /etc/default/grub file, commenting out and commenting in as follows:
GRUB_DEFAULT=0
GRUB_TIMEOUT=3
GRUB_DISTRIBUTOR="Arch Linux"
GRUB_CMDLINE_LINUX_DEFAULT="fastboot quiet splash init=/bin/systemd"
GRUB_CMDLINE_LINUX=""
# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"
# Uncomment to enable Hidden Menu, and optionally hide the timeout count
#GRUB_HIDDEN_TIMEOUT=5
#GRUB_HIDDEN_TIMEOUT_QUIET=true
# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console
# Uncomment to disable graphical terminal
GRUB_TERMINAL_OUTPUT=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=1920x1080x32
# Uncomment to allow the kernel use the same resolution used by grub
#GRUB_GFXPAYLOAD_LINUX=keep
# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY=true
# Uncomment and set to the desired menu colors. Used by normal and wallpaper
# modes only. Entries specified as foreground/background.
GRUB_COLOR_NORMAL="light-blue/black"
GRUB_COLOR_HIGHLIGHT="light-cyan/blue"
# Uncomment one of them for the gfx desired, a image background or a gfxtheme
#GRUB_BACKGROUND="/path/to/wallpaper"
#GRUB_THEME="/path/to/gfxtheme"
# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"
I am happy to report that everything seems to be working fine and that ugly mode switch with the thin color lines, right after the grub2 hand off, is now absent. As before, for some reason gdm / gnome 3.2 is starting up on tty2 instead of tty1, but it doesn't seem to create any problems and everything is smooth. If I switch to tty1 from within Gnome the screen is blank with only a blinking underline cursor in the top left corner, the same cursor I see just before plymouth starts. So, I'm guessing that plymouth is holding on to that tty instead of releasing it for some reason or else I'd see the login prompt, as on all the other tty's.
I was getting an error at first in dmesg about a bad path in /lib/systemd/system/systemd-ask-password-plymouth.service and then barking that it didn't include an ExecStart. So, I took a look, and originally it contained this:
[Service]
ExecStart=@rootbindir@systemd-tty-ask-password-agent --watch --plymouth
So, I changed it to this:
[Service]
ExecStart=/bin/systemd-tty-ask-password-agent --watch --plymouth
That took care of clearing the error. I suppose I could have also set that variable somewhere, but wasn't quite sure how to. I also went through all of the plymouth-*.service files and changed all references to prefdm.service to gdm-plymouth.service, as prefdm.service doesn't exist on my system. I know that Fedora has it, but Arch by default does not. I don't think it was hurting anything but I know it's always better to point at something that's there instead of something that's not. Anyhow, once again, great work on your part getting this all to work as good as it does, many thanks.
[EDIT] I solved the problem with gdm /gnome starting up on tty2. I grabbed a copy of rc-local.service from the initscripts-systemd package because I had some links in rc.local being made to cd /dvd drives. After taking a closer look at that service file it seems that it was setting Standard input to tty so I changed it to null and gdm /gnome is now starting on tty1 again.
Last edited by sidneyk (2011-10-07 19:35:49)
Offline
So, I have tried this out for this first time today. Looks neat but I have a few problems:
1. I have not seeing any of that smooth integration with LXDM. The reason being that the boot screen goes away when it is time to load the daemons in the boot process and from there it goes from the standard terminal boot into lxdm. I have uncommented the line needed in lxdm and in GRUB2, I have the resolution set to 1280x800 (same as X) and GRUB_GFXPAYLOAD_LINUX=keep. Is there something I can do to make plymoth transition without gap to lxdm? I have an intel card and have installed the driver patched for plymouth from aur. The plymouth version is the latest git.
2. How do I set the background to a picture of my choice in a theme? Google is no help here.
Offline
edit: redundant followup post. ignore....
Last edited by b9anders (2011-10-23 16:48:32)
Offline
.
Last edited by silent (2013-08-21 09:09:30)
Offline
Hey, I just reinstalled Arch and picked Plymouth for the first time. I set it up and it's working correctly, but I have three questions:
1. When I start Plymouth I still see some text before it kicks in. I did all the steps as instructed in the Wiki so I guess Plymouth is starting as early as possible, but can I make this text "dissapear"? It's about loading the kernel and such, maybe it's GRUB related.
2. I'm using GDM as my DM (using Gnome Shell) and it takes quite a while for GDM to load. However, during this loading, Plymouth has already stopped and my screen shows nothing but blackness. Can I keep the Plymouth screen until GDM is ready? I start GDM using the inittab method and I also added xt:5:wait:/usr/bin/chvt 7 to not shows agetty login prompt. (Found here: https://wiki.archlinux.org/index.php/DM … h_to_tty7)
3. Will Plymouth play nice with e4rat? I like to use that to speed up boot time.
I hope this is the right topic to ask this, if not please move it to the appropriate section. Thanks in advance guys!
If you can't sit by a cozy fire with your code in hand enjoying its simplicity and clarity, it needs more work. --Carlos Torres
Offline
Like Unia, I tried out plymouth for the first time, tonight. Early KMS was set up long before now. I have installed plymouth-git from aur, added plymouth to hooks in mkinitcpio.conf, and I did mkinitcpio -p linux. I have an intel video card (dell latitude e6400).
This is the biggest problem of all: When plymouth is in the hooks, my computer will not shut down or reboot. It gets stuck at the following message: "Unmounting Non-API Filesystems" I have no idea what I'm doing wrong.
I'm also hoping for an answer to Unia's #2! I use KDM, but I have about 3 seconds of black screen between the splash screen and KDM. With that, I kinda would prefer to just have a text bootup like I always have, so hopefully there is a way around it. I use autologin, so I wouldn't mind if a solution caused the splash screen to overlap with KDM. Also, with shutdown there is a few lines of text before the splash screen even starts.
Unia for your problem #1, it is probably grub related. I use grub2, and if I edit /boot/grub/grub.cfg and comment out the "echo" lines, then no text appears previous to the splash screen. For your problem #3, I'm kinda curious to try it and see, if I can figure out why I can't reboot or shutdown. I will keep plymouth disabled until I figure that out.
Last edited by priapism (2011-12-27 06:09:56)
Offline