Switch From Manjaro To Arch
I'll use Arch btw
1. Motivation
Manjaro is a nice OS in general. But there are some issues (Robertson 2022a) like polybar fails for some weeks because Manjaros repos update two week after Archs', so the AUR is out of sync with them.
It was a good starting point for me to experience Linux; now I feel confident enough to use bare Arch.
2. Process
2.1. Backup
It's possible, if having the /home folder in its own partition, to install a new linux system and keep the data. But there is the risk of overwriting it, therefore a Backup is recommended in any case.
2.1.1. System
To get a list of the currently installed packages, I stored the output of pacman
into a file.
pacman -Qeq > package-list.txt
(just lists the explicit installed packages.)
This way, I could simply push this list into pacman to get the same packages as now; but I'll rather use it to look at it if I need to and don't install all the unused packages too.
2.1.2. Data
To backup my personal data, I plugged in an old HDD. It was named /dev/sda1
. So I mounted it and archived my whole home-directory into it. While doing so, i ran into some errors.
- When doing my first try, I was logged in as
adrian
. At the very end complained about changed files. Conclusion: don't be logged in while cerating the backup. - By trying different compressions, I found that it's faster to just throw the data uncompressed at the drive than using something like . My initial thought was that the slow HDD would be the smallest part in the pipe, but it was the compression.
So I logged in as root
, mountet the HDD and stored my data onto it.
mkdir ~/media mount /dev/sda1 ~/media
tar -cvf media/Backup/2022-09-15.tar /home/adrian
2.2. Install-stick
I just downloaded an Arch-iso from some mirror (“Arch Linux - Downloads” 2022) and wrote it on the usb-drive. (The stick was connected as /dev/sda
.)
pv archlinux-2022.09.03-x68_64.iso > /dev/sda
2.3. Installation
The installation is relatively simple. (“Installation guide - ArchWiki” 2022)
- make the computer boot from the usb-drive
- the arch-iso loads
run (archlinux 2022) and fill in all the information
I let the installer whipe the whole disk, created a user
adrian
again, set up language, time, keyboard and installed i3wm (Developers 2022) as a window manager.
2.4. Get the data back
Now I had a functional Arch-System with nearly empty home directory. I took the HDD, mountet it and moved the data back. I did it again as root
to prevent any more difficulties.
mkdir ~/media mount /dev/sda1 ~/media
tar --skip-old-files --file media/Backup/2022-09-15.tar /
Notice
- the flag, which I used to pause and resume the extraction to get sleep without the noise of the HDD.
- the location is specified as and not as , because the archive already contains the information about where the data goes.
2.5. Ready!
pfetch
/\ adrian@archlinux / \ os Arch Linux /\ \ host 81LG Lenovo IdeaPad L340-15IWL / \ kernel 5.19.8-arch1-1 / ,, \ wm i3 / | | -\ uptime 6h 23m /_-'' ''-_\ pkgs 791
Now I run Arch. Browser, Matrix-client etc. work all like before on Manjaro, because their userdata is unchanged. I've already installed some missing packages as I ran into errors in my daily workflow (one because of a bug in Doom Emacs (doomemacs 2022) which I installed manually), and there are still some missing. Nevertheless There are only 791 packages installed currently. On Manjaro I had more then two thousand installed!
3. Another Installation
After two weeks, I decided to install it again. The main reason is, that archinstall
decided the /
Partition should only get 20GB, which is not enough for all the software I use. Also I
- use Systemd-boot, because Grub has some annoying problems (Robertson 2022b)
- use no preslected profile (like i3wm which would install all stuff to make i3 run), because I made a new package-list which I just read in before the reinstall
3.1. Problems
I run into the same problems this time, as last time. But this time I was prepared for this and documented my way solving them.
No Internet connection
systemctl enable systemd-networkd systemctl start systemd-networkd systemctl enable systemd-resolved systemctl start systemd-resolved pacman -S NetworkManager systemctl enable NetworkManager systemctl start NetworkManager
systemctl
enable and startsystemd-networkd
,systemd-resolved
- install
NetworkManager
andsystemctl
enable and start it's
For some reason, the locale wasn't set right. So I had to edit the
/etc/locale.conf
and/etc/locale.gen
, then runlocale-gen
LANG=de_DE.UTF-8
#... de_DE.UTF-8 # (comment out the needed language) #...
sudo locale-gen
3.2. Get the packages back
First, I needed to get paru (“AUR (en) - paru” 2022), a very useful AUR-helper.
Following the instructions on it's github-page, I installed git
and base-devel
, cloned it as a normal user, then mkpkg -si
.
Afterwards, I could simply push the List of packages into it.
paru -S $(cat ~/media/package-list.txt)
3.3. Ready!
Now I use Arch again, but
- The
/
partition will not run full unless my/home
is full too (because both are the same) - by using
systemd-boot
instead ofgrub
I don't risk any issues - By Installing it a second time, I got better in getting the network work. (last time I tried so many things, that I couldn't write about it, I just hadn't known what made it work)