summaryrefslogtreecommitdiff
path: root/docs/getting-started/installation.md
blob: 945e70b724ceebd03e09e50d74541ee5e3ddea22 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# Installation

## Nix

maintainer: [@Aylur](https://github.com/Aylur)

Read more about it on the [nix page](./nix)

## Arch

maintainer: [@kotontrion](https://github.com/kotontrion)

:::code-group

```sh [Core Library]
yay -S libastal-git
```

```sh [Every Library]
yay -S libastal-meta
```

:::

## Bulding libastal from source

1. Clone the repo

```sh
git clone https://github.com/aylur/astal.git
cd astal/core
```

2. Install the following dependencies

:::code-group

```sh [Arch]
sudo pacman -Syu meson vala gtk3 gtk-layer-shell gobject-introspection
```

```sh [Fedora]
sudo dnf install meson gcc valac gtk3-devel gtk-layer-shell-devel
```

```sh [Alpine]
sudo apk add meson g++ vala gtk+3.0-dev gtk-layer-shell-dev gobject-introspection-dev
```

```sh [Ubuntu]
sudo apt install meson valac libgtk3-dev libgtk-layer-shell-dev gobject-introspection
```

```sh [openSUSE]
sudo zypper install gcc meson vala gtk3-devel gtk-layer-shell-devel gobject-introspection-devel
```

:::

3. Build and install with `meson`

```sh
meson setup build
meson install -C build
```

:::info
Most distros recommend manual installs in `/usr/local`,
which is what `meson` defaults to. If you want to install to `/usr`
instead which most package managers do, set the `prefix` option:

```sh
meson setup --prefix /usr build
meson install -C build
```

:::