Skip to content

Latest commit

 

History

History
823 lines (699 loc) · 18.2 KB

README.md

File metadata and controls

823 lines (699 loc) · 18.2 KB

Arch Cheat Sheet

**This is no longer being maintained. **

My local Arch Linux Cheat Sheet.

This documentation has been created in Zim Desktop Wiki. You can download the content of this repository, along with Zim, to have a local example. A live example can be found at sloa.dk.

A image preview gallery of the end result can be found here.
I do apologize for this half-hearted attempt of a video, but here goes ¯\_(ツ)_/¯

Youtube: System Preview



Good-to-know

This will take you through the steps of getting a stable Arch installation and then further extend the systems functionality. It is not meant to teach you about the technologies, but rather meant as a reference point to quickly get pointers on installation, configuration and a somewhat loose explanation of the programs usability.

This is based on my personal setup on a Asus UX32LN laptop. This setup does not necessarily satisfy your needs, and there is no guarantees that the steps will work on your system.

What this is

This is my local Archlinux Cheat Sheet.
It is a place to quickly reference for installation, configuration and some basic usage.

What this is not

Don't expect to get wiser on the technologies used in this Sheet.
The explanation is often left out and only a quick, one-line note is followed with the steps.
This is - if I have to be honest - probably not even a good reference point.
I am by no mean a power user, so this Sheet is created of my best understandings and findings.
There isn't to much configuration in this Sheet - this has been done along the way and the
necessary configuration files can be found at my dotfile repository.

Why this sheet was made

Coming from the typical Desktop Environments I have gotten quite acustomed to some of the general features you see in such Environments. This sheet is the documentation of my quest to try and mimic some of those feautres, that I felt was missing in my everyday workflow - but suited for my personal needs only. I'm pretty sure that somewhere along the way the KISS philosiphy was lost, so don't expect to much of that.

What the focus is on

This setup is done on a Asus UX32NL Laptop.
Everyday tasks - web, media etc - had to run smoothly.
I do a little web-development, so there's some focus on that too.
I like the idea of a somewhat secure system - but it has to manage itself.
Fast, responsive and optimized for everyday use and work related tasks.

Tip
You might also be interested in my [dotfile repository](https://github.com/Stickano/dotfiles), where my configuration for these programs can be found.



Included in this Cheat Sheet

This sheet has been broken up in 18 major categories (so far at least). Some of the categories doesn't hold much information, whereas others will take a few hours to go through. Below you will find a rough overview of what is being covered in this sheet.



System Base

The System Base is what I consider a absolute bare minimum.

Arch Installation

  • On UEFI/GPT

Network Connectivity

Create a new User

Sudo

  • Granting sudo rights to our newly created user
  • Running X-applications as sudo
  • Tips and Tricks

Enable 32bit support

Display Server

  • Xorg
    • Securing
    • Autostart Applications

Touchpad

Kernels

  • Zen
  • Long Time Support

DKMS

  • Nvidia Driver

Video Driver

  • Intel HD (mesa)
  • Nvidia Utilities
  • Bumblebee

AUR Support

  • Getting familiar with makepkg and cower

Window Manager

  • i3
    • Configuration
    • Save and Load workspace layouts
    • Additional Packages
      • Rofi
      • Polkit
      • Polkit-gnome
      • xss-lock
      • Imagemagick
      • Scrot
      • lm_sensors
      • acpi
      • sysstat
      • i3block
      • Font Awesome
      • i3-gaps



Extended System Functionality

This section extends the systems functionality and is still considered pretty basic/minimum.

Login

  • No Display Manager is Used
    • Welcome Message
    • Tips and Tricks
      • Auto Login

External Devices

  • Auto mount external devices
  • NTFS and FAT support

Display

  • Display Power Management
    • Xset
      • Usage
  • Backlight
    • acpilight
    • lightd

Keyboard

  • Fn-Key
    • Screen Backlight Control
    • Xbindkeys
      • Volume Control
      • Keyboard Backlight Control
      • Toggle Touchpad

Bluetooth

  • Bluez
    • Usage
    • Troubleshoot

Sound

  • PulseAudio
    • Default Device
    • Additional Packages
      • PavuControl
      • PulseAudio-ctl
        • Usage
    • Bluetooth Speaker
      • Tips and Tricks
        • Auto Connect

Scheduled Jobs

  • Cronie
    • Usage
    • Examples

Notifications

  • SSMTP (Email)
    • Configuration
    • Usage
  • Dunst (Desktop)
    • Usage
    • Creating Notifications

Additional Useful Software

  • Clipboard Manager
    • Xclip



Performance Improvements

Reducing weardown and improving the system in general.

Browser Performance

  • [Profile/Anything]-sync-daemon
    • Configuration

SSD

  • I/O Top
  • Smartmontools
    • Usage
    • Monitor Daemon
      • Email Notification
  • TRIM
  • FStab atime
  • Swappiness

CPU

  • Thermald
  • i7z
  • Cpu Power (Frequency Scaling)

Laptop

  • Power Management
    • Powertop
    • TLP
      • Usage
  • Disable Power/Suspend/Hibernate buttons



System Tools

Some tools you will commonly work with - and some not so commonly.

Basic Tools and General Examples

  • Locate (mlocate)
  • Htop
  • Creating Bootable USBs
    • dd
  • Symlinks
  • Tail
  • Wget

ls

  • Output Explained

sed

  • Various Examples

Service Manager

  • Systemd
    • Usage

Package Manager

  • Pacman
    • Configuration
    • Usage
    • Unofficial Keys
    • Tips and Tricks
    • Hooks
      • Writing Hooks
      • Useful Hooks
    • Troubleshoot

AUR Packages

  • Makepkg
    • Configuration
    • Usage
  • Cower
    • Usage
  • Yaourt
    • Configuration
    • Usage

Desktop Entries

  • Manage Entries
  • Writing Entries

Kernel Modules

  • Obtaining Information
  • Manual Handling
  • Handling at Boot
    • Loading
    • Setting Options
    • Blacklisting
  • Tainted Kernel

Mime Types

  • Mimeo
    • Usage
    • Examples



Network Management

Various network information can be found throughout - This is only for managing connectivity

Netctl

  • Wifi
  • Ethernet
  • Automatic Connectivity



Users and Groups

The opportunity to set up more users is available.

Creating User Directories

  • xdg-user-dirs

Managing Users and Groups

  • Users
    • Adding Users
    • Deleting Users
    • Changing Usernames
    • Changing Home Direcotires
    • Adding Users to Groups
    • Removing Users from Groups
    • Expiring Passwords
  • Groups
    • General Usage
    • General User Groups

Permissions

  • Explanation
  • General Examples
  • Bulk Chmod
  • Change Ownership



Maintenance

A few pointers on System Maintenance. Some steps will manage themselves, others will need a revisit from time to time.

Mirrors

  • European Servers
  • Automatic Mirror Upgrade
    • Reflector

Pac[new/save]

  • Locating New Files

Clean The Filesystem

  • Package Cache
  • Orphans
  • Old Configuration Files
  • Broken Symlinks
  • Review Installed Packages
  • Tips and Tricks
    • BleachBit

Downgrade

  • Package
  • Kernel



Getting Information

Pointers on where to obtain some vital information.

Hardware

  • PCI Busses
  • Memory
  • Battery
  • Disk
  • CPU
  • Additional Packages
    • lshw
    • hwinfo
    • dmidecode
  • Tips and Tricks
    • /proc
      • CPU
      • Memory
      • Kernel (out of category, but hey)

Software

  • Logs
  • Dmesg
  • Kernel
  • GPU Driver
  • Applications
  • Additional Packages
    • tldr

Network

  • Local Information
  • Host/Domain Information
  • SS Network Tool
    • Analysis Example
    • Basic Usage

Journalctl

  • Usage



Terminal and Shell

We might as well improve the window we'll be spending most our time in.

Aliases

  • System General
  • Keks

Functions

  • Extract
  • Copy/move and goto dir
  • Arch RSS Feed
  • Toggle Monitor Blank
  • Weather Forecast

Zsh

  • Configuration
  • Oh My Zsh
    • Plugins

Urxvt

  • Extensions

Xresources

  • Syntax Explanation

Wrapper

  • Gnu Screen
    • Usage

Additional Terminal Packages

  • Neofetch
  • Clockywock
  • sl
  • figlet
  • Asciiquarium
  • Unclutter
  • Task

Terminal Keks

  • Fortune
  • Cowsay
  • Lolcat



Security

Some pointers on keeping your system Secure. This is based on Single Machine security.

Anti Virus

  • Clamav
    • Additional Definitions
    • Usage
    • Troubleshoot

Firewall

Password Manager

  • KeePass
    • Using With Firefox
    • Troubleshoot

Security Audith

  • Lynis
    • Usage

Browsing

  • Tor
    • Configuration
    • Using Tor with other Applications
      • Firefox



Preferred Software

We are closing in on that complete system. These are some of my favorite software for everyday tasks.

Browser

  • Firefox
    • Configuration
    • Preferred Addons
    • Netflix, Viaplay etc
    • Tips and Tricks
    • Troubleshoot

Office Suite

  • LibreOffice
    • Configuration

Text Editor

  • Vim
    • Configuration
    • Modelines
    • Plugins

File Manager

  • Ranger
    • Configuration
    • Themes
    • Troubleshoot
    • Additional Packages
      • Atool (extract/compress)
      • w3w (image preview in terminal)
      • zfz (search)

Bookmark Manager

  • Buku
    • Usage

News

  • Haxor News
    • Usage
  • Reddit Terminal Viewer
    • Usage

IRC

  • Irssi
    • Configuration
    • Scripts
    • Usage

Video Player

  • Mplayer
    • Key Binds
    • Creating and Playing Playlists
    • Additional Options

Music Player

  • Cmus
    • Scripts
    • Usage
    • Tips and Tricks
      • Cava

Image Viewer

Feh is also used for displaying the Desktop Wallpaper

  • Feh

Additional Badass Software

  • Record My Desktop
  • MuPDF
  • Zim
  • Dropbox
  • Rednotebook



Eye Candy

Making the system pleasant on the eyes^

Theming

  • Lxappearance
  • Theme Collection (Or it will be hopefully)
    • Window Themes
    • Cursor Themes
    • Grub2

Fonts

I've made the decission not to use Infinality - I do miss those smooth fonts though..

  • Sweet Fonts
  • Configuration

Additional Sweetass Software

  • Compton
  • Redshift



Development

I do a little Web Development, so that is the main focus.

Version Control

  • Git
    • Usage
      • A Few Typical Examples

IDE

  • Sublime
    • Plugins

LAMP

  • Apache
  • PHP
  • MySQL
    • Adminer

Design

  • Gimp
    • Configuration



Gaming

Who doesn't like the opportunity, eh?!

Steam

  • Configuration

Game Specific Troubleshoot

  • Wasteland 2



SSH

For quick authentication and communication with your server(s) and services.

Server and Client

  • Client
    • Usage
    • Configuration
  • Server
    • Configuration
    • Key Authentication
    • Running the Daemon
    • Tips and Tricks

Keys

  • Quick Info
  • Generating Keys

Agent

  • Starting with Bash

Transfer via SSH

  • SCP
    • Usage
      • Basic Examples



Cryptography

We should all try to protect ourself in this modern age.

GPG

  • GnuPG
    • Setting Up
    • Signatures
    • Usage
    • Tips and Tricks

Currency

  • Monero
    • Wallet
      • Creating
      • Using
    • Mining



Analysis

Information is key!

Nmap

  • Usage
    • Evading Firewalls
    • Scripts

WireShark

  • Filters



Key Binds

This is the Throwback section. Here to remind you of some of the wonders your system can do.

Window Manager Binds

Binds for i3

  • System
    • Log out / Shutdown Options
    • Open Applications
    • HDMI Controls
  • Navigating
  • Scratchpad
  • Containers

Editor Binds

Binds and Commands for Vim

  • Command
    • Find and Replace
  • Normal
    • Formatting
    • Navigating
    • Folkds
    • Color Scheme
  • Visual
    • Selecting Text
    • Copying
    • Switch Case
    • Indent
  • Plugin Features

IDE Binds

Binds and Commands for Sublime

  • Smart Selecting
  • Smart Moving
  • Merging Lines
  • Sorting Aplhabetic
  • Browsing CSS
  • Toggle Spellcheck
  • Distraction Free Environment
  • Navigating Files, Classes or Linenumbers
  • Command
    • Syntax Highligh
    • Renaming
    • Snippet Examples
  • Plugin Features

Powers of the Terminal

Typical Terminal Usage and Extended Plugin Functionality

  • Resize Fonts
  • Vim-like Movements
  • Put to Background
  • Searching History
  • Opening Commands in the Editor
  • Clearing Text
  • Plugin Functionality
    • Base64 Encode/Decode
    • Quickly Add sudo To the Beginning of the Line
    • URL Encode/Decode
    • Open Search Engine from the Terminal

File Manager Binds

Binds and Commands for Ranger

  • Trash Management
  • Extraction
  • Compression
  • Tagging (metadata)
  • Changing Filename Output
  • Directory Flattening
  • Rename
  • Bulk Renaming
  • Quickly toggle replace with - in Filenames
  • Same goes with - and _
  • Navigating
  • Quick Navigation
  • Hidden Files
  • Searching
  • Tabs
  • Copying and Moving Files
  • Marking Files
  • Disk Usage for Current Directory