Skip to content

Instantly share code, notes, and snippets.

@nukhes
Last active January 31, 2026 15:24
Show Gist options
  • Select an option

  • Save nukhes/456ecff9531254365b1b4d46929e2577 to your computer and use it in GitHub Desktop.

Select an option

Save nukhes/456ecff9531254365b1b4d46929e2577 to your computer and use it in GitHub Desktop.
Setup Alpine Linux for desktop usage.

install system packages and apps

setup-xorg-base
doas setup-apkrepos -1
doas apk update
doas apk add alpine-base alsa-lib alsa-plugins-pulse alsa-ucm-conf alsa-utils alsa-utils-doc attr automake bemenu blkid btop busybox-mdev-openrc command-not-found cryptsetup curl dbus dbus-openrc dbus-x11 dmenu doas e2fsprogs eudev eza fastfetch fd ffmpegthumbnailer firefox fish flatpak font-terminus fuse3 fzf g++ gcc git gtk+3.0-dev gtk-murrine-engine gvfs gvfs-fuse htop intel-ucode intltool iw iwd iwgtk libx11-dev libxft-dev libxinerama-dev libxml2-utils linux-firmware-any linux-firmware-i915 linux-firmware-intel linux-firmware-mediatek linux-firmware-none linux-firmware-other linux-firmware-rtl_bt linux-firmware-rtl_nic linux-headers linux-lts linux-lts-dev lsblk lvm2 make mesa-dri-gallium meson mousepad musl-dev ncurses neovim ninja nodejs npm nsxiv openssh openssl papirus-icon-theme pipewire pipewire-alsa pipewire-pulse polkit pulseaudio-alsa pulseaudio-utils ranger rclone ripgrep sassc setxkbmap simdutf starship stow syslinux thunar ttf-dejavu tumbler udev-init-scripts udev-init-scripts-openrc udiskie udisks2 wireless-regdb wireplumber xf86-input-libinput xinit xorg-server xournalpp xrandr yazi zoxide
doas apk add lxappearance --repository=https://dl-cdn.alpinelinux.org/alpine/edge/testing
doas addgroup ph disk

audio

doas chmod 666 /dev/snd/*

doas rc-update add alsa default
doas service alsa start

doas addgroup ph audio
doas addgroup ph video

# celeron b820 quirks
echo "snd_hda_intel" | doas tee -a /etc/modules
doas modprobe snd_hda_intel
# ensure in alsamixer card is not muted

enable dbus

doas rc-update add dbus default
doas rc-service dbus start

iwd instead of wpa (needs a reboot)

doas apk add iwd openresolv nano dbus
doas rc-service wpa_supplicant stop
doas rc-update add iwd boot
doas sed -i 's/^#EnableNetworkConfiguration=True$/EnableNetworkConfiguration=True/' /etc/iwd/main.conf
doas sed -i 's/^#NameResolvingService=resolvconf$/NameResolvingService=resolvconf/' /etc/iwd/main.conf
doas apk del wpa_supplicant
doas rc-service iwd start
iwctl station wlan0 get-networks

dwm and slstatus

mkdir src && cd src
git clone https://github.com/nukhes/dwm.git
cd dwm
doas make clean install
cd ..
git clone https://git.suckless.org/slstatus
cd slstatus
doas make clean install

twea

echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

flatpak

doas flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
doas flatpak install flathub com.visualstudio.code
@nukhes
Copy link
Author

nukhes commented Jan 27, 2026

apk add curl
curl -fsSl https://gist.githubusercontent.com/nukhes/456ecff9531254365b1b4d46929e2577/raw | sh

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment