sway: allow setting both internal and external monitors
This commit is contained in:
parent
be3ef81253
commit
621603d0da
7 changed files with 109 additions and 3 deletions
|
|
@ -5,6 +5,10 @@
|
||||||
rec {
|
rec {
|
||||||
caffeinated = pkgs.callPackage ./caffeinated { };
|
caffeinated = pkgs.callPackage ./caffeinated { };
|
||||||
cargo-checkmate = pkgs.callPackage ./cargo-checkmate.nix { };
|
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 { };
|
lipsum = pkgs.callPackage ./lipsum.nix { };
|
||||||
emmet-cli = pkgs.callPackage ./emmet-cli.nix { };
|
emmet-cli = pkgs.callPackage ./emmet-cli.nix { };
|
||||||
material-wifi-icons = pkgs.callPackage ./material-wifi-icons.nix { };
|
material-wifi-icons = pkgs.callPackage ./material-wifi-icons.nix { };
|
||||||
|
|
|
||||||
54
pkgs/lumactl.nix
Normal file
54
pkgs/lumactl.nix
Normal 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
43
pkgs/wmctl.nix
Normal 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 ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -25,6 +25,9 @@ in
|
||||||
# Enable the X11 windowing system.
|
# Enable the X11 windowing system.
|
||||||
services.xserver.enable = false;
|
services.xserver.enable = false;
|
||||||
|
|
||||||
|
# Enable external monitor configuration (brightness)
|
||||||
|
hardware.i2c.enable = true;
|
||||||
|
|
||||||
# enable sway window manager
|
# enable sway window manager
|
||||||
programs.sway = {
|
programs.sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@
|
||||||
"input"
|
"input"
|
||||||
"libvirtd"
|
"libvirtd"
|
||||||
"kvm"
|
"kvm"
|
||||||
|
"i2c"
|
||||||
];
|
];
|
||||||
shell = pkgs.fish;
|
shell = pkgs.fish;
|
||||||
openssh.authorizedKeys.keys = [
|
openssh.authorizedKeys.keys = [
|
||||||
|
|
|
||||||
|
|
@ -155,7 +155,8 @@ in
|
||||||
wdmenu
|
wdmenu
|
||||||
wlauncher
|
wlauncher
|
||||||
volumesh
|
volumesh
|
||||||
brightnessctl
|
wmctl
|
||||||
|
lumactl
|
||||||
showkeys
|
showkeys
|
||||||
pamixer
|
pamixer
|
||||||
libnotify
|
libnotify
|
||||||
|
|
|
||||||
|
|
@ -160,8 +160,8 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
screen_binds = {
|
screen_binds = {
|
||||||
"XF86MonBrightnessDown" = "exec brightnessctl --min-value=1 set 5%-";
|
"XF86MonBrightnessDown" = "exec lumactl set -- -5%";
|
||||||
"XF86MonBrightnessUp" = "exec brightnessctl --min-value=1 set 5%+";
|
"XF86MonBrightnessUp" = "exec lumactl set -- +5%";
|
||||||
"${mod}+l" = "exec ${lib.getExe _lock}";
|
"${mod}+l" = "exec ${lib.getExe _lock}";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue