Automated, pre-built packages for Wayland (sway/wlroots) tools for NixOS.
Packages from this overlay are regularly updated and built against nixos-unstable
and nixpkgs-unstable
.
(Sister repositories: nixpkgs-kubernetes, nixpkgs-colemickens)
Full list of Packages
Attribute Name | Last Upstream Commit Time |
---|---|
nixpkgs/nixos-unstable | 2019-04-04 17:44 |
nixpkgs/nixpkgs-unstable | 2019-04-06 09:03 |
pkgs/wlroots | 2019-04-14 16:35 |
pkgs/xdg-desktop-portal-wlr | 2019-02-12 12:09 |
pkgs/sway | 2019-04-15 00:44 |
pkgs/swayidle | 2019-02-16 16:43 |
pkgs/swaylock | 2019-04-03 05:15 |
pkgs/slurp | 2019-03-16 19:52 |
pkgs/grim | 2019-02-20 13:18 |
pkgs/mako | 2019-04-14 17:01 |
pkgs/kanshi | 2019-02-02 23:21 |
pkgs/wlstream | 2018-07-15 21:10 |
pkgs/oguri | 2019-02-19 14:19 |
pkgs/waybar | 2019-04-15 10:10 |
pkgs/wayfire | 2019-03-29 09:21 |
pkgs/wf-config | 2019-03-24 21:20 |
pkgs/redshift-wayland | 2018-11-07 20:03 |
pkgs/bspwc | 2018-12-29 23:21 |
pkgs/waybox | 2018-11-27 14:44 |
pkgs/wl-clipboard | 2019-04-15 15:53 |
pkgs/wf-recorder | 2019-03-31 16:41 |
pkgs/gebaar-libinput | 2019-04-05 13:27 |
pkgs/i3status-rust | 2019-04-10 19:31 |
Continue reading for usage instructions on NixOS (only the nixos-unstable
channel is supported!).
You can also use this with Nix on Ubuntu. Please see the full walkthrough.
This usage just utilizes overlay
functionality from nixpkgs
.
Note that when using the overlay, the module will automatically reference the correct
sway
package since the newer package is overlayed ontop of pkgs
.
{ config, lib, pkgs, ... }:
let
url = "https://github.com/colemickens/nixpkgs-wayland/archive/master.tar.gz";
waylandOverlay = (import (builtins.fetchTarball url));
in
{
nixpkgs.overlays = [ waylandOverlay ];
programs.sway.enable = true;
programs.sway.extraPackages = with pkgs; [
swayidle # used for controlling idle timeouts and triggers (screen locking, etc)
swaylock # used for locking Wayland sessions
waybar # polybar-alike
i3status-rust # simpler bar written in Rust
grim # screen image capture
slurp # screen are selection tool
mako # notification daemon
wlstream # screen recorder
oguri # animated background utility
kanshi # dynamic display configuration helper
redshift-wayland # patched to work with wayland gamma protocol
xdg-desktop-portal-wlr # xdg-desktop-portal backend for wlroots
];
environment.systemPackages = with pkgs; [
# other compositors/window-managers
wayfire # 3D wayland compositor
waybox # An openbox clone on Wayland
bspwc # Wayland compositor based on BSPWM
];
}
- Usage of display managers with
sway
is not supported upstream, you should run it from a TTY. - You will likely want a default config file to place at
$HOME/.config/sway/config
. You can use the upstream default as a starting point: https://github.com/swaywm/sway/blob/master/config.in
./update.sh
:- updates
pkgs/<pkg>/metadata.nix
with the latest commit+hash for each package - updates
nixpkgs/<channel>/metadata.nix
per the upstream channel - calls
nix-build build.nix
to build all packages againstnixos-unstable
- calls
nix-build build.nixpkgs.nix
to build all packages againstnixpkgs-unstable
- pushes to nixpkgs-wayland on cachix
- updates
Packages are built as described in the section above and are published to cachix.
See usage instructions at nixpkgs-wayland
on cachix.