5 KiB
| title | description |
|---|---|
| Installation | Install mangowm on AerynOS, Arch, Fedora, Gentoo, Guix System, NixOS, PikaOS, or build from source. |
Package Installation
mangowm is available as a pre-built package on several distributions. Choose your distribution below.
AerynOS
mangowm is available in the AerynOS package repository.
You can install it using the moss package manager:
sudo moss install mangowm
Arch Linux
mangowm is available in the Arch User Repository (AUR).
You can install it using an AUR helper like yay or paru:
yay -S mangowm-git
Tip: This package pulls the latest git version, ensuring you have the newest features and fixes.
Fedora
The package is in the third-party Terra repository. First, add the Terra Repository.
Warning: Both commands require root privileges. Use
sudoif needed.
dnf install --nogpgcheck --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' terra-release
Then, install the package:
dnf install mangowm
Gentoo
The package is hosted in the community-maintained GURU repository.
-
Add the GURU repository
emerge --ask --verbose eselect-repository eselect repository enable guru emerge --sync guru -
Unmask packages Add the required packages to your
package.accept_keywordsfile:gui-libs/scenefxgui-wm/mangowm
-
Install mango
emerge --ask --verbose gui-wm/mangowm
Guix System
The package definition is described in the source repository.
-
Add mango channel Add to
$HOME/.config/guix/channels.scm:(cons (channel (name 'mangowm) (url "https://github.com/mangowm/mango.git") (branch "main")) %default-channels) -
Install After running
guix pull, you can install mangowm:guix install mangowmOr add it to your system configuration using the mangowm module:
(use-modules (mangowm)) (packages (cons* mangowm-git ... ;; Other packages %base-packages))
Tip: For more information, see the Guix System documentation.
NixOS
The repository provides a Flake with a NixOS module.
-
Add flake input
# flake.nix { inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; mangowm = { url = "github:mangowm/mango"; inputs.nixpkgs.follows = "nixpkgs"; }; # other inputs ... }; } -
Import the NixOS module
Option A — Import in
configuration.nix:# configuration.nix (or any other file that you import) {inputs, ...}: { imports = [ inputs.mangowm.nixosModules.mango # .. other imports ... ]; # ... }Option B — Import directly in flake:
# flake.nix { # ... outputs = { self, nixpkgs, mangowm, ...}@inputs: let inherit (nixpkgs) lib; # ... in { nixosConfigurations.YourHostName = lib.nixosSystem { modules = [ mangowm.nixosModules.mango # or inputs.mangowm.nixosModules.mango # other imports ... ]; }; } } -
Enable the module
# configuration.nix (or any other file that you import) { programs.mango.enable = true; } -
Extra options
programs.mango.package— the mango package to use, allows usage of custom mango drvsprograms.mango.addLoginEntry(default:true) — adds login entry to the display manager
PikaOS
mangowm is available in the PikaOS package repository.
You can install it using the pikman package manager:
pikman install mangowc
Building from Source
If your distribution isn't listed above, or you want the latest unreleased changes, you can build mangowm from source.
Info: Ensure the following dependencies are installed before proceeding:
waylandwayland-protocolslibinputlibdrmlibxkbcommonpixmanlibdisplay-infolibliftoffhwdataseatdpcre2xorg-xwaylandlibxcb
You will need to build wlroots and scenefx manually as well.
-
Build wlroots Clone and install the specific version required (check README for latest version).
git clone -b 0.19.2 https://gitlab.freedesktop.org/wlroots/wlroots.git cd wlroots meson build -Dprefix=/usr sudo ninja -C build install -
Build scenefx This library handles the visual effects.
git clone -b 0.4.1 https://github.com/wlrfx/scenefx.git cd scenefx meson build -Dprefix=/usr sudo ninja -C build install -
Build mangowm Finally, compile the compositor itself.
git clone https://github.com/mangowm/mango.git cd mango meson build -Dprefix=/usr sudo ninja -C build install