From 41640f72ad7ad7e9d1675133a38295c669f6edb0 Mon Sep 17 00:00:00 2001 From: CDaut Date: Sat, 24 Feb 2024 01:41:25 +0100 Subject: [PATCH] began configuring i3 --- configuration.nix | 21 +++++++++++---------- home.nix | 1 + programm_configs/i3.nix | 38 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 50 insertions(+), 10 deletions(-) create mode 100644 programm_configs/i3.nix diff --git a/configuration.nix b/configuration.nix index f05b84a..05b4317 100644 --- a/configuration.nix +++ b/configuration.nix @@ -7,7 +7,8 @@ ]; imports = - [ # Include the results of the hardware scan. + [ + # Include the results of the hardware scan. ./vm_hardware-configuration.nix ]; @@ -41,20 +42,21 @@ # Configure keymap in X11 services.xserver = { - layout = "de"; - xkbVariant = ""; + xkb.layout = "de"; + xkb.variant = ""; enable = true; + videoDrivers = [ "nvidia" ]; displayManager = { - defaultSession = "none+i3"; + defaultSession = "none+i3"; }; windowManager.i3 = { - enable = true; - package = pkgs.i3-gaps; - extraPackages = with pkgs; [ - dmenu - ]; + enable = true; + package = pkgs.i3-gaps; + extraPackages = with pkgs; [ + dmenu + ]; }; }; @@ -68,7 +70,6 @@ description = "clemens"; initialPassword = "123456"; extraGroups = [ "networkmanager" "wheel" ]; - packages = with pkgs; []; }; # home manager diff --git a/home.nix b/home.nix index d5bc7b0..75f7c58 100644 --- a/home.nix +++ b/home.nix @@ -23,6 +23,7 @@ in ./programm_configs/git.nix ./programm_configs/vscode.nix ./programm_configs/rofi.nix + ./programm_configs/i3.nix ]; # The home.packages option allows you to install Nix packages into your diff --git a/programm_configs/i3.nix b/programm_configs/i3.nix new file mode 100644 index 0000000..143c44c --- /dev/null +++ b/programm_configs/i3.nix @@ -0,0 +1,38 @@ +{ config, lib, pkgs, ... }: + +let + mod = "Mod4"; +in +{ + xsession.windowManager.i3 = { + enable = true; + config = { + modifier = mod; + fonts = { + names = [ "DejaVu Sans Mono" "FontAwesome 6" ]; + }; + + keybindings = lib.mkOptionDefault { + # rofi (dmenu) + "${mod}+d" = "exec rofi -show combi -config ~/.config/rofi/config.rasi"; + + # screenlock + "ctrl+${mod}+l" = "exec --no-startup-id ~/.config/i3/lock.sh"; + + # audio control fluff + "XF86AudioRaiseVolume" = "exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5% && $refresh_i3status"; + "XF86AudioLowerVolume" = "exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5% && $refresh_i3status"; + "XF86AudioMute" = "exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status"; + "XF86AudioMicMute" = "exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status"; + + # Terminal + "${mod}+Return" = "exec alacritty"; + }; + }; + + extraConfig = "floating_modifier ${mod}\n + gaps inner 10\n + gaps outer 0\n + smart_gaps on\n"; + }; +}