Package Details: hyprland-git 0.44.0.r46.0baf166d-1

Git Clone URL: https://aur.archlinux.org/hyprland-git.git (read-only, click to copy)
Package Base: hyprland-git
Description: Hyprland is an independent, highly customizable, dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
Upstream URL: https://github.com/hyprwm/Hyprland
Licenses: BSD-3-Clause
Conflicts: hyprland
Provides: hyprland
Submitter: hertog
Maintainer: Vaxry (zjeffer, alba4k)
Last Packager: alba4k
Votes: 94
Popularity: 8.13
First Submitted: 2022-04-12 20:26 (UTC)
Last Updated: 2024-10-17 15:07 (UTC)

Dependencies (54)

Required by (57)

Sources (2)

Pinned Comments

zjeffer commented on 2024-07-17 16:50 (UTC) (edited on 2024-07-17 16:52 (UTC) by zjeffer)

Tips & tricks, common issues

using ccache/sccache

Precompiled headers (PCH) was enabled by default, this would most likely invalidate the compiler cache if any of the upstream header files change. To disable PCH, add the meson build option -Db_pch=false to build().

build() {
  ...
  meson setup build \
    -D b_pch=false
  ...
}

Build with specific pull requests

Use pick_mr <pull request number> at the end of prepare() to merge pull requests locally. For example, to merge https://github.com/hyprwm/Hyprland/pull/6268, use

prepare() {
    ...

    pick_mr 6268
}

Enable legacy renderer

In the build() function, add -D legacy_renderer=true to meson setup

Compilation errors

If you encounter compilation errors, try the following first:

  • If errors are raised by generated source files under protocols/, such as protocols/linux-dmabuf-v1.hpp, then rebuild or install hyprwayland-scanner-git;
  • Compile with makepkg --cleanbuild.

Symbol not declared

Errors like

  • <symbol> was not declared in this scope
  • <symbol> has not been declared

are usually caused by missing headers. Please consider reporting this upstream or creating a pull request if it has not already been done.

Latest Comments

« First ‹ Previous 1 .. 18 19 20 21 22 23 24 25 26 27 28 .. 30 Next › Last »

FabioLolix commented on 2023-07-08 10:29 (UTC)

The PKGBUILD guidelines refer to the general case and I don't think they account for the VCS case accurately. It seems like there is little to no consistency as to whether licenses are installed in $pkgname vs ${pkgname%-VCS}

That says twice that need to go in "$pkgdir/usr/share/licenses/${pkgname}" , namcap says that too

I just saw an example of the latter by one of the TUs in gitui-git.

That need to be corrected, just commented

docs and other stuff can go in ${pkgname%-VCS} or usual location

eclairevoyant commented on 2023-07-08 07:40 (UTC)

The PKGBUILD guidelines refer to the general case and I don't think they account for the VCS case accurately. It seems like there is little to no consistency as to whether licenses are installed in $pkgname vs ${pkgname%-VCS}. I just saw an example of the latter by one of the TUs in gitui-git.

To me it makes more sense to use ${pkgname%-VCS} because it aligns with the program/binary/package naming irrespective of whether it is the VCS version or not. It also is more consistent with where the config, docs, and libraries are located, otherwise we are just scattering files on the system

FabioLolix commented on 2023-07-08 07:22 (UTC)

License folder need to be "$pkgdir/usr/share/licenses/${pkgname}"

eclairevoyant commented on 2023-07-07 17:40 (UTC) (edited on 2023-07-07 17:41 (UTC) by eclairevoyant)

@FabioLolix do you mind adding me as comaintainer? I spent a fair bit of time on the PKGBUILD and have been waiting a month to maintain this. I also have a PKGBUILD already prepared so we don't have to wait on this.

eclairevoyant commented on 2023-07-06 21:35 (UTC) (edited on 2023-07-06 21:37 (UTC) by eclairevoyant)

@Mange Just use the PKGBUILD I posted earlier for now (https://gist.github.com/eclairevoyant/0007c44a52c715f243452d17362104b3#file-pkgbuild), hopefully this package will get disowned soon. I submitted the req about a month ago

@blackout I'll have to double check on that, thanks for reporting.

@mitch_mg2 not a "he" but thanks for also pointing this out

mitch_mg2 commented on 2023-07-06 21:35 (UTC)

@Mange

Scroll down and view eclairevoyant's comments. He has a gist.github.com link to a working modified PKGBUILD.

Mange commented on 2023-07-06 21:25 (UTC)

The PKGBUILD does not install any headers, making installation of plugins impossible.

See how upstream official package added it here: https://gitlab.archlinux.org/archlinux/packaging/packages/hyprland/-/compare/f79752b90bfa5c9aa736c733e023c79f89945054...f9191b6d98ce403f780a0d78b343823832f8c9a5

blackout commented on 2023-07-05 15:43 (UTC) (edited on 2023-07-14 21:44 (UTC) by blackout)

one super strange thing on my machine. I build this package multiple times a week because of the multiple updates. The package version is updated in arch i.e. hyprland-git r3035.981c71e6-1 but after a reboot when I run

❯ /usr/bin/hyprctl version
Hyprland, built from branch main at commit 07d7962c7f56c9928e494e4401806726d7ac5b05 dirty (swipe: fix mixup of r/m).
Tag: v0.26.0-85-g07d7962c

I get an old version. The displayed version is the one that I built manually with:

git clone --recursive https://github.com/hyprwm/Hyprland
cd Hyprland
sudo make install

I found out yesterday when a new windowrule has been introduced. From my hyprland.config windowrulev2=stayfocused,class:^jetbrains-(?!toolbox),floating:1 which didn't work, even though the commit / version from the AUR package should have enabled it.

I am curious if I am the only one.

UPDATE: After a make uninstall and installing the AUR hyprland-git package again the issue is resolved. maybe the different wlroots location caused the issue.

jeanlucthumm commented on 2023-07-01 00:20 (UTC)

If you get compilation errors like

FAILED: CMakeFiles/Hyprland.dir/src/config/ConfigManager.cpp.o 
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/13.1.1/../../../../include/c++/13.1.1/bits/stl_iterator.h:2618:35: error: missing 'typename' prior to dependent type name 'iterator_traits<_It>::iterator_category'
      { using iterator_category = iterator_traits<_It>::iterator_category; };

It could be because you're not using gcc (I was using clang which is not officially supported). To use gcc add this:

  export CC=gcc
  export CXX=g++

In build() before the meson call.