Last update: 13-Jul-2019
Working: ALL
* Keyboard (Backlight with akbl)
* Video
* Microphone
* Headphones
* Sound
* WIFI
* SD Card
* USB Ports
* Ethernet
* HDMI
* Touchpad (Synaptics)
* Webcam
* Bluetooth
* Display port
* HDMI port (attached to GeForce GT 335M graphic card)
* NVIDIA GeForce GT 335M graphic card (with Nouveau open-source driver)
POSTINSTALL:
Wifi (Broadcom BCM43224 802.11a/b/g/n)
Open a terminal and type:
$ cd /
$ cd /
$ sudo pluma /etc/apt/sources.list
Add contrib and non-free at the end of each line. Example:
Save and exit.
$ sudo apt-get update
$ sudo apt-get install firmware-brcm80211
$ systemctl reboot
Login. Then configure your connection using NetworkManager.
That's all.
Bluetooth
Open a terminal and type:
$ sudo apt-get install bluetooth blueman obexftp obexpushd pulseaudio pulseaudio-module-bluetooth pavucontrol bluez-firmware
$ systemctl status bluetooth
$ sudo systemctl start bluetooth
$ sudo killall pulseaudio
$ sudo systemctl restart bluetooth
Post-installation:
$ cd /
$ cd etc/bluetooth/
$ sudo pluma input.conf
Uncomment this lines:
IdleTimeout=0
UserspaceHID=true
Save and exit.
$ sudo pluma main.conf
Uncomment this lines:
Name = BlueZ
Class = 0x000100
DiscoverableTimeout = 0
PairableTimeout = 0
AutoConnectTimeout = 60
DeviceID = bluetooth:1234:5678:abcd
ReverseServiceDiscovery = true
NameResolving = true
DebugKeys = false
ControllerMode = dual
MultiProfile = multiple
FastConnectable = true
Privacy = off
ReconnectAttempts=7
ReconnectIntervals=1,2,4,8,16,32,64
AutoEnable=true
Save and exit.
$ sudo pluma network.conf
Uncomment this lines:
DisableSecurity=true
Save and exit.
$ sudo pluma proximity.conf
Uncomment this lines:
Disable=PathLoss
Save and exit.
$ cd ..
$ sudo pluma default/bluetooth
Uncomment this lines:
BLUETOOTH_ENABLED=1
HID2HCI_ENABLED=0
HID2HCI_UNDO=0
Save and exit.
$ sudo reboot
Configure your bluetooth devices using blueman.
To receive files from devices, go to Bluetooth icon (MATE Panel) > Local services > Transfer > and check "Accept files from trusted devices". That's all.
Touchpad (Synaptics)
Open a terminal and type:
$ egrep -i 'synap|alps|etps|elan' /proc/bus/input/devices
Mmm! My touchpad is Synaptics. Then:
$ sudo apt-get install xserver-xorg-input-synaptics
$ systemctl reboot
Login. Then go to System > Preferences > Mouse
Login. Then configure your connection using NetworkManager.
That's all.
Bluetooth
Open a terminal and type:
$ sudo apt-get install bluetooth blueman obexftp obexpushd pulseaudio pulseaudio-module-bluetooth pavucontrol bluez-firmware
$ systemctl status bluetooth
$ sudo systemctl start bluetooth
$ sudo killall pulseaudio
$ sudo systemctl restart bluetooth
Post-installation:
$ cd /
$ cd etc/bluetooth/
$ sudo pluma input.conf
Uncomment this lines:
IdleTimeout=0
UserspaceHID=true
Save and exit.
$ sudo pluma main.conf
Uncomment this lines:
Name = BlueZ
Class = 0x000100
DiscoverableTimeout = 0
PairableTimeout = 0
AutoConnectTimeout = 60
DeviceID = bluetooth:1234:5678:abcd
ReverseServiceDiscovery = true
NameResolving = true
DebugKeys = false
ControllerMode = dual
MultiProfile = multiple
FastConnectable = true
Privacy = off
ReconnectAttempts=7
ReconnectIntervals=1,2,4,8,16,32,64
AutoEnable=true
Save and exit.
$ sudo pluma network.conf
Uncomment this lines:
DisableSecurity=true
Save and exit.
$ sudo pluma proximity.conf
Uncomment this lines:
Disable=PathLoss
Save and exit.
$ cd ..
$ sudo pluma default/bluetooth
Uncomment this lines:
BLUETOOTH_ENABLED=1
HID2HCI_ENABLED=0
HID2HCI_UNDO=0
Save and exit.
$ sudo reboot
Configure your bluetooth devices using blueman.
To receive files from devices, go to Bluetooth icon (MATE Panel) > Local services > Transfer > and check "Accept files from trusted devices". That's all.
Touchpad (Synaptics)
Open a terminal and type:
$ egrep -i 'synap|alps|etps|elan' /proc/bus/input/devices
Mmm! My touchpad is Synaptics. Then:
$ sudo apt-get install xserver-xorg-input-synaptics
$ systemctl reboot
Login. Then go to System > Preferences > Mouse
In the open box, select "Touchpad" and check "Enable touchpad"
That's all.
akbl (Alienware Keyboard Lights)
I don't like turn-on keyboard lights but sometimes is necessary, especially when I'm working at the night or drinking a cup of coffee in a dark place, for example, a romantic coffeeshop.
Open a terminal and type:
Open a terminal and type:
$ sudo apt-get install systemd libgtk-3-0 libgtk-3-dev gir1.2-appindicator3-0.1 gir1.2-appindicator3 python3 python3-gi python3-cairo python3-usb python3-serpent python3-pyro4
Add.
In the new box, write the following:
Name: Whatever you want
Command: akbl --start-indicator
Comment: Whatever you want
Save and leave.
Sometimes AKBL icon appear like off (akbl daemon off). To fix this, just go to System > Preferences > startup applications. Add.
In the new box, type:
Name: Whatever you want
Command: killall mate-panel
Comment: Whatever you want
Save and exit. Reboot
Login. When you return, you'll see alienware-kbl indicator on the panel.
Then configure your keyboard lights starting the GUI.
Creating shortcuts for AlienFX and Alien Command Center
Go to System > Preferences > Shortcuts. Add.
For AlienFX fill this fields:
Name: AlienFX
Command: akbl --change
Press mod4 (Windows Key) + Print (AlienFX)
For Alien Command Center fill this fields:
Name: Alienware Command Center
Command: akbl
Press mod4 (Windows Key) + Pause (Alien Command Center)
That's all.
NOTE 13-Jul-2019: akbl is buggy :-( Power button and power button eyes are blinking and can't be fixed. A ugly fix is edit with your favorite text editor M11XR2.ini (located in /usr/share/AKBL/computers) and erase all the lines related to REGION POWER_BUTON_EYES and change all the lines related to REGION POWER_BUTON to:
[REGION POWER_BUTON]
ID=PB
DESCRIPTION=Power Buton
BLOCK=24576
SUPPORTED_COMMANDS=3
CAN_BLINK=True
CAN_MORPH=True
CAN_LIGHT=True
Example:
This workaround will fix power button eyes. That's all.
Enable NVIDIA GeForce GT 335M with nouveau open-source driver.
I'm not a gamer, but I would like run some programs with NVIDIA graphic card instead Intel graphic card like GIMP and Inkscape.
Open a terminal and type:
Open a terminal and type:
$ cd /
$ sudo pluma /usr/share/X11/xorg.conf.d/20-intel.conf
Add this lines:
Section "Device"
Identifier "Intel Graphics"
Driver "Intel"
Option "AccelMethod" "sna"
EndSection
Section "Device"
Identifier "NVIDIA Graphics"
Driver "nouveau"
Option "AccelMethod" "EXA"
Option "GLXVBlank" "true"
EndSection
$ systemctl reboot
Login. Open a terminal and type:
$ xrandr --listproviders
Now you'll see two providers. "0" for Intel graphic card and "1" for NVIDIA graphic card (Nouveau driver)
To use NVIDIA graphic card, run this command:
$ xrandr --setprovideroffloadsink nouveau Intel
And run a test:
and other:
$ DRI_PRIME=1 glxinfo | grep "OpenGL vendor string"
The outputs are:
1. OpenGL vendor string: Intel Open Source Technology Center (Intel graphic card)
2. OpenGL vendor string: nouveau (NVIDIA graphic card)
or
$ DRI_PRIME=1 glxgears -info
Gears are running? If they are running, then you are using NVIDIA card without issues.
If they aren't, then you'll see a black screen.
To fix this, you must enable windows compositor. Then go to System > Preferences > Windows.
And do a test again:
$ DRI_PRIME=1 glxgears -info
You can run games or apps on NVIDIA card with this command:
$ DRI_PRIME=1 <nameofprogram>
Example:
$ DRI_PRIME=1 inkscape %F
If you turnoff or reboot your system, this setting will be lost and you must setup again. There is a way to establish this at system startup: a bash script. Open your favorite text editor and write this lines:
#!/bin/bash
# Enable NVIDIA GeForce GT 335M graphic card instead of Intel GMA 4500MHD graphic card
sleep 1
xrandr --setprovideroffloadsink nouveau Intel
# Use output video (HDMI or Display Port) of NVIDIA GeForce GT 335M graphic card instead of Intel GMA 4500MHD graphic card
sleep 1
xrandr --setprovideroutputsource nouveau Intel
# Use HDMI port of NVIDIA GeForce GT 335 graphic card instead of Intel GMA 4500MHD graphic card
sleep 1
xrandr --output HDMI-1 --auto --above LVDS1
# Use Display Port of NVIDIA GeForce GT 335 graphic card instead of Intel GMA 4500MHD graphic card
sleep 1
xrandr --output DP-1 --auto --above LVDS1
# exit 0
Now, move the bash script in wherever you want.
Dont' forget to set privileges. For example:
$ cd /
$ sudo chmod +x /home/blackout/optimus-prime <-- path to bash script
or
Right click on the bash script > Properties
> permissions and check "Run this file like a program"
Finally, go to System > Preferences > Startup applications.
Add.
In the new box, write the following. For example:
Name: Whatever you want
Command: sh /home/blackout/optimus-prime <-- path to bash script
Comment: Whatever you want
Restart.
When you return, NVIDIA graphic card will be setup and ready for run any game or program.
Creating launchers for run programs with NVIDIA GeForce GT 335M.
If you want run any program with NVIDIA graphic card, you must open a terminal and type:
DRI_PRIME=1 gimp-2.8
This method is very annoying, because you must type the entire command on a terminal always. Fortunately, in GNU/Linux exist env command. To do this, you must modify the shortcut of a program. Just go to System > Preferences > Principal Menu.
For example, I want run Inkscape with NVIDIA card, always. Then I go to Graphics and select Inkscape. Right click > Properties
In the open box, in command section, I write:
Command: env DRI_PRIME=1 inkscape %F
That's all.
Disable screens phantom (VGA outputs) of NVIDIA GeForce GT 335M.
When you connect Alienware M11X R2 to other display (Monitor, TV or video projector) through HDMI or Display port and run xrandr command, you'll see VGA outputs activated:
Alienware M11X R2 does not have VGA ports and those outputs are known as "phantoms". To disable those video outputs, you must edit GRUB file. Then open a terminal and type:
$ cd /
$ sudo pluma /etc/default/grub
Just add video=VGA-1:d video=VGA-2:d in GRUB_CMDLINE_LINUX. Example:
Creating launchers for run programs with NVIDIA GeForce GT 335M.
If you want run any program with NVIDIA graphic card, you must open a terminal and type:
DRI_PRIME=1 gimp-2.8
This method is very annoying, because you must type the entire command on a terminal always. Fortunately, in GNU/Linux exist env command. To do this, you must modify the shortcut of a program. Just go to System > Preferences > Principal Menu.
For example, I want run Inkscape with NVIDIA card, always. Then I go to Graphics and select Inkscape. Right click > Properties
In the open box, in command section, I write:
Command: env DRI_PRIME=1 inkscape %F
That's all.
Disable screens phantom (VGA outputs) of NVIDIA GeForce GT 335M.
When you connect Alienware M11X R2 to other display (Monitor, TV or video projector) through HDMI or Display port and run xrandr command, you'll see VGA outputs activated:
Alienware M11X R2 does not have VGA ports and those outputs are known as "phantoms". To disable those video outputs, you must edit GRUB file. Then open a terminal and type:
$ cd /
$ sudo pluma /etc/default/grub
Save and exit.
$ sudo update-grub
$ sudo update-grub2
$ systemctl reboot
When you return, those VGA outputs will have disappeared. You can check the changes, opening a terminal and typing:
$ xrandr
Now VGA outputs are missed.
Overclock nVIDIA GeForce GT 335M with nouveau open-source driver.
Open a terminal and type:
$ cd /
$ sudo pluma etc/default/grub
Add nouveau.config=NvClkMode=15 in GRUB_CMDLINE_LINUX_DEFAULT
Example:
Save and exit.
$ sudo update-grub
$ sudo update-grub2
$ sudo reboot
Login. You can check your clocks, opening a terminal and typing:
# su
Type your password
# cd /
# cat /sys/kernel/debug/dri/1/pstate
If you see highlighted "0f: core 450 MHz shader 1080 MHz memory 790 MHz AC DC *" with an asterisk, then overclock is successful.
Connecting nVIDIA GeForce 335M to TV flat screen (Mirroring screen)
Sometimes, when you connect Alienware M11XR2 to TV flat screen (through HDMI port) using nouveau open-source driver, the screen of the laptop is not reflected on the TV, and then you have two displays (one for the laptop and other for the TV screen). This is annoying because you want the same screen of the laptop into the TV. To fix this, let's go to create two shortcuts on the task bar; one for mirror the screen of the laptop into the TV, and other to turn off the laptop screen after connect to TV for power saving.
Right click on the tasks bar > Add to panel
Custom launcher > Add.
In the new box, we type:
Name: Whatever you want
Command: xrandr --output LVDS1 --mode 1366x768 --scale 1x1 --output HDMI1 --same-as LVDS1 --mode 1920x1080 --scale 0.711x0.711
Comment: Whatever you want.
I want 1920x1080 because my TV is Full HD. If you want other resolution, try to change the xrandr commands parameters (there are intuitives). Example:
To turn off the laptop screen after connect to TV, the launcher is:
Name: Whatever you want
Command: xrandr --output LVDS1 --off --output HDMI1 --mode 1920x1080 --scale 0.711x0.711
Comment: Whatever you want
Now when you connect the laptop to TV, you can do one single left click on the icons to mirror screen and turn off laptop screen. That's all.
WORKAROUNDS
NOTE 1-FEB-2019: I've disabled overclocking because is unstable. To disable this feature, turn-on the machine and press F2 key. In the BIOS, go to Advance tab and select CPU Over-clock. Just mark "Disabled". Save changes and exit. That's all.
When you start your system, you can see a lot of annoying messages during boot. The dmesg command is a good tool to detect these annoying messages and to set workarounds to fix them. The next steps requires edit grub file (/etc/default/grub) or create new files (/etc/modprobe.d/) to ignore some kernel modules on boot.
COMRESET failed (errno=16)
Due to AHCI (SSD kingston UV400)
Open a terminal and type:
$ cd /
$ sudo pluma /etc/default/grub
Add libahci.skip_host_reset=1 to GRUB_CMDLINE_LINUX_DEFAULT. Example:
GRUB_CMDLINE_LINUX_DEFAULT="quiet libahci.skip_host_reset=1"
Save and exit.
$ sudo update-grub
$ systemctl reboot
brcms_ops_bss_info_changed: qos enabled: false (implement)
Due to buggy driver of WIFI card (Broadcom BCM43224 802.11a/b/g/n)
Open a terminal and type:
$ cd /
$ sudo pluma /etc/default/grub
Add loglevel=3 to GRUB_CMDLINE_LINUX_DEFAULT. Example:
GRUB_CMDLINE_LINUX_DEFAULT="quiet loglevel=3"
Save and exit.
$ sudo update-grub
$ systemctl reboot
NOTE: This workaround only hide messages on boot, but will appear if you open a terminal and type dmesg command. Just ignore them. Sad but true! :-(
Support for cores revisions 0x17 and 0x18 disabled by module param allhwsupport=0. Try b43.allhwsupport=1
Due to buggy drivers b43 and SSB (Broadcom BCM43224 802.11a/b/g/n)
Open a terminal and type:
$ sudo apt-get install firmware-b43-installer
$ cd /
$ sudo pluma /etc/modprobe.d/blacklist.conf
Add this lines:
blacklist b43
blacklist ssb
# options b43 allhwsupport=1
Save and exit.
$ systemctl reboot
ACPI: If an ACPI driver is available for this device, you should use it instead of the native driver
Due lpc_ich and gpio-ich
Open a terminal and type:
$ cd /
$ sudo pluma /etc/modprobe.d/blacklist.conf
Add this lines:
blacklist lpc_ich
blacklist gpio-ich
Save and exit.
$ systemctl reboot
*ERROR* atomic update failure on a pipe A
Due to power saving on Intel graphic card.
Open a terminal and type:
$ cd /
$ sudo pluma /etc/default/grub
Add i915.enable_rc6=0 to GRUB_CMDLINE_LINUX_DEFAULT. Example:
GRUB_CMDLINE_LINUX_DEFAULT="quiet i915.enable_rc6=0"
Save and exit.
$ sudo update-grub
$ systemctl reboot
NOTE: If you enable this option and check your system with dmesg command again, you'll see a new message like this:
Setting dangerous option enable_rc6 - tainting kernel
It sounds scary because the kernel is tainted, but this option is safe, I promise you.
intel_backlight (Brightness control)
Due to ACPI.
If you go to /sys/class/backlight you will see this:
acpi_video0
acpi_video1
intel_backlight
We need disable ACPI and enable intel_backlight. To do this, open a terminal and type:
$ cd /
$ sudo pluma /etc/default/grub
Add acpi_backlight=none acpi_backlight=video acpi_backlight=vendor acpi_backlight=native to GRUB_CMDLINE_LINUX. Example:
Save and exit.
$ sudo update-grub
$ systemctl reboot
Login. To check the changes, open a terminal and type:
$ cd /
$ cd /sys/class/backlight
$ ls
Now, intel_backlight is working. Use your FN keys to reduce or increase the brightness.
NOTE 3-May-2019: If FN Keys are not working, try with xbacklight. Open a terminal and type:
$ sudo apt-get install xbacklight
Then go to System > Preferences > Shortcuts > Add. And define your shortcuts: one for increase and other for reduce the brightness. Examples:
Increase:
Name: Brightness Up
Command: xbacklight -time 100 -inc 20
And set a combination of keys, for example: Windows Key (Mod4) + F4
Reduce:
Name: Brightness Down
Command: xbacklight -time 100 -dec 20
And set a combination of keys, for example: Windows Key (Mod4) + F5
That's all. Enjoy it!
Tuxkernel...
SOURCES:
https://nouveau.freedesktop.org/wiki/Optimus/
https://wiki.archlinux.org/index.php/nouveau
WORKAROUNDS:
https://forums.opensuse.org/showthread.php/495276-ata2-quot-Comreset-error-quot-and-skipping-with-libata?p=2623013#post2623013
https://bbs.archlinux.org/viewtopic.php?pid=1233054#p1233054
http://linuxwireless.sipsolutions.net/en/users/Drivers/b43/
https://ubuntuforums.org/showthread.php?t=2226102&p=13076641#post13076641
https://ubuntuforums.org/showthread.php?t=2214439&p=13037208#post13037208
https://askubuntu.com/questions/857123/how-to-tweak-intel-hd-graphics-on-ubuntu-16-04
https://nisheetlall.wordpress.com/2016/07/12/solved-brightness-fix-in-linux-for-optimus-laptops/
https://wiki.archlinux.org/index.php/Backlight
https://bbs.archlinux.org/viewtopic.php?pid=1357602#p1357602
https://wiki.archlinux.org/index.php/nouveau
WORKAROUNDS:
https://forums.opensuse.org/showthread.php/495276-ata2-quot-Comreset-error-quot-and-skipping-with-libata?p=2623013#post2623013
https://bbs.archlinux.org/viewtopic.php?pid=1233054#p1233054
http://linuxwireless.sipsolutions.net/en/users/Drivers/b43/
https://ubuntuforums.org/showthread.php?t=2226102&p=13076641#post13076641
https://ubuntuforums.org/showthread.php?t=2214439&p=13037208#post13037208
https://askubuntu.com/questions/857123/how-to-tweak-intel-hd-graphics-on-ubuntu-16-04
https://nisheetlall.wordpress.com/2016/07/12/solved-brightness-fix-in-linux-for-optimus-laptops/
https://wiki.archlinux.org/index.php/Backlight
https://bbs.archlinux.org/viewtopic.php?pid=1357602#p1357602