this post was submitted on 30 Jul 2025
18 points (87.5% liked)

Linux

8723 readers
412 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
top 14 comments
sorted by: hot top controversial new old
[–] Shareni@programming.dev 18 points 3 days ago (2 children)

how to install arch (with btrfs and without frustration)

Download Endeavour and click through the wizard?

[–] xylol@leminal.space 2 points 2 days ago (2 children)

isnt it the same with arch? at least when I tried arch I just clicked through the install menu

[–] Samueru_sama@programming.dev 6 points 2 days ago (2 children)

isnt it the same with arch?

I once to helped troubleshoot an EndeavourrOS user.

during the process I discovered that their kernel parameters were being reset with every kernel update, this was because Endeavour was using dracut instead of mkinitcpio...

[–] pyssla@quokk.au 1 points 1 day ago

during the process I discovered that their kernel parameters were being reset with every kernel update

That's pretty horrid. They ought to have fixed that since. Right?

[–] Shareni@programming.dev 1 points 2 days ago

Damn, the last time I used it I could've sworn it was just arch with a wizard and some custom dotfiles. Although that was like 3 years ago.

[–] Shareni@programming.dev 2 points 2 days ago

I never actually used archinstall, only manual and derivatives which were essentially arch with a wizard.

[–] UnfortunateShort@lemmy.world 2 points 3 days ago* (last edited 3 days ago) (2 children)

Nooooo, you will have that heavily bloated Plasma desktop! That won't run properly on my 4GB Raspberry Pi (it does)!

[–] Shareni@programming.dev 2 points 2 days ago

You can choose the de by clicking in the wizard

[–] meekah@lemmy.world 1 points 2 days ago

Plasma was hell on my x230 (gen3 i5 + 4gb ram), it only worked properly with 8gb. Is it different somehow for ARM versions of Linux?

[–] crankyrebel@lemmy.dbzer0.com 3 points 2 days ago (1 children)

Heed the 'downside' of using btrfs carefully before choosing that option over say, ext4, especially if you ever do a hard-shutdown, prone to power-outages, etc. It will scramble your system files.

[–] Samueru_sama@programming.dev 5 points 2 days ago (1 children)

especially if you ever do a hard-shutdown, prone to power-outages, etc. It will scramble your system files.

Btrfs is made precisely so that a power outages don't do that! and you don't end up like ext4 with bad superblock nonsense.

Been using Btrfs for over 3 years at this point, 0 issues and over 400 unsafe shutdowns: https://imgur.com/a/AKXFdKb

In fact it was able to detect when my previous ssd was dying, I thought Btrfs was spewing nonsense until the next day when smartctl began to report issues as well lol.

[–] crankyrebel@lemmy.dbzer0.com 1 points 2 days ago (1 children)

I have had corrupt filesystem errors with BTRFS on both of my computers due to power outages and one hard shutdown (had to), that was the end of it. I will stick to ext4, a log file system that is more stable. Used ext4 for YEARS (I am old) and never had these issues with such frequency. Stick to what is hardened and solid, BTRFS is still under development. The fanboys love to use it as the next best thing, and it does have some nice features, but stability is not one of them, at least in these type of situations.

[–] Samueru_sama@programming.dev 3 points 2 days ago* (last edited 2 days ago)

I have had corrupt filesystem errors with BTRFS on both of my computers due to power outages and one hard shutdown (had to)

When did this happen? what error did you get?

Btrfs will explicitly go read only when it detects corruption, which is a good thing, with EXT4 you don't know what is going on until it is too late.

fwiw the only time I managed to get info from an user that had "issues" with btrfs, I discovered that what had happened is that they moved the partition that had snapshots, and if you don't know it, this is catastrophic because this unlinks all the snapshots and suddenly everything would take many times more storage.

Used ext4 for YEARS (I am old) and never had these issues with such frequency

The short time I've used EXT4 running into bad superblock errors was something that happened almost every week, but in the end I was always able to repair the disk and recover everything.

I'm from Venezuela, power failures are common here.

[–] bacon_pdp@lemmy.world -1 points 2 days ago

Do better

################################################################################# #################################################################################

A minimal Arch install procedure with encrypted /boot and /

################################################################################# #################################################################################

Format virtual drive to have 1 large primary partition and mark it as bootable

echo -e "o\nn\np\n1\n\n\na\nw" | fdisk /dev/sda

It really is that simple to set up the partition table. o wipes the previous

table, n creates a new partition, and a makes it bootable. w writes the changes.

Encrypt entire volume

Default iter is 2000 and takes 22 seconds for grub to decrypt, adjust accordingly

cryptsetup -v --cipher aes-xts-plain64 --key-size 512 --hash sha512 --iter-time 50000
--use-random --verify-passphrase luksFormat --type luks1 /dev/sda1

or if that takes too long to type or you don't care; you can use the defaults:

The luks1 however matters until grub finishes adding sufficient support for

luks2. Argon2id (cryptsetup default) and Argon2i PBKDFs are not supported, only

PBKDF2 is at this time

cryptsetup -v --use-random -y luksFormat --type luks1 /dev/sda1

Open for formating

cryptsetup open /dev/sda1 root

Actually format

mkfs.btrfs /dev/mapper/root

Mount partitions

mount /dev/mapper/root /mnt

Fix the slow install problem

pacman -Sy pacman -S pacman-contrib cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup

if per policy reasons you need to limit yourself to the USA

curl "https://archlinux.org/mirrorlist/?country=US" | sed 's/#Server/Server/g' \

>| /etc/pacman.d/mirrorlist.backup

rankmirrors -n 6 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist

Install bootstrap

pacstrap /mnt base linux linux-firmware btrfs-progs lvm2

if you see bill-auger is unknown trust

pacman -S archlinux-keyring parabola-keyring

Setup fstab

genfstab -U /mnt >> /mnt/etc/fstab

Chroot into mount

arch-chroot /mnt

Set root password

passwd

Setup timezone

ln -sf /usr/share/zoneinfo/US/Michigan /etc/localtime

Setup locales

echo "en_US.UTF-8 UTF-8" > /etc/locale.gen echo "LANG=en_US.UTF-8" > /etc/locale.conf locale-gen

Set hostname

export hostname=encom

Use it

echo "$hostname" >| /etc/hostname { cat <<-EOF 127.0.0.1 localhost 127.0.1.1 $hostname

The following lines are desirable for IPv6 capable hosts

::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters EOF } >| /etc/hosts

Enable dhcp on ethernet

pacman -S dhclient

#enable wifi pacman -S iw iwd

Fix kernel file system

YES order matters for stupid reasons

components="base
udev
autodetect
modconf
keyboard
block
encrypt
lvm2
filesystems
keyboard
fsck"; sed -i "/^HOOKS=/c\HOOKS=(${components})" /etc/mkinitcpio.conf

Modify: to add support for encrypt and lvm2

build new initial ramdisk:

mkinitcpio -p linux

May produce warnings about lwn2, can safely ignore

Setup grub

pacman -S grub

indicate /boot is encrypted

sed -i '/^GRUB_CMDLINE_LINUX=/c\GRUB_CMDLINE_LINUX="cryptdevice=/dev/sda1:root"'
/etc/default/grub

Enable support for encrypted /boot

sed -i '/^#GRUB_ENABLE_CRYPTODISK=/c\GRUB_ENABLE_CRYPTODISK="y"' /etc/default/grub

Uncomment GRUB_ENABLE_CRYPTODISK=y

mkdir /boot/grub grub-mkconfig -o /boot/grub/grub.cfg grub-install /dev/sda

################################################################################# #################################################################################

Reboot as the core setup is done and the rest can be done inside our new arch

Linux system as root/administrator

################################################################################# #################################################################################

Remove need to type luks password twice

dd bs=512 count=4 if=/dev/urandom of=/crypto_keyfile.bin chmod 400 /crypto_keyfile.bin cryptsetup luksAddKey /dev/sda1 /crypto_keyfile.bin

Set init to use that file

sed -i "/^FILES=/c\FILES=/crypto_keyfile.bin" /etc/mkinitcpio.conf

build new initial ramdisk:

mkinitcpio -p linux

Enable networking

dhclient ens33

Setup sudo group for membership and useful privileges

pacman -S sudo vim wget groupadd sudo

Uncomment the %sudo line

sed -i '/^# %sudo/c%sudo\tALL=(ALL:ALL) ALL' /etc/sudoers

Setup our power user

export USERNAME=user useradd -m $USERNAME passwd $USERNAME usermod -G sudo -a $USERNAME

################################################################################# #################################################################################

If you want guix for everything else on your system use the install guix

procedure instead of following the rest of this procedure.

#################################################################################

You may now logout and finish the rest of this procedure as your

administrative account created previously

################################################################################# #################################################################################

Install baseline gui

sudo pacman -S i3-wm xorg-server xorg-xinit xf86-video-vesa xorg mesa slim
xorg-xrdb dmenu emacs st git gcc make htop screen
binutils stow