Skip to content

Instantly share code, notes, and snippets.

@Vertecedoc4545
Last active June 14, 2024 22:27
Show Gist options
  • Save Vertecedoc4545/3b077301299c20c5b9b4db00f4ca6000 to your computer and use it in GitHub Desktop.
Save Vertecedoc4545/3b077301299c20c5b9b4db00f4ca6000 to your computer and use it in GitHub Desktop.
Ubuntu 23.04 Build and Install instructions for Hyprland

Building on Ubuntu 23.04

You have 2 options, use the script descrived bellow or follow the instrutions

script in this gist if you want the source code

wget https://gist.githubusercontent.com/Vertecedoc4545/6e54487f07a1888b656b656c0cdd9764/raw/2c5e8ccb428fc331307e2f653cab88174c051310/build-ubuntu-23.sh
chmod +x build-ubuntu-23.sh
./build-ubuntu-23.sh

Warning you will need to add the bellow config to your hyprland.conf file after installing hyprland either way. If you detect a bug respect to xdg-portals reffer to the issue in github

misc {
  suppress_portal_warnings = true
}

INSTRUCTIONS

Nvidia building : Here

Dependencies:

Most of our dependencies are disponible in the official repos, for speed is recomendable to use nala package manager intead of apt

installing nala will keep apt

sudo apt-get install -y nala
sudo nala install -y meson wget build-essential ninja-build cmake-extras cmake gettext gettext-base fontconfig libfontconfig-dev libffi-dev libxml2-dev libdrm-dev libxkbcommon-x11-dev libxkbregistry-dev libxkbcommon-dev libpixman-1-dev libudev-dev libseat-dev seatd libxcb-dri3-dev libvulkan-dev libvulkan-volk-dev  vulkan-validationlayers-dev libvkfft-dev libgulkan-dev libegl-dev libgles2 libegl1-mesa-dev glslang-tools libinput-bin libinput-dev libxcb-composite0-dev libavutil-dev libavcodec-dev libavformat-dev libxcb-ewmh2 libxcb-ewmh-dev libxcb-present-dev libxcb-icccm4-dev libxcb-render-util0-dev libxcb-res0-dev libxcb-xinput-dev libpango1.0-dev xdg-desktop-portal-wlr hwdata-dev

or if you don't want to use nala apt replacement do:

sudo apt-get install -y meson wget build-essential ninja-build cmake-extras cmake gettext gettext-base fontconfig libfontconfig-dev libffi-dev libxml2-dev libdrm-dev libxkbcommon-x11-dev libxkbregistry-dev libxkbcommon-dev libpixman-1-dev libudev-dev libseat-dev seatd libxcb-dri3-dev libvulkan-dev libvulkan-volk-dev  vulkan-validationlayers-dev libvkfft-dev libgulkan-dev libegl-dev libgles2 libegl1-mesa-dev glslang-tools libinput-bin libinput-dev libxcb-composite0-dev libavutil-dev libavcodec-dev libavformat-dev libxcb-ewmh2 libxcb-ewmh-dev libxcb-present-dev libxcb-icccm4-dev libxcb-render-util0-dev libxcb-res0-dev libxcb-xinput-dev xdg-desktop-portal-wlr hwdata-dev

but some dependencies that we requiere are a little older in the repos so we need to build them

Building libs from source

first get all of our sources for building then extarct them

Hyprland and containing folder

mkdir HyprSource
cd HyprSource

## We get Source
wget https://github.com/hyprwm/Hyprland/releases/download/v0.24.1/source-v0.24.1.tar.gz
tar -xvf source-v0.24.1.tar.gz
wget https://gitlab.freedesktop.org/wayland/wayland-protocols/-/releases/1.31/downloads/wayland-protocols-1.31.tar.xz
tar -xvJf wayland-protocols-1.31.tar.xz

wget https://gitlab.freedesktop.org/wayland/wayland/-/releases/1.22.0/downloads/wayland-1.22.0.tar.xz
tar -xzvJf wayland-1.22.0.tar.xz

wget https://gitlab.freedesktop.org/emersion/libdisplay-info/-/releases/0.1.1/downloads/libdisplay-info-0.1.1.tar.xz
tar -xvJf libdisplay-info-0.1.1.tar.xz

now only get inside each one, we build and install directly

build wayland 1.22.0

cd wayland-1.22.0
mkdir build &&
cd    build &&

meson setup ..            \
      --prefix=/usr       \
      --buildtype=release \
      -Ddocumentation=false &&
ninja
sudo ninja install

cd ../..

bulild wayland protocols

cd wayland-protocols-1.31

mkdir build &&
cd    build &&

meson setup --prefix=/usr --buildtype=release &&
ninja

sudo ninja install

cd ../..

Lets build libdisplay-info

cd libdisplay-info-0.1.1/

mkdir build &&
cd    build &&

meson setup --prefix=/usr --buildtype=release &&
ninja

sudo ninja install

cd ../..

Lets build Hyprland!!!

you will need to change the folder permisions due to the use of sudo, so in the future you can acces and modify the folder

chmod a+rw hyprland-source

cd hyprland-source/

modify config.mk and change PREFIX=/usr/local to PREFIX=/usr or use this command

sed -i 's/\/usr\/local/\/usr/g' config.mk

also in that file you could use your custom cflags as for example adding -O3 or -Ofast optimization even -Og etc..

then only do:

sudo make install

*enjoy Hyprland !!

@ferrreo
Copy link

ferrreo commented Jun 10, 2023

I've been building a Hyprland deb package for PikaOS (which is a ubuntu based distro) so anyone struggling you could grab the .deb from here and install it with dpkg: https://ppa.pika-os.com/pool/main/h/hyprland/

We also have debs for all the libs required to build it and runtime ones. So you might want to add our mirror to make it easier.

@Vertecedoc4545
Copy link
Author

I've been building a Hyprland deb package for PikaOS (which is a ubuntu based distro) so anyone struggling you could grab the .deb from here and install it with dpkg: https://ppa.pika-os.com/pool/main/h/hyprland/

We also have debs for all the libs required to build it and runtime ones. So you might want to add our mirror to make it easier.

easier, im updateing to that

@anjiahao1
Copy link

sudo apt install libwlroots-dev
use this comannd can fix undefine wrl_xxx @AhJi26

@lenlorijn
Copy link

For solving the 'wlr_gles2_texture_get_attribs' issue, I looked at the top of the output, and it have me some hints about what dependencies were missing. Basically it was hwdata and libliftoff-dev.

So sudo apt install hwdata libliftoff-dev fixed everything for me and I could install it.

@defxsec
Copy link

defxsec commented Aug 20, 2023

Tenia el mismo problema en kali-linux-2023.2a-installer-purple-amd64, por lo que procedí a instalar sudo apt install libwlroots-dev

imagen

imagen

y se corrió el problema
imagen
imagen

@defxsec
Copy link

defxsec commented Aug 20, 2023

En el menú de inicio de sesión no me aparece el Hyprland.
imagen

@MartinFillon
Copy link

@defxsec for this just go to the hyprland repo take .desktop file and put it where the building from source doc from original hyprland says it

@andrew-george
Copy link

It fails when trying to build hyperland, can't figure out why wlroots fails. Any help!
OS: Ubuntu 22.04

`❯ sudo make install
make clear
make[1]: Entering directory '/home/andrew/HyprSource/hyprland-source'
rm -rf build
rm -f *.o *-protocol.h *-protocol.c
rm -f ./hyprctl/hyprctl
rm -rf ./subprojects/wlroots/build
make[1]: Leaving directory '/home/andrew/HyprSource/hyprland-source'
make fixwlr
make[1]: Entering directory '/home/andrew/HyprSource/hyprland-source'
sed -i -E 's/(soversion = 12)([^032]|$)/soversion = 12032/g' subprojects/wlroots/meson.build
rm -rf ./subprojects/wlroots/build
make[1]: Leaving directory '/home/andrew/HyprSource/hyprland-source'
cd ./subprojects/wlroots && meson setup build/ --buildtype=release && ninja -C build/ && cp ./build/libwlroots.so.12032 /usr/lib/ || echo "Could not install libwlroots to /usr/lib/libwlroots.so.12032"
The Meson build system
Version: 0.61.2
Source dir: /home/andrew/HyprSource/hyprland-source/subprojects/wlroots
Build dir: /home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build
Build type: native build
Project name: wlroots
Project version: 0.17.0-dev
C compiler for the host machine: cc (gcc 11.4.0 "cc (Ubuntu 11.4.0-1ubuntu122.04) 11.4.0")
C linker for the host machine: cc ld.bfd 2.38
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports arguments -Wundef: YES
Compiler for C supports arguments -Wlogical-op: YES
Compiler for C supports arguments -Wmissing-include-dirs: YES
Compiler for C supports arguments -Wold-style-definition: YES
Compiler for C supports arguments -Wpointer-arith: YES
Compiler for C supports arguments -Winit-self: YES
Compiler for C supports arguments -Wstrict-prototypes: YES
Compiler for C supports arguments -Wimplicit-fallthrough=2: YES
Compiler for C supports arguments -Wendif-labels: YES
Compiler for C supports arguments -Wstrict-aliasing=2: YES
Compiler for C supports arguments -Woverflow: YES
Compiler for C supports arguments -Wmissing-prototypes: YES
Compiler for C supports arguments -Walloca: YES
Compiler for C supports arguments -Wno-missing-braces: YES
Compiler for C supports arguments -Wno-missing-field-initializers: YES
Compiler for C supports arguments -Wno-unused-parameter: YES
Compiler for C supports arguments -fmacro-prefix-map=/prefix/to/hide=: YES
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Run-time dependency wayland-server found: YES 1.22.0
Run-time dependency libdrm found: YES 2.4.116
Run-time dependency xkbcommon found: YES 1.4.0
Run-time dependency pixman-1 found: YES 0.42.2
Library m found: YES
Library rt found: YES
Run-time dependency wayland-protocols found: YES 1.32
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Build-time dependency wayland-scanner found: YES 1.22.0
Program /usr/bin/wayland-scanner found: YES (/usr/bin/wayland-scanner)
Has header "linux/dma-buf.h" : YES
Run-time dependency egl found: YES 1.5
Run-time dependency gbm found: YES 23.0.4-0ubuntu1
22.04.1
Run-time dependency glesv2 found: YES 3.2
Program ./embed.sh found: YES (/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/render/gles2/shaders/./embed.sh)
Run-time dependency vulkan found: YES 1.3.204
Check usable header "vulkan/vulkan.h" with dependency vulkan: YES
Program glslangValidator found: YES (/usr/bin/glslangValidator)
Dependency pixman-1 found: YES 0.42.2 (cached)
Dependency gbm found: YES 23.0.4-0ubuntu122.04.1 (cached)
Checking for function "gbm_bo_get_fd_for_plane" with dependency gbm: YES
Run-time dependency libudev found: YES 249
Run-time dependency libseat found: YES 0.6.4
Found CMake: /usr/bin/cmake (3.22.1)
Build-time dependency hwdata found: NO (tried pkgconfig and cmake)
Message: Required for the DRM backend.
Message: Required for the DRM backend.
Run-time dependency libdisplay-info found: YES 0.1.1
Run-time dependency libliftoff found: YES 0.5.0-dev
Run-time dependency libinput found: YES 1.20.0
Run-time dependency xcb found: YES 1.14
Run-time dependency xcb-dri3 found: YES 1.14
Run-time dependency xcb-present found: YES 1.14
Run-time dependency xcb-render found: YES 1.14
Run-time dependency xcb-renderutil found: YES 0.3.9
Run-time dependency xcb-shm found: YES 1.14
Run-time dependency xcb-xfixes found: YES 1.14
Run-time dependency xcb-xinput found: YES 1.14
Run-time dependency wayland-client found: YES 1.22.0
Found CMake: /usr/bin/cmake (3.22.1)
Run-time dependency xwayland found: NO (tried pkgconfig and cmake)
Configuring config.h using configuration
Configuring version.h using configuration
Configuring config.h using configuration
Run-time dependency threads found: YES
Run-time dependency wayland-egl found: YES 18.1.0
Run-time dependency wayland-cursor found: YES 1.22.0
Dependency wayland-client found: YES 1.22.0 (cached)
Run-time dependency libpng found: YES 1.6.37
Dependency egl found: YES 1.5 (cached)
Dependency glesv2 found: YES 3.2 (cached)
Dependency gbm found: YES 23.0.4-0ubuntu1
22.04.1 (cached)
Run-time dependency libavutil found: YES 56.70.100
Run-time dependency libavcodec found: YES 58.134.100
Run-time dependency libavformat found: YES 58.76.100
Dependency libdrm found: YES 2.4.116 (cached)
Has header "libavutil/hwcontext_drm.h" with dependency libavutil: YES
Build targets in project: 159

wlroots 0.17.0-dev

drm-backend     : NO
x11-backend     : YES
libinput-backend: YES
xwayland        : NO
gles2-renderer  : YES
vulkan-renderer : YES
gbm-allocator   : YES
session         : YES
xcb-errors      : NO
egl             : YES

User defined options
buildtype : release

Found ninja-1.10.1 at /usr/bin/ninja
ninja: Entering directory build/' [402/402] Linking target examples/output-layers cd subprojects/udis86 && cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -S . -B./build -G Ninja && cmake --build ./build --config Release --target all -j12 && cd ../.. Not searching for unused variables given on the command line. -- Configuring done -- Generating done -- Build files have been written to: /home/andrew/HyprSource/hyprland-source/subprojects/udis86/build ninja: no work to do. make protocols make[1]: Entering directory '/home/andrew/HyprSource/hyprland-source' /usr/bin/wayland-scanner private-code \ //usr/local/share/wayland-protocols/stable/xdg-shell/xdg-shell.xml xdg-shell-protocol.c /usr/bin/wayland-scanner server-header \ //usr/local/share/wayland-protocols/stable/xdg-shell/xdg-shell.xml xdg-shell-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o xdg-shell-protocol.o xdg-shell-protocol.c /usr/bin/wayland-scanner private-code \ protocols/wlr-layer-shell-unstable-v1.xml wlr-layer-shell-unstable-v1-protocol.c /usr/bin/wayland-scanner server-header \ protocols/wlr-layer-shell-unstable-v1.xml wlr-layer-shell-unstable-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o wlr-layer-shell-unstable-v1-protocol.o wlr-layer-shell-unstable-v1-protocol.c /usr/bin/wayland-scanner private-code \ protocols/wlr-screencopy-unstable-v1.xml wlr-screencopy-unstable-v1-protocol.c /usr/bin/wayland-scanner server-header \ protocols/wlr-screencopy-unstable-v1.xml wlr-screencopy-unstable-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o wlr-screencopy-unstable-v1-protocol.o wlr-screencopy-unstable-v1-protocol.c /usr/bin/wayland-scanner private-code \ protocols/idle.xml idle-protocol.c /usr/bin/wayland-scanner server-header \ protocols/idle.xml idle-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o idle-protocol.o idle-protocol.c /usr/bin/wayland-scanner private-code \ protocols/ext-workspace-unstable-v1.xml ext-workspace-unstable-v1-protocol.c /usr/bin/wayland-scanner server-header \ protocols/ext-workspace-unstable-v1.xml ext-workspace-unstable-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o ext-workspace-unstable-v1-protocol.o ext-workspace-unstable-v1-protocol.c /usr/bin/wayland-scanner private-code \ protocols/pointer-constraints-unstable-v1.xml pointer-constraints-unstable-v1-protocol.c /usr/bin/wayland-scanner server-header \ protocols/pointer-constraints-unstable-v1.xml pointer-constraints-unstable-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o pointer-constraints-unstable-v1-protocol.o pointer-constraints-unstable-v1-protocol.c /usr/bin/wayland-scanner private-code \ protocols/tablet-unstable-v2.xml tablet-unstable-v2-protocol.c /usr/bin/wayland-scanner server-header \ protocols/tablet-unstable-v2.xml tablet-unstable-v2-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o tablet-unstable-v2-protocol.o tablet-unstable-v2-protocol.c /usr/bin/wayland-scanner private-code \ protocols/wlr-output-power-management-unstable-v1.xml wlr-output-power-management-unstable-v1-protocol.c /usr/bin/wayland-scanner server-header \ protocols/wlr-output-power-management-unstable-v1.xml wlr-output-power-management-unstable-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o wlr-output-power-management-unstable-v1-protocol.o wlr-output-power-management-unstable-v1-protocol.c /usr/bin/wayland-scanner private-code \ //usr/local/share/wayland-protocols/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml linux-dmabuf-unstable-v1-protocol.c /usr/bin/wayland-scanner server-header \ //usr/local/share/wayland-protocols/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml linux-dmabuf-unstable-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o linux-dmabuf-unstable-v1-protocol.o linux-dmabuf-unstable-v1-protocol.c /usr/bin/wayland-scanner private-code \ subprojects/hyprland-protocols/protocols/hyprland-toplevel-export-v1.xml hyprland-toplevel-export-v1-protocol.c /usr/bin/wayland-scanner server-header \ subprojects/hyprland-protocols/protocols/hyprland-toplevel-export-v1.xml hyprland-toplevel-export-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o hyprland-toplevel-export-v1-protocol.o hyprland-toplevel-export-v1-protocol.c /usr/bin/wayland-scanner private-code \ protocols/wlr-foreign-toplevel-management-unstable-v1.xml wlr-foreign-toplevel-management-unstable-v1-protocol.c /usr/bin/wayland-scanner server-header \ protocols/wlr-foreign-toplevel-management-unstable-v1.xml wlr-foreign-toplevel-management-unstable-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o wlr-foreign-toplevel-management-unstable-v1-protocol.o wlr-foreign-toplevel-management-unstable-v1-protocol.c /usr/bin/wayland-scanner private-code \ //usr/local/share/wayland-protocols/staging/fractional-scale/fractional-scale-v1.xml fractional-scale-v1-protocol.c /usr/bin/wayland-scanner server-header \ //usr/local/share/wayland-protocols/staging/fractional-scale/fractional-scale-v1.xml fractional-scale-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o fractional-scale-v1-protocol.o fractional-scale-v1-protocol.c /usr/bin/wayland-scanner private-code \ //usr/local/share/wayland-protocols/unstable/text-input/text-input-unstable-v1.xml text-input-unstable-v1-protocol.c /usr/bin/wayland-scanner server-header \ //usr/local/share/wayland-protocols/unstable/text-input/text-input-unstable-v1.xml text-input-unstable-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o text-input-unstable-v1-protocol.o text-input-unstable-v1-protocol.c /usr/bin/wayland-scanner private-code \ subprojects/hyprland-protocols/protocols/hyprland-global-shortcuts-v1.xml hyprland-global-shortcuts-v1-protocol.c /usr/bin/wayland-scanner server-header \ subprojects/hyprland-protocols/protocols/hyprland-global-shortcuts-v1.xml hyprland-global-shortcuts-v1-protocol.h cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/local/include -I/usr/local/include/libdrm -I/usr/local/include/pixman-1 -c -o hyprland-global-shortcuts-v1-protocol.o hyprland-global-shortcuts-v1-protocol.c make[1]: Leaving directory '/home/andrew/HyprSource/hyprland-source' make release make[1]: Entering directory '/home/andrew/HyprSource/hyprland-source' cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -S . -B ./build -G Ninja Not searching for unused variables given on the command line. -- The C compiler identification is GNU 11.4.0 -- The CXX compiler identification is GNU 11.4.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Gathering git info fatal: not a git repository (or any of the parent directories): .git fatal: not a git repository (or any of the parent directories): .git fatal: not a git repository (or any of the parent directories): .git fatal: not a git repository (or any of the parent directories): .git -- Configuring Hyprland in Release with CMake -- Checking deps... -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2") -- Checking for modules 'wayland-server;wayland-client;wayland-cursor;wayland-protocols;cairo;libdrm;egl;xkbcommon;libinput;pango;pangocairo' -- Found wayland-server, version 1.22.0 -- Found wayland-client, version 1.22.0 -- Found wayland-cursor, version 1.22.0 -- Found wayland-protocols, version 1.32 -- Found cairo, version 1.16.0 -- Found libdrm, version 2.4.116 -- Found egl, version 1.5 -- Found xkbcommon, version 1.4.0 -- Found libinput, version 1.20.0 -- Found pango, version 1.50.6 -- Found pangocairo, version 1.50.6 -- Looking for backtrace in execinfo -- Looking for backtrace in execinfo - not found -- XWAYLAND Enabled (NO_XWAYLAND not defined) checking deps... -- Checking for module 'xcb' -- Found xcb, version 1.14 -- SYSTEMD support is requested (NO_SYSTEMD not defined) checking deps... -- Checking for module 'libsystemd' -- Found libsystemd, version 249 -- Looking for systemd/sd-daemon.h -- Looking for systemd/sd-daemon.h - found -- Setting link libraries -- Configuring done -- Generating done -- Build files have been written to: /home/andrew/HyprSource/hyprland-source/build cmake --build ./build --config Release --target all -j12 [0/2] Re-checking globbed directories... [2/65] Building CXX object CMakeFiles/Hyprland.dir/src/debug/HyprDebugOverlay.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/debug/HyprDebugOverlay.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/debug/HyprDebugOverlay.cpp.o -MF CMakeFiles/Hyprland.dir/src/debug/HyprDebugOverlay.cpp.o.d -o CMakeFiles/Hyprland.dir/src/debug/HyprDebugOverlay.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/debug/HyprDebugOverlay.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/WLClasses.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/Monitor.hpp:5, from /home/andrew/HyprSource/hyprland-source/src/debug/HyprDebugOverlay.hpp:4, from /home/andrew/HyprSource/hyprland-source/src/debug/HyprDebugOverlay.cpp:1: /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ [3/65] Building CXX object CMakeFiles/Hyprland.dir/src/events/Monitors.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/events/Monitors.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/events/Monitors.cpp.o -MF CMakeFiles/Hyprland.dir/src/events/Monitors.cpp.o.d -o CMakeFiles/Hyprland.dir/src/events/Monitors.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/events/Monitors.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/events/../config/../Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/events/../config/ConfigManager.hpp:13, from /home/andrew/HyprSource/hyprland-source/src/events/../Compositor.hpp:10, from /home/andrew/HyprSource/hyprland-source/src/events/Monitors.cpp:1: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ [4/65] Building CXX object CMakeFiles/Hyprland.dir/src/debug/HyprNotificationOverlay.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/debug/HyprNotificationOverlay.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/debug/HyprNotificationOverlay.cpp.o -MF CMakeFiles/Hyprland.dir/src/debug/HyprNotificationOverlay.cpp.o.d -o CMakeFiles/Hyprland.dir/src/debug/HyprNotificationOverlay.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/debug/HyprNotificationOverlay.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/WLClasses.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/Monitor.hpp:5, from /home/andrew/HyprSource/hyprland-source/src/debug/HyprNotificationOverlay.hpp:5, from /home/andrew/HyprSource/hyprland-source/src/debug/HyprNotificationOverlay.cpp:1: /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../helpers/../helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ [5/65] Building CXX object CMakeFiles/Hyprland.dir/src/Window.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/Window.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/Window.cpp.o -MF CMakeFiles/Hyprland.dir/src/Window.cpp.o.d -o CMakeFiles/Hyprland.dir/src/Window.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/Window.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/Window.cpp:1: /home/andrew/HyprSource/hyprland-source/src/helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ [6/65] Building CXX object CMakeFiles/Hyprland.dir/src/debug/Log.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/debug/Log.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/debug/Log.cpp.o -MF CMakeFiles/Hyprland.dir/src/debug/Log.cpp.o.d -o CMakeFiles/Hyprland.dir/src/debug/Log.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/debug/Log.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/debug/../config/../Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/debug/../config/ConfigManager.hpp:13, from /home/andrew/HyprSource/hyprland-source/src/debug/../Compositor.hpp:10, from /home/andrew/HyprSource/hyprland-source/src/debug/Log.cpp:3: /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/Log.cpp: In function ‘void Debug::wlrLog(wlr_log_importance, const char*, __va_list_tag*)’: /home/andrew/HyprSource/hyprland-source/src/debug/Log.cpp:18:14: warning: ignoring return value of ‘int vasprintf(char**, const char*, __va_list_tag*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 18 | vasprintf(&outputStr, fmt, args); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/Log.cpp: In function ‘void Debug::log(LogLevel, const char*, ...)’: /home/andrew/HyprSource/hyprland-source/src/debug/Log.cpp:70:14: warning: ignoring return value of ‘int vasprintf(char**, const char*, __va_list_tag*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 70 | vasprintf(&outputStr, fmt, args); | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ [7/65] Building CXX object CMakeFiles/Hyprland.dir/src/events/Layers.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/events/Layers.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/events/Layers.cpp.o -MF CMakeFiles/Hyprland.dir/src/events/Layers.cpp.o.d -o CMakeFiles/Hyprland.dir/src/events/Layers.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/events/Layers.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/events/../config/../Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/events/../config/ConfigManager.hpp:13, from /home/andrew/HyprSource/hyprland-source/src/events/../Compositor.hpp:10, from /home/andrew/HyprSource/hyprland-source/src/events/Layers.cpp:1: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ [8/65] Building CXX object CMakeFiles/Hyprland.dir/src/debug/HyprCtl.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/debug/HyprCtl.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/debug/HyprCtl.cpp.o -MF CMakeFiles/Hyprland.dir/src/debug/HyprCtl.cpp.o.d -o CMakeFiles/Hyprland.dir/src/debug/HyprCtl.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/debug/HyprCtl.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/debug/../config/../Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/debug/../config/ConfigManager.hpp:13, from /home/andrew/HyprSource/hyprland-source/src/debug/../Compositor.hpp:10, from /home/andrew/HyprSource/hyprland-source/src/debug/HyprCtl.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/debug/HyprCtl.cpp:1: /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/../config/../helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/debug/HyprCtl.cpp: In function ‘int hyprCtlFDTick(int, uint32_t, void*)’: /home/andrew/HyprSource/hyprland-source/src/debug/HyprCtl.cpp:1313:10: warning: ignoring return value of ‘ssize_t write(int, const void*, size_t)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 1313 | write(ACCEPTEDCONNECTION, reply.c_str(), reply.length()); | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [9/65] Building CXX object CMakeFiles/Hyprland.dir/src/events/Devices.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/events/Devices.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/events/Devices.cpp.o -MF CMakeFiles/Hyprland.dir/src/events/Devices.cpp.o.d -o CMakeFiles/Hyprland.dir/src/events/Devices.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/events/Devices.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/events/../config/../Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/events/../config/ConfigManager.hpp:13, from /home/andrew/HyprSource/hyprland-source/src/events/../Compositor.hpp:10, from /home/andrew/HyprSource/hyprland-source/src/events/Devices.cpp:3: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ [10/65] Building CXX object CMakeFiles/Hyprland.dir/src/events/Misc.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/events/Misc.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/events/Misc.cpp.o -MF CMakeFiles/Hyprland.dir/src/events/Misc.cpp.o.d -o CMakeFiles/Hyprland.dir/src/events/Misc.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/events/Misc.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/events/../config/../Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/events/../config/ConfigManager.hpp:13, from /home/andrew/HyprSource/hyprland-source/src/events/../Compositor.hpp:10, from /home/andrew/HyprSource/hyprland-source/src/events/Misc.cpp:3: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/events/../config/../helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ [11/65] Building CXX object CMakeFiles/Hyprland.dir/src/config/ConfigManager.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/config/ConfigManager.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -O3 -DNDEBUG -O3 -Wall -Wextra -Wno-unused-parameter -Wno-unused-value -Wno-missing-field-initializers -Wno-narrowing -Wno-pointer-arith -pthread -std=gnu++23 -MD -MT CMakeFiles/Hyprland.dir/src/config/ConfigManager.cpp.o -MF CMakeFiles/Hyprland.dir/src/config/ConfigManager.cpp.o.d -o CMakeFiles/Hyprland.dir/src/config/ConfigManager.cpp.o -c /home/andrew/HyprSource/hyprland-source/src/config/ConfigManager.cpp In file included from /home/andrew/HyprSource/hyprland-source/src/config/../helpers/AnimatedVariable.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/config/../Window.hpp:6, from /home/andrew/HyprSource/hyprland-source/src/config/ConfigManager.hpp:13, from /home/andrew/HyprSource/hyprland-source/src/config/ConfigManager.cpp:1: /home/andrew/HyprSource/hyprland-source/src/config/../helpers/AnimatedVariable.hpp: In member function ‘bool CAnimatedVariable::isBeingAnimated()’: /home/andrew/HyprSource/hyprland-source/src/config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/config/../helpers/AnimatedVariable.hpp:149:22: note: in expansion of macro ‘UNREACHABLE’ 149 | default: UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/config/../helpers/AnimatedVariable.hpp:152:9: note: in expansion of macro ‘UNREACHABLE’ 152 | UNREACHABLE(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/config/../helpers/AnimatedVariable.hpp: In member function ‘void CAnimatedVariable::warp(bool)’: /home/andrew/HyprSource/hyprland-source/src/config/../helpers/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/config/../helpers/AnimatedVariable.hpp:171:22: note: in expansion of macro ‘UNREACHABLE’ 171 | default: UNREACHABLE(); | ^~~~~~~~~~~ In file included from /home/andrew/HyprSource/hyprland-source/src/config/../managers/../plugins/PluginSystem.hpp:3, from /home/andrew/HyprSource/hyprland-source/src/config/../managers/../Compositor.hpp:29, from /home/andrew/HyprSource/hyprland-source/src/config/../managers/KeybindManager.hpp:5, from /home/andrew/HyprSource/hyprland-source/src/config/ConfigManager.cpp:2: /home/andrew/HyprSource/hyprland-source/src/config/ConfigManager.cpp: In member function ‘void CConfigManager::configSetValueSafe(const string&, const string&)’: /home/andrew/HyprSource/hyprland-source/src/config/../managers/../plugins/../defines.hpp:73:28: error: ‘unreachable’ is not a member of ‘std’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ /home/andrew/HyprSource/hyprland-source/src/config/../managers/../plugins/../defines.hpp:73:28: note: in definition of macro ‘UNREACHABLE’ 73 | #define UNREACHABLE() std::unreachable(); | ^~~~~~~~~~~ [12/65] Building CXX object CMakeFiles/Hyprland.dir/src/Compositor.cpp.o FAILED: CMakeFiles/Hyprland.dir/src/Compositor.cpp.o /usr/bin/c++ -DGIT_BRANCH=\"\" -DGIT_COMMIT_HASH=\"\" -DGIT_COMMIT_MESSAGE=\"\" -DGIT_DIRTY=\"dirty\" -DHyprland_EXPORTS -DUSES_SYSTEMD -DWLR_USE_UNSTABLE -I/home/andrew/HyprSource/hyprland-source/. -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/include -I/home/andrew/HyprSource/hyprland-source/subprojects/wlroots/build/include -I/home/andrew/HyprSource/hyprland-source/subprojects/udis86 -isystem /usr/local/include/libdrm -isystem /usr/local/include/pixman-1 -isystem /usr/include/pango-1.0 -isystem /usr/include/harfbuzz -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/fribidi -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/l

@MartinFillon
Copy link

@madushan1000
Copy link

You need gcc-13, g++-13, and also build libinput from source to get latest head building on ubuntu 23.04.

@Long5hot
Copy link

Tried to intsall libwlroots, still not sure how to handle below error..

sudo make install 10s
make clear
make[1]: Entering directory '/home/krushnp/hyprland/hyprland-source'
rm -rf build
rm -f *.o *-protocol.h *-protocol.c
rm -f ./hyprctl/hyprctl
rm -rf ./subprojects/wlroots/build
make[1]: Leaving directory '/home/krushnp/hyprland/hyprland-source'
make fixwlr
make[1]: Entering directory '/home/krushnp/hyprland/hyprland-source'
sed -i -E 's/(soversion = 12)([^032]|$)/soversion = 12032/g' subprojects/wlroots/meson.build
rm -rf ./subprojects/wlroots/build
make[1]: Leaving directory '/home/krushnp/hyprland/hyprland-source'
cd ./subprojects/wlroots && meson setup build/ --buildtype=release && ninja -C build/ && cp ./build/libwlroots.so.12032 /usr/lib/ || echo "Could not install libwlroots to /usr/lib/libwlroots.so.12032"
The Meson build system
Version: 0.61.2
Source dir: /home/krushnp/hyprland/hyprland-source/subprojects/wlroots
Build dir: /home/krushnp/hyprland/hyprland-source/subprojects/wlroots/build
Build type: native build
Project name: wlroots
Project version: 0.17.0-dev
C compiler for the host machine: cc (gcc 11.4.0 "cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0")
C linker for the host machine: cc ld.bfd 2.38
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports arguments -Wundef: YES
Compiler for C supports arguments -Wlogical-op: YES
Compiler for C supports arguments -Wmissing-include-dirs: YES
Compiler for C supports arguments -Wold-style-definition: YES
Compiler for C supports arguments -Wpointer-arith: YES
Compiler for C supports arguments -Winit-self: YES
Compiler for C supports arguments -Wstrict-prototypes: YES
Compiler for C supports arguments -Wimplicit-fallthrough=2: YES
Compiler for C supports arguments -Wendif-labels: YES
Compiler for C supports arguments -Wstrict-aliasing=2: YES
Compiler for C supports arguments -Woverflow: YES
Compiler for C supports arguments -Wmissing-prototypes: YES
Compiler for C supports arguments -Walloca: YES
Compiler for C supports arguments -Wno-missing-braces: YES
Compiler for C supports arguments -Wno-missing-field-initializers: YES
Compiler for C supports arguments -Wno-unused-parameter: YES
Compiler for C supports arguments -fmacro-prefix-map=/prefix/to/hide=: YES
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Dependency wayland-server found: NO found 1.20.0 but need: '>=1.21'
Found CMake: /usr/bin/cmake (3.22.1)
Run-time dependency wayland-server found: NO (tried pkgconfig and cmake)
Looking for a fallback subproject for the dependency wayland-server

meson.build:105:0: ERROR: Neither a subproject directory nor a wayland.wrap file was found.

A full log can be found at /home/krushnp/hyprland/hyprland-source/subprojects/wlroots/build/meson-logs/meson-log.txt
Could not install libwlroots to /usr/lib/libwlroots.so.12032
cd subprojects/udis86 && cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -S . -B./build -G Ninja && cmake --build ./build --config Release --target all -j8 && cd ../..
Not searching for unused variables given on the command line.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/krushnp/hyprland/hyprland-source/subprojects/udis86/build
ninja: no work to do.
make protocols
make[1]: Entering directory '/home/krushnp/hyprland/hyprland-source'
/usr/bin/wayland-scanner private-code
//usr/share/wayland-protocols/stable/xdg-shell/xdg-shell.xml xdg-shell-protocol.c
/usr/bin/wayland-scanner server-header
//usr/share/wayland-protocols/stable/xdg-shell/xdg-shell.xml xdg-shell-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o xdg-shell-protocol.o xdg-shell-protocol.c
/usr/bin/wayland-scanner private-code
protocols/wlr-layer-shell-unstable-v1.xml wlr-layer-shell-unstable-v1-protocol.c
/usr/bin/wayland-scanner server-header
protocols/wlr-layer-shell-unstable-v1.xml wlr-layer-shell-unstable-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o wlr-layer-shell-unstable-v1-protocol.o wlr-layer-shell-unstable-v1-protocol.c
/usr/bin/wayland-scanner private-code
protocols/wlr-screencopy-unstable-v1.xml wlr-screencopy-unstable-v1-protocol.c
/usr/bin/wayland-scanner server-header
protocols/wlr-screencopy-unstable-v1.xml wlr-screencopy-unstable-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o wlr-screencopy-unstable-v1-protocol.o wlr-screencopy-unstable-v1-protocol.c
/usr/bin/wayland-scanner private-code
protocols/idle.xml idle-protocol.c
/usr/bin/wayland-scanner server-header
protocols/idle.xml idle-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o idle-protocol.o idle-protocol.c
/usr/bin/wayland-scanner private-code
protocols/ext-workspace-unstable-v1.xml ext-workspace-unstable-v1-protocol.c
/usr/bin/wayland-scanner server-header
protocols/ext-workspace-unstable-v1.xml ext-workspace-unstable-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o ext-workspace-unstable-v1-protocol.o ext-workspace-unstable-v1-protocol.c
/usr/bin/wayland-scanner private-code
protocols/pointer-constraints-unstable-v1.xml pointer-constraints-unstable-v1-protocol.c
/usr/bin/wayland-scanner server-header
protocols/pointer-constraints-unstable-v1.xml pointer-constraints-unstable-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o pointer-constraints-unstable-v1-protocol.o pointer-constraints-unstable-v1-protocol.c
/usr/bin/wayland-scanner private-code
protocols/tablet-unstable-v2.xml tablet-unstable-v2-protocol.c
/usr/bin/wayland-scanner server-header
protocols/tablet-unstable-v2.xml tablet-unstable-v2-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o tablet-unstable-v2-protocol.o tablet-unstable-v2-protocol.c
/usr/bin/wayland-scanner private-code
protocols/wlr-output-power-management-unstable-v1.xml wlr-output-power-management-unstable-v1-protocol.c
/usr/bin/wayland-scanner server-header
protocols/wlr-output-power-management-unstable-v1.xml wlr-output-power-management-unstable-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o wlr-output-power-management-unstable-v1-protocol.o wlr-output-power-management-unstable-v1-protocol.c
/usr/bin/wayland-scanner private-code
//usr/share/wayland-protocols/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml linux-dmabuf-unstable-v1-protocol.c
/usr/bin/wayland-scanner server-header
//usr/share/wayland-protocols/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml linux-dmabuf-unstable-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o linux-dmabuf-unstable-v1-protocol.o linux-dmabuf-unstable-v1-protocol.c
/usr/bin/wayland-scanner private-code
subprojects/hyprland-protocols/protocols/hyprland-toplevel-export-v1.xml hyprland-toplevel-export-v1-protocol.c
/usr/bin/wayland-scanner server-header
subprojects/hyprland-protocols/protocols/hyprland-toplevel-export-v1.xml hyprland-toplevel-export-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o hyprland-toplevel-export-v1-protocol.o hyprland-toplevel-export-v1-protocol.c
/usr/bin/wayland-scanner private-code
protocols/wlr-foreign-toplevel-management-unstable-v1.xml wlr-foreign-toplevel-management-unstable-v1-protocol.c
/usr/bin/wayland-scanner server-header
protocols/wlr-foreign-toplevel-management-unstable-v1.xml wlr-foreign-toplevel-management-unstable-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o wlr-foreign-toplevel-management-unstable-v1-protocol.o wlr-foreign-toplevel-management-unstable-v1-protocol.c
/usr/bin/wayland-scanner private-code
//usr/share/wayland-protocols/staging/fractional-scale/fractional-scale-v1.xml fractional-scale-v1-protocol.c
/usr/bin/wayland-scanner server-header
//usr/share/wayland-protocols/staging/fractional-scale/fractional-scale-v1.xml fractional-scale-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o fractional-scale-v1-protocol.o fractional-scale-v1-protocol.c
/usr/bin/wayland-scanner private-code
//usr/share/wayland-protocols/unstable/text-input/text-input-unstable-v1.xml text-input-unstable-v1-protocol.c
/usr/bin/wayland-scanner server-header
//usr/share/wayland-protocols/unstable/text-input/text-input-unstable-v1.xml text-input-unstable-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o text-input-unstable-v1-protocol.o text-input-unstable-v1-protocol.c
/usr/bin/wayland-scanner private-code
subprojects/hyprland-protocols/protocols/hyprland-global-shortcuts-v1.xml hyprland-global-shortcuts-v1-protocol.c
/usr/bin/wayland-scanner server-header
subprojects/hyprland-protocols/protocols/hyprland-global-shortcuts-v1.xml hyprland-global-shortcuts-v1-protocol.h
cc -g -Wall -Wextra -Werror -Wno-unused-parameter -Wno-sign-compare -Wno-unused-function -Wno-unused-variable -Wno-unused-result -Wdeclaration-after-statement -DXWAYLAND -I. -DWLR_USE_UNSTABLE -std=c99 -I/usr/include/libdrm -I/usr/include/pixman-1 -c -o hyprland-global-shortcuts-v1-protocol.o hyprland-global-shortcuts-v1-protocol.c
make[1]: Leaving directory '/home/krushnp/hyprland/hyprland-source'
make release
make[1]: Entering directory '/home/krushnp/hyprland/hyprland-source'
cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -S . -B ./build -G Ninja
Not searching for unused variables given on the command line.
-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Gathering git info
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
-- Configuring Hyprland in Release with CMake
-- Checking deps...
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2")
-- Checking for modules 'wayland-server;wayland-client;wayland-cursor;wayland-protocols;cairo;libdrm;egl;xkbcommon;libinput;pango;pangocairo'
-- Found wayland-server, version 1.20.0
-- Found wayland-client, version 1.20.0
-- Found wayland-cursor, version 1.20.0
-- Found wayland-protocols, version 1.25
-- Found cairo, version 1.16.0
-- Found libdrm, version 2.4.113
-- Found egl, version 1.5
-- Found xkbcommon, version 1.4.0
-- Found libinput, version 1.20.0
-- Found pango, version 1.50.6
-- Found pangocairo, version 1.50.6
-- Looking for backtrace in execinfo
-- Looking for backtrace in execinfo - not found
-- XWAYLAND Enabled (NO_XWAYLAND not defined) checking deps...
-- Checking for module 'xcb'
-- Found xcb, version 1.14
-- SYSTEMD support is requested (NO_SYSTEMD not defined) checking deps...
-- Checking for module 'libsystemd'
-- Found libsystemd, version 249
-- Looking for systemd/sd-daemon.h
-- Looking for systemd/sd-daemon.h - found
-- Setting link libraries
-- Configuring done
-- Generating done
-- Build files have been written to: /home/krushnp/hyprland/hyprland-source/build
cmake --build ./build --config Release --target all -j8
[0/2] Re-checking globbed directories...
ninja: error: '../subprojects/wlroots/build/libwlroots.so.12032', needed by 'Hyprland', missing and no known rule to make it
make[1]: *** [Makefile:164: release] Error 1
make[1]: Leaving directory '/home/krushnp/hyprland/hyprland-source'
make: *** [Makefile:191: install] Error 2

@MartinFillon
Copy link

@Long5hot
Copy link

Long5hot commented Sep 16, 2023

@MartinFillon , After doing that started with the manual installation..

dpkg gives the following error..

sudo dpkg -i --force-overwrite ./hyprland_0.29.1-99pika1_amd64.deb

Selecting previously unselected package hyprland.
(Reading database ... 245353 files and directories currently installed.)
Preparing to unpack .../hyprland_0.29.1-99pika1_amd64.deb ...
Unpacking hyprland (0.29.1-99pika1) ...
dpkg: dependency problems prevent configuration of hyprland:
hyprland depends on libdisplay-info0 (>= 0.1.1); however:
Package libdisplay-info0 is not installed.
hyprland depends on libdrm2 (>= 2.4.114); however:
Version of libdrm2:amd64 on system is 2.4.113-2~ubuntu0.22.04.1.
hyprland depends on libinput10 (>= 1.23.0); however:
Version of libinput10:amd64 on system is 1.20.0-1ubuntu0.3.
hyprland depends on libliftoff0 (>= 0.4.1); however:
Package libliftoff0 is not installed.
hyprland depends on libxcb-xfixes0 (>= 1.15); however:
Version of libxcb-xfixes0:amd64 on system is 1.14-3ubuntu3.
hyprland depends on libxcb-xinput0 (>= 1.15); however:
Version of libxcb-xinput0:amd64 on system is 1.14-3ubuntu3.

dpkg: error processing package hyprland (--install):
dependency problems - leaving unconfigured
Processing triggers for man-db (2.10.2-1) ...
Errors were encountered while processing:
hyprland

@MartinFillon
Copy link

you need to search the repos of pikaos almost all the deps are in it
@Vertecedoc4545 can you add these repos links to the gist because they are stable

@salopst
Copy link

salopst commented Oct 18, 2023

Super useful. Many thanks!

@hmajid2301
Copy link

hmajid2301 commented Nov 14, 2023

I've been building a Hyprland deb package for PikaOS (which is a ubuntu based distro) so anyone struggling you could grab the .deb from here and install it with dpkg: https://ppa.pika-os.com/pool/main/h/hyprland/

We also have debs for all the libs required to build it and runtime ones. So you might want to add our mirror to make it easier.
Thank you so much for sharing this. I was able to use this to Install Hyprland.

I am running Ubuntu 22.04. I installed Hyprland up by downloading pika-sources.deb, https://ppa.pika-os.com/dists/lunar/pika-sources.deb.

⚠️ ⚠️ ⚠️ This is a very hacky way to install it and your mileage may vary. Make sure you understand what is going on before copying these steps, but this worked for me.

Installing it manually using dpkg i.e. `sudo dpkg -i ./pika-sources.deb`, then doing:

(There may be a few other files you need to copy, such as the GPG key in the deb)

dpkg-deb --fsys-tarfile pika-sources.deb | tar xv
sudo cp ./usr/share/etc/apt/source.list.d/system.sources /etc/apt/sources.list.d/system.sources
sudo apt update
sudo apt install hyprland xdg-desktop-portal-hyprland -y

# To avoid needing to do 1600+ updates because this is using 23.04 sources I removed the source file
sudo rm /etc/apt/sources.list.d/system.sources

Edit: Thanks to @neilbags for raising the issue with my original post should've been more careful!

Then I removed the Pika source because I didn't want to risk breaking my system by upgrading 1600 packages 😓. Because lunar is based on Ubuntu 23.04.

And don't forget to revert your sources.list file back to this: https://gist.githubusercontent.com/hakerdefo/9c99e140f543b5089e32176fe8721f5f/raw/7ac6ccf882bb0d39297962f0baedce5721c9be65/sources.list

@neilbags
Copy link

I am running Ubuntu 22.04. I installed Hyprland up by downloading pika-sources.deb, https://ppa.pika-os.com/dists/lunar/pika-sources.deb.

Just a warning to everyone else - installing this deb wipes out your /etc/apt/sources.list

@hmajid2301
Copy link

hmajid2301 commented Nov 20, 2023

Just a warning to everyone else - installing this deb wipes out your /etc/apt/sources.list

Apologies, I missed this, thanks for raising have updated my post above.

Thanks for raising!!!!

@itsmenewbie03
Copy link

Just a warning to everyone else - installing this deb wipes out your /etc/apt/sources.list

Apologies, I missed this, thanks for raising have updated my post above.

Thanks for raising!!!!

did it worked without issues?

@itsmenewbie03
Copy link

I am running Ubuntu 22.04. I installed Hyprland up by downloading pika-sources.deb, https://ppa.pika-os.com/dists/lunar/pika-sources.deb.

Just a warning to everyone else - installing this deb wipes out your /etc/apt/sources.list

if it gets wiped out what will happen then? what should be done?
i'm sorry for a dumb a question, i'm new to linux

@neilbags
Copy link

neilbags commented Dec 3, 2023

I am running Ubuntu 22.04. I installed Hyprland up by downloading pika-sources.deb, https://ppa.pika-os.com/dists/lunar/pika-sources.deb.

Just a warning to everyone else - installing this deb wipes out your /etc/apt/sources.list

if it gets wiped out what will happen then? what should be done? i'm sorry for a dumb a question, i'm new to linux

Restore from backups

@itsmenewbie03
Copy link

I am running Ubuntu 22.04. I installed Hyprland up by downloading pika-sources.deb, https://ppa.pika-os.com/dists/lunar/pika-sources.deb.

Just a warning to everyone else - installing this deb wipes out your /etc/apt/sources.list

if it gets wiped out what will happen then? what should be done? i'm sorry for a dumb a question, i'm new to linux

Restore from backups

so i just need to back up the original before proceeding, is that correct?

@neilbags
Copy link

neilbags commented Dec 3, 2023

so i just need to back up the original before proceeding, is that correct?

No I don't think installing this .deb is a good idea at all

@itsmenewbie03
Copy link

so i just need to back up the original before proceeding, is that correct?

No I don't think installing this .deb is a good idea at all

thanks for the warning then.

@ipg0
Copy link

ipg0 commented Dec 20, 2023

for anybody doing this now, you'll also need to build the latest version of https://github.com/marzer/tomlplusplus

@AlexandreSantAnaLangunno

I nedd help .
When I go to build it, it gives the following error:

17057964495713958182432883126367

@Heus-Sueh
Copy link

Heus-Sueh commented Feb 9, 2024

Could someone try to create a pkgbuild in MPR (makedeb repo):

https://mpr.makedeb.org/

makedeb pkgbuild example:

# Contributor: your_name <your_email>
pkgname=hyprland
pkgver=0.35.0
pkgrel=1
pkgdesc="a highly customizable dynamic tiling Wayland compositor"
license=('BSD')
arch=('amd64')
conflicts=('hyprland')
provides=('hyprland')
makedepends=('cmake' 'cmake-extras' 'meson' 'build-essential' 'ninja-build' 'wget')
depends=(
    'ca-certificates'
    'libasound2>=1.0.16'
    'libatk-bridge2.0-0>=2.5.3'
    'libatk1.0-0>=2.2.0'
    'libatspi2.0-0>=2.9.90'
    'libc6>=2.14'
    'libc6>=2.15'
    'libc6>=2.17'
    'libc6>=2.4'
    'libc6>=2.8'
    'libcairo2>=1.6.0'
    'libcups2>=1.6.0'
    'libcurl3-gnutls|libcurl3-nss|libcurl4|libcurl3'
    'libdbus-1-3>=1.5.12'
    'libdrm2>=2.4.38'
    'libexpat1>=2.0.1'
    'libgbm1>=8.10'
    'libglib2.0-0>=2.12.0'
    'libglib2.0-0>=2.39.4'
    'libgtk-3-0>=3.9.10'
    'libgtk-3-0>=3.9.10|libgtk-4-1'
    'libnspr4>=2:4.9-2'
    'libnss3>=2:3.22'
    'libnss3>=3.26'
    'libpango-1.0-0>=1.14.0'
    'libsecret-1-0>=0.18'
    'libstdc++6>=5'
    'libstdc++6>=5.2'
    'libstdc++6>=6'
    'libx11-6'
    'libx11-6>=2:1.4.99.1'
    'libxcb1>=1.9.2'
    'libxcomposite1>=1:0.4.4-1'
    'libxdamage1>=1:1.1'
    'libxext6'
    'libxfixes3'
    'libxkbcommon0>=0.4.1'
    'libxkbfile1'
    'libxrandr2'
    'xdg-utils>=1.0.2'
    'gettext'
    'gettext-base'
    'fontconfig'
    'libfontconfig-dev'
    'libffi-dev'
    'libxml2-dev'
    'libdrm-dev'
    'libxkbcommon-x11-dev'
    'libxkbregistry-dev'
    'libxkbcommon-dev'
    'libpixman-1-dev'
    'libudev-dev'
    'libseat-dev'
    'seatd'
    'libxcb-dri3-dev'
    'libegl-dev'
    'libgles2'
    'libegl1-mesa-dev'
    'glslang-tools'
    'libinput-bin'
    'libinput-dev'
    'libxcb-composite0-dev'
    'libavutil-dev'
    'libavcodec-dev'
    'libavformat-dev'
    'libxcb-ewmh2'
    'libxcb-ewmh-dev'
    'libxcb-present-dev'
    'libxcb-icccm4-dev'
    'libxcb-render-util0-dev'
    'libxcb-res0-dev'
    'libxcb-xinput-dev'
    'xdg-desktop-portal-wlr'
    'libtomlplusplus3'
)
optdepends=(
    'libvulkan1'
)

source=("https://github.com/hyprwm/Hyprland/releases/download/v${pkgver}/source-v${pkgver}.tar.gz")

sha256sums=('608192d9abab899d3ed787590f86da7dc18151d1618a3455ff25e580503d58cb')

# prepare
prepare() {

}

# build
build() {

}

# install 
package() {

}

# vim: set sw=4 expandtab:


@mohammedaouamri5
Copy link

thnx bro
just in

tar -xzvJf wayland-1.22.0.tar.xz

it should be

tar -xvJf wayland-1.22.0.tar.xz

jus remove the z

@BlueTree242
Copy link

I accidentally ran this on 22.04 now I can't get into any desktop environment it just sends me back to login after 1 second

@zanexGHG
Copy link

zanexGHG commented Mar 5, 2024

I accidentally ran this on 22.04 now I can't get into any desktop environment it just sends me back to login after 1 second

If I remember correctly alt + f2 will send you to the console where you can just uninstall hyprland and reinstall gnome. Shouldnt be too complicated. If you want the easier way you just save your data and reinstall linux

@BlueTree242
Copy link

Reinstalling gnome did absolutely nothing, I already reinstalled linux because it was messed up from the beginning, I was using plasma on Ubuntu so I switched to Kubuntu

@katabame
Copy link

katabame commented Apr 9, 2024

if anybody still trying to build Hyprland on Ubuntu here, I tried research some dependency issues and finally got working built artifact
the script that I used to build is this, I wish this one help you
https://gist.github.com/katabame/e368988c968278c83c19bd5f5b60f407

@YeesterPlus
Copy link

errors : hyprinstall.sh: line 15: cd: wayland-1.22.0: No such file or directory
mkdir: cannot create directory ‘build’: File exists
ninja: error: loading 'build.ninja': No such file or directory
hyprinstall.sh: line 27: cd: wayland-protocols-1.31: No such file or directory
mkdir: cannot create directory ‘build’: File exists
ninja: error: loading 'build.ninja': No such file or directory
chmod: cannot access 'hyprland-source': No such file or directory
hyprinstall.sh: line 40: cd: hyprland-source/: No such file or directory
sed: can't read config.mk: No such file or directory
make: *** No rule to make target 'install'. Stop.

@katabame
Copy link

katabame commented May 18, 2024

errors : hyprinstall.sh: line 15: cd: wayland-1.22.0: No such file or directory mkdir: cannot create directory ‘build’: File exists ninja: error: loading 'build.ninja': No such file or directory hyprinstall.sh: line 27: cd: wayland-protocols-1.31: No such file or directory mkdir: cannot create directory ‘build’: File exists ninja: error: loading 'build.ninja': No such file or directory chmod: cannot access 'hyprland-source': No such file or directory hyprinstall.sh: line 40: cd: hyprland-source/: No such file or directory sed: can't read config.mk: No such file or directory make: *** No rule to make target 'install'. Stop.

@YeesterPlus seems you're using self-written install script (hyprinstall.sh)
as error said, needed directory doen't found. this may caused by working directory discrepancy or missing dependencies.

here's script that I used to build hyprland v0.4.0 on Ubuntu noble. if you're still stucking, please try this.
https://github.com/katabame/Ubuntu-Hyprland/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment