dregil: Use home-manager to set keyboard

This commit is contained in:
Alexander Kobjolke 2023-08-01 16:03:32 +02:00
parent f8411ac7e9
commit 53b6e8d5b4
3 changed files with 44 additions and 47 deletions

View file

@ -11,14 +11,12 @@ let
export __VK_LAYER_NV_optimus=NVIDIA_only export __VK_LAYER_NV_optimus=NVIDIA_only
exec "$@" exec "$@"
''; '';
in in {
{ imports = [
imports = # Include the results of the hardware scan.
[ ./hardware-configuration.nix
# Include the results of the hardware scan. # <nixos-hardware/lenovo/legion/15ich>
./hardware-configuration.nix ];
# <nixos-hardware/lenovo/legion/15ich>
];
# Use the systemd-boot EFI boot loader. # Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
@ -30,7 +28,8 @@ in
networking.hostName = "dregil"; # Define your hostname. networking.hostName = "dregil"; # Define your hostname.
# Pick only one of the below networking options. # Pick only one of the below networking options.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. networking.networkmanager.enable =
true; # Easiest to use and most distros use this by default.
# Configure network proxy if necessary # Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/"; # networking.proxy.default = "http://user:password@proxy:port/";
@ -38,7 +37,8 @@ in
console = { console = {
font = "Lat2-Terminus16"; font = "Lat2-Terminus16";
useXkbConfig = true; # use xkbOptions in tty. #useXkbConfig = true; # use xkbOptions in tty.
keyMap = "dvorak";
}; };
# Enable the X11 windowing system. # Enable the X11 windowing system.
@ -47,36 +47,36 @@ in
exportConfiguration = true; exportConfiguration = true;
# Configure keymap in X11 # Configure keymap in X11
layout = "dvorak"; layout = "us";
xkbOptions = "terminate:ctrl_alt_bksp,caps:escape,compose:ralt"; xkbOptions = "terminate:ctrl_alt_bksp,caps:escape,compose:ralt";
videoDrivers = [ "nvidia" ]; # "modesetting" ]; videoDrivers = [ "nvidia" ]; # "modesetting" ];
displayManager.lightdm = { displayManager.lightdm = { enable = true; };
enable = true;
};
desktopManager.xfce.enable = true; desktopManager.xfce.enable = true;
desktopManager.plasma5.enable = true;
# Enable touchpad support (enabled default in most desktopManager). # Enable touchpad support (enabled default in most desktopManager).
libinput = { libinput = {
enable = true; enable = true;
touchpad.disableWhileTyping = true; touchpad.disableWhileTyping = true;
touchpad.naturalScrolling = true; touchpad.naturalScrolling = true;
mouse.naturalScrolling = config.services.xserver.libinput.touchpad.naturalScrolling; mouse.naturalScrolling =
config.services.xserver.libinput.touchpad.naturalScrolling;
}; };
}; };
fonts = { fonts = {
enableDefaultFonts = true; enableDefaultFonts = true;
fonts = with pkgs; [ fonts = with pkgs; [
corefonts corefonts
noto-fonts noto-fonts
noto-fonts-emoji noto-fonts-emoji
fira-code fira-code
fira-code-symbols fira-code-symbols
nerdfonts nerdfonts
]; ];
}; };
@ -90,42 +90,37 @@ in
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.
users.users.alex = { users.users.alex = {
isNormalUser = true; isNormalUser = true;
extraGroups = [ "wheel" # Enable sudo for the user. extraGroups = [
"input" "wheel" # Enable sudo for the user.
]; "input"
}; ];
};
# List packages installed in system profile. To search, run: # List packages installed in system profile. To search, run:
# $ nix search wget # $ nix search wget
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
wget wget
ripgrep ripgrep
git git
nvidia-offload nvidia-offload
pinentry pinentry
]; ];
# adjust channels to nixpkgs used on this system via this flake # adjust channels to nixpkgs used on this system via this flake
environment.etc."nix/inputs/nixpkgs".source = inputs.nixpkgs-unstable.outPath; environment.etc."nix/inputs/nixpkgs".source = inputs.nixpkgs-unstable.outPath;
nix.nixPath = [ nix.nixPath = [ "nixpkgs=${inputs.nixpkgs-unstable}" ];
"nixpkgs=${inputs.nixpkgs-unstable}"
];
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
# started in user sessions. # started in user sessions.
# programs.mtr.enable = true; # programs.mtr.enable = true;
programs.gnupg.agent = { programs.gnupg.agent = {
enable = true; enable = true;
enableSSHSupport = true; enableSSHSupport = true;
}; };
programs.neovim = { programs.neovim = { enable = true; };
enable = true;
};
programs.steam = { programs.steam = { enable = true; };
enable = true;
};
# List services that you want to enable: # List services that you want to enable:

View file

@ -6,12 +6,9 @@ let
pkgs = import inputs.nixpkgs-unstable { pkgs = import inputs.nixpkgs-unstable {
inherit system; inherit system;
config = { config = { allowUnfree = true; };
allowUnfree = true;
};
}; };
in in nixosSystem {
nixosSystem {
inherit system pkgs; inherit system pkgs;
specialArgs = { inherit inputs; }; specialArgs = { inherit inputs; };
modules = [ modules = [

View file

@ -13,6 +13,11 @@ in {
../../home/cli.nix ../../home/cli.nix
{ {
home = { home = {
language.base = "en_US@UTF-8";
keyboard.type = "us";
keyboard.variant = "dvorak";
packages = with pkgs; [ packages = with pkgs; [
alacritty # fast terminal alacritty # fast terminal
firefox # the browser with the fox firefox # the browser with the fox