diff --git a/pkgs/applications/window-managers/wayfire/default.nix b/pkgs/applications/window-managers/wayfire/default.nix index 120ff6cf6973..f5238180f593 100644 --- a/pkgs/applications/window-managers/wayfire/default.nix +++ b/pkgs/applications/window-managers/wayfire/default.nix @@ -1,33 +1,87 @@ -{ lib, stdenv, fetchurl, cmake, meson, ninja, pkg-config -, cairo, doctest, libdrm, libexecinfo, libinput, libjpeg, libxkbcommon, wayland -, wayland-protocols, wf-config, wlroots, mesa +{ lib +, stdenv +, fetchFromGitHub +, cmake +, meson +, ninja +, pkg-config +, wf-config +, cairo +, doctest +, libdrm +, libexecinfo +, libinput +, libjpeg +, libxkbcommon +, wayland +, wayland-protocols +, wayland-scanner +, wlroots +, pango +, xorg }: stdenv.mkDerivation rec { pname = "wayfire"; - version = "0.7.2"; + version = "0.7.5"; - src = fetchurl { - url = "https://github.com/WayfireWM/wayfire/releases/download/v${version}/wayfire-${version}.tar.xz"; - sha256 = "1gasijjyfl00zpy6j9hh6qpwv0sw42h9irycbnm693j3vw9mcy66"; + src = fetchFromGitHub { + owner = "WayfireWM"; + repo = pname; + rev = "v${version}"; + fetchSubmodules = true; + sha256 = "sha256-Z+rR9pY244I3i/++XZ4ROIkq3vtzMgcxxHvJNxFD9is="; }; - nativeBuildInputs = [ cmake meson ninja pkg-config wayland ]; + nativeBuildInputs = [ + meson + ninja + pkg-config + wayland-scanner + ]; + + buildInputs = [ - cairo doctest libdrm libexecinfo libinput libjpeg libxkbcommon wayland - wayland-protocols wf-config wlroots mesa + wf-config + libdrm + libexecinfo + libinput + libjpeg + libxkbcommon + wayland-protocols + xorg.xcbutilwm + wayland + cairo + pango + ]; + + propagatedBuildInputs = [ + wlroots + ]; + + nativeCheckInputs = [ + cmake + doctest ]; # CMake is just used for finding doctest. dontUseCmakeConfigure = true; - mesonFlags = [ "--sysconfdir" "/etc" ]; + doCheck = true; + + mesonFlags = [ + "--sysconfdir /etc" + "-Duse_system_wlroots=enabled" + "-Duse_system_wfconfig=enabled" + ]; + + passthru.providedSessions = [ "wayfire" ]; meta = with lib; { homepage = "https://wayfire.org/"; description = "3D Wayland compositor"; license = licenses.mit; - maintainers = with maintainers; [ qyliss wucke13 ]; + maintainers = with maintainers; [ qyliss wucke13 rewine ]; platforms = platforms.unix; }; } diff --git a/pkgs/applications/window-managers/wayfire/wcm.nix b/pkgs/applications/window-managers/wayfire/wcm.nix index 9d524019ad5f..a67702185521 100644 --- a/pkgs/applications/window-managers/wayfire/wcm.nix +++ b/pkgs/applications/window-managers/wayfire/wcm.nix @@ -1,27 +1,61 @@ -{ stdenv, lib, fetchurl, meson, ninja, pkg-config, wayland, wrapGAppsHook -, gtk3, libevdev, libxml2, wayfire, wayland-protocols, wf-config, wf-shell +{ stdenv +, lib +, fetchFromGitHub +, meson +, ninja +, pkg-config +, wayland +, wrapGAppsHook +, wayfire +, wf-shell +, wf-config +, wayland-scanner +, wayland-protocols +, gtk3 +, libevdev +, libxml2 }: stdenv.mkDerivation rec { pname = "wcm"; - version = "0.7.0"; + version = "0.7.5"; - src = fetchurl { - url = "https://github.com/WayfireWM/wcm/releases/download/v${version}/wcm-${version}.tar.xz"; - sha256 = "19za1fnlf5hz4n4mxxwqcr5yxp6mga9ah539ifnjnqrgvj19cjlj"; + src = fetchFromGitHub { + owner = "WayfireWM"; + repo = pname; + rev = "v${version}"; + fetchSubmodules = true; + sha256 = "sha256-LJR9JGl49o4O6LARofz3jOeAqseGcmzVhMnhk/aobUU="; }; - nativeBuildInputs = [ meson ninja pkg-config wayland wrapGAppsHook ]; + nativeBuildInputs = [ + meson + ninja + pkg-config + wayland-scanner + wrapGAppsHook + ]; + buildInputs = [ - gtk3 libevdev libxml2 wayfire wayland - wayland-protocols wf-config wf-shell + wayfire + wf-config + wf-shell + wayland + wayland-protocols + gtk3 + libevdev + libxml2 + ]; + + mesonFlags = [ + "-Denable_wdisplays=false" ]; meta = with lib; { homepage = "https://github.com/WayfireWM/wcm"; description = "Wayfire Config Manager"; license = licenses.mit; - maintainers = with maintainers; [ qyliss wucke13 ]; + maintainers = with maintainers; [ qyliss wucke13 rewine ]; platforms = platforms.unix; }; } diff --git a/pkgs/applications/window-managers/wayfire/wf-config.nix b/pkgs/applications/window-managers/wayfire/wf-config.nix index d1e653cc9e04..0a8e5c0bcd71 100644 --- a/pkgs/applications/window-managers/wayfire/wf-config.nix +++ b/pkgs/applications/window-managers/wayfire/wf-config.nix @@ -1,20 +1,46 @@ -{ stdenv, lib, fetchurl, cmake, meson, ninja, pkg-config -, doctest, glm, libevdev, libxml2 +{ stdenv +, lib +, fetchFromGitHub +, cmake +, meson +, ninja +, pkg-config +, doctest +, glm +, libevdev +, libxml2 }: stdenv.mkDerivation rec { pname = "wf-config"; version = "0.7.1"; - src = fetchurl { - url = "https://github.com/WayfireWM/wf-config/releases/download/v${version}/wf-config-${version}.tar.xz"; - sha256 = "1w75yxhz0nvw4mlv38sxp8k8wb5h99b51x3fdvizc3yaxanqa8kx"; + src = fetchFromGitHub { + owner = "WayfireWM"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-ADUBvDJcPYEB9ZvaFIgTfemo1WYwiWgCWX/z2yrEPtA="; }; - nativeBuildInputs = [ cmake meson ninja pkg-config ]; - buildInputs = [ doctest libevdev libxml2 ]; - propagatedBuildInputs = [ glm ]; + nativeBuildInputs = [ + meson + ninja + pkg-config + ]; + buildInputs = [ + libevdev + libxml2 + ]; + + propagatedBuildInputs = [ + glm + ]; + + nativeCheckInputs = [ + cmake + doctest + ]; # CMake is just used for finding doctest. dontUseCmakeConfigure = true; @@ -24,7 +50,7 @@ stdenv.mkDerivation rec { homepage = "https://github.com/WayfireWM/wf-config"; description = "Library for managing configuration files, written for Wayfire"; license = licenses.mit; - maintainers = with maintainers; [ qyliss wucke13 ]; + maintainers = with maintainers; [ qyliss wucke13 rewine ]; platforms = platforms.unix; }; } diff --git a/pkgs/applications/window-managers/wayfire/wf-shell.nix b/pkgs/applications/window-managers/wayfire/wf-shell.nix index 51111932cd23..10e16a6573e1 100644 --- a/pkgs/applications/window-managers/wayfire/wf-shell.nix +++ b/pkgs/applications/window-managers/wayfire/wf-shell.nix @@ -1,29 +1,53 @@ -{ stdenv, lib, fetchurl, meson, ninja, pkg-config, wayland, alsa-lib, gtkmm3, gtk-layer-shell, pulseaudio, wayfire, wf-config +{ stdenv +, lib +, fetchFromGitHub +, meson +, ninja +, pkg-config +, wayland-scanner +, wayfire +, wf-config +, alsa-lib +, gtkmm3 +, gtk-layer-shell +, pulseaudio }: stdenv.mkDerivation rec { pname = "wf-shell"; version = "0.7.0"; - # > Note to packagers: do not use the autogenerated "Source code" - # > archives from GitHub, but the wf-shell-0.4.0.tar.xz file. - src = fetchurl { - url = "https://github.com/WayfireWM/wf-shell/releases/download/v${version}/wf-shell-${version}.tar.xz"; - sha256 = "1isybm9lcpxwyf6zh2vzkwrcnw3q7qxm21535g4f08f0l68cd5bl"; + src = fetchFromGitHub { + owner = "WayfireWM"; + repo = pname; + rev = "v${version}"; + fetchSubmodules = true; + sha256 = "sha256-iQUBuNjbZuf51A69RC6NsMHFZCFRv+d9XZ0HtP6OpOA="; }; - nativeBuildInputs = [ meson ninja pkg-config wayland ]; - buildInputs = [ - alsa-lib gtkmm3 gtk-layer-shell pulseaudio wayfire wf-config + nativeBuildInputs = [ + meson + ninja + pkg-config + wayland-scanner ]; - mesonFlags = [ "--sysconfdir" "/etc" ]; + buildInputs = [ + wayfire + wf-config + alsa-lib + gtkmm3 + gtk-layer-shell + pulseaudio + ]; + + mesonFlags = [ "--sysconfdir /etc" ]; meta = with lib; { homepage = "https://github.com/WayfireWM/wf-shell"; description = "GTK3-based panel for Wayfire"; license = licenses.mit; - maintainers = with maintainers; [ qyliss wucke13 ]; + maintainers = with maintainers; [ qyliss wucke13 rewine ]; platforms = platforms.unix; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 61376cb4baec..42d67021436e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -34563,7 +34563,7 @@ with pkgs; inherit (wayfireApplications) wayfire wcm; wayfireApplications-unwrapped = recurseIntoAttrs ( (callPackage ../applications/window-managers/wayfire/applications.nix { }). - extend (_: _: { wlroots = wlroots_0_14; }) + extend (_: _: { wlroots = wlroots_0_16; }) ); wayfirePlugins = recurseIntoAttrs ( callPackage ../applications/window-managers/wayfire/plugins.nix {