Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation: improve FreeBSD instructions for Manual Build #200

Open
wants to merge 11 commits into
base: main
Choose a base branch
from
13 changes: 7 additions & 6 deletions pages/Getting Started/Installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -326,9 +326,9 @@ zypper in gcc-c++ git meson cmake "pkgconfig(cairo)" "pkgconfig(egl)" "pkgconfig
{{% details title="FreeBSD" closed="true" %}}

```plain
pkg install git pkgconf gmake gcc evdev-proto cmake wayland-protocols wayland libglvnd libxkbcommon libinput cairo pango pixman libxcb
pkg install meson jq hwdata libdisplay-info libliftoff
export CC=gcc CXX=g++ LDFLAGS="-static-libstdc++ -static-libgcc"
pkg install git pkgconf evdev-proto cmake wayland-protocols wayland libglvnd libxkbcommon libinput cairo pango pixman tomlplusplus e2fsprogs-libuuid
pkg install aquamarine hyprcursor hyprlang hyprutils hyprwayland-scanner
pkg install libxcb xcb-util-errors xcb-util-wm
```

{{% /details %}}
Expand Down Expand Up @@ -370,10 +370,11 @@ installed._
### Meson

```plain
meson subprojects update --reset
git clone --recursive https://github.com/hyprwm/Hyprland
cd Hyprland
meson setup build
ninja -C build
ninja -C build install --tags runtime,man
meson compile -C build
meson install -C build --skip-subprojects
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this not mean udis86 will not be found?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

udis86 is not part of Hyprland plugin API unlike wlroots was before aquamarine. --skip-subprojects is still necessary to avoid installing hyprland-protocols (plugins use preprocessed headers instead). Hyprland itself doesn't support building against system-wide copy of udis86 (Alpine patches this), and the bundled version uses CMake to build the submodule.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's fine by me. However, I've made progress towards allowing Hyprland to build with a system-wide copy of udis86 (provided it's canihavesomecoffee's fork, which includes a .pc file). See this PR for more info about it, maybe leave your thoughts as well hyprwm/Hyprland#7885.

```

Refer to [Debugging](../../Contributing-and-Debugging) to see how to build &
Expand Down