List of available LXC live images -
RIP -
Solution
images:
remote are dead by canonical so lets go add a different mirror-images:
server:
lxc remote add mirror-images https://mirrors.tuna.tsinghua.edu.cn/lxc-images/ --public --protocol simplestreams
lxc remote add lxd-canonical https://images.lxd.canonical.com --protocol simplestreams --auth-type tls
lxc remote list
Crostini ArchLinux Penguin
For safety first keep the original debian penguin unchanged and just enable the #crostini-multi-container flag and add one more!
🖱️Add a Linux to your penguin sommelier first:🖱️
Crostini Vibes Enable and Become an LXC Expert:
Turn on the flag for multiple containers.
Go to Developers and add another container with a random name it will automatically create it with your ip.
- Create an container via crostini in settings name it whatever you like.
🖱️Grant connection to your Linux container:🖱️
Start the terminal and grant you have access to the internet by doing sudo ping google.com
if no return - then: Shut Down Crostini and start it again.
Repeat the process if needed.
- Start Vsh Termina
- Press
Ctrl+Alt+T
to open the crosh terminal. - Type
vsh termina
. - If you see
(termina) chronos@localhost ~ $
, it means that Termina has started successfully.
Set Up the Arch Container - This installs archlinux into LXC container
- Run the command below to install the ArchLinux container:
vsh termina # vmc stop termina / vmc launch termina
lxc list
#fydeOS can't have security.privileged containers openFyde can.
#Dont forget to add the new mirrors
lxc launch lxd-canonical:archlinux archlinux
lxc exec archlinux -- bash
# lxc stop / lxc delete / lxc start / lxc console
passwd #set a root password
#systemctl --user restart sommelier{,-x}@{0,1}.service
#try ping google.pt till it works
#Install basic requirements
bash <(curl -fsSL https://raw.githubusercontent.com/kwankiu/acu/main/acu) -u
acu -y install base-devel gtk3 openssh xdg-utils xkeyboard-config curl make neovim wl-clipboard fish pacman-contrib wayland xorg-xwayland devtools dhclient neofetch sudo screenfetch
Create your username and password ex: ‘archlinux’
sudo useradd -G wheel -m archlinux
sudo passwd archlinux
sudo sed -i 's/^# \(%wheel ALL=(ALL:ALL) ALL\)/\1/; s/^# \(%wheel ALL=(ALL:ALL) NOPASSWD: ALL\)/\1/' /etc/sudoers
exit
lxc exec archlinux su - archlinux
acu install cros-container-guest-tools-git --noconfirm
#ignore permission denied errors
🖱️On arm64 you can just replace user 'alarm' (optional/skip)🖱️
grep 1000:1000 /etc/passwd
groupmod -n archlinux alarm
usermod -d /home/archlinux -l archlinux -m -c archlinux alarm
#sudo sed -i 's/^# \(%wheel ALL=(ALL:ALL) ALL\)/\1/; s/^# \(%wheel ALL=(ALL:ALL) NOPASSWD: ALL\)/\1/' /etc/sudoers
#or manually:
passwd archlinux #Set user passwd
visudo
# ^ Uncomment the line that says:
# %wheel ALL=(ALL) NOPASSWD ALL
:wq #(Press ESC and type :wq enter to save and exit)
usermod -aG wheel archlinux
exit
#lxc exec container su - your_username
lxc exec archlinux su - archlinux
Exit Crosh - Start debian penguin to let it establish and then start your Archlinux clicking it 3 times.
Once it starts have fun et Voilá Sudo Pacman Treé Jolie.
🖱️Extras for pacman:🖱️
sudo nano /etc/pacman.conf
# ^ Optional: Update pacman config. I prefer to:
# - uncomment #Color
# - uncomment #VerbosePkgLists
# - uncomment #ParallelDownloads = 5
sudo nano /etc/pacman.d/mirrorlist
# ^ Optional: Use a closer mirror. Eg, change
# mirror.archlinuxarm.org => au.mirror.archlinuxarm.org
#
# A full list of mirrors are in this page:
# https://archlinuxarm.org/about/mirrors
🖱️Network Fix (Most likely needed):🖱️
#Check the network by running (it can't be empty) with:
ip -4 a show dev eth0
#if no connection then:
sudo dhcpcd eth0
#sudo pacman -S dhclient
sudo systemctl disable systemd-networkd
sudo systemctl disable systemd-resolved
sudo unlink /etc/resolv.conf
sudo touch /etc/resolv.conf
sudo systemctl enable dhclient@eth0
sudo systemctl start dhclient@eth0
ping 8.8.8.8
🖱️Renaming containers: (only optional)🖱️
#Crosh Ctrl+Alt+T
vsh termina
lxc stop archlinux
lxc stop penguin
lxc rename penguin debian
lxc rename archlinux penguin
lxc restart penguin
🖱️Basic terminal troubleshoot:🖱️
Check your baseline repos: `sudo nano /etc/pacman.conf`
sudo pacman-key --refresh-keys
sudo pacman -S archlinux-keyring
sudo rm /var/lib/pacman/db.lck
🖱️Links for Reference🖱️
You can switch it to ArchLinux https://fydeos.io/docs/knowledge-base/linux-subsystem/archlinux/
Debian to Arch: https://shibumi.dev/posts/install-arch-linux-on-chromeos/
Baldrailers Github: https://gist.github.com/baldrailers/09ba52a17219ca1e8fbf233dc8a4b375/
Great guide: https://12101111.github.io/install-archlinux-on-fydeos/
Awesome Info: https://blog.skihome.xyz/archives/4/