You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.6 KiB
Nix
46 lines
1.6 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
|
|
let
|
|
inherit (lib) mkIf mkMerge mkThenElse;
|
|
cfg = config.r6d.config-generator;
|
|
computers = config.r6d.computers;
|
|
profiles = config.r6d.profiles;
|
|
in
|
|
|
|
mkIf profiles.isDesktopEnvironment {
|
|
|
|
# Services
|
|
# Enable the X11 windowing system.
|
|
services.xserver = {
|
|
enable = true;
|
|
layout = "fr";
|
|
xkbOptions = "eurosign:e";
|
|
displayManager.lightdm.enable = true;
|
|
windowManager.awesome.enable = true;
|
|
inputClassSections = [''
|
|
Identifier "Marble Mouse"
|
|
MatchProduct "Logitech USB Trackball"
|
|
MatchIsPointer "on"
|
|
MatchDevicePath "/dev/input/event*"
|
|
Driver "evdev"
|
|
# Physical button #s: A b D - - - - B C b = A & D simultaneously; - = no button
|
|
#Option "ButtonMapping" "1 8 3 4 5 6 7 2 2" # For right-hand placement
|
|
#Option "ButtonMapping" "3 8 1 4 5 6 7 2 2" # For left-hand placement
|
|
|
|
# EmulateWheel refers to emulating a mouse wheel using Marble Mouse trackball.
|
|
Option "EmulateWheel" "true"
|
|
Option "EmulateWheelButton" "8" # Factory default; use "9" for left-side placement.
|
|
|
|
# EmulateWheelInertia specifies how far (in pixels) the pointer must move to
|
|
# generate button press/release events in wheel emulation mode.
|
|
Option "EmulateWheelInertia" "10" # Factory default: 50
|
|
|
|
Option "ZAxisMapping" "4 5"
|
|
Option "XAxisMapping" "6 7" # Disable this for vertical-only scrolling.
|
|
# Emulate3Buttons refers to the act of pressing buttons A and D
|
|
# simultaneously to emulate a middle-click or wheel click.
|
|
Option "Emulate3Buttons" "true" # Factory default.
|
|
''];
|
|
};
|
|
}
|