summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pkgs/tools/wayland/wlogout/default.nix54
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 56 insertions, 0 deletions
diff --git a/pkgs/tools/wayland/wlogout/default.nix b/pkgs/tools/wayland/wlogout/default.nix
new file mode 100644
index 000000000000..2625405808cc
--- /dev/null
+++ b/pkgs/tools/wayland/wlogout/default.nix
@@ -0,0 +1,54 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, pkg-config
+, meson
+, ninja
+, scdoc
+, gtk3
+, libxkbcommon
+, wayland
+, wayland-protocols
+}:
+
+stdenv.mkDerivation rec {
+ pname = "wlogout";
+ version = "1.1.1";
+
+ src = fetchFromGitHub {
+ owner = "ArtsyMacaw";
+ repo = "wlogout";
+ rev = version;
+ sha256 = "cTscfx+erHVFHwwYpN7pADQWt5sq75sQSyXSP/H8kOs=";
+ };
+
+ nativeBuildInputs = [ pkg-config meson ninja scdoc ];
+ buildInputs = [
+ gtk3
+ libxkbcommon
+ wayland
+ wayland-protocols
+ ];
+
+ postPatch = ''
+ substituteInPlace style.css \
+ --replace "/usr/share/wlogout" "$out/share/${pname}"
+
+ substituteInPlace main.c \
+ --replace "/etc/wlogout" "$out/etc/${pname}"
+ '';
+
+ mesonFlags = [
+ "--datadir=${placeholder "out"}/share"
+ "--sysconfdir=${placeholder "out"}/etc"
+ ];
+
+ meta = with lib; {
+ homepage = "https://github.com/ArtsyMacaw/wlogout";
+ description = "A wayland based logout menu";
+ license = licenses.mit;
+ maintainers = with maintainers; [ AndersonTorres ];
+ platforms = platforms.unix;
+ };
+}
+# TODO: shell completions
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index fcaa5830416a..d8a61d5afda7 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1976,6 +1976,8 @@ in
wl-clipboard = callPackage ../tools/wayland/wl-clipboard { };
+ wlogout = callPackage ../tools/wayland/wlogout { };
+
wlr-randr = callPackage ../tools/wayland/wlr-randr { };
wlsunset = callPackage ../tools/wayland/wlsunset { };