' ' Antergos-OpenRC Openbox & i3, based on Artix – a Step by Step Tutorial


This tutorial shall guide you to get the excellence of Openbox on a systemd free Arch Linux.
All my testings have proven this system to be very stable and responsive. I have tried to make it as slim as possible. With Openbox and i3 you get two intuitive and highly efficient window managers with a wide range of features on a light easy-to-handle system. At startup RAM usage is about 210 MB with Openbox and 150 MB with i3. – The whole installation takes about 3,2 GB of hd space.

The following steps guide you through the installation of Artix i3 and Openbox and shows how to add the Antergos repository.
(1) Read ‘Return of the Jedi’ to understand how a systemd-free Arch should be set up.
http://systemd-free.org/news.php
(2) Download artix-i3-rolling-x86_64.iso
https://sourceforge.net/projects/artix-linux/files/iso/i3/
(3) Format partion(s) for installation with gParted (i.e. from gParted Live – format with Artix causes problems!).
For a permanent HD install consider to put ‘/home’ on a separate partion.
(i.a. for more efficient backups: root partition as clonezilla image – settings and data files with backintime)

(4) Boot the i3 live system (to open dmenu press keys: <windows> <d>; logout: <windows> <shift> <e>)
(5) Activate your mirrors – open termite:
$ sudo nano /etc/pacman.d/mirrorlist-arch –> update: $ sudo pacman -Syy
(6) Open termite, type $ sudo calamares and install i3 and just the needed system components
to run the system from command line and to give pacman network access to the pkg-mirrors.
The rest you can install later via pacman. This will give you more control on what you get.
Do not install dislaymanager SDDM or other Lxqt stuff, unless you know why you want it!

(7) Reboot and log in
(8) Activate your mirrors: $ sudo nano /etc/pacman.d/mirrorlist-arch –> upgrade: $ sudo pacman -Syyu
(9) Install xorg (check if you will really need all of it: $ pacman -Ss xorg | $ pacman -Ss xf86-video):
Most likely you will need:
$ sudo pacman -S --needed xserver-xorg x11-xserver-utils x11-utils xfonts-base
$ sudo pacman -S --needed xf86-video-vesa xf86-video-‘your’driver’ [specify for your video card]
for VirtualBox add: $ sudo pacman -S --needed virtualbox-guest-modules-artix

(10) Install a display manager:
$ sudo pacman -S --needed lxrandr-gtk3 lxdm-gtk-3 displaymanger-openrc
$ sudo nano /etc/conf.d/xdm –> DISPLAYMANAGER=“lxdm”
$ sudo rc-update add xdm default
10a) Instead of a display manager you could use .xinitrc for command line login:
$ nano /etc/X11/xinit/xinitrc At the end of xinitrc add these 3 lines:
# DisplayManager Openbox and i3:
# exec openbox-session
exec i3
(Check, that in the whole document only one exec line is activatet – i.e. exec without ‘#’)
Save in your home directory as ~/.xinitrc

(11) Install Openbox:
$ sudo pacman -S --needed openbox obconf obmenu menu-cache archlinux-xdg-menu
(12) Install the needed LXDE components (preferably gtk3 versions):
$ sudo pacman -S --needed lxmenu-data lxinput-gtk3 lxterminal-gtk3 lxtask-gtk3
$ sudo pacman -S --needed lxappearance-gtk3 lxappearance-obconf-gtk3
(13) Install PCManFM:
$ sudo pacman -S --needed pcmanfm-gtk3 xarchiver
$ sudo pacman -S --needed gvfs gvfs-afc gamin udisks2 systemd-dummy libsystemd-dummy

(14) Install desktop components:
$ sudo pacman -S --needed plank compton tint2 gsimplecal volumeicon parcellite feh
$ sudo pacman -S --needed adwaita-icon-theme gmrun mousepad xterm gksu (contains gksudo)
(15) Network
$ sudo pacman -S --needed networkmanager network-manager-applett (= nm-applett)
(16) Install a web browser: i.e. $ sudo pacman -S firefox (& ‘firefox-i18n-xy’ for your language)

(17) Reboot: $ sudo reboot and login to i3 via LXDM
(18) Copy /etc/xdg/openbox to ~/.config

(19) Logout and login to openbox [Default right mouse button menus are unusable, but xterm does work.]
(20) Build your menu structure with obmenu open xterm (right mouse button): $ obmenu
––> create a Pipemenu as submenu to ‘Openbox 3’ with the following command line at ‘Execute’:
'xdg_menu --format openbox3-pipe --root-menu /etc/xdg/menus/lxde-applications.menu’
Save and reconfigure or restart Openbox via context menu (if missing create menu item ‘restart’)
Check, if the Pipemenu is working. If it does, use obmenu to erase all the dead end menu items.
[If the pipe menu should not work: Install openbox-menu, when you are done with step (23). Then use
the command ‘openbox-menu lxde-applications.menu’ to create the pipe menu.]

 Further you may want a menu with these 5 specific openbox items:      Execute: obmenu  –  Execute: obconf  –  Execute: obkey  –      Action: reconfigure  –  Action: restart     A menu item for system upgrades – Execute:     lxterminal -e bash -c "sudo -H pacman -Syu; echo --Enter to Close Terminal--; read line"     The shutdown commands of systemd (systemctl ...) do not work in OpenRC.      Create these 3 menu items instead:      Log Out  –        Action:     Exit      Reboot  –         Execute:   lxterminal -e sudo -H reboot      PowerOff  –     Execute:   lxterminal -e sudo -H poweroff      [This means: For reboot and shut down you have to type your password.]      You can still shut down without password, if you log out and then shut down from LXDM.

(21) Edit autostart [Feh is used by i3 to set the background. To keep your system slim
use it for openbox as well. It is easy to handle. Just edit the path to the image file.
For a personal LXDM background picture edit /etc/lxdm/lxdm.conf]
Edit ~/.config/openbox/autostart (If one item causes problems, raise sleep to 2 or 3.)
tint2 &
(sleep 1 && feh --bg-scale /path-to/image.file) &
(sleep 1 && volumeicon) &
(sleep 1 && parcellite) &
(sleep 1 && nm-applet) &
#(sleep 1 && kalu) &
(sleep 1 && dbus-launch plank) &
(sleep 1 && compton) &
(sleep 1 && dbus-launch pcmanfm -d) &
#(sleep 1 && conky) &
#(sleep 1 && wmwork) &
#(sleep 1 && wmtmp) &
#(sleep 1 && wmnd) &
[’#’ = not installed yet – Use pacman to upgrade and use kalu as notification monitor only!!!]
[You can create a menu item for system upgrades – execute: lxterminal -e sudo -H pacman -Syu]
[ – https://wiki.lxde.org/en/General_Information – – PCManFM - file manager – DBus :
DBus (with udisks or gvfs) is used for volume mounting and management of removable devices.]
This openbox desktop looks and works best with plank at the bottom and tint2 at the left (last option).

(22) Now you will notice that with PCManFM trash can and mount/unmount is working in openbox
but not in i3.
To run PCManFM in daemon mode and to set the background add these lines in ~/.config/i3/config :
# PCManFM daemon:
exec dbus-launch pcmanfm -d
# Background picture
exec feh --bg-scale /path-to/image.file

(23) Add the Antergos Repo
Downoad the keyring: http://mirrors.antergos.com/antergos/x86_64/…
install the keyring: $ sudo pacman -U the-path-to/antergos-keyring
Add in /etc/pacman.conf (at the end as last mirror)
[antergos]
SigLevel = PackageRequired
Usage = All
Server = http://mirrors.antergos.com/$repo/$arch

 refresh databases: 	$ sudo pacman -Syy     install antergos-mirrorlist: $ sudo pacman -S antergos-mirrorlist    edit  /etc/pacman.conf		    [antergos]    SigLevel = PackageRequired    #Usage = All    #Server = http://mirrors.antergos.com/$repo/$arch    Include = /etc/pacman.d/antergos-mirrorlist    refresh databases: 	sudo pacman -Syy

(24) Watch out and check for systemd dependencies: There is stuff in the Antergos repo, which depends on systemd – i.e. pulseaudio or antergos-openbox-setup. So do not install antergos-openbox-setup but download the package instead, open it with Xarchiver and copy the desired config files and folders to your home directory. Due to systemd-dummy or other dummy hooks you might be able to install systemd dependent software , but it most likely will not work properly. Systemd was in the Arch core repo, but core has been replaced by the three Artix repos – system, world and galaxy. Consequentely there is no sytemd in Artix. It cannot be installed accidentally unless you add a repo, which contains systemd. Never do that!

Some programs are in world or galaxy and in antergos mirror as well. This might cause a problem, if the version in world has been adapted to OpenRC and a systemd dependent version in antergos is newer. Therefore ’[antergos]’ has to be the last repository at the end of pacman.conf. Then the hierarchy of the repositories should avoid this problem, but better stay cautious. So check for double entries with (tk)Pacman, if you get malfunctions.

(25) The system is ready to use now.
Enjoy, install the software you prefer and decorate your desktop as you please.
[If you want to root windows to look different, use lxappearance with sudo.]

– Appendix – Some Helpful Ressources –
(a) pkgs.org – If any of your desired software should not run, you can check here, which dependencies are set in other linux systems.
(b) Pacman manpage: https://www.archlinux.org/pacman/pacman.8.html#_transaction_options_apply_to_em_s_em_em_r_em_and_em_u_em
(c) Manjaro-OpenRC: https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd
(d) Alpine: https://wiki.alpinelinux.org/wiki/Alpine_Linux_Init_System
(e) Gentoo: https://wiki.gentoo.org/wiki/OpenRC
(f) Antergos packages: http://mirrors.antergos.com/antergos/x86_64/
(g) Archbang: http://bbs.archbang.org
(h) Arch package archiv: https://archive.archlinux.org/
(i) Arch wiki: https://wiki.archlinux.org/
(j) GParted-live: http://gparted.org/
(k) Clonezilla-live: http://www.clonezilla.org/
(l) Back in Time: http://backintime.readthedocs.io/en/latest/
(m) Grsync: http://www.opbyte.it/grsync/
(n) i3 user guide: https://i3wm.org/docs/userguide.html
(o) Openbox: http://openbox.org/wiki/Main_Page
(p) Openbox user guide: https://urukrama.wordpress.com/openbox-guide/
(q) Use alsa instead of pulseaudio: https://wiki.gentoo.org/wiki/PulseAudio#Without_udev.2Fsystemd
(r) Systemd vs. OpenRC – comparison: https://iwf1.com/systemd-vs-openrc-which-init-system-is-the-best-for-you-comparison/
(s) Arch linux systemd-free: http://systemd-free.org/
(t) Artix Linux: https://sourceforge.net/projects/artix-linux/files/iso/i3/ || https://artix-linux.github.io/