Arch Guide 2020
Covers Installation, Configuration and beyond.
Written by Adam Jones, Sources: Experience and from the Arch Linux Website
Initially written 2020 during lockdown.
Table of Contents
Optional Install Script
Boot the Live Environment
Set the Keyboard Layout
Verify the Boot Mode
Connect to the Internet
Setup Wi-FI
Update the System clock
Example Layouts
BIOS with MBR
UEFI BIOS With GPT
Creating Partitions
Create New Table
Create Partitions
Set Partition Type
!!! Write Changes to Disk !!!
Format the Partitions
Mount the File Systems
Select the Mirrors
Install Essential Packages
Fstab
Chroot
Timezone
Set Localization
Network Configuration
Initramfs
Root Password
Create User & Enable Sudo
Additional Changes
Enable Multilib
Optimise Mirrors
Base Packages
Kernel
Essential
SCSI
File System
File System Optional
CPU
Bootloader
CLI Text Editors
Additional Packages
System Utilities
Networking
General
Wi-Fi
Bluetooth
Video
General
Nvidia
AMD
Sound
Printing
Xorg
Xorg Apps
Fonts
Display Managers
GDM
LightDM
LXDM
SSDM
XDM
Desktop Environments
Budgie
Cinnamon
Deepin
Gnome
KDE Plasma
MATE
XFCE
Applications
System
Office
Internet
Multimedia
Codecs
Photo / Image Editing
Misc
Boot Loader
MBR
UEFI
Microcode
GRUB
rEFInd
Reboot
Internet access
Basic Config
Enable Services
Lightdm Login Manager Configuration
Aether Theme Installation
Enable Numlock On at Boot
Yay
Themes & Icons
Plank
Grub Themes
Additional AUR Apps
Gaming
Steam
Lutris
Enable Root File Manager
Cinnamon Menu Fonts
Cannot Access SMB Shares
gpg keyserver receive failed general error
Cinnamon Hi-DPI Not Working Fully
Add Shares to FStab
Timeshift Issues
Resolution issues
Nautilus or Nemo Missing Image Previews
Audio Delay
Identify USB Devices in use
“No object for D-Bus interface” When trying to access other partition
Possibly missing firmware for module: aic94xx/wd719x
Identify Boot Delays
Unable to mount from fstab at boot (Dependencies Failed)
Package Groups
base-devel
xorg
xorg-apps
xorg-drivers
gnome
gnome-extra
deepin
deepin-extra
plasma
kde-applications
mate
mate-extra
xfce4
xfce4-goodies
SystemD
Listing Services
Logging
Identify Boot Delays
Crash Investigation
CLI Extras
Password Astrisk
Export Man Pages to HTML
Introduction
About Arch Linux
Initial Setup
Before Proceeding, make sure you have the necessary information and any data currently on the system is fully backed up, this means backed up on either removable media or cloud storage. This should be standard practice however beyond this point any data stored locally is at risk, you have been warned! (I will not be liable for any data loss)
First you need to obtain the latest ISO from the: Arch Linux Website
Now you can either burn this to CD/DVD (If your still using Optical media), Flash it to a USB drive or if your using a virtual machine mount the ISO, information on how to do this can be found on the Arch Linux Wiki or a quick search. I personally use the application Balena Etch which can be installed on Linux, Mac or Windows.
Before proceeding, its also worth having access to the Arch Linux Wiki this is an amazing resource and is considered the best wiki amoungst the Linux community.
Optional Install Script
Archfi Install Script
Just a simple bash script wizard to install Arch Linux after you have booted on the official Arch Linux install media.
With this script, you can install Arch Linux with two simple terminal commands.
This wizard is made to install minimum packages (Base, bootloader and optionally archdi).
At the end of this wizard, you can install or launch archdi (Arch Linux Desktop Install) to install and configure desktop packages.
IMPORTANT
Ensure you have Network Connectivity before proceeding,jump to Connect to the Internet
First, boot with the last Arch Linux image with a bootable device.
Then make sure you have Internet connection on the Arch iso. If you have a wireless connection the wifi-menu command might be useful to you. You can also read the Network configuration from the Arch Linux guide for more detailed instructions.
Then download the script with from the command line:
wget archfi.sf.net/archfi
If SourceForge is down, use this instead:
wget matmoul.github.io/archfi
Finally, launch the script:
sh archfi
Then follow the on-screen instructions to completion.
If you require extra help, visit the provided video playlist and follow my example.
Boot the Live Environment
The live environment can be booted from a USB flash drive, an optical disc or a network with PXE. For alternative means of installation, see:
Setup SSH if Installing Remotely
- Check to see if your online with
ip a
find the relevant adaptor and make a note of the IP, if nothing is there continue on the machine itself.- Set the sudo password with
passwd
- Enable SSH with `systemctl start sshd.service
- Now connect from your other machine.
Set the Keyboard Layout
The default console keymap is US. Available layouts can be listed with:
ls /usr/share/kbd/keymaps/**/*.map.gz
Alternatively for a better view use:
ls /usr/share/kbd/keymaps/**/*.map.gz | less
As the keyboard is US by default |
will be on the key Shift + #
The default UK layout is uk.map.gz
To modify the layout, append a corresponding file name to loadkeys(1), omitting path and file extension. For example:
loadkeys uk
Console fonts are located in /usr/share/kbd/consolefonts/
and can likewise be set with setfont(8)
.
This is temporary for the installation, we can make it permanent by running the following command:
echo KEYMAP=uk > /etc/vconsole.conf
Verify the Boot Mode
If UEFI mode is enabled on an UEFI motherboard, Archiso will boot Arch Linux accordingly via systemd-boot. To verify this, list the efivars directory:
ls /sys/firmware/efi/efivars
If the directory does not exist, the system may be booted in BIOS or CSM mode. Refer to your motherboard's manual for details.
Connect to the Internet
To check if the driver for your card has been loaded, check the output of the lspci -k
or lsusb -v
command, depending on if the card is connected by PCI(e) or USB.
Ensure your Network Interface is listed and enabled, for example with ip-link.
ip link
Connect to the network and Plug in the Ethernet cable or connect to the wireless LAN.
Configure your network connection:
Note: The installation image enables dhcpcd (dhcpcd@interface.service) for wired network devices on boot.
Important: To use DHCP you need a DHCP server in your network and a DHCP client, you need to install one of the following:
dhcpcd Package: dhcpcd Archiso:Yes Note: DHCP, DHCPv6, ZeroConf, static IP Systemd Units: dhcpcd.service, dhcpcd@interface.service
ISC dhclient Package:dhclient Archiso:Yes Note: DHCP, DHCPv6, BOOTP, static IP Systemd Units: dhclient@interface.service
The connection may be verified with ping:
ping archlinux.org
Setup Wi-FI
- Check Driver
To check if the driver for your card has been loaded, check the output of the lspci -k
or lsusb -v
command, depending on if the card is connected by PCI(e) or USB.
- Get the name of the interface
iw dev
The name of the interface will be output after the word "Interface". For example, it is commonly wlan0.
- Get the status of the interface
To check link status, use following command.
iw dev interface link
- If set to UP, Change to DOWN.
ip link set interface down
- Run the setup tool.
wifi-menu
- Ping Test
If
wifi-menu
fails, then disable dhcpcd viasystemctl stop dhcpcd
andsystemctl disable dhcpcd
and also set the adaptor to down, for exampleip link set wlan0 down
and then re-run thewifi-menu
command
ping www.google.co.uk
ctrl-C
(Cancel)
Arch Linux Wireless Configuration Page
Update the System clock
Use timedatectl(1)
to ensure the system clock is accurate.
timedatectl set-ntp true
To check the service status, use timedatectl status`.
Disk Setup
When recognized by the live system, disks are assigned to a block device such as /dev/sda
or /dev/nvme0n1
. To identify these devices, use lsblk
or fdisk
.
fdisk -l
Results ending in rom
, loop
or airoot
may be ignored.
The following partitions are required for a chosen device:
- One partition for the root directory /.
- If UEFI is enabled, an EFI system partition.
Example Layouts
Partition Layouts Examples Page
BIOS With MBR
Mount Point | Partition | Partition Type | Suggested Size |
---|---|---|---|
/mnt |
/dev/sdX1 |
Linux | Remainder of device |
[SWAP] |
/dev/sdX2 |
Linux Swap | More than 512Mib |
UEFI BIOS With GPT
Mount Point | Partition | Partition Type | Suggested Size |
---|---|---|---|
/mnt/boot or /mnt/efi |
/dev/sdX1 |
EFI System Partition | 260-512 Mib |
/mnt |
/dev/sdX2 |
Linux x86-64 root (/) | Remainder of device |
[SWAP] |
/dev/sdX3 |
Linux Swap | More than 512Mib |
Note: if your on a system that already has an efi partition (Duel Booting) then leave that along, you can use that partition for the bootloader if needed, setting up
grub
and usingos-prober
will find any other operating systems.
Use fdisk
or parted
to modify partition tables, for example fdisk /dev/sdX
.
>You can also use `cfdisk` which a more user friendly experience and you will need to setup the partitions as above tables, again ensuring you change type of each partition and writing them to disk before exiting.
Creating Partitions
To list partition tables and partitions on a device, you can run fdisk, where device is a name like dev/sda
.
fdisk -l /dev/sda
Note: If the device is not specified, fdisk will list all partitions in /proc/partitions.
The first step to partitioning a disk is making a partition table. After that, the actual partitions are created according to the desired partition scheme. See the partition table article to help decide whether to use MBR or GPT.
Before beginning, you may wish to backup your current partition table and scheme.
Start fdisk against your drive as root. In this example we are using ``/dev/sda`:
fdisk /dev/sda
This opens the fdisk dialogue where you can type in commands.
Create New Table
To create a new partition table and clear all current partition data type o at the prompt for a MBR partition table or g for a GUID Partition Table (GPT). Skip this step if the table you require has already been created.
Create Partitions
Create a new partition with the n command. You enter a partition type, partition number, starting sector, and an ending sector.
When prompted, specify the partition type, type p to create a primary partition or e to create an extended one. There may be up to four primary partitions.
The first sector must be specified in absolute terms using sector numbers. The last sector can be specified using the absolute position in sectors or using the + symbol to specify a position relative to the start sector measured in sectors, kibibytes (K), mebibytes (M), gibibytes (G), tebibytes (T), or pebibytes (P); for instance, setting +2G as the last sector will specify a point 2GiB after the start sector. Pressing the Enter key with no input specifies the default value, which is the start of the largest available block for the start sector and the end of the same block for the end sector.
Set Partition Type
Select the partition's type id. The default, Linux filesystem, should be fine for most use. Press l to show the codes list. You can make the partition bootable by typing a.
!!! Write Changes to Disk !!!
Write the table to disk and exit via the w command.
Additional
Warning: Partitions can only be moved while offline. Because moving a partition requires the whole partition to be rewritten on disk, it is a slow and potentially hazardous operation. Backups are strongly recommended! According to the sfdisk man page, "this operation is risky and not atomic."
Format the Partitions
Once the partitions have been created, each must be formatted with an appropriate file system. For example, if the root partition is on /dev/sdX1 and will contain the ext4 file system, run:
mkfs.ext4 /dev/sdX1
If you created a partition for swap, initialize it with mkswap:
mkswap /dev/sdX2
swapon /dev/sdX2
For EFI partitions run the following:
mkfs.fat -F32 /dev/sdxY
If you get the message WARNING: Not enough clusters for a 32 bit FAT!, reduce cluster size with ``mkfs.fat -s2 -F32 ... or -
s1;` otherwise the partition may be unreadable by UEFI. See mkfs.fat(8) for supported cluster sizes.
Mount the File Systems
Mount the file system on the root partition to /mnt, for example:
mount /dev/sdX1 /mnt
Create any remaining mount points (such as /mnt/efi
) and mount their corresponding partitions, swap partitions do not need to be mounted.
mount /dev/sdX1 /mnt/efi
Or you can mount it to boot as per below, but make sure you remember where you mounted it, this will be needed for the bootloader config later.
mount /dev/sdX1 /mnt/boot/efi
Boot Mount Points (For dual Booting)
If Arch's filesystem layout only places grubx64.efi (and possibly the GRUB2 configuration file) to the EFI partition, 100 MB is fine.
But if your layout mounts the EFI partition as /boot (rather than /boot/efi) or otherwise causes the entire kernel + initramfs files to be placed in there, you might run out of space with more than just one or two kernel versions installed. That is going to make kernel updates unnecessarily risky.
You'll always want to have at least two kernels installed: the one you're currently using, and the previous one as a known good back-up. When you are installing a new kernel, that means you'll end up temporarily with three kernels installed: the old, the current and the new one.
If you are brave, you can always delete the old kernel (+ its initramfs file) just before installing a new kernel, but in a production system I would not like to do that.
EFI Notes
- /efi is a replacement[6] for the previously popular (and possibly still used by other Linux distributions) ESP mountpoint /boot/efi.
- The /efi directory is not available by default, you will need to first create it with mkdir(1) before mounting the ESP to it.
mkdir /efi
ormkdir -p /mnt/boot/efi
(-p
will create any parent folders if not already created)
Installation
Select the Mirrors
Packages to be installed must be downloaded from mirror servers, which are defined in /etc/pacman.d/mirrorlist. On the live system, all mirrors are enabled, and sorted by their synchronization status and speed at the time the installation image was created.
The higher a mirror is placed in the list, the more priority it is given when downloading a package. You may want to edit the file accordingly, and move the geographically closest mirrors to the top of the list, although other criteria should be taken into account.
This file will later be copied to the new system by pacstrap, so it is worth getting right.
Install Essential Packages
Error: failed retrieving file ‘core.db’
Prior to installing, ensure mirrors are correct by running: pacman -Syyu
but do not update as your still on the live system
Use the pacstrap script to install the base package, Linux kernel and firmware for common hardware:
pacstrap /mnt base linux linux-firmware
For a complete overview of system software, go to the software section here: Software Installation
IMPORTANT Make sure you install a DHCP server, ie.
NetworkManager
and its also worth installingsudo
to help further on with user creation.
Configure the System
Fstab
Generate an fstab file (use -U or -L to define by UUID or labels, respectively):
genfstab -U /mnt >> /mnt/etc/fstab
Check the resulting /mnt/etc/fstab file, and edit it in case of errors.
Chroot
Change root into the new system with chroot:
arch-chroot /mnt
Timezone
Identify your timezone with:
timedatectl list-timezones | less
For example: Europe/London
Set the time zone:
ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
Run hwclock(8) to generate /etc/adjtime:
hwclock --systohc
This command assumes the hardware clock is set to UTC. See System time#Time standard for details.
Set Localization
Generate the locales by running:
locale-gen
Now edit /etc/locale.gen
and uncomment en_GB.UTF-8
UTF-8
and other needed locales.
nano /etc/locale.gen
Uncomment the below or whichever applies:
LANG=en_GB.UTF-8
Alternativly run:
echo en_GB.UTF-8 UTF-8 >> /etc/locale.gen
Create the locale.conf(5) file, and set the LANG variable accordingly:
nano /etc/locale.conf
Add the following:
LANG=en_GB.UTF-8
Alternativly run:
echo LANG=en_GB.UTF-8 > /etc/locale.conf
Then export the localeexport LANG=en_GB.UTF-8
If you didn't set them permenantly before you can set the keyboard layout now by adding the following to vconsole.conf
nano /etc/vconsole.conf
Add the following:
KEYMAP=uk
Alternativly run:
echo KEYMAP=uk > /etc/vconsole.conf
Network Configuration
Create the hostname file:
/etc/hostname
myhostname
Alternativly run:
echo hostname > /etc/hostname
Add matching entries to hosts(5):
nano /etc/hosts
/etc/ | |||
---|---|---|---|
127.0.0.1 | localhost | ||
::1 | localhost | ||
127.0.1.1 | myhostname.localdomain | myhostname |
If the system has a permanent IP address, it should be used instead of 127.0.1.1.
Complete the network configuration for the newly installed environment, that includes installing your preferred network management software.
Initramfs
Creating a new initramfs is usually not required, because mkinitcpio was run on installation of the kernel package with pacstrap.
For LVM, system encryption or RAID, modify mkinitcpio.conf(5) and recreate the initramfs image:
mkinitcpio -P
Run it to make sure the kernel has been installed prope Enable Multilib
Optimise Mirrors rly
Root Password
Set the root password:
passwd
Create User & Enable Sudo
First install sudo
and vim
to allow us to edit the sudoers file
pacman -S vim sudo
Now we run
visudo
Uncomment the wheel group, this allows all users in the wheel group to run all commands.
%wheel ALL=(ALL) ALL
Add a user for a typical desktop system, eg: user that takes advantage of teh GUI desktop managers. /bin/bash specifies their login shell.
useradd -m -G wheel -s /bin/bash userOne
Additional Change login name:
usermod -l newname oldname
Change Home directory: ``usermod -d /new/home/dir -m user0neAdding system user:
useradd -r -s /usr/bin/nologin user0ne`
Additional Changes
Enable MultiLib
To enable multilib repository, uncomment the [multilib]
section in ``/etc/pacman.conf`:
sudo nano /etc/pacman.conf
/etc/pacman.conf
[multilib]
Include = /etc/pacman.d/mirrorlist
Now do an update via: pacman -Syy
Optimise Mirrors
This applies if reflector
was installed just run the below command and change the country name if required.
reflector --country 'United Kingdom' --age 24 --protocol https --sort rate --save /etc/pacman.d/mirrorlist
This will ensure you have the fastest mirrors possible.
Software Installation
Back to Installation
Back to Table of Contents
Base Packages
Install these prior to rebooting into live system with pacstrap /mnt
for example:
pacstrap /mnt base linux linux-firmware
Kernel
Standard
Vanilla Linux kernel and modules, with a few patches applied.
Name | Description |
---|---|
linux |
The Linux kernel and modules |
linux-docs |
Documentation for the Linux kernel |
linux-headers |
Headers and scripts for building modules for the Linux kernel |
LTS
Long-term support (LTS) Linux kernel and modules.
Name | Description |
---|---|
linux-lts |
The LTS Linux kernel and modules |
linux-lts-docs |
Documentation for the LTS Linux kernel |
linux-lts-headers |
Documentation for the LTS Linux kernel |
nvidia-lts |
NVIDIA drivers for linux-lts |
Zen
Result of a collaborative effort of kernel hackers to provide the best Linux kernel possible for everyday systems. Some more details can be found on https://liquorix.net (which provides kernel binaries based on Zen for Debian).
Name | Description |
---|---|
linux-zen |
The Linux ZEN kernel and modules |
linux-zen-docs |
Documentation for the Linux ZEN kernel |
linux-zen-headers |
Headers and scripts for building modules for the Linux ZEN kernel |
Hardened
A security-focused Linux kernel applying a set of hardening patches to mitigate kernel and userspace exploits. It also enables more upstream kernel hardening features than linux.
Name | Description |
---|---|
linux-hardened |
The Security-Hardened Linux kernel and modules |
linux-hardened-docs |
Documentation for the Security-Hardened Linux kernel |
linux-hardened-headers |
Headers and scripts for building modules for the Security-Hardened Linux kernel |
Essential
These are required no matter what, ignore any of these and your system may not boot properly.
Please decide on one of the linux kernals in bold as to how you want your system setup, ie more stable, etc.
Name | Description | Enable Service |
---|---|---|
base |
Minimal package set to define a basic Arch Linux installation. | N |
linux-firmware |
Firmware files for Linux. | N |
linux-headers |
Headers and scripts for building modules for the Linux kernel. | N |
dkms |
Dynamic Kernel Modules System. | N |
pacman-contrib |
Contributed scripts and tools for pacman systems. | N |
base-devel |
Core Linux Utilities, see base-devel for details. | N |
git |
the fast distributed version control system. | N |
sudo |
Give certain users the ability to run some commands as root. | N |
networkmanager |
Network connection manager and user applications. | Y |
usbutils |
USB Device Utilities. | N |
pciutils |
PCI bus configuration space access library and tools. | N |
pkgfile |
a pacman .files metadata explorer. | N |
diffutils |
Utility programs used for creating patch files. | N |
logrotate |
Rotates system logs automatically. | N |
smartmontools |
Control and monitor S.M.A.R.T. enabled ATA and SCSI Hard Drives. | N |
dialog |
A tool to display dialog boxes from shell scripts. | N |
SCSI
Name | Description | Enable Service |
---|---|---|
lsscsi |
A tool that lists devices connected via SCSI and its transports. | N |
hdparm |
A shell utility for manipulating Linux IDE drive/driver parameters. | N |
sdparm |
A utility similar to hdparm but for SCSI devices. | N |
sg3_util |
Generic SCSI utilities. | N |
File System
Name | Description | Enable Service |
---|---|---|
fuse2 |
A library that makes it possible to implement a filesystem in a userspace program. | N |
fuse3 |
A library that makes it possible to implement a filesystem in a userspace program. | N |
ntfs-3g |
NTFS filesystem driver and utilities. | N |
exfat-utils |
Utilities for exFAT file system. | N |
exfatprogs |
exFAT filesystem userspace utilities for the Linux Kernel exfat driver. | N |
gvfs |
Virtual filesystem implementation for GIO. | N |
gvfs-smb |
Virtual filesystem implementation for GIO (SMB/CIFS backend; Windows client). | N |
gvfs-afc |
Virtual filesystem implementation for GIO (AFC backend; Apple mobile devices). | N |
gvfs-goa |
Virtual filesystem implementation for GIO (Gnome Online Accounts backend; cloud storage). | N |
gvfs-gphoto2 |
Virtual filesystem implementation for GIO (Gnome Online Accounts backend; cloud storage). | N |
gvfs-google |
Virtual filesystem implementation for GIO (Google Drive backend). | N |
gvfs-mtp |
Virtual filesystem implementation for GIO (MTP backend; Android, media player). | N |
gvfs-nfs |
Virtual filesystem implementation for GIO (NFS backend). | N |
nfs-utils |
Support programs for Network File Systems. | N |
dosfstools |
DOS filesystem utilities. | N |
findutils |
GNU utilities to locate files. | N |
mlocate |
Merging locate/updatedb implementation. | N |
File System Optional
Name | Description | Enable Service |
---|---|---|
btrfs-progs |
Btrfs filesystem utilities. | N |
xfsprogs |
XFS filesystem utilities. | N |
f2fs-tools |
Tools for Flash-Friendly File System (F2FS). | N |
jfsutils |
JFS filesystem utilities. | N |
reiserfsprogs |
library for accessing and manipulating reiserfs partitions. | N |
lvm2 |
Logical Volume Manager 2 utilities. | N |
dmraid |
Device mapper RAID interface. | N |
mdadm |
A tool for managing/monitoring Linux md device arrays, also known as Software RAID . | N |
CPU
Name | Description | Enable Service |
---|---|---|
amd-ucode |
Microcode update image for AMD CPUs. | N |
intel-ucode |
Microcode update files for Intel CPUs. | N |
Bootloaous kernel (when you arder
Choose either Grub or Refind.
Name | Description | Enable Service |
---|---|---|
grub |
GNU GRand Unified Bootloader (2). | N |
refind |
An EFI boot manager . | N |
os-prober |
Utility to detect other OSes on a set of drives. | N |
efibootmgr |
Linux user-space application to modify the EFI Boot Manager. | N |
CLI Text Editors
Name | Description | Enable Service |
---|---|---|
less |
A terminal based program for viewing text files. | N |
nano |
Pico editor clone with enhancements. | N |
vim |
Vi Improved, a highly configurable, improved version of the vi text editor. | N |
vi |
The original ex/vi text editor. | N |
Set default with export EDITOR=(PACKAGE)
Back to Installation
Back to Table of Contents
Additional Packages
The base package does not include all tools from the live installation, so installing other packages may be necessary for a fully functional base system. In particular, consider installing:
System Utilities
Name | Description | Enable Service |
---|---|---|
openssh |
Premier connectivity tool for remote login with the SSH protocol. | Y |
cronie |
Daemon that runs specified programs at scheduled times and related tools. | Y |
xdg-user-dirs |
Manage user directories like ~/Desktop and ~/Music. | Y |
haveged |
Entropy harvesting daemon using CPU timings. | Y |
bash-completion |
Programmable completion for the bash shell. | N |
man-db |
A utility for reading man pages | N |
man-pages |
Linux man pages. | N |
texinfo |
GNU documentation system for on-line information and printed output. | N |
lsb-release |
LSB version query program. | N |
polkit |
Application development toolkit for controlling system-wide privileges. | N |
unrar |
The RAR uncompression program. | N |
zip |
Compressor/archiver for creating and modifying zipfiles. | N |
unzip |
For extracting and viewing files in .zip archives | N |
p7zip |
Command-line file archiver with high compression ratio. | N |
unace |
An extraction tool for the proprietary ace archive format. | N |
xz |
Library and command line tools for XZ and LZMA compressed files. | N |
lzop |
File compressor using lzo lib. | N |
bashtop |
Linux resource monitor | N |
htop |
Linux resource monitor | N |
neofetch |
A CLI system information tool written in BASH that supports displaying images. | N |
ncdu |
Disk usage analyzer with an ncurses interface. | N |
mc |
Midnight Commander a CLI File Manager | N |
nmon |
AIX & Linux Performance Monitoring tool | N |
archiso |
Tools for creating Arch Linux live and install iso images. | N |
perl |
A highly capable, feature-rich programming language | N |
python |
Next generation of the python high-level scripting language | N |
xf86-input-synaptics |
Synaptics driver for notebook touchpads. | N |
ddrescue |
GNU data recovery tool. | N |
dd_rescue |
A dd version that is very useful for data-recovery. | N |
testdisk |
Checks and undeletes partitions + PhotoRec, signature based recovery tool. | N |
hardinfo |
A system information and benchmark tool. | N |
hwinfo |
Hardware detection tool from openSUSE. | N |
Networking
General
Name | Description | Enable Service |
---|---|---|
network-manager-applet |
Applet for managing network connections | N |
net-snmp |
A suite of applications used to implement SNMP v1, SNMP v2c and SNMP v3 using both IPv4 and IPv6. | N |
samba |
SMB Fileserver and AD Domain server. | N |
smbnetfs |
small C program that mounts Microsoft network neighborhood in single directory. | N |
smbclient |
Tools to access a server's filespace and printers via SMB. | N |
nmap |
Utility for network discovery and security auditing. | N |
traceroute |
Tracks the route taken by packets over an IP network. | N |
rsync |
A fast and versatile file copying tool for remote and local files. | N |
grsync |
GTK+ GUI for rsync to synchronize folders, files and make backups. | N |
firewalld |
Firewall daemon with D-Bus interface. | Y |
ufw |
Uncomplicated and easy to use CLI tool for managing a netfilter firewall . | Y |
gufw |
Uncomplicated way to manage your Linux firewall | N |
ufw-extras |
Extra configuration files for UFW | N |
Wi-Fi
Name | Description | Enable Service |
---|---|---|
wpa_supplicant |
A utility providing key negotiation for WPA wireless networks. | N |
Bluetooth
Name | Description | Enable Service |
---|---|---|
blueman |
A GTK+ Bluetooth Manager (BlueZ 5) - git | N |
bluez-utils |
Development and debugging utilities for the bluetooth protocol stack. Includes deprecated tools. | N |
bluez |
Libraries and tools for the Bluetooth protocol stack. | N |
bluez-libs |
Libraries for the bluetooth protocol stack. | N |
To enable bluetooth, run systemctl enable bluetooth
and systemctl start bluetooth
Video
Nvidia
Type | Driver | OpenGL | OpenGL (Multilib) | Documentation |
---|---|---|---|---|
Open source | xf86-video-nouveau |
mesa |
lib32-mesa |
Nouveau |
Proprietary | nvidia |
nvidia-utils |
lib32-nvidia-utils |
NVIDIA |
Proprietary | nvidia-390xx AUR |
nvidia-390xx-utils AUR |
lib32-nvidia-390xx-utils AUR |
NVIDIA |
nvidia-settings
NOTE: install nvidia-dkms
and add nvidia to the modules for mkinitcpio, use sudo nano /etc/mkinitcpio.conf
edit the file "MODULES=(nvidia)" and run sudo mkinitcpio -P
AMD
Type | Driver | OpenGL | OpenGL (Multilib) | Documentation |
---|---|---|---|---|
Open source | xf86-video-amdgpu |
mesa |
lib32-mesa |
AMDGPU |
Open source | xf86-video-ati |
mesa |
lib32-mesa |
ATI |
vulkan-radeon
xf86-video-amdgpu
catalyst
catalyst=total-hd234k
Intel
Type | Driver | OpenGL | OpenGL (Multilib) | Documentation |
---|---|---|---|---|
Open source | xf86-video-intel |
mesa |
lib32-mesa |
Intel graphics |
For hybrid graphics install optimus-manager
Sound
Pulseaudio
Name | Description | Enable Service |
---|---|---|
pulseaudio |
A featureful, general-purpose sound server | |
pulseeffects |
Audio Effects for Pulseaudio Applications. | N |
pulseaudio-bluetooth |
Bluetooth support for PulseAudio. | N |
pulseaudio-equalizer |
Equalizer for PulseAudio. | N |
Alsa
Name | Description | Enable Service |
---|---|---|
alsa-utils |
A patched version of the alsa-utils package to support transparent terminals. | N |
alsa-plugins |
Additional ALSA plugins. | N |
lib32-alsa-plugins |
Additional ALSA plugins. | N |
pulseaudio-alsa |
ALSA Configuration for PulseAudio. | N |
Printing
Name | Description | Enable Service |
---|---|---|
cups |
The CUPS Printing System - daemon package. | Y |
cups-pdf |
PDF printer for cups. | N |
hplip |
Drivers for HP DeskJet, OfficeJet, Photosmart, Business Inkjet and some LaserJet. | N |
system-config-printer |
A CUPS printer configuration tool and status applet. | N |
foomatic-db |
Foomatic - The collected knowledge about printers, drivers, and driver options in XML files, used by foomatic-db-engine to generate PPD files. | N |
foomatic-db-engine |
Foomatic - Foomatic's database engine generates PPD files from the data in Foomatic's XML database. It also contains scripts to directly generate print queues and handle jobs. | N |
foomatic-db-ppds |
Foomatic - PPDs from printer manufacturers. | N |
foomatic-db-nonfree-ppds |
Foomatic - non-free PPDs from printer manufacturers. | N |
foomatic-db-nonfree |
Foomatic - database extension consisting of manufacturer-supplied PPD files released under non-free licenses. | N |
foomatic-gutenprint-ppds |
simplified prebuilt ppd files. | N |
gutenprint |
Top quality printer drivers for POSIX systems. | N |
ghostscript |
An interpreter for the PostScript language. | N |
XORG
XORG Apps
Name | Description | Enable Service |
---|---|---|
xorg |
Graphical Server Package Group, see xorg for details. | N |
xorg-xinit |
X.Org initialisation program. | N |
xorg-apps |
Additional applications for xorg, see xorg-apps for details. | N |
xorg-drivers |
Additional Drivers for xorg, see xorg-drivers for details. | N |
Fonts
Name | Description |
---|---|
font-bh-ttf |
X.org Luxi Truetype fonts |
gsfonts |
(URW)++ Core Font Set. |
sdl_ttf |
A library that allows you to use TrueType fonts in your SDL applications . |
ttf-bitstream-vera |
Bitstream Vera fonts. |
ttf-dejavu |
Font family based on the Bitstream Vera Fonts with a wider range of characters. |
ttf-liberation |
Red Hats Liberation fonts. |
xorg-fonts-type1 |
X.org Type1 fonts. |
ttf-ubuntu-font-family |
Ubuntu font family. |
noto-fonts |
Google Noto TTF fonts. |
ttf-opensans |
Google Noto TTF fonts. |
Back to Installation
Back to Table of Contents
Display Managers
GDM
GNOME display manager.
Name | Description | Enable Service |
---|---|---|
gdm |
Display manager and login screen |
(Also included in gnome
package group)
systemctl enable gdm.service
LightDM
Cross-desktop display manager, can use various front-ends written in any toolkit.
Name | Description | Enable Service |
---|---|---|
lightdm |
A lightweight display manager | Y |
lightdm-gtk-greeter |
Default Greeter | N |
systemctl enable lightdm.service
Back to Lightdm Login Manager Configuration Back to Table of Contents
LXDM
display manager. Can be used independent of the LXDE desktop environment.
Name | Description | Enable Service |
---|---|---|
lxdm |
Lightweight X11 Display Manager. | Y |
lxdm-gtk3 |
Lightweight X11 Display Manager (GTK+ 3 version). | Y |
systemctl enable lxdm.service
SDDM
QML-based display manager and successor to KDM; recommended for Plasma and LXQt.
Name | Description | Enable Service |
---|---|---|
sddm |
QML based X11 and Wayland display manager. | Y |
sddm-kcm |
KDE Config Module for SDDM. | N |
systemctl enable sddm.service
XDM
X display manager with support for XDMCP, host chooser.
Name | Description | Enable Service |
---|---|---|
xorg-xdm |
X Display Manager | Y |
systemctl enable xdm.service
Back to Installation
Back to Table of Contents
Desktop Environments
Budgie
Name | Description | Enable Service |
---|---|---|
budgie-desktop |
Modern desktop environment from the Solus Project. | N |
gnome |
Gnome desktop environment package group, see gnome for details. | N |
gnome-extra |
Gnome desktop environment extras, see gnome-extra for details. | N |
Cinnamon
Name | Description | Enable Service |
---|---|---|
cinnamon |
Linux desktop which provides advanced innovative features and a traditional user experience. | N |
nemo |
Cinnamon file manager (Nautilus fork) | N |
nemo-fileroller |
File archiver extension for Nemo | N |
metacity |
Window manager of GNOME Flashback (Fallback mode) | N |
gnome-shell |
Next generation desktop shell (Fallback mode) | N |
Deepin
Name | Description | Enable Service |
---|---|---|
deepin |
The Deepin Desktop Environment. | N |
deepin-extra |
extra applications for a more complete desktop environment. | N |
To be able to use the integrated network administration, the networkmanager package is required, and the NetworkManager.service must be started and enabled.
GNOME
Name | Description | Enable Service |
---|---|---|
gnome |
Gnome desktop environment package group, see gnome for details. | N |
gnome-extra |
Gnome desktop environment extras, see gnome-extra for details. | N |
KDE Plasma
Name | Description | Enable Service |
---|---|---|
plasma |
KDE Plasma Desktop, See plasma for details | |
plasma-meta |
Meta package to install KDE Plasma(Full) | |
plasma-desktop |
KDE Plasma Desktop (Minimum) | |
kde-applications |
KDE Applications, See kde-applications for details | |
kde-applications-meta |
Meta package for KDE Applications |
To enable support for Wayland in Plasma, also install the plasma-wayland-session
package.
MATE
|Name|Description|Enable Service|
|:---:|:---:|:---:|rent, but the solution is the same: co
|mate
|An intuitive and attractive desktop environment|N|
|mate-extra
|additional utilities and applications that integrate well with the MATE desktop|N|
XFCE
Name | Description | Enable Service |
---|---|---|
xfce4 |
lightweight and modular desktop environment | N |
xfce4-goodies |
extra plugins and a number of useful utilities | N |
Back to Installation
Back to Table of Contents
Applications
System
Name | Description |
---|---|
gparted |
Disk Partitioner |
gnome-disk-utility |
Disk Utility |
baobab |
Disk Usage |
tilda |
Terminal |
terminator |
Terminal |
xdg-utils |
Editing Config Files |
gprename |
File Renamer |
grub-customizer |
Grub Customizer |
yelp |
Help |
namcap |
PKGBUILDs checker |
wavemon |
CLI Wifi Scanner |
bleachbit |
System Cleaner |
dconf-editor |
Config Editor |
parcellite |
Clipboard Manager |
Office
Name | Description |
---|---|
libreoffice-fresh |
Office Suite |
xreader |
Document Reader |
galculator |
Calculator |
xed |
Text Editor |
gedit |
GNOME Text Editor |
pandoc |
Markdown Export Tools |
discount |
Markdown Export Tools |
calibre |
eBook Manager |
inkscape |
Vector Image Editor |
Internet
Name | Description |
---|---|
firefox |
Web Browser |
geary |
E-Mail Client |
evolution |
E-Mail Client |
qbittorrent |
Bittorrent client |
Multimedia
Name | Description |
---|---|
cmus |
Command Line Music Player |
vlc |
Media Player |
celluloid |
Media Player |
CODECS
Audio
Name | Description |
---|---|
flac |
Free Lossless Audio Codec |
wavpack |
Audio compression format with lossless, lossy and hybrid compression modes |
lame |
A high quality MPEG Audio Layer III (MP3) encoder |
faac |
Freeware Advanced Audio Coder |
faad2 |
ISO AAC audio decoder |
celt |
Low-latency audio communication codec |
a52dec |
A free library for decoding ATSC A/52 streams |
libdca |
Free library for decoding DTS Coherent Acoustics streams |
libmad |
A high-quality MPEG audio decoder |
libmpcdec |
MusePack decoding library |
opencore-amr |
Open source implementation of the Adaptive Multi Rate (AMR) speech codec |
opus |
Totally open, royalty-free, highly versatile audio codec |
speex |
A free codec for free speech |
libvorbis |
Reference implementation of the Ogg Vorbis audio format |
libfdk-aac |
Fraunhofer FDK AAC codec library |
fdkaac |
Command line encoder frontend for libfdk-aac |
Video
Name | Description |
---|---|
libmpeg2 |
Library for decoding MPEG-1 and MPEG-2 video streams. |
x264 |
Open Source H264/AVC video encoder |
x265 |
Open Source H265/HEVC video encoder |
libdv |
The Quasar DV codec (libdv) is a software codec for DV video |
xvidcore |
XviD is an open source MPEG-4 video codec |
ffmpeg |
Complete solution to record, convert and stream audio and video |
Images
Name | Description |
---|---|
jasper |
Software-based implementation of the codec specified in the emerging JPEG-2000 Part-1 standard |
libwebp |
WebP library and conversion tools |
Photo / Image Editing
Name | Description |
---|---|
gimp |
Photo Editor |
digikam |
Raw Photo Tool |
darktable |
Raw Photo Tool |
rawtherapee |
Raw Photo Software |
shotwell |
Photo Manager |
hugin |
Panorma Software |
gnome-screenshot |
Screenshot |
MiscPackages
Name | Description |
---|---|
sl |
CLI Train |
lolcat |
CLI Rainbow Effect |
cmatrix |
Matrix on CLI |
Back to Installation
Back to Table of Contents
Boot loader
Choose and install a Linux-capable boot loader. If you have an Intel or AMD CPU, enable microcode updates in addition.
Recommended is the Grub bootloader.
MBR
If not already installed, ensure you have the below installed:
sudo pacman -S grub os-prober
GRUB is the bootloader while os-prober will find other operating systems currently installed.
The following command will install grub into the relevant folder on /
.
grub-install --target=i386-pc /dev/sdX
where /dev/sdX is the disk (not a partition) where GRUB is to be installed. For example /dev/sda or /dev/nvme0n1, or /dev/mmcblk0.
Now you must generate the main configuration file. Use the grub-mkconfig tool to generate /boot/grub/grub.cfg:
grub-mkconfig -o /boot/grub/grub.cfg
To have grub-mkconfig search for other installed systems and automatically add them to the menu, the os-prober
will do this when you re-run grub-mkconfig.
UEFI
If not already installed, ensure you have the below installed:
sudo pacman -S grub os-prober efibootmgr
GRUB is the bootloader while efibootmgr is used by the GRUB installation script to write boot entries to NVRAM. While os-prober will find other operating systems.
- It is recommended to read and understand the Unified Extensible Firmware Interface, Partitioning#GUID Partition Table and Arch boot process#Under UEFI pages.
- When installing to use UEFI it is important to boot the installation media in UEFI mode, otherwise efibootmgr will not be able to add the GRUB UEFI boot entry. Installing to the fallback boot path will still work even in BIOS mode since it does not touch the NVRAM.
- To boot from a disk using UEFI, an EFI system partition is required. Follow EFI system partition#Check for an existing partition to find out if you have one already, otherwise you need to create it.
GUID Partition Table Info Arch Boot Process under UEFI Info
- Mount the EFI system partition and in the remainder of this section, substitute esp with its mount point.
- Choose a bootloader identifier, here named GRUB. A directory of that name will be created in esp/EFI/ to store the EFI binary and this is the name that will appear in the UEFI boot menu to identify the GRUB boot entry.
- Execute the following command to install the GRUB EFI application grubx64.efi to esp/EFI/GRUB/ and install its modules to /boot/grub/x86_64-efi/.
Mounting the EFI Partition Info
grub-install --target=x86_64-efi --efi-directory=esp --bootloader-id=GRUB
After the above install completed the main GRUB directory is located at /boot/grub/
. Note that grub-install also tries to create an entry in the firmware boot manager, named GRUB in the above example.
Remember to Generate the main configuration file after finalizing the configuration.
After the installation, the main configuration file /boot/grub/grub.cfg needs to be generated. The generation process can be influenced by a variety of options in /etc/default/grub and scripts in /etc/grub.d/.
If you have not done additional configuration, the automatic generation will determine the root filesystem of the system to boot for the configuration file. For that to succeed it is important that the system is either booted or chrooted into.
Use the grub-mkconfig tool to generate /boot/grub/grub.cfg:
grub-mkconfig -o /boot/grub/grub.cfg
To have grub-mkconfig search for other installed systems and automatically add them to the menu, ensure the os-prober package is installed and mount the partitions that contain the other systems. Then re-run grub-mkconfig.
Tip: If you use the option
--removable
then GRUB will be installed toesp/EFI/BOOT/BOOTX64.EFI
(oresp/EFI/BOOT/BOOTIA32.EFI
for thei386-efi
target) and you will have the additional ability of being able to boot from the drive in case EFI variables are reset or you move the drive to another computer. Usually you can do this by selecting the drive itself similar to how you would using BIOS. If dual booting with Windows, be aware Windows usually places an EFI executable there, but its only purpose is to recreate the UEFI boot entry for Windows.
Note:
--efi-directory
and--bootloader-id
are specific to GRUB UEFI,--efi-directory
replaces--root-directory
which is deprecated.- You might note the absence of a device_path option (e.g.:
/dev/sda
) in thegrub-install
command. In fact any device_path provided will be ignored by the GRUB UEFI install script. Indeed, UEFI bootloaders do not use a MBR bootcode or partition boot sector at all.- Make sure to run the
grub-install
command from the system in which GRUB will be installed as the boot looader. That means if you are booting from the live installation environment, you need to be inside the chroot when runninggrub-install
. If for some reason it is necessary to rungrub-install
from outside of the installed system, append the--boot-directory=
option with the path to the mounted/boot
directory, e.g--boot-directory=/mnt/boot
.
Dual Boot Tip (UEFI)
If Grub does not load within a dual boot environment then within linux do the following:
- Run efibootmgr and get the number of the boot manager, ie. 0001.
- Run the following:
efibootmgr -b <number> --inactive
- To delete do the following:
efibootmgr -b <number> -B
GRUB UEFI Info UEFI Tips and Tricks - Further Reading
Microcode
Processor manufacturers release stability and security updates to the processor microcode. These updates provide bug fixes that can be critical to the stability of your system. Without them, you may experience spurious crashes or unexpected system halts that can be difficult to track down.
All users with an AMD or Intel CPU should install the microcode updates to ensure system stability.
For AMD processors, install the amd-ucode
package.
For Intel processors, install the intel-ucode
package.
If your Arch installation is on a removable drive that needs to have microcode for both manufacturer processors, install both packages.
GRUB
grub-mkconfig will automatically detect the microcode update and configure GRUB appropriately. After installing the microcode package, regenerate the GRUB config to activate loading the microcode update by running:
grub-mkconfig -o /boot/grub/grub.cfg
Note: grub-mkconfig does not add the microcode images to the fallback initramfs boot entry. See FS#60999.
Alternatively, users that manage their GRUB config file manually can add /boot/cpu_manufacturer-ucode.img (or /cpu_manufacturer-ucode.img if /boot is a separate partition) as follows:
/boot/grub/grub.cfg
...
echo 'Loading initial ramdisk'
initrd /boot/cpu_manufacturer-ucode.img /boot/initramfs-linux.img
...
Repeat it for each menu entry.
rEFInd
Edit boot options in /boot/refind_linux.conf and add initrd=boot\cpu_manufacturer-ucode.img (or initrd=cpu_manufacturer-ucode.img if /boot is a separate partition) as the first initramfs. For example:
"Boot using default options" "root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw add_efi_memmap initrd=boot\cpu_manufacturer-ucode.img initrd=boot\initramfs-%v.img"
Tip: Users who previously did not specify an initrd kernel parameter will need to follow the steps described in rEFInd#Configuration to enable passing of multiple initrd parameters.
Users employing manual stanzas in esp/EFI/refind/refind.conf to define the kernels should simply add initrd=boot\cpu_manufacturer-ucode.img (or initrd=cpu_manufacturer-ucode.img if /boot is a separate partition) as required to the options line, and not in the main part of the stanza. E.g.:
options "root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw add_efi_memmap initrd=boot\cpu_manufacturer-ucode.img"
Reboot
Before rebooting, ensure you have at least a DHCP client installed and unmount your efi and root partitions:
umount /dev/sdaX
amend for whatever setup you have
Post Installation
Internet access
systemctl enable NetworkManager.service
systemctl start NetworkManager.service
systemctl enable wpa_supplicant
systemctl start wpa_supplicant
If using ethernet test with a ping, if using Wi-Fil use the below commands:
List nearby wifi networks:
nmcli device wifi list
Connect to a wifi network:
nmcli device wifi connect SSID p(Enable service)assword password
Connect to a hidden network:
nmcli device wifi connect SSID password password hidden yes
Connect to a wifi on the wlan1 wifi interface:
nmcli device wifi connect SSID password password ifname wlan1 profile_name
Disconnect an interface:
nmcli device disconnect ifname eth0
Reconnect an interface marked as disconnected:
nmcli connection up uuid UUID
Get a list of UUIDs:n also get a potat
nmcli connection show
See a list of network devices and their state:
nmcli device
Turn off wifi:
nmcli radio wifi off
Basic Config
Ensure you have the base packages from: Software Packages
Enable Services (If Applicable)
Set the following services if required
systemctl enable NetworkManager.service
systemctl enable sshd.service
systemctl enable cronie.service
systemctl enable havegd.service
systemctl enable bluetooth.service
systemctl enable org.cups.cupsd.service
systemctl enable ufw.service
Choose Applicable
systemctl enable gdm.service
systemctl enable lightdm.service
systemctl enable lxdm.service
systemctl enable sddm.service
systemctl enable xdm.service
Lightdm Login Manager Configuration
If you need lightdm as your display manager install it and enable it, see: Lightdm
You will probably want to install a greeter. A greeter is a GUI that prompts the user for credentials, lets the user select a session, and so on. It is possible to use LightDM without a greeter, but only if an automatic login is configured; otherwise you will need to install xorg-server and one of the greeter packages below.
The official repositories contain the following greeters:
lightdm-gtk-greeter: this is the default greeter LightDM attempts to use when started unless configured to do otherwise.
lightdm-deepin-greeter (deepin-session-ui): A greeter from the Deepin project.
lightdm-pantheon-greeter: A greeter from the elementary OS project.
lightdm-webkit2-greeter: A greeter that uses Webkit2 for theming. It supersedes lightdm-webkit-greeterAUR.
lightdm-webkit-theme-litarvan: A modern and full-featured Webkit2 LightDM theme. this requires lightdm-webkit2-greeter
If not already done, edit /etc/lightdm/lightdm.conf
and set greeter-session=lightdm-webkit2-greeter
.
Then edit /etc/lightdm/lightdm-webkit2-greeter.conf
and set theme
or webkit-theme
to litarvan
.
Other alternative greeters are available in the AUR:
lightdm-slick-greeter AUR: A GTK based greeter focused more on appearance than lightdm-gtk-greeter, forked from lightdm-unity-greeterAUR, and default in Linux Mint.
lightdm-unity-greeter AUR: The greeter used by Ubuntu's Unity.
lightdm-mini-greeter AUR: A minimal, configurable, single-user greeter.
lightdm-webkit-theme-aether AUR: A sleek, straightforward Archlinux themed login screen written on lightdm and the lightdm-webkit2-greeter.
You can set the default greeter by changing the [Seat:*] section of the LightDM configuration file, like so:
/etc/lightdm/lightdm.conf [Seat:*] ... greeter-session=lightdm-yourgreeter-greeter ...
Finally enable lightdm
sudo systemctl enable lightdm
And if required:
sudo systemctl start lightdm
Aether Theme Installation
Install
-
Install lightdm-webikit2-greeter
sudo pacman -S lightdm-webkit2-greeter
-
Get files
git clone https://github.com/NoiSek/Aether.git
-
Move to correct folder
sudo cp --recursive Aether /usr/share/lightdm-webkit/themes/lightdm-webkit-theme-aether
-
Config 1
sudo sed -i 's/^webkit_theme\s*=\s*\(.*\)/webkit_theme = lightdm-webkit-theme-aether #\1/g' /etc/lightdm/lightdm-webkit2-greeter.conf
-
Config 2
sudo sed -i 's/^\(#?greeter\)-session\s*=\s*\(.*\)/greeter-session = lightdm-webkit2-greeter #\1/ #\2g' /etc/lightdm/lightdm.conf
Fix Avatar
First obtain an avatar file as png or obtain the standard image from /usr/share/lightdm-webkit/themes/lightdm-webkit-theme-aether/Aether/src/img/default-user.png
Now copy this image to /var/lib/AccountsService/icons/
Now edit the users profile details
sudo nano /var/lib/AccountsService/users/<username>
Edit the following:
[User]
Icon=/var/lib/AccountsService/icons/<filename>
Now we need to set the permissions
sudo chmod 644 /var/lib/AccountsService/users/<username>
sudo chmod 644 /var/lib/AccountsService/icons/<filename>
Reboot and the Avatar should now show
Enable Numlock On at Boot
Install the numlockx
package and then edit /etc/lightdm/lightdm.conf:
sudo pacman-S numlockx
sudo nano /etc/lightdm/lightdm.conf
[Seat:*]
greeter-setup-script=/usr/bin/numlockx on
Yay
pacman -S --needed base-devel
sudo pacman -S git
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
Themes & Icons
sudo pacman -S papirus-icon-theme
yay sardi
yay mint-themes
yay mint-x-icons
yay mint-y-icons
yay mint-backgrounds
yay volantes-cursors
yay archlinux-artwork
Plank
sudo pacman -S plank
Themes - Arco Linux Plank Themes
git clone https://github.com/arcolinux/arcolinux-plank-themes
cd arcolinux-plank-themes/usr/share/plank/themes/
sudo cp -r ./* ~/.local/share/plank/themes
- all additional plank themes go into:
~/.local/share/plank/themes
Grub Themes
git clone https://github.com/Se7endAY/grub2-theme-vimix.git
cd grub2-theme-vimix
sudo mv ./Vimix/ /boot/grub/themes
sudo nano /etc/default/grub
GRUB_THEME="/boot/grub/themes/Vimix/theme.txt"
- Save and exit.
- Update Grub with the following:
sudo grub-mkconfig -o /boot/grub/grub.cfg
Please note the Vimix is case sensetive with a capital V
Additional AUR Apps
Command | Description |
---|---|
yay pamac |
Pacman GUI |
yay xviewer |
Image Viewer |
yay pix-git |
Image Viewer |
yay lollypop |
Music Player |
yay picard |
Music Tagger |
``yay xplayer` | Media Player |
yay spotify |
Music Streaming |
yay google-chrome |
Web Browser |
yay msgviewer |
Outlook msg viewer |
yay teams |
Microsoft Teams |
yay whatsapp-nativefier-dark |
|
yay bitwarden |
Password Manager |
yay thonny |
Python IDE |
yay timeshift |
Recovery |
yay freeoffice |
Office Suite |
yay focuswriter |
Markdown / Text Editor |
yay haroopad |
Markdown Editor |
yay remarkable |
Markdown Editor |
yay ghostwriter |
Markdown Editor |
yay multimarkdown |
Markdown Export Tools |
yay commonmark |
Markdown Export Tools |
yay kindlegen |
eBook CLI Convertor |
yay koreader |
Epub Reader |
yay sigil |
Epub Editor |
yay joplin |
Markdown Editor / Notebook |
yay cherrytree |
Notebook |
yay grub2-theme-vimix-git |
Grub Arch Theme |
yay system-log |
System Log GUI |
yay gnome-system-monitor |
System monitor GUI |
yay balena-etcher |
USB Flasher |
yay gtkhash |
Hash Check Utility |
yay ttf-ms-fonts |
Microsoft Fonts |
yay netdiscover |
Network scanner with MAC vendors |
Gaming
Steam
Enable the multilib repository (if not done already)
To enable multilib repository, uncomment the [multilib] section in /etc/pacman.conf:
sudo nano /etc/pacman.conf
/etc/pacman.conf [multilib] Include = /etc/pacman.d/mirrorlist
Now install steam with sudo pacman -S steam
Lutris
Manage multiple game services with Lutris
sudo pacman -S lutris
If you need to reset Lutris delete ~/.config/lutris & ~/.local/lutris
Extras
Enable Root File Manager
Install the following:
yay libgksu
yay gksu
Create a menu item or run command gksu nemo
for example
Cinnamon Menu Fonts
Edit the following file ~/.themes/{THEME}/cinnamon/cinnamon.css
and change:
stage
font-family: sans, sans-serif;``}
to
stage {``}
Cannot Access SMB Shares
Install the following if not done so already:
sudo pacman -S gvfs gvfs-smb smbclient samba nmap smbnetfs
Copy contents from smb.conf from:
Add to: /etc/samba/smb.conf
Enable and start the relevant services:
systemctl enable nmb.service
systemctl start nmb.service
systemctl enable smb.service
systemctl start smb.service
systemctl enable smbnetfs
systemctl start smbnetfs
and now reboot, if that fails, edit /etc/hosts
and add:
IP_Address* *Hostname
Access via:
smb://IP_Address/Share
gpg keyserver receive failed general error
Take to failed keys and run the following:
gpg --keyserver hkp://pgp.mit.edu --recv-keys {KEY}
Additional Keyservers here: https://sks-keyservers.net/
Cinnamon Hi-DPI Not Working Fully
Under settings and Display, set the zoom level first to the desired level and enable Hi-DPI after, otherwise it will mess with the screen resolution.
Add Shares to FStab
Ensure SMB Servies are installed
First create folder to mount to:
sudo mkdir /mnt/documents
Now create your credentials folder if needed
touch ~/.credentials
Add the following, amend the details to suit:
nano .credentials
username=username
password=password
Now edit the fstab file: sudo nano /etc/fstab
and add the following to suit, ensuring the paths are correct.
//IP_Address/Share
/mnt/createdfolder
cifs
credentials=/PATH/TO/.credentials,iocharset=utf8,sec=ntlm,file_mode=0777,dir_mode=0777,noperm,vers=1.0
0
0
If the share has a space in its name, replace the space with \040
for example Photography Data
would be Photography\040Data
Timeshift Issues
Fails to start due to cron package
Install: `sudo pacman -S cron
Shows excessive data for backup
Exclude the following folder: /var/lib/dhcpcd/
Resolution issues
If using a 4k monitor (3840 x 2160) do the following to ensure best display
In cinnamon got to settings, set zoom to 200%
and apply.
Now set the *Base Interface scale to Double (Hi-DPI)
This will ensure the screen is sharp and games will work fine, zoom levels outside of 200% will mess up full screen apps, therefore 200% is best and scaling fonts and menus manually will yeild best results.
Nautilus or Nemo Missing Image Previews
A default limit to image files like .jpg, .png can be beween 1mb and 10mb, which stops them being previewed in Nautilus or Nemo file managers, to fix this do the following:
Install dconf-editor:
sudo pacman -S dconf-editor
Open dconf-editor and go to:
org > gnome > nautilus or nemo > preferences > thumbnail limit
Set Use Default Value
to off and enter a higher size under Custom Value
Close the app to save and changes should be immediate
Audio Delay
To disable loading of the module-suspend-on-idle module, comment out the following line in the configuration file in use (~/.config/pulse/default.pa or /etc/pulse/default.pa):
### Automatically suspend sinks/sources that become idle for too long
# load-module module-suspend-on-idle
Finally restart PulseAudio to apply the changes.
pulseaudio -k
pulseaudio --start
Identify USB Devices in use
Find the device in:
/dev/input/by-id
Now run the following command to find the process ID:
fuser /dev/input/by-id/{Device name}
Either kill or make action to stop it being used.
“No object for D-Bus interface” When trying to access other partition
systemctl --user restart gvfs-udisks2-volume-monitor
Possibly missing firmware for module: aic94xx/wd719x
aic94xx
git clone https://aur.archlinux.org/aic94xx-firmware.git
cd aic94xx-firmware
makepkg -sri
wd719x
git clone https://aur.archlinux.org/wd719x-firmware.git
cd wd719x-firmware
makepkg -sri
Finally Run mkinitcpio -p linux
.
Identify Boot Delays
Analyze boot times
systemd-analyze
systemd-analyze blame
Check startup Applications for anything unnecessary.
Unable to mount from fstab at boot (Dependencies Failed)
If this is a duelboot system, this could be an issue with the NTFS volume, try the following:
- Ensure secureboot is off on windows.
- Run
sudo ntfsfix /dev/sda2
Ensuring the destination drive is correct) - Check the fstab file to ensure its correct.
Package Groups
base-devel
Below is a list of the packages contained within base-devel
Name | Description |
---|---|
autoconf |
A GNU tool for automatically configuring source code |
automake |
A GNU tool for automatically creating Makefiles |
binutils |
A set of programs to assemble and manipulate binary and object files |
bison |
The GNU general-purpose parser generator |
fakeroot |
Tool for simulating superuser privileges |
file |
File type identification utility |
findutils |
GNU utilities to locate files |
flex |
A tool for generating text-scanning programs |
gawk |
GNU version of awk |
gcc |
The GNU Compiler Collection - C and C++ frontends |
gettext |
GNU internationalization library |
grep |
A string search utility |
groff |
GNU troff text-formatting system |
gzip |
GNU compression utility |
libtool |
A generic library support script |
m4 |
The GNU macro processor |
make |
GNU make utility to maintain groups of programs |
pacman |
A library-based package manager with dependency support |
patch |
A utility to apply patch files to original sources |
pkgconf |
Package compiler and linker metadata toolkit |
sed |
GNU stream editor |
sudo |
Give certain users the ability to run some commands as root |
texinfo |
GNU documentation system for on-line information and printed output |
which |
A utility to show the full path of commands |
Back to Essentials
Back to Table of Contents
xorg
xorg group
Name | Description |
---|---|
xf86-video-vesa |
X.org vesa video driver |
xorg-bdftopcf |
Convert X font from Bitmap Distribution Format to Portable Compiled Format |
xorg-docs |
X.org documentations |
xorg-font-util |
X.Org font utilities |
xorg-fonts-100dpi |
X.org 100dpi fonts |
xorg-fonts-75dpi |
X.org 75dpi fonts |
xorg-fonts-encodings |
X.org font encoding files |
xorg-iceauth |
ICE authority file utility |
xorg-luit |
Filter that can be run between an arbitrary application and a UTF-8 terminal emulator |
xorg-mkfontscale |
Create an index of scalable font files for X |
xorg-server |
Xorg X server |
xorg-server-common |
Xorg server common files |
xorg-server-devel |
Development files for the X.Org X server |
xorg-server-xephyr |
A nested X server that runs as an X application |
xorg-server-xnest |
A nested X server that runs as an X application |
xorg-server-xvfb |
Virtual framebuffer X server |
xorg-server-xwayland |
run X clients under wayland |
xorg-sessreg |
Register X sessions in system utmp/utmpx databases |
xorg-setxkbmap |
Set the keyboard using the X Keyboard Extension |
xorg-smproxy |
Allows X applications that do not support X11R6 session management to participate in an X11R6 session |
xorg-x11perf |
Simple X server performance benchmarker |
xorg-xauth |
X.Org authorization settings program |
xorg-xbacklight |
RandR-based backlight control application |
xorg-xcmsdb |
Device Color Characterization utility for X Color Management System |
xorg-xcursorgen |
Create an X cursor file from PNG images |
xorg-xdpyinfo |
Display information utility for X |
xorg-xdriinfo |
Query configuration information of DRI drivers |
xorg-xev |
Print contents of X events |
xorg-xgamma |
Alter a monitor's gamma correction |
xorg-xhost |
Server access control program for X |
xorg-xinput |
Small commandline tool to configure devices |
xorg-xkbcomp |
X Keyboard description compiler |
xorg-xkbevd |
XKB event daemon |
xorg-xkbutils |
XKB utility demos |
xorg-xkill |
Kill a client by its X resource |
xorg-xlsatoms |
List interned atoms defined on server |
xorg-xlsclients |
List client applications running on a display |
xorg-xmodmap |
Utility for modifying keymaps and button mappings |
xorg-xpr |
Print an X window dump from xwd |
xorg-xprop |
Property displayer for X |
xorg-xrandr |
Primitive command line interface to RandR extension |
xorg-xrdb |
X server resource database utility |
xorg-xrefresh |
Refresh all or part of an X screen |
xorg-xset |
User preference utility for X |
xorg-xsetroot |
Classic X utility to set your root window background to a given pattern or color |
xorg-xvinfo |
Prints out the capabilities of any video adaptors associated with the display that are accessible through the X-Video extension |
xorg-xwd |
X Window System image dumping utility |
xorg-xwininfo |
Command-line utility to print information about windows on an X server |
xorg-xwud |
X Window System image undumping utility |
Back to XORG
Back to Table of Contents
xorg-apps
Name | Description |
---|---|
xorg-bdftopcf |
Convert X font from Bitmap Distribution Format to Portable Compiled Format |
xorg-iceauth |
ICE authority file utility |
xorg-luit |
Filter that can be run between an arbitrary application and a UTF-8 terminal emulator |
xorg-mkfontscale |
Create an index of scalable font files for X |
xorg-sessreg |
Register X sessions in system utmp/utmpx databases |
xorg-setxkbmap |
Set the keyboard using the X Keyboard Extension |
xorg-smproxy |
Allows X applications that do not support X11R6 session management to participate in an X11R6 session |
xorg-x11perf |
Simple X server performance benchmarker |
xorg-xauth |
X.Org authorization settings program |
xorg-xbacklight |
RandR-based backlight control application |
xorg-xcmsdb |
Device Color Characterization utility for X Color Management System |
xorg-xcursorgen |
Create an X cursor file from PNG images |
xorg-xdpyinfo |
Display information utility for X |
xorg-xdriinfo |
Query configuration information of DRI drivers |
xorg-xev |
Print contents of X events |
xorg-xgamma |
Alter a monitor's gamma correction |
xorg-xhost |
Server access control program for X |
xorg-xinput |
Small commandline tool to configure devices |
xorg-xkbcomp |
X Keyboard description compiler |
xorg-xkbevd |
XKB event daemon |
xorg-xkbutils |
XKB utility demos |
xorg-xkill |
Kill a client by its X resource |
xorg-xlsatoms |
List interned atoms defined on server |
xorg-xlsclients |
List client applications running on a display |
xorg-xmodmap |
Utility for modifying keymaps and button mappings |
xorg-xpr |
Print an X window dump from xwd |
xorg-xprop |
Property displayer for X |
xorg-xrandr |
Primitive command line interface to RandR extension |
xorg-xrdb |
X server resource database utility |
xorg-xrefresh |
Refresh all or part of an X screen |
xorg-xset |
User preference utility for X |
xorg-xsetroot |
Classic X utility to set your root window background to a given pattern or color |
xorg-xvinfo |
Prints out the capabilities of any video adaptors associated with the display that are accessible through the X-Video extension |
xorg-xwd |
X Window System image dumping utility |
xorg-xwininfo |
Command-line utility to print information about windows on an X server |
xorg-xwud |
X Window System image undumping utility |
Back to XORG
Back to Table of Contents
xorg-drivers
Name | Description |
---|---|
xf86-input-evdev |
X.org evdev input driver |
xf86-input-libinput |
Generic input driver for the X.Org server based on libinput |
xf86-input-synaptics |
Synaptics driver for notebook touchpads |
xf86-input-vmmouse |
X.org VMWare Mouse input driver |
xf86-input-void |
X.org void input driver |
xf86-video-amdgpu |
X.org amdgpu video driver |
xf86-video-ati |
X.org ati video driver |
xf86-video-dummy |
X.org dummy video driver |
xf86-video-fbdev |
X.org framebuffer video driver |
xf86-video-intel |
X.org Intel i810/i830/i915/945G/G965+ video drivers |
xf86-video-nouveau |
Open Source 3D acceleration driver for nVidia cards |
xf86-video-openchrome |
X.Org Openchrome drivers |
xf86-video-qxl |
Xorg X11 qxl video driver |
xf86-video-vesa |
X.org vesa video driver |
xf86-video-vmware |
X.org vmware video driver |
xf86-video-voodoo |
X.org 3dfx Voodoo1/Voodoo2 2D video driver |
Back to XORG
Back to Table of Contents
gnome
Name | Description |
---|---|
baobab |
A graphical directory tree analyzer |
cheese |
Take photos and videos with your webcam, with fun graphical effects |
eog |
Eye of Gnome: An image viewing and cataloging program |
epiphany |
A GNOME web browser based on the WebKit rendering engine |
evince |
Document viewer (PDF, Postscript, djvu, tiff, dvi, XPS, SyncTex support with gedit, comics books (cbr,cbz,cb7 and cbt)) |
file-roller |
Create and modify archives |
gdm |
Display manager and login screen |
gedit |
GNOME Text Editor |
gnome-backgrounds |
Background images and data for GNOME |
gnome-books |
Access and organize your e-books on GNOME |
gnome-boxes |
Simple GNOME application to access remote or virtual systems |
gnome-calculator |
GNOME Scientific calculator |
gnome-calendar |
Simple and beautiful calendar application designed to perfectly fit the GNOME desktop |
gnome-characters |
A character map application |
gnome-clocks |
Clocks applications for GNOME |
gnome-color-manager |
GNOME Color Profile Tools |
gnome-contacts |
Contacts Manager for GNOME |
gnome-control-center |
GNOME's main interface to configure various aspects of the desktop |
gnome-disk-utility |
Disk Management Utility for GNOME |
gnome-documents |
A document manager application for GNOME |
gnome-font-viewer |
A font viewer utility for GNOME |
gnome-getting-started-docs |
Help a new user get started in GNOME |
gnome-keyring |
Stores passwords and encryption keys |
gnome-logs |
A log viewer for the systemd journal |
gnome-maps |
A simple GNOME 3 maps application |
gnome-menus |
GNOME menu specifications |
gnome-music |
Music player and management application |
gnome-photos |
Access, organize, and share your photos on GNOME |
gnome-remote-desktop |
GNOME Remote Desktop server |
gnome-screenshot |
Take pictures of your screen |
gnome-session |
The GNOME Session Handler |
gnome-settings-daemon |
GNOME Settings Daemon |
gnome-shell |
Next generation desktop shell |
gnome-shell-extensions |
Extensions for GNOME shell, including classic mode |
gnome-software |
GNOME Software Tools |
gnome-system-monitor |
View current processes and monitor system state |
gnome-terminal |
The GNOME Terminal Emulator |
gnome-themes-extra |
Extra Themes for GNOME Applications |
gnome-user-docs |
User documentation for GNOME |
gnome-user-share |
Easy to use user-level file sharing for GNOME |
gnome-video-effects |
Collection of GStreamer effects for GNOME |
gnome-weather |
Access current weather conditions and forecasts |
grilo-plugins |
A collection of plugins for the Grilo framework |
gvfs |
Virtual filesystem implementation for GIO |
gvfs-afc |
Virtual filesystem implementation for GIO (AFC backend; Apple mobile devices) |
gvfs-goa |
Virtual filesystem implementation for GIO (Gnome Online Accounts backend; cloud storage) |
gvfs-google |
Virtual filesystem implementation for GIO (Google Drive backend) |
gvfs-gphoto2 |
Virtual filesystem implementation for GIO (gphoto2 backend; PTP camera, MTP media player) |
gvfs-mtp |
Virtual filesystem implementation for GIO (MTP backend; Android, media player) |
gvfs-nfs |
Virtual filesystem implementation for GIO (NFS backend) |
gvfs-smb |
Virtual filesystem implementation for GIO (SMB/CIFS backend; Windows client) |
mutter |
A window manager for GNOME |
nautilus |
Default file manager for GNOME |
networkmanager |
Network connection manager and user applications |
orca |
Screen reader for individuals who are blind or visually impaired |
rygel |
UPnP AV MediaServer and MediaRenderer that allows you to easily share audio, video and pictures, and control of media player on your home network |
simple-scan |
Simple scanning utility |
sushi |
A quick previewer for Nautilus |
totem |
Movie player for the GNOME desktop based on GStreamer |
tracker |
Desktop-neutral user information store, search tool and indexer |
tracker-miners |
Collection of data extractors for Tracker/Nepomuk |
vino |
A VNC server for the GNOME desktop |
xdg-user-dirs-gtk |
Creates user dirs and asks to relocalize them |
yelp |
Get help with GNOME |
Back to Budgie
Back to Gnome
Back to Table of Contents
gnome-extra
Name | Description |
---|---|
accerciser |
Interactive Python accessibility explorer for the GNOME desktop |
dconf-editor |
dconf Editor |
devhelp |
API documentation browser for GNOME |
evolution |
Manage your email, contacts and schedule |
five-or-more |
Remove colored balls from the board by forming lines |
four-in-a-row |
Make lines of the same color to win |
ghex |
A simple binary editor for the Gnome desktop |
glade |
User Interface Builder for GTK+ applications |
gnome-builder |
An IDE for writing GNOME-based software |
gnome-chess |
Play the classic two-player boardgame of chess |
gnome-devel-docs |
Developer documentation for GNOME |
gnome-klotski |
Slide blocks to solve the puzzle |
gnome-mahjongg |
Disassemble a pile of tiles by removing matching pairs |
gnome-mines |
Clear hidden mines from a minefield |
gnome-nettool |
Graphical interface for various networking tools |
gnome-nibbles |
Guide a worm around a maze |
gnome-robots |
Avoid the robots and make them crash into each other |
gnome-sound-recorder |
A utility to make simple audio recording from your GNOME desktop |
gnome-sudoku |
Test your logic skills in this number grid puzzle |
gnome-taquin |
Move tiles so that they reach their places |
gnome-tetravex |
Complete the puzzle by matching numbered tiles |
gnome-todo |
Task manager for GNOME |
gnome-tweaks |
Graphical interface for advanced GNOME 3 settings (Tweak Tool) |
hitori |
GTK+ application to generate and let you play games of Hitori |
iagno |
Dominate the board in a classic version of Reversi |
lightsoff |
Turn off all the lights |
polari |
An IRC Client for GNOME |
quadrapassel |
Fit falling blocks together (Tetris-like game for GNOME) |
swell-foop |
Clear the screen by removing groups of colored and shaped tiles |
sysprof |
Kernel based performance profiler |
tali |
Beat the odds in a poker-style dice game |
gnome-code-assistance |
Code assistance services for GNOME |
gnome-multi-writer |
Write an ISO file to multiple USB devices at once |
gnome-recipes |
Recipe management application for GNOME |
gnome-usage |
GNOME application to view information about use of system resources |
Back to Budgie
Back to Gnome
Back to Table of Contents
deepin
Name | Description |
---|---|
deepin-account-faces |
Account faces for Linux Deepin |
deepin-anything |
Deepin Anything file search tool |
deepin-api |
Golang bindings for dde-daemon |
deepin-calendar |
Calendar for Deepin Desktop Environment |
deepin-control-center |
New control center for linux deepin |
deepin-daemon |
Daemon handling the DDE session settings |
deepin-desktop-base |
Base component for Deepin |
deepin-desktop-schemas |
GSettings deepin desktop-wide schemas |
deepin-dock |
Deepin desktop-environment - dock module |
deepin-file-manager |
Deepin File Manager |
deepin-gtk-theme |
Deepin GTK Theme |
deepin-icon-theme |
Deepin Icons |
deepin-image-viewer |
Deepin Image Viewer |
deepin-kwin |
KWin configures on DDE |
deepin-launcher |
Deepin desktop-environment - Launcher module |
deepin-menu |
Deepin menu service for building beautiful menus |
deepin-network-utils |
DDE network utils |
deepin-polkit-agent |
Deepin Polkit Agent |
deepin-polkit-agent-ext-gnomekeyring |
GNOME keyring extension for dde-polkit-agent |
deepin-qt5integration |
Qt platform theme integration plugins for DDE |
deepin-qt5platform-plugins |
Qt platform plugins for DDE |
deepin-screensaver |
Deepin screensaver viewer and tools |
deepin-session-shell |
Deepin desktop-environment - session-shell module |
deepin-session-ui |
Deepin desktop-environment - Session UI module |
deepin-shortcut-viewer |
Deepin Shortcut Viewer |
deepin-sound-theme |
Deepin sound theme |
deepin-system-monitor |
A more user-friendly system monitor |
deepin-turbo |
A daemon that helps to launch applications faster |
deepin-wallpapers |
Default wallpapers for DDE |
startdde |
starter of deepin desktop environment |
Back to Deepin
Back to Table of Contents
deepin-extra
Name | Description |
---|---|
deepin-album |
A fashion photo manager for viewing and organizing pictures |
deepin-boot-maker |
Tool to create a bootable usb stick quick and easy |
deepin-calculator |
An easy to use calculator for ordinary users |
deepin-clipboard |
DDE clipboard manager component |
deepin-clone |
Disk and partition backup/restore tool |
deepin-community-wallpapers |
Community wallpapers for DDE |
deepin-compressor |
A fast and lightweight application for creating and extracting archives |
deepin-draw |
A lightweight drawing tool for Linux Deepin |
deepin-editor |
Simple editor for Deepin |
deepin-movie |
Movie player based on QtAV |
deepin-music |
Awesome music player with brilliant and tweakful UI Deepin-UI based. |
deepin-picker |
Color picker tool for deepin |
deepin-printer |
Printer configuration project for DDE |
deepin-reader |
A simple PDF reader, supporting bookmarks, highlights and annotations |
deepin-screen-recorder |
Deepin Screen Recorder |
deepin-screensaver-pp |
Optional PP screensaver resource for deepin screensaver |
deepin-screenshot |
Easy-to-use screenshot tool for linuxdeepin desktop environment |
deepin-terminal |
Default terminal emulation application for Deepin |
deepin-voice-note |
A lightweight memo tool to make text notes and voice recordings |
Back to Deepin
Back to Table of Contents
plasma
Name | Description |
---|---|
bluedevil |
Integrate the Bluetooth technology within KDE workspace and applications |
breeze |
Artwork, styles and assets for the Breeze visual style for the Plasma Desktop |
breeze-gtk |
Breeze widget theme for GTK 2 and 3 |
discover |
KDE and Plasma resources management GUI |
drkonqi |
The KDE crash handler |
kactivitymanagerd |
System service to manage user's activities and track the usage patterns |
kde-cli-tools |
Tools based on KDE Frameworks 5 to better interact with the system |
kde-gtk-config |
GTK2 and GTK3 Configurator for KDE |
kdecoration |
Plugin based library to create window decorations |
kdeplasma-addons |
All kind of addons to improve your Plasma experience |
kgamma5 |
Adjust your monitor's gamma settings |
khotkeys |
KHotKeys |
kinfocenter |
A utility that provides information about a computer system |
kmenuedit |
KDE menu editor |
knetattach |
Wizard which makes it easier to integrate network resources with the Plasma Desktop |
kscreen |
KDE's screen management software |
kscreenlocker |
Library and components for secure lock screen architecture |
ksshaskpass |
ssh-add helper that uses kwallet and kpassworddialog |
ksysguard |
Track and control the processes running in your system |
kwallet-pam |
KWallet PAM integration |
kwayland-integration |
Provides integration plugins for various KDE frameworks for the wayland windowing system |
kwayland-server |
Wayland server components built on KDE Frameworks |
kwin |
An easy to use, but flexible, composited Window Manager |
kwrited |
KDE daemon listening for wall and write messages |
libkscreen |
KDE screen management software |
libksysguard |
Library to retrieve information on the current status of computer hardware |
milou |
A dedicated search application built on top of Baloo |
oxygen |
KDE Oxygen style |
plasma-browser-integration |
Components necessary to integrate browsers into the Plasma Desktop |
plasma-desktop |
KDE Plasma Desktop |
plasma-integration |
Qt Platform Theme integration plugins for the Plasma workspaces |
plasma-nm |
Plasma applet written in QML for managing network connections |
plasma-pa |
Plasma applet for audio volume management using PulseAudio |
plasma-sdk |
Applications useful for Plasma development |
plasma-thunderbolt |
Plasma integration for controlling Thunderbolt devices |
plasma-vault |
Plasma applet and services for creating encrypted vaults |
plasma-workspace |
KDE Plasma Workspace |
plasma-workspace-wallpapers |
Additional wallpapers for the Plasma Workspace |
polkit-kde-agent |
Daemon providing a polkit authentication UI for KDE |
powerdevil |
Manages the power consumption settings of a Plasma Shell |
sddm-kcm |
KDE Config Module for SDDM |
systemsettings |
KDE system manager for hardware, software, and workspaces |
user-manager |
A simple system settings module to manage the users of your system |
xdg-desktop-portal-kde |
A backend implementation for xdg-desktop-portal using Qt/KF5 |
Back to KDE Plasma
Back to Table of Contents
kde-applications
Name | Description |
---|---|
akonadi-calendar-tools |
CLI tools to manage akonadi calendars |
akonadi-import-wizard |
Import data from other mail clients to KMail |
akonadiconsole |
Akonadi management and debugging console |
akregator |
A Feed Reader by KDE |
ark |
Archiving Tool |
artikulate |
Improve your pronunciation by listening to native speakers |
audiocd-kio |
Kioslave for accessing audio CDs |
blinken |
Memory Enhancement Game |
bomber |
A single player arcade game |
bovo |
A Gomoku like game for two players |
cantor |
KDE Frontend to Mathematical Software |
cervisia |
CVS Frontend |
dolphin |
KDE File Manager |
dolphin-plugins |
Extra Dolphin plugins |
dragon |
A multimedia player where the focus is on simplicity, instead of features |
elisa |
A simple music player aiming to provide a nice experience for its users |
ffmpegthumbs |
FFmpeg-based thumbnail creator for video files |
filelight |
View disk usage information |
granatier |
A clone of the classic Bomberman game |
grantlee-editor |
Editor for Grantlee themes |
gwenview |
A fast and easy to use image viewer |
juk |
A jukebox, tagger and music collection manager |
k3b |
Feature-rich and easy to handle CD burning application |
kaddressbook |
KDE contact manager |
kajongg |
The ancient Chinese board game for 4 players |
kalarm |
Personal alarm scheduler |
kalgebra |
Graph Calculator |
kalzium |
Periodic Table of Elements |
kamera |
KDE integration for gphoto2 cameras |
kamoso |
A webcam recorder from KDE community |
kanagram |
Letter Order Game |
kapman |
A clone of the well known game Pac-Man |
kapptemplate |
KDE Template Generator |
kate |
Advanced Text Editor |
katomic |
A fun and educational game built around molecular geometry |
kbackup |
A program that lets you back up any directories or files |
kblackbox |
A game of hide and seek played on a grid of boxes |
kblocks |
The classic falling blocks game |
kbounce |
A single player arcade game with the elements of puzzle |
kbreakout |
A Breakout-like game |
kbruch |
Exercise Fractions |
kcachegrind |
Visualization of Performance Profiling Data |
kcalc |
Scientific Calculator |
kcharselect |
Character Selector |
kcolorchooser |
Color Chooser |
kcron |
Configure and schedule tasks |
kde-dev-scripts |
Scripts and setting files useful during development of KDE software |
kde-dev-utils |
Small utilities for developers using KDE/Qt libs/frameworks |
kdebugsettings |
An application to enable/disable qCDebug |
kdeconnect |
Adds communication between KDE and your smartphone |
kdegraphics-mobipocket |
A collection of plugins to handle mobipocket files |
kdegraphics-thumbnailers |
Thumbnailers for various graphics file formats |
kdenetwork-filesharing |
Properties dialog plugin to share a directory with the local network |
kdenlive |
A non-linear video editor for Linux using the MLT video framework |
kdepim-addons |
Addons for KDE PIM applications |
kdesdk-kioslaves |
KDE SDK KIO-Slaves |
kdesdk-thumbnailers |
Plugins for the thumbnailing system |
kdf |
View Disk Usage |
kdialog |
A utility for displaying dialog boxes from shell scripts |
kdiamond |
A single player puzzle game |
keditbookmarks |
Bookmark Organizer and Editor |
kfind |
Find Files/Folders |
kfloppy |
Floppy Formatter |
kfourinline |
A four-in-a-row game |
kgeography |
Geography Trainer |
kget |
Download Manager |
kgoldrunner |
A game of action and puzzle solving |
kgpg |
A GnuPG frontend |
khangman |
Hangman Game |
khelpcenter |
Application to show KDE Applications' documentation |
kig |
Interactive Geometry |
kigo |
An open-source implementation of the popular Go game |
killbots |
A simple game of evading killer robots |
kimagemapeditor |
HTML Image Map Editor |
kio-extras |
Additional components to increase the functionality of KIO |
kipi-plugins |
A collection of plugins extending the KDE graphics and image applications |
kirigami-gallery |
Gallery application built using Kirigami |
kiriki |
An addictive and fun dice game |
kiten |
Japanese Reference/Study Tool |
kjumpingcube |
A simple tactical game |
kleopatra |
Certificate Manager and Unified Crypto GUI |
klettres |
Learn The Alphabet |
klickety |
An adaptation of the Clickomania game |
klines |
A simple but highly addictive one player game |
kmag |
Screen Magnifier |
kmahjongg |
A tile matching game for one or two players |
kmail |
KDE mail client |
kmail-account-wizard |
KMail account wizard |
kmines |
The classic Minesweeper game |
kmix |
KDE volume control program |
kmousetool |
Clicks the mouse for you, reducing the effects of RSI |
kmouth |
Speech Synthesizer Frontend |
kmplot |
Mathematical Function Plotter |
knavalbattle |
A ship sinking game |
knetwalk |
Connect all the terminals to the server, in as few turns as possible |
knights |
Chess board by KDE with XBoard protocol support |
knotes |
Popup notes |
kolf |
A miniature golf game with 2d top-down view |
kollision |
A simple ball dodging game |
kolourpaint |
Paint Program |
kompare |
Graphical file differences tool |
konqueror |
KDE File Manager & Web Browser |
konquest |
The KDE version of Gnu-Lactic |
konsole |
KDE's terminal emulator |
kontact |
KDE Personal Information Manager |
kopete |
Instant Messenger |
korganizer |
Calendar and scheduling Program |
kpatience |
Offers a selection of solitaire card games |
krdc |
Remote Desktop Client |
kreversi |
A simple one player strategy game played against the computer |
krfb |
Desktop Sharing |
kross-interpreters |
Language interpreters to enable in-process scripting with Kross |
kruler |
Screen Ruler |
kshisen |
A solitaire-like game played using the standard set of Mahjong tiles |
ksirk |
A computerized version of a well known strategy game |
ksnakeduel |
A simple snake duel game |
kspaceduel |
Each of two possible players controls a satellite spaceship orbiting the sun |
ksquares |
A game modeled after the well known pen and paper based game of Dots and Boxes |
ksudoku |
A logic-based symbol placement puzzle |
ksystemlog |
System log viewer tool |
kteatime |
A handy timer for steeping tea |
ktimer |
Countdown Launcher |
ktouch |
Touch Typing Tutor |
ktuberling |
A simple constructor game suitable for children and adults alike |
kturtle |
Educational Programming Environment |
kubrick |
Based on the famous Rubik's Cube |
kwalletmanager |
Wallet management tool |
kwave |
A sound editor for KDE |
kwordquiz |
Flash Card Trainer |
kwrite |
Text Editor |
lokalize |
Computer-Aided Translation System |
lskat |
Lieutenant Skat is a fun and engaging card game for two players |
marble |
Desktop Globe |
mbox-importer |
Import mbox files to KMail |
minuet |
A KDE Software for Music Education |
okular |
Document Viewer |
palapeli |
A single-player jigsaw puzzle game |
parley |
Vocabulary Trainer |
picmi |
A nonogram logic game for KDE |
pim-data-exporter |
Import and export KDE PIM settings |
pim-sieve-editor |
Mail sieve editor |
poxml |
Translates DocBook XML files using gettext po files |
print-manager |
A tool for managing print jobs and printers |
rocs |
Graph Theory IDE |
signon-kwallet-extension |
KWallet integration for signon framework |
spectacle |
KDE screenshot capture utility |
step |
Interactive Physical Simulator |
svgpart |
A KPart for viewing SVGs |
sweeper |
System Cleaner |
telepathy-kde-accounts-kcm |
KCM Module for configuring Telepathy Instant Messaging Accounts |
telepathy-kde-approver |
KDE Channel Approver for Telepathy |
telepathy-kde-auth-handler |
Provide UI/KWallet Integration For Passwords and SSL Errors on Account Connect |
telepathy-kde-call-ui |
Voice/Video Call UI for Telepathy |
telepathy-kde-common-internals |
Common components for KDE-Telepathy |
telepathy-kde-contact-list |
KDE Telepathy contact list application |
telepathy-kde-contact-runner |
KRunner plugin for KDE Telepathy |
telepathy-kde-desktop-applets |
The KDE-Telepathy Plasma desktop applets |
telepathy-kde-filetransfer-handler |
KDE Telepathy file transfer handler |
telepathy-kde-integration-module |
Sits in KDED and takes care of various bits of system integration like setting user to auto-away or handling connection errors |
telepathy-kde-send-file |
A File manager plugin to launch a file transfer job with a specified contact |
telepathy-kde-text-ui |
Telepathy handler for Text Chats |
umbrello |
UML modeller |
yakuake |
A drop-down terminal emulator based on KDE konsole technology |
zeroconf-ioslave |
Network Monitor for DNS-SD services (Zeroconf) |
Back to KDE Plasma
Back to Table of Contents
mate
Name | Description |
---|---|
caja |
File manager for the MATE desktop |
marco |
A window manager for MATE |
mate-backgrounds |
Background images and data for MATE |
mate-control-center |
The Control Center for MATE |
mate-desktop |
Library with common API for various MATE modules |
mate-icon-theme |
MATE icon theme |
mate-menus |
MATE menu specifications |
mate-notification-daemon |
Notification daemon for MATE |
mate-panel |
The MATE Panel |
mate-polkit |
PolicyKit integration for the MATE desktop |
mate-session-manager |
The MATE Session Handler |
mate-settings-daemon |
The MATE Settings daemon |
mate-themes |
Default themes for the MATE desktop |
mate-user-guide |
MATE User Guide |
Back to Mate
Back to Table of Contents
mate-extra
Name | Description |
---|---|
atril |
MATE document viewer |
caja-image-converter |
A Caja extension for simple image conversions |
caja-open-terminal |
A Caja extension for opening terminals in arbitrary local paths |
caja-sendto |
A Caja extension for sending files |
caja-share |
A Caja extension to quickly share a folder |
caja-wallpaper |
A Caja extension to quickly set wallpaper |
caja-xattr-tags |
A Caja extension to see tags stored on xattrs |
engrampa |
Archive manipulator for MATE |
eom |
An image viewing and cataloging program for MATE |
mate-applets |
Applets for MATE panel |
mate-calc |
Calculator for the MATE desktop environment |
mate-icon-theme-faenza |
Faenza icon theme for MATE |
mate-media |
MATE Media Tools |
mate-netbook |
A simple window management tool |
mate-power-manager |
Power management tool for the MATE desktop |
mate-screensaver |
Screensaver for MATE |
mate-sensors-applet |
A MATE Panel applet to display readings from hardware sensors, including CPU temperature, fan speeds and voltage readings |
mate-system-monitor |
A system monitor for MATE |
mate-terminal |
The MATE Terminal Emulator |
mate-user-share |
User level public file sharing via WebDAV for MATE |
mate-utils |
Common MATE utilities for viewing disk usage, logs and fonts, taking screenshots, managing dictionaries and searching files |
mozo |
MATE menu editing tool |
pluma |
A powerful text editor for MATE |
Back to Mate
Back to Table of Contents
xfce4
Name | Description |
---|---|
exo |
Application library for Xfce |
garcon |
Implementation of the freedesktop.org menu specification |
thunar |
Modern file manager for Xfce |
thunar-volman |
Automatic management of removeable devices in Thunar |
tumbler |
D-Bus service for applications to request thumbnails |
xfce4-appfinder |
An application finder for Xfce |
xfce4-panel |
Panel for the Xfce desktop environment |
xfce4-power-manager |
Power manager for Xfce desktop |
xfce4-session |
A session manager for Xfce |
xfce4-settings |
Settings manager of the Xfce desktop |
xfce4-terminal |
A modern terminal emulator primarily for the Xfce desktop environment |
xfconf |
Flexible, easy-to-use configuration management system |
xfdesktop |
A desktop manager for Xfce |
xfwm4 |
Xfce's window manager |
xfwm4-themes |
A set of additional themes for the Xfce window manager |
Back to XFCE4
Back to Table of Contents
xfce4-goodies
Name | Description |
---|---|
mousepad |
Simple text editor for Xfce |
orage |
A simple calendar application with reminders for Xfce |
ristretto |
Fast and lightweight picture-viewer for Xfce4 |
thunar-archive-plugin |
Create and extract archives in Thunar |
thunar-media-tags-plugin |
Adds special features for media files to the Thunar File Manager |
xfburn |
A simple CD/DVD burning tool based on libburnia libraries |
xfce4-artwork |
Backdrops for the Xfce4 desktop |
xfce4-battery-plugin |
A battery monitor plugin for the Xfce panel |
xfce4-clipman-plugin |
A clipboard plugin for the Xfce4 panel |
xfce4-cpufreq-plugin |
CPU frequency plugin for the Xfce4 panel |
xfce4-cpugraph-plugin |
CPU graph plugin for the Xfce4 panel |
xfce4-datetime-plugin |
A date and time display plugin for the Xfce panel |
xfce4-dict |
A dictionary plugin for the Xfce panel |
xfce4-diskperf-plugin |
Plugin for the Xfce4 panel displaying instant disk/partition performance |
xfce4-eyes-plugin |
A rolling eyes (following mouse pointer) plugin for the Xfce panel |
xfce4-fsguard-plugin |
File system usage monitor plugin for the Xfce4 panel |
xfce4-genmon-plugin |
plugin that monitors customizable programs stdout for the Xfce4 panel |
xfce4-mailwatch-plugin |
Multi-protocol, multi-mailbox mail watcher for the Xfce4 panel |
xfce4-mount-plugin |
Mount/umount utility for the Xfce4 panel |
xfce4-mpc-plugin |
Control the Music Player Daemon from the Xfce4 panel |
xfce4-netload-plugin |
A netload plugin for the Xfce panel |
xfce4-notes-plugin |
A notes plugin for the Xfce4 panel |
xfce4-notifyd |
Notification daemon for the Xfce desktop |
xfce4-pulseaudio-plugin |
Pulseaudio plugin for Xfce4 panel |
xfce4-screensaver |
Xfce Screensaver |
xfce4-screenshooter |
Plugin that makes screenshots for the Xfce panel |
xfce4-sensors-plugin |
A lm_sensors plugin for the Xfce panel |
xfce4-smartbookmark-plugin |
Plugin for the Xfce4 panel that lets you quicksearch from selected websites |
xfce4-systemload-plugin |
A system load plugin for the Xfce4 panel |
xfce4-taskmanager |
Easy to use task manager |
xfce4-time-out-plugin |
Take a break from your computer with this plugin for Xfce4 |
xfce4-timer-plugin |
Plugin to track time for the Xfce4 panel |
xfce4-verve-plugin |
Command line plugin Xfce4 panel |
xfce4-wavelan-plugin |
Plugin to monitor wifi connectivity for the Xfce4 panel |
xfce4-weather-plugin |
A weather plugin for the Xfce4 panel |
xfce4-xkb-plugin |
Plugin to switch keyboard layouts for the Xfce4 panel |
parole |
Modern media player based on the GStreamer framework |
xfce4-whiskermenu-plugin |
Menu for Xfce4 |
Back to XFCE4
Back to Table of Contents
Useful Commands
SystemD
Source website: Here
Basic Uses of SystemD
List systemd services
Lists all active systemd services.
systemctl list-units
Lists all of the units installed on the system, including those that systemd has not tried to load into memory.
systemctl list-unit-files
Lists all possible systemd services which have loaded or attempted to load into memory, including those that are not currently active
systemctl list-units --all
Lists all possible systemd services which have loaded or attempted to load into memory.
systemctl list-unit-files --state=enabled --no-pager
Enable / Disable systemd services
systemctl enable {ServiceName}.service
systemctl disable {ServiceName}.service
Check status of systemd services
systemctl status {ServiceName}.service
Back to Table of Contents Check startup Applications for anything unnecessary.
Logging
To see all log entries, starting at the oldest entry, type:
journalctl
By default, this will show you entries from the current and previous boots if journald
is configured to save previous boot records. Some distributions enable this by default, while others do not (to enable this, either edit the /etc/systemd/journald.conf file and set the Storage= option to “persistent”, or create the persistent directory by typing sudo mkdir -p /var/log/journal
If you only wish to see the journal entries from the current boot, add the -b flag:
journalctl -b
To see only kernel messages, such as those that are typically represented by dmesg, you can use the -k flag:
journalctl -k
Again, you can limit this only to the current boot by appending the -b flag:
journalctl -k -b
Identify Boot Delays
Analyze boot times
Check startup Applications for anything unnecessary.
systemd-analyze
systemd-analyze blame
This dumps the results into a graphical SVG file for details analysis.
systemd-analyze plot > plot.svg
This command prints a tree of the time-critical chain of units (for each of the specified UNIT s or for the default target otherwise). The time after the unit is active or started is printed after the "@" character.
systemd-analyze critical-chain [ UNIT ...]
If a boot delay is caused by man-db
then disable the service with:
systemctl disable man-db.service
And ensure you either manually run mandb
after updates or add to script.
Crash Investigation
-
List recent boots with
last -F | sort -r
if you see entries for crashes then proceed to find out more details. -
To list boot records run:
journalctl --list-boots | less
-
Match the records from step 1 and two using the date and times provided.
From Step One:
adam tty7 :0 Fri Jul 3 17:55:39 2020 - crash (17:33)
From Step Two
-85 ed5637fe3bab4d058e16b7baa25bfc8a Fri 2020-07-03 17:55:39 BST—Fri 2020-07-03 22:01:01 BST
-
Run the command
journalctl -b -ID -e
using the ID from step two at the beginning of the entry, for example:journalctl -b -85 -e
-
This will display the errors
CLI Extras
Password Astrisk
Run visudo
and add the following line:
Defaults pwfeedback
Export Man Pages
HTML
BROWSER=firefox man -H <command>
or
man -Thtml (command)<(filename).html>
Requires groff
and gropdf
man -Tpdf (command)<(filename).pdf>
Requires groff
and gropdf