Linux Dev Setup
A quick guide for setting up a Linux development machine from scratch.
Install Operating System
My operating system of choice is Fedora, like with any Linux operating system the ISO can be downloaded and burned to a USB as a Live CD.
When the Live CD is booted, do the following:
- Click "Install to Hard Drive"
- Select desired language
- In Disk Selection
- Select the disk to install to
- Click "Free up space by removing or shrinking existing partitions"
- Click "Encrypt my data"
- Click Done
- In the popup, click "Delete all" then "Reclaim space"
Setup Repositories
# Enable RPM Fusion
sudo dnf install \
https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install \
https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
# Install `dnf config-manager` to manage repos
sudo dnf install -y dnf-plugins-core
# Enable HashiCorp repo
sudo dnf config-manager --add-repo https://rpm.releases.hashicorp.com/fedora/hashicorp.repo
# Setup Flatpak
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Install Apps
# Packages
sudo dnf install -y \
vim \
htop \
lm_sensors \
restic \
dotnet-sdk-6.0 \
python3-pip \
moby-engine \
docker-compose \
gnome-tweaks \
VirtualBox
# Flatpaks
flatpak install com.mattjakeman.ExtensionManager
# Install multimedia libraries
sudo dnf install gstreamer1-plugins-{bad-\*,good-\*,base} gstreamer1-plugin-openh264 gstreamer1-libav --exclude=gstreamer1-plugins-bad-free-devel
sudo dnf install lame\* --exclude=lame-devel
sudo dnf group upgrade --with-optional Multimedia
There is also a few apps that aren't installed via the command line:
Configure Docker
# Create the docker group
sudo groupadd docker
# Add the current user to the group
sudo usermod -aG docker $USER
# Activate the changes to the group without needing to login and logout
newgrp docker
Install VS Code
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'
dnf check-update
sudo dnf install code
Install Volta and Node.js
# Install Volta
curl https://get.volta.sh | bash
# Install Node
volta install node
# Install PNPM
npm i -g pnpm
Configure Git
GNOME Shell Extensions
Extensions can be installed using the Extension Manager app, which was installed in the above steps.
Install the following extensions:
- Vitals by corecoding
DisplayLink
Video Acceleration
Last update:
August 12, 2023
Created: June 3, 2023
Created: June 3, 2023