Skip to content

Instantly share code, notes, and snippets.

@Vertecedoc4545
Last active February 26, 2025 16:30
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 !!

@ARTempest
Copy link

When i try to run the sudo make install this happens:

make clear
make[1]: Entering directory '/home/antuan/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/antuan/HyprSource/hyprland-source'
make fixwlr
make[1]: Entering directory '/home/antuan/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/antuan/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: 1.3.2
Source dir: /home/antuan/HyprSource/hyprland-source/subprojects/wlroots
Build dir: /home/antuan/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 13.3.0 "cc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0")
C linker for the host machine: cc ld.bfd 2.42
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: YES (/usr/bin/pkg-config) 1.8.1
Run-time dependency wayland-server found: YES 1.22.0
Run-time dependency libdrm found: YES 2.4.122
Run-time dependency xkbcommon found: YES 1.6.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.31
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
Found CMake: /usr/bin/cmake (3.28.3)
Run-time dependency gbm found: NO (tried pkgconfig and cmake)
Run-time dependency glesv2 found: YES 3.2
Run-time dependency vulkan found: NO (tried pkgconfig and system)
Message: Required for vulkan renderer support.
Dependency pixman-1 found: YES 0.42.2 (cached)
Run-time dependency gbm found: NO (tried pkgconfig and cmake)
Run-time dependency libudev found: YES 255
Run-time dependency libseat found: YES 0.8.0
Build-time dependency hwdata found: YES 0.379
Run-time dependency libdisplay-info found: YES 0.1.1
Run-time dependency libliftoff found: NO (tried pkgconfig and cmake)
Looking for a fallback subproject for the dependency libliftoff
Neither a subproject directory nor a libliftoff.wrap file was found.
Subproject  libliftoff is buildable: NO (disabling)
Dependency libliftoff from subproject libliftoff found: NO (subproject failed to configure)
Run-time dependency libinput found: YES 1.25.0
Run-time dependency xcb found: YES 1.15
Run-time dependency xcb-dri3 found: YES 1.15
Run-time dependency xcb-present found: YES 1.15
Run-time dependency xcb-render found: YES 1.15
Run-time dependency xcb-renderutil found: YES 0.3.9
Run-time dependency xcb-shm found: NO (tried pkgconfig and cmake)
Message: Required for X11 backend support.
Run-time dependency wayland-client found: YES 1.22.0
Run-time dependency xwayland found: YES 23.2.6
Dependency xcb found: YES 1.15 (cached)
Run-time dependency xcb-composite found: YES 1.15
Run-time dependency xcb-ewmh found: YES 0.4.1
Run-time dependency xcb-icccm found: YES 0.4.1
Dependency xcb-render found: YES 1.15 (cached)
Run-time dependency xcb-res found: YES 1.15
Run-time dependency xcb-xfixes found: YES 1.15
Run-time dependency xcb-errors found: NO (tried pkgconfig and cmake)
Message: Required for printing X11 errors.
Checking for function "xcb_xfixes_set_client_disconnect_mode" with dependencies xcb, xcb-composite, xcb-ewmh, xcb-icccm, xcb-render, xcb-res, xcb-xfixes, xcb-errors: YES 
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.43
Dependency egl found: YES 1.5 (cached)
Dependency glesv2 found: YES 3.2 (cached)
Run-time dependency gbm found: NO (tried pkgconfig and cmake)
Run-time dependency libavutil found: YES 58.29.100
Run-time dependency libavcodec found: YES 60.31.102
Run-time dependency libavformat found: YES 60.16.100
Dependency libdrm found: YES 2.4.122 (cached)
Has header "libavutil/hwcontext_drm.h" with dependency libavutil: YES 
Build targets in project: 151

wlroots 0.17.0-dev

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

  Subprojects
    libliftoff      : NO Neither a subproject directory nor a libliftoff.wrap file was found.

  User defined options
    buildtype       : release

Found ninja-1.11.1 at /usr/bin/ninja
ninja: Entering directory `build/'
[397/397] Linking target examples/scene-graph
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 -j16 && cd ../..
Not searching for unused variables given on the command line.
-- The C compiler identification is GNU 13.3.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
-- Found Python3: /usr/bin/python3 (found version "3.12.3") found components: Interpreter 
Building itab.c/itab.h...
-- Configuring done (0.9s)
-- Generating done (0.0s)
-- Build files have been written to: /home/antuan/HyprSource/hyprland-source/subprojects/udis86/build
[7/7] Linking C static library libudis86/liblibudis86.a
make protocols
make[1]: Entering directory '/home/antuan/HyprSource/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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -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
Package wlroots was not found in the pkg-config search path.
Perhaps you should add the directory containing `wlroots.pc'
to the PKG_CONFIG_PATH environment variable
Package 'wlroots', required by 'virtual:world', not found
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        -c -o hyprland-global-shortcuts-v1-protocol.o hyprland-global-shortcuts-v1-protocol.c
make[1]: Leaving directory '/home/antuan/HyprSource/hyprland-source'
make release
make[1]: Entering directory '/home/antuan/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 13.3.0
-- The CXX compiler identification is GNU 13.3.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...
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1") 
-- Checking for modules 'wayland-server;wayland-client;wayland-cursor;wayland-protocols;cairo;libdrm;egl;xkbcommon;libinput;pango;pangocairo'
--   Package 'cairo', required by 'virtual:world', not found
--   Package 'pango', required by 'virtual:world', not found
--   Package 'pangocairo', required by 'virtual:world', not found
CMake Error at /usr/share/cmake-3.28/Modules/FindPkgConfig.cmake:619 (message):
  The following required packages were not found:

   - cairo
   - pango
   - pangocairo

Call Stack (most recent call first):
  /usr/share/cmake-3.28/Modules/FindPkgConfig.cmake:841 (_pkg_check_modules_internal)
  CMakeLists.txt:69 (pkg_check_modules)


-- Configuring incomplete, errors occurred!
make[1]: *** [Makefile:163: release] Error 1
make[1]: Leaving directory '/home/antuan/HyprSource/hyprland-source'
make: *** [Makefile:191: install] Error 2

here are some pictures:

image
image
image
image
image
image
image

Does anyone know why?

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