diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/window-managers')
16 files changed, 306 insertions, 58 deletions
diff --git a/nixpkgs/pkgs/applications/window-managers/cage/default.nix b/nixpkgs/pkgs/applications/window-managers/cage/default.nix index f7083212e705..103be0e53d76 100644 --- a/nixpkgs/pkgs/applications/window-managers/cage/default.nix +++ b/nixpkgs/pkgs/applications/window-managers/cage/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchFromGitHub , meson, ninja, pkg-config, wayland, scdoc, makeWrapper , wlroots, wayland-protocols, pixman, libxkbcommon -, systemd, libGL, libX11 +, systemd, libGL, libX11, mesa , xwayland ? null , nixosTests }: @@ -26,6 +26,7 @@ stdenv.mkDerivation rec { buildInputs = [ wlroots wayland wayland-protocols pixman libxkbcommon + mesa # for libEGL headers systemd libGL libX11 ]; diff --git a/nixpkgs/pkgs/applications/window-managers/cagebreak/default.nix b/nixpkgs/pkgs/applications/window-managers/cagebreak/default.nix index 93ac815346e4..505d1cb1520c 100644 --- a/nixpkgs/pkgs/applications/window-managers/cagebreak/default.nix +++ b/nixpkgs/pkgs/applications/window-managers/cagebreak/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchFromGitHub , meson, ninja, pkg-config, wayland, scdoc, makeWrapper , wlroots, wayland-protocols, pixman, libxkbcommon -, cairo , pango, fontconfig, pandoc, systemd +, cairo , pango, fontconfig, pandoc, systemd, mesa , withXwayland ? true, xwayland , nixosTests }: @@ -22,6 +22,7 @@ stdenv.mkDerivation rec { buildInputs = [ wlroots wayland wayland-protocols pixman libxkbcommon cairo pango fontconfig pandoc systemd + mesa # for libEGL headers ]; outputs = [ "out" "contrib" ]; diff --git a/nixpkgs/pkgs/applications/window-managers/e16/default.nix b/nixpkgs/pkgs/applications/window-managers/e16/default.nix new file mode 100644 index 000000000000..7028dcfc09dc --- /dev/null +++ b/nixpkgs/pkgs/applications/window-managers/e16/default.nix @@ -0,0 +1,62 @@ +{ lib +, stdenv +, fetchurl +, pkg-config +, freetype +, imlib2 +, libSM +, libXcomposite +, libXdamage +, libXext +, libXfixes +, libXft +, libXinerama +, libXrandr +, libpulseaudio +, libsndfile +, pango +, perl +}: + +stdenv.mkDerivation rec { + pname = "e16"; + version = "1.0.23"; + + src = fetchurl { + url = "mirror://sourceforge/enlightenment/e16-${version}.tar.xz"; + sha256 = "028rn1plggacsvdd035qnnph4xw8nya34mmjvvl7d4gqj9pj293f"; + }; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + freetype + imlib2 + libSM + libXcomposite + libXdamage + libXext + libXfixes + libXft + libXinerama + libXrandr + libpulseaudio + libsndfile + pango + perl + ]; + + postPatch = '' + substituteInPlace scripts/e_gen_menu --replace "/usr/local:" "/run/current-system/sw:/usr/local:" + ''; + + meta = with lib; { + homepage = "https://www.enlightenment.org/e16"; + description = "Enlightenment DR16 window manager"; + license = licenses.bsd2; + platforms = platforms.linux; + maintainers = [ maintainers.romildo ]; + }; +} diff --git a/nixpkgs/pkgs/applications/window-managers/fvwm/default.nix b/nixpkgs/pkgs/applications/window-managers/fvwm/default.nix index ae5dad94f2eb..07c3573fb2a7 100644 --- a/nixpkgs/pkgs/applications/window-managers/fvwm/default.nix +++ b/nixpkgs/pkgs/applications/window-managers/fvwm/default.nix @@ -1,27 +1,37 @@ -{ gestures ? false -, lib, stdenv, fetchurl, pkg-config -, cairo, fontconfig, freetype, libXft, libXcursor, libXinerama -, libXpm, libXt, librsvg, libpng, fribidi, perl -, libstroke ? null -}: - -assert gestures -> libstroke != null; +{ autoreconfHook, enableGestures ? false, lib, stdenv, fetchFromGitHub +, pkg-config, cairo, fontconfig, freetype, libXft, libXcursor, libXinerama +, libXpm, libXt, librsvg, libpng, fribidi, perl, libstroke, readline, libxslt }: stdenv.mkDerivation rec { pname = "fvwm"; version = "2.6.9"; - src = fetchurl { - url = "https://github.com/fvwmorg/fvwm/releases/download/${version}/${pname}-${version}.tar.gz"; - sha256 = "1bliqcnap7vb3m2rn8wvxyfhbf35h9x34s41fl4301yhrkrlrihv"; + src = fetchFromGitHub { + owner = "fvwmorg"; + repo = pname; + rev = version; + sha256 = "14jwckhikc9n4h93m00pzjs7xm2j0dcsyzv3q5vbcnknp6p4w5dh"; }; - nativeBuildInputs = [ pkg-config ]; + nativeBuildInputs = [ autoreconfHook pkg-config ]; buildInputs = [ - cairo fontconfig freetype - libXft libXcursor libXinerama libXpm libXt - librsvg libpng fribidi perl - ] ++ lib.optional gestures libstroke; + cairo + fontconfig + freetype + libXft + libXcursor + libXinerama + libXpm + libXt + librsvg + libpng + fribidi + perl + readline + libxslt + ] ++ lib.optional enableGestures libstroke; + + configureFlags = [ "--enable-mandoc" "--disable-htmldoc" ]; meta = { homepage = "http://fvwm.org"; diff --git a/nixpkgs/pkgs/applications/window-managers/hikari/default.nix b/nixpkgs/pkgs/applications/window-managers/hikari/default.nix index 2325deaf37cb..34016b0d7565 100644 --- a/nixpkgs/pkgs/applications/window-managers/hikari/default.nix +++ b/nixpkgs/pkgs/applications/window-managers/hikari/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchzip, pkg-config, bmake, cairo, glib, libevdev, libinput, libxkbcommon, linux-pam, pango, pixman, - libucl, wayland, wayland-protocols, wlroots, + libucl, wayland, wayland-protocols, wlroots, mesa, features ? { gammacontrol = true; layershell = true; @@ -35,6 +35,7 @@ stdenv.mkDerivation { pango pixman libucl + mesa # for libEGL wayland wayland-protocols wlroots @@ -42,14 +43,11 @@ stdenv.mkDerivation { enableParallelBuilding = true; - # Must replace GNU Make by bmake - buildPhase = with lib; concatStringsSep " " ( - [ "bmake" "-j$NIX_BUILD_CORES" "PREFIX=$out" ] + makeFlags = with lib; [ "PREFIX=$(out)" ] ++ optional stdenv.isLinux "WITH_POSIX_C_SOURCE=YES" ++ mapAttrsToList (feat: enabled: optionalString enabled "WITH_${toUpper feat}=YES" - ) features - ); + ) features; # Can't suid in nix store # Run hikari as root (it will drop privileges as early as possible), or create @@ -58,13 +56,6 @@ stdenv.mkDerivation { substituteInPlace Makefile --replace '4555' '555' ''; - installPhase = '' - bmake \ - PREFIX=$out \ - install - runHook postInstall - ''; - meta = with lib; { description = "Stacking Wayland compositor which is actively developed on FreeBSD but also supports Linux"; homepage = "https://hikari.acmelabs.space"; diff --git a/nixpkgs/pkgs/applications/window-managers/i3/workstyle.nix b/nixpkgs/pkgs/applications/window-managers/i3/workstyle.nix new file mode 100644 index 000000000000..b245139abefe --- /dev/null +++ b/nixpkgs/pkgs/applications/window-managers/i3/workstyle.nix @@ -0,0 +1,27 @@ +{ lib +, rustPlatform +, fetchFromGitHub +}: + +rustPlatform.buildRustPackage rec { + pname = "workstyle"; + version = "0.2.1"; + + src = fetchFromGitHub { + owner = "pierrechevalier83"; + repo = pname; + rev = "43b0b5bc0a66d40289ff26b8317f50510df0c5f9"; + sha256 = "0f4hwf236823qmqy31fczjb1hf3fvvac3x79jz2l7li55r6fd8hn"; + }; + + cargoSha256 = "1hy68wvsxncsy4yx4biigfvwyq18c7yp1g543c6nca15cdzs1c54"; + + doCheck = false; # No tests + + meta = with lib; { + description = "Sway workspaces with style"; + homepage = "https://github.com/pierrechevalier83/workstyle"; + license = licenses.mit; + maintainers = with maintainers; [ FlorianFranzen ]; + }; +} diff --git a/nixpkgs/pkgs/applications/window-managers/i3/wsr.nix b/nixpkgs/pkgs/applications/window-managers/i3/wsr.nix index 97da815b5d7b..6799473470b2 100644 --- a/nixpkgs/pkgs/applications/window-managers/i3/wsr.nix +++ b/nixpkgs/pkgs/applications/window-managers/i3/wsr.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "i3wsr"; - version = "1.3.1"; + version = "2.0.0"; src = fetchFromGitHub { owner = "roosta"; repo = pname; rev = "v${version}"; - sha256 = "1zpyncg29y8cv5nw0vgd69nywbj1ppxf6qfm4zc6zz0gk0vxy4pn"; + sha256 = "sha256-PluczllPRlfzoM2y552YJirrX5RQZQAkBQkner7fWhU="; }; - cargoSha256 = "0snys419d32anf73jcvrq8h9kp1fq0maqcxz6ww04yg2jv6j47nc"; + cargoSha256 = "sha256-GwRiyAHTcRoByxUViXSwslb+IAP6LK8IWZ0xICQ8qag="; nativeBuildInputs = [ python3 ]; buildInputs = [ libxcb ]; diff --git a/nixpkgs/pkgs/applications/window-managers/neocomp/default.nix b/nixpkgs/pkgs/applications/window-managers/neocomp/default.nix index bf017ae085a6..e878f4f088e8 100644 --- a/nixpkgs/pkgs/applications/window-managers/neocomp/default.nix +++ b/nixpkgs/pkgs/applications/window-managers/neocomp/default.nix @@ -16,27 +16,30 @@ , libXinerama , libXrandr , libXrender +, libXres , pcre , pkg-config }: -let - rev = "v0.6-17-g271e784"; -in + stdenv.mkDerivation rec { - pname = "neocomp-unstable"; - version = "2019-03-12"; + pname = "neocomp"; + version = "unstable-2021-04-06"; src = fetchFromGitHub { - inherit rev; - owner = "DelusionalLogic"; - repo = "NeoComp"; - sha256 = "1mp338vz1jm5pwf7pi5azx4hzykmvpkwzx1kw6a9anj272f32zpg"; + owner = "DelusionalLogic"; + repo = "NeoComp"; + rev = "ccd340d7b2dcd3f828aff958a638cc23686aee6f"; + sha256 = "sha256-tLLEwpAGNVTC+N41bM7pfskIli4Yvc95wH2/NT0OZ+8="; }; - buildInputs = [ + nativeBuildInputs = [ asciidoc docbook_xml_dtd_45 docbook_xsl + pkg-config + ]; + + buildInputs = [ freetype judy libGL @@ -50,15 +53,15 @@ stdenv.mkDerivation rec { libXinerama libXrandr libXrender + libXres pcre - pkg-config ]; makeFlags = [ "PREFIX=${placeholder "out"}" "CFGDIR=${placeholder "out"}/etc/xdg/neocomp" "ASTDIR=${placeholder "out"}/share/neocomp/assets" - "COMPTON_VERSION=git-${rev}-${version}" + "COMPTON_VERSION=${version}" ]; postPatch = '' @@ -72,8 +75,8 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://github.com/DelusionalLogic/NeoComp"; - license = licenses.gpl3; - maintainers = with maintainers; [ twey ]; + license = licenses.gpl3Only; + maintainers = with maintainers; [ twey fortuneteller2k ]; platforms = platforms.linux; description = "A fork of Compton, a compositor for X11"; longDescription = '' diff --git a/nixpkgs/pkgs/applications/window-managers/river/default.nix b/nixpkgs/pkgs/applications/window-managers/river/default.nix new file mode 100644 index 000000000000..5c20bd17fc72 --- /dev/null +++ b/nixpkgs/pkgs/applications/window-managers/river/default.nix @@ -0,0 +1,44 @@ +{ lib, stdenv ,fetchFromGitHub +, zig, wayland, pkg-config, scdoc +, xwayland, wayland-protocols, wlroots +, libxkbcommon, pixman, udev, libevdev, libX11, libGL +}: + +stdenv.mkDerivation rec { + pname = "river"; + version = "unstable-2021-04-08"; + + src = fetchFromGitHub { + owner = "ifreund"; + repo = "river"; + rev = "9e3e92050e04320949c6cd995273c30319ebd515"; + sha256 = "1v8dpbadsb3c7bc84sai09dbqv5s5s5d77vs12kdkd45x0ppmk3j"; + fetchSubmodules = true; + }; + + buildInputs = [ xwayland wayland-protocols wlroots pixman + libxkbcommon pixman udev libevdev libX11 libGL + ]; + + preBuild = '' + export HOME=$TMPDIR + ''; + installPhase = '' + zig build -Drelease-safe -Dxwayland -Dman-pages --prefix $out install + ''; + + nativeBuildInputs = [ zig wayland scdoc pkg-config ]; + + installFlags = [ "DESTDIR=$(out)" ]; + + meta = with lib; { + description = "A dynamic tiling wayland compositor"; + longDescription = '' + river is a dynamic tiling wayland compositor that takes inspiration from dwm and bspwm. + ''; + homepage = "https://github.com/ifreund/river"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ branwright1 ]; + }; +} diff --git a/nixpkgs/pkgs/applications/window-managers/sway/lock-effects.nix b/nixpkgs/pkgs/applications/window-managers/sway/lock-effects.nix index eff8710ebfc0..25714f1f8a94 100644 --- a/nixpkgs/pkgs/applications/window-managers/sway/lock-effects.nix +++ b/nixpkgs/pkgs/applications/window-managers/sway/lock-effects.nix @@ -1,18 +1,27 @@ -{ lib, stdenv, fetchFromGitHub, - meson, ninja, pkg-config, scdoc, - wayland, wayland-protocols, libxkbcommon, - cairo, gdk-pixbuf, pam +{ lib +, stdenv +, fetchFromGitHub +, meson +, ninja +, pkg-config +, scdoc +, wayland +, wayland-protocols +, libxkbcommon +, cairo +, gdk-pixbuf +, pam }: stdenv.mkDerivation rec { pname = "swaylock-effects"; - version = "v1.6-2"; + version = "1.6-3"; src = fetchFromGitHub { owner = "mortie"; repo = "swaylock-effects"; - rev = version; - sha256 = "0fs3c4liajgkax0a2pdc7117v1g9k73nv87g3kyv9wsnkfbbz534"; + rev = "v${version}"; + sha256 = "sha256-71IX0fC4xCPP6pK63KtvDMb3KoP1rw/Iz3S7BgiLSpg="; }; postPatch = '' @@ -23,7 +32,9 @@ stdenv.mkDerivation rec { buildInputs = [ wayland wayland-protocols libxkbcommon cairo gdk-pixbuf pam ]; mesonFlags = [ - "-Dpam=enabled" "-Dgdk-pixbuf=enabled" "-Dman-pages=enabled" + "-Dpam=enabled" + "-Dgdk-pixbuf=enabled" + "-Dman-pages=enabled" ]; meta = with lib; { diff --git a/nixpkgs/pkgs/applications/window-managers/waybox/default.nix b/nixpkgs/pkgs/applications/window-managers/waybox/default.nix index 666b2406d5f4..007e4dcc568b 100644 --- a/nixpkgs/pkgs/applications/window-managers/waybox/default.nix +++ b/nixpkgs/pkgs/applications/window-managers/waybox/default.nix @@ -11,6 +11,7 @@ , pixman , udev , libGL +, mesa }: stdenv.mkDerivation rec { @@ -33,6 +34,7 @@ stdenv.mkDerivation rec { pixman udev libGL + mesa # for libEGL ]; meta = with lib; { diff --git a/nixpkgs/pkgs/applications/window-managers/wayfire/default.nix b/nixpkgs/pkgs/applications/window-managers/wayfire/default.nix index cb9f2fe85a7e..303ffc35fc71 100644 --- a/nixpkgs/pkgs/applications/window-managers/wayfire/default.nix +++ b/nixpkgs/pkgs/applications/window-managers/wayfire/default.nix @@ -1,6 +1,6 @@ { stdenv, lib, fetchurl, meson, ninja, pkg-config, git , cairo, libdrm, libexecinfo, libinput, libjpeg, libxkbcommon, wayland -, wayland-protocols, wf-config, wlroots +, wayland-protocols, wf-config, wlroots, mesa }: stdenv.mkDerivation rec { @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja pkg-config wayland ]; buildInputs = [ cairo libdrm libexecinfo libinput libjpeg libxkbcommon wayland - wayland-protocols wf-config wlroots + wayland-protocols wf-config wlroots mesa ]; mesonFlags = [ "--sysconfdir" "/etc" ]; diff --git a/nixpkgs/pkgs/applications/window-managers/wio/default.nix b/nixpkgs/pkgs/applications/window-managers/wio/default.nix index 301b0184e9c7..c330bbe0e0f4 100644 --- a/nixpkgs/pkgs/applications/window-managers/wio/default.nix +++ b/nixpkgs/pkgs/applications/window-managers/wio/default.nix @@ -10,6 +10,7 @@ , wayland , wayland-protocols , wlroots +, mesa , xwayland , makeWrapper }: @@ -32,6 +33,7 @@ stdenv.mkDerivation rec { wayland wayland-protocols wlroots + mesa # for libEGL xwayland ]; diff --git a/nixpkgs/pkgs/applications/window-managers/wmderland/0001-remove-flto.patch b/nixpkgs/pkgs/applications/window-managers/wmderland/0001-remove-flto.patch new file mode 100644 index 000000000000..cae1eac0a204 --- /dev/null +++ b/nixpkgs/pkgs/applications/window-managers/wmderland/0001-remove-flto.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 17a4944..33406f3 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -10,7 +10,7 @@ include(BuildType) + # Request C++14 standard, using new CMake variables. + set(CMAKE_CXX_STANDARD 14) + set(CMAKE_CXX_STANDARD_REQUIRED True) +-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -flto -Wall") ++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall") + + # If the BuildType is Debug, then add -rdynamic. + # (used to print stacktrace with function names) diff --git a/nixpkgs/pkgs/applications/window-managers/wmderland/default.nix b/nixpkgs/pkgs/applications/window-managers/wmderland/default.nix new file mode 100644 index 000000000000..c0fcdd859b21 --- /dev/null +++ b/nixpkgs/pkgs/applications/window-managers/wmderland/default.nix @@ -0,0 +1,49 @@ +{ lib, stdenv, fetchFromGitHub, cmake, libnotify, libX11, xorgproto, nixosTests }: + +stdenv.mkDerivation { + pname = "wmderland"; + version = "unstable-2020-07-17"; + + src = fetchFromGitHub { + owner = "aesophor"; + repo = "wmderland"; + rev = "a40a3505dd735b401d937203ab6d8d1978307d72"; + sha256 = "0npmlnybblp82mfpinjbz7dhwqgpdqc1s63wc1zs8mlcs19pdh98"; + }; + + nativeBuildInputs = [ + cmake + ]; + + cmakeBuildType = "MinSizeRel"; + + patches = [ ./0001-remove-flto.patch ]; + + postPatch = '' + substituteInPlace src/util.cc \ + --replace "notify-send" "${libnotify}/bin/notify-send" + ''; + + buildInputs = [ + libX11 + xorgproto + ]; + + postInstall = '' + install -Dm0644 -t $out/share/wmderland/contrib $src/example/config + install -Dm0644 -t $out/share/xsessions $src/example/wmderland.desktop + ''; + + passthru = { + tests.basic = nixosTests.wmderland; + providedSessions = [ "wmderland" ]; + }; + + meta = with lib; { + description = "Modern and minimal X11 tiling window manager"; + homepage = "https://github.com/aesophor/wmderland"; + license = licenses.mit; + platforms = libX11.meta.platforms; + maintainers = with maintainers; [ takagiy ]; + }; +} diff --git a/nixpkgs/pkgs/applications/window-managers/wmderlandc/default.nix b/nixpkgs/pkgs/applications/window-managers/wmderlandc/default.nix new file mode 100644 index 000000000000..24690eeaa468 --- /dev/null +++ b/nixpkgs/pkgs/applications/window-managers/wmderlandc/default.nix @@ -0,0 +1,32 @@ +{ lib, stdenv, fetchFromGitHub, cmake, libX11, xorgproto }: + +stdenv.mkDerivation { + pname = "wmderlandc"; + version = "unstable-2020-07-17"; + + src = fetchFromGitHub { + owner = "aesophor"; + repo = "wmderland"; + rev = "a40a3505dd735b401d937203ab6d8d1978307d72"; + sha256 = "0npmlnybblp82mfpinjbz7dhwqgpdqc1s63wc1zs8mlcs19pdh98"; + }; + + sourceRoot = "source/ipc-client"; + + nativeBuildInputs = [ + cmake + ]; + + buildInputs = [ + libX11 + xorgproto + ]; + + meta = with lib; { + description = "A tiny program to interact with wmderland"; + homepage = "https://github.com/aesophor/wmderland/tree/master/ipc-client"; + license = licenses.mit; + platforms = platforms.all; + maintainers = with maintainers; [ takagiy ]; + }; +} |