KDE4 produces a blank screen

I have eventually got to a point where KDE4 is almost installed after a couple of weeks of vertical learning curve...

I am attempting to start KDE4 from xinitrc as per much forum advice that this is the correct way to do this.

When I execute startx I get a KDE startup screen and the first 4 of the 5 "KDE icons" blink into view.

As the last icon starts to appear the screen goes blank but the mouse moves.

I don't know how to send the results of the startup to a file so I can't provide any error messages unfortunately.

These are the last lines of the startup log after I do <ctrl> <alt> <backspace>:

Code:
# Could not connect to D-Bus server:org.freedesktop.DBus.Error.NoServer:
Failed to connect to socket /var/tmp/dbus-2q40QP4E7q: connection refused

Startkde: Shutting down
kdeinit4_wrapper: Warning: connect{/root/.kde444444444444/socket-<mywebsiteaddress>/kdeinit4__0} failed: : No such file or directory

If these messages are not useful can someone please provide a way to log the entire KDE4 startup sequence to a text file and maybe I can work this out myself?
 
Both dbus and hal need to be running. Add to /etc/rc.conf:
Code:
dbus_enable="YES"
hald_enable="YES"

Start both or reboot.
 
Yes but...

I have checked these entries and both are correctly formatted but "hald" is not running and shows the following error when I try to start it manually:

Code:
/usr/local/etc/rc.d/hald: WARNING: $polkitd_enable is not set properly - see rc.conf(5)
Reading the MAN for rc.conf does not mention this problem at all.

I have a /usr/local/sbin/polkitd but I don't know if this is relevant or how to use it.
 
Yes but...

I have checked these entries and both are correctly formatted but "hald" is not running.

If I try and start it manually simply get a response "starting hald" but the daemon does not in fact run.

I don't know where to look for an error log for this so can someone please hepl?
 
So, do you have
Code:
polkitd_enable="YES"
in /etc/rc.conf?
 
Seems like polkitd_enable went away a long time ago. A guess is that you are using an old version of FreeBSD and the ports tree that came with it.
 
polkitd_enable

To DutchDaemon:

I do have:

Code:
polkitd_enable="YES"
dbus_enable="YES"
hald_enable="YES"

in /etc/rc.conf

ps -ax shows among other things:

Code:
/usr/local/bin/dbus-daemon --system
/usr/local/sbin/polkitd
/usr/local/kde4/bin/kdm-bin

No sign of hald running though...

To wblock:

I don't dispute your comment for a moment but I simply don't understand how this can be.

Before trying to do the install of KDE4 I deleted all ports in /usr/ports and then did

Code:
portsnap fetch
portsnap extract
portupgrade -a

Surely the purpose of that exercise is to make sure that the ports are fully up to date?
 
rloc said:
To wblock:

I don't dispute your comment for a moment but I simply don't understand how this can be.

Before trying to do the install of KDE4 I deleted all ports in /usr/ports and then did

portsnap fetch
portsnap extract
portupgrade -a

Surely the purpose of that exercise is to make sure that the ports are fully up to date?

Not exactly. That updates the ports tree, the "build instructions". Any ports you already had installed still have to be upgraded, usually with portmaster or portupgrade.

Let's find out exactly what version of hal and polkit is installed:
# pkg_info -Ix hal polkit

Here, that shows:

Code:
hal-0.5.14_8        Hardware Abstraction Layer for simplifying device access
polkit-0.96_2       Framework for controlling access to system-wide components
 
pkg_info -Ix hal polkit

Thanks for the reply.

The above command displays:

Code:
gstreamer-plugins-hal-0.10.6_1.3
hal-0.5.8.20070909
polkit-0.96_2
Hope this helps...?
 
rloc said:
Thanks for the reply.

The above command displays:

Code:
gstreamer-plugins-hal-0.10.6_1.3
hal-0.5.8.20070909
polkit-0.96_2
Hope this helps...?

It shows you are running the latest polkit along with a three-year-old hal.
 
HAL has left the building...

I have spent a few hours trying to update HAL to the latest version which appears to be hal-0.5.14_8.

I have tried portupgrade -R hal which failed with error 1. No further information was given

I then tried portmaster sysutils/hal which also failed.

I then tried portmanager sysutils/hal which ends with:

Code:
skipping hal-0.5.14_8 /sysutils/hal marked IGNORE reason: failed during make

if I do make deinstall I am told that hal is not installed.

If I do make install clean I get an Error 1.

If I do pkg_delete /sysutils/hal I get no such package "hal" installed

I have pkgdb -F several times during this process and defaulted to all of the "yes" and "no" options presented.

If I do pkg_version -v I get:

Code:
gstreamer-plugins-hal-0.10.16,3 > needs updating port has gstreamer-plugins-hal-0.10.24,3
there is no mention of hal in the output.

If I do pkg_info-Ix hal polkit there is no listing for hal.

It seems that I have got rid of hal for good but I would like to know how to reinstall.

Lastly, I HAVE read the documentation: I have had http://www.freebsd.org/doc/handbook/ports-using.html open permanently during this process and I thought that I had proceeded correctly.

Can someone please give me a step by step process to reinstall hal and to upgrade gstreamer-plugins-hal to its newest version?

My understanding is that if I do "portsnap fetch extract upgrade" followed by
portmanager -u I would upload all of the latest available ports, extract them to /usr/ports and then install them.

This is clearly not the case although the manual says: "All the installed ports can be upgraded using this simple command "portmanager -u"

Can someone please explain what I am missing here?
 
rloc said:
I have spent a few hours trying to update HAL to the latest version which appears to be hal-0.5.14_8.

I have tried portupgrade -R hal which failed with error 1. No further information was given

I then tried portmaster sysutils/hal which also failed.

I then tried portmanager sysutils/hal which ends with:

"skipping hal-0.5.14_8 /sysutils/hal marked IGNORE reason: failed during make"

The shotgun approach of throwing multiple upgrade tools at it obviously isn't working. The basic problem that's preventing hal being installed is most likely a dependency problem.

if I do make deinstall I am told that hal is not installed.

If I do make install clean I get an Error 1.

The "error 1" is not usually significant, the real error happens before that.

Here's how you can record the output to see the real error:
# cd /usr/ports/sysutils/hal
# make clean
# script /tmp/hal.log
# make

After the error stops it, press Ctrl-D. The output will be in /tmp/hal.log. Post that.

PS: pkg_delete takes a package name, like
# pkg_delete hal-0.5.14_8
or a matching pattern:
# pkg_delete hal-\*
The Handbook is great, but nothing is a substitute for the man pages.
 
hal logfile

Here is the end of the logfile. Everything prior to this looks normal.

<Log output follows>
Code:
NOTE: You have to install init scripts yourself and tweak your own policy

NOTE: Remember to create user haldaemon and group haldaemon before make install

NOTE: For development, use run-hald.sh and debug-hald.sh scripts in hald/ to 
      use programs (callouts, probers, addons) and device information files 
      from build directories. You may still need 'make install' to
      install the udev rule to receive events from udev.

===>  Building for hal-0.5.14_8
gmake  all-recursive
gmake[1]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14'
Making all in libhal
gmake[2]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14/libhal'
  CC     libhal.lo
  CCLD   libhal.la
gmake[2]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14/libhal'
Making all in libhal-storage
gmake[2]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14/libhal-storage'
  CC     libhal-storage.lo
libhal-storage.c: In function 'libhal_storage_policy_set_icon_mapping':
libhal-storage.c:132: warning: 'libhal_storage_policy_set_icon_path' is deprecated (declared at libhal-storage.c:102)
libhal-storage.c: In function 'libhal_drive_policy_compute_display_name':
libhal-storage.c:217: warning: 'libhal_volume_policy_compute_size_as_string' is deprecated (declared at libhal-storage.c:158)
libhal-storage.c: In function 'libhal_volume_policy_compute_display_name':
libhal-storage.c:365: warning: 'libhal_volume_policy_compute_size_as_string' is deprecated (declared at libhal-storage.c:158)
libhal-storage.c: In function 'libhal_drive_policy_compute_icon_name':
libhal-storage.c:544: warning: 'libhal_storage_policy_lookup_icon' is deprecated (declared at libhal-storage.c:138)
libhal-storage.c:548: warning: 'libhal_storage_policy_lookup_icon' is deprecated (declared at libhal-storage.c:138)
libhal-storage.c: In function 'libhal_volume_policy_compute_icon_name':
libhal-storage.c:569: warning: 'libhal_storage_policy_lookup_icon' is deprecated (declared at libhal-storage.c:138)
libhal-storage.c:574: warning: 'libhal_storage_policy_lookup_icon' is deprecated (declared at libhal-storage.c:138)
libhal-storage.c:587: warning: 'libhal_storage_policy_lookup_icon' is deprecated (declared at libhal-storage.c:138)
libhal-storage.c:591: warning: 'libhal_storage_policy_lookup_icon' is deprecated (declared at libhal-storage.c:138)
  CCLD   libhal-storage.la
gmake[2]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14/libhal-storage'
Making all in partutil
gmake[2]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14/partutil'
gmake[2]: Nothing to be done for `all'.
gmake[2]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14/partutil'
Making all in hald
gmake[2]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald'
gmake  all-recursive
gmake[3]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald'
Making all in dummy
gmake[4]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald/dummy'
  CC     osspec.lo
  CCLD   libhald_dummy.la
gmake[4]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald/dummy'
Making all in freebsd
gmake[4]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald/freebsd'
Making all in libprobe
gmake[5]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald/freebsd/libprobe'
  CC     hfp.lo
  CC     hfp-cdrom.lo
  CCLD   libhald_freebsd_probe.la
gmake[5]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald/freebsd/libprobe'
Making all in probing
gmake[5]: Entering directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald/freebsd/probing'
cc -DHAVE_CONFIG_H -I. -I../../..  -DPACKAGE_SYSCONF_DIR=\""/usr/local/etc"\" -DPACKAGE_DATA_DIR=\""/usr/local/share"\" -
DPACKAGE_BIN_DIR=\""/usr/local/bin"\" -DPACKAGE_LOCALE_DIR=\""/usr/local/share/locale"\" -DPACKAGE_LOCALSTATEDIR=\""/var"\" -I../../.. -
I/usr/local/include/dbus-1.0 -I/usr/local/include/dbus-1.0/include   -I/usr/local/include  -O2 -pipe -fno-strict-aliasing -Wall -Wchar-
subscripts -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -MT probe-hiddev.o -MD -MP -MF .deps/probe-
hiddev.Tpo -c -o probe-hiddev.o probe-hiddev.c
probe-hiddev.c: In function 'main':
probe-hiddev.c:81: error: 'USB_GET_REPORT_ID' undeclared (first use in this function)
probe-hiddev.c:81: error: (Each undeclared identifier is reported only once
probe-hiddev.c:81: error: for each function it appears in.)
gmake[5]: *** [probe-hiddev.o] Error 1
gmake[5]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald/freebsd/probing'
gmake[4]: *** [all-recursive] Error 1
gmake[4]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald/freebsd'
gmake[3]: *** [all-recursive] Error 1
gmake[3]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14/hald'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/ports/sysutils/hal/work/hal-0.5.14'
gmake: *** [all] Error 2
*** Error code 1

Stop in /usr/ports/sysutils/hal.
*** Error code 1

Stop in /usr/ports/sysutils/hal.
 
rloc said:
Here is the end of the logfile. Everything prior to this looks normal.

<Log output follows>
Code:
probe-hiddev.c: In function 'main':
probe-hiddev.c:81: error: 'USB_GET_REPORT_ID' undeclared (first use in this function)
probe-hiddev.c:81: error: (Each undeclared identifier is reported only once
probe-hiddev.c:81: error: for each function it appears in.)
gmake[5]: *** [probe-hiddev.o] Error 1

Web searching suggests this is caused by upgrading to FreeBSD 8 but leaving old files around, or by having the libusb port still installed (it was obsoleted by FreeBSD 8's new USB system with a built-in libusb).

So first, get rid of obsolete files. Be aware that you may have some old programs still depending on these, and after deleting old files, those things will be revealed.
# cd /usr/src
# make check-old
# make delete-old
# make delete-old-libs

And then remove the libusb port, which may also reveal problems:
# pkg_delete libusb\*

Fix anything else that is now obviously broken, clean the broken hal build, and finally build and install hal.
 
Hal again

@wblock:

Thank you for all your efforts. I did exactly what you suggested and rebooted.

I then did

Code:
# cd /usr/ports/sysutils/hal
# make install clean

and got the exact same output as before.

Would it be good time to admit defeat and re-install Freeebsd from scratch?

@DutchDaemon

Sorry for the formatting errors - I hope this one is ok?
 
rloc said:
@wblock:

Thank you for all your efforts. I did exactly what you suggested and rebooted.

I then did

Code:
# cd /usr/ports/sysutils/hal
# make install clean

and got the exact same output as before.

Would it be good time to admit defeat and re-install Freeebsd from scratch?

Never! Well, maybe. The bad thing about reinstalling is that you'll never know exactly what caused the problem or how to fix it if it happens again. The only other possibilities that come to mind are ports still built against old versions of FreeBSD, or the "link new libraries to old ones" hack that was popular a few weeks ago. The first should have been avoided by rebuilding all ports when you switched to FreeBSD 8. The second could still be hanging around. If you did that, but don't remember, there's a program to check for "fake" libraries here: http://www.wonkity.com/~wblock/fakelib/fastfakelib
 
Back
Top