Prefer Void? Check out Void Suck
This installer includes my own custom set of suckless tools (dwm, slstatus, dmenu, etc.) but you can easily swap this out with the original defaults or link to your own.
Alpine Suck was created and run on a X260 ThinkPad. Other machines may differ. Please take a look at the "Tweaks & Troubleshooting" section if you run into any minor issues.
I'm Bradley Taunt, a UX and frontend designer. I enjoy Linux and minimalism. Alpine Linux paired with the core suckless programs seemed like a perfect fit for my day-to-day needs (both personal and work).
The problem: Alpine Linux is hardly "noob" friendly. Newcomers are most likely turned away by the CLI-based installer, compared to that of more modern GUI Linux setups. Even if they complete the installer without issue, users still need to know what core packages they need to get things running as a proper "computer".
The solution: Create an installer that handles almost all of the heavy-lifting. Get out of the way and let the user use their machine. This is the purpose of Alpine Suck.
What you see is what you get. (BTW - you should always have screenshots of your project)
Looks good? Then keep reading to get it on your own machine!
After downloading your proper Alpine install image of choice, flash the image to a USB or SD card, and then proceed to install on your laptop/desktop.
Installing Alpine is very easy and straightforward. Simply login as root
(no password is required) and then run the following command:
setup-alpine
Please refer to the official installation instructions if you need further assistance.
After running installing the base Alpine image using the instructions above, move on to the next steps:
setup-xorg-base
apk update && apk upgrade
git
, vim
, bash
, & sudo
(via apk add
)/etc/sudoers
and give wheel group accessAfter finishing the above, create a new user:
adduser -g "Real Name" username
Then add them to all required groups (wheel,users,audio,video,cdrom,input,tty):
adduser username wheel
Then logout of root
user.
In these next steps we will:
install-dependencies.sh
. The script will simply read required packages from dependencies.txt
and run apk add
.install.sh
.Login as your newly created user. Then, pull down the main Alpine Suck repo and navigate inside it:
git clone https://git.sr.ht/~bt/alpine-suck
cd alpine-suck
Before we move on, be sure of open and edit the install.sh
file. You will need to change the "username" to your own created user:
# you will need to change 'bt' to your own username
mkdir /home/bt/.suckless
cd /home/bt/.suckless
Now for the fun part - the install! Our dependencies need to be installed first:
sudo ./install-dependencies.sh
Feel free to grab that coffee mentioned earlier. This doesn't take too long, but on some internet connections it could be slower. Once it is finished, run the next command to install and build the core suckless programs:
sudo ./install.sh
When that completes (and hopefully without any errors!) copy over the base .xinitrc
and .profile
files:
cp .xinitrc ~/.xinitrc # Apply .xinitrc
cp .profile ~/.profile # Apply .profile
Now reboot your machine, login as your main user and run:
startx
More tweaks might be needed to get things setup for your own specific needs, but Alpine Suck should give you a solid foundation to let you hit the ground running!
You might need to check /proc/asound/cards
to see which sound cards are available to your system. Then, if needed, you should create a /etc/asound.conf
file with the following inside (where the "1" is your desired card number):
defaults.pcm.card 1
defaults.ctl.card 1
You might also need to create a file:
/etc/modules-load.d/modules.conf
and inside place the following:
snd-pcm-oss
This will take on the next reboot of the machine.
If you didn't setup wifi during the initial, base install, run the following:
iwctl device list
# the follwing assumes that "iwctl device list" produced "wlan0"
iwctl station wlan0 scan && iwctl station wlam0 get-networks
iwctl station wlan0 connect <SSID>
After this you might need to reboot networking:
sudo rc-service networking restart
Please take a look at the project on sourcehut. Patches and issue reports are always welcome!