Difference between revisions of "Udev"

From gr0x0rd
Jump to navigation Jump to search
Line 62: Line 62:
 
Finally, re-emerge your video drivers and driver packages for xorg. Substitute ''nvidia-drivers'' with your video driver. If you are using virtualbox, you will also need to reinstall the ''virtualbox-modules'' package.
 
Finally, re-emerge your video drivers and driver packages for xorg. Substitute ''nvidia-drivers'' with your video driver. If you are using virtualbox, you will also need to reinstall the ''virtualbox-modules'' package.
 
  '''$''' sudo emerge $(qlist -IC x11-drivers) nvidia-drivers virtualbox-modules
 
  '''$''' sudo emerge $(qlist -IC x11-drivers) nvidia-drivers virtualbox-modules
 +
Reboot your system into the new kernel. Once you have booted, issue the command
 +
'''$''' ck-list-sessions
 +
You should see something like this:
 +
<pre>
 +
Session2:
 +
unix-user = '1000'
 +
realname = '(null)'
 +
seat = 'Seat1'
 +
session-type = ''
 +
'''active = TRUE'''
 +
x11-display = ':0.0'
 +
x11-display-device = '/dev/tty7'
 +
display-device = ''
 +
remote-host-name = ''
 +
is-local = TRUE
 +
on-since = '2011-03-14T05:50:56.403353Z'
 +
login-session-id = '1'
 +
Session1:
 +
unix-user = '1000'
 +
realname = '(null)'
 +
seat = 'Seat2'
 +
session-type = ''
 +
active = FALSE
 +
x11-display = ':0.0'
 +
x11-display-device = ''
 +
display-device = ''
 +
remote-host-name = ''
 +
is-local = TRUE
 +
on-since = '2011-03-14T05:50:56.177323Z'
 +
login-session-id = '1'
 +
</pre>
 +
If you see something similar to the above, you're in business. The key item is the bolded value above.

Revision as of 23:14, 13 March 2011

Configuring hardware - migrating from hal to udev

After trying on a few occasions to do this myself, I was forced to finally commit with the release of xfce 4.8. The steps here are based on the instructions outlined by ssuominen on the gentoo forums and with contributions from others in the gentoo community. First, make the necessary modifications to your /etc/make.conf.

$ sudo nano -w /etc/make.conf

Ensure the following USE flags are set:

USE="-hal consolekit dbus pam policykit udev" 

Next we will make some modifications to /etc/portage/package.use .

$ sudo nano -w /etc/portage/package.use

Ensure the following directives are set. You may also want to ensure the hal USE flag is removed if you've added it to any package in the file.

gnome-base/gvfs gdu
sys-block/parted device-mapper 

Next we will mask hal so it doesn't get pulled in by other packages.

$ sudo nano -w /etc/portage/package.mask

Add the line

Sync portage before getting started with emerging packages.

$ sudo emerge --sync

Next you will want to perform the following emerge.

$ sudo emerge -av gnome-base/gvfs sys-fs/udisks sys-power/upower sys-auth/polkit

While the emerge is being performed, we will need to made a few modifications to the kernel.

$ cd /usr/src/linux
$ sudo make menuconfig

Ensure the following settings are enabled or disabled:

-> General setup
 -> Auditing support 
   [*] Enable system-call auditing support

-> Power management and ACPI options
  [*] Run-time PM core functionality  

-> Device Drivers
  [ ] ATA/ATAPI/MFM/RLL support (DEPRECATED)
  -> USB support 
     -> Support for Host-side USB 
            [*]    USB runtime power management

When done, save your kernel config and build the new kernel.

$ sudo make && sudo make modules_install

While your new kernel is being built, you'll need to update your system with the new USE flags.

$ sudo emerge -avuDNt world

Once your new kernel is ready, copy it to your boot partition.

$ sudo cp /usr/src/linux/arch/x86/boot/bzImage /boot/kernel

If you have a gtk based desktop such as xfce, you'll need to emerge a new policy kit.

$ sudo emerge -av polkit-gnome 

Once your world update has completed, it's time to stop HAL, remove it from startup and unmerge it.

$ sudo /etc/init.d/hald stop
$ sudo rc-update del hald
$ sudo emerge -C hal policykit devicekit devicekit-disks devicekit-power

Next, start the daemons needed to complete the migration and add them to startup.

$ sudo rc-update add dbus default
$ sudo rc-update add consolekit default
$ sudo /etc/init.d/consolekit start 

If you are using slim to start X, you'll need to adjust the /etc/pam.d/system-login file.

$ sudo nano -w /etc/pam.d/system-login

Change the line

session   optional   pam_ck_connector.so nox11 

to

session   optional   pam_ck_connector.so

We will also need to change the /etc/slim.conf file.

$ sudo nano -w /etc/slim.conf

Ensure the file contains the following directive:

login_cmd    exec ck-launch-session startxfce4 

Finally, re-emerge your video drivers and driver packages for xorg. Substitute nvidia-drivers with your video driver. If you are using virtualbox, you will also need to reinstall the virtualbox-modules package.

$ sudo emerge $(qlist -IC x11-drivers) nvidia-drivers virtualbox-modules

Reboot your system into the new kernel. Once you have booted, issue the command

$ ck-list-sessions

You should see something like this:

Session2:
	unix-user = '1000'
	realname = '(null)'
	seat = 'Seat1'
	session-type = ''
	'''active = TRUE'''
	x11-display = ':0.0'
	x11-display-device = '/dev/tty7'
	display-device = ''
	remote-host-name = ''
	is-local = TRUE
	on-since = '2011-03-14T05:50:56.403353Z'
	login-session-id = '1'
Session1:
	unix-user = '1000'
	realname = '(null)'
	seat = 'Seat2'
	session-type = ''
	active = FALSE
	x11-display = ':0.0'
	x11-display-device = ''
	display-device = ''
	remote-host-name = ''
	is-local = TRUE
	on-since = '2011-03-14T05:50:56.177323Z'
	login-session-id = '1'

If you see something similar to the above, you're in business. The key item is the bolded value above.