POST UNDER EDITING!!!

Utilities

Pacman / Yaourt

Search: pacman/yaourt -Ss <pkg>

Install: pacman/yaourt -S <pkg>

Remove: pacman/yaourt -Rsn <pkg>

exa

An ls replacement: https://the.exa.website/

yaourt -S exa-git

zsh

Install: pacman -S zsh

Make zsh the default shell: chsh -s `which **zsh**

.zshrc:

# Customize to your needs...
# zsh
zstyle ':completion:*' spicial-dirs true
unsetopt share_history


# My alias
alias vi="nvim"
alias ll="exa --git -lgmhuU"

# Ruby 
PATH="$(ruby -e 'print Gem.user_dir')/bin:$PATH"
export GEM_HOME=$(ruby -e 'print Gem.user_dir')

# Pyenv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

#Cuda
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib64


zprezto

Install zprezto from https://github.com/sorin-ionescu/prezto

Add the following modules in ~/.zprestorc:

zstyle ':prezto:load' pmodule \
  'environment' \
  'terminal' \
  'editor' \
  'history' \
  'directory' \
  'spectrum' \
  'utility' \
  'completion' \
  'prompt' \
  'git' \
  'screen' \
  'syntax-highlighting'

[...]
# Set the key mapping style to 'emacs' or 'vi'. DEFAULT IS EMACS :(
zstyle ':prezto:module:editor' key-bindings 'vi'

[...]
# Set the Pacman frontend.
zstyle ':prezto:module:pacman' frontend 'yaourt'

[...]
# Set how themes that use promptpwd function display the pwd, can be 'short', 'long', or 'full'
zstyle ':prezto:module:prompt' pwd-length 'long'

[...]
#
# Terminal
#

# Auto set the tab and window titles.
zstyle ':prezto:module:terminal' auto-title 'yes'

# Set the window title format.
zstyle ':prezto:module:terminal:window-title' format '%n@%m: %s'

# Set the tab title format.
zstyle ':prezto:module:terminal:tab-title' format '%m: %s'

(neo)vim

pacman -s vim

pacman -S neovim python-neovim

GNOME

Desktop Utilities

pacman -S <pkg> the following:

  • chromium
  • firefox
  • gimp
  • inkscape
  • vlc
  • gparted

yaourt -S <pkg> the following:

  • typora

ZFS

NVIDIA+CUDA

SAMBA

PYTHON

Pyenv

yaourt -S pyenv

Install Anaconda3:

pyenv install anaconda3-4.4.0
pyenv global anaconda3-4.4.0

CUPS

Kernel

DKMS

Dynamic kernel module hooks - update packages everytime the kernel is updated:

yaourt -S zfs-dkms

pacman nvidia-dkms

Missing kernel modules

“Possibly missing firmware for module“…

==> WARNING: Possibly missing firmware for module: wd719x
==> WARNING: Possibly missing firmware for module: aic94xx

Harmless warnings for the most people. Install missing firmware to get rid of these messages:

yaourt -S wd719x-firmware aic94xx-firmware

and recompile kernel

mkinitcpio -p linux

Tensorflow

pip install tensorflow-gpu

Test:

import tensorflow as tf 
# Creates a graph.
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
# Creates a session with log_device_placement set to True.
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
# Runs the op.
print(sess.run(c))

If complains about not finding cudnn.so.6:

cd /opt/cuda/lib64
ln -s libcudnn.so.7 libcudnn.so.6