# Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). { config, lib, pkgs, ... }: { imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix ./services.nix ./network.nix modules/common.nix modules/smtp.nix modules/redshift.nix # modules/starship.nix modules/syncthing.nix # modules/powermanagement.nix ]; boot = { loader.systemd-boot.enable = true; loader.efi.canTouchEfiVariables = true; plymouth.enable = true; tmp.cleanOnBoot = true; kernelParams = [ "i915.enable_fbc=1" ]; }; boot.initrd.luks.fido2Support = true; boot.initrd.luks.devices."/dev/sda2".device = "/dev/sda2"; boot.initrd.luks.devices."/dev/sda2".fido2.credential = "a67d17616bf2568727498dffa95205df943383ab3a2f9798606532d5791a155a37dd52dae2262619c1da2be7562ec9dd94888c71a9326fea70dfe16214b5ea8ec0143b010000"; hardware = { # Enable microcode updates for Intel CPU cpu.intel.updateMicrocode = true; # Enable Kernel same-page merging ksm.enable = true; # Enable all the firmware enableAllFirmware = true; # Enable all the firmware with a license allowing redistribution. (i.e. free firmware and firmware-linux-nonfree) enableRedistributableFirmware = true; # Enable OpenGL drivers opengl.enable = true; opengl.extraPackages = with pkgs; [ vaapiIntel vaapiVdpau libvdpau-va-gl ]; pulseaudio = { enable = true; }; }; # Set your time zone. time.timeZone = "Europe/Paris"; nixpkgs.config.allowUnfree = true; i18n.defaultLocale = "fr_FR.UTF-8"; console = { font = "Lat2-Terminus16"; keyMap = "fr"; }; fonts = { fontDir.enable = true; enableGhostscriptFonts = true; fonts = with pkgs; [ corefonts vistafonts inconsolata terminus_font proggyfonts dejavu_fonts font-awesome nerdfonts source-code-pro source-sans-pro source-serif-pro ]; }; programs = { fish.enable = true; fish.interactiveShellInit = '' set -gx EDITOR nvim ''; ssh = { setXAuthLocation = true; forwardX11 = true; }; dconf.enable=true; }; programs.thunar.enable = true; programs.thunar.plugins = with pkgs.xfce; [ thunar-archive-plugin thunar-volman ]; # Enable sound. sound.enable = true; system.stateVersion = "23.05"; # Did you read the comment? users = { groups.ntp = {}; defaultUserShell = "/run/current-system/sw/bin/fish"; extraUsers.alexandre = { isNormalUser = true; home = "/home/alexandre"; description = "alexandre"; extraGroups = [ "wheel" "networkmanager" "docker" "libvirtd" "scanner" "plocate" "lp" ]; # hashedPassword = "$6$7m77oPQxa$W9YnRLo1X2eqztBHwpoH8diHGkBno5O39AMyL9Qm8y8I6uW63H2Nwx4p239OG5zhOxA8J1lZvHTQ3hKPSP9mT/"; }; }; environment.systemPackages = with pkgs; [ google-fonts gnome.adwaita-icon-theme networkmanagerapplet ]; environment.variables.EDITOR = "nvim"; nix.settings.experimental-features = [ "nix-command" "flakes" ]; }