88 lines
2.1 KiB
Nix
88 lines
2.1 KiB
Nix
{
|
|
description = "swaywm development environment";
|
|
|
|
inputs = {
|
|
flake-compat = {
|
|
url = "github:edolstra/flake-compat";
|
|
flake = false;
|
|
};
|
|
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
|
};
|
|
|
|
outputs = { self, nixpkgs, flake-compat, ... }:
|
|
let
|
|
pkgsFor = system:
|
|
import nixpkgs {
|
|
inherit system;
|
|
overlays = [ ];
|
|
};
|
|
|
|
targetSystems = [ "aarch64-linux" "x86_64-linux" ];
|
|
in {
|
|
overlays.default = final: prev: {
|
|
swayfx = prev.sway.overrideAttrs (old: {
|
|
version = "999-master";
|
|
src = builtins.path {
|
|
name = "swayfx";
|
|
path = prev.lib.cleanSource ./.;
|
|
};
|
|
});
|
|
};
|
|
|
|
packages = nixpkgs.lib.genAttrs targetSystems (system:
|
|
let pkgs = pkgsFor system;
|
|
in (self.overlays.default pkgs pkgs) // {
|
|
default = self.packages.${system}.swayfx;
|
|
});
|
|
|
|
devShells = nixpkgs.lib.genAttrs targetSystems (system:
|
|
let pkgs = pkgsFor system;
|
|
in {
|
|
default = pkgs.mkShell {
|
|
depsBuildBuild = with pkgs; [ pkg-config ];
|
|
|
|
nativeBuildInputs = with pkgs; [
|
|
cmake
|
|
meson
|
|
ninja
|
|
pkg-config
|
|
wayland-scanner
|
|
scdoc
|
|
];
|
|
|
|
buildInputs = with pkgs; [
|
|
wayland
|
|
libxkbcommon
|
|
pcre
|
|
json_c
|
|
libevdev
|
|
pango
|
|
cairo
|
|
libinput
|
|
libcap
|
|
pam
|
|
gdk-pixbuf
|
|
librsvg
|
|
wayland-protocols
|
|
libdrm
|
|
wlroots
|
|
dbus
|
|
xwayland
|
|
libGL
|
|
pixman
|
|
xorg.xcbutilwm
|
|
xorg.libX11
|
|
libcap
|
|
xorg.xcbutilimage
|
|
xorg.xcbutilerrors
|
|
mesa
|
|
libpng
|
|
ffmpeg
|
|
xorg.xcbutilrenderutil
|
|
seatd
|
|
];
|
|
};
|
|
});
|
|
};
|
|
}
|