Archlinux config
27 Dec 2014All steps i reproduced to set my Archlinux config. You can find all the config files and system configuration files for my Archlinux to set up a nice environment for development and daily use.
Table of Contents
Config files
Zsh
Xfce4 Config
nVidia Optimus Bumblebee
linux-ck Brain Fuck Scheduler (BFS)
Packages for programming
Sublime Text 3 config
Power managment
Firewall Configuration
Better Fonts with Infinality fonts
Source of all files
Config files
- Bumblebee config to avoid errors
- lightdm config with better integration with xfce4
- pulseaudio config for better audio (?)
- conkyrc config
- guake config with color shceme from guake colors elementary-os
- zsh config files
- Sublime Text 3 config
- and others config's files
Screenshots
Archlinux desktop
Guake colors
Zsh
pacman -S zsh zsh-completions
wget --no-check-certificate http://install.ohmyz.sh -O - | sh
sudo wget --no-check-certificate http://install.ohmyz.sh -O - | sh
chsh -s /bin/zsh
sudo chsh -s /bin/zsh
Xfce4 Config
1. xfce4 extras
#xfce4 devel
yaourt -S libxfce4ui-devel xfwm4-devel xfdesktop-devel xfce4-settings-devel xfce4-session-devel
pacman -S lxtask ffmpegthumbnailer poppler-glib gvfs gvfs-smb sshfs xdg-user-dirs xdg-user-dirs-gtk guake pavucontrol pulseaudio-alsa lib32-alsa-plugins lib32-libpulse
yaourt -S xfce4-volumed-pulse xfce4-whiskermenu-plugin menulibre
xdg-user-dirs-update
xdg-user-dirs-gtk-update
2. xfce4 eyecandy
yaourt -S xfce-theme-greybird xcursor-human elementary-xfce-icons-git
2.1 Cursor theme
nano /usr/share/icons/default/index.theme
[Icon Theme]
Inherits=Human
3. xfce4 Lightdm integration
pacman -S lightdm-gtk2-greeter light-locker
nano /etc/lightdm/lightdm.conf
[SeatDefaults]
greeter-session=lightdm-gtk-greeter
3.1 Wallpaper lightdm
cp path/to/wallpaper.png /usr/share/pixmaps/wallpaper.png
3.2 lightdm-gtk-greeter
nano /etc/lightdm/lightdm-gtk-greeter.conf
[greeter]
background= /usr/share/pixmaps/wallpaper.png
theme-name=Greybird
icon-theme-name=elementary-xfce
4. xfce4 Lightdm lightlock
4.1 Create systemd service
nano /etc/systemd/system/lock.service
[Unit]
Description=Lock X session
Before=suspend.target
[Service]
Type=oneshot
ExecStart=/usr/bin/xflock4
[Install]
WantedBy=suspend.target
4.2 Enable systemd service
systemctl enable lock
4.3 Add light-locker to xflock4 script
nano /usr/bin/xflock4
#!/bin/sh
light-locker-command -l
nVidia Optimus Bumblebee
pacman -S bumblebee bbswitch primus lib32-primus lib32-virtualgl nvidia lib32-nvidia-utils
gpasswd -a diego bumblebee
systemctl enable bumblebeed
nano /etc/mkinitcpio.conf
MODULES="i915 bbswitch"
nano /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet rcutree.rcu_idle_gp_delay=1"
lspci | grep VGA | grep NVIDIA
nano /etc/bumblebee/xorg.conf.nvidia
BusID "PCI:01:00:0"
linux-ck Brain Fuck Scheduler
pacman-key -r 5EE46C4C
pacman-key --lsign-key 5EE46C4C
pacman -S linux-ck-ivybridge linux-ck-ivybridge-headers nvidia-ck-ivybridge
yaourt -S bbswitch-ck acpi_call-ck
grub-mkconfig -o /boot/grub/grub.cfg
Packages for programming
pacman -S mariadb mongodb ruby openssh nodejs apache php php-apache php-mcrypt php-gd php-composer gdb virtualbox jdk7-openjdk jre7-openjdk jre7-openjdk-headlessc clang qtcreator virtualbox-host-dkms
pacman -S postgresql php-pgsql pgadmin3
pacman -S xampp
sudo ln -s ~/public_html /opt/lampp/htdocs/$USER
yaourt -S sublime-text-dev virtualbox-ext-oracle
npm install -g bower gulp grunt-cli yo sails generator-gulp-angular generator-angular
#games
pacman -S tiled tinyxml sdl sdl_image sdl_gfx sfml
#Networking
pacman -S whois nmap wireshark-cli wireshark-gtk john aircrack-ng
Sublime Text 3 config
1. Install Package Control
Open Sublime Text 3 and hit ctrl+ยด
shortcut or the View > Show Console
menu, then enter the following:
import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
2.Install and load packages (ctrl-Shift-P
)
3. Load user settings from Sublime Text 3 config
PostgreSQL config
sed -i '/pgsql.so/s/^;//' /etc/php/php.ini
su - postgres -c "initdb --locale es_CL.UTF-8 -D '/var/lib/postgres/data'"
chown -R postgres:postgres /var/lib/postgres
systemctl start postgresql
Mariadb config
systemctl start mysqld && /usr/bin/mysql_secure_installation
Power managment
pacman -S tlp lm_sensors smartmontools lsb-release ethtool iw
systemctl enable tlp
sensors-detect
Network Manager
pacman -S networkmanager networkmanager-openconnect network-manager-applet dnsmasq
systemctl enable NetworkManager
Bluetooth
yaourt -S blueman-git
systemctl enable bluetooth
Firewall Configuration
pacman -S iptables
systemctl enable iptables && systemctl start iptables
Set rules
#block all conections
iptables -P INPUT DROP
#allow all conections for localhost
iptables -A INPUT -i lo -j ACCEPT
#allow all conections established by localhost
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Save rules
iptables-save > /etc/iptables/iptables.rules
systemctl reload iptables
Other stuff
pacman -S conky clementine gpicview wine winetricks wine_gecko xdelta3 pkgstats firefox-adblock-plus firefox-i18n-es-cl transmission-gtk filezilla xchat wget mpv libva libva-intel-driver thunderbird-i18n-es-ar gtk-recordmydesktop skype galculator bleachbit preload ntfs-3g archey3 chromium flashplugin
#fix errors logs wine
pacman -S lib32-ncurses lib32-mpg123
yaourt -S profile-sync-daemon anything-sync-daemon chromium-pepper-flash
#gaming
pacman -S steam desmume
#Multimedia extras
pacman -S gimp gimp-plugin-gmic inkscape blender mkvtoolnix-gtk soundconverter
yaourt -S jdownloader2 teamspeak3 animecheck-git radiotray
#Ofimatic
pacman -S libreoffice-fresh-es hunspell-es hyphen-es libmythes mythes-es
#LaTeX
pacman -S texlive-core texlive-bibtexextra texlive-htmlxml texlive-humanities texlive-latexextra texlive-pictures texlive-publishers texlive-science
Compressed Files
pacman -S file-roller
pacman -S unrar zip unzip xz tar gzip bzip2 rpmextract
Better Fonts with Infinality fonts
nano /etc/pacman.con
[infinality-bundle]
Server = http://bohoomil.com/repo/$arch
[infinality-bundle-multilib]
Server = http://bohoomil.com/repo/multilib/$arch
[infinality-bundle-fonts]
Server = http://bohoomil.com/repo/fonts
pacman -S infinality-bundle infinality-bundle-multilib
pacman -S ibfonts-meta-base ibfonts-meta-extended-lt adobe-source-sans-pro-fonts adobe-source-serif-pro-fonts ttf-meslo-fonts-ibx otf-source-code-pro-pwl-ibx
#Oriental fonts
pacman -S adobe-source-han-sans-cn-fonts adobe-source-han-sans-jp-fonts adobe-source-han-sans-jp-fonts adobe-source-han-sans-otc-fonts adobe-source-han-sans-tw-fonts ttf-roboto-ibx
Source of all files
The config files can be found in my repo in github