Sunday, August 4, 2013

Installing Arch GNU/Linux on Macbok air Version 4.2(Late 2011) part 4

Disclaimer: I dont take any responsibility for the damage of your equipment. If you point your ire at me, I will have the last laugh. USE THE INFO AT YOUR OWN RISK.

 So, you have now rebooted to your liberated computing experience and have started loving to being master. Let us continue

WINDOW BORDERS NOT BEING DISPLAYED

add the line below in settings - settings-manager-session and startup-application autostart
/usr/bin/xfwm4 &

SWAP SPACE ON A FILE

Create 8GB swapfile instead of a swap partition(which we did not create while installing)
in the root partition.

dd if=/dev/zero of=/swapfile bs=1024 count=8388608  -- Red hat recommends twice the ram
if you are going to use the hibernate feature. If not you can halve the size of the swapfile
But, I believe that air users would love to use the hibernate feature. With hibernate the
entire ram contents are dumped to the swap partition and is read back when brought back
from hibernation.

swap is responsible for many a hacks on Unix/Linux systems. Restrict permissions
by using

chown root:root /swapfile
chmod 0600 /swapfile

mkswap /swapfile   -- To convert the file to swap file type
swapon /swapfile   -- To start using the file as swap, now.

To use the swapfile at every boot up

/swapfile swap swap defaults 0 0


ENABLE/DISABLE KEYBOARD BACKLIGHT

$su
#echo 100 | tee  /sys/class/leds/smc\:\:kbd_backlight/brightness  --- for full backlight brightness
#echo 00 | tee  /sys/class/leds/smc\:\:kbd_backlight/brightness  --- for backlight off


HARDWARE ACCELERATION

To use it with Arch, you simply need to install the xf86-video-intel package, this has the SNA patch included and should work with the most recent Xorg. It's then a simple case of creating /etc/X11/xorg.conf.d/20-intel.conf and adding:

Section "Device"

Identifier "Intel Graphics"
Driver "intel"
Option "AccelMethod" "sna"

EndSection

check your log to see if SNA is being used with the below command:

cat /var/log/Xorg* | grep SNA


INCREASE LIFE OF SSD

To make all these changes, open up a terminal and run:

sudo nano -w /etc/fstab

Then for all SSD devices in your system remove 'relatime' if present and add 'noatime,nodiratime,discard' so it looks something like this:

/dev/sda   /   ext4   noatime,nodiratime,discard,errors=remount-ro 0 1

SWAP WRITE MINIMIZE

echo 0 > /pro/sys/vm/swappiness

CHANGE THE IO SCHEDULER


    echo noop > /sys/block/sdX/queue/scheduler

Or better, use udev rules to check for rotational media.

#'deadline' is recommended by the author of CFQ for SSDs, replace it with 'noop' if you want.

    Create a file with a name like 10-ssd.rules in /etc/udev/rules.d containing:

# set a larger readahead size
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/read_ahead_kb}="1024"

# set deadline scheduler for non-rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="deadline"


now, verify the scheduler

$ cat /sys/block/sda/queue/scheduler  -- The output would be. The selected scheduler is indicated in brackets.

noop [deadline] cfq


Replace "relatime" with "noatime" to stop the system from writing the last access times as discussed above. Next, add the following lines to fstab to put temporary and log files in RAM instead of on the solid state drive:

tmpfs   /tmp       tmpfs   defaults,noatime,mode=1777   0  0
tmpfs   /var/log   tmpfs   defaults,noatime,mode=0755   0  0
tmpfs   /var/spool tmpfs   defaults,noatime,mode=1777   0  0
tmpfs   /var/tmp   tmpfs   defaults,noatime,mode=1777   0  0


NEW CONFIG FILES FOR ADJUSTING TIME( from arch wiki )

Comment all time related lines in /etc/rc.conf

HARDWARECLOCK=...

and other time related entered in the previous steps

run   hwclock -w --localtime as root
It will create a file /etc/adjtime
cat /etc/adjtime
you should get some output with LOCAL in the end

Reboot


UPDATED LOCALE/TIME CONFIGS

emacs /etc/locale.gen
uncomment en_IN UTF8

emacs /etc/locale.conf
add the following

Lang="en_IN.UTF-8"
LC_COLLATE="C"
LC_TIME="en_IN.UTF-8"
export LANG=en_IN.UTF-8

run this command   hwclock --systohc --localtime


sound getting disabled once in a while

Keep using the system for a week/fortnight it will get repaired automatically


BRIGHTNESS OF DISPLAY

If the fn keys stop working for changing the display brightness then,

run the following commands

cat /sys/class/backlight/max_brightness
cat /sys/class/backlight/brightness

enter a value from 0 to max_brightness to change the brightness by

#echo 245 | tee brightness

Increase or decrease based on requirement.

UPDATE: The aboe step is not required. since brightness can be easily adjusted via plugins in xfce.

Frequency driver issues

Linux 2.9 and above are using the newest frequency driver called intel-pstate. This is for newer cpus. Tha macbook air was running hot. So remove it until the previous old processors are supported by this driver.
1. add intel_pstate=disable to the kernel line
2. echo acpi-cpufreq >/etc/modules-load.d/acpi-cpufreq.conf

If you dont like the colored borders behind the names of icons on the desktop do this

 It is possible you may have a .gtkrc-2.0 file already. If so, the
following lines can be added to it. Otherwise you will need to make this
file yourself and paste the below lines in the .gtkrc-2.0 file.

To make the file, just open a text editor and paste the following:

style "xfdesktop-icon-view" {
    XfdesktopIconView::label-alpha = 0
    }
widget_class "*XfdesktopIconView*" style "xfdesktop-icon-view"

So you want to connect your latest android smartphone

 Install packages gvfs gvfs-afc gvfs-mtp for automounting of USB devices
But just remember that mtp sucks on GNU/Linux as well as windows.

Thats it folks!!!. I dont think I have forgotten anything. All the best with your freedom.

No comments:

Post a Comment

Nobody can deter me away from "free as in freedom" concept seeded by Sri RMS. See to it that u dont make fun of my belief. If u think otherwise, no need to comment.