ArchLabs without systemd – Obarun s6 on top

You may ask what we are doing with ArchLabs when there is a tremendous amount of original non-systemd based distros on the list (our own lists for example).   “Originally a minimalist, Arch-based live distribution with Openbox, the latest release of ArchLabs Linux is a radical departure from the original concept as the distribution is now designed for users who like to customise their system during installation. ”  It may be coincidental but the installer is following a bit on the Obarun fashion where you install what you need and like and not what the distribution has chosen.  Obarun offers infinite customization by you being able to edit the lists of pkgs, in ArchLabs you check from the available lists what to install.

Initially archlabs (influenced by bunsenlabs) came with openbox and a live image.  The live image is gone, there is just console and the installer.  The available selections of wm/destops through the installer are Openbox, i3wm, Bspwm, dwm, and Awesome.  If you like dark minimalistic themes you will feel at home.  Installation is relatively easy, quick and uneventful.  The system will boot and go straight into the wm/desktop fully set up.  We must admit that although we are Openbox fanatics and we can tolerate a few other minimal window managers, we never really tried BSPWM, so we went for a double of openbox/bspwm installation.  The installer actually asks which one would you like to use as the primary to autostart.

From that point on we went hacking, throwing systemd out and installing obarun’s s6 and related utilities.  Here is how:

Edit:  The reported problem below with installing obarun-keyring was solved and the instructions below incorporate the changes


append pacman.conf with obarun repo and SigLevel set to Never
The Obarun repositories MUST go before Core (Arch's main repository) so 
it will be Obarun, core, extra, community, and archlabs last.

#[obarun-testing]
#SigLevel = Never
#SigLevel = Required
#Server = https://repo.obarun.org/$arch/testing

[obarun]
SigLevel = Never
#SigLevel = Required    ## after installing the obarun-keyring you will flip the comment from required to never
Server = https://repo.obarun.org/$arch

All commands start with # and require root privileges, so use su, login as root, or use sudo before them.

synchronize : # pacman -Syy

download obarun-keyring # pacman -Sw obarun-keyring

The -Sw downloads packages into /var/cache/pacman/pkg without installing it

Now you will install the downloaded pkgs as local, which pacman allows without a gpg check

# pacman -U /var/cache/pacman/pkg/obarun-keyring-20180910-1-x86_64.pkg.tar.xz
# pacman -Syy

# pacman-key –populate obarun archlinux

re-edit /etc/pacman.conf erase the Siglevel = Never and leave Siglevel = Required .

install applysys pacopts
# pacman -S applysys pacopts

keep a list of the active daemons so you can activate the appropriate services
later 

# systemctl list-units --state=running | grep -v systemd | awk '{print $1}' | grep service > daemon.list
# cat daemon.list 

remove crap with -Rnsudd systemd libsystemd systemd-sysvcompat
# pacman -Rnsudd systemd libsystemd systemd-sysvcompat

Re edit /etc/pacman.conf and add systemd and libsystemd on the ignore list so they will never come in.

install the  s6-suite eudev consolekit2 ** (consolekit is optional based on what you need to install)
# pacman -S s6-suite eudev consolekit2

:: There are 12 members in group s6-suite:
:: Repository obarun
 1) execline 2) mdevd 3) s6 4) s6-boot 5) s6-dns 6) s6-linux-init 
 7) s6-linux-utils 8) s6-networking 9) s6-portable-utils  10) s6-rc 
 11) s6opts 12) skalibs

Install all 12


7  launch pacopts origin command and replace all installed packages that came from arch and have obarun replacements, with the good ones, 
when it asks you. be careful of the messages when filesystem is installed 
and make the necessaries change about xxx.pacnew files.

# pacopts origin  
list of pkgs not coming from Obarun but for which Obarun has replacements.
resolving dependencies...

replace all of the above by hitting y y y to all.
Take really a close look of the output for any red lines of warnings or 
errors and take care of anything that was not reinstalled properly.
You may encounter a problem, a pkg that does not want to be replaced easy.  
Remove and reinstall, it will automatically come from Obarun as obarun's 
repository is above (Arch Core system extra community on pacman.conf))

If lsb-release does not want to upgrade, it is the same version with obarun's, 
so use force (--force) to force it in place.

modify the s6.conf to suit your needs
# nano /etc/s6/s6.conf
(swap, hostname, timezone, etc.)
launch pacopts service and install the service that you need when it asks you.  Remember the list of services active you pulled when systemd was still installed?  Use it now as guide.

# pacopts service

 

You may have to make some adjustments depending on what you initially installed, what you want to keep.  There is some scripts pkg that archbang ships with that may require a library which doesn’t exist or can’t be installed, but you can use # pacman -Sdd archlabs-***-pkg  and take a chance that some feature may fail.  In some cases there might not even be a problem as obarun pkgs may provide this necessity but it may be bundled under a different package name.  Feel free to ask for help here or through the Obarun forum or irc channel.

The end result is a much faster and responsive system utilizing less resources to start, and you are now free of systemd.  With the exception of using arch’s init system and service manager, archlabs appears to be a very nice distribution with a tremendous amount of work and development behind it.

 

PS  Consolekit2 is optional for those that need to use obarun pkgs like containers that require it.

Your .xinitrc should end at exec ck-launch-session openbox-session    if you want xinit or startx to start openbox.  Without consolekit exec openbox-session  

For more information on using xinit look up the arch-wiki

PS2  The above procedure is not unique to archlabs, it works with any arch based distribution.

Advertisements

12 thoughts on “ArchLabs without systemd – Obarun s6 on top

  1. I’m very interested in doing this…
    However, it fails from the following line:

    pacman-key –populate obarun archlinux

    It won’t populate… and then the following errors happen:

    sudo pacman -S applysys pacopts

    error: obarun: missing required signature
    error: database ‘obarun’ is not valid (invalid or corrupted database (PGP signature))

    Could you please edit your tutorial and share a proper w=solution for this please?
    Thanks a lot in advance.

    Like

  2. Thanks to another comment that just came in I noticed your comment as well now, hopefully not too late.
    Did you install obarun-keyring?
    After you edit pacman.conf and add [obarun]

    pacman -Syy

    pacman -S obarun-keyring

    pacman-key –populate obarun

    pacman -Syy

    then edit pacman.conf and swithch the SigLevel = Never to = Required — make sure SigLevel is spelled with both capitals.

    it shoudl be ok.

    If not it may be a problem I can’t diagnose. Maybe in Obarun forum they may know,

    Like

  3. Thanks for the response fungalnet!
    I did everything exactly as shown on the tutorial, but my results were those as in the previous post.
    I will try again and let you know.
    Thanks.

    Like

  4. Hi fungalnet,
    Unfortunately your instructions won’t work!
    I followed all the steps and succesfully installed obarun-keyring (as I had done before).
    It went all okay until the problematic part:

    pacman -S applysys pacopts

    error: obarun: missing required signature
    error: database ‘obarun’ is not valid (invalid or corrupted database (PGP signature))

    These are the same errors as before.
    Too bad! This would be, in my opinion and for my needs, a perfect OS…
    I guess I’ll have to stick to MX for now, at least until I find a solution for this.
    Thanks anyway.

    Like

  5. Ok, I tried it today again, reproduced the problem, I can’t remember what exactly I had done the time before, I made a small change in the instructions above, and I got a good installation.
    Hope to see you in the Obarun forum for further tweaking.

    Like

  6. Hi fungalnet,
    Thanks a lot for your effort and for your feedback over this issue!
    Well, I’ve tried it all at least 3 times , having rebooted in between every new attempt before writing this message, but unfortunately the same error persists.

    pacman -S applysys pacopts

    error: obarun: missing required signature
    error: database ‘obarun’ is not valid (invalid or corrupted database (PGP signature))

    No luck yet.
    Sorry for the bad news!
    Anyway, thanks once again.

    Like

  7. Hi fungalnet,
    I’ve finally managed to finish the installation by doing the following:

    pacman -Syu

    To which, it offered me to install eudev and ditch systemd… I accepted it and it failed citing broken dependencies.
    Then I simply did:

    pacman -S applysys pacopts

    And it worked!
    This time I could finish installing it.
    But… It refused to reboot, until I logged out and performed forced a shutdown.
    Now it won’t boot to X or Openbox!
    I tried with and without xinitrc with no success…
    It looks like xorg is broken or something.

    Like

  8. Did you disable autologin at installation and before the conversion, I believe it should be done as it uses a systemd service to do it and it may become problematic. Also can you log in to root? If tty1 fails, go to tty6 (ctrl alt F6), killall xinit, login as root.

    In /etc/X11/ there should be a file called /etc/X11/Xwrapper.config

    It should have the following content:

    needs_root_rights = yes

    Like

  9. I didn’t have autologin on.
    I never have it, but yes, I did check it before the migration procedure.
    As for the Xwrapper.config file, archlabs doesn’t have it and the migration didn’t seem to produce it.
    Well, after having tried this procedure for quite a few times, without any real success, I think I’m done for now… At least until a more detailed tutorial or an error proof one shows up.
    Another option would be to install obarun with archlabs dotfiles (which I have saved here…), but obarun seems not to deal with UEFI installs. It messed with mine badly.
    So, no luck for me!
    Anyway, thanks a lot for your effort!

    P.S.: Would it be difficult to prepare a ready to install obarun .iso configured with archlabs dotfiles?

    Like

  10. I’m working on the art of iso making, but other than VMs I don’t have any hw that I can test UEFI on.
    https://forum.obarun.org/viewtopic.php?pid=1810#p1810
    There have been others who did an UEFI install of obarun, but I hear there are differences from one UEFI system to another.

    Obarun has a script for making your own iso
    obarun/obarun-mkiso 0.0.9-1
    Script for making an iso

    If I make one it would be with openbox.

    Like

If your comment is considered off-topic a new topic will be created with your comment to continue a different discussion. This community is based on open and free communication, meaning we must all respect all in minimizing the exercise of freedom to disrupt such communication. Feel free to post what you think but keep in mind the subject matter discussed. It is just as easy to start a new topic as it is to dilute the content of an existing discussion.

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.