How-to: Enlightenment Desktop Environment under Arch


 
24 posts
by blc » Wed May 16, 2012 6:35 pm
Back when I started out with Linux, the biggest source of information I found were how-to documents - particularly the kernel how-to. In that spirit, I thought I should repay the favour in at least a small way :). EDIT: Mods, feel free to move this post if you think it's beyond the scope of "absolute beginners".

I managed to get the Enlightenment desktop environment up and running on my Raspberry Pi recently - using the real hardware, no qemu or virtual machines - under Arch Linux, so I thought I'd share my method here. For those who are not aware, Enlightenment is a lightweight display/desktop manager which I think looks rather pretty :).

I used the current Arch distro, dated 29/04/2012. I'm writing this so that a complete novice should be able to follow it, but please feel free to point out any corrections needed, or if I just plain got it wrong :). I realise that you can install all the required packages with just one pacman command, but the reason I've split them out is so that I can explain what they are why they're needed.

Firstly, I am by no means a Linux expert or a developer, so some of what I post may not be 100% accurate or correct. I followed these instructions myself (broadly - after much trial and error) and ended up with a working desktop when I started with nothing but a bare system and a command line prompt. If you don't have any other SD cards to try this out with, back up your current SD card (using Win32DiskImager or dd under Linux) in case something goes wrong and you need to wipe it!

Secondly, this will likely eat up all the available space on the standard Arch Linux image - you probably won't be able to achieve this with a 2GB SD card, and even with a 4GB card you'll need to adjust the partition sizes on another machine which has GParted (or something similar). Have a look at http://gparted.sourceforge.net/ for more info - it can be booted as a LiveCD/USB, so you don't have to wipe an existing PC.

BUT! Don't let all that put you off - you never know what you might learn ;) I can't guarantee I'll have all the answers, but feel free to ask any questions or point out any corrections - I'll do my best to answer.

How-To:

When arch first boots, you have pretty much nothing besides a root login and a command line. When I first started using linux all those years ago, the first advice I was given was to never ever *ever* use a root account for daily purposes! Using the root account can easily hose your system if you're not sure what you're doing, and is very bad for security.

First thing to do once logged in as root is to set up a new user:

Code: Select all
useradd -m -g users -G audio,lp,optical,storage,video,wheel,games,power,scanner username


(Everything after -G specifies which additional groups the user should belong to - most of these are just standard groups, but the group wheel is important). Now you need to set a new password:

Code: Select all
passwd username


You'll be prompted for a new password at this point. Since you are going to need administrative privileges with a normal account, you'll need sudo - this isn't installed by default, so type the following:

Code: Select all
pacman -Sy sudo


(Question for those more familiar with arch: is it best to always use the -Sy option rather than just -S? I found that just using -S led to lots of 404 errors when retrieving packages)

That's not the end of the story though; we now need to give the new user rights to execute the sudo command. To do this, type:

Code: Select all
visudo


This will open up a text editor (vi) so that you can edit the sudoers file. You can't edit this file directly in any other text editor - you have to use visudo. At some point, you will see a line that reads:

Code: Select all
# %wheel ALL=(ALL) ALL


Because visudo launches the editor vi, you'll need to go into "edit mode" in vi in order to make any changes. To do this, either press "a" (if you want to add text after the cursor) or "i" (if you want to insert text before the cursor). vi is a little awkward, but this is probably the only time you're going to be forced to use vi. You need to modify the line above so that it reads like this:

Code: Select all
%wheel ALL=(ALL) NOPASSWD: ALL


It's very important that the hash (#) is removed from the start of the line - the hash "comments the line out", meaning that it will be ignored by sudo. This line tells sudo that all members of the "wheel" group can execute all sudo commands and do not need to enter a password. You can drop the "NOPASSWD:" part if you wish, but it means that you're going to be re-typing your password an awful lot over these steps - and any time you want to use the sudo command.

Once you're finished editing the file, press Esc to move into command mode. Now type:

Code: Select all
:wq


Then press enter - this saves the file and closes visudo. Thankfully, after this point we can use nano instead of vi - it's much friendlier! Now that you have a normal user account set up with sudo privileges, logout by typing... well... logout! Now log back in with your regular user account. From this point onwards, you should have no (or at least very little) need to ever log in with the root account again.

The first thing I did at this point was to upgrade all installed packages to the latest version. I'm not sure how important this is, so skip it at your own peril. To update all packages, type:

Code: Select all
sudo pacman -Syyu


It will probably compain that pacman (the Arch Linux package manager) needs to be updated first. Let pacman update, and run the command again when pacman is updated. Once the system is updated, we can get started on installing all the packages necessary for getting Enlightenment up and running. First, we need to install a few pre-requisites that will be needed later. First, install these two:

Code: Select all
sudo pacman -Sy base-devel wget


base-devel installs all the required packages for compiling code, and wget is a *very* handy utility to download files over the internet from a command line. Now we need to install the X server and associated utilities:

Code: Select all
sudo pacman -Sy xorg-server xorg-xinit xorg-server-utils xterm


I've added xterm in there because you'd have no terminal under Enlightenment, otherwise. I'm not sure if the next package is 100% required, but it may be needed if/when there is an accelerated driver for X - perhaps someone more knowledgable can correct me here. It won't harm anything to have it there if it's not needed.

Code: Select all
sudo pacman -Sy mesa


Now we need to install video drivers, otherwise the X server won't know how to draw anything to the screen! As we don't have any Pi-specific drivers at this point, I opted for the bog-standard "vesa" video driver. When I tried this on it's own however, the X server failed to start and complained about fbdev being missing. Therefore, install these drivers next:

Code: Select all
sudo pacman -Sy xf86-video-fbdev xf86-video-vesa


We're not quite done with the pre-requisites yet though:

Code: Select all
sudo pacman -Sy dbus


dbus is a messaging protocol to allow applications to "talk" to each other. I'm not exactly sure of it's functionality, but it definitely needs to be there. Before going any further, we now need to start dbus, so type:

Code: Select all
sudo rc.d start dbus


We also need to add it to the file /etc/rc.conf so that it runs on every boot, so type:

Code: Select all
sudo nano /etc/rc.conf


Right at the end of the file, there will be a line that reads along these lines:

Code: Select all
DAEMONS = (blahblahblah...)


Edit this so that it now reads:

Code: Select all
DAEMONS = (blahblahblah... dbus)


Don't delete anything else that's there, just add "dbus" at the end.

To quit nano, press Ctrl+X - you'll be asked if you want to save, so type y; you'll then be asked for a file name to save to - don't change this, just press enter. Isn't that far simpler than vi?! Purists might want to string me up for this, but I utterly hate using vi!

Finally, before we start installing all the required parts of Enlightenment, we need at least one TTF font:

Code: Select all
sudo pacman -Sy ttf-dejavu


*Now* we're ready to install Enlightenment. When I first found the Arch E17 Wiki page, I totally skipped over the easy parts and proceeded to try and compile it myself. That was a complete bust. In my haste, I missed the part that said you can install Enlightenment with a very simple command:

Code: Select all
sudo pacman -Sy e-svn


That's still not the end of the story though, there are a few additional extras you might want to install. Firstly, it's probably a good idea to get the extra applications:

Code: Select all
sudo pacman -Sy e17-extra-svn


The wiki recommends that a network manager is also installed, and Connman seems to be the preferred choice. In order to install connman, you have to replace the normal network manager that starts on boot - I'm not sure what (if any) benefit this gives you. If you're using (or plan to use) WiFi, connman gives you a nice graphical interface in Enlightenment, but I'm not really sure what other benefit it has. If you don't install it though, every time you start Enlightenment it will complain that connman is missing and I hate having annoying popups!

Connman is in the AUR, the Arch User Repository, and there isn't a package available by default. I'd highly reccomend reading up on how to build & install packages from the AUR, as there's some very useful stuff in there - PKGBUILD/makepkg is one of the very good things about Arch.

To expedite matters however, I've uploaded the binary that I compiled on my Pi. Type the following:

Code: Select all
wget http://dontclogthetubes.net/raspberrypi/arch/connman-1.0-2-arm.pkg.tar.xz
sudo pacman -U connman-1.0-2-arm.pkg.tar.xz


We now need to make connman start when the system boots:

Code: Select all
sudo nano /etc/rc.conf


Find the line that specifies the daemons to run - the same line edited earlier - and add "connmand" after dbus. Note: make sure you type "connmand", not "connman", and obviously don't include the quotes! You also need to delete the entry for "network", since we're going to use connman to run the network instead - no point in having two services trying to do the same thing.

There are just a few more things to sort out before we can try running the X server... First - and this really is optional - there are some additional themes available. To save you the tedium of building this package yourself, I've uploaded it to my webserver. This is a pretty hefty (around 200mb) download, so just be patient ;)

Code: Select all
wget http://dontclogthetubes.net/raspberrypi/arch/e17-themes-20110216-1-any.pkg.tar.xz
sudo pacman -U e17-themes-20110216-1-any.pkg.tar.xz


Finally, we need to tell the X server what to run when we tell it to "startx". To do this, you need to edit the ".xinitrc" file in your home directory:

Code: Select all
nano ~/.xinitrc


This file probably doesn't exist yet, so you'll be presented with a blank window - just add this line:

Code: Select all
exec enlightenment_start


Now quit, and save the file. Finally, type "startx" to load the Enlightenment desktop environment. All being well, you should now be greeted with the Enlightenment initial setup!

Whenever I start E17, it does constantly complain that the graphics adapter is not running in 24/32 bit mode, which is required for compositing to work properly. I'm afraid I don't know how to get around this error - I suspect it's down to the X driver, but I'm really not sure.

Anyway, feel free to post any questions - I'll do by best to answer, but I can't guarantee that I'll actually know the answer! :)
Posts: 167
Joined: Mon Sep 05, 2011 9:28 am
by tawalker » Thu May 17, 2012 11:11 am
Very useful :D

Quick tip for the first use of visudo: you can specify the EDITOR environment variable on the command line, to use a different text editor than vim. I'm a nano fan, so for that you'd enter (as root, naturally):
Code: Select all
# EDITOR=nano visudo

You can also set environment variables in your .xinitrc file, like so:
Code: Select all
export EDITOR="nano"
exec startlxde

[EDIT: For variables you want to use outside of an X session, you may wish to set them in your profile files (~/.bashrc, ~/.profile, ~/.bash_login or ~/.bash_logout). The Arch wiki article on environment variables has plenty of useful tips.]

HTH :)
---
Raspberry Pi Model B ("ryo-ohki") - Arch Linux/ARM (hard float)
Visit Eee 701 Planetoid (http://eee701planetoid.wordpress.com/) for continuing adventures with an Eee 701SD and Raspberry Pi...
---
Posts: 180
Joined: Tue Jan 17, 2012 9:02 am
by blc » Fri May 18, 2012 6:36 pm
tawalker wrote:Very useful :D

Quick tip for the first use of visudo: you can specify the EDITOR environment variable on the command line, to use a different text editor than vim. I'm a nano fan, so for that you'd enter (as root, naturally):
Code: Select all
# EDITOR=nano visudo

You can also set environment variables in your .xinitrc file, like so:
Code: Select all
export EDITOR="nano"
exec startlxde

[EDIT: For variables you want to use outside of an X session, you may wish to set them in your profile files (~/.bashrc, ~/.profile, ~/.bash_login or ~/.bash_logout). The Arch wiki article on environment variables has plenty of useful tips.]

HTH :)


Sorry, I totally forgot to reply to this!

Many thanks for that, I'll update the OP - I had no idea you could do that... Using vi, or even vim, is very painful...
Posts: 167
Joined: Mon Sep 05, 2011 9:28 am
by nexusplanet » Thu May 31, 2012 6:18 pm
You can turn off compositing to avoid this notification.
It's under Settings->Modules->Look
Posts: 3
Joined: Thu May 31, 2012 6:16 pm
by blc » Fri Jun 01, 2012 5:34 am
nexusplanet wrote:You can turn off compositing to avoid this notification.
It's under Settings->Modules->Look


Ta :D

I'll update the OP (at some point...!)
Posts: 167
Joined: Mon Sep 05, 2011 9:28 am
by ehjp » Tue Jun 05, 2012 4:32 pm
Hey blc - I just wanted to say thanks for the fab instructions and explanation. Have managed to get it all working and remembered enough of my old AIX/Unix days to even get Epiphany installed so I can avoid having 2 computers open all the time (one to read the instructions on as well as the Pi).

Only odd thing that happened is that after a reboot, I seemed to loose all TCP/IP - I re-added the "network" deamon back into the rc.conf file and all well again.

Thanks again!
Posts: 3
Joined: Mon Jun 04, 2012 3:31 pm
by brightspirit » Thu Jun 14, 2012 1:40 pm
I managed to get it working in 32-bit color mode by editing the config.txt file and adding the lines:

framebuffer_depth=32
framebuffer_ignore_alpha=1


I've also updated to the latest firmware before doing this. It didn't seem to work on some earlier firmware versions so I guess is only experimental as yet. I've yet to try it in 24-bit mode :D
User avatar
Posts: 19
Joined: Thu Jun 07, 2012 9:48 pm
Location: Manchester, UK
by adammhaile » Thu Jun 14, 2012 9:50 pm
brightspirit wrote:I've also updated to the latest firmware before doing this. It didn't seem to work on some earlier firmware versions so I guess is only experimental as yet. I've yet to try it in 24-bit mode :D


I'm trying to get higher bit-depths working as well... which firmware did you use? As far as I knew the latest Arch build was from 4/29. Is there a way to get a newer one?

I would really like to get higher than 16 bit color working... any help would be appreciated.
Posts: 8
Joined: Thu Jun 14, 2012 2:51 am
by obarthelemy » Fri Jun 15, 2012 3:01 am
Interesting post, thanks !
Posts: 1399
Joined: Tue Aug 09, 2011 10:53 pm
by brightspirit » Fri Jun 15, 2012 11:21 am
Try using Hexxeh's rpi-updater. It seems to be working for me at the mo' ;)
User avatar
Posts: 19
Joined: Thu Jun 07, 2012 9:48 pm
Location: Manchester, UK
by adammhaile » Fri Jun 15, 2012 11:27 am
I thought hexxeh's updater was for Raspbian? But this is regarding Arch.
Either way, after installing arch and then running pacman -Syu and pacman -S fbset I was able toget 32 bit color working.
Posts: 8
Joined: Thu Jun 14, 2012 2:51 am
by chrismul » Fri Jun 15, 2012 4:38 pm
Firstly thanks a million for the effort gone into the above how-to guide.

I am however experiencing an error when attempting it:

I am not a linux man but I am a developer so after success with Debian, I wanted to try Arch-linux to play about on and

hopefully run mono on.

I had no way to copy/paste the output below so I retyped it all (please be patient if any typos are spotted)

Here is my issue:

I have downladed and installed the arch-linux from the raspberrypi.org site and created the SD card. I follow the

procedure above and get as far as:
Code: Select all
sudo pacman -Syyu

It starts fine and then, as expected, complains about pacman needing an upgrade, I select Y and then I get:
Code: Select all
Resolving dependencies...
:: There are 2 providers available for udev:
:: Respository code
   1) systemd-tools  2) udev-oxnas

Enter a number (default=1):

I select the default (1) and then I get:
Code: Select all
looking for inter-conflicts...
:: systemd-tools and udev are in conflict. Remove udev? [y/N]

If I select N then the script ends, if I select y, and proceed with the instalation, I get the following:

Code: Select all
(29/29) checking package integrity
(29/29) loading package files
(29/29) checking file for conflicts
error: failed to commit transaction (conflicting files)
hwids: /usr/share/hwdata/pci.ids exists in filesystem
hwids: /usr/share/hwdata/usb.ids exists in filesystem
systememd-tools: /usr/share/man/man5/hostname.5.gz exists in filesystem
systememd-tools: /usr/share/man/man5/locale.conf.5.gz exists in filesystem
systememd-tools: /usr/share/man/man5/vconsole.conf.5.gz exists in filesystem
Errors occured, no packages were upgraded.


I am wondering whether I should try to rm these files and try again. Also, should I have logged out of root and logged

on as the newly created user before running sudo?

Any help would be greatly appreciated.

Chris
London
Posts: 1
Joined: Fri Jun 15, 2012 3:43 pm
by hadi » Fri Jun 15, 2012 5:11 pm
I followed your tutorial. thanks.

I have a problem. I can't setup mouse for some reason. if I
Code: Select all
cat /dev/input/mice
I can see moving my mouse generates random characters.

here is my rc.conf:
Code: Select all
#
# /etc/rc.conf - Main Configuration for Arch Linux ARM
#

# -----------------------------------------------------------------------
# LOCALIZATION
# -----------------------------------------------------------------------
#
# LOCALE: available languages can be listed with the 'locale -a' command
# DAEMON_LOCALE: If set to 'yes', use $LOCALE as the locale during daemon
# startup and during the boot process. If set to 'no', the C locale is used.
# HARDWARECLOCK: set to "", "UTC" or "localtime", any other value will result
#   in the hardware clock being left untouched (useful for virtualization)
#   Note: Using "localtime" is discouraged, using "" makes hwclock fall back
#   to the value in /var/lib/hwclock/adjfile
# TIMEZONE: timezones are found in /usr/share/zoneinfo
#   Note: if unset, the value in /etc/localtime is used unchanged
# KEYMAP: keymaps are found in /usr/share/kbd/keymaps
# CONSOLEFONT: found in /usr/share/kbd/consolefonts (only needed for non-US)
# CONSOLEMAP: found in /usr/share/kbd/consoletrans
# USECOLOR: use ANSI color sequences in startup messages
#
LOCALE="en_US.UTF-8"
DAEMON_LOCALE="no"
HARDWARECLOCK="UTC"
TIMEZONE="Europe/London"
KEYMAP="us"
CONSOLEFONT=
CONSOLEMAP=
USECOLOR="yes"

# -----------------------------------------------------------------------
# HARDWARE
# -----------------------------------------------------------------------
#
# MODULES: Modules to load at boot-up. Blacklisting is no longer supported.
#   Replace every !module by an entry as on the following line in a file in
#   /etc/modprobe.d:
#     blacklist module
#   See "man modprobe.conf" for details.
#
MODULES=()

# Udev settle timeout (default to 30)
UDEV_TIMEOUT=30

# Scan for FakeRAID (dmraid) Volumes at startup
USEDMRAID="no"

# Scan for BTRFS volumes at startup
USEBTRFS="no"

# Scan for LVM volume groups at startup, required if you use LVM
USELVM="no"

# -----------------------------------------------------------------------
# NETWORKING
# -----------------------------------------------------------------------
#
# HOSTNAME: Hostname of machine. Should also be put in /etc/hosts
#
HOSTNAME="alarmpi"

# Use 'ip addr' or 'ls /sys/class/net/' to see all available interfaces.
#
# Wired network setup
#   - interface: name of device (required)
#   - address: IP address (leave blank for DHCP)
#   - netmask: subnet mask (ignored for DHCP) (optional, defaults to 255.255.255.0)
#   - broadcast: broadcast address (ignored for DHCP) (optional)
#   - gateway: default route (ignored for DHCP)
#
# Static IP example
# interface=eth0
# address=192.168.0.2
# netmask=255.255.255.0
# broadcast=192.168.0.255
# gateway=192.168.0.1
#
# DHCP example
# interface=eth0
# address=
# netmask=
# gateway=

interface=eth0
address=
netmask=
broadcast=
gateway=

# Setting this to "yes" will skip network shutdown.
# This is required if your root device is on NFS.
NETWORK_PERSIST="no"

# Enable these netcfg profiles at boot-up. These are useful if you happen to
# need more advanced network features than the simple network service
# supports, such as multiple network configurations (ie, laptop users)
#   - set to 'menu' to present a menu during boot-up (dialog package required)
#   - prefix an entry with a ! to disable it
#
# Network profiles are found in /etc/network.d
#
# This requires the netcfg package
#
#NETWORKS=(main)

# -----------------------------------------------------------------------
# DAEMONS
# -----------------------------------------------------------------------
#
# Daemons to start at boot-up (in this order)
#   - prefix a daemon with a ! to disable it
#   - prefix a daemon with a @ to start it up in the background
#
# If something other takes care of your hardware clock (ntpd, dual-boot...)
# you should disable 'hwclock' here.
#
hald_enable="YES"
dbus_enable="YES"
DAEMONS=(!hwclock syslog-ng openntpd @netfs @crond @sshd dbus connmand hal)


any idea? I even tried Xfce4 to get the mouse working. no luck!

here is my xorg.conf (I tried with empty xorg.conf too):
Code: Select all
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
Subsection "Display"
Depth 24
Modes "1920x1080"
EndSubsection
Subsection "Display"
Depth 32
Modes "1920x1080"
EndSubsection
EndSection

Section "Extensions"
Option "BIG-REQUESTS" "off"
Option "Composite" "off"
Option "DAMAGE" "off"
Option "DOUBLE-BUFFER" "off"
Option "DPMS" "off"
Option "DRI2" "off"
Option "GLX" "off"
Option "Generic Event Extension" "off"
Option "MIT-SCREEN-SAVER" "off"
Option "MIT-SHM" "off"
Option "RANDR" "off"
Option "RECORD" "off"
Option "RENDER" "off"
Option "SGI-GLX" "off"
Option "SHAPE" "off"
Option "SYNC" "off"
Option "X-Resource" "off"
Option "XC-MISC" "off"
Option "XFIXES" "off"
Option "XFree86-DGA" "off"
Option "XFree86-VidModeExtension" "off"
Option "XINERAMA"
Option "XInputExtension" "off"
Option "XKEYBOARD" "off"
Option "XTEST" "off"
Option "XVideo" "off
EndSection
Posts: 29
Joined: Fri Jun 15, 2012 4:28 pm
by brightspirit » Fri Jun 15, 2012 9:35 pm
rpi-updater works fine with Arch. Just download and compile it from hexxeh's github. The link is found on Hexxeh's blog.

I've packaged up a working version of 32-bit E17 with fast boot and included the rpi-updater. Just got to find somewhere to host it now :lol:
User avatar
Posts: 19
Joined: Thu Jun 07, 2012 9:48 pm
Location: Manchester, UK
by hadi » Sat Jun 16, 2012 6:57 pm
don't remove network in rc. I did and I lost access to my Pi since I had no keyboard.
Posts: 29
Joined: Fri Jun 15, 2012 4:28 pm
by hadi » Sun Jun 17, 2012 1:39 am
brightspirit wrote:rpi-updater works fine with Arch. Just download and compile it from hexxeh's github. The link is found on Hexxeh's blog.

I've packaged up a working version of 32-bit E17 with fast boot and included the rpi-updater. Just got to find somewhere to host it now :lol:


sounds great!
Posts: 29
Joined: Fri Jun 15, 2012 4:28 pm
by hadi » Sun Jun 17, 2012 2:50 am
X doesn't work anymore :(


[root@alarmpi ~]# startx

/usr/bin/X: error while loading shared libraries: libudev.so.1: cannot open shared object file: No such file or directory
xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error
Posts: 29
Joined: Fri Jun 15, 2012 4:28 pm
by blc » Mon Jun 18, 2012 8:42 am
chrismul wrote:Firstly thanks a million for the effort gone into the above how-to guide.

I am however experiencing an error when attempting it:

I am not a linux man but I am a developer so after success with Debian, I wanted to try Arch-linux to play about on and

hopefully run mono on.

I had no way to copy/paste the output below so I retyped it all (please be patient if any typos are spotted)

Here is my issue:

I have downladed and installed the arch-linux from the raspberrypi.org site and created the SD card. I follow the

procedure above and get as far as:

(SNIPPED)

It starts fine and then, as expected, complains about pacman needing an upgrade, I select Y and then I get:

(SNIPPED)

I select the default (1) and then I get:

(SNIPPED)

I am wondering whether I should try to rm these files and try again. Also, should I have logged out of root and logged

on as the newly created user before running sudo?

Any help would be greatly appreciated.

Chris
London


hadi wrote:I followed your tutorial. thanks.

I have a problem. I can't setup mouse for some reason. if I
Code: Select all
cat /dev/input/mice
I can see moving my mouse generates random characters.

here is my rc.conf:

(SNIPPED)

any idea? I even tried Xfce4 to get the mouse working. no luck!

here is my xorg.conf (I tried with empty xorg.conf too):

(SNIPPED)



hadi wrote:X doesn't work anymore :(

[root@alarmpi ~]# startx

/usr/bin/X: error while loading shared libraries: libudev.so.1: cannot open shared object file: No such file or directory
xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error


It seems as if there's some issues with udev here; the initial step of running pacman -Syyu is to update all packages to the latest versions. It might be worth skipping this step to see if this would make a difference?

If I'm completely honest, the guide I put together was based on existing guides I'd found, and much research/experimentation/googling on my part. I know my way around Linux fairly well, but I am no developer and I'm certainly not an expert I'm afraid. I think it might be time to revisit this; I haven't had time to fire up the Pi and experiment recently (moving house is such a pain!)...
Posts: 167
Joined: Mon Sep 05, 2011 9:28 am
by nexusplanet » Wed Jun 20, 2012 5:13 pm
chrismul wrote:I am wondering whether I should try to rm these files and try again.


It is safe to remove these files. They're replaced by systemd-tools as far as i know. I deleted these files too an never ran into any problems.
Posts: 3
Joined: Thu May 31, 2012 6:16 pm
by markchagers » Fri Jun 29, 2012 1:13 pm
This was a great tutorial, however there is one issue: after following this guide I found my clock was set to 1 jan 1970, and no way to set it to the correct date/time. After searching this forum for a solution I found this article:
viewtopic.php?f=53&t=8255
That suggested a solution. I re-added the network deamon that I removed when connmand was added (taking care to add it before openntpd) and this set the clock back to the current date and time. Next I tried to remove network again and move connmand into the position of the network entry, however that put the clock back to jan 1 1970.
So far I have seen no apparent negative effect from running both network and connmand. My conclusion (until someone with more knowhow asserts otherwise) is that they can coexist, and that the network deamon is essential for the time server, which sets the clock.
Posts: 2
Joined: Wed Jun 27, 2012 7:29 am
by ANOKNUSA » Sun Jul 01, 2012 7:13 pm
This is a pretty good guide in general, but I've gotta point something out: It's important that you never install packages using 'pacman -Sy.' Doing so can result in essentially upgrading a single package and it's dependencies and libraries. Meanwhile, the other packages that depend on those libraries are now essentially out-of-date, and may not run until a full system update is performed. The only reason the author of this guide--or any newcomers to Arch--won't have had issues with this guide is that it instructs them to run "pacman -Syyu" partway through, thus upgrading the entire system--which actually makes the "-y" parameter superfluous anyway.

tl;dr : "pacman -Sy" can break your system.
Posts: 2
Joined: Sun Jul 01, 2012 6:42 pm
by Nr90 » Sun Jul 01, 2012 8:07 pm
One thing to add anoknusa.

The reason you might get 404 errors if you do pacman -S some-package is that your package list is not up to date.
Pacman -Sy some-package does update the mirrors, however is not good practice either.

Solution? Always do pacman -Syu and then do pacman -S some-package
Posts: 213
Joined: Sat Nov 26, 2011 12:39 pm
by blc » Mon Jul 02, 2012 7:56 am
ANOKNUSA wrote:This is a pretty good guide in general, but I've gotta point something out: It's important that you never install packages using 'pacman -Sy.' Doing so can result in essentially upgrading a single package and it's dependencies and libraries. Meanwhile, the other packages that depend on those libraries are now essentially out-of-date, and may not run until a full system update is performed. The only reason the author of this guide--or any newcomers to Arch--won't have had issues with this guide is that it instructs them to run "pacman -Syyu" partway through, thus upgrading the entire system--which actually makes the "-y" parameter superfluous anyway.

tl;dr : "pacman -Sy" can break your system.


Excellent. I'm rather new to pacman, and Arch in general, and this wasn't exactly clear. I've been meaning to update the OP for a long time (sadly real life has taken over and my Pi is packed up ready for a house move), but I will add a quick note now.

EDIT: I can't seem to edit my original post... Without being able to do that, I won't be able to update the instructions. Could someone please close this thread, or "unlock" the original post? I wouldn't want my half-baked instructions to mess up someone's install.
Posts: 167
Joined: Mon Sep 05, 2011 9:28 am
by jamesh » Mon Jul 02, 2012 8:36 am
To all thread readers - blc has asked to lock this thread as the instructions are now a bit out of date. Please bear that in mind when using the instructions.

Locking thread!
Moderator
Moderator
Posts: 10523
Joined: Sat Jul 30, 2011 7:41 pm