test audio control

This commit is contained in:
Stefan Kempinger 2026-02-10 10:37:19 +01:00
parent d78df2e465
commit d84b1f16f2

View file

@ -11,6 +11,8 @@
]; ];
# Bootloader. # Bootloader.
#boot.loader.systemd-boot.enable = true;
#boot.loader.efi.canTouchEfiVariables = true;
boot.loader.grub.enable = true; boot.loader.grub.enable = true;
boot.loader.grub.device = "/dev/vda"; boot.loader.grub.device = "/dev/vda";
boot.loader.grub.useOSProber = true; boot.loader.grub.useOSProber = true;
@ -81,9 +83,15 @@
wlr-randr wlr-randr
kmsxx kmsxx
libinput libinput
pciutils
pulseaudio
pwvucontrol
(pkgs.wrapFirefox (pkgs.firefox-unwrapped.override { pipewireSupport = true; }) { })
]; ];
programs.firefox = { programs.firefox = {
enable = true; enable = true;
package = (pkgs.wrapFirefox (pkgs.firefox-unwrapped.override { pipewireSupport = true; }) { });
}; };
systemd.services.cage-tty1 = { systemd.services.cage-tty1 = {
@ -102,11 +110,39 @@
enable = true; enable = true;
user = "kemp"; user = "kemp";
program = "${pkgs.writeScriptBin "start-cage-app" '' program = "${pkgs.writeScriptBin "start-cage-app" ''
exec ${pkgs.firefox}/bin/firefox #!/usr/bin/env bash
exec pwvucontrol
exec firefox
''}/bin/start-cage-app"; ''}/bin/start-cage-app";
}; };
services.getty.loginProgram = "${pkgs.coreutils}/bin/true"; services.getty.loginProgram = "${pkgs.coreutils}/bin/true";
services.actkbd.enable = true;
services.actkbd.bindings = [
# Mute
{ keys = [ 113 ]; events = [ "key" ];
command = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
}
# Volume down
{ keys = [ 114 ]; events = [ "key" "rep" ];
command = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-";
}
# Volume up
{ keys = [ 115 ]; events = [ "key" "rep" ];
command = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+";
}
];
security.rtkit.enable = true;
services.pipewire = {
enable = true; # if not already enabled
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
# If you want to use JACK applications, uncomment the following
jack.enable = true;
};
services.openssh = { services.openssh = {
enable = true; enable = true;
settings = { settings = {
@ -120,7 +156,7 @@
"nix-command" "nix-command"
"flakes" "flakes"
]; ];
networking.firewall.enable = false; networking.firewall.enable = false;
# This value determines the NixOS release from which the default # This value determines the NixOS release from which the default