aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/applications/window-managers/sway
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/window-managers/sway')
-rw-r--r--nixpkgs/pkgs/applications/window-managers/sway/contrib.nix95
-rw-r--r--nixpkgs/pkgs/applications/window-managers/sway/default.nix32
-rw-r--r--nixpkgs/pkgs/applications/window-managers/sway/lock-effects.nix7
3 files changed, 119 insertions, 15 deletions
diff --git a/nixpkgs/pkgs/applications/window-managers/sway/contrib.nix b/nixpkgs/pkgs/applications/window-managers/sway/contrib.nix
new file mode 100644
index 00000000000..fd44f4a5be5
--- /dev/null
+++ b/nixpkgs/pkgs/applications/window-managers/sway/contrib.nix
@@ -0,0 +1,95 @@
+{ stdenv
+
+, fetchurl
+, coreutils
+, makeWrapper
+, sway-unwrapped
+, installShellFiles
+, wl-clipboard
+, libnotify
+, slurp
+, grim
+, jq
+
+, python3Packages
+}:
+
+{
+
+grimshot = stdenv.mkDerivation rec {
+ pname = "grimshot";
+ version = sway-unwrapped.version;
+
+ src = sway-unwrapped.src;
+
+ dontBuild = true;
+ dontConfigure = true;
+
+ outputs = [ "out" "man" ];
+
+ nativeBuildInputs = [ makeWrapper installShellFiles ];
+
+ installPhase = ''
+ installManPage contrib/grimshot.1
+
+ install -Dm 0755 contrib/grimshot $out/bin/grimshot
+ wrapProgram $out/bin/grimshot --set PATH \
+ "${stdenv.lib.makeBinPath [
+ sway-unwrapped
+ wl-clipboard
+ coreutils
+ libnotify
+ slurp
+ grim
+ jq
+ ] }"
+ '';
+
+ doInstallCheck = true;
+
+ installCheckPhase = ''
+ # check always returns 0
+ if [[ $($out/bin/grimshot check | grep "NOT FOUND") ]]; then false
+ else
+ echo "grimshot check passed"
+ fi
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A helper for screenshots within sway";
+ homepage = "https://github.com/swaywm/sway/tree/master/contrib";
+ license = licenses.mit;
+ platforms = platforms.all;
+ maintainers = with maintainers; [
+ sway-unwrapped.meta.maintainers
+ evils
+ ];
+ };
+};
+
+
+inactive-windows-transparency = python3Packages.buildPythonApplication rec {
+ # long name is long
+ lname = "inactive-windows-transparency";
+ pname = "sway-${lname}";
+ version = sway-unwrapped.version;
+
+ src = sway-unwrapped.src;
+
+ format = "other";
+ dontBuild = true;
+ dontConfigure = true;
+
+ propagatedBuildInputs = [ python3Packages.i3ipc ];
+
+ installPhase = ''
+ install -Dm 0755 $src/contrib/${lname}.py $out/bin/${lname}.py
+ '';
+
+ meta = sway-unwrapped.meta // {
+ description = "It makes inactive sway windows transparent";
+ homepage = "https://github.com/swaywm/sway/tree/${sway-unwrapped.version}/contrib";
+ };
+};
+
+}
diff --git a/nixpkgs/pkgs/applications/window-managers/sway/default.nix b/nixpkgs/pkgs/applications/window-managers/sway/default.nix
index 66681ef0850..da58d844ee8 100644
--- a/nixpkgs/pkgs/applications/window-managers/sway/default.nix
+++ b/nixpkgs/pkgs/applications/window-managers/sway/default.nix
@@ -1,20 +1,19 @@
{ stdenv, fetchFromGitHub, makeWrapper
-, meson, ninja
-, pkgconfig, scdoc
-, wayland, libxkbcommon, pcre, json_c, dbus, libevdev
+, meson, ninja, pkg-config, wayland, scdoc
+, libxkbcommon, pcre, json_c, dbus, libevdev
, pango, cairo, libinput, libcap, pam, gdk-pixbuf, librsvg
, wlroots, wayland-protocols
}:
stdenv.mkDerivation rec {
pname = "sway-unwrapped";
- version = "1.4";
+ version = "1.5";
src = fetchFromGitHub {
owner = "swaywm";
repo = "sway";
rev = version;
- sha256 = "11qf89y3q92g696a6f4d23qb44gqixg6qxq740vwv2jw59ms34ja";
+ sha256 = "0r3b7h778l9i20z3him9i2qsaynpn9y78hzfgv3cqi8fyry2c4f9";
};
patches = [
@@ -22,8 +21,12 @@ stdenv.mkDerivation rec {
./load-configuration-from-etc.patch
];
+ postPatch = ''
+ substituteInPlace meson.build --replace "v1.5" "1.5"
+ '';
+
nativeBuildInputs = [
- pkgconfig meson ninja scdoc
+ meson ninja pkg-config wayland scdoc
];
buildInputs = [
@@ -32,16 +35,23 @@ stdenv.mkDerivation rec {
wlroots wayland-protocols
];
- enableParallelBuilding = true;
-
mesonFlags = [
- "-Ddefault-wallpaper=false" "-Dxwayland=enabled" "-Dgdk-pixbuf=enabled"
- "-Dtray=enabled" "-Dman-pages=enabled"
+ "-Ddefault-wallpaper=false"
];
meta = with stdenv.lib; {
- description = "i3-compatible tiling Wayland compositor";
+ description = "An i3-compatible tiling Wayland compositor";
+ longDescription = ''
+ Sway is a tiling Wayland compositor and a drop-in replacement for the i3
+ window manager for X11. It works with your existing i3 configuration and
+ supports most of i3's features, plus a few extras.
+ Sway allows you to arrange your application windows logically, rather
+ than spatially. Windows are arranged into a grid by default which
+ maximizes the efficiency of your screen and can be quickly manipulated
+ using only the keyboard.
+ '';
homepage = "https://swaywm.org";
+ changelog = "https://github.com/swaywm/sway/releases/tag/${version}";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ primeos synthetica ma27 ];
diff --git a/nixpkgs/pkgs/applications/window-managers/sway/lock-effects.nix b/nixpkgs/pkgs/applications/window-managers/sway/lock-effects.nix
index e07080497f4..a6c8d5cd1c3 100644
--- a/nixpkgs/pkgs/applications/window-managers/sway/lock-effects.nix
+++ b/nixpkgs/pkgs/applications/window-managers/sway/lock-effects.nix
@@ -6,14 +6,13 @@
stdenv.mkDerivation rec {
pname = "swaylock-effects";
- version = "v1.6-0";
+ version = "v1.6-1";
src = fetchFromGitHub {
owner = "mortie";
repo = "swaylock-effects";
rev = version;
- sha256 = "15lshqq3qj9m3yfac65hjcciaf9zdfh3ir7hgh0ach7gpi3rbk13";
-
+ sha256 = "044fc4makjx8v29fkx5xlil6vr1v4r0k6c8741pl67gzvlm4cx3i";
};
postPatch = ''
@@ -30,7 +29,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "Screen locker for Wayland";
longDescription = ''
- swaylock-effects is a screen locking utility for Wayland compositors.
+ Swaylock, with fancy effects
'';
inherit (src.meta) homepage;
license = licenses.mit;