sway: Switch to 1.0
This is the result of executing: git mv -f pkgs/applications/window-managers/sway/beta.nix pkgs/applications/window-managers/sway/default.nix git mv -f nixos/modules/programs/sway-beta.nix nixos/modules/programs/sway.nix And removing sway-beta from the following files: pkgs/top-level/all-packages.nix nixos/modules/module-list.nix
This commit is contained in:
parent
24c02a0f5d
commit
45004c6f63
@ -129,7 +129,6 @@
|
|||||||
./programs/sysdig.nix
|
./programs/sysdig.nix
|
||||||
./programs/systemtap.nix
|
./programs/systemtap.nix
|
||||||
./programs/sway.nix
|
./programs/sway.nix
|
||||||
./programs/sway-beta.nix
|
|
||||||
./programs/thefuck.nix
|
./programs/thefuck.nix
|
||||||
./programs/tmux.nix
|
./programs/tmux.nix
|
||||||
./programs/udevil.nix
|
./programs/udevil.nix
|
||||||
|
@ -1,91 +0,0 @@
|
|||||||
{ config, pkgs, lib, ... }:
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
let
|
|
||||||
cfg = config.programs.sway-beta;
|
|
||||||
swayPackage = cfg.package;
|
|
||||||
|
|
||||||
swayWrapped = pkgs.writeShellScriptBin "sway" ''
|
|
||||||
set -o errexit
|
|
||||||
|
|
||||||
if [ ! "$_SWAY_WRAPPER_ALREADY_EXECUTED" ]; then
|
|
||||||
export _SWAY_WRAPPER_ALREADY_EXECUTED=1
|
|
||||||
${cfg.extraSessionCommands}
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$DBUS_SESSION_BUS_ADDRESS" ]; then
|
|
||||||
export DBUS_SESSION_BUS_ADDRESS
|
|
||||||
exec ${swayPackage}/bin/sway "$@"
|
|
||||||
else
|
|
||||||
exec ${pkgs.dbus}/bin/dbus-run-session ${swayPackage}/bin/sway "$@"
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
swayJoined = pkgs.symlinkJoin {
|
|
||||||
name = "sway-joined";
|
|
||||||
paths = [ swayWrapped swayPackage ];
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
options.programs.sway-beta = {
|
|
||||||
enable = mkEnableOption ''
|
|
||||||
Sway, the i3-compatible tiling Wayland compositor. This module will be removed after the final release of Sway 1.0
|
|
||||||
'';
|
|
||||||
|
|
||||||
package = mkOption {
|
|
||||||
type = types.package;
|
|
||||||
default = pkgs.sway-beta;
|
|
||||||
defaultText = "pkgs.sway-beta";
|
|
||||||
description = ''
|
|
||||||
The package to be used for `sway`.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
extraSessionCommands = mkOption {
|
|
||||||
type = types.lines;
|
|
||||||
default = "";
|
|
||||||
example = ''
|
|
||||||
export SDL_VIDEODRIVER=wayland
|
|
||||||
# needs qt5.qtwayland in systemPackages
|
|
||||||
export QT_QPA_PLATFORM=wayland
|
|
||||||
export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
|
|
||||||
# Fix for some Java AWT applications (e.g. Android Studio),
|
|
||||||
# use this if they aren't displayed properly:
|
|
||||||
export _JAVA_AWT_WM_NONREPARENTING=1
|
|
||||||
'';
|
|
||||||
description = ''
|
|
||||||
Shell commands executed just before Sway is started.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
extraPackages = mkOption {
|
|
||||||
type = with types; listOf package;
|
|
||||||
default = with pkgs; [
|
|
||||||
swaylock swayidle
|
|
||||||
xwayland rxvt_unicode dmenu
|
|
||||||
];
|
|
||||||
defaultText = literalExample ''
|
|
||||||
with pkgs; [ swaylock swayidle xwayland rxvt_unicode dmenu ];
|
|
||||||
'';
|
|
||||||
example = literalExample ''
|
|
||||||
with pkgs; [
|
|
||||||
xwayland
|
|
||||||
i3status i3status-rust
|
|
||||||
termite rofi light
|
|
||||||
]
|
|
||||||
'';
|
|
||||||
description = ''
|
|
||||||
Extra packages to be installed system wide.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
environment.systemPackages = [ swayJoined ] ++ cfg.extraPackages;
|
|
||||||
security.pam.services.swaylock = {};
|
|
||||||
hardware.opengl.enable = mkDefault true;
|
|
||||||
fonts.enableDefaultFonts = mkDefault true;
|
|
||||||
programs.dconf.enable = mkDefault true;
|
|
||||||
};
|
|
||||||
|
|
||||||
meta.maintainers = with lib.maintainers; [ gnidorah primeos colemickens ];
|
|
||||||
}
|
|
@ -3,8 +3,8 @@
|
|||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
cfg = config.programs.sway;
|
cfg = config.programs.sway-beta;
|
||||||
swayPackage = pkgs.sway;
|
swayPackage = cfg.package;
|
||||||
|
|
||||||
swayWrapped = pkgs.writeShellScriptBin "sway" ''
|
swayWrapped = pkgs.writeShellScriptBin "sway" ''
|
||||||
set -o errexit
|
set -o errexit
|
||||||
@ -16,9 +16,9 @@ let
|
|||||||
|
|
||||||
if [ "$DBUS_SESSION_BUS_ADDRESS" ]; then
|
if [ "$DBUS_SESSION_BUS_ADDRESS" ]; then
|
||||||
export DBUS_SESSION_BUS_ADDRESS
|
export DBUS_SESSION_BUS_ADDRESS
|
||||||
exec sway-setcap "$@"
|
exec ${swayPackage}/bin/sway "$@"
|
||||||
else
|
else
|
||||||
exec ${pkgs.dbus}/bin/dbus-run-session sway-setcap "$@"
|
exec ${pkgs.dbus}/bin/dbus-run-session ${swayPackage}/bin/sway "$@"
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
swayJoined = pkgs.symlinkJoin {
|
swayJoined = pkgs.symlinkJoin {
|
||||||
@ -26,24 +26,31 @@ let
|
|||||||
paths = [ swayWrapped swayPackage ];
|
paths = [ swayWrapped swayPackage ];
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
options.programs.sway = {
|
options.programs.sway-beta = {
|
||||||
enable = mkEnableOption ''
|
enable = mkEnableOption ''
|
||||||
the tiling Wayland compositor Sway. After adding yourself to the "sway"
|
Sway, the i3-compatible tiling Wayland compositor. This module will be removed after the final release of Sway 1.0
|
||||||
group you can manually launch Sway by executing "sway" from a terminal.
|
'';
|
||||||
If you call "sway" with any parameters the extraSessionCommands won't be
|
|
||||||
executed and Sway won't be launched with dbus-launch'';
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.sway-beta;
|
||||||
|
defaultText = "pkgs.sway-beta";
|
||||||
|
description = ''
|
||||||
|
The package to be used for `sway`.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
extraSessionCommands = mkOption {
|
extraSessionCommands = mkOption {
|
||||||
type = types.lines;
|
type = types.lines;
|
||||||
default = "";
|
default = "";
|
||||||
example = ''
|
example = ''
|
||||||
# Define a keymap (US QWERTY is the default)
|
export SDL_VIDEODRIVER=wayland
|
||||||
export XKB_DEFAULT_LAYOUT=de,us
|
# needs qt5.qtwayland in systemPackages
|
||||||
export XKB_DEFAULT_VARIANT=nodeadkeys
|
export QT_QPA_PLATFORM=wayland
|
||||||
export XKB_DEFAULT_OPTIONS=grp:alt_shift_toggle,caps:escape
|
export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
|
||||||
# Change the Keyboard repeat delay and rate
|
# Fix for some Java AWT applications (e.g. Android Studio),
|
||||||
export WLC_REPEAT_DELAY=660
|
# use this if they aren't displayed properly:
|
||||||
export WLC_REPEAT_RATE=25
|
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||||
'';
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
Shell commands executed just before Sway is started.
|
Shell commands executed just before Sway is started.
|
||||||
@ -53,14 +60,17 @@ in {
|
|||||||
extraPackages = mkOption {
|
extraPackages = mkOption {
|
||||||
type = with types; listOf package;
|
type = with types; listOf package;
|
||||||
default = with pkgs; [
|
default = with pkgs; [
|
||||||
i3status xwayland rxvt_unicode dmenu
|
swaylock swayidle
|
||||||
|
xwayland rxvt_unicode dmenu
|
||||||
];
|
];
|
||||||
defaultText = literalExample ''
|
defaultText = literalExample ''
|
||||||
with pkgs; [ i3status xwayland rxvt_unicode dmenu ];
|
with pkgs; [ swaylock swayidle xwayland rxvt_unicode dmenu ];
|
||||||
'';
|
'';
|
||||||
example = literalExample ''
|
example = literalExample ''
|
||||||
with pkgs; [
|
with pkgs; [
|
||||||
i3lock light termite
|
xwayland
|
||||||
|
i3status i3status-rust
|
||||||
|
termite rofi light
|
||||||
]
|
]
|
||||||
'';
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
@ -71,22 +81,11 @@ in {
|
|||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
environment.systemPackages = [ swayJoined ] ++ cfg.extraPackages;
|
environment.systemPackages = [ swayJoined ] ++ cfg.extraPackages;
|
||||||
security.wrappers.sway = {
|
|
||||||
program = "sway-setcap";
|
|
||||||
source = "${swayPackage}/bin/sway";
|
|
||||||
capabilities = "cap_sys_ptrace,cap_sys_tty_config=eip";
|
|
||||||
owner = "root";
|
|
||||||
group = "sway";
|
|
||||||
permissions = "u+rx,g+rx";
|
|
||||||
};
|
|
||||||
|
|
||||||
users.groups.sway = {};
|
|
||||||
security.pam.services.swaylock = {};
|
security.pam.services.swaylock = {};
|
||||||
|
|
||||||
hardware.opengl.enable = mkDefault true;
|
hardware.opengl.enable = mkDefault true;
|
||||||
fonts.enableDefaultFonts = mkDefault true;
|
fonts.enableDefaultFonts = mkDefault true;
|
||||||
programs.dconf.enable = mkDefault true;
|
programs.dconf.enable = mkDefault true;
|
||||||
};
|
};
|
||||||
|
|
||||||
meta.maintainers = with lib.maintainers; [ gnidorah primeos ];
|
meta.maintainers = with lib.maintainers; [ gnidorah primeos colemickens ];
|
||||||
}
|
}
|
||||||
|
@ -1,54 +0,0 @@
|
|||||||
{ stdenv, fetchFromGitHub, fetchpatch
|
|
||||||
, meson, ninja
|
|
||||||
, pkgconfig, scdoc
|
|
||||||
, wayland, libxkbcommon, pcre, json_c, dbus, libevdev
|
|
||||||
, pango, cairo, libinput, libcap, pam, gdk_pixbuf
|
|
||||||
, wlroots, wayland-protocols
|
|
||||||
, buildDocs ? true
|
|
||||||
}:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "${pname}-${version}";
|
|
||||||
pname = "sway";
|
|
||||||
version = "1.0";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "swaywm";
|
|
||||||
repo = "sway";
|
|
||||||
rev = version;
|
|
||||||
sha256 = "09cndc2nl39d3l7g5634xp0pxcz60pvc5277mfw89r22mh0j78rx";
|
|
||||||
};
|
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Fix for a compiler warning that causes a build failure
|
|
||||||
# (see https://github.com/swaywm/sway/issues/3862):
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://github.com/swaywm/sway/commit/bcde298a719f60b9913133dbd2a169dedbc8dd7d.patch";
|
|
||||||
sha256 = "0r583nmqvq43ib93yv6flw8pj833v32lbs0q0xld56s3rnzvvdcp";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
pkgconfig meson ninja
|
|
||||||
] ++ stdenv.lib.optional buildDocs scdoc;
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
wayland libxkbcommon pcre json_c dbus libevdev
|
|
||||||
pango cairo libinput libcap pam gdk_pixbuf
|
|
||||||
wlroots wayland-protocols
|
|
||||||
];
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
|
|
||||||
mesonFlags = [
|
|
||||||
"-Dxwayland=enabled" "-Dgdk-pixbuf=enabled" "-Dtray=enabled"
|
|
||||||
] ++ stdenv.lib.optional buildDocs "-Dman-pages=enabled";
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
|
||||||
description = "i3-compatible window manager for Wayland";
|
|
||||||
homepage = https://swaywm.org;
|
|
||||||
license = licenses.mit;
|
|
||||||
platforms = platforms.linux;
|
|
||||||
maintainers = with maintainers; [ primeos synthetica ];
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,40 +1,54 @@
|
|||||||
{ stdenv, fetchFromGitHub
|
{ stdenv, fetchFromGitHub, fetchpatch
|
||||||
, cmake, pkgconfig, asciidoc, libxslt, docbook_xsl
|
, meson, ninja
|
||||||
, wayland, wlc, libxkbcommon, pcre, json_c, dbus
|
, pkgconfig, scdoc
|
||||||
, pango, cairo, libinput, libcap, pam, gdk_pixbuf, libpthreadstubs
|
, wayland, libxkbcommon, pcre, json_c, dbus, libevdev
|
||||||
, libXdmcp
|
, pango, cairo, libinput, libcap, pam, gdk_pixbuf
|
||||||
|
, wlroots, wayland-protocols
|
||||||
, buildDocs ? true
|
, buildDocs ? true
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "sway-${version}";
|
name = "${pname}-${version}";
|
||||||
version = "0.15.2";
|
pname = "sway";
|
||||||
|
version = "1.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "swaywm";
|
owner = "swaywm";
|
||||||
repo = "sway";
|
repo = "sway";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1p9j5gv85lsgj4z28qja07dqyvqk41w6mlaflvvm9yxafx477g5n";
|
sha256 = "09cndc2nl39d3l7g5634xp0pxcz60pvc5277mfw89r22mh0j78rx";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix for a compiler warning that causes a build failure
|
||||||
|
# (see https://github.com/swaywm/sway/issues/3862):
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/swaywm/sway/commit/bcde298a719f60b9913133dbd2a169dedbc8dd7d.patch";
|
||||||
|
sha256 = "0r583nmqvq43ib93yv6flw8pj833v32lbs0q0xld56s3rnzvvdcp";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
cmake pkgconfig
|
pkgconfig meson ninja
|
||||||
] ++ stdenv.lib.optional buildDocs [ asciidoc libxslt docbook_xsl ];
|
] ++ stdenv.lib.optional buildDocs scdoc;
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
wayland wlc libxkbcommon pcre json_c dbus
|
wayland libxkbcommon pcre json_c dbus libevdev
|
||||||
pango cairo libinput libcap pam gdk_pixbuf libpthreadstubs
|
pango cairo libinput libcap pam gdk_pixbuf
|
||||||
libXdmcp
|
wlroots wayland-protocols
|
||||||
];
|
];
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
cmakeFlags = "-DVERSION=${version} -DLD_LIBRARY_PATH=/run/opengl-driver/lib:/run/opengl-driver-32/lib";
|
mesonFlags = [
|
||||||
|
"-Dxwayland=enabled" "-Dgdk-pixbuf=enabled" "-Dtray=enabled"
|
||||||
|
] ++ stdenv.lib.optional buildDocs "-Dman-pages=enabled";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "i3-compatible window manager for Wayland";
|
description = "i3-compatible window manager for Wayland";
|
||||||
homepage = https://swaywm.org;
|
homepage = https://swaywm.org;
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
maintainers = with maintainers; [ primeos ]; # Trying to keep it up-to-date.
|
maintainers = with maintainers; [ primeos synthetica ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -17712,7 +17712,6 @@ in
|
|||||||
orbment = callPackage ../applications/window-managers/orbment { };
|
orbment = callPackage ../applications/window-managers/orbment { };
|
||||||
|
|
||||||
sway = callPackage ../applications/window-managers/sway { };
|
sway = callPackage ../applications/window-managers/sway { };
|
||||||
sway-beta = callPackage ../applications/window-managers/sway/beta.nix { };
|
|
||||||
swayidle = callPackage ../applications/window-managers/sway/idle.nix { };
|
swayidle = callPackage ../applications/window-managers/sway/idle.nix { };
|
||||||
swaylock = callPackage ../applications/window-managers/sway/lock.nix { };
|
swaylock = callPackage ../applications/window-managers/sway/lock.nix { };
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user