sway: allow setting both internal and external monitors

This commit is contained in:
Leonardo Eugênio 2026-06-20 02:46:58 -03:00
parent be3ef81253
commit 621603d0da
7 changed files with 109 additions and 3 deletions

View file

@ -5,6 +5,10 @@
rec {
caffeinated = pkgs.callPackage ./caffeinated { };
cargo-checkmate = pkgs.callPackage ./cargo-checkmate.nix { };
lumactl = pkgs.callPackage ./lumactl.nix {
wmctl = pkgs.callPackage ./wmctl.nix { };
};
wmctl = pkgs.callPackage ./wmctl.nix { };
lipsum = pkgs.callPackage ./lipsum.nix { };
emmet-cli = pkgs.callPackage ./emmet-cli.nix { };
material-wifi-icons = pkgs.callPackage ./material-wifi-icons.nix { };

54
pkgs/lumactl.nix Normal file
View file

@ -0,0 +1,54 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
systemd,
libxkbcommon,
wayland,
wayland-scanner,
libffi,
wmctl,
makeWrapper,
}:
rustPlatform.buildRustPackage rec {
pname = "lumactl";
version = "0.1.0";
src = fetchFromGitHub {
owner = "danyspin97";
repo = pname;
rev = "89e273e25afe545e3bcaf282b84a63e3c34117de";
hash = "sha256-PQucBe3xPjjzuiaukdf2f/CvTqbGm0wJMbdpgd2ubnU=";
};
cargoHash = "sha256-RvC8wDCY22dBrUcl6VjrwMHwTTSSoBzLwnghAOAUoYU=";
nativeBuildInputs = [
pkg-config
wayland-scanner
makeWrapper
];
buildInputs = [
systemd
libxkbcommon
wayland
libffi
wmctl
];
postFixup = ''
wrapProgram $out/bin/lumactl \
--prefix PATH : ${lib.makeBinPath [ wmctl ]}
'';
meta = with lib; {
description = "CLI utility for controlling display brightness on Linux";
homepage = "https://github.com/danyspin97/lumactl";
license = licenses.gpl3Plus;
mainProgram = "lumactl";
platforms = platforms.linux;
maintainers = with maintainers; [ lelgenio ];
};
}

43
pkgs/wmctl.nix Normal file
View file

@ -0,0 +1,43 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
libxkbcommon,
wayland,
wayland-scanner,
libffi,
}:
rustPlatform.buildRustPackage rec {
pname = "wmctl";
version = "0.1.0";
src = fetchFromGitHub {
owner = "danyspin97";
repo = pname;
rev = "398d87945ab6c4b31e04063098c79d1e456afdcc";
hash = "sha256-J3ZHq51uDgPMcQbJzEflReDnm1AqPs7Hov3jpCDlNHU=";
};
cargoHash = "sha256-T7FdevuBLbrYE5vTuBincSRMDOLkUsoKx/jg0i1Ybdo=";
nativeBuildInputs = [
pkg-config
wayland-scanner
];
buildInputs = [
libxkbcommon
wayland
libffi
];
meta = with lib; {
description = "CLI for controlling Wayland compositors";
homepage = "https://github.com/danyspin97/wmctl";
license = licenses.gpl3Plus;
mainProgram = "wmctl";
platforms = platforms.linux;
maintainers = with maintainers; [ lelgenio ];
};
}