2. Musl to Libc ‐ Archipine - h8d13/k2-alpine GitHub Wiki

The (simple) solution

Well since I wanted an Alpine base for how clean and simple it is to configure (and power of scripting, so I can do the work for you), on top of rc that is great to configure... It also comes with limitations. That is some software that is outright not available. And Nvidia support totally gone (but fuck them).

So the simple solution was to create a Dual boot with Arch to run libc and Nvidia stuff. Help you configure a dual-boot and in the process have a nice seperation of concerns: dev/entertainment.

Hence the creation of the bobw module in utils. Click me

This will let me build a kind of double OS.


Some things I cannot configure (altho I can try copy it from the Alpine install ;)

Bridging the gap

There are some configurations I just can't do for people :D

Connect to the internet ip link to see devices. One should say UP

nmcli device wifi list                      
nmcli device wifi connect "SSID" password "password"  

Note Ethernet cables should just work out of the box


GRUB

Once you are happy with your Arch install. You can update Alpine to give you a friendly choice.

Example entry: /etc/grub.d/40_custom

menuentry "Arch Linux" {
    insmod part_msdos
    insmod ext2
    set root=(hd1,1)
    linux /$KERNEL_BASENAME root=/dev/sdb3 rw rootfstype=ext4
    initrd /$INITRD_BASENAME
}

Grub is not just slightly confusing, it's very confusing so root is acutally looking for boot part/folder. Also hd1 is because it starts from 0. Other than that, you can simply point to any Initrd and Vmlinuz and it will boot 👍

image

To understand grub: /etc/grub.d/ and /etc/default/grub The former is for your custom entries, and defaults for settings ⚙️

Example settings for multi-boot.

GRUB_TIMEOUT=10
GRUB_TIMEOUT_STYLE=menu
GRUB_DISABLE_OS_PROBER=false
grub-install --target=i386-pc /dev/sdX   # (no partition number!)
grub-mkconfig -o /boot/grub/grub.cfg

Again options are kind of endless here you could have 5 different OSes for all I care.

More information for specific case here: Make sure to replace /dev/sdΣ or /dev/nvmeXpy

Modern GPT/UEFI Legacy

The information with legacy degrades more and more as the types varies and sometimes OEM specifics.

Again take these with a grain of salt as you can run into issues. Don't forget also a USB is your best friend if you fk'ed something (Why not with k2 on it hehe)


Chroot

The idea is that from Alpine you can quickly also make configuration changes to your Arch install (and the other way around).

image

Script Here

Possibilities here become kind of endless you could update your system or do whatever you need. Then type exit.


Pacman Confs

/etc/pacman.conf

Then go to mirrors and uncomment both lines:

image

LinuxGenieGuide

I truly recommend going to this guide, has a lot of essential info for the Arch to run whatever you need 🥇

Flatpak

Flatpak is a software utility tool that uses bubblewrap to isolate apps from your host system.

Find thousands of apps Flathub

Then add the main Flathub repo.

$ flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Then simply uses flatpak commands such as

$ flatpak search minecraft

$ flatpak install com.mojang.Minecraft

$ flatpak run com.mojang.Minecraft

Flatpak will give you pretty bad performance for games. It made more as something for GUI apps to run in isolation.