full guide to first Arch update


13 posts
by lesto » Sat Jun 16, 2012 2:33 am
Hi,
the first time you'll try to update your arch system from download image, you will find some issue.
Big changes has happened, and we have to take care of them in the right order. first of all login wit user and password "root"

1. pacman. obviously we don't want install anything with and old (and maybe buggy) version of packet manager, unless we have a very good explanation. But actually we don't have it. So run
Code: Select all
# pacman -S pacman

1b. (optional) install mlocate package, that will give you the locate command. It will be helpful later. also remebre to run updatedb, as suggested.
Code: Select all
# pacman -S mlocate
#updatedb


2. now we have solved some packet problem with udev moved into systemd-tools packaged. but we still have some problem with the filesystem package. So it is time for a almost-full-update-just-leave-out-filesystem.
Code: Select all
# pacman -Syu --ignore filesystem

3. now we can install the missing package. we have to force it, because http://www.archlinux.org/news/filesystem-upgrade-manual-intervention-required-1/ said so.
Code: Select all
# pacman -S filesystem --force

4. locate or find all .pacnew file. when pacman produce a new configuration file, will not destroy the original, but just keep the NEW one as .pacnew
Update your configuration file is boring and normally can safely postponed, but we do things in right way. so, if you have installed locate:
Code: Select all
# locate *.pacnew

if not, use find
Code: Select all
# find / -name *.pacnew

refer to arch linux wiki (installation guide in particular) or forum or google for help on configuration file (https://wiki.archlinux.org/index.php/Be ... the_system)

5. don't break your system the first day! remember to add a user
https://wiki.archlinux.org/index.php/Be ... ing_a_User

6. reboot the system

6b. when you have some spare time run
Code: Select all
# pacman-key --init
# pacman-key --populate archlinux

it will be a really long process, and need to get some random seed from your PC (just some black magic here), so open a second console (CTRL-ALT-F3/4/5/6) and start running random program like "find /", "top", or best of all "startx" (if you already installed it), or simply continue using your system


tip1. this procedure is also valid for all arch installation on any system (i've had to follow it on my x86_64, but maybe was just and old installation CD).

tip2. NEVER ever force a package installation or update until someone better than you said so. All manual intervention during update (like the file-system's one) are announced here: http://www.archlinux.org/

now your system is fully updated without any unnecessary brute-force trick.

if you had some problem with this passages, then probably it's a bad SD image. Just burn it again, or change SD.

based on archlinuxarm-29-04-2012
SHA-1 b84d1eaba2ec64982da40ccd7dba06b186f69545

ps. maybe close and stick this discussion
ps2. don't reply to this discussion, just send me a message or open a new discussion.
Posts: 30
Joined: Mon Sep 12, 2011 4:12 pm
by waterwingz » Sat Jun 16, 2012 11:26 pm
Clean new Arch installed via dd.

# pacman -S pacman

fails with an error saying the requested URL returned error : 404

I assume this means that mirror.archlinuxarm.org that its trying to reach is not quite right ? That URL is valid if I type it into my browser
Posts: 2
Joined: Sat Jun 09, 2012 10:10 pm
by hadi » Sun Jun 17, 2012 1:17 am
waterwingz wrote:Clean new Arch installed via dd.

# pacman -S pacman

fails with an error saying the requested URL returned error : 404

I assume this means that mirror.archlinuxarm.org that its trying to reach is not quite right ? That URL is valid if I type it into my browser



try
Code: Select all
pacman -Sy pacman
and say no to the first question
Posts: 29
Joined: Fri Jun 15, 2012 4:28 pm
by hadi » Sun Jun 17, 2012 2:39 am
I get following error after update.

[root@alarmpi ~]# startx
xauth: file /root/.Xauthority does not exist
xauth: file /root/.Xauthority does not exist

/usr/bin/X: error while loading shared libraries: libudev.so.1: cannot open shared object file: No such file or directory


please help :(
Posts: 29
Joined: Fri Jun 15, 2012 4:28 pm
by waterwingz » Sun Jun 17, 2012 2:43 am
I kept going with the rest of the updates in this thread and now the original

pacman -S pacman

works without error.

One more case of "things that go bump in the night .."
Posts: 2
Joined: Sat Jun 09, 2012 10:10 pm
by n0mad » Sun Jun 17, 2012 3:22 pm
hadi wrote:I get following error after update.

[root@alarmpi ~]# startx
xauth: file /root/.Xauthority does not exist
xauth: file /root/.Xauthority does not exist

/usr/bin/X: error while loading shared libraries: libudev.so.1: cannot open shared object file: No such file or directory


please help :(


@hadi

Try:

Code: Select all
pacman -S systemd-tools


It will ask if its OK to replace udev, it is. That should sort you out.
Posts: 2
Joined: Fri Jun 15, 2012 9:00 am
by lesto » Sun Jun 17, 2012 4:29 pm
also startx for me (lxde) doesn't work, i have to run
Code: Select all
xinit /usr/bin/lxdesession


but this is not a thread x-org related, you should open a new thread or look into older one
Posts: 30
Joined: Mon Sep 12, 2011 4:12 pm
by Fenlig » Fri Jun 22, 2012 7:14 am
Thanks Lesto, this is a great guide. I normally use Debian but I'm really liking Arch and I was this guide that got me over the initial hump.
Posts: 13
Joined: Tue May 29, 2012 4:38 am
by felixfurtak » Sun Jun 24, 2012 2:32 am
Unfortunately this guide did not work for me. Just a note to say that there is a newer build of Arch available for download, but not on the main downloads page here: http://downloads.raspberrypi.org/downlo ... 6-2012.zip
Posts: 47
Joined: Wed Nov 16, 2011 10:41 am
by Drew » Sun Jun 24, 2012 12:18 pm
lesto wrote:Hi,
6b. when you have some spare time run
Code: Select all
# pacman-key --init
# pacman-key --populate archlinux

it will be a really long process, and need to get some random seed from your PC (just some black magic here), so open a second console (CTRL-ALT-F3/4/5/6) and start running random program like "find /", "top", or best of all "startx" (if you already installed it), or simply continue using your system


Initialising the key works but the pacman-key --populate archlinux fails. I needed to use
Code: Select all
pacman -S archlinux-keyring

As suggested by nemrod in this thread viewtopic.php?f=53&t=9142 You also need to configure /etc/pacman.conf with whatever SigLevel you prefer.
Posts: 39
Joined: Fri Jan 20, 2012 3:50 am
by lesto » Sun Jun 24, 2012 12:35 pm
@Drew thanks for pointing this error our, i'll update the first post

edit: fuuu, i can't edit it.. :!:

@felixfurtak can you tell me where this guide fails and with witch error?
Posts: 30
Joined: Mon Sep 12, 2011 4:12 pm
by felixfurtak » Sun Jun 24, 2012 10:40 pm
Hi Lesto,

It fails for me on glibc update. Many of the other packages are dependent on glibc. The work around that I found was to hold back glibc until I had installed all the other, non-dependent packages and then disable bcm sound module, increase ram to 224Mb and add a swap partition. I'm not sure which of these was responsible for the crash, but it seemed to work.

The new Arch binary seems to not suffer from the same issues.

Regards,

Duncan
Posts: 47
Joined: Wed Nov 16, 2011 10:41 am
by Drew » Mon Jun 25, 2012 2:17 am
Since other people seem to be doing the same thing I have put this process into a shell script…
https://gist.github.com/2985927

It's heavily commented & fairly simple but it takes the mundane part out of the process. It takes about 35 minutes to update for me, YMMV.
pacman's keys are setup & mlocate is installed in the default script.

I stuffed it into 3 functions that get called near the bottom of the script so scroll down to see the running order, and uncomment any functions you don't want to use. The 'pacman-keys' section will require you to confirm the certificates manually [hit y, y, oh gawd y?], comment it out if you don't need it.

Once booted and logged (as root) in to your freshly installed Arch Linux RaspiPi you can grab the script, make it executable & then run it …

Code: Select all
wget https://raw.github.com/gist/2985927/Arch-First-Update.sh ;
chmod 755 Arch-First-Update.sh ;
# **Optional use 'nano Arch-First-Update.sh'
# to edit the file.
./Arch-First-Update.sh ;

It's actually a stripped down version of the script I use because I removed my user setup & locale, ssh, mirrors, and other config preferences.
Don't forget to scroll back & read through any errors you have whist installing.

It's on github, so I suggest any changes are submitted as comment or pull requests on github.
Posts: 39
Joined: Fri Jan 20, 2012 3:50 am