Showing posts with label xubuntu. Show all posts
Showing posts with label xubuntu. Show all posts

Thursday, April 23, 2015

Uubuntu 15.04 Vivid Vervet on the 2014 Dell XPS 13 - 9333

Ubuntu 15.04 and its community-maintained derivatives are the GNU/Linux releases that the 2014 Dell XPS 13 deserves. Shipping with the 3.19 Linux kernel, Ubuntu 15.04 Vivid Vervet has improved Intel Haswell chipset support, updates to the wi-fi driver stack, and improved multi-touch Elan touchpad drivers.

Installation of Ubuntu 15.04 is pretty straight forward. I focus on running Xubuntu, but below are are a few tweaks and tricks to get your Dell XPS 13 9393 running any Vivid Vervet release.

Sound fix
After installing Ubuntu 15.04 you may not have audio working properly on the 2014 Dell XPS. The fix is simple, you just need to turn off HDMI audio out. 

Left click the sound icon in the upper right hand corner of your desktop and select Sound Setting. Once in the Pulse Audio Volume Control navigate to the Configuration tab and set the



Suspend Fix
When installing Xubuntu you will have to set your laptop to suspend on close when on battery. Without changing this configuration the only the screen will turn off and your battery will continue to drain.

The 3.19 kernel handles suspend and wake wonderfully. To ensure you XPS 13 is suspending properly navigate to Settings>Power Manager. In the General settings tab, set When laptop lip is closed to Suspend while on battery.





Configure the Touchpad
Past Linux kernels have had broken Elan Touchpad drivers. Since the 3.16 kernel the Elan touchpad on the 2014 Dell XPS 13 has been able to accurate register two, three, and four finger gestures, finger width, and palm detection. Unfortunately the xorg-input driver has three and four finger detection disabled.  In order to re-enable them you will have to patch the xserver-xorg-input-synaptics driver.

The process is straight forward and a complete step-by-step guide can be found here.


Enable Smooth Tear Free Video Playback

Enabling Intel's tear free hardware settings allows for smooth tear-free video playback during videos and gaming with the Intel HD 4400 integrated graphic chipset.

To enable the Intel driver TearFree option in a terminal type:
sudo mkdir -p /etc/X11/xorg.conf.d/
sudo wget -q -O /etc/X11/xorg.conf.d/10-intel.conf http://xps13-9333.appspot.com/root/etc/X11/xorg.conf.d/10-intel.conf
Then reboot:
sudo reboot

Via the terminal check to see it was the enabled:
cat /var/log/Xorg.0.log | grep Tear

Your /etc/X11/xorg.conf.d/10-intel.conf file should contain the following:
# last update: 29 March 14
Section "Device"
    Identifier    "Intel Graphics"
    Driver        "intel"
    Option        "AccelMethod"  "sna"
    Option        "TearFree" "true"
EndSection
If the tear free option is no showing that it has been enabled check your configuration.

Disable Bluetooth at Startup
I never use bluetooth and find that having it enabled and turned on all the time is a waste of battery resources.

First disable the adapter, in a terminal:
sudo service bluetooth stop

To check in bluetooth is turned off or on, in a terminal type:
hciconfig

Now we need to keep the bluetooth adapter from turning back on when we reboot. Use your favorite editor (gedit, mousepad, nano, etc) to change the InitiallyPowered entry in your /etc/bluetooth/main.conf file from true to false.

In a terminal: (mousepad is the default text editor for Xubuntu, in Ubuntu use gedit, or for Kubuntu kedit)
gksu mousepad /etc/bluetooth/main.conf

Under the InitiallyPowered entry
Change:
InitiallyPowered = true


To:
InitiallyPowered = false


As always I want to thank the author of http://xps13-9333.appspot.com/

Sunday, June 15, 2014

Netflix & Amazon Prime Video in Ubuntu 14.04

Pipelight uses a patched version of WINE to install the Microsoft Silverlight plugin used by Netflix and Amazon Prime Video. Pipelight automatically installs, configures and updates all the necessary components and dependencies for video playback. Once installed Silverlight will behave just like any other normal browser plugin. In order to watch Netflix and and Amazon Prime Video after installing Pipelight, you will need to set Firefox to spoof a compatible User-Agent String. Once configured playback works seamlessly.

Add the Pipelight's Ubuntu Personal Package Archives (PPA)
sudo apt-add-repository ppa:pipelight/stable
Update your system
sudo apt-get update
Install Pipelight and the necessary dependencies
sudo apt-get install --install-recommends pipelight-multi
Update the Pipelight plugin
sudo pipelight-plugin --update
Enable Pipelight for every user on your system
sudo pipelight-plugin --enable silverlight
Install the Firefox add-on UAControl. There are other add-ons that work but UAControl  works automatically. If you can not get UAControl working for you, you can try another method.

To access UAcontrols preferences either navigate to Tools>Add-ons or use the key combination Cltrl+Shift+A

Click Add Site and enter the website you want to send a specific user-agent string
www.netflix.com
www.amazon.com
And use one of the following user-agent strings:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0
Mozilla/5.0 (Windows NT 6.1; rv:23.0) Gecko/20131011 Firefox/23.0


On my Dell XPS 13 the first string works for playback, on my desktop the second string works. Don't be discouraged. Try each string after restarting your browser until you find one that works.

Source

Thursday, June 5, 2014

Installing Ubuntu/Xubuntu 14.04 on the Dell XPS model 9333

Installing Ubuntu 14.04 on my Dell XPS 13 model 9333 requires a little more work than anticipated. This guide will show you how to get the touchpad working correctly and fix headphone jack audio bug.  This guide works for Ubuntu and any of it's derivatives using 14.04 as its code base.

I use Xubuntu on my XPS 13. I love Ubuntu, but Xubuntu offers me more control and a workspace that matches my workflow. No matter what edition of Ubuntu you decide to use, Trusty Tahr works really well on the Dell XPS 13.


Terminal commands are highlighted in blue. Ubuntu users need to use gedit instead of mousepad in their terminal commands.

Update your system
sudo apt-get update

Upgrade
sudo apt-get update

Reboot if necessary
sudo reboot

The updated Synaptic drivers for the XP3 13 touchpad are currently in Test Kernels. Canonical is doing their best to try and backport this functionality into 14.04 LTS so that users can take advantage of native i2c touchpad support. Until then you can download a test kernel or enable the testing repository. I downloaded acelan's testing kernel. Make sure you download all 4 debs. Install and reboot.



There is constant white noise that can be heard when headphones are plugged in, it makes using the audio jack impossible. There is also a poping noise heard when plugging in headphones. The fix involves creating a script and disabling the power saving mode of the audio card.The good news is this bug has been fixed in 3.16 kernels.

It is easier to run the commands as root, open a root terminal:
sudo su
Setup an init script to load the headphone fix at boot:
mkdir -p /etc/init.d/
wget -q -O /etc/init.d/xps http://xps13-9333.appspot.com/root/etc/init.d/xps
chmod +x /etc/init.d/xps
update-rc.d xps defaults

Create the audio fix script:
mkdir -p /usr/local/bin
wget -O /usr/local/bin/white_noise_fix.py http://xps13-9333.appspot.com/root/usr/local/bin/white_noise_fix.py
chmod 744 /usr/local/bin/white_noise_fix.py

Disable the power saving mode"
mkdir -p /etc/pm/config.d
echo INTEL_AUDIO_POWERSAVE=false > /etc/pm/config.d/snd_hda_intel

Apply the changes without needing a reboot:
echo 0 > /sys/module/snd_hda_intel/parameters/power_save
white_noise_fix.py

exit root permissions:
exit


For Xubuntu users:

You'll notice that there is significant screen tearing when watching videos in Xubuntu. Xfce's default window manager xfwm4 does not have sync to VBlank support. Compton supports VBlank and I written a guide for setting it up properly for the Dell XPS 13.

Before you install and configure Compton you need to turn off xfwm4 compositor. Under Settings>Window Manager Tweaks>Compositor


 Install and configure Compton:
sudo apt-get install compton
wget  -O ~/.config/compton.conf https://dl.dropboxusercontent.com/u/6062904/compton.conf

Then set Compton to run at startup. Under Settings>Session and Startup>Application Autostart. Click the Add button:


Name: Compton
Description: lightweight standalone compositor
Command: compton -b

Enable the Intel driver TearFree option:
sudo mkdir -p /etc/X11/xorg.conf.d/
sudo wget -q -O /etc/X11/xorg.conf.d/10-intel.conf http://xps13-9333.appspot.com/root/etc/X11/xorg.conf.d/10-intel.conf

reboot
sudo reboot

Check to see it was enabled
cat /var/log/Xorg.0.log | grep Tear


There are a couple options for configuring multitouch gestures in Ubuntu 14.04. I'm trying to get Touchegg working. Until then I'm using a simple bash script to tweak my synclient settings.

To setup the script:
mkdir ~/.scripts
touch ~/.scripts/touchpad_config.sh
chmod 744 ~/.scripts/touchpad_config.sh
mousepad  ~/.scripts/touchpad_config.sh


These settings change the tapping behavior, you can place whatever tweaks you want inside of it. Having the script wait 10 second or so provides enough time for the system to load, you can remove it but I prefer a bit of a buffer.
 #!/bin/bash
    sleep 10s &&
    synclient TapButton1=1;
    synclient TapButton2=2;
    synclient TapButton3=3

Feel free to leave comments and suggestions in the comments.

Sunday, June 1, 2014

Setting Up Dropbox in Xubuntu

Dropbox does not officially support Xubuntu's file manager Thunar. Crunchbang maintains a Thunar Dropbox package that restores alot of the official plugin features. With it you'll get options to browse the file on the Dropbox website, get shareable link and view previous revisions. Terminal commands are highlighted in blue.

If you don't already have an account, please use my referral link. We both get extra space.

Download and install the 64 bit client
cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf - 

Download the 64 bit plugin
wget packages.crunchbang.org/waldorf/pool/main/thunar-dropbox-plugin_0.2.0-1_amd64.deb

Install the plugin
sudo dpkg -i thunar-dropbox-plugin_0.2.0-1_amd64.deb

Start Dropbox
~/.dropbox-dist/dropboxd

Sources 1 2

Thursday, May 29, 2014

Eliminate Screen Tearing in Xfce With Compton



I write about Ubuntu but use its community-maintained Xfce derivative Xubuntu on both my desktop and Dell XPS 13. Ubuntu is a great distribution but I love Xfce, Thanks to discovering Compton and getting it configured properly I've been able to move to Xfce on the desktop. The screen tearing I experienced with Xfce's default window manager xfwm4 is gone. Movies, Youtube, Netflix, and gaming all look great.


Compton is a lightweight standalone composite manager that has gained in popularity for its reliably and stability. Compton includes numerous additional improvements and configuration options over xfwm4, including a faster GLX (OpenGL) backend, default inactive/active window opacity, window frame transparency, window background blur, window color inversion, painting rate throttling, VSync, condition-based fine-tune control, configuration file reading, and D-Bus control.

Before you install and configure Compton you need to turn off xfwm4 compositor. Under Settings>Window Manager Tweaks>Compositor


Install compton:
sudo apt-get install compton

Create a compton configuration file
touch ~/.config/compton.conf

Configure Compton for your system, use your preferred text editor
mousepad ~/.config/compton.conf


For my Dell XPS I use this configuration:
You can the file from my download from my dropbox
#################################
#
# Backend
#
#################################

# Backend to use: "xrender" or "glx".
# GLX backend is typically much faster but depends on a sane driver.
backend = "glx";

#################################
#
# GLX backend
#
#################################

glx-no-stencil = true;

# GLX backend: Copy unmodified regions from front buffer instead of redrawing them all.
# My tests with nvidia-drivers show a 10% decrease in performance when the whole screen is modified,
# but a 20% increase when only 1/4 is.
# My tests on nouveau show terrible slowdown.
# Useful with --glx-swap-method, as well.
glx-copy-from-front = false;

# GLX backend: Use MESA_copy_sub_buffer to do partial screen update.
# My tests on nouveau shows a 200% performance boost when only 1/4 of the screen is updated.
# May break VSync and is not available on some drivers.
# Overrides --glx-copy-from-front.
# glx-use-copysubbuffermesa = true;

# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe).
# Recommended if it works.
# glx-no-rebind-pixmap = true;


# GLX backend: GLX buffer swap method we assume.
# Could be undefined (0), copy (1), exchange (2), 3-6, or buffer-age (-1).
# undefined is the slowest and the safest, and the default value.
# copy is fastest, but may fail on some drivers,
# 2-6 are gradually slower but safer (6 is still faster than 0).
# Usually, double buffer means 2, triple buffer means 3.
# buffer-age means auto-detect using GLX_EXT_buffer_age, supported by some drivers.
# Useless with --glx-use-copysubbuffermesa.
# Partially breaks --resize-damage.
# Defaults to undefined.
glx-swap-method = "undefined";

#################################
#
# Shadows
#
#################################

# Enabled client-side shadows on windows.
shadow = true;
# Don't draw shadows on DND windows.
no-dnd-shadow = true;
# Avoid drawing shadows on dock/panel windows.
no-dock-shadow = true;
# Zero the part of the shadow's mask behind the window. Fix some weirdness with ARGB windows.
clear-shadow = true;
# The blur radius for shadows. (default 12)
shadow-radius = 5;
# The left offset for shadows. (default -15)
shadow-offset-x = -5;
# The top offset for shadows. (default -15)
shadow-offset-y = -5;
# The translucency for shadows. (default .75)
shadow-opacity = 0.5;

# Set if you want different colour shadows
# shadow-red = 0.0;
# shadow-green = 0.0;
# shadow-blue = 0.0;

# The shadow exclude options are helpful if you have shadows enabled. Due to the way compton draws its shadows, certain applications will have visual glitches
# (most applications are fine, only apps that do weird things with xshapes or argb are affected).
# This list includes all the affected apps I found in my testing. The "! name~=''" part excludes shadows on any "Unknown" windows, this prevents a visual glitch with the XFWM alt tab switcher.
shadow-exclude = [
    "! name~=''",
    "name = 'Notification'",
    "name = 'Plank'",
    "name = 'Docky'",
    "name = 'Kupfer'",
    "name = 'xfce4-notifyd'",
    "name *= 'VLC'",
    "name *= 'compton'",
    "name *= 'Chromium'",
    "name *= 'Chrome'",
    "name *= 'Firefox'",
    "class_g = 'Conky'",
    "class_g = 'Kupfer'",
    "class_g = 'Synapse'",
    "class_g ?= 'Notify-osd'",
    "class_g ?= 'Cairo-dock'",
    "class_g ?= 'Xfce4-notifyd'",
    "class_g ?= 'Xfce4-power-manager'"
];
# Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners)
shadow-ignore-shaped = false;

#################################
#
# Opacity
#
#################################

menu-opacity = 1;
inactive-opacity = 1;
active-opacity = 1;
frame-opacity = 1;
inactive-opacity-override = false;
alpha-step = 0.06;

# Dim inactive windows. (0.0 - 1.0)
# inactive-dim = 0.2;
# Do not let dimness adjust based on window opacity.
# inactive-dim-fixed = true;
# Blur background of transparent windows. Bad performance with X Render backend. GLX backend is preferred.
# blur-background = true;
# Blur background of opaque windows with transparent frames as well.
# blur-background-frame = true;
# Do not let blur radius adjust based on window opacity.
blur-background-fixed = false;
blur-background-exclude = [
    "window_type = 'dock'",
    "window_type = 'desktop'"
];

#################################
#
# Fading
#
#################################

# Fade windows during opacity changes.
fading = true;
# The time between steps in a fade in milliseconds. (default 10).
fade-delta = 4;
# Opacity change between steps while fading in. (default 0.028).
fade-in-step = 0.03;
# Opacity change between steps while fading out. (default 0.03).
fade-out-step = 0.03;
# Fade windows in/out when opening/closing
# no-fading-openclose = true;

# Specify a list of conditions of windows that should not be faded.
fade-exclude = [ ];

#################################
#
# Other
#
#################################

# Try to detect WM windows and mark them as active.
mark-wmwin-focused = true;
# Mark all non-WM but override-redirect windows active (e.g. menus).
mark-ovredir-focused = true;
# Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused instead of using FocusIn/Out events.
# Usually more reliable but depends on a EWMH-compliant WM.
use-ewmh-active-win = true;
# Detect rounded corners and treat them as rectangular when --shadow-ignore-shaped is on.
detect-rounded-corners = true;

# Detect _NET_WM_OPACITY on client windows, useful for window managers not passing _NET_WM_OPACITY of client windows to frame windows.
# This prevents opacity being ignored for some apps.
# For example without this enabled my xfce4-notifyd is 100% opacity no matter what.
detect-client-opacity = true;

# Specify refresh rate of the screen.
# If not specified or 0, compton will try detecting this with X RandR extension.
refresh-rate = 0;

# Set VSync method. VSync methods currently available:
# none: No VSync
# drm: VSync with DRM_IOCTL_WAIT_VBLANK. May only work on some drivers.
# opengl: Try to VSync with SGI_video_sync OpenGL extension. Only work on some drivers.
# opengl-oml: Try to VSync with OML_sync_control OpenGL extension. Only work on some drivers.
# opengl-swc: Try to VSync with SGI_swap_control OpenGL extension. Only work on some drivers. Works only with GLX backend. Known to be most effective on many drivers. Does not actually control paint timing, only buffer swap is affected, so it doesn’t have the effect of --sw-opti unlike other methods. Experimental.
# opengl-mswc: Try to VSync with MESA_swap_control OpenGL extension. Basically the same as opengl-swc above, except the extension we use.
# (Note some VSync methods may not be enabled at compile time.)
vsync = "opengl-swc";

# Enable DBE painting mode, intended to use with VSync to (hopefully) eliminate tearing.
# Reported to have no effect, though.
dbe = false;
# Painting on X Composite overlay window. Recommended.
paint-on-overlay = true;

# Limit compton to repaint at most once every 1 / refresh_rate second to boost performance.
# This should not be used with --vsync drm/opengl/opengl-oml as they essentially does --sw-opti's job already,
# unless you wish to specify a lower refresh rate than the actual value.
sw-opti = false;

# Unredirect all windows if a full-screen opaque window is detected, to maximize performance for full-screen windows, like games.
# Known to cause flickering when redirecting/unredirecting windows.
# paint-on-overlay may make the flickering less obvious.
unredir-if-possible = true;

# Specify a list of conditions of windows that should always be considered focused.
focus-exclude = [ ];

# Use WM_TRANSIENT_FOR to group windows, and consider windows in the same group focused at the same time.
detect-transient = true;
# Use WM_CLIENT_LEADER to group windows, and consider windows in the same group focused at the same time.
# WM_TRANSIENT_FOR has higher priority if --detect-transient is enabled, too.
detect-client-leader = true;

#################################
#
# Window type settings
#
#################################

wintypes:
{
    tooltip =
    {
        # fade: Fade the particular type of windows.
        fade = true;
        # shadow: Give those windows shadow
        shadow = false;
        # opacity: Default opacity for the type of windows.
        opacity = 0.85;
        # focus: Whether to always consider windows of this type focused.
        focus = true;
    };
};


Then set compton to run at startup. Under Settings>Session and Startup>Application Autostart

Click the Add button:


Name: Compton
Description: lightweight standalone compositor
Command: compton -b

For other startup options consult the Arch Wiki for Compton


Sources: 1, 2