From ArchWiki
Jump to navigation Jump to search

Alternative way to install OpenRC and eudev (artoo's way)

Instead of the AUR, one can simply build from artoo's git repo, add all the packages to a local repo, and install from that.

Steps include:

# One time
mkdir -p ~/builds && cd ~/builds
git clone openrc-eudev
# To keep up to date
cd ~/builds/openrc-eudev
git pull
cd sysvinit && makepkg -s
cd ..
cd openrc-core && makepkg -d # to ignore sysvinit dependency
cd ..
cd openrc-base && makepkg -s
cd ..
cd openrc-desktop && makepkg -s
cd ..
cd polkit-consolekit && makepkg -s
cd ..
cd consolekit && makepkg -s
cd ..
cd eudev && makepkg -s
cd ..
cd eudev-systemdcompat && makepkg -d # to ignore eudev dependency
cd ..
cd upower-pm-utils && makepkg -d
cd ..
# Copying built packages in one place
mkdir -p ~/builds/openrc-eudev/packages
cp ~/builds/openrc-eudev/*/*.pkg.tar.xz ~/builds/openrc-eudev/packages

This probably takes care of the base. The built packages could be added to a pacman local repo.

After that the built packages could be installed as:

sudo pacman -S openrc-base
sudo pacman -S openrc-desktop
sudo pacman -S eudev-base

Aaditya (talk) 17:05, 28 January 2015 (UTC)

Here's a "slightly" more complex script to automate this:
#/usr/bin/env bash

[[ -d openrc-eudev ]] || git clone openrc-eudev
cd openrc-eudev       || exit 1

_nodep=(openrc-core eudev-systemdcompat upower-pm-utils)
_dep=(sysvinit openrc-base openrc-desktop polkit-consolekit consolekit eudev)
_fail() { echo "$i failed to build." > ../fail.log; }

for i in "${_dep[@]}"; do
    (cd "$i" && { makepkg -sr || _fail; })

for i in "${_nodep[@]}"; do
    (cd "$i" && { makepkg -d  || _fail; })

mkdir -p packages && cp */*.pkg.tar.xz packages/
-- Alad (talk) 13:30, 28 January 2015 (UTC)
Interesting script, I did not know about pushd and popd, thx. Aaditya (talk) 17:05, 28 January 2015 (UTC)
Yep, and edited to remove it. :P -- Alad (talk) 20:52, 23 February 2015 (UTC)



Here the main package is openrc-core (and corresponding set of scripts belonging to the openrc-base group).

it's needed a clarification: it implies that we have to install openrc-core only? openrc-core plus openrc-base? Is the installation of openrc-base optional? If we install openrc-base, then we also install openrc-core?

Please clarify it. Overall for people installing it from AUR.--Xan (talk) 17:52, 24 January 2015 (UTC)

openrc core + openrc base (openrc-core is a dependency of openrc-base), I will clarify that point Aaditya (talk) 03:39, 26 January 2015 (UTC)
Thanks--Xan (talk) 07:59, 26 January 2015 (UTC)

Why delete webpage and repo


Why do you delete tips and tricks? Why it's not available?--Xan (talk) 15:55, 27 January 2015 (UTC)

Hi Xan, I felt I was unable to keep the repo up to date due to increased efforts, but I will see if I can bring it back, with perhaps less effort from my side. Aaditya (talk) 16:12, 27 January 2015 (UTC)
But it works for me now. I've just updated my packages right now (openrc 0.13.8).--Xan (talk) 08:58, 29 January 2015 (UTC)
Yes, after reading your post, I realised that maybe I could let the repo be and update it when I got the time (like yesterday). Aaditya (talk) 14:42, 29 January 2015 (UTC)
Thanks a lot. I think maintain a repo with OpenRC is a good idea. With this, we will attrack more people --Xan (talk) 08:35, 30 January 2015 (UTC)

Quick migration from systemd

Hey Alad,

Some of the stuff in OpenRC#Quick_migration_from_systemd is unique too, like how to reboot after removing systemd, preserving the daemons used with systemd, etc..

Do you think we can accommodate it somehow?

Also maybe it makes sense to have a list of what to do after removing systemd, which could link to headings under the Init page.