Reboot to Linux and Discover Freedom

Things to do after installing Manjaro (Gnome edition)

manjaro-g-fi

The Manjaro website states “Manjaro is a user-friendly GNU/Linux distribution based on the independently developed Arch Linux. It is built for newcomers as well as experienced Linux users.  For newcomers there is a user friendly installer and the system is designed to work out of the box.”  This article is a post installation tutorial for the Manjaro Gnome Community edition.

Like all my “Things to do after installing distroX” the content is subjective however designed to be helpful to Manjaro newcomers.  As Manjaro is based on Arch many of the instructions here are also applicable to Antergos.

Just like Debian/Ubuntu based distributions there are a number of different desktop environments (DE’s) available with Manjaro.  While XFCE and KDE are the officially supported DE’s there is a slightly steeper learning curve for the new user.  Unlike Debian/Ubuntu based distributions the rolling release concept of Manjaro (install once & update forever) is fundamental difference as a Debian/Ubuntu release is supported for 5 years with testing versions released every 6 months.


Content

1 Preparation and Permissions
2 Application Spotlight
3 Change Your Desktop look and Feel
4 Install Infinality Fonts
5 Optimize System Performance
6 How to Install Virtualbox
7 Share Files and Folders with Samba

Preparation and Permissions

Before installing any applications, changing themes etc this tutorial walks through some things to after a fresh installation of the operating system.


Update to the fastest Manjaro Mirrors

sudo pacman-mirrors -g

Remove unwanted applications installed by default

sudo pacman -Rs empathy epiphany gnome-shell-extensions

Change some Permissions

Replace “username” with your own

Elevate privileges to review restricted system logs

sudo usermod -aG log

Read write access to additional partitions created during the OS installation

sudo chown -R username /[partition name]

Read write access to the file system share folder

sudo chown -R username /usr/share

Elevate system privileges to execute restricted commands that ordinary user accounts cannot access

sudo gpasswd -a username wheel

Enable “TRIM” to optimize SSD Performance

If your SSD read/write speed decreases over time and you haven’t enabled TRIM, this may be why. If you have an SSD that supports Trim it is recommended you enable it. Here’s how…

sudo systemctl enable fstrim.timer

Read more about TRIM here


Upgrade and Optimize the Pacman database

Do this regularly

sudo pacman-db-upgrade && sudo pacman-optimize && sync

If you get the “lock database” or “failed to synchronize” error use the command

sudo rm /var/lib/pacman/db.lck

Pacman Configuration

Applications in the Manjaro and Arch “official” repositories are constantly updated then old versions are removed from the repository. Each package is upgraded as new versions become available from upstream sources. Pacman (Arch package manager) saves to disk a list of packages available in a repository. Manjaro uses its own software repositories by importing Arch’s packages to maintain compatibility. This allows Manjaro to perform some more testing before labelling them “stable”. The outcome of this is a slight delay for Manjaro software updates compared to Arch.

The Arch User Repository (AUR) is available in Manjaro and is community-driven and was created to organize and share new applications to help expedite popular packages to the end user. In Manjaro you can install AUR packages through the application Pamac and activating access in preferences..

Open the pacman configuration file using this command:

sudo gedit /etc/pacman.conf

uncomment these 2 lines by removing the “#” tags

#[multilib]
#Include = /etc/pacman.d/mirrorlist

Append this line (for fun). It adds a “pacman eating powerpills” when running commands in the terminal

ILoveCandy

Install Yaourt

Only required if you installed the net version of Manjaro.

Open pacman.conf…

sudo gedit /etc/pacman.conf

Copy and paste these lines

[archlinuxfr]
SigLevel = Never
Server = http://repo.archlinux.fr/$arch

Save a close the text file then install yaourt with this command

sudo pacman -Sy yaourt

Multimedia/Compatibility Codecs

In general, codecs are utilized by multimedia applications to encode or decode audio or video streams. In order to play encoded streams, users must ensure an appropriate codec is installed. Manjaro like most linux distributions do not install all these out of the box. Installing this command will cover all your bases for multimedia playback formats.

sudo pacman -S exfat-utils fuse-exfat a52dec faac faad2 flac jasper lame libdca libdv gst-libav libmad libmpeg2 libtheora libvorbis libxv wavpack x264 xvidcore gstreamer0.10-plugins flashplugin libdvdcss libdvdread libdvdnav gecko-mediaplayer dvd+rw-tools dvdauthor dvgrab

Additional File Management Utilities

Exactly what the titles states, these are additional utilities to enhance the nautilus file manager functionality for most normal users.

sudo pacman -S file-roller seahorse-nautilus nautilus-share zlib p7zip unzip zip zziplib

Printer Essentials

Exactly what the titles states. Install and enable all te packages needed to get your printer up and running

sudo pacman -S lib32-libcups cups gutenprint libpaper foomatic-db-engine ghostscript gsfonts foomatic-db foomatic-filters cups-pdf system-config-printer

then enable (one line at a time)…

sudo systemctl enable org.cups.cupsd.service
sudo systemctl enable cups-browsed.service
sudo systemctl start org.cups.cupsd.service
sudo systemctl start cups-browsed.service

Disable Laptop Touchpad when Typing

Since Gnome 3.20 you need to enable Trackpad palmcheck in your startup applications

Install gnome-session-propoerties (aur)

yaourt gnome-session-properties

Run gnome-session-properties (Alt-F2) and add the following command to your startup application (give it a name also e.g. Enable touchpad).

syndaemon -k -i 3 &

Note:
-i 3 sets the idle time to 3 seconds. The idle time specifies how many seconds to wait after the last key-press before enabling the touchpad again.


Turn “NumLocks” on at start-up

gsettings set org.gnome.settings-daemon.peripherals.keyboard numlock-state on

Application Spotlight

As Manjaro is not necessarily a beginners distro most of you will have a good understanding of your routine “go to” applications. Instead of listing everything here I chose to shine some light on some excellent projects that might fill a requirement gap depending on your needs. With thousands to choose from, selecting applications for your Linux desktop is a personal choice. The selection below is in no particular order.


Researching Applications to Install

A good source for comparing cross platform software applications for Linux is the “alternativeto” website, especially if your coming from MS Windows or Mac OS environment. Alternativeto.net claims to be a new approach to finding good software. You simply suggest what application you want to replace and they give you great alternatives, based on user recommendations.

Regular visits to the List of Applications page on the Arch Wiki is a MUST if you want a choose what software is right for you. (even if you are not a beginner)


Install/Configure Zim Desktop Wiki

Zim is my favourite note taking application. It is a graphical text editor used to maintain a collection of wiki pages on your desktop. Each page can contain links to other pages, simple formatting and images. I store my pages in my “dropbox” folder making my notes available everywhere I go. All data is stored in plain text files with wiki formatting. Various plugins provide additional functionality, like a task list manager, an equation editor, a tray icon, and support for version control.

Zim can be used to:

  • Keep an archive of notes
  • Take notes during meetings or lectures
  • Organize task lists
  • Draft blog entries
  • Do brainstorming

Install Zim

sudo pacman -S zim

If you use the Firefox web browser then install the zim Firefox add-on “Zim-Clip

Zim-clip allows you to copy /drag selected text or images on a web page or maintain bookmarks lists in Zim. Much like Evernote really.


Spotify

A proprietary peer-to-peer music streaming service

yaourt -S spotify

then create symlinks

sudo ln -s /usr/lib/libnss3.so /usr/lib/libnss3.so.1d && sudo ln -s /usr/lib/libnssutil3.so /usr/lib/libnssutil3.so.1d && sudo ln -s /usr/lib/libsmime3.so /usr/lib/libsmime3.so.1d && sudo ln -s /usr/lib/libssl3.so /usr/lib/libssl3.so.1d && sudo ln -s /usr/lib/libplds4.so /usr/lib/libplds4.so.0d && sudo ln -s /usr/lib/libplc4.so /usr/lib/libplc4.so.0d && sudo ln -s /usr/lib/libnspr4.so /usr/lib/libnspr4.so.0d && sudo ln -s /usr/lib/libudev.so /usr/lib/libudev.so.0

Teamviewer

All-In-One Software for Remote Support and Online Meetings

yaourt teamviewer
sudo systemctl enable teamviewerd.service
sudo systemctl start teamviewerd.service

Gramps

Research, organize and share your family tree with Gramps.

Gramps is a free software project and community who strive to produce a genealogy program that is both intuitive for hobbyists and feature-complete for professional genealogists. It is a community project, created, developed and governed by genealogists. Read more about its features here

To install GRAMPS

sudo pacman -S gramps

Backup Important Files and data with Grsync

Grsync is probably the best utility application I ever installed. For backups it’s simple, fast, robust, and does exactly what you need it to. It’s an excellent way to make sure your important files are backed up, whether to another internal location or external destinations like USB hard disks or even cloud storage (eg Dropbox). Grsync can also work with SSH, making the data transfers encrypted and secure. And it makes data restore so easy.

grsync

To install Grsync

sudo pacman -S grsync

Joe Collins created an excellent tutorial video for beginners that you can access here


Change Your Desktops Look and Feel

Install Desktop and Icon Themes

To changes themes using a GUI and other Gnome settings you need to install the Gnome Tweak tool

sudo pacman -S gnome-tweak-tool

Install the Moka icon theme

yaourt moka-icon-theme-git

icons

Popular window and shell themes

yaourt paper-gtk-theme-git
yaourt gtk-theme-arc-git
papergtk
Paper GTK Theme

Install Additional Fonts

sudo pacman -S opendesktop-fonts
yaourt ttf-ms-fonts
yaourt ttf-ubuntu-font-family
yaourt -S ttf-google-fonts-git

Links to more themes and desktop resources


Some Gnome Extensions

  • Activities Configurator: Changes the appearance and behaviour of the top panel
  • Battery Status: To hide the battery when its 100% charged
  • Coverflow (Alt-tab): To iterate through open windows in a coverflow manner
  • Dash to Dock: A configurable dock for to easily access my favorite applicaions
  • Drop Down terminal: An “out of the way” terminal that appears/dissapears from the top of the screen when toggled.
  • Media Player Indicator: Adds media controls to the panels system tray
  • Places Status Indicator: A dropdown menu giving access to home folders, system files and plugin devices.
  • User Themes: Switched on sets permission to add addition Gnome Shell and GTK themes

Padding Gnome Terminal

Create a gtk.css file by typing

sudo gedit ~/.config/gtk-3.0/gtk.css

Copy/paste into the newly created text document then save

VteTerminal,
TerminalScreen {
    padding: 10px 10px 10px 10px;
    -VteTerminal-inner-border: 10px 10px 10px 10px;
}

Categorize/Group Applications (Activities View)

This article describes the method to organize/sort applications in the Gnome 3 Activities view. It works flawlessly in Gnome 3.20 and 22 and is the easiest alternative to using the Gnome-Software tool.

categories

Step 1

The first thing is to install menulibre and hide all the applications you do not want to appear in the Gnome 3 Activities View.

Menulibre is an advanced menu editor providing modern features in a clean, easy-to-use interface

sudo pacman -S menulibre

Step 2

Install the Gnome 3 folder Category Configuration tool – gnome-catgen (AUR).

yaourt gnome-catgen

Step 3

Review the visible applications in Gnome 3 Activities view then plan what categories you need (Office, Graphics, Multimedia etc) You can name your categories what you want.

Step 4

Open your terminal and paste the following command

gnome-catgen -c
  1. In the terminal you will be presented with your first application.desktop file
  2. Simply type in the category you want that application to be a member of the hit enter
  3. You will now be presented with the second application.desktop file
  4. Gnome-catgen will cycle through all your application until you have given them all category.
  5. When it cycles through all your applications a prompt you to save your configuration will be displayed..

Important Notes:

  • If you give one application the category Office and another OFFICE, this will create 2 categories. In other words its case sensitive.
  • If your run the command gnome-catgen -c again it will only present applications you previously left blank

For more information on how to maintain your new configuration and for other commands read the read.md file on the authors git-hub page


Activate Infinality Fonts

Click here to understanding the concept of Infinality font rendering and why it improves your screen fonts.

To activate on Manjaro open “freetype2.sh” text file using the following command. Change gedit with your prefered text editor.

 sudo gedit /etc/profile.d/freetype2.sh

The file looks like this

infinality-1

We need to change the bottom line

Remove the “#”tag at the start and change the version from the default “40” to “38”

Save the file and close then…

sudo reboot

Optimize System Performance

Install/enable Preload

Pre-loading is best used with large and often-used applications like your web browser or LibreOffice etc. The benefit is that preloaded applications start more quickly because reading from the RAM is always quicker than from the hard drive and part of your RAM will be dedicated to this task. (Note Preload is option 20 from the list presented)

to install preload

sudo pacman -S preload

then enable the service

sudo systemctl enable preload.service

Speed up Boot Time

Install and enable Readahead

At some points of the boot process, things can not proceed until a given unit succeeds. To see which units find themselves at these critical points in the startup chain run the follow command

systemd-analyze critical-chain

Many Linux distributions use readahead on a list of commonly used files to speed up booting. In such a setup, if the kernel is booted with the profile boot parameter, it will record all file accesses during bootup and write a new list of files to be read during later boot sequences. This will make additional installed services start faster, because they are not included in the default readahead list. Note: Support for readahead was removed from systemd since version 219. Click here for more information

Install

yaourt systemd-readahead

enable

systemctl enable systemd-readahead-collect systemd-readahead-replay

Reboot


Disable Swappiness

Swap storage is slow. SSD writes are precious. So let’s set the swappiness to “1” which technically almost disables your swap, but makes it still accessible for hibernation. Edit a new file in the System Control daemon:

sudo gedit /etc/sysctl.d/99-sysctl.conf

And set the swappiness to “1”, by adding:

vm.swappiness=1

Save and exit. To apply this change for the current session execute:

sudo sysctl vm.swappiness=1

How to install Virtualbox (Manjaro only)

Using VirtualBox is a safe way to try or use other operating systems, whether they’re stable or unstable. Manjaro makes installing Virtualbox easy

vbox

Check what Linux kernel you are running

uname -r

You will have something like: 4.4.1-1-MANJARO. It means that the kernel is linux44

Install the packages

sudo pacman -S virtualbox

Select the corressponding version based on your kernel

Load the kernel module in your current session manually type…

sudo modprobe vboxdrv

Add your username to the virtualbox users group

sudo gpasswd -a username vboxusers

It recommended to install the virtualbox-guest-iso package on the host running VirtualBox. This package will act as a disc image used to install the guest additions onto guest systems other than Arch Linux.

sudo pacman -S virtualbox-guest-iso

Install (non-free) Virtualbox extensions from AUR

yaourt virtualbox-ext-oracle

then enable the Virtualbox service

sudo systemctl enable vboxservice

then reboot for the changes to take effect

sudo reboot

For more information on Oracle VirtualBox visit their official website

Note: If the VirtualBox kernel modules were loaded in the kernel while you updated the modules, you need to reload them manually to use the new updated version. To do it, run vboxreload as root.


Share files and Folders with Samba

The following tutorial will guide you through setting up user sharing with Samba so that you can use your file manager to share folders (nautilus-share) Ubuntu style. Usershares allows a non-root user to add, modify, and delete their own samba shares.


First we need to install a few packages. Open a terminal as root:

su

Install samba, nautilus-share and gvfs-smb.

pacman -S samba nautilus-share gvfs-smb

First create the usershare path where Samba stores the share configuration

mkdir -p /var/lib/samba/usershare

Next create the sambashare group.

groupadd sambashare

Next make root owner of both the usershares directory and the sambashare group.

chown root:sambashare /var/lib/samba/usershare

Now that /var/lib/samba/usershare is owned by root, make the usershare directory accessible for non-root users.

chmod 1770 /var/lib/samba/usershare

This chmod command sets the sticky bit (makes the permissions fixed for non-root users), as signified by the preceding 1 in the 1770 string. The 7+7 signifies that users and groups can read, write and execute. The 0 means that “others” have no rights to the directory

Now you need to create a new smb.conf from the template configuration file.

cp /etc/samba/smb.conf.default /etc/samba/smb.conf

Open the newly created smb.conf in a text editor

gedit /etc/samba/smb.conf

Replace gedit with the name of your preferred text editor.

To enable usershares add the following parameters under section [global]:

usershare path = /var/lib/samba/usershare
 usershare max shares = 100
 usershare allow guests = yes
 usershare owner only = yes

Approximately halfway down in the [global] section is the parameter security = user. Find this line and add the following immediately after:

map to guest = bad user

This line makes it possible for users without a “proper username” to still connect to a share.

Save the smb.conf file

Add your user to the sambashare group. Replace with your real username.

usermod -a -G sambashare

Enable the samba service.

systemctl enable smbd nmbd
systemctl start smbd nmbd

After logging out and in again you can right click on any folder and share it on the network.

To be able to share directories in your home (/home/) you also need to add new permissions to your home (/home/). Replace with your own username.

chmod 701 /home/

Your done!


Back to Top


Content

1 Preparation and Permissions
2 Application Spotlight
3 Change Your Desktop look and Feel
4 Install Infinality Fonts
5 Optimize System Performance
6 How to Install Virtualbox
7 Share Files and Folders with Samba

Leave a Reply

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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s

%d bloggers like this: