• My Parabola gnu/linux laptop

    05/10/2016 at 16:52 3 comments

    For many months I was looking upgrade my old laptop. I was using Debian but the free nvidia video driver died frequently, so I install Parabola trying to fix that problem.

    When I use Parabola I loved it. It is a better and easier alternative for develop.

    Parabola and their newer versions of the packages didn't fix my video problem, and also I can't install the private driver of my wifi card or change that card.

    So I buy a Razer Blade Stealth with intel video, and change the wifi card. I buy a wifi card from: https://www.thinkpenguin.com/catalog/wireless-networking-gnulinux

    I read the Parabola beginners guide, but next are what I exactly did.

    I first make a bootable usb with the dd utility and disable bios usb secure boot on the Razer laptop.

    Partition:

    parted /dev/nvme0n1p
        mklabel gpt
        mkpart ESP fat32 1MiB 513MiB
        set 1 boot on
        mkpart primary ext4 513MiB 15.5GiB
        mkpart primary linux-swap 15.5GiB 19GiB
        mkpart primary ext4 19GiB 100%
    mkfs.vfat -F32 /dev/nvme0n1p1
    mkfs.ext4 /dev/nvme0n1p2
    mkswap /dev/nvme0n1p3
    mkfs.ext4 /dev/nvme0n1p4
    
    Install base:
    lsblk
    swapon /dev/nvme0n1p3
    mount /dev/nvme0n1p2 /mnt
    mkdir /mnt/home
    mount /dev/nvme0n1p4 /mnt/home
    pacstrap -i /mnt base
    genfstab -U -p /mnt >> /mnt/etc/fstab
    grub:
    arch-chroot /mnt /bin/bash
    pacman -S grub efibootmgr
    nano /etc/default/grub
        GRUB_TIMEOUT=1
    mkdir /boot/efi
    mount -t vfat /dev/nvme0n1p1 /boot/efi
    grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=parabola --recheck
    cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
    grub-mkconfig -o /boot/grub/grub.cfg
    efibootmgr -c -d /dev/nvme0n1p1 -l /EFI/parabola/grubx64.efi -L "parabola"
    Configuration:
    passwd
    useradd -m -s /bin/bash wagner
    passwd wagner
    ln -sf /usr/share/zoneinfo/America/Costa_Rica /etc/localtime
    ls -l /etc/localtime
    nano /etc/locale.gen
        en_US.UTF-8 UTF-8
    locale-gen
    echo LANG=en_US.UTF-8 > /etc/locale.conf
    export LANG=en_US.UTF-8
    Programs I used:
    pacman -S screen emacs-nox htop unp unzip openssh sshfs wget sudo
              net-tools usb_modeswitch iw wpa_supplicant lm_sensors alsa-utils
    
    pacman -S xorg-server xorg-xinit xorg-xrandr xorg-xev
              xf86-input-libinput xf86-video-intel ttf-dejavu 
              i3 dmenu lxterminal networkmanager network-manager-applet
              feh gpicview mpv gimp inkscape gnuchess
    Video configuration:
    xrandr --output eDP1 --mode 1600x900
    
    nano /etc/X11/xorg.conf
      Section "Monitor"
        Identifier      "eDP1"
        Option          "Primary"       "true"
        Option          "PreferredMode" "1600x900"
      EndSection
    
    nano .bash_profile
      ...
      [[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx
    
    nano .xinitrc
      #!/bin/bash
      exec i3
    Touchpad configuration:
    nano /usr/share/X11/xorg.conf.d/60-libinput.conf
      Section "InputClass"
        Identifier "libinput touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "Tapping" "on"
      EndSection
    
    Backlight configuration:
    nano /usr/local/bin/bl
      #!/bin/bash
      curr=$(cat /sys/class/backlight/intel_backlight/brightness)
      if [ $1 = "down" ] ; then
        if [ $curr -gt "0" ] ; then
          down=$(( $curr-100 ))
          tee /sys/class/backlight/intel_backlight/brightness <<< $down
        else
          echo "already min"
        fi
      fi
    
      if [ $1 = "up" ] ; then
        if [ $curr -lt "900" ] ; then
          up=$(( $curr+100 ))
          tee /sys/class/backlight/intel_backlight/brightness <<< $up
        else
          echo "already max"
        fi
      fi
    
    chmod a+x /usr/local/bin/bl
    export EDITOR="emacs"
    visudo
      wagner ALL=(ALL) NOPASSWD: /usr/local/bin/bl
    i3 configuration:
    nano .config/i3/config
      ...
      bindsym XF86MonBrightnessUp exec sudo bl up
      bindsym XF86MonBrightnessDown exec sudo bl down
    
      bindsym XF86AudioMute exec amixer set Master toggle
      bindsym XF86AudioLowerVolume exec amixer set Master 1%-
      bindsym XF86AudioRaiseVolume exec amixer set Master 1%+
    
      #bindsym XF86AudioPlay exec playerctl play-pause
      #bindsym XF86AudioNext exec playerctl next
      #bindsym XF86AudioPrev exec playerctl previous
      #bindsym XF86AudioStop exec playerctl stop
    
      bindsym $mod+Shift+Return exec opera  # icecat chromium
    
      focus_follows_mouse no
      new_window none
      exec feh --bg-fill...
    Read more »