128 lines
3.3 KiB
Nix
128 lines
3.3 KiB
Nix
# 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.
|
||
<nixpkgs/nixos/modules/services/hardware/sane_extra_backends/brscan4.nix>
|
||
./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" ];
|
||
}
|
||
|