Manjaro Linux on a MacBook Pro
The Bridge at Ossian's Hall
Nick Hood

Manjaro Linux on a MacBook Pro

2021, May 09    

This is how I set up Manjaro XFCE Linux, a lightweight but robust and stable version of Arch Linux, on an old (2009) MacBook Pro past its service life. The idea is to try living with it as a device for research, data capture and analysis and writing up of a PhD thesis (with a view to buying a better machine).

There is plenty of information on how to get Manjaro on to a USB stick and then onto your hardware, so I will not go into details of that. I will instead focus on how I got that basic system working with my writing workflow.

Software management

There are tools built in to Manjaro for managing, installing and maintaining a good range of software but not everything I like to use: fortunately, there is a large community of developers and supporters for Arch and Manjaro who work to bring a lot more software to your installation. This can be found at the Arch User Repository (AUR). To use it, the base-develop package is installed, as well as git:

sudo pacman -Sy --needed base-devel git

Whilst it is possible to install software all over your new system, I like to keep the source in one place, where I can find, update and remember it. Installation is simple enough from there, starting with Google Chrome (not Chromium, by the way, because I work across multiple platforms and require the sync of Google bookmarks, for example).

mkdir Software
cd Software/
git clone https://aur.archlinux.org/google-chrome.git
cd google-chrome/
makepkg -sri

The same method can be used to install other useful packages and tools like slack-desktop, rstudio-desktop-bin (be careful to get the right version of RStudio) and mendeleydesktop.

Mendeley

For my library and reference manager Mendeley, I like to use the watched folder feature of the desktop app, although this may not remain as Elsevier develop the Mendeley suite of applications. At the last Mendeley advisor’s meeting (4th May) we were told that there are no immediate plans to withdraw the desktop app, although it will eventually go. Create the folder and locate it in the app:

mkdir ../Desktop/Mendeley\ drop

Dropbox

I use Dropbox to keep copies of literature, bibtex and other cross-platform files. This will not install without setting up the gpg keys thus:

git clone https://aur.archlinux.org/dropbox.git
cd dropbox/
gpg --recv-keys 1C61A2656FB57B7E4DE0F4C1FC918B335044912E
makepkg -sri

Thanks to yan12125 on AUR for that particular tip. It’s worth, when installing from AUR, having a quick read through any comments in the repository to check how problematic, or indeed, well-maintained, it is.

Setting up workflow

Now we have some basic tools, we can pick up development workflow on the new machine. I created a working folder within Documents into which I can clone my repositories.

Jekyll

The first project I did any work on was the one you are reading: my technical blog, which is hosted on github and served by jekyll. That didn’t go too well, and I was temporarily stuck in a login loop, in which my password was accepted by Manjaro but the login prompt was continually re-presented. I found the cause of this to be a problem with bundler-exec. How I got there:

pamac build jekyll
jekyll s -d docs # threw error, unable to find bundler
pamac build bundler-exec
jekyll s -d docs # threw another error, missing gems
bundle update
nano Gemfile	# to add a suitable gem repository source
bundle install # to install missing gems
jekyll s -d docs

Rebooting overnight, I returned to the machine and couldn’t log in using the GUI. Thanks to weixin_39958100, I located the problem in the .xsession-errors log, by logging in to the terminal using ctrl-alt-fn-F2. It was easy then to remove the script throwing the error that was blocking the log in:

cat .xsession-errors
sudo rm /etc/profile.d/bundlerexec.sh