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)
New repo setup Unofficial_user_repositories#openrc-eudev, maybe you would like to contribute Xan? --Aaditya (talk) 09:26, 7 March 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.

Aaditya (talk) 12:10, 6 March 2015 (UTC)

A section with easy to follow steps is useful, however redundant and overlapping. True, many parts can be found in other wiki articles, but very few articles can be truly original anyway.
Moreover, unofficial repos are used in several pages of our wiki (e.g. AMD_Catalyst#Installing_from_the_unofficial_repository, VirtualBox#Extension_pack) and I've been dilligently maintaining [pfkernel] since 2011; it might not be a very popular one but it's not a nova either. Yaourt is clearly suggested as an alternative way too.
Alad, do you think it would be better to move it to the end of OpenRC, as a summary perhaps of the entire article? -- Nous (talk) 12:21, 6 March 2015 (UTC)
Here's some steps (don't have the time to implement them):
  1. Yaourt should not be mentioned outside Yaourt itself, as users are expected to use and understand makepkg. It is customary to link to the AUR article instead.
  2. I would mention the repo in OpenRC#artoo's way.
  3. Removing systemd is an optional but highly invasive step; it is however handled in Init#Replacing_the_systemd_package and to some extent in eudev. sysrq steps could be merged. I don't see the actual benefit of "Remove stystemd cruft", and besides, the users are part of filesystem.
  4. systemctl list units is more an installation, rather than troubleshooting step, so this could be left here.
  5. ConsoleKit is in no way "mandatory" for desktop users; see Init#Group_permissions (the usermod command with common groups could be merged there). Related packages like upower-pm-utilsAUR could be mentioned in Init as well (I've thought on a "power management" section).
-- Alad (talk) 19:24, 6 March 2015 (UTC)
  1. Yaourt section removed.
  2. Unofficial repos moved to OpenRC#artoo's way.
  3. I agree about the invasiveness, but it can't be helped; eudev conflicts with systemd and without udev there's no hotplugging. Since it's a default in systemd it should also be so in openrc...
  4. I also agree about the systemd-users cruft, it's totally indifferent whether it stays or goes. Removed.
  5. Re-worded consolekit.
  6. To-do: figure out how to merge consolekit, upower, permissions and SysRq steps. My intention is to keep all steps in one place for easier reference, instead of scattering them across different (albeit more relevant) articles. What about keeping them as steps here and adding pertinent bits of information to their respective wiki pages?
-- Nous (talk) 22:14, 6 March 2015 (UTC)