Installation with Manjaro-Architect ISO

netinstall
installation
manjaro-architect

#1

This tutorial will guide you through the installation of a pre-configured Manjaro Desktop Environment using the Manjaro-Architect ISO with the current version 0.9.2 of manjaro-architect.
This will be updated with further development of the installer.

Manjaro-Architect is a CLI (or actually TUI) net-installer, which means it does not need or provide a (real) graphical interface but uses a console or terminal menu to download all packages for the target system from the internet during installation rather than extracting a compressed ISO image.

Compared to traditional unpack-installation with a graphical installer like Calamares this has some apparent advantages:

  • The install media can be very small. In this case the download is less than 500MB. Also since no video-drivers are needed for the text-only environment it is unlikely that you will run into problems booting the M-A ISO.
  • The packages installed to the resulting target will be the latest available on the chosen branch and no matter how old your install media might be, you will not need to update the fresh install.
    Like that the manjaro-architect ISO will basically never be outdated. Even the installer itself will be updated automatically when you start the launcher.
  • The same install media can be used to install any desktop environment - even those DEs and WMs not maintained as an edition by Manjaro.
  • Options for customization are basically unlimited. You are free to choose your kernel(s), drivers, desktop environment (or none) and any other packages and you will have many more and very detailed ways of configuring the target install to your liking.
    At the same time, if you prefer, you can use mhwd’s automatic driver installation and access the pre-configured iso-profiles of Manjaro’s supported editions to install an environment of identical configuration with what you would get by unsquashing one of our ISOs.

On the other hand, installation with this tool

  • requires more time for configuration and download of packages.
  • requires some understanding of a Linux system and you will need to make several decisions on your own rather than someone else has made them for you beforehand.
  • does not provide a live environment of the resulting deskop. You will see what you get when you get it - WYNSIWYG :laughing:

In our example we will install preconfigured Manjaro-bspwm.

So let’s get started!


Once you have booted the M-A ISO you will be greeted by this login screen:

You can login as user manjaro or as root, in any case using password manjaro.
Then start the launcher by typing: setup

Now manjaro-architect-launcher will look for an active internet connection and then download and install the latest available version of the installer. If no network is available you will land on this screen with nmtui where you have the opportunity to connect:

After that you can choose between several languages for the installer. Some translations are not complete, yet, but in theory, these are available at the moment:
Brasilian Portuguese, Danish, Dutch, English, French, German, Hungarian, Italian, Polish, Portuguese, Russian and Spanish.

Some more system checks in the background and you will reach the main menu:

where our first required step will be

1. Prepare Installation

1.1. Set Virtual Console

At this point M-A will already have chosen a keyboard layout (vconsole) for the CLI environment automatically based on your language choice. If the expected default works for you, meaning you have for example chosen German and you are using a German QWERTZ keyboard, you can skip this menu entry or just open it briefly and it will show you the current configuration so you can decide if you want to keep it.

NOTE: The same setting will later be used for the Console configuration of the target install - it is however independent of the keyboard layout for the Desktop Environment, which is a different thing (xkbmap) and will be defined in a later step.

1.2. List Devices

Here you can list your available harddrives and other storage devices if you like. You can skip this step safely.

1.3. Partition Disk

In case you haven’t already prepared the needed partitions for your install in advance, this step offers tools to partition storage devices with a choice of CLI tools (cfdisk, cgdisk, fdisk, gdisk or parted) and you also have an option to automatically partition your selected disk. In that case M-A will create a separate boot partition of 512MB next to a root partition of the remaining disk space for you.
Additionally this submenu includes an option to securely clean your disk using the tool wipe.
In our example we will choose automatic partitioning to keep it simple.

Submenus 1.4. and 1.5. deal with LUKS Encryption and LVM. Use those if you like and if you know what you’re doing. In our example we will just skip these steps.

1.6. Mount Partitions

Here you will be asked to specify which partitions to mount and how, starting with /root. We’ll select the bigger one of our partitions that have been auto-created in the preceeding step and use filesystem ext4, which is common for a Linux system. On the next screen we are offered a list of different mount options. If you don’t know of any special needs, just leave the default and confirm with [OK], or else choose what you need.
Next step is about SWAP. We haven’t created a separate swap partition but we still have the option to use a swap file. In that case we can specify its size on the next screen. Or just don’t use swap and continue with β€˜None’. Or of course you can choose another existing partition here to be mounted as swap by the final install - sharing a swap partition with another system on your computer is also an option of course. Just select it here like any other partition.
A /boot partition (if needed) should be mounted as filesystem vfat.
If you decide to mount more partitions you will be asked to specify their respective mountpoints (/home /opt /var …).

1.7. Configure Installer Mirrorlist

As you already know we will need to fetch quite a lot of data from the net very soon. So it will be good to optimise our download a little.
The ISO’s live script will already have tried to find a mirror in your region. To rank available mirrors by speed, to switch to a different branch than the default β€˜stable’ or to tweak pacman in other ways by editing its config files you can use this submenu.
I recommend you use at least 1.7.3. Rank Mirrors by Speed.

The entry 1.8. Refresh Pacman Keys will normally not be needed.

Back to Main Menu we will now in our case select option 2. Install Desktop System and begin with

2.1. Install Manjaro Desktop

After the package database has been updated we will be asked to select at least one Manjaro kernel.
Navigate to the desired list entry and select it with the Space key.
It makes sense to choose an alternative kernel here already, so we won’t need to install a backup kernel later manually. In my case I know that my hardware works best with linux41 but I also want a more recent kernel installed, so I just tick linux412 aswell.
The base-devel group will be needed if you want to use the AUR in your installed system. If you are not sure that your selected profile actually provides base-devel and yaourt, just select the entry here together with the kernel(s).
In this specific case I know that the Manjaro-bspwm profile has AUR support configured, so I can leave it unchecked.
(Duplicate packages will automatically be removed from the list later, so you don’t need to worry about that…)

Next you will see a selection of all the available kernel extramodules. Since for my wireless card I will need the broadcom-wl module, I will select that one here so the matching driver packages for both my selected kernels will be installed. The rest of the listed modules I will not need, so I can leave those deselected.

After that we are presented with the selection of available preconfigured desktop environments, where we can select bspwm for our example installation.

The next screen offers the opportunity to select any additional packages you might want installed on your system that would else not be included, or you can just skip this with Esc.

Now we can relax for a little while and watch M-A doing its job. It will create a list of needed packages and download and install them for us…

In our case the download is about 600MB. Depending on your internet connection and the available selected mirror it will take a little while to get everything we need…

Once all our packages have been installed successfully, Manjaro’s hardware detection tool mhwd will install needed network drivers automatically. After that you will see this dialog about video-drivers installation:

While options 1 and 2 will find the matching free or proprietary video-drivers for your hardware automatically, option 3 will let you choose manually exactly which driver you would like to install.
Entry 4 will install mhwd’s complete list of free video-drivers. This option is intended for installation on a removable drive to later be used on varying hardware. Typical usecase would be when you want to create your own manjaro-architect install media as explained in detail in @Chrysostomus’ tutorial.

Our system is now already installed, but still there are some important things we need to do:
Back to the β€˜Install Desktop System’ menu we proceede with

2.2. Install Bootloader

Here you can choose between β€˜grub’ or β€˜grub + os-prober’.
You will like to use os-prober in case more than one system is to be found on your computer. If the Manjaro system you are installig right now is the only one or if you use a custom GRUB configuration, GRUB alone will do. The device where GRUB will be installed can be selected in the next step. Likely just one device will be listed.
If a system including a bootloader is already present on another partition of your computer you may want to not install a bootloader at all and skip this menu entry altogether.


Most of the steps in the next submenu 2.3. Configure Base are also important if you want to end up with a functional system! :wink:

2.3.1. Generate FSTAB

The fstab file specifies where exactly on your drive(s) the partitions to be used by your system are located.
If you don’t know anything about the options available here, just use number 3 Device UUID, which is the current standard that would be used by the graphical installer.

2.3.2. Set Hostname

Here you can enter what will elsewhere be called β€˜computer-name’.

2.3.3. Set Locale

The so-called β€˜locale’ defines the language to be used in the target environment and will also play a role in a DE’s automatic selection of a default currency, measure units and other regional β€œoddities” …

2.3.4. Set Desktop Keyboard Layout

As said before, here you can select the keyboard layout to be used by the graphical environment.

2.3.5. Set Timezone and Clock

In my case I select β€˜Europe’ first, then β€˜Vienna’ and confirm the selected timezone Europe/Vienna.
Next, since I am not dual-booting with Windows I can say β€˜yes’ to using UTC.

2.3.6. Set Root Password

This step is needed (!), even when you are going to use the same password for root as for your only user. Just type it in twice, also for Root.

2.3.7. Add New User(s)

Enter a user name (lower case letters only), choose the default shell (bash, fish or zsh) and provide the password(s)!


With this, we are in fact DONE!
If you like you can double check the installed configuration using 2.5. Review Configuration Files one level up in the menu tree, which will look for available config files in the new system and offer the opportunity to open and edit them with text editor nano:

or even use 2.7 Chroot into Installation to adjust or fix things in the fresh install.


But now let’s go back to the Main Menu and hit 6. Done !!

Before quitting, the installer will perform a final check of some vital parts of the installation and will tell us if maybe we skipped or forgot something important, like if we didn’t define a root password or not install a bootloader and the like.

We will finally also have the choice to save the installation log to the target’s root directory.

In case something doesn’t work out as expected this will later be helpful to find out what might have gone wrong…

But now let’s reboot, shall we?

Success!! :smile:


Similar to the process demonstrated here manjaro-architect can of course alternatively be used to install a bare CLI base system without any desktop environment (menu entry 3. Install CLI System) or a custom desktop to your own liking without Manjaro pre-configuration via 4. Install Custom System.
manjaro-architect 0.9.2 now also has a dedicated 5. System Rescue submenu which can be used to repair a borked Manjaro installation. However, these use-cases are not part of this tutorial.

Overview of the menu structure in current version manjaro-architect 0.9.2:

Main Menu
|
β”œβ”€β”€ Prepare Installation
|    β”œβ”€β”€ Set Virtual Console
|    β”œβ”€β”€ List Devices
|    β”œβ”€β”€ Partition Disk
|    β”œβ”€β”€ LUKS Encryption
|    β”œβ”€β”€ Logical Volume Management
|    β”œβ”€β”€ Mount Partitions
|    β”œβ”€β”€ Configure Installer Mirrorlist
β”‚    └── Refresh Pacman Keys
|
β”œβ”€β”€ Install Desktop System
β”‚   β”œβ”€β”€ Install Manjaro Desktop
β”‚   β”œβ”€β”€ Install Bootloader
β”‚   β”œβ”€β”€ Configure Base
|   β”‚   β”œβ”€β”€ Generate FSTAB
|   β”‚   β”œβ”€β”€ Set Hostname
|   β”‚   β”œβ”€β”€ Set System Locale
|   β”‚   β”œβ”€β”€ Set Desktop Keyboard Layout
|   β”‚   β”œβ”€β”€ Set Timezone and Clock
|   β”‚   β”œβ”€β”€ Set Root Password
|   β”‚   └── Add New User(s)
|   β”‚
β”‚   β”œβ”€β”€ Security and systemd Tweaks
|   β”‚   β”œβ”€β”€ Amend journald Logging
|   β”‚   β”œβ”€β”€ Disable coredump Logging
|   β”‚   └── Restrict Access to Kernel Logs
|   β”‚
β”‚   β”œβ”€β”€ Review Configuration Files
β”‚   └── Chroot into Installation
|
β”œβ”€β”€ Install CLI System
β”‚   β”œβ”€β”€ Install Base Packages
β”‚   β”œβ”€β”€ Install Bootloader
β”‚   β”œβ”€β”€ Configure Base
|   β”‚   β”œβ”€β”€ Generate FSTAB
|   β”‚   β”œβ”€β”€ Set Hostname
|   β”‚   β”œβ”€β”€ Set System Locale
|   β”‚   β”œβ”€β”€ Set Desktop Keyboard Layout
|   β”‚   β”œβ”€β”€ Set Timezone and Clock
|   β”‚   β”œβ”€β”€ Set Root Password
|   β”‚   └── Add New User(s)
|   β”‚
β”‚   β”œβ”€β”€ Install Custom Packages
β”‚   β”œβ”€β”€ Security and systemd Tweaks
|   β”‚   β”œβ”€β”€ Amend journald Logging
|   β”‚   β”œβ”€β”€ Disable coredump Logging
|   β”‚   └── Restrict Access to Kernel Logs
|   β”‚
β”‚   β”œβ”€β”€ Review Configuration Files
β”‚   └── Chroot into Installation
|
β”œβ”€β”€ Install Custom System
β”‚   β”œβ”€β”€ Install Base Packages
β”‚   β”œβ”€β”€ Install Unconfigured Desktop Environments
|   β”‚   β”œβ”€β”€ Install Display Server
|   β”‚   β”œβ”€β”€ Install Desktop Environment
|   β”‚   β”œβ”€β”€ Install Display Manager
|   β”‚   β”œβ”€β”€ Install Networking Capabilities
|   β”‚   β”œβ”€β”€ Install Multimedia Support
|   β”‚   └── Install Custom Packages
β”‚   β”œβ”€β”€ Install Bootloader
β”‚   β”œβ”€β”€ Configure Base
|   β”‚   β”œβ”€β”€ Generate FSTAB
|   β”‚   β”œβ”€β”€ Set Hostname
|   β”‚   β”œβ”€β”€ Set System Locale
|   β”‚   β”œβ”€β”€ Set Desktop Keyboard Layout
|   β”‚   β”œβ”€β”€ Set Timezone and Clock
|   β”‚   β”œβ”€β”€ Set Root Password
|   β”‚   └── Add New User(s)
|   β”‚
β”‚   β”œβ”€β”€ Install Custom Packages
β”‚   β”œβ”€β”€ Security and systemd Tweaks
|   β”‚   β”œβ”€β”€ Amend journald Logging
|   β”‚   β”œβ”€β”€ Disable coredump Logging
|   β”‚   └── Restrict Access to Kernel Logs
|   β”‚
β”‚   β”œβ”€β”€ Review Configuration Files
β”‚   └── Chroot into Installation
|
└── System Rescue
    β”œβ”€β”€ Install Hardware Drivers
    β”‚   β”œβ”€β”€ Install Display Drivers
    β”‚   └── Install Network Drivers
    |
    β”œβ”€β”€ Install Bootloader
    β”œβ”€β”€ Configure Base
    β”‚   β”œβ”€β”€ Generate FSTAB
    β”‚   β”œβ”€β”€ Set Hostname
    β”‚   β”œβ”€β”€ Set System Locale
    β”‚   β”œβ”€β”€ Set Desktop Keyboard Layout
    β”‚   β”œβ”€β”€ Set Timezone and Clock
    β”‚   β”œβ”€β”€ Set Root Password
    β”‚   └── Add New User(s)
    β”‚
    β”œβ”€β”€ Install Custom Packages
    β”œβ”€β”€ Remove Packages
    β”œβ”€β”€ Review Configuration Files
    └── Chroot into Installation

What happened to Manjaro Net edition?
[git] Archtect CLI Installer fork for Manjaro (development & test)
Boot flag not set for Manjaro Gnome
Installation problems
Manjaro OpenRC 17.0.1 Xfce ISO
Opinions on Manjaro Architect? And what can improve?
Error installing Manjaro 17.0.6 KDE
Unable to install Manjaro
Kvm: disabled by bios - live DVD hangs on boot
Manjaro Live squashfs errors
17.x calamares crash
Opinions on Manjaro Architect? And what can improve?
Can't install - Screen gets turned off
[Stable Update] 2017-05-12 - Kernels, KDE, KDE Apps, Gnome, Browsers
[Dell XPS 15 9560] Freezing when selecting to reboot/shutdown
Second drive not found by installer
New to linux, need some suppot to install Manjaro
Manjaro version with kernel 4.11
ЗависаСт ΠΏΡ€ΠΈ установкС manjaro 17.1.0
Migration from arch
Boost.Python Fehler in Job "bootloader"
Installer stuck at Started TLP
Manjaro tatsΓ€chlich stabil u. fΓΌr Einsteiger geeignet?
Manjaro gnome 17.0.1 686 crashes during install
Manjaro OpenRC 17.0.1 Xfce ISO
[Dell XPS 15 9560] Freezing when selecting to reboot/shutdown
Can't boot Manjaro it stucks at started TLP system
Black screen after booting the installation
Install kde instead of xfce
KDE live environment image size
Will MacBook Pro with faulty discrete graphics work with Manjaro?
Opinions on Manjaro Architect? And what can improve?
Opinions on Manjaro Architect? And what can improve?
Opinions on Manjaro Architect? And what can improve?
Manjaro OpenRC 17.0.1 Xfce ISO
(RIP: Netty) "She's dead, Jim!"
#2

Any way we could add a vanilla, very minimal JWM profile? This would be amazing! @Holmes?


#3

Vanilla JWM can be installed already via
'Advanced Installation' > 'Install Desktop Environments'
For @Holmes ’ customization however we’d need a compatible settings package and iso-profile.


#4

Aaah, thanks! will check it out.

What are the dependencies when one selects JWM? LXappearance? oblgout? web browser? Lxterminal? etc?
I’m just thinking of the bare essentials being available when one logs into JWM and needs to start installing setting up etc.


#5

Oops, I just realized that jwm was actually not listed with the unconfigured environments. I’ve just added it, so will be included with the next update. However it’s still just one package jwm with almost no dependencies… :wink:


#6

20 posts were split to a new topic: Problems with LIKS+LVM installation with manjaro-architect


Problems with LUKS+LVM installation with manjaro-architect
#8

Now that’s cool!:heart_eyes:


#14

Awesome, thank you.
That’s what I meant, we need the correct β€œdependencies” to make it a functioning desktop that enables one to, at least, log in etc. I guess this means getting a minimal profile from Holmes?


#15

I do not know if this is the right thread but it seems to be the most recent.

Advanced Installation -> Unconfigured Desktops does not work anymore.The 0.1 second error display says something like this:
… util-menu.sh line 237 install_vanilla_de_wm: command not found

This was still working last week so something changed over the weekend.
Now I have no polkit, no network, no xf86*, no xorg-*, no Enlightenment, no connman, etc.

I can boot to a tty, but with no network I cannot add anything.

Hopefully just a typo error in MA.
Hopefully when it get fixed the new version gets loaded auto so I do not have to download the iso again.
Hopefully I can then just goto Advanced Installation -> Unconfigured Desktops and carry on from there.


#16

Thank you @Bertie!
Seems to be related to this commit
@papajoke can you please have a look!?


#17

I found the issue and will release a fixed version 0.8.5. Just make sure your mirror has the updated version when the launcher looks for an update … :wink:


#18

Absolutely. Just mount the same partitions in Prepare menu without formatting and the installer will recognise that the base has already been installed.


#19

Thanks for your quick response and also for the very good tutorial.

My fastest mirror is in Africa which I doubt gets updated more than once per day. However, the launcher should drop down through the list of mirrors until it gets the latest (0.8.5) from another mirror (netzspielplatz) ?

Also very nice that I can just go straight into Advanced Installation (after mounting) without having to install the base again!


#20

It doesn’t work like that with mirrors. The database of your mirror will be used and the launcher has no way of knowing that 0.8.5 exists.
But what you could do is switch to an up-to-date mirror, then install the installer directly with pacman -S manjaro-architect and then switch back to your faster mirror before you download all the other packages.


#21

@oberon

If you run

sudo pacman-mirrors -f 10

You will get 10 mirrors which are up2date on all branches.


#23

My pacman does not understand the -f option. (stable branch.)


#24

A post was merged into an existing topic: Pacman-Mirrors v 4.0.2 is rolling


#25

Would have been nice if I could just do:
sudo pacman -S β€œhttp://mirror.netzspielplatz.de/manjaro/packages/stable/$repo/$arch/manjaro-architect”


#26

You can sort of do that. You will just need to use pacman -U for that and you will need the exact name and a real location of the package. I just didn’t suggest that because I thought in the ISO live environment it will be tedious to type all that in :wink:
Here you go:
http://manjarolinux.polymorf.fr/pool/overlay/manjaro-architect-0.8.5-1-any.pkg.tar.xz


#27

Thanks, this helps to get manjaro-architect-0.8.5 installed into the live environment.

However, when I enter β€˜setup’ , it gets overwritten by the older manjaro-architect-0.8.4 which is found from my first mirror. There should be a check to not install an older version if a newer version is already installed.