Skip to content

Instantly share code, notes, and snippets.

@marcelofern
Last active February 6, 2019 03:24
Show Gist options
  • Save marcelofern/fb45569a4011dec6fc9f28bcb7359045 to your computer and use it in GitHub Desktop.
Save marcelofern/fb45569a4011dec6fc9f28bcb7359045 to your computer and use it in GitHub Desktop.
Arch Linux installation

Marlu - Archlinux Environment

This is just a repo to save my whole OS environment configuration. Feel free to use it if you want, there's nothing super fancy about it, if you follow through the installation process you should be able to have the very same environment as me.

Requirements:

OS: Arch linux 2019.01.01

RAM (Recommended): 4GB

Manual Installation

After downloading the archlinux iso image, there are some manual steps that we need to execute, so let's go over those.

Installing wireless-wifi drivers

If you are running your OS with a ethernet cable, you can skip this step.

  1. Check the status of your drivers
$ lspci -k
  1. Verify which interface you have
$ ip link
# or
$ ls /sys/class/net

They usually start with e or w example: wlan0

  1. Bring the interface up
$ ip link set wlan0 up
  1. Check the status
$ ip link show dev wlan0
  1. Enable the interface
$ systemctl enable dhcpcd@<INTERFACE>.service

Alternativelly you can set it iteractively by:

$ wifi-menu <INTERFACE_NAME>

If you run into trouble: Network Configuration

Syncrhonize the machine clock and check its status

$ timedatectl set-ntp true
$ timedatectl status

Partition the disks

follow this tutorial https://www.tecmint.com/arch-linux-installation-and-configuration-guide/ Note: remember to install wifi-menu once you get access to ch-root

Installing i3 (i3 gaps)

i3 is a dynamic tiling window manager inspired by wmii that is primarily targeted at developers and advanced users. This is going to be our window manager.

Installing a graphic environment (X.org - X)

$ pacman -S xorg-server xorg-xinit xterm xorg-xrandr

Start X

$ xinit  # option 1
$ startx # option 2

Configure xinitrc (to run upon start)

.xinitrc (add that on home folder)

#!/bin/sh

xset r rate 200 50    # Speed up keyboard
exec i3

Install i3-gaps and other helpful packages

$ pacman -S i3-gaps i3status rxvt-unicode dmenu

Install some useful fonts

$ pacman -S ttf-linux-libertine ttf-inconsolata
# to be placed in .config/i3/config
set $mod Mod4
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango:monospace 8
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# Set inner-outter gaps between windows
gaps inner 15
gaps outer 15
# Back to default gaps
bindsym $mod+t gaps inner current set 15; gaps outer current set 15
bindsym $mod+Shift+t gaps inner current set 0; gaps outer current set 0
# Resizing the windows (shrinking - expanding)
bindsym $mod+y resize shrink width 10px or 10 ppt
bindsym $mod+u resize grow height 10px or 10 ppt
bindsym $mod+i resize shrink height 10px or 10 ppt
bindsym $mod+o resize grow width 10px or 10 ppt
# Moving the windows on the pane (left-right-up-down)
bindsym $mod+Shift+h move left 10
bindsym $mod+Shift+j move up 10
bindsym $mod+Shift+k move down 10
bindsym $mod+Shift+l move right 10
# Changing gaps
bindsym $mod+s gaps inner current plus 5
bindsym $mod+Shift+s gaps inner current minus 5
bindsym $mod+z gaps outer current plus 5
bindsym $mod+Shift+z gaps outer current minus 5
# start a terminal
bindsym $mod+Return exec i3-sensible-terminal
# kill focused window
bindsym $mod+q kill
bindsym $mod+w kill
# start dmenu (a program launcher)
bindsym $mod+d exec dmenu_run
# change focus
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
bindsym $mod+apostrophe split h
# split in vertical orientation
bindsym $mod+slash split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# enter bar mode
bindsym $mod+b bar mode toggle
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
status_command i3status
}

Themeing

In this part we are going to start stylizing our terminal.

Screen Resolution

Your screen resolution may be incorrect. Run xrandr and identify your display. Then run xrandr --output <source_name> --mode 2560x1440 --rate <refresh_rate> For me it is xrandr --output DP1-8 --mode 2560x1440 --rate 59.95

Install ranger

Ranger is going to be our file system explorer

$ pacman -S ranger

Install Yay to help us installing other packages (LOL!)

reference to finish: https://github.com/ibrahimbutt/direwolf-arch-rice#terminal-emulator

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment