# Monarch

__THIS IS NOT TESTED YET! USE ON YOUR OWN RISK!__

I didn't want to rice a clean system each time on each device. So I created an installation script. :)  

So first things first. Monarch or MonArch, maybe MoonArch, is not a Linux based Distribution - it's just a lot of cool packages, a collection of scripts and config files. _While I customized a few things, credit goes to all the great developers and maintainers out there!_ Monarch is what you call a 'rice', my personal setup.
To use this script, you've to Install Arch Linux by yourself!

[] todo: write some more tips & tricks for `archinstall`

Here are some keywords: use btrfs, pipewire, multilib in archinstall. There's a preset somewhere in archinstall to install hyprland, recommended.

So right after your fresh arch installation get some network up and you're ready to run the Monarch Setup.

# Setup

This is basically per user!

```bash
$ sudo pacman -Syu git
$ git clone --depth 1 https://gitea.nevaforget.de/dom/monarchos ~/.monarchos
$ cd ~/.monarchos
$ ./setup.sh
```

## Installation Stages

### Paru

Paru is a requirement. It is a package manager wrapper to easily handle community packages of the Arch User Repository.

### Recommended Packages

This stage will install some handy tools. Some of them may be required for other things like Rofi later on. Some are just recommended because they handle devices e.g. udisks2 or dunst notficiations.


#### Full Package List

```
jq dunst network-manager-applet alarm-clock-applet man-db hardinfo networkmanager-openvpn udisks2 plocate vim kitty gettext-hostname neovim lsd alsa-utils ponymix btop powertop polkit lxsession timeshift timeshift-autosnap stacer-bin
```

---
### ZSH

Installs ZSH + Autosuggestions and set zsh as your default shell. No fancy Powerline, keeping it basic.

---
### SDDM

SDDM is the Display Manager / Login Screen based on QT.


#### Full Package List

```
sddm qt5-quickcontrols qt5-graphicaleffects
```

MonArch theme will be also installed. See https://gitea.nevaforget.de/dom/Elegant-sddm-monarch/

Default User Picture will be set: see ~/.face

If you build a Wayland only system you can force Wayland instead of X11 for SDDM. See https://wiki.archlinux.org/title/SDDM#Running_under_Wayland  
Add `10-wayland.conf` and install `weston`

---
### X11 "Desktop"

This stage will not only install X11! It will install a whole lot more. It's just my backup system if something on wayland breaks. :)

Core:  
bspwm - window tiling manager  
picom - window compositor  
sxhkd - Hotkey daemon  
polybar - customizable status bar  

__The appropiate config files will be overwritten!__

#### Full Package List

```
bspwm sxhkd picom-arian8j2-git polybar xdg-desktop-portal
```

---
### Wayland "Desktop"

This stage will not only install Wayland! It will install a whole lot more.

Core:  
Hyprland - Wayland compositor  
waybar - customizable status bar  
swaylock - your handy and fancy lockscreen

#### Full Package List
```
wayland xorg-xwayland hyprland swaybg waypaper-git xdg-desktop-portal-hyprland wdisplays waybar-hyprland-git nwg-look cliphist slurp grim hyprland-interactive-screenshot swappy swaylock-effects cava
```

__The appropiate config files will be overwritten!__

---
### ROFI

The amazing swiss-knife. This will install all the menus like app launcher, clipboard manager, sound control etc.

Based on the package `rofi-lbonn-wayland-git`. Works on X11 and Wayland.

---
### UFW
Install "Uncomplicated Firewall" UFW and set some common rules. This common setup should be enough for day to day use.

---
### CLAMAV

Install ClamAV - Anti-Virus Scanner and updating virus defintion with "Fangfrisch".

---
### Noise Suppression for voice

It's always nice to have some noise reduction on your microphone input source.

Install `noise-suppression-for-voice` and add module config to pipewire.

---
### CONFIGS

Overwriting the configs of some more tools.

```
kitty nvim dunst btop lsd
```

---
### Bluetooth

You want it? You can have it! If your device supports bluetooth.

#### Full Package List
```
bluez bluez-utils-compat blueberry
```

_On X11/bspwm install blueman instead of blueberry._

---
### GUI

The final stage installs a lot more convenience tools and GUI applications, but also that's the allover look of the system.

e.g.:  
File Explorer  
Font Manager  
Image Viewer  
Video Player  
Audio Player  
Themes, Fonts, Cursor, Wallpaper  
etc.

#### Full Package List
```
celluloid audacious font-manager viewnior nemo nemo-fileroller nemo-image-converter nemo-media-columns pavucontrol viewnior ttf-hack-nerd sweet-cursor-theme-git arc-solid-gtk-theme
```

