Arch is a tricky Linux distro to 'get right', since its installer is minimalist command-line stuff and at the end of the installation you end up at …the command line! Which may sound a bit bonkers, but is actually not a bad way to think about things: Arch Linux as your minimalist “core” operating system; everything else you use regularly by way of application software and system configuration/preferences settings are laid on top of that core as part of a highly-individual selection of 'userland' components. The core O/S then remains small, compact and solid; the possibly flakey stuff must therefore be userland components you added -and can therefore remove if you want to get back to stability.
That is a good way to build a desktop operating system: but it doesn't make the configuration job for the user any easier knowing that it's the 'right' way to do things! Getting Arch to become a usable operating system is hard, and the results can often be less than sturdy and reliable.
So what's needed, perhaps, is a way of installing Arch that adds a dollop of curated userland on top of the core OS for you. This is what ArcoLinux does. As such, ArcoLinux is essentially “Arch for Dummies” (or for people who have better ways to spend their precious free time, at least!)
In this article, I'll look at installing ArcolinuxB - OpenBox. This is core Arch, overlaid with the XFCE desktop environment and the OpenBox window manager. This is vaguely 'minimalist' userland, not because my PC needs to keep things lightweight (it's a Xeon with 96GB RAM and a good video card!), but just because it seemed like a good approach to take to achieve a highly-productive, reliable desktop operating system that meets my needs.
After I install the operating system, I step you through Arch's package management system, by way of updating everything to the latest versions and by adding useful extra applications to the mix. I finish up by highlighting one or two key points of tweaking and re-configuration I found it necessary to do to get everything the way I like it.
As such, this article is highly personal: you might prefer a different desktop environment or window manager; you might need a different set of third-party applications to be installed; you might not need to re-configure the things I do …or might need to re-configure things I just put up with! But I hope the article proves useful in any event, as a way of stepping you through the sorts of things you'd need to do to achieve an Arch-like install that works for you.
ArcoLinux has an… er, “interesting” approach to its distro releases. It provides a whole spectrum of ISOs, each including a graphical installer, but each ending up at different places along a spectrum of core+userland mix. For example, its ArcolinuxD release lets you do a nice graphical install… that ends up with you landing at a command line-only operating system, just as if you'd installed 'proper' Arch. So you get “core” Arch, and nothing much else.
At the other end of the spectrum, you could install ArcoLinux -a graphical install of Arch, with three different userlands automatically configured on top for you, so that you can choose between XFCE, i3 or Openbox as your desktop environment/window manager, since all three are installed for you, out-of-the-box.
This article takes the approach of aimining half-way between those two extremes: I want a userland auto-installed for me, for sure. But I don't need three of them: just one of them will do fine! For me, I'd like to have just the Openbox userland laid on top of the Arch core… and for that, you need to install ArcolinuxB, using the Openbox flavour. To do that, you just visit the ArcolinuxB community versions website and click on the appropriate link. There are 13 userlands to choose from, but I went for the Openbox one.
When you get to the 'flavour download page', you need to hunt down the latest version number (at the time of writing, that was 19.04). Depending on your flavour choice, you may find that there are two ISOs per version: one called “min-version” and one just called “version”, like so:
Notice how the 19.03 version is available as “…min-v19.03…” or just “-v19.03…”. The difference is that a “min” version has the relevant desktop environment/window manager built-in, but a lot of the extra application software is missing, left as an exercise for you to install after the basic O/S installation has completed, as you see fit. You'll also notice from that last screenshot that it can take them a while to get around to creating the 'min' version: the 19.04 release, for example, is currently only available in the full-fat version. So that's what I shall be using for the rest of this article: ArcolinuxB - Openbox - Fullfat version. Meaning that I need to download this ISO file.
Once downloaded, burn that to a DVD or write it to a bootable USB stick and start your PC (or virtual machine) with it configured to boot from the appropriate media.
The ArcoLinux install is not complicated, but I'll step you through it anyway.
You start with this menu displayed:
The 'Boot ArcoLinux' option is the default and is the one you want to happen, so just press [Enter] to select it and make the installation process begin. Next, you are asked to choose the language for the installation:
American English is the default option, but just click that drop-down box to select something more appropriate if necessary. In my case, British English is a better match for my linguistic skills. Click [Next] to move on.
Here you choose a time zone that's appropriate to you. The installer may auto-detect one for you correctly, but if it gets it wrong, just click on the map to put it wise. Again, click [Next] to move on when you're ready:
Now you get to choose an appropriate keyboard layout for your system. The installer gets this wrong for me: because I've said I want British English and a London time zone, it assumes I must be using an “English (UK)” keyboard -but little does it realise that it's talking to an Australian living in the UK who has brought all his old Aussie keyboards across the globe with him! Accordingly, I need to manually select an “English (US)” layout. Click [Next] to progress:
Now things start to get interesting (and potentially dangerous!). You are required to partition your hard disk, to make room for the new operating system to go on it. It is easiest to let ArcoLinux have an entire hard disk to itself (which would result in anything already on those disks being permanently erased). If you have more complex partitioning needs (perhaps because your PC has multiple hard disks or you want one hard disk to host more than one operating system), you can certainly achieve the necessary outcomes using the 'Manual Partitioning' option displayed here, but doing so is out-of-scope for this article, I'm afraid.
Let us assume you click 'Erase disk': note that you can elect to create a swap partition or not as part of this option. If you decide to create swap, you are then asked whether you need enough swap to support hibernation or not. If you select the 'no hibernate' version, you'll probably get about half your RAM allocated as a swap partition on disk (though it depends on how much RAM you've actually got). On a 16GB RAM machine, for example, you'll get about 8GB of your hard disk nabbed for swap.
If you ask for swap 'with hibernation', the *entire* amount of RAM you've got gets assigned as a swap partition (assuming your hard disk is big enough to cope). On a 16GB RAM machine, therefore, you'd see a 16GB swap partition created: enough space, basically, for every byte of RAM to be written to disk in order to be able to 'save state' for hibernation and instant re-awakening purposes.
Be warned, therefore, that supporting hibernation on a high-RAM system will be expensive on disk:
That's a virtual machine configured with around 64GB of RAM: the swap-for-hibernation partition is accordingly forced to dwarf the actual useful root partition. Naturally, if you need hibernation capabilities, that swap partition is “useful”, too: the point is, you have the power of choice at this point; just be aware of the consequences for disk partitioning when you make yours.
Next, you are asked to personalise this installation:
You need to provide a name, a login name, a password (twice) and a name by which your PC will be known on the network. Note that in my case, I've opted to create a non-root user called “hjr” and my PC will be called “schubert”. I've also opted to make my root user have the same password as I've specified for my non-root user. You don't need to do this, but I generally do as I prefer not to have to remember multiple different passwords for the one system!
Finally, you see this screen, displaying a summary of what's about to happen:
If you want to alter any of the details here, you can do so by clicking [Back] and stepping backwards through the steps we've just gone through, until you get to the one you want to change. If you're happy with everything, you can click [Install] to make the installation process begin real work:
I think this might be a bug with the ArcoLinux installer, since it happened to me on several real PC installations as well as the Virtual Machine one I'm performing here, but the screen will sometimes just turn to a muddy brown as you see it here and it won't look as if anything at all is happening! If you unsure as to whether anything is taking place under-the-hood, keep an eye on your hard disk light indicators: that should still be flashing frequently as files are copied across. On VirtualBox, you can look at the status bar icons:
Here, you can see my hard disk has a green dot next to it, indicating that it's being written to. So although nothing is displayed during the installation, you at least know that something is actually being written to disk. Be patient, basically: after about 10 minutes or so, you should see this screen appear:
Now you know the installation process has completed successfully, so you can select the 'Restart now' option and then click [Done]. Your PC or virtual machine will reboot and you'll eventually see this sort of login screen:
The non-root user you created during the installation will be displayed as the login name by default. Provide the appropriate password where necessary and click the [Log In] button. You will now see the default ArcoLinux desktop displayed in all its glory:
You get a fairly dramatic wallpaper; a “thing” down the right-side of the screen displaying lots of text and numbers (which is actually handy information to know about what's running, how much CPU and RAM it's all taking and so on); and a dock down the left-side of the screen which contains a handful of icons which, when clicked, will launch common applications, such as a File Manager (Thunar), a terminal, the Vivaldi web browser and the Sublime text editor (about which, more in due course).
There is no 'Start' menu: this isn't Windows or KDE or indeed any of those 'traditional' desktop environments which have launch buttons in a panel somewhere at the top or bottom of the screen. You launch things from the dock… or, if it's not shown in the dock, you can right-click on any empty part of the desktop to pull up that large menu you see in the screenshot above. That menu lets you launch anything. It also has a number of sections within it that give ready access to important parts of the system that might need configuring or re-configuring, such as editing 'Conky' or changing your desktop wallpaper in the 'Preferences' menu. At the very top of the right-click menu, there are four links (by default) to quickly launch whatever has been set to be the default terminal, web browser, file manager or text editor applications -so those four top menu items basically duplicate the functionality that's available from the launch dock at the left-hand edge of the screen.
We'll see how to add more things to the dock shortly and also how to re-configure the right-click menus, along with much else. For now, the idea should be to click around the place (and right-click around!) and get slightly more comfortable with the way ArcoLinux (and more particularly, Openbox) works.
The first thing you'll want to do, practically, after getting a feel for the way things work is to ensure that your entire system is as up-to-date as it can be: your installation ISO was packaged up potentially several months before “now” and its contents will, therefore, potentially be missing many important upgrades and security patches. There is a GUI tool to do this: it will probably pop-up and tell you there are hundreds of updates that need applying within minutes of logging on for the first time. You are welcome to use it to apply the necessary updates if you prefer, but I tend to prefer typing short commands in a terminal session if that will achieve the same thing.
Assuming you are likewise a fan of the command line, here's how you update all packages in ArcoLinux in one hit (it's also how it would be done if you were using Arch itself):
sudo pacman -Syu
The “sudo” command is there so that the actual package manager command ('pacman') is executed with root privileges, since root is actually the only user who is allowed to install or update software on a system.
Off the bat, this command will generate quite a lot of activity and eventually, pacman will show you that to do what you've asked requires quite a lot of software packages should be pulled down from the Internet and installed, like so:
This is around 860MB of software, so call it a Gigabyte: I hope your Internet broadband speeds are satisfactory! Answer 'y' to proceed with the installation when prompted. You can then leave the system unattended to complete its work: go and do something more productive instead, like make a cup of tea!
When you get back from your tea-break, you'll see this:
…which indicates that all the updates have been successfully applied. You can then go ahead and reboot to make sure all the changes are picked up correctly by typing the 'reboot' command, as you see me doing above.
Your mileage will undoubtedly vary at this point! What follows is the list of software I like to add to any Linux distro to make it something I can use productively. Naturally, there is a GUI to do this, but it's a lot simpler just to type this lot in to a terminal session:
sudo pacman -S audacity cuetools deadbeef ffmpeg handbrake homebank keepassxc kmahjongg \ kpatience libreoffice mpv musescore notepadqq shntool stellarium thunderbird virtualbox yakuake
It's one command and can be typed all on one line: I've split into two with a “\” continuation character just to help formatting a bit here.
When you issue this command, you'll be prompted to choose from where to source LibreOffice (the office suite, broadly equivalent to MS Office on Windows). There are two choices: a “fresh” option or a “still” one. The difference is that 'still' is a bit older, lacking a few features, but potentially more stable; the 'fresh' version, as the name implies, is bang up-to-date, cutting edge stuff. It has a more complete feature set, but perhaps relies on bleeding edge code and may therefore be a little prone to crashing or encountering other problems. My own preference is 'fresh', and I've never suffered from having made that choice, but your mileage may well vary, of course. Anyway, type 1 or 2 to select the source of your office suite when prompted.
You will similarly be asked for a source for the VirtualBox installation. One choice will be for 'virtualbox-host-dkms', the other for 'virtualbox-host-modules-arch'. You should always choose the second of these options, given that you are running -fundamentally- on Arch and Arch recommends the same, when you're not using a bespoke kernel.
The installation of yakuake also provokes making a choice: this time, do you use “phonon-qt5-gstreamer” or “phonon-qt5-vlc”? I can't really offer any profound insight on the nature of this choice and I'm not sure of the consequences of picking one over the other; I just use the “phonon-qt5-vlc” option through force of habit, and it's never caused me major dramas yet.
In case you are unfamiliar with any of the software packages mentioned in that command, I'll just run down what all those bits of software are, one at a time, in alphabetical order:
|audacity||An audio file editor|
|cuetools||A command line utility for splitting audio files into separate tracks|
|deadbeef||A minimalist but highly configurable audio player/manager, a bit like Foobar2000 on Windows|
|ffmpeg||A comprehensive library of video and audio conversion tools|
|handbrake||A tool to convert between video formats|
|homebank||A tool to manage home finances|
|keepassxc||A password manager utility|
|kmahjongg||A board game|
|kpatience||A comprehensive collection of card games|
|libreoffice||An office suite (including wordprocessor and spreadsheet)|
|mpv||A video player (a bit like VLC)|
|musescore||A music notation (and score-playing) program|
|notepadqq||An open source text file editor, a bit like Notepad++ on Windows|
|shntool||A command line utility to help tag audio files created by cuetools|
|stellarium||An open source planetarium|
|thunderbird||An email client|
|virtualbox||A virtualization hypervisor/virtual machine manager|
|yakuake||A terminate-and-stay-resident drop-down command line window|
The download for all that lot is quite substantial (about 580MB), so more tea and patience required, please!
Missing from the above list are a number of tools I wouldn't want to be without, but which happily are already included in the default ArcoLinux-openbox install. In particular, Firefox and Chromium web browsers are both already installed; so is Meld (a useful file comparison utility); and so is qBittorrent (a handy Bit Torrent client). Flac and Lame (lossless and MP3 encoder/decoders respectively) are similarly pre-installed and require no re-installation by you.
There a couple of other 'usual suspects' I have chosen on this occasion to skip, simply because ArcoLinux provides usable alternatives. For example, I would normally install K3B, the KDE ISO creation and burning tool; but ArcoLinux ships with Xfburn (right-click → Multimedia → Xfburn), which is a more-than-competent alternative. Similarly, Krita doesn't get a look-in now, since Gimp is pre-installed. There's nothing to stop you installing these 'redundant' programs, of course: if they meet your needs better than the built-in alternatives, be my guest. But I personally can manage with what is provided.
One minor bit of post-install configuration to do: Yakuake is a 'terminate, but stay resident' terminal application. That is, once run, you press F12 (by default) to make it disappear or re-appear as needed. But for that to work, it does first have to be run -and it makes sense that this should be done automatically when you first log in.
Accordingly, issue this command:
…and at the very end of the existing file, just type in the new text:
…and then save the edited file. This should result in a drop-down terminal appearing automatically every time you log in. Tweaking Yakuake's apperance or behaviour is then just a matter of right-clicking it and selecting Edit Current Profile or clicking the 'three-horizontal lines in a round badge' icon in the bottom left-hand corner of the program once it's running and displaying itself and then selecting [Configure Yakuake…] from the menu then shown.
I should now mention that there are a few pieces of software which ArcoLinux ships with by default which, I think, are questionable choices for varying reasons. There aren't many of them, but I do think they need removing swiftly! The command I would use to achieve this outcome is:
sudo pacman -R sublime-text-dev pragha evolution
Sublime is a text editor. As a text editor, it's brilliant and I like it a lot. But it is not open source (which is a theoretical objection you might feel able to ignore); and it's not free to use (which I suspect is a rather more practical objection for a lot of my readers!). According to the software authors, continued use of Sublime beyond a short-ish evaluation period should cost you US$80. It's a personal license, so having ponied up the cash, you would be free to install the software on as many PCs as you like, so I don't even think that $80 is very expensive. But it doesn't sit well with me to have a closed-source, unlicensed piece of software as my default text editor …so rather than continue to run the software without paying for a license, I choose to remove it entirely.
As it happens, ArcoLinux also ships with Geany, which is another excellent text editor -and it happens to be set as the default text editor and can thus be run by invoking a right-click menu and selecting 'Text Editor'. I've also just installed, in the Section 4.2 bit, notepadqq, which is my current favourite text editor: fully open source and entirely free of charge, it is the nearest Linux has to an equivalent of the Notepad++ application you can get for Windows. In short, removal of Sublime won't mean you are short of options!
There are no 'moral' objections to Pragha, the pre-installed Music Player/Manager application. I just don't think it's a very good program! In particular, I like to scrobble my music listening habits to Last.fm, and Pragha doesn't seem to be able to do that at the moment. There's certainly a Last.fm plugin for Pragha, but it doesn't seem to do very much. So Pragha goes on my death list, to be replaced by the very capable DeadBeef program you installed in Section 2.3 above.
Finally, Evolution is a very fine email client (and contacts manager, calendar and much else besides!), but I have always found it a fairly clunky, clumsy, heavyweight piece of software in a field that requires (for my tastes), slim, small and lightweight. That's why I earlier got you to install Thunderbird, a good email client that feels much less cumbersome; it's why Evolution can disappear now, too!
I'd now finish the first round of application addition and subtraction with one final command:
…just to make sure all the changes are picked up and applied correctly.
Now, you may be able to skip this next section if it doesn't apply to you. But when I launch Stellarium, the software planetarium, on my main PC at this point in proceedings, I see this:
…and I am unaware of any situation on planet Earth where bright pink skies are the norm! That false colour is a problem caused by Stellarium not working nicely with the default open source graphics drivers with which ArcoLinux ships (in my case, Nouveau). If your skies are a standard blue, you needn't worry (maybe!), so feel free to move on to the next seciton entirely. But if you need or want to replace the open source graphics drivers with 'proper' proprietary ones supplied by AMD or NVidia, then now's the time to do it (before you invest too much time and energy into building a system that you might bork badly by installing them later!)
The Arch documentation on the subject is quite comprehensive and I'd encourage you to read it carefully first. If you are using an AMD graphics card, I'm not going to be of much use to you (because I don't!), but start with this page. Work out from there, if you can, whether you can install the ATI Radeon proprietary drivers or the legacy Catalyst proprietary drivers, and then follow the steps for whichever driver type applies. Radeon drivers are installed by following these steps, Catalyst drivers by following these.
For NVidia graphics, it's a bit simpler. First see if you can use a current or legacy graphics driver by issuing the command:
lspci -k | grep -A 2 -E "(VGA|3D)"
It's a mouth-full, but it returns results on my PC such as these:
[[email protected] ~]$ lspci -k | grep -A 2 -E "(VGA|3D)" 02:00.0 VGA compatible controller: NVIDIA Corporation GK106GL [Quadro K4000] (rev a1) Subsystem: NVIDIA Corporation GK106GL [Quadro K4000] Kernel driver in use: nvidia
That tells me that my graphics card is a Quadro K4000 (in case I didn't know ahead of time). Knowing that, I can visit Nvidia's legacy website and see if my card is listed. If it is, I need the legacy driver; if it isn't, I can probably use the current driver. In my case, that webpage lists a “Quadro 4000”, not a Quadro K4000, so I think my card is 'current', not legacy.
I can check that too, by using the Nvidia driver download tool. I fill in the correct product and OS details like so:
When I click [Search], it tells me:
…which indicates that the 430.14 version of the driver is suitable for my needs (which is 'current', at least at the time of writing!). I could also click the link on that page to “Supported Products” and take a close look at what cards this driver supports. Sure enough, the Quadro K4000 is on the list:
Knowing that NVidia's current driver is what I need, I therefore simply do:
sudo pacman -S nvidia
Had I needed the legacy driver, the command would have been one of those listed in Section 3 of the 'Installation' part of the Arch documentation, depending on the precise graphics card I owned.
Once you've installed your new driver, reboot. Hopefully, everything will come up fine: troubleshooting if it doesn't is rather out-of-scope for this article, I'm afraid! In my case, running Stellarium once more after installing the 'nvidia' package resulted in this:
….which tells me everything is working fine.
Incidentally, if you're running ArcoLinux inside VirtualBox, as a virtual guest, you will probably want to take this opportunity to install the 'Guest Additions' drivers so that you can run your virtual PC in something better than 800×600 resolution. To do this, you will first need to install the kernel headers so that the graphics drivers will compile correctly. So, first issue this command:
sudo pacman -S linux-headers
Then click the VirtualBox menu options Devices → Insert Guest Additions CD image. That will probably cause the virtual ISO to be mounted at somewhere like:
/run/media/<some user name>/VBox_GAs_<version number>
Use the Thunar File Manager to check the exact path: launch it from the panel at the left of the screen (which auto-hides, so move your mouse around there to make it re-appear if it's gone missing for a moment!) and then click on the CD device listed in the left-hand pane of the file manager:
Note the full path shown in the location bar in the top/right-hand part of the screen. Knowing that path, now open a terminal session and change to that directory. In my case:
Then, run the Guest Additions installer:
Once installed, just as with real, physical PCs running Nvidia and AMD cards, the new drivers won't take proper effect until the virtual machine is rebooted, so do that now, before you attempt anything else. When it comes back up, you should be able to dynamically resize the virtual machine to any desired size and have the guest OS re-size itself to fit, without you having to manually specify a specific screen resolution. If that doesn't work, though, try doing right-click → Settings → Display and manually picking a resolution a bit larger than 800×600!
Vivaldi is ArcoLinux's default web browser -and it's quite a good choice, in that it uses the same rendering engine as Chromium (and thus, Google Chrome), so is unlikely to scramble the content of any websites you are likely to visit in the reasonably-foreseeable future. Unfortunately, however, it is delivered in a way that leaves it unable to play video or other media encoded in proprietary ways. For example, visit the BBC News website and try to play one of their news story videos:
“This content doesn't appear to be working” is Vivaldi's way of saying “I don't have proprietary codecs installed, so I can't play this video!” So that needs to be fixed. The simplest way I know to do that is to shut Vivaldi down and then launch a terminal and type the command:
By launching the program from within a terminal, you allow errors and warnings to appear in the terminal window too. And, in this case, you'll see this message:
[[email protected] vivaldi]$ vivaldi-stable No suitable library for HTML5 proprietary media (MP4[H.264/AAC]) was found, therefore only open codecs will play. To add support for proprietary media, issue the following command and restart Vivaldi: curl https://launchpadlibrarian.net/401553574/chromium-codecs-ffmpeg-extra_71.0.3578.98-0ubuntu0.16.04.1_amd64.deb |\ tail -c+1081 | tar xJ -C ~ --wildcards \*libffmpeg.so --xform 's,.*/,.local/lib/vivaldi/,'
That last instruction, to run a fairly hairy-looking curl command, is the key: just copy that message (from 'curl' all the way to the closing quote mark on the second line) by highlighting it and then pressing Ctrl+Shift+C. In another terminal window paste it in as a new command by pressing Ctrl+Shift+V; you should see this sort of thing by way of response:
That's Vivaldi fetching the relevant codecs and installing them for you. Next time you launch Vivaldi, you should see that videos that were previously unplayable are viewable after all:
(The fact that a big 'play me' arrow now appears on the space that previous said 'this content isn't working' is the give away that videos now can be played correctly -though whether Alastair Campbell is the sort of content that ought to be playable is, perhaps, an open question!)
The left-hand side dock (it's actually a program called “plank”) starts off populated with very little:
Top to bottom, those are icons for the Thunar file manager, the Termite terminal, a Screen Recorder and Vivaldi, the web browser. The inclusion of a Screen Recorder by default seems to me a little odd (it's not something you really use a lot of, I think, unless you are producing lots of tutorial videos… like the ArcoLinux developers, perhaps!). So that should probably disappear …but all those applications you added to the system in Section 4.2 above should probably be added (selectively!) to the dock, too.
Removing things from the dock is easy: just right-click the icon and a pop-up menu appears with a toggle switch to 'Keep in Dock'. Uncheck that, and the icon will disappear. You can also just click-and-drag an icon, out of the dock and onto anywhere empty on the desktop. When you do that, the icon disappears in a puff of cloudy-animation and the item will no longer be visible in the dock.
Adding new things to the dock is a bit more involved. There are configuration files you could edit by hand, but the simplest approach is probably to launch a program manually and then switch on the 'Keep in Dock' option once it's started up. For example, let's say I want to add VirtualBox to the dock.
First, right-click anywhere on the desktop to bring up the context menu and navigate to the System → Oracle VM VirtualBox option:
Click that “Oracle VM VirtualBox” item and the program will be launched -and, crucially, its icon will be temporarily added to the dock:
So now you can right-click that new icon and switch on the 'Keep in Dock' option: the icon is then pinned permanently to the dock thereafter. Rinse and repeat for every other application whose shortcut launch icon you want added to the dock.
Note that you can re-configure quite a lot of the Dock's default behaviour if you somehow contrive to point to a part of the dock which isn't an application icon and then right-click:
Finding the exact spot to cause that right-click menu to appear is an exercise in frustration! But if you hover over the one-pixel white line at top or bottom of the dock, that usually seems to do it for me. In any event, once you get that menu appearing, click the [Preferences] option:
On the Appearance screen, you can change the dock theme, the size of the application icons and whether to display the dock on the left-hand edge or somewhere else (such as at the bottom, à la Apple). The Behaviour screen lets you decide whether the dock should auto-hide, amongst other things. You can also add 'docklets' to the dock, such as an analogue clock, in case the digital one in the system tray area at the top-right of your screen isn't sufficient for you!
The panel of system information you see at the right-hand side of the screen is displayed by a program called Conky. Unfortunately, the default formatting seems a bit off to me! This is what I see straight out of the box:
That graphical 'A' (the Arch logo) is over-writing the words 'ArcoLinuxB-openbox', and therefore looks peculiar. The fonts used to display the technical information are also rather large, so everything is big and cramped -the process names can't be displayed in full, for example.
With a bit of tweaking, this could be what you see instead:
The Arch logo appears correctly right-justified and doesn't over-write anything; the technical information is not in Kindergarten-sized, crayon-like script; process names seem to have space around them, instead of running out of room …and so on. To achieve this effect, you basically need to knock down the font sizes specified in Conky's configuration file by around 2 to 4 points. That is, if the file says 'use font X in 18 point', you change it to read 'use font X in 14 (or 16) point'.
To do this, right-click the desktop to bring up the context menu and then navigate to Conky → Edit Conkys → Running Conkys → conky/AUR-ArcoLinux.conkyrc. That will cause the relevant configuration file to be opened in a text edit (Geany, at the moment). Scroll down to the “conky.text” part of the file:
You will see various “Size=” parameters mentioned at different parts of this file: just go through each of them in turn and reduce them. If the existing point size is over 16, I'd say reduce it by 4 (so 18pt becomes 14pt); but if it's under 16, reduce it by 2 (so 8pt becomes 6pt, for example). There are five “size=” paramters to change in this way. When you save the edited file, the existing conky running over on the right-hand edge of your display should automatically pick the changes up.
You may need to re-edit the file to make some sizes even smaller or a bit larger again -it's just down to experimentation and what pleases your eye in the end. Should the running Conky not appear to have taken notices of your changes, you can right-click on the desktop once more and navigate to Conky → Reload Conkys. Taking that option will prompt you to kill off the existing Conky and re-launch it -and at launch time, Conky will definitely read the revised configuration afresh.
The developers of ArcoLinux have particular ways of working which, I assume, they think others will find helpful. Thus, they configure a whole lot of 'command shortcuts' (that is, aliases) for things you might expect to work in 'vanilla' ways. For example, for over 25 years I have been issuing this sort of command without problem on everything from Solaris boxes to the latest FreeBSD:
[[email protected] ~]$ ps -ef | grep ora hjr 2988 2971 0 10:32 pts/0 00:00:00 grep ora
The “ps” command lists processes that are running: it's a quick way of telling whether something you hope is running in the background is actually running at all! But on vanilla ArcoLinux, I got this response instead:
[[email protected] ~]$ ps -ef | grep TERM error: conflicting format options Usage: ps [options] Try 'ps --help <simple|list|output|threads|misc|all>' or 'ps --help <s|l|o|t|m|a>' for additional help text. For more details see ps(1).
The command I've used for a quarter of a century now errors on me! What's more, if you consult the manual as advised by that error message, you will see in the “Examples” section that “ps -ef” is explicitly listed as something which should work!
The problem, as I've already hinted, is that the ArcoLinux developers appear not to like using 'ps' in its vanilla form and got tired of specifying a bunch of the options switches every time they ran it. They therefore created an alias for “ps” to actually mean “ps -auxf”. So when I now type “ps -ef”, I'm really typing “ps auxf -ef” …and if you were to type that on any Unix-like operating system in the last quarter century, that combination of options would indeed result in an illogical conflict!
The point here, therefore, is that the ArcoLinux developers' choice of aliases might not align with the way you expect a Linux system to work at the command line: you should therefore issue this command:
nano -c ~/.bashrc
…and take a good, long look at the various aliases that have been created for you automatically in your principal bash configuration file. In my case, down at line 66, I found the offending alias and was able to prefix it with a '#' to comment it out:
I haven't found many instances of “inappropriate” aliasing, but this one completely flummoxed me for a while, because I simply wasn't expecting the 'ps' command to be aliased in the first place, so I never thought to see if it was! So, if the system doesn't respond to commands at the terminal the way you expect in any other context, remember to check your .bashrc and make sure some alias or other isn't altering the meaning of what you think you're typing!
For the most part, I find the default menu you get when you right-click the desktop to be perfectly fine. But one part of it gives a degree of annoyance: the four options at the top (Terminal, File Manager, Web Browser and Text Editor) are hard-configured to launch specific programs… and what they launch might not be ideal. (You can, of course, click through the second section of the right-click menu to navigate to launch any specific program you like -but if the top-four 'shortcuts' are configured to run the wrong things, that gets annoying really quickly!)
The Text Editor menu option will, for example, launch Geany by default. Now, Geany's a nice text editor -but I've already chosen to install and run notepadqq as my main text editor, so I want that menu option to launch notepadqq not geany! How to achieve this?
The simplest way is to right-click the desktop and then navigate through the pop-up menu to Obmenu-Generator → Menu Schema. That will open a text file (in Geany!), whose structure and format hopefully mirrors the contents of the right-click menu you've just clicked your way through. The lines around 31 - 40 are, specifically, the four items that appear at the top of your pop-up menu:
Note how they work, sometimes directly, sometimes via a bit of indirection! By this, I mean: look at the line which invokes a 'Text Editor': it specifically invokes the command 'geany', which is obvious (and is obviously the thing we need to edit). But the 'Web Browser' for example, doesn't run “Firefox” or “Vivaldi”, but runs something called “webbrowser-app”. It could invoke Firefox or Vivaldi directly, but the menu designers have bowed to the fact that the XFCE desktop environment has its own tool for configuring 'default applications' -and you specify Firefox or Vivaldi (or Chromium or whatever) there, not here. Whatever is set as the environment's default Web Browser is invoked by clicking the “Web Browser” pop-up menu item, because the “webbrowser-app” command really means “find out what the default app is for this application class and run that”. So an explicit executable isn't necessary.
But for the text editor item, there's no XFCE system-wide default app, so the Openbox menu item calls a specific executable directly -and that makes changing it to notepadqq easy! Just edit the text in two places so that it looks like this:
Save the file and re-right-click the desktop and choose the Text Editor option: this time, notepadqq will be launched instead of Geany.
Incidentally, if you search the rest of the obmenu-generator file, you'll discover a couple of cases whether other menu items are hard-coded to open with Geany. Look, for example, at around line 79, where the menu item for 'Termite Appearance' is created: it's got geany ~/.config/termite/config hard-coded, so that if you ever took that menu option in the future, although notepadqq has now been set as your menu's default text editor, the termite configuration file would still be opened in Geany… so you might want to go through the entire file carefully and replace 'geany' with 'notepadqq' every time it happens.
For any of those menu items which invoked the XFCE default rather than a specific executable, you can change the associated app by right-clicking and navigating to Preferences → Preferred Applications:
That small application lets you specify a default application for your Web Browser, your Email client, your File Manager and your terminal. Note the lack of an option for choosing a default text editor: that's why Openbox's menu configuration had to specify that exactly, rather than just point to “webbrowser-app' or 'filemanager'.
The topic of menu editing in Openbox is, frankly, a huge and complex one, and way, way beyond the scope of this article! But this was just a little taster to show you that simple edits to menu configuration can be performed to tweak basic aspects of menu functionality.
Just one other minor thing in the ArcoLinux default configuration niggled me enough to want to change it: the terminal (actually an application called Termite) ships with a font that I find just a little large. In many of my other Linux systems, too, I generally change the terminal font to be a serif font rather than a sans-serif. You might not choose to do the latter, but knowing how to do either of these things might be useful.
Once again, it's all handled in a text configuration file, this time reached by right-clicking the desktop and then navigating to Prefrences → Termite Appearance:
You'll immediately spot the font = Monospace 12 item on line 11: change that, and your terminal default appearance will change to match. For example, this is Monospace 12:
…and this is Monospace 10:
…which I find a bit less intrusive and a bit more comfortable to work in. But, if I first install the Century Schoolbook Mono BT font (freely downloadable from here, by the way), and then set line 11 in the configuration file to read font = CentSchbook Mono BT 10, I get this:
…and the fact that letters lsuch as 'b', 'M' and 'h' now have little lines on their vertical strokes indicates that I'm now using my preferred seriffed font instead of the default sans-serif one. You might hate the look-and-feel this change produces, but at least you know how to tweak things to your own preference now!
By default, Arcolinux uses a utility called Variety to change your desktop wallpaper more-or-less at random every 30 minutes or so. It's a behaviour I find extremely annoying, to be honest! Fortunately, it's configurable.
In the system tray area of your desktop, you'll see a 'landscape painting' icon:
Right-click that and select [Preferences] from the context menu that appears. For starters, you can alter the frequency with which the wallpaper is changed. Here, I've set it to change every hour, which is at least twice less annoying than before:
You will further note that I have switched off Variety's ability to download a new wallpaper from somewhere on the Internet evey hour: random artwork (usually of the scantily-clad ladies variety!) is not something I appreciate very much! Instead, I've clicked the [Add] button half-way down that 'General' tab page and added my own Pictures folder to the list of possible sources for wallpapers: that way, I know at least some of the content that will be displayed will be that which I have personally collected and curated over the years. It may also make sense to un-check the 'Enabled' flag against all the other options listed in that central panel so that only your own wallpapers are used in future (but you might prefer to use those found in the other locations, so the specifics of what to switch on and off I leave to you!)
Do note that there is a 'Variety Hotkey' available: if you are displaying an empty desktop, or can click on an empty part of the desktop so that you aren't directing key presses to a specific application, then pressing <Alt>+N will bring up the next wallpaper image in whatever collection of image sources you have configured. Likewise, pressing <Alt>+P will bring back whatever the previous wallpaper may happen to have been.
All up, once you take control of Variety, it provides a little bit of graphical 'spice' or fun that potentially keeps your desktop looking fresh and interesting. On the other hand, if the novelty ever wears off, you can simply stop Variety running at each startup (by un-checking the option for it to do so in the Preferences/General tab). A rather more forceful way of stopping your desktop wallpapers forever not being what you expect them to be is to issue the command:
sudo pacman -R variety
…which solves the problem simply by removing Variety from the software stack installed on your PC altogether!
The very last tweak I want to document is how you switch on the ability to easily type accented characters using a standard (US) English keyboard. It's not obvious from the right-click menu where you configure the 'compose key' that makes that happen, after all!
So first, right-click an empty part of the desktop and then click Preferences → Xfce4 System Settings. That will show you all the setting configuration options for the XFCE desktop environment. One of them (on the fourth row of icons down) is called Keyboard: click that now.
Switch to the [Layout] tab. Un-check the option to 'Use system defaults'. That then activates the option about half-way down the screen on the right: Compose Key. Select whatever key you want from the drop-down provided: I generally prefer to select 'Right Win', so that the Windows key on the right-side of the space bar triggers the 'composition' process, but select whatever floats your boat. Then click close.
To test that the new setting is taking effect, open a tool that lets you type text (Libre Office Writer, Notepadqq, terminal… whatever).
As is always the case in Linux, you click the compose key and let go. Then you click the diacritical you want and let go. Then you click the letter you want. So, for the 'ü' (u-umlaut) character, for example, the key sequence (for me!) would be:
Right-Win Shift+apostrophe (to get double-quote marks, though they won't appear on-screen) u
Or for the 'é' (e-acute) character:
Right-Win Apostrophe e
And (last one, I promise) for the 'ß' (eszet) character, it's just:
Right-Win s s
There are lots of other key combinations which you might find useful listed in my 'How to use the Compose key in Linux' article!
I shall leave it there for now. If you've been following along, you will have a fairly-pure Arch setup with a good selection of application software, looking reasonably good and with a usable selection of defaults and appearance options.
It's a fairly new environment to me and thus this article is, in a sense, the story of the blind leading the blind! Nevertheless, I have found the resulting operating system environment to be very conducive to productive work: it's fast, stable and does exactly what I tell it to do! I hope you will find it worth an exploration -or at least a dabble!- before long, too.