Files
nixy/nixos/configuration.nix
Hadi 0efb552856 Up
2024-03-11 23:48:30 +01:00

103 lines
2.4 KiB
Nix

{ pkgs, ... }: {
imports = [ ./hardware-configuration.nix ];
# Bootloader.
boot.loader.efi.canTouchEfiVariables = true;
boot.loader.systemd-boot = {
enable = true;
consoleMode = "auto";
};
networking.hostName = "hadi";
# Enable networking
networking.networkmanager.enable = true;
# Set your time zone.
time.timeZone = "Europe/Paris";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "fr_FR.UTF-8";
LC_IDENTIFICATION = "fr_FR.UTF-8";
LC_MEASUREMENT = "fr_FR.UTF-8";
LC_MONETARY = "fr_FR.UTF-8";
LC_NAME = "fr_FR.UTF-8";
LC_NUMERIC = "fr_FR.UTF-8";
LC_PAPER = "fr_FR.UTF-8";
LC_TELEPHONE = "fr_FR.UTF-8";
LC_TIME = "fr_FR.UTF-8";
};
# Configure keymap in X11
services.xserver = {
xkb.layout = "fr";
xkb.variant = "";
};
console.keyMap = "fr";
nix.settings.experimental-features = [ "nix-command" "flakes" ];
programs.zsh.enable = true;
users.defaultUserShell = pkgs.zsh;
users.users.hadi = {
isNormalUser = true;
description = "hadi";
extraGroups = [ "networkmanager" "wheel" ];
};
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [ networkmanagerapplet ];
nixpkgs.config.permittedInsecurePackages = [ "electron-25.9.0" "nix-2.16.2" ];
hardware.opengl = {
enable = true;
driSupport = true;
driSupport32Bit = true;
};
services.xserver.videoDrivers = [ "nvidia" ];
services.gnome.gnome-keyring.enable = true;
hardware.nvidia = {
modesetting.enable = true;
powerManagement.enable = true;
powerManagement.finegrained = false;
open = false;
nvidiaSettings = true;
};
hardware.bluetooth.enable = true;
services.blueman.enable = true;
# Set environment variables
environment.variables = {
XDG_DATA_HOME = "$HOME/.local/share";
PASSWORD_STORE_DIR = "$HOME/.local/share/password-store";
MOZ_ENABLE_WAYLAND = "1";
EDITOR = "nvim";
ANKI_WAYLAND = "1";
DISABLE_QT5_COMPAT = "0";
NIXOS_OZONE_WL = "1";
};
# Sound
sound = { enable = true; };
security.rtkit.enable = true;
hardware.pulseaudio.enable = false;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
wireplumber.enable = true;
};
system.stateVersion = "23.11";
}