nix-config

My personal nixos and home-manager configuration
Log | Files | Refs | README

xbindkeys.nix (1027B)


      1 { config, pkgs, lib, ... }:
      2 
      3 with lib;
      4 
      5 {
      6   options.xbindkeys = {
      7     enable = mkEnableOption "xbindkeys";
      8   };
      9 
     10   config = mkIf config.xbindkeys.enable {
     11     home.packages = [ pkgs.xbindkeys ];
     12 
     13     home.file.".xbindkeysrc".text = ''
     14       # super + shift + Return
     15       "alacritty"
     16         m:0x41 + c:36
     17 
     18       # super + shift + l
     19       "xbindkeys"
     20         m:0x41 + c:46
     21 
     22       # super + ;
     23       "rofi -show run"
     24         m:0x40 + c:47
     25 
     26       # super + shift + alt + q
     27       "bspc quit"
     28         m:0x49 + c:29
     29 
     30       # super + alt + q
     31       "bspc wm -r"
     32         m:0x48 + c:29
     33 
     34       "bspc node -c"
     35         m:0x40 + c:54
     36 
     37       "bspc node -k"
     38         m:0x41 + c:54
     39 
     40 #      "lock"
     41 #        m:0x40 + c:53
     42 
     43 #      "browser"
     44 #        m:0x40 + c:56
     45 
     46 #      "scratchpad"
     47 #        m:0x40 + c:31
     48 
     49 #      "calculate"
     50 #        m:0x44 + c:54
     51 
     52       "amixer set Master 5%+"
     53           XF86AudioRaiseVolume
     54 
     55       "amixer set Master 5%-"
     56           XF86AudioLowerVolume
     57 
     58       "amixer set Master toggle"
     59           XF86AudioMute
     60     '';
     61   };
     62 }