aboutsummaryrefslogtreecommitdiff
path: root/content/blog/2022-12-23-alpine-desktop.md
diff options
context:
space:
mode:
authorChristian Cleberg <hello@cleberg.net>2024-04-29 14:18:55 -0500
committerChristian Cleberg <hello@cleberg.net>2024-04-29 14:18:55 -0500
commitfdd80eadcc2f147d0198d94b7b908764778184a2 (patch)
treefbec9522ea9aa13e8105efc413d2498c3c5b4cd6 /content/blog/2022-12-23-alpine-desktop.md
parentd6c80fdc1dea9ff242a4d3c7d3939d2727a8da56 (diff)
downloadcleberg.net-fdd80eadcc2f147d0198d94b7b908764778184a2.tar.gz
cleberg.net-fdd80eadcc2f147d0198d94b7b908764778184a2.tar.bz2
cleberg.net-fdd80eadcc2f147d0198d94b7b908764778184a2.zip
format line wrapping and fix escaped characters
Diffstat (limited to 'content/blog/2022-12-23-alpine-desktop.md')
-rw-r--r--content/blog/2022-12-23-alpine-desktop.md97
1 files changed, 45 insertions, 52 deletions
diff --git a/content/blog/2022-12-23-alpine-desktop.md b/content/blog/2022-12-23-alpine-desktop.md
index 52538b5..ee4b1a4 100644
--- a/content/blog/2022-12-23-alpine-desktop.md
+++ b/content/blog/2022-12-23-alpine-desktop.md
@@ -5,33 +5,31 @@ description = ""
draft = false
+++
+# Isn't Alpine Linux for Servers?
-# Isn\'t Alpine Linux for Servers?
+This is a question I see a lot when people are presented with an example of
+Alpine Linux running as a desktop OS.
-This is a question I see a lot when people are presented with an example
-of Alpine Linux running as a desktop OS.
+While Alpine is small, fast, and minimal, that doesn't stop it from functioning
+at a productive level for desktop users.
-While Alpine is small, fast, and minimal, that doesn\'t stop it from
-functioning at a productive level for desktop users.
-
-This post is documentation of how I installed and modified Alpine Linux
-to become my daily desktop OS.
+This post is documentation of how I installed and modified Alpine Linux to
+become my daily desktop OS.
# Installation
-Note that I cover the installation of Alpine Linux in my other post, so
-I won\'t repeat it here: [Alpine Linux: My New Server
-OS](../alpine-linux/).
+Note that I cover the installation of Alpine Linux in my other post, so I won't
+repeat it here: [Alpine Linux: My New Server OS](../alpine-linux/).
-Basically, get a bootable USB or whatever you prefer with Alpine on it,
-boot the ISO, and run the setup script.
+Basically, get a bootable USB or whatever you prefer with Alpine on it, boot the
+ISO, and run the setup script.
```sh
setup-alpine
```
-Once you have gone through all the options and installer finishes
-without errors, reboot.
+Once you have gone through all the options and installer finishes without
+errors, reboot.
```sh
reboot
@@ -40,9 +38,9 @@ reboot
# Initial Setup
Once Alpine is installed and the machine has rebooted, login is as root
-initially or `su` to root once you log in as your user. From
-here, you should start by updating and upgrading the system in case the
-ISO was not fully up-to-date.
+initially or `su` to root once you log in as your user. From here, you should
+start by updating and upgrading the system in case the ISO was not fully
+up-to-date.
```sh
# Update and upgrade system
@@ -52,8 +50,8 @@ apk -U update && apk -U upgrade
apk add nano
```
-You need to uncomment the `community` repository for your
-version of Alpine Linux.
+You need to uncomment the `community` repository for your version of Alpine
+Linux.
For v3.17, the `repositories` file should look like this:
@@ -80,11 +78,11 @@ adduser $USER wheel
# Window Manager (Desktop)
-The [Sway installation guide](https://wiki.alpinelinux.org/wiki/Sway)
-has everything you need to get Sway working on Alpine.
+The [Sway installation guide](https://wiki.alpinelinux.org/wiki/Sway) has
+everything you need to get Sway working on Alpine.
-However, I\'ll include a brief list of the commands I ran and their
-purpose for posterity here.
+However, I'll include a brief list of the commands I ran and their purpose for
+posterity here.
```sh
# Add eudev and set it up
@@ -126,11 +124,10 @@ apk add \ # Install optional dependencies:
```
Once you have the packages installed and set-up, you need to export the
-`XDG_RUNTIME_DIR` upon login. To do this, edit your
-`.profile` file.
+`XDG_RUNTIME_DIR` upon login. To do this, edit your `.profile` file.
-If you use another shell, such as `zsh`, you need to edit
-that shell\'s profile (e.g., `~/.zprofile`)!
+If you use another shell, such as `zsh`, you need to edit that shell's profile
+(e.g., `~/.zprofile`)!
```sh
nano ~/.profile
@@ -148,7 +145,7 @@ if test -z "${XDG_RUNTIME_DIR}"; then
fi
```
-Once that\'s complete, you can launch Sway manually.
+Once that's complete, you can launch Sway manually.
```sh
dbus-run-session -- sway
@@ -156,8 +153,7 @@ dbus-run-session -- sway
## Personal Touches
-I also added the following packages, per my personal preferences and
-situation.
+I also added the following packages, per my personal preferences and situation.
```sh
doas apk add brightnessctl \ # Brightness controller
@@ -171,16 +167,16 @@ doas apk add brightnessctl \ # Brightness controller
gnupg # GPG key manager
```
-From here, I use my Syncthing storage to pull all the configuration
-files I stored from prior desktops, such as [my
+From here, I use my Syncthing storage to pull all the configuration files I
+stored from prior desktops, such as [my
dotfiles](https://git.sr.ht/~cmc/dotfiles).
# Resolving Issues
## WiFi Issues
-I initially tried to set up my Wi-Fi the standard way with
-`iwd`, but it didn\'t work.
+I initially tried to set up my Wi-Fi the standard way with `iwd`, but it didn't
+work.
Here is what I initially tried (I did all of this as `root`):
@@ -191,8 +187,7 @@ iwctl station wlan0 connect <SSID> # This will prompt for the password
rc-update add iwd boot && rc-update add dbus boot
```
-Then, I added the Wi-Fi entry to the bottom of the networking interface
-file:
+Then, I added the Wi-Fi entry to the bottom of the networking interface file:
```sh
nano /etc/network/interfaces
@@ -209,13 +204,11 @@ Finally, restart the networking service:
rc-service networking restart
```
-My Wi-Fi interface would receive an IP address from the router, but it
-could not ping anything in the network. To solve the Wi-Fi issues, I
-originally upgraded to Alpine\'s `edge` repositories, which
-was unnecessary.
+My Wi-Fi interface would receive an IP address from the router, but it could not
+ping anything in the network. To solve the Wi-Fi issues, I originally upgraded
+to Alpine's `edge` repositories, which was unnecessary.
-Really, the solution was to enable the
-`NameResolvingService=resolvconf` in
+Really, the solution was to enable the `NameResolvingService=resolvconf` in
`/etc/iwd/main.conf`.
```sh
@@ -232,8 +225,8 @@ Once I finished this process, my Wi-Fi is working flawlessly.
## Sound Issues
-Same as with the Wi-Fi, I had no sound and could not control the
-mute/unmute or volume buttons on my laptop.
+Same as with the Wi-Fi, I had no sound and could not control the mute/unmute or
+volume buttons on my laptop.
To resolve this, I installed
[pipewire](https://wiki.alpinelinux.org/wiki/PipeWire).
@@ -247,9 +240,9 @@ addgroup $USER video
apk add pipewire wireplumber pipewire-pulse pipewire-jack pipewire-alsa
```
-Finally, I needed to add `/usr/libexec/pipewire-launcher` to
-my `.config/sway/config` file so that Pipewire would run
-every time I launched sway.
+Finally, I needed to add `/usr/libexec/pipewire-launcher` to my
+`.config/sway/config` file so that Pipewire would run every time I launched
+sway.
```sh
nano ~/.config/sway/config
@@ -266,8 +259,8 @@ bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ to
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle
```
-Note that I do not use bluetooth or screen sharing, so I won\'t cover
-those options in this post.
+Note that I do not use bluetooth or screen sharing, so I won't cover those
+options in this post.
-Other than these issues, I have a working Alpine desktop. No other
-complaints thus far!
+Other than these issues, I have a working Alpine desktop. No other complaints
+thus far!