Package Details: wayfire-git 0.7.2.r191.g9458f589-1

Git Clone URL: (read-only, click to copy)
Package Base: wayfire-git
Description: 3D wayland compositor
Upstream URL:
Keywords: compositor wayfire wayland wm
Licenses: MIT
Conflicts: wayfire-git, wf-config, wf-config-git, wlroots, wlroots-git
Provides: wayfire, wf-config-git, wlroots-git
Submitter: SolarAquarion
Maintainer: SolarAquarion (kugelblitz)
Last Packager: SolarAquarion
Votes: 7
Popularity: 1.01
First Submitted: 2018-06-28 12:32 (UTC)
Last Updated: 2022-03-06 03:16 (UTC)

Required by (26)

Sources (1)

Latest Comments

HVLife commented on 2022-05-03 14:06 (UTC)

Here is pkgbuild, if you want to install wayfire-git with wlroots package and wf-config-git. Just because I have sway on my system...

# Maintainer: Solomon Choina <>
# Co-Maintainer: Frank Tao <>
pkgdesc="3D wayland compositor"
depends=('cairo' 'pango' 'doctest' 'freetype2' 'glm' 'libdrm' 'libevdev' 'libglvnd' 'libinput' 'libjpeg' 'libpng' 'libxkbcommon' 'libxml2' 'pixman' 'polkit' 'pkgconf' 'seatd' 'xcb-util-errors' 'xcb-util-renderutil' 'xcb-util-wm' 'xorg-xwayland' 'wayland' 'wayland-protocols')
makedepends=('git' 'glslang' 'meson' 'ninja' 'cmake' 'vulkan-headers')


pkgver() {
    cd "$srcdir/wayfire"
  tag=$(git tag -l | awk '/^[0-9.]+$/ {print $0} /^v{1}[0-9.]+$/ {print substr($0,2)}'|sort -n|tail -n1)
  printf "$tag.r%s.g%s" "$(git rev-list --count v${tag}..HEAD)" "$(git rev-parse --short HEAD)"

build() {
    cd "$srcdir/wayfire/"
    arch-meson \
        --buildtype=release \
        -Dxwayland=auto \
        -Duse_system_wlroots=enabled \
        -Duse_system_wfconfig=enabled \
        -Db_lto=true \
        -Db_pie=true \
    ninja -C build
    sed "/WF_SRC_DIR/d" -i build/config.h

package() {
    cd "$srcdir/wayfire"
    DESTDIR="$pkgdir/" ninja -C build install
    install -Dm644 wayfire.desktop $pkgdir/usr/share/wayland-sessions/wayfire.desktop 
    cp wayfire.ini $pkgdir/usr/share

mr_spuck commented on 2022-01-30 00:38 (UTC)

Could you please also add 'wlroots' to the provides array ?

nuc commented on 2022-01-25 04:11 (UTC)

I have the same issue as @Tom_B

Tom_B commented on 2022-01-08 18:32 (UTC)

This conflicts with wlroots but wlroots is a dependency for wf-shell-git which means we can't currently install wayfire-git and wf-shell-git at the same time. What is the best way to solve this conflict?

kugelblitz commented on 2022-01-03 14:13 (UTC)

@lama_reborn your requests have been implemented.

lama_reborn commented on 2021-12-02 17:24 (UTC) (edited on 2021-12-02 17:32 (UTC) by lama_reborn)

I would to point out a minor issue here. If you use wlroots-git package you might end up not being able to compile wayfire. Reason is stated on webpage - they are not able to precisely keep up with upstream wlroots project. For that reason they created git subproject in wayfire git that points to the latest wlroots commit wayfire functions with. Here you can see it:

After finding that out and not being entirely happy about this package I prepared another AUR package that compiles with build-type=release (which turns on compiler optimizations), compiles wlroots subproject and wf-config subproject and has X11 as optional dependency. Since it was promptly marked as duplicate and deleted from AUR I am not going to bother arguing that and will just put the changes here. Feel free to adopt parts of it or nothing at all.

pkgdesc="OpenGL wayland compositor - build with wayfire specific wlroots"
conflicts=("$pkgname" wayfire wayfire-git wlroots wlroots-git wf-config wf-config-git)
depends=('cairo' 'pango' 'freetype2' 'glm' \
'libdrm' 'libevdev' 'libglvnd' 'libinput' 'libjpeg' 'libpng' 'libxkbcommon' 'libxml2' \
'pixman' 'pkgconf' 'seatd' 'wayland' 'wayland-protocols')
makedepends=('git' 'meson' 'ninja' 'cmake')
optdepends=('xcb-util' 'xcb-util-renderutil' 'xcb-util-errors' 'xcb-util-wm' 'xorg-xwayland')
provides=("$pkgname" wlroots-git wf-config-git)

pkgver() {
    cd "$srcdir/wayfire"
    #ugly hack for getting version since the target repo is not very tidy
    git tag -l|awk '/^[0-9.]+$/ {print $0} /^v{1}[0-9.]+$/ {print substr($0,2)}'|sort -n|tail -n1


build() {
    cd "$srcdir/wayfire/"
    #using meson with almost all arch-meson opts because we need to pull wlroots from it's git and do not want auto-features enabled
    meson setup --prefix /usr \
            --libexecdir lib \
            --sbindir bin \
            --buildtype=release \
            -Dxwayland=auto \
            -Duse_system_wlroots=disabled \
            -Duse_system_wfconfig=disabled \
            -Db_lto=true \
            -Db_pie=true \
    ninja -C build
    #remove reference to build dir as pkgbuild complains about it
    sed "/WF_SRC_DIR/d" -i build/config.h

package() {
    cd "$srcdir/wayfire"
    DESTDIR="$pkgdir/" ninja -C build install
    install -Dm644 wayfire.desktop $pkgdir/usr/share/wayland-sessions/wayfire.desktop 
    cp wayfire.ini $pkgdir/usr/share

Also thanks for maintaining this.

kode54 commented on 2021-11-27 23:18 (UTC)

@cock Check /usr/bin/arch-meson, which this PKGBUILD uses, which already selects a buildtype appropriate for packaging.

cock commented on 2021-11-27 19:43 (UTC) (edited on 2021-11-27 19:45 (UTC) by cock)

can you please add: buildtype=release or otherwise starting wayfire takes ages(confirmed the problem is this) because it's a debug build

(please do this in your other packages too)

kugelblitz commented on 2021-11-18 20:56 (UTC)

Yup, the repo has been changed back to the original url.

CrezyDud commented on 2021-11-17 13:27 (UTC)

you can change the git repo back to 'git+' changes for wlroots have been merged

CrezyDud commented on 2021-10-30 13:31 (UTC)

version number is wrong keeps updating over and over, because the version number doesn't update

PedroHLC commented on 2021-10-19 18:14 (UTC)

The 0.7.x branch contains more commits to keep compatibility with wlroots 0.12, they are not meant for master.

That's why master is still tagging as 0.6.0.

SolarAquarion commented on 2021-09-30 17:22 (UTC)

Basically my feeling is that wayfire master wasn't tagged, only the 0.7.x branch is tagged

iTux commented on 2021-06-30 09:03 (UTC)

@ErikR: There is an open issue on the github repo:

ErikR commented on 2021-06-26 11:09 (UTC) (edited on 2021-06-26 11:12 (UTC) by ErikR)

I'm unable to build ERROR: Dependencies must be external dependencies. I've got wlroots-git installed for my sway session if that helps in any way.

Edit: The error doesn't appear when disabling -Duse_system_wlroots but conflicts with the system wlroots

snakeroot commented on 2021-04-22 22:20 (UTC)

I think line 24:

patch -Np1 -i ../1152.patch

needs to be

patch -Np1 -i ../update_build.patch

kode54 commented on 2021-01-04 07:31 (UTC) (edited on 2021-01-04 07:38 (UTC) by kode54)

Okay, you may want to change this to depend on wlroots and not wlroots-git. The git upstream of that package just broke a whole bunch of stuff affecting this package, and upstream for wayfire has now stated that from now on, they're no longer going to follow git wlroots and will just release and test against stable releases.

E: Disregard me, I misinterpreted a comment from IRC. They meant post-1.0. Which is looking like it will be a while off anyway.

Psilioxus commented on 2020-03-13 09:52 (UTC)

Also, why the use of arch-meson? See:

I don't have a strong opinion myself, but it seems that its existence is criticized. So, It might get pulled. If the build is not using it, it becomes more robust against this scenario. :)

Psilioxus commented on 2020-03-13 09:02 (UTC)

Currently the pkgbuild fails due to:

cp: cannot stat 'wayfire.ini.default': No such file or directory Perhaps, just remove this alltogether.

librewish commented on 2019-10-30 12:29 (UTC) (edited on 2019-10-30 12:30 (UTC) by librewish)

add wlroots-git as depend.instead of wlroots. as it requires git version to successfully build

AJSlye commented on 2019-06-04 00:57 (UTC) (edited on 2019-06-04 00:59 (UTC) by AJSlye)

Wayfire doesn't depend on gtk3, and thus it's PKGBUILD shouldn't either.

SolarAquarion commented on 2019-02-15 16:34 (UTC)

@ubone i should probably make a wf-shell pkgbuild and make it a optdepend

ubone commented on 2018-12-30 14:49 (UTC)

yes but in this case the wf-shell should also be present even though it's not required for it to work

Sesese9 commented on 2018-11-28 19:11 (UTC)

Considering there is a wayfire.desktop, maybe install the desktop file in wayland-sessions for login managers?

ubone commented on 2018-10-30 11:44 (UTC)

probably, not sure what would be best tbh, best to ask in the irc

SolarAquarion commented on 2018-10-30 11:29 (UTC)

I guess i just need to package it?

ubone commented on 2018-10-30 11:26 (UTC)

add wf-shell as optional?