A spin of Alpine Linux for my personal usage
1#!/usr/bin/env sh
2
3set -eux
4
5# Setup
6setup-wayland-base
7
8# Basics
9apk add -y \
10 doas \
11 flatpak \
12 vim \
13 openssh
14
15echo 'permit :wheel' > /etc/doas.d/doas.conf
16
17# Desktop
18apk add -y \
19 niri \
20 font-dejavu \
21 nerd-fonts-all \
22 alacritty \
23 nautilus \
24 fuzzel \
25 mako \
26 grim \
27 swayidle \
28 swaylockd \
29 swaybg \
30 brightnessctl \
31 wl-clipboard \
32 xwayland \
33 xdg-utils \
34 libnotify \
35 gnome-keyring \
36 capitaine-cursors
37
38# Create manager
39adduser manager
40adduser manager wheel # doas
41adduser manager plugdev # Allow WiFi management.
42su -Dl manager
43
44# Install basic apps
45flatpak install -y flathub \
46 org.gnome.Epiphany \
47 org.scratchmark.Scratchmark \
48 dev.neovide.neovide \
49 org.keepassxc.KeePassXC \
50 net.ankiweb.Anki \
51 dev.vencord.Vesktop \
52 org.gnome.Fractal \
53 md.obsidian.Obsidian
54
55# Allow Fractal to access gnome-keyring
56flatpak --user override --talk-name=org.freedesktop.secrets org.gnome.Fractal
57
58# Icon theme (La Capitaine)
59mkdir -p ~/.icons/
60cd ~/.icons/
61git clone --depth=1 https://github.com/keeferrourke/la-capitaine-icon-theme.git
62cd -
63
64# Wallpaper
65mkdir -p ~/Pictures/Wallpapers/
66curl -Lo ~/Pictures/Wallpapers/forest1.png https://i.redd.it/4vztk5m7p9651.jpg
67
68# Copy configs
69mkdir -p ~/.config/
70cp -r ./.config/* ~/.config/
71
72# Copy .profile
73cp ./profile ~/.profile
74
75# Git configuration
76git config --global init.initialBranch main
77
78# Create distroboxes
79mkdir -p ~/Boxes/
80distrobox create -Y -i debian:latest -n dev -H ~/Boxes/dev -ap "git build-essential"
81