System Install - Noah-Huppert/.dotfiles GitHub Wiki
This page describes the steps necessary to setup a system from scratch
This page documents the steps necessary to install and setup my Dell XPS 13 (9350) with Arch Linux.
These steps condense and combine many different Arch Linux Wiki guides. Each section references the source material which the steps were derived from.
This section details the steps which must be taken before installation. Actions in the following section were sourced from the Arch Linux Wiki Installation Guide. Additionally some BIOS setup best practices were found on the Arch Wiki Dell XPS 13 (9350) wiki page.
First download and create an Arch installation ISO.
A few BIOS options must be tweaked to ensure Arch runs smoothly. These steps are generally useful for any device.
First boot into BIOS setup. On the Dell XPS 13 (9350) quickly tap the F2 key to enter BIOS setup. This can also been done via the F12 key, which will bring up a one time boot menu.
First disable the secure boot feature in your BIOS settings.
Set the SATA controller to AHCI
(Or off
if unavailable).
Then boot from the USB and perform the following actions.
Run wifi-menu
and input wifi network information. Wait 5 seconds, then run ping google.com
to see if we are connected to the internet.
Run timedatectl set-ntp true
. Check status with timedatectl status
.
This section contains instructions for preparing an encrypted disk. Complete these actions while still in the Arch ISO USB.
These actions were sourced from several Arch Linux Wiki pages:
List disks and partitions with fdisk -l
or lsblk -f
. Remember the /dev/sdXY
name of the partition, instructions will contain the placeholder value sdXY
.
Run cryptsetup open --type plain /dev/sdXY container --key-file /dev/random
to create a temporary dm-crypt container in our partition.
Erase the contents of this temporary dm-crypt container with dd if=/dev/zero of=/dev/mapper/container status=progress bs=1M
.
Close temporary container with cryptsetup close container
.
Create a new permanent dm-crypt luks container with cryptsetup -y -v luksFormat /dev/sdXY
.
Open the new container with cryptsetup open /dev/sdXY cryptroot
.
Make an ext4 partition inside the dm-crypt container with mkfs.ext4 /dev/mapper/cryptroot
.
Mount the dm-crypt container with mount /dev/mapper/cryptroot /mnt
Create a mount point in our root file system with mkdir /mnt/boot
.
Unmount our dm-crypt container with umount /mnt
and close the container with cryptsetup close cryptroot
.
Then to test if we set it up correctly open and mount the container again with cryptsetup open /dev/sdXY cryptroot
and mount /dev/mapper/cryptroot /mnt
.
Check that our boot directory is there with ls /mnt
.
Mount the boot partition with mount /dev/sdXZ /mnt/boot
. Where /dev/sdXZ
is your boot partition.
This section contains instructions on how to install the basic components of Arch linux.
Actions were sourced from the Arch Linux Wiki Installation Guide.
Edit the /etc/pacman.d/mirrorlist
file on the Arch ISO USB. This file is a list of all pacman package mirror servers, sorted by speed when the Arch ISO was created.
Reorganize it so the top 10 mirrors in your country are at the top despite what their score is.
With the command pacstrap /mnt base base-devel
.
If your boot partition already has a file named vmlinuz-linux
at the root, remove this file before running the command. As pacstrap will attempt to replace this file.
Generate an fstab file for the newly installed system with genfstab -U /mnt >> /mnt/etc/fstab
.
This section describes the actions needed to prep a system for independent boot.
Actions for this section were partially sourced from the Arch Linux Wiki Installation Guide.
With the command arch-chroot /mnt
.
Run all other commands from this section in this arch-chroot session.
With pacman -S neovim
.
Install the go code completion dependency GoCode with go get -u github.com/nsf/gocode
.
Install the neovim
Python package with sudo pip3 install neovim
.
Set root password with the command passwd
.
First create with useradd -m -G wheel -s /bin/bash <user>
.
Then set the user password with passwd <user>
.
Give the user sudoer power with by editing the sudoers file (With the command visudo
) to contain the entry:
<user> ALL=(ALL) ALL
With ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
.
So for me its ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime
right now.
Make sure the system clock is up to date with hwclock --systohc
.
Edit the /etc/locale.gen
file and uncomment the line that says en_US.UTF-8 UTF-8
.
Then run locale-gen
.
Then in /etc/locale.conf
set LANG=en_US.UTF-8
.
Set your hostname in /etc/hostname
.
Add your hostname to the /etc/hosts
file by adding an entry in the form:
127.0.1.1 hostname.localdomain hostname
Install the required packages with pacman -S connman wpa_supplicant bluez
. This installs the Connman connection manager, wifi wpa authentication support, and Bluetooth support.
Enable the connman service with systemctl enable connman.service
.
Edit the /etc/mkinitcpio.conf
file HOOKS
property to have these parameters needed for disk encryption:
HOOKS="... **keyboard keymap** block **encrypt** ... filesystems ..."
Be sure to remove the keyboard
item that is after the block
item by default.
Next edit the /etc/mkinitcpio.d/linux.preset
file to ensure both the initramfs and vmlinuz-linux files are put in the /boot
directory.
Generate the new initramfs via mkinitcpio -p linux
.
Look in the boot directory for a refind
directory: /boot/EFI/refind
.
Or a refind.conf
file: /boot/EFI/refind/refind.conf
. Or a refind_linux.conf
file: /boot/refind_linux.conf
.
If these files are missing the refind bootloader must be installed. Install the refind-efi
package and run refind-install
, more instructions here
Append partition uuid's to your refind.conf
file for easier editing: ls -l /dev/disk/by-uuid >> /boot/EFI/refind/refind.conf
.
Then edit /boot/EFI/refind/refind.conf
and comment out the uuid lines at the bottom from our last command. Take note of your system and boot partition's UUIDs on the list for later usage.
Adda boot stanza with this format:
menuentry "Arch Linux" {
icon /EFI/refind/icons/os_arch.png
volume "<Boot partition UUID>"
loader /vmlinuz-linux
initrd /initramfs-linux.img
options "cryptdevice=UUID=<System partition UUID>:cryptroot root=/dev/mapper/cryptroot rw add_efi_memmap"
submenuentry "Boot using fallback initramfs" {
initrd /initramfs-linux-fallback.img
}
submenuentry "Boot to terminal" {
add_options "systemd.unit=multi-user.target"
}
}
The cryptdevice
kernel option is necessary to decrypt the disk on startup.
The Linux Vendor Firmware Service (LVFS) is used to get the latest firmware updates. Installation and usage information was sourced from the fwupd repository.
Install the fwupd package with pacman -s fwupd
to access this functionality.
Use fwupdmgr
to update firmware. First list the devices it detects with fwupdmgr get-devices
.
Then download the latest LVFS metadata via fwupdmgr refresh
.
Display available updates to the system with fwupdmgr get-updates
.
Finally download and apply these updates with fwupdmgr update
. Some updates may require a reboot to take effect.
This sub section provides the steps necessary to tweak Arch Linux so it runs as smoothly as possible on the XPS 13.
Steps in this section were sourced from the Arch Wiki Dell XPS 13 (9350) wiki page.
With pacman -S intel-ucode
.
A few miscellaneous packages should be installed with pacman -S arch-install-scripts tree
.
- arch-install-scripts: Is installed to allow for the use of the
arch-chroot
command - tree: Is installed to allow for the use of the
tree
command
Exit the arch-chroot session with exit
.
Unmount with umount -R /mnt
.
Reboot with reboot
.
This section contains the steps necessary to setup a user account with wifi, a good console, editor, and wm.
Enable wifi with connmanctl enable wifi
.
Confirm enabled with connmanctl status
.
Scan for wifi with connmanctl scan wifi
.
List networks with connmanctl services
. Make note of the name of the service for your desired wifi network.
Run the next commands in the connman interactive shell, launch via connmanctl
.
Turn on auth agent with agent on
.
Connect to the network with connect <Service name>
.
Exit connman interactive shell with exit
.
Test wifi connectivity after 5 seconds with ping google.com
.
Install Git and OpenSSH (For key pairs) with pacman -S git openssh
.
Generate a key pair with ssh-keygen -t ed25519
. We will do more with this key pair later.
Install the GnuPG package with pacman -S gnupg
.
Generate a new key with gpg --full-gen-key --expert
. Use the following options:
- Make a
(9) ECC and ECC
key - Select
(1) Curve 25519
- Set key to expire in 1 year with
1y
- Provide name
- Provide primary email address
- Put a comment
- Typically I include identifiers such as
Primary
andSecure
separated by commas
- Typically I include identifiers such as
- Enter passphrase
Save calendar event with notification 2 weeks before, a week before, a day before, and 1 hour before about gpg key expiration.
If you would like to add more email addresses edit key in gpg interactive mode via gpg --edit-key <first email>
.
Enter the following commands into gpg interactive mode:
-
adduid
- Enter all the same information, except for with a new email address
-
quit
and save changes - We will configure git with this gpg key later
Finally generate a revocation key with gpg --output revoke.asc --gen-revoke <Key id>
. Where <Key id>
is any full or partial identifier for your gpg key, gpg is very flexible about what you put for this value (Ex., [email protected]
and noa
both work, or some part of my key id E3F
).
Take this revocation key and save it in a secure backup location.
Aura is an aur repository helper.
Make a bin
directory at $HOME/Documents/bin/
.
Go into this new directory and download aura with git clone https://aur.archlinux.org/aura-bin.git
.
Cd into aura-bin
directory, run makepkg -si
.
The aura
command will now be available, install aur packages with aura -A <Package name>
.
Install the zsh
package with pacman -S zsh
.
Make default shell with chsh -s $(which zsh)
.
Install TMux with the tmux package with pacman -S tmux
.
Install a shell completion package with aura -A tmux-bash-completion
Install zshconf with git clone https://github.com/Noah-Huppert/zshconf.git $HOME/Documents/bin/zshconf
.
Install Homeshick with git clone git://github.com/andsens/homeshick.git $HOME/.homesick/repos/homeshick
.
Download dotfiles with homeshick via homeshick clone https://github.com/Noah-Huppert/.dotfiles.git
.
Install Vim plugin manager Plug with curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
.
Edit the dotrc file to your content with dotrc-edit
and reload with zsh-reload
.
Install the scripts repository with git clone [email protected]:Noah-Huppert/scripts.git ~/Documents/bin/scripts
.
Follow the scripts instructions to setup the bklight
script. This will allow you to invoke the bklight
script without entering your password.
Install the private scripts repository with git clone [email protected]:Noah-Huppert/private-scripts.git
.
This is a separate set of utility scripts which contain private information such as email addresses.
Following the private scripts setup instructions.
With pacman -S xorg-server xorg-xinit xorg-xev
.
Xev is a nice little program which shows keycodes as they are entered. Use these codes in sxhkd configuration.
Download and copy this 30-touchpad.conf file into your /etc/X11/xorg.conf.d
.
Xrandr is a utility to help manage multiple desktops. Install the xrandr package with pacman -S xorg-xrandr
.
Run xrandr
with no arguments to list the displays available. One can determine the name of an external display port by running xrandr
before and after you plug in a cable.
To extend displays run xrandr --output <secondary display name> --{above,below,right-of,left-of} <primary display name>
.
To mirror displays run xrandr --output <secondary display name --same-as <primary display name>
Install the i3 package with pacman -S i3
.
Install Compton with pacman -S compoton
.
Instal Dmenu, a program launcher with pacman -S dmenu
.
Install i3lock with pacman -S i3lock
.
Install dunst with pacman -S dunst
.
Dunst is a notification manager, it displays notifications send with notify-send
.
Install xdo and xdotool, utilities used to modify xwindows with sudo -S xdo xdotool
.
Use a program called feh to set your desktop background. Install it with pacman -S feh
.
Set the background with feh --{bg-scale,bg-fill} /usr/share/pixmaps/filename.ext
.
Currently I am using this rock background.
Install java with pacman -S jre9-openjdk-headless jre9-openjdk jdk9-openjdk openjdk9-doc openjdk9-src
.
Install the ant build to with pacman -S apache-ant
.
Install kotlin with pacman -S kotlin
.
Install Robot, Noto, Source Code Pro, and Fira Mono with pacman -S ttf-roboto noto-fonts ttf-fira-mono adobe-source-code-pro-fonts
.
Install the Alacritty terminal emulator with aura -A alacritty-git
.
Install the pulseaudio package with pacman -S pulseaudio
.
Install a control panel with pacman -S pavucontrol
Install Google Chrome with aura -A google-chrome
.
Install Firefox with pacman -S firefox
.
Make Firefox the default web browser with xdg-settings set default-web-browser firefox.desktop
.
Don't install flash. If you must access a website that requires flash use another computer / os.
To enable the Yubikey to be used in Google Chrome install the libu2f-host package with pacman -S libu2f-host
.
This sub section describes how to publish your new SSH and GPG keys to the appropriate places.
On the computer you can add your key to the ssh-agent so you don't have to type your password as much with ssh-add ~/.ssh/id_ed25519
.
GitHub needs your new SSH key to allow you to pull from their server with the ssh Git protocol. It also allows you to input your GPG key to show that commits came from you.
Simply navigate to the GitHub Key Setting page and add the public forms of both keys.
The public SSH key will be located at ~/.ssh/id_ed25519.pub
.
Your public GPG key can be exported by typing gpg --armor --export <Key Id>
. Where <Key Id>
is the partial value of either the key signature or any of the key emails.
Install the mosh ssh client. This client deals with bad ssh connections. Allowing you to type while the connection goes out intermittently.
Install with pacman -S mosh
.
First install some dependencies with pacman -S fuse gtk2
. Then install the keybase client with aura -A keybase-bin
.
Remember to run run_keybase
any time you install or upgrade keybase.
Then run keybase login
and keybase pgp select
to login and import your public keys.
If you would like to revoke can old key then publish your revocation key to any key servers you published the original key to. For GitHub simply remove the key.
https://news.ycombinator.com/
For keybase.io click the "Edit > Revoke key" menu option and run the command it tells you to.
This sub section contains information about how to setup the environment for development.
Install the go package with pacman -S go
.
Then make the GOPATH directory with mkdir -p $HOME/Documents/workspace/go
.
After this run dotrc-edit
and change the following options:
-
DOTRC_GO
totrue
-
DOTRC_GOPATH
to$HOME/Documents/workspace/go
Then save the file and run zsh-reload
.
Several useful packages should be installed.
Install the Go dependency management tool with go get -u github.com/golang/dep/cmd/dep
.
Install goimports with go get golang.org/x/tools/cmd/goimports
.
Install go rename with go get golang.org/x/tools/refactor/rename
.
Install the go debugger Delve with go get github.com/derekparker/delve/cmd/dlv
.
Install htop with pacman -S htop
.
Install Scrot to take screenshots with pacman -S scrot
Install node and yarn with pacman -S yarn nodejs
.
Install the Heroku CLI with npm install -g heroku-cli
.
Install docker with pacman -S docker docker-compose
.
Then start and enable the docker.service with systemctl start docker.service
and systemctl enable docker.service
.
Add yourself to the docker group with gpasswd -a <User> docker
.
Ensure everything is working with docker info
.
A reboot may be required.
Install rkt with pacman -S rkt acbuild
.
Steps were partially sourced from the GRPC Go getting started guide.
Install GRPC by completing the following steps:
- Install Protobuffers tool with
pacman -S protobuf
- Install the Protobuffers Go library with
go get -u github.com/golang/protobuf/protoc-gen-go
- Install the GRPC Go library with
go get -u google.golang.org/grpc
Install Redis and the Redis CLI with pacman -S redis
.
Install the GCloud CLI with aura -A google-cloud-sdk
.
Then install kubectl with gcloud components install kubectl
.
Then install Helm with aura -A kubernetes-helm
.
Finally install Draft with aura -A draft
.
Install the Istio client.
First download the latest release:
curl -L https://git.io/getLatestIstio | sh -
Next move the Istio directory to /opt/istio
mv istio-* /opt/istio
The /opt/istio/bin
directory is already added to the path in the Zsh profile.
Install Linkerd by running:
curl -sL https://run.linkerd.io/install | sh
The Linkerd bin directory (~/.linkerd2
) is already added to the path in the Zsh profile.
Install zoom conference with aura -A zoom
Install signal with aura -A signal
.
Install the imagemagick package with pacman -S imagemagick
.
To convert from jpg to png run mogrify -format png /path/*.jpg
.
Install the cups package for printers: pacman -S cups
.
Then start and enable the org.cups.cupsd.service
service with systemctl {enable,start} org.cups.cupsd.service
.
Finally add your user to the sys
group so it can access CUPS settings with usermod -a -G sys <user>
.
You can then administer printers via the web ui.
Install LaTex with pacman -S texlive-most
.
Install the Screenfetch package with pacman -S screenfetch
.
Install the GNU Aspell checker with pacman -S aspell-en
.
This will download the aspell english dictionary and the aspell utility.
To install the Travis CI CLI you must first install ruby with pacman -S ruby
.
Next install the Travis CI CLI with gem install travis
.
Install the lastpass CLI with aura -A lastpass-cli
.
Install Python 2 Pip with pacman -S python2-pip
.
Install the Backblaze B2 CLI with pip2 install b2
.
Install the Spotify app with aura -A spotify
.
Install JQ, the json processor JQ with pacman -S jq
.
Install terraform with pacman -S terraform
.
Install the Slack desktop app with aura -A slack-desktop
.
Install Foxit Reader, a PDF viewer, with aura -A foxitreader
.
Make FoxItReader the default pdf viewer with: xdg-mime default foxitreader.desktop application/pdf
.
Install the tldr help tool with: aura -A tldr-git
.
Install the go debugger with go get github.com/mailgun/godebug
.
To develop Android apps a couple steps must be completed. All of which where taken from the Android Arch Wiki Page.
- Enable pacman multilib repository:
Edit the
/etc/pacman.conf
and uncomment the[multilib]
line, and the line following - Install the Android packafges with
aura -A android-platform android-sdk android-sdk-platform-tools android-sdk-build-tools android-support android-support-repository android-ndk android-emulator
- Create an sdk user linux group with
groupadd sdkusers
- Add your current user to this group with
gpasswd -a <user> sdkusers
- Give the sdkusers group access to the Android sdk with:
chown -R :sdkusers /opt/android-sdk/ chmod -R g+w /opt/android-sdk/
- Re login to get the new user group permissions with
newgrp sdkusers
- Add udev rules for Android devices with
pacman -S android-udev
- Install Android Studio with
aura -A android-studio
.
Install Intellij idea with aura -A intellij-idea-ultimate-edition
.
Install DataGrips, a database browser with aura -A datagrips
.
Install CLion with aura -A clion
.
Install NTFS file system support so you can access USBs: pacman -S ntfs-3g
.
Install wget with pacman -S wget
.
Install the Record My Desktop screen recorder with: pacman -S recordmydesktop
.
Install the mencoder application, used for video encoding, via pacman -S mencoder
.
Install Sqitch, an SQL database migration tool, with aura -A perl-app-sqitch
.
Install the Postgres CLI pgcli with aura -A pgcli
.
Install the thunar file manager with pacman -S thunar
.
Install python virtual env with: pacman -S python-virtualenv
.
To use VirtualEnv create a directory for the virtual environment. Then create the virtual environment with virtualenv <dir>
.
Create a virtual environment for Jupyter with virtualenv and complete the following:
Install Juypter notebook with: pip install jupyter jupyterlab
.
Next start it with jupyter lab
.
Install a spell check extension for Jupyter lab:
sudo jupyter labextension install @ijmbarr/jupyterlab_spellchecker
Install the Jupyter Bash kernel with:
pip install bash_kernel
python -m bash_kernel.install
Install the r
package with pacman -S r tk gcc-fortran
.
The tk
and gcc-fortran
packages are needed by R to install packages.
Next install the Jupyter Kernel by running the following in the R console:
$ R
install.packages(c('repr', 'IRdisplay', 'evaluate', 'crayon', 'pbdZMQ', 'devtools', 'uuid', 'digest', 'igraph'), repos = "http://cran.us.r-project.org")
devtools::install_github('IRkernel/IRkernel')
IRkernel::installspec()
Install Octave by running pacman -S octave
.
Install the Octave kernel by running:
pip install octave_kernel
ipython console --kernel octave
This installs the R Kernel dependencies. Along with the igraph
library. To create nice graphs in R.
Install the client & server with pacman -S geth
.
Install the compiler with pacman -S solidity
.
Install Steam with pacman -S steam
.
Install Discord with aura -A discord
.
Install lxappearance for gtk theme management with pacman -S lxappearance
.
Install NCDU a disk usage visualizer with pacman -S ncdu
.
Install The Drone CLI with aura -A drone-cli
.
Install the ttf-ms-fonts
package with aura -A ttf-ms-fonts
.
Install the the KSP mod manager CKan with aura -A ckan
.
Install ltunify, a untility to connect to wireless mice, with aura -A ltunify-git
.
Instructions sourced from the wireless mice Arch linux wiki page.
To connect to a wireless mouse run ltunify pair
.
Install Resillio Sync with aura -A rslsync
.
The following steps were sourced from the Resillio Sync Wiki Page.
Create the storage directory by running mkdir ~/Documents/sync
.
Make sure to edit the configuration in ~/.config/rslsync/rslsync.conf
.
You might want to change the following parameters:
device_name
storage_path
webui/login
webui/password
Then enable and start the rslsync.service
systemctl unit with systemctl enable rslsync.service
and systemctl start rslsync.service
.
Install Duplicity to backup your files with pacman -S duplicity
.
You can then backup your files with duplicity <source> <target>
.
Where the source files are the files you wish to backup. And the target is were you want to back them up to.
To use duplicity with Backblaze B2 type duplicity <source> b2://<account id>:<application key>@<bucket name>/<path>
.
Install the DNS Utils package to gain access to tools such as Dig with: pacman -S dnsutils
.
Install the DigitalOcean command line interface with aura -A doctl-bin
.
Doxygen for documentation generation with pacman -S doxygen
.
Install HTTPie, a sane http cli client with pacman -S httpie
.
Allows one to make HTTP requests like so http METHOD URL datakey=datavalue datakey2=datavalue2
.
Install RoboMongo, a MongoDB UI, with aura -S robomongo
.
Weechat is a terminal chat application.
Install it with pacman -S weechat
.
Bitlbee is local IRC server that provides numerous extra useful features. It can be used with Weechat.
Install it with pacman -S libotr bitlbee
.
Then enable and start the bitlbee service:
systemctl enable bitlbee
systemctl start bitlbee
systemctl status bitlbee
Install the Bitlbee Facebook extension, which allows you to use Facebook Messenger over IRC.
Install with aura -A bitlbee-facebook
.
Install mongodb with pacman -S mongodb mongodb-tools
.
Install redis with pacman -S redis
.
From this Arch linux page.
Add a file named /etc/udev/rules.d/70-persistent-net.rules
with the contents:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="Your Mac Address", ATTR{dev_id}=="0x0", ATTR{type}=="1", NAME="wlan0"
Make sure the ATTR(address)
value is the MAC address of your wireless interface. You can find this in the ip link show
output.
Steps sourced from this blog post
Install dosfstools
to get access to the mkfs.vfat
utility, which will be used to format Raspberry PI SD cards.
With the command pacman -S dosfstools
.
Install the GNU debugger tools with pacman -S gdb
.
Install the whois utility to retrieve information about a domain: pacman -S whois
.
Install the AWS cli via: pip install awscli
.
Next run aws configure
and enter your account information.
Install the Flutter mobile development framework with aura -A flutter
.
Then create a Flutter user group so normal users can access the Flutter directory:
sudo groupadd flutterusers
sudo gpasswd -a <user> flutterusers
sudo chown -R :flutterusers /opt/flutter
sudo chmod -R g+w /opt/flutter
Then to login to this group in your terminal: newgrp flutterusers
.
Install the Wire Guard VPN by running: pacman -S wireguard-tools linux-header wireguard-arch
.
Install Inotify Tools to run commands when files change with pacman -S inotify-tools
.
Install the Dart programming language by running aura -A dart-sdk-dev
.
Then install Dart web development tools by running:
pub global activate webdev
pub global activate stagehand
The 2 commands above were sources from the Dart Webdev getting started guide.
Install the Apache tools package: aura -A apache-tools
.
This will give you access to ab
, Apache's load tool.
Install Netcat: pacman -S gnu-netcat
Install Vagrant: pacman -S vagrant
Install Rust: pacman -S rustup
.
Then run:
rustup update
rustup install stable
rustup default stable
Install subversion: pacman -S subversion
.
Install network map: pacman -S nmap
.
Install lnav with: aura -A lnav
.
Install expect with: pacman -S expect
.
Install jp by running:
go get github.com/jmespath/jp
go install github.com/jmespath/jp
Steps sourced from DJVU Arch Linux Wiki Page.
Install djvu file tools: pacman -S djvulibre
Use the ddjvu
tool to convert djvu
files to PDFs:
ddjvu --format=pdf inputfile.djvu ouputfile.pdf
Install blender: pacman -S blender
.
This section describes how to setup the Arch Linux environment to look pleasing.
To easily view font glyphs install the xdf tool with pacman -S xorg-xfd
.
Install the Hack Font with pacman -S ttf-hack
.
Install wireless_tools, so polybar can get wifi information, with pacman -S wireless_tools
.
Install polybar with aura -A polybar-git
.
Install the Font Awesome font with aura -A ttf-font-awesome
.
Install the Material Icons Font with aura -A ttf-material-icons
.
Install the Siji font with aura -A siji-git
.
Install the Nerd Font pack with aura -A nerd-fonts-complete
.