The Perfect Linux Web Development Setup
Gnome Boxes
Install the spice-vdagent on both host and client to make copy and paste possible.
sudo apt install spice-vdagentScreenshots


What’s the goal?
We will build out our personal web dev setup on a solid base we can easily rebuild whenever needed - without looking everthing up again.
sudo apt update && sudo apt purge firefox-esr gnome-games evolution && sudo apt upgrade && sudo apt autoremove && sudo apt autocleanInstalling the foundation using distribution packages
sudo apt install \
aptitude \
arandr \
bat \
bash-completion \
build-essential \
ca-certificates \
cargo \
curl \
dmenu \
dunst \
exa \
filezilla \
flameshot \
flatpak \
firefox-esr \
gdu \
git \
gnupg \
imwheel \
kbdd \
kitty \
libfuse2 \
mpv \
nitrogen \
pulseaudio \
ripgrep \
rofi \
stow \
sxhkd \
i3 \
i3blocks \
i3status \
thunderbird \
unclutter \
wget \
xdotool \
xorgSnap
Moved Neovim from repository to SNAP due to newer versions available via Snap
sudo snap install nvim --classicdeb-get
Github: https://github.com/wimpysworld/deb-get
Add deb-get for more .deb software packages and to save time
curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get && sudo apt updateSome software packages I need. All supported software packages can be found here.
deb-get install \
code \
google-chrome-stable \
- insync \
signal-desktop \
appimagelauncherOptional deb-get packages
deb-get install \
brave-browser \
cryptomator \
opera-stable \
obsidianFlatpak
Base
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepopackages
Thunderbird, Betterbird, Mullvad,
flatpak install \
flathub org.mozilla.Thunderbird \
flathub eu.betterbird.Betterbird \
flathub net.mullvad.MullvadBrowser \
flathub org.gimp.GIMPSnap (not on Debian)
Espanso (not working as expected)
sudo snap install espanso --classic --channel=latest/edge
espanso service register
espanso startwget https://github.com/federico-terzi/espanso/releases/download/v2.2.1/espanso-debian-x11-amd64.deb
sudo apt install ./espanso-debian-x11-amd64.deb
espanso service register
espanso startMullvad VPN
Homepage: https://mullvad.net/
Download the Mullvad signing key, add the Mullvad repository server to apt, install the package.
sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc
echo "deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/mullvad.list
sudo apt update
sudo apt install mullvad-vpnJoplin
Homepage: https://joplinapp.org/
wget -O - https://raw.githubusercontent.com/laurent22/joplin/dev/Joplin_install_and_update.sh | bashNVM for NodeJS & NPM
Homepage: https://github.com/nvm-sh/nvm
Guide: https://linuxize.com/post/how-to-install-node-js-on-ubuntu-20-04/
We use the NVM installer script from Github.
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bashexport NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvmAlways remember: never just copy and paste code from any website into your terminal
And with this we install NodeJS and NPM.
nvm install nodeInstall FZF
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/installDDEV & Docker (NEEDS TO BE UPDATED!!!)
The following commands are just a small part of the whole installation guide. So, please follow along to the complete DDEV & Docker Installation Guide over on the official docs - unless you almost know what you are doing or need just the essential parts of it.
curl -fsSL https://apt.fury.io/drud/gpg.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/ddev.gpg > /dev/null && echo "deb [signed-by=/etc/apt/trusted.gpg.d/ddev.gpg] https://apt.fury.io/drud/ * *" | sudo tee /etc/apt/sources.list.d/ddev.list && sudo apt update && sudo apt install -y ddevsudo apt-get remove docker docker-engine docker.io containerd runcsudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-releasesudo mkdir -p /etc/apt/keyrings && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpgecho \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullsudo apt-get updatesudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
mkcert -installAbout ~111MB worth.
Add a new group called docker and add your $user to it if - most of the it’s already done.
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp dockersudo systemctl enable docker.service
sudo systemctl enable containerd.serviceNow we want to test if everything is up and running. We do so with these both commands.
sudo docker run hello-world
docker run hello-worldKeep in mind NOT to use ddev or docker with sudo privileges in any other case than this here. If you need sudo privileges you have to double check your setup!
i3wm
i3 Layout Manager
!!! Needs active github configuration !!!
https://github.com/klaxalk/i3-layout-manager
git clone https://github.com/klaxalk/i3-layout-manager.git ~/source/i3-layout-manager/Install Starship Shell
curl -sS https://starship.rs/install.sh | shFont
JetBrains Mono NerdFont
Linux Mint Webapp Manager
- https://github.com/linuxmint/webapp-manager
- http://packages.linuxmint.com/pool/main/w/webapp-manager/
Install a nice wallpaper
https://commons.wikimedia.org/wiki/File:2016-11-14_gnu-linux_wallpaper.png
Manjaro / Arch
Docker && DDEV
sudo pacman -Syyu
sudo pacman -S docker
yay -Syyu ddev-bin
sudo usermod -aG docker $USER
sudo systemctl start docker.service
sudo systemctl enable docker.service
rebootConfig Carneval
debian.md
clear
echo "### CLEAN UP JUNK AND BLOAT"
sudo apt remove gnome-games evolution libreoffice\*
sudo apt autoremove
sudo apt autoclean
clear
echo "### LOOK FOR UPDATES FIRST"
sudo apt update
echo "### INSTALL BASE DEBIAN"
sudo apt install \
aptitude \
arandr \
bash-completion \
build-essential \
ca-certificates \
curl \
dmenu \
dunst \
filezilla \
flameshot \
flatpak \
gnome-shell-extension-manager \
gnome-tweaks \
gnome-software-plugin-flatpak \
ksnip \
gdu \
git \
gnupg \
imwheel \
kbdd \
libfuse2 \
mpv \
neovim \
nitrogen \
pipx \
ripgrep \
rofi \
stow \
sxhkd \
i3 \
i3blocks \
i3status \
thunderbird \
wget \
xbacklight \
xdotool \
xorg \
-y
echo "### INSTALL FLATPAK"
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
echo "## FLATPAK"
sudo flatpak install flathub it.mijorus.gearlever org.nickvision.tubeconverter flathub fr.romainvigier.MetadataCleaner -y
echo "### INSTALL PIPX"
pipx install gnome-extensions-cli --system-site-packages
# REBOOT
gext install [email protected]
gext install [email protected]
gext install [email protected]
gext install space-bar@luchrioh
gext install AlphabeticalAppGrid@stuarthayhursti3.configuration
# bindsym XF86MonBrightnessUp exec xbacklight -inc 10 # increase screen brightness
# bindsym XF86MonBrightnessDown exec xbacklight -dec 10 # decrease screen brightnessshell1.sh
clear
echo "### CLEAN UP JUNK AND BLOAT"
sudo apt purge gnome-games evolution libreoffice* -y
echo "### LOOK FOR UPDATES FIRST"
sudo apt update && sudo apt upgrade -y
echo "### INSTALL BASE DEBIAN"
sudo apt install aptitude arandr bash-completion build-essential ca-certificates curl dmenu dunst filezilla flameshot flatpak gnome-shell-extension-manager gnome-tweaks gnome-software-plugin-flatpak ksnip gdu git gnupg imwheel kbdd kitty libfuse2 mpv nitrogen pcmanfm pipx ripgrep rofi stow sxhkd i3 i3blocks i3status thunderbird wget xbacklight xdotool xorg -y
echo "### CLEAN UP JUNK AND BLOAT"
sudo apt autoremove -y
sudo apt autoclean -yshell2.sh
echo "### INSTALL FLATPAK"
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
echo "### INSTALL PIPX"
pipx install gnome-extensions-cli --system-site-packages
gext install [email protected]
gext install [email protected]
gext install [email protected]
gext install space-bar@luchrioh
gext install AlphabeticalAppGrid@stuarthayhurst
echo "## FLATPAK"
flatpak install flathub it.mijorus.gearlever org.nickvision.tubeconverter flathub fr.romainvigier.MetadataCleaner flathub io.github.getnf.embellish -y
sudo rebootxorg.conf
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
Option "Backlight" "intel_backlight"
EndSection- Testing
- Linux
- Ubuntu
- Debian
- WebDev