~kmdodrill/blog

9bb031fd419930aefe70c4f36630dbb133c24566 — Kenneth Dodrill 1 year, 6 months ago ac36c78
Update VL guide
M content/blog/prototype-your-gameplay-first.md => content/blog/prototype-your-gameplay-first.md +6 -1
@@ 86,5 86,10 @@ You absolutely must focus on making a small prototype of your games before doing

Make your game idea's foundation first. **If it's not fun, it's probably not worth making.**

So, what can you do to improve on making prototypes and generating ideas? _Game jams_. Game jams are all about making small little games, usually not more than 5 minutes long. They typically have a theme involved, or some modifiers to include if you're feeling up to the challenge. My last two game jam games came out rather well. The first one I made this year, [dungeonyx](https://diode.zone/w/hufrSGMRxdPpRBzE1DULpA), is my most popular game on Itch by far.
So, what can you do to improve on making prototypes and generating ideas? _Game
jams_. Game jams are all about making small little games, usually not more than
5 minutes long. They typically have a theme involved, or some modifiers to
include if you're feeling up to the challenge. My last two game jam games came
out rather well. The first one I made this year,
[dungeonyx](https://stormkmd.itch.io/dungeonyx), is my most popular game on Itch by far.


M content/blog/stable-void-linux-setup-guide.md => content/blog/stable-void-linux-setup-guide.md +47 -12
@@ 1,7 1,7 @@
+++
title = "Stable Void Linux Setup Guide"
date = 2020-09-06
updated = 2022-12-18
updated = 2023-02-19
draft = false
+++



@@ 20,6 20,11 @@ draft = false
	- [Date & Time](#date-time)
* [Conclusion](#conclusion)

NOTE: This guide has specific installation instructions for a desktop
environment including dbus, seatd, iwd, pipewire, and a window manager (I'm
using sway). If that's not what you're here for, you can still follow the steps
below and roll with whatever you like (GNOME, KDE, etc).

## Intro

I won't bore you with the basics. You're here because you don't want to be running Ubuntu. Void is like Arch in the way of having total customization over your packages, with a start-from-scratch mentality. You don't mind spending 4 hours setting up your system because you want it to be _your_ system.


@@ 32,6 37,9 @@ Initially, I wanted this to be more general and less personalized. However, as I

## Installation notes

NOTE: If you would like to encrypt your drive, please follow the official Void Linux
guide. Otherwise, continue with the below paragraph.

Before you run the installer, start up `dhcpcd`. Then, link `wpa_supplicant` and start that, too. Go through `wpa_supplicant` to get connected to the internet. Once that's done, run the installer and fill out all the fields. In my experience, trying to connect to the internet without starting both services resulted in an error if I tried to update my system. Running just `wpa_supplicant` is also not enough because your DNS settings will not copy over from installation. I have tried re-connecting but for some reason running `dhcpcd` first was the only way to get things to really 'work'.

## Post Installation


@@ 40,29 48,40 @@ Before you run the installer, start up `dhcpcd`. Then, link `wpa_supplicant` and

Absolutely your first step should be to link and start `dhcpcd` and `wpa_supplicant`. Verify your connection (it should work fine if you followed the steps above), then update the system.

```bash
xbps-install -Su
```

Enable repositories:

```bash
xbps-install void-repo-nonfree void-repo-multilib void-repo-multilib-nonfree
```

Change mirrors (seriously helps with download speeds, see a list of mirrors [here](https://docs.voidlinux.org/xbps/repositories/mirrors/index.html?highlight=mirros#mirrors)):
Make a new user and login to it (recommended before the next steps)

```bash
mkdir -p /etc/xbps.d
cp /usr/share/xbps.d/*-repository-*.conf /etc/xbps.d/
sed -i 's|https://alpha.de.repo.voidlinux.org|<repository>|g' /etc/xbps.d/*-repository-*.conf
useradd name
passwd name
```

Check the void docs for sudo permissions and also about adding to other groups
(if using seatd).

Change mirrors (seriously helps with download speeds, see a list of mirrors [here](https://docs.voidlinux.org/xbps/repositories/mirrors/index.html?highlight=mirros#mirrors)):

```bash
xbps-install xmirror
xmirror
xbps-install -S
```


### Basic packages

Install any basic packages that you might want, here are my personal preferences:

```bash
xbps-install vim, zsh, curl, git
xbps-install vim zsh curl git gnupg lf
```

### System-critical packages


@@ 88,19 107,19 @@ usermod -aG _seatd $USER
Install graphics drivers. I am using an AMD graphics card:

```bash
xbps-install mesa-dri vulkan-loader mesa-vulkan-radeon
xbps-install mesa-dri
```

Install xdg packages:

```bash
xbps-install xdg-user-dirs xdg-utils
xbps-install xdg-user-dirs xdg-utils xdg-desktop-portal-wlr
```

Install WM of choice and additional utilities:

```bash
xbps-install sway swaylock mako grim slurp clipman wl-clipboard wlsunset
xbps-install sway swaylock mako grim slurp clipman wl-clipboard wlsunset bemenu foot
```

Write login file to set up XDG_RUNTIME_DIR:


@@ 122,15 141,31 @@ dbus-run-session sway
I use pipewire for audio, which can replace alsa and pulseaudio. You'll still need alsa installed, and there are a couple more steps listed in the [docs](https://docs.voidlinux.org/config/media/pipewire.html).

```bash
xbps-install alsa-utils pipewire
xbps-install alsa-utils pipewire alsa-pipewire
```

Now it's time to set up `iwd`, a package that aims to replace wpa_supplicant.

```bash
xbps-install iwd
xbps-install iwd openresolv

unlink /var/service/wpa_supplicant
unlink /var/service/dhcpcd
```

I use openresolv and enable iwds network so I don't need dhcpcd.

`/etc/iwd/main.conf`
```
[General]
UseDefaultInterface=true
EnableNetworkConfiguration=true

[Network]
NameResolvingService=resolvconf
```

```bash
ln -s /etc/sv/iwd /var/service/iwd

sv start iwd